bcc59d2164
New brief_echo stage before the planner in role_pipeline: the model restates the analyst brief as a structured artifact, and a deterministic gate (checkBriefEcho, opt-in via brief_echo=true) diffs the restatement against the original brief. On divergence — dropped requirements (Jaccard coverage < 0.34) or hallucinated files — it emits BriefEchoMismatchEvent and fails the stage retryably, so a misread brief never reaches plan generation. The diff (BriefEchoDiff) is a pure function of two recorded artifacts, so it is replay-safe and records no observation; the event fires only on mismatch, for audit. Symbols are recorded but non-blocking in v1. Mirrors the groundBrief- References gate. role_pipeline only; freestyle_planning wiring is a follow-up. Runtime install (like research): copy brief_echo.json + brief_echo.md and the [[artifacts]] block into ~/.config/correx.
41 lines
1.1 KiB
TOML
41 lines
1.1 KiB
TOML
# Artifact kinds for role_pipeline.toml — paste these [[artifacts]] blocks into your
|
|
# ~/.config/correx/config.toml.
|
|
#
|
|
# schema_path is resolved: absolute, ~-relative, or RELATIVE TO THE CONFIG FILE'S DIRECTORY.
|
|
# So either:
|
|
# • copy docs/schemas/*.json to ~/.config/correx/schemas/ and keep the relative paths below, or
|
|
# • replace each schema_path with an absolute path to this repo's docs/schemas/<file>.json.
|
|
#
|
|
# All four are llm_emitted: the stage's model emits JSON, which is validated against the schema
|
|
# (never trusted) before the artifact counts as produced (invariant #7).
|
|
|
|
[[artifacts]]
|
|
id = "analysis"
|
|
schema_path = "schemas/analysis.json"
|
|
llm_emitted = true
|
|
|
|
[[artifacts]]
|
|
id = "design"
|
|
schema_path = "schemas/design.json"
|
|
llm_emitted = true
|
|
|
|
[[artifacts]]
|
|
id = "impl_plan"
|
|
schema_path = "schemas/impl_plan.json"
|
|
llm_emitted = true
|
|
|
|
[[artifacts]]
|
|
id = "review_report"
|
|
schema_path = "schemas/review_report.json"
|
|
llm_emitted = true
|
|
|
|
[[artifacts]]
|
|
id = "brief_echo"
|
|
schema_path = "schemas/brief_echo.json"
|
|
llm_emitted = true
|
|
|
|
[[artifacts]]
|
|
id = "execution_plan"
|
|
schema_path = "schemas/execution_plan.json"
|
|
llm_emitted = true
|