P04-01: 同時発生の更新規約

This commit is contained in:
Agent Control Runner
2026-10-18 10:58:54 +09:00
parent 2dde7596a8
commit 20d0ae5990
32 changed files with 11890 additions and 314 deletions
@@ -0,0 +1,59 @@
# Repair 31 — BLOCKED / incomplete implementation
Formal status remains **16/88, P04 credit 0**. **Do not admit the once-only
native/full batch.** This revision does not finish BF35.
D05 is **six of six actually approved**. There is no policy question for the
human. Adoption into enforced raw evidence and exact-Q verification are pending.
A01 remains approved. The per-ID path/SHA256 bindings in the checker and the
superseded candidate documents are preserved. The authority fixtures exercise
positive, missing, wrong-hash, pending-status and wrong-path cases for every ID.
Repair30's SOURCE_FACTS and STATIC_CHECKS remain historical, unchanged inputs.
This repair adds a fail-closed normal-C qualification boundary and records the
receipt content requirements in `NORMAL_C_RECEIPT_FIELDS`. Even a commit with
the correct two parents and Q tree is insufficient. The authoritative Root/Runner
receipt path, digest and provenance verification contract have not been supplied;
`NORMAL_C_RECEIPT_CONTRACT` remains unset. No Runner API or authority is inferred.
An index-provided receipt cannot resolve this gap. This blocks every C, including
a legitimate C, until that concrete contract and its verifier are supplied.
The schema2 builder's undefined `tested` reference is fixed by checking the CLI
reference against the constructed payload's tested version. This does not make
its historical pipeline usable for fresh Q.
Bulk and role fixtures now allocate under `/tmp`, outside the source repository,
with inherited Git routing removed. Role fixtures reject unqualified no-ff merges
and synthetic commits with identical parents/tree. The additional candidate
fixture constructs such a commit only in a temporary bare clone. These Git
fixtures are **Root-run / unexecuted**: the worker's bulk attempt failed on
temporary directory creation with `PermissionError: Operation not permitted`,
before any Git invocation. They were not redirected into the worktree.
Remaining implementation, separate from the genuine authority context gap:
1. Four executable S5 drivers and their raw semantic adapters are still missing.
`s5/PENDING.md` remains accurate. All approved destruction/day/reason/exit
policies must be enforced alongside the existing safety conditions.
2. Fresh-Q run identity/provenance plumbing in native series, collector, S1–S4
wrappers and schema2 builder is unfinished. Historical names, pins and source
manifests have not been relabeled.
3. The separate full184/329 verifier and its exact source/settings/markers/policy/
engine/input/ended-receipt joins, including separate test_required_kitchen
binding, are unfinished. The native input loop is not a substitute.
4. Normal-C positive qualification needs the actual authoritative receipt contract
described above; matching Git structure alone is deliberately rejected.
5. Genuine-Q positive and fake-Q/full-role fixtures remain unexecuted. The new
synthetic-C Git fixture also remains unexecuted; static parsing is not proof
that it ran.
See REPAIR31_STATIC_CHECKS.json for actual worker results. No engine, formal gate,
Runner operation, repository Git write, integration or other agent was invoked.
Product code, Clock, values, tests, spec, denominator, thresholds and permissions
are unchanged. No material was removed for the obsolete byte cap.
After the missing implementation and context are resolved, Root retains the
recorded order: static controls; genuine Q and fresh S1–S5 once; disk/verified CoW
then full184/329 once on final Q with final checker; truthful index; verify-only
on S; independent whole-unit review; prepare-integration/final on qualified C.
Live records stay under `.runtime`. No known-failing gate is a progress check.