Skip to main content

Module policy

Module policy 

Source
Expand description

Host policy — the optional loop-policy.json (proposal §6.2). It is the only place auto-apply is granted, and it is host config (per-process, never persisted in a memory file). All fields default-closed; the whole struct rejects unknown keys, so a policy that tries to register an executable (--analyzer-cmd) or touch a trust-floor field fails to load — a stolen or committed policy file must be inert.

Precedence (enforced by the engine): engine ceilings > host CLI flags > this policy file > memory-file config. “The file selects and restricts; only the host grants.”

Structs§

AutoApplyGrant
One auto-apply grant: an analyzer family may auto-apply to these target classes up to (and including) max_severity.
Cadence
When a loop pass is due — the loop’s cadence, as host policy.
OutcomeEvalset
The evalset every LLM-authored, applicable proposal is measured against after apply (docs/loop.md, “Evalset-backed outcomes”). An authored lesson carries no built-in recurrence metric — nothing errors when a lesson is merely useless — so without this the Verify gate has nothing to re-measure for exactly the proposals a human was least able to judge. The host names the evalset and the field; the engine takes the baseline from the newest run journaled BEFORE the proposal and reads the current value from runs journaled AFTER the apply. No baseline run → no metric, never a fabricated one.
PlanAuthoring
Whether, and how, DISCOVER may author a plan — a Workflow grain: named steps, edges with conditions in the runtime’s frozen grammar, validated before a reviewer sees it — beside the Skill that carries the prose.
Policy
The parsed host policy. Everything default-closed — the two fields whose closed state is not the zero value (skills, min_evidence) say so in their own Default.
SkillAuthoring
Whether, and how, DISCOVER may author a Skill — a reusable procedure with an applicability condition and ordered steps, derived from a trajectory that succeeded.

Enums§

DiscoverObjective
What DISCOVER optimizes for (docs/loop-reflection.md §5.1). Host config like everything else here: it changes the scoring rule the proposer is given, never the gates — every draft still has to survive GROUND, VERIFY, the confidence floor and a human review with a BECAUSE.
EvidenceAttribution
How an Observation is attributed in the evidence bundle handed to the LLM (docs/loop.md). Named renders <observer> (a person) said of <subject>: <text>; Anonymous renders the bare text, which is what the engine did before 2026-09-04.
TelemetryMode
Telemetry sidecar mode (host-only).