You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
ledger read mode: validateModel has no parity with YAML validation (schemas, topology, state machines) #576
Found by the GPT review of #575 (#571). Joint decision (orchestrator + advisor), 2026-11-13: this comes after 0.14.0. It is a precondition for any ledger-authoritative promotion under ADR-0050. In 0.14.0, YAML is the only authority and the default read mode.
Observed
With ARCHCONTEXT_LEDGER_READ_MODE=ledger, validateModel (runtime-daemon/src/index.ts, about :214) uses validateLedgerModelFiles (about :1401). That validator checks only the required files, the schemaVersion prefix, ADR appliesTo, constraints and the review policy. Three checks that YAML's validateModel (model-store-yaml/src/index.ts, about :299-356) runs are missing:
So a model that YAML validation rejects can validate in ledger read mode.
Requirement
Ledger read mode validates the same model the way YAML validation does. Do not patch individual checks; there must be one validation path, or a proven equivalence. Design pass first (read-only), then a work item.
context: capabilities.json links 31 module pages that do not exist #592, Low. Regenerate .ai/context/capabilities.json from its authority; do not hand-edit the 31 paths. The worker names the generating command. If the generator lives in aimpact-inc/repo-harness, that is a boundary question back to the orchestrator and advisor. Write scope: .ai/context/ only.
ledger read mode: validateModel has no parity with YAML validation (schemas, topology, state machines) #576, High: one GPT review plus one Opus review. One model validator over a set of model files, called by both the YAML store and the ledger read path. It is not a second validator patched up to parity, and there is no compatibility path. Write scope: runtime-daemon index.ts (validateLedgerModelFiles and its caller) and model-store-yaml validateModel.
codegraph-adapter: read the index only through the in-process read-only handle #574 split. Right after S1 merges, a move-only slice S1b (Medium, one GPT review) splits codegraph-adapter/src/index.ts by responsibility: readiness and status, import population, projection handshake, snapshot, CLI provider. Behavior does not change. Then S2+S3, S4 and S5 run in parallel, each in its own module, and S6 comes last.
Claim: writer and head owner is Pi seat t2kj (magpie Opus 5.5), on branch fix/576-one-model-validator from main 27c68b2. Tier High: one GPT review plus one Opus review. The merge waits for the 0.14.1 freeze to lift.
repo-harness issue claim status
Claim: #576 (comment)
Status: ready for review; claim remains active
PR: #593 head 22ce466
CI: pending
Next: the coordinator dispatches one GPT review and one Opus review; the merge waits for the 0.14.1 freeze to lift
Activity
docs(state-machines): scope the nested-file guarantee to YAML authori…
fix(model-store-yaml): validate rejects a model file nested under sta…
Ancienttwo commentedon Nov 13, 2026
Joint decision (orchestrator + advisor), 2026-11-13, on parallelizing the remaining issues. The owner asked in pane t12: "近7个issues,还有多久才能收完?能不能并行".
.ai/context/capabilities.jsonfrom its authority; do not hand-edit the 31 paths. The worker names the generating command. If the generator lives in aimpact-inc/repo-harness, that is a boundary question back to the orchestrator and advisor. Write scope:.ai/context/only.index.ts(validateLedgerModelFilesand its caller) and model-store-yamlvalidateModel.codegraph-adapter/src/index.tsby responsibility: readiness and status, import population, projection handshake, snapshot, CLI provider. Behavior does not change. Then S2+S3, S4 and S5 run in parallel, each in its own module, and S6 comes last.runtime-daemon/src/index.ts:791lands only after ledger read mode: validateModel has no parity with YAML validation (schemas, topology, state machines) #576 merges, because ledger read mode: validateModel has no parity with YAML validation (schemas, topology, state machines) #576 writes that file. One writer per file applies by file, not by region.importNodeLimitExceededand close codegraph-adapter: the 50 000 import-node read limit is reached at about 8x repo-harness #585 with the measurement.Seat: orchestrator t7
Ancienttwo commentedon Nov 13, 2026
Claim: writer and head owner is Pi seat t2kj (magpie Opus 5.5), on branch fix/576-one-model-validator from main 27c68b2. Tier High: one GPT review plus one Opus review. The merge waits for the 0.14.1 freeze to lift.
Seat: orchestrator t7
Ancienttwo commentedon Nov 13, 2026
repo-harness issue claim status
Claim: #576 (comment)
Status: ready for review; claim remains active
PR: #593 head 22ce466
CI: pending
Next: the coordinator dispatches one GPT review and one Opus review; the merge waits for the 0.14.1 freeze to lift
fix(model): validateModelFiles owns the model file order (#576)