Record real OS input and repair initial load verification without masking state

This commit is contained in:
Takeshi
2026-10-14 04:47:58 +09:00
parent a3b2b1ae34
commit 7d4377b26a
4 changed files with 53 additions and 3 deletions
@@ -0,0 +1,7 @@
{
"action": "request-repair",
"task_id": "P08-03",
"reason": "I checked the code statically: tests/fixtures/p08-03/passive_placement.gd:78 still has the old oracle `runtime.create_snapshot() == stored.snapshot` (\"OS initial formal model exact\"). The OS bootstrap fails because it ignores the one normal SAVE_RECOVERY_LOADED notification. This is the same cause as the strict operation delta that was already approved. The failed validation is a correct fail: without OS proof the required OS condition is not met. The fix is inside allowed_paths (tests/fixtures/p08-03/**, plus the checker and tests where needed).\n\nRepair scope, one worker, pure Python only:\n(1) Statically search tests/fixtures/p08-03 and the checker for any other leftover postload==formal snapshot comparisons. Fix only the ones that need it, all at once.\n(2) The initial OS load check must reuse the source-defined full-state rebuild check from placement.gd verify_operation. Do this by pulling out a shared pure expected-state helper, or by passing an explicit label/prefix. The bootstrap needs its own full raw output, actual return dict, formally decoded snapshot, complete expected state and comparison. These must not overwrite the existing fixed-name role-final checkpoint/expected/formal/operation comparison. The full raw output for writer-final and reader-final must also be kept.\n(3) Do not delete, mask or skip the notification or any fields, and no unconditional PASS. Do not change Runtime, UI, SaveService, the OS collector, the original spec, the 30-package/88-unit denominator or the 5 conditions.\n(4) Add meaningful negative cases: a missing notification, an extra notification, field drift, and a bootstrap raw output that is missing or overwritten. Keep at least 49 local Python tests.\n(5) Sync the final source/input SHAs, CONDITION_MATRIX and implementation.json. Treat W's OS_R04 finding and os-r04-writer-engine.log as read-only reference data.\n\nThe worker must not run Godot, OS, native or full, must not change past raw output or PASS records, and must return a genuine submitted. After that, Root runs native → OS → required full regression on the final candidate, then a separate Opus independent review, then integration.",
"codex_model": "gpt-6.1-sol",
"codex_model_reason": "This is a small, contained fix to test code that the owner has already pinned down. It covers one fixture comparison, pulling out an existing helper and adding a label/prefix, plus checker negative cases. There is no product source change, and the root cause and fix approach are already decided. Sol, the default, gives enough quality for this. Astra would add time and usage without much benefit. The independent Opus review and the Root native/OS/full checks remain the quality gates."
}
@@ -0,0 +1,7 @@
{
"action": "run",
"task_id": "P08-03",
"reason": "P08-03 is in repair_ready, and the request-repair step has already been dispatched, so it shouldn't be repeated. The owner wants the confirmed small OS bootstrap oracle fix done in one Codex run. Inputs are the untracked OS_R04_INITIAL_LOAD_ORACLE_FINDING.json, os-r04-writer-engine.log and the registered build evidence (2153 files). The fix scope: (1) Replace the simple postload==formal check on initial OS load with the existing strict source-defined check. It must cover the whole state plus notifications, counters and payloads, either through a shared pure expected-state helper or an explicit bootstrap prefix. (2) Keep the bootstrap raw, formal, returned dict, actual, expected and comparison in separate files, never overwriting role-final proofs. (3) Statically check the same kind of oracle within the allowed scope, fix any other instances in one batch, and don't extend to other issues. (4) Keep the full current snapshot and events. Add semantic negatives for missing/extra notifications, field drift, and missing or overwritten bootstrap raw. Keep locals at 49 or more. Sync the final source, input SHA and docs. Forbidden: changes to Runtime, UI, SaveService or the collector; edits to the original spec or the 30/88 denominator; altering the 5 conditions, past raw evidence or PASS results. The worker runs pure Python only, with no Godot, native, OS or full-regression runs. It must return a genuine submitted that states what is still open: Root native/OS collection, final full regression, a separate Opus review and integration. Use the normal 900-second timeout, not the 1800 adapter. No further design, research or approval wait is needed.",
"codex_model": "gpt-6.1-sol",
"codex_model_reason": "The repair is small and well defined: connect an existing strict checker to the bootstrap path, keep the evidence files separate, and add negative tests. The design and finding are already confirmed, the work is pure Python, and the paths are bounded. It doesn't need the deeper reasoning gpt-6-astra offers, and the default model costs less time and usage. The owner also asked for the same gpt-6.1-sol run."
}
@@ -23,7 +23,7 @@
"scope_relationship": "RP24 bounded-shell acceptance is independent; not a dependency of Codex functional implementation"
},
"Claude_auth": "existing native subscription client automatically renewed; actual authenticated request success, no user login wait or API fallback",
"P08_03_next": "Native complete for unchanged8e3; retry only real OS collection in fresh owned evidence without fabricated ack or headless repeats",
"P08_03_next": "Actual Opus-confirmed same-worktree OS bootstrap oracle repair; 3 real UI acks preserved, no unit acceptance yet",
"current_game_sources_changed": false,
"permission_request": "still pending and not applied; independent source work does not require marker command",
"UI_worker_method": "Codex functional implementation selected by actual Opus; Antigravity read-only visual review",
@@ -110,9 +110,20 @@
},
"actual_OS_attempt": {
"state": "terminal_failed",
"session": 6565,
"session": 64613,
"pid": null,
"owned_engine_ended": true,
"successful_ack_written": false
"successful_acks": 3,
"native_profile_source": "8e3d79d5f2068fbe71c0ef7252540548d75b3d1e",
"actual_normal_manual_load": true,
"actual_build_palette_open": true,
"failure": "initial OS formal-model oracle ignored source-defined load notification"
},
"OS_bootstrap_repair": {
"state": "dispatch_started",
"model": "gpt-6.1-sol",
"repairs": 5,
"individual_limit": null,
"scope": "shared strict complete operation verification + unique bootstrap raw evidence + negative cases; no UI/Runtime/collector/spec changes"
}
}
@@ -0,0 +1,25 @@
{
"candidate": "8e3d79d5f2068fbe71c0ef7252540548d75b3d1e",
"native_phase_proof": "complete PASS reused with source/input SHA match, headless repeat0",
"OS_writer_pid": 75569,
"actual_OS_actions": [
"normal manual load",
"open normal build palette",
"horizontal palette reveal"
],
"completed_acks": [
1,
2,
3
],
"active_request_at_stop": 4,
"native_diagnostic": "OS initial formal model exact",
"source": "passive_placement.gd setup line78 still compares postload live snapshot directly to saved snapshot; ordinary read adds SAVE_RECOVERY_LOADED",
"required_scope": "reuse existing placement.gd verify_operation for initial normal OS load; keep full saved/postload states and exact event/counter/payload checks. No Runtime/UI/collector/spec edits or event masking.",
"all_owned_ended": true,
"cleanup_errors": [],
"guard_errors": [],
"acceptance": false,
"unit_credit": 0,
"updated_utc": "2026-10-13T19:44:52.545919+00:00"
}