docs: record frozen P23 full regression and reuse P04 order audit

This commit is contained in:
Takeshi
2026-10-15 18:47:09 +09:00
parent 50b2dbeba4
commit 57131ec616
21 changed files with 1491 additions and 33 deletions
@@ -0,0 +1,7 @@
{
"action": "wait",
"task_id": "P23-03",
"reason": "P23-03 stays submitted at 9a26f9ab; repair counter 27; formal credit 0. I'm not calling Runner validate yet. The canonical gate needs normal-OS evidence, which doesn't exist while the Mac is locked. Validating now would be premature and would only produce a predictable failure.\n\nOrder for this exact frozen candidate:\n1) Root remeasures free disk against the 3819832403B reserve. If it's still above the reserve, Root runs one exact, unmodified full177 on 9a26f9ab now, while the screen is locked. Only one heavy engine runs at a time, under the existing owned-process and cleanup gates, and failure history is kept.\nThis is allowed because all of the following hold:\n- world_preview, Runtime, save and assets are unchanged by hash since the prior independent readiness review 887f9684.\n- That review found only the band overconstraint.\n- Root checked that the fix is limited to the checker, tests, fixture and notes.\n- All 99 prior tests still pass and no old negative test was weakened.\n- Native import, parse, and layout A/B passed on 9a26f9a.\nRunning full first doesn't change the outcome. If a later OS or review finding forces a source change, full has to be rerun in either order. Running it now uses the lock time well. This replaces the BAND_SCOPE OS→full order for this candidate only. It does not waive normal OS, the final review or the registered gate.\n\n2) No separate pre-full checker review session. I've read the diff and have no concrete concern that would justify one. The checker and test diff becomes a mandatory, explicitly listed part of the final independent all-condition Opus review, which still needs pixel evidence. That review must check these points:\n(a) Cabin exemption: only id()-matched cabin passengers who are raw boarded members, after compare_cabin_geometry passes.\n(b) Carried exemption: `actor in report['actor_drawings']` uses dict equality. The key must come from raw rescue_transport tasks in a non-terminal state. compare_actor_geometry must have run whenever such keys exist.\n(c) With no snapshot, nothing is exempt (fail-closed).\n(d) The visibility check uses the union of x-intervals only. Because the band is at most 5px thick, any intersection is treated as covering its full height. This is conservative, but the reviewer should confirm it.\n(e) Blocked bands use the same rules.\n(f) The frame180 fixture's density-one substitution is counterfactual. It must never be counted as occupied-band engine evidence.\n\n3) Once the screen is unlocked: do the normal-OS run on both layouts. That covers all six categories, FRONT/BACK, pan/zoom, a formal save, and a load in a separate PID. Use the full collector/CUA provenance and don't relabel old evidence. Then the final independent review, then Runner validate, then integration. If full177 fails, run the usual failure diagnosis before any repair.\n\nParallel non-OS work while full runs: a read-only audit of P04-01 (同時発生の更新規約), with no engine use and no implementation. P04-01 is the package prerequisite for P06-01/02/03 (P04 is listed in P06-01's dependency_scope). Local inputs already exist (p04-01-input-r01 input, historical-audit, source-map, ORDER_CONTRACT_DRAFT), and its first phase is defined as a bounded audit of current source and existing evidence. The audit must:\n- check the 6 current source pins and the 7 historical differences against the actual worktree;\n- check whether the existing evidence still applies to each of the 7 domains;\n- keep D05 pending and not reopen the A01 midnight upkeep decision;\n- list the concrete missing boundary evidence.\nP23 stays in_progress (7/6/30-88, formal 0). Permissions, billing and caps are unchanged.",
"codex_model": "gpt-6.1-sol",
"codex_model_reason": "No Codex implementation run is needed for P23-03 right now. The next steps are Root's full177 run, the normal-OS run once the screen is unlocked, and an independent Opus review. Astra's extra quality isn't needed for that, so the default (sol) is kept to save time and usage. If a P04-01 read-only audit dispatch is later approved, it's a bounded document audit that also fits sol. Choosing a model doesn't authorize any run."
}
@@ -129,7 +129,7 @@
"Retain P08/P22 package dependencies in plan. Available unit inputs: integrated P08-02/03, P22-01 inventory, current Runtime/report definitions and existing Kenney/code art. Unavailable P08-01 geometry/production values, D08/D09 quantities, P22-02/03 asset work remain explicitly open; they may not be silently considered done.",
"No Runtime/service/production data values or new assets. No visual redesign or new UI entry. Necessary existing renderer/read-only presentation wiring and evidence only."
],
"current_summary": "19fc3f5はRoot局所99/native import319parse/A+B/semantic17+17/component45checks成功。同需要7153→2585。独立Opus readinessが移動EV投影と交通帯の検証器過剰制約1件を指摘し、全177は未起動。実Opusが描画不変・raw authority付き例外/交通帯の完全隠れ拒否を判断。現在同一P23-03でSol修正27実行中、既存99試験と全negative保持。新OS/全177/独立画像・全条件review/統合/final未達、正式0。",
"current_summary": "Historical19fc3f5 readiness changes_required; corrected by submitted9a26f9a. Preserve prior evidence, no acceptance.",
"evidence": "ROOT_19FC3F5_NATIVE_IMPACT.json",
"component_evidence": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-component-impact-19fc3f5-r01/runner-ended.json",
"remaining_in_order": [
@@ -144,5 +144,6 @@
"formal_credit": 0
},
"actual_checker_repro": "ROOT_19FC3F5_BAND_MISMATCH_REPRO.json",
"correction_direction": "OPUS_REPAIR27_RUN_DIRECTION.json"
"correction_direction": "OPUS_REPAIR27_RUN_DIRECTION.json",
"superseded_by": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106"
}
@@ -0,0 +1,156 @@
{
"plan_id": "P23-03",
"candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"updated_at": "2026-10-15T18:41:56.206491+09:00",
"original_denominator": {
"packages": 30,
"delivery_units": 88,
"this_unit": 1,
"partial_credit": false
},
"conditions": [
{
"id": "room_occupancy_and_operation",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "queues_and_overflow",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "elevator_state_and_passengers",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "staff_state_and_jobs",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "supplies_and_carried_goods",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "same_demand_route_improvement",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
},
{
"id": "normal_os_and_distinct_pid_resume",
"acceptance": "pending",
"required_evidence": [
"Whole typed actual state and draw-consumed report rows; checker independently recomputes each relevant field using enum/schema definitions, never trusts all-boolean or self-asserted report. Screenshots pixel/rect provenance must correspond to actual rendered report positions.",
"LayoutsA/B: identical recorded seed, demand/arrival script, budget, initial clock, service definitions and unchanged production settings; actual Runtime paths differ only through predeclared allowed layout improvement. Record actual arrival input events, paths/arrival times, queues/wait metrics/density/completed services. Predeclare relevant metric; B strictly improves without new arbitrary numeric threshold. Fixture-only fabricated state is not valid same-demand proof.",
"Root actual OS observation on both layouts across six categories, FRONT/BACK, ordinary pan/zoom; formal save and distinct actual PID normal load, state/display remains correct. Handler tests or submitted scripts are not OS.",
"Collector request/ACK lifecycle, full actual CUA tool call IDs/arguments/screenshots/calibration from start, named helper self-properties, exact PID/engine/source/spec/settings/environment and guarded whole default-player profiles. No partial failed run splicing, no raw receipt relabel.",
"Use existing owned process/ordinary audio teardown gates. Check engine end/cleanup/protection on every run. Preserve failure history.",
"Sparse diagnostic snapshots with every acceptance field, content-hash reuse and streamed manifests; no unnecessary all-state-per-frame copies or arbitrary review byte limit. Required source/evidence may not be omitted for size.",
"Final exact frozen candidate: worker static/local and impact first; Root native/OS then mandatory one full regression, independent Opus all-condition review, integration/final/ledger. Reuse only matching actual source/input/settings/environment applicability.",
"Pin stable immutable spec/contract/fixture/engine/source plus relevant normative plan acceptance text. Record progress metadata separately, avoiding unnecessary reruns from unrelated progress-only plan text changes. Never ignore normative input change.",
"No Windows same-distribution/device credit, P23-02 held-gesture or x3 performance credit, P25 finished asset/full motion credit, or all30 facility credit from this unit."
]
}
],
"required_categories": [
"room",
"queue",
"EV",
"staff",
"goods",
"business"
],
"scope_and_dependencies": [
"All original six categories remain required: room, queue, EV, staff, goods, business state. Generic display of actual definitions/state, never an implementation limited to fixture IDs.",
"Representative acceptance scenarios use existing original-matched constructible definitions and real runtime operations, no undefined facility proxies or invented costs/mana/staff capacities. They do not establish all30 construction, finished asset, rights or natural-gameplay acceptance.",
"Retain P08/P22 package dependencies in plan. Available unit inputs: integrated P08-02/03, P22-01 inventory, current Runtime/report definitions and existing Kenney/code art. Unavailable P08-01 geometry/production values, D08/D09 quantities, P22-02/03 asset work remain explicitly open; they may not be silently considered done.",
"No Runtime/service/production data values or new assets. No visual redesign or new UI entry. Necessary existing renderer/read-only presentation wiring and evidence only."
],
"current_summary": "Sol修正27が9a26f9aを提出しclean。Root局所108試験/native import319parse/A+B/semantic17+17/component45checks成功、描画/Runtime/保存は19fc3f5と不変。同需要7153→2585。実Opus判断により同版全177を通常OSに先行して単一実行中。新OS/独立画像・全条件review/登録validate/統合/final未達、正式0。旧R13実画像12falseと19fc3f5 readiness指摘は履歴保全。",
"evidence": "ROOT_9A26F9A_NATIVE_IMPACT.json",
"component_evidence": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-component-impact-9a26f9a-r01/runner-ended.json",
"remaining_in_order": [
"Finish exactfull177; no phase splice",
"New canonical normalOS proof on bothlayouts with fullCUAprovenance",
"Final independent allcondition/directpixel review inclnewcheckerprojectionlogic",
"Registeredvalidate/integration/final/ledger"
],
"historical_negative": "R13 candidate49445d4 actual12false preserved; not accepted, not relabeled",
"formal_credit": 0,
"independent_readiness": {
"prior_source": "19fc3f5",
"receipt": "READINESS_19FC3F5_ACTUAL.json",
"scope": "Prior checked unchanged renderer paths; original single checker finding corrected, final new-version independent review remains mandatory"
},
"actual_checker_repro": "ROOT_19FC3F5_BAND_MISMATCH_REPRO.json",
"correction_direction": "OPUS_REPAIR27_RUN_DIRECTION.json",
"full177": {
"state": "running",
"exec_session": 72805,
"owner_pid": 29458,
"output": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-final-regression-9a26f9a-r01"
}
}
@@ -12,17 +12,20 @@
"first_batch_pid": 74942,
"controller_pid": 76134,
"no_duplicate_start": "Inspect these same actual process/session handles and controller state before any continuation. Started markers alone are not proof of live work.",
"full177_state": "not started r02; r01 remains incomplete 58PASS119unexecuted",
"full177_state": "running exact9a26f9a r01; no old58splice",
"formal_credit": 0,
"current_state": "19fc3f5はRoot局所99/native import319parse/A+B/semantic17+17/component45checks成功。同需要7153→2585。独立Opus readinessが移動EV投影と交通帯の検証器過剰制約1件を指摘し、全177は未起動。実Opusが描画不変・raw authority付き例外/交通帯の完全隠れ拒否を判断。現在同一P23-03でSol修正27実行中、既存99試験と全negative保持。新OS/全177/独立画像・全条件review/統合/final未達、正式0。",
"current_state": "Sol修正27が9a26f9aを提出しclean。Root局所108試験/native import319parse/A+B/semantic17+17/component45checks成功、描画/Runtime/保存は19fc3f5と不変。同需要7153→2585。実Opus判断により同版全177を通常OSに先行して単一実行中。新OS/独立画像・全条件review/登録validate/統合/final未達、正式0。旧R13実画像12falseと19fc3f5 readiness指摘は履歴保全。",
"next_same_commander_session": null,
"next_direction": "OPUS_REPAIR27_RUN_DIRECTION.json",
"next_direction": "OPUS_9A26F9A_VERIFICATION_ORDER.json",
"last_free_bytes": 3065634816,
"capacity_note": "Later free snapshot is below3819832403 planning reserve; remeasure before any native/full. No full-r02 launched.",
"active_worker_exec_session": 32927,
"active_worker_run_id": "ea7f081f7c7c4d5d84b36a9fc56ae472",
"active_worker_pid": 24732,
"active_worker_exec_session": null,
"active_worker_run_id": null,
"active_worker_pid": null,
"next_same_handle_rule": "Poll active_worker_exec_session and actual Runner run/PID; never start another implementation from a stale marker.",
"updated_at": "2026-10-15T18:27:34.912290+09:00",
"GUI_manual_unlock_request_pending": true
"updated_at": "2026-10-15T18:41:56.206491+09:00",
"GUI_manual_unlock_request_pending": true,
"current_candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"full177_exec_session": 72805,
"full177_owner_pid": 29458
}
@@ -0,0 +1,13 @@
{
"candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"recorded_at": "2026-10-15T18:41:56.206491+09:00",
"worker_run": "ea7f081f7c7c4d5d84b36a9fc56ae472",
"worker_terminal": "submitted",
"normalOS": "pending screenunlock",
"full177_exec_session": 72805,
"full177_owner_pid": 29458,
"full177_output": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-final-regression-9a26f9a-r01",
"direction": "OPUS_9A26F9A_VERIFICATION_ORDER.json",
"formal_credit": 0,
"next": "Poll the same full session and ownedPID; no duplicate native/full or source mutation."
}
@@ -0,0 +1,19 @@
{
"checked_at": "2026-10-15T09:35:47.542157+00:00",
"candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"free_bytes": 4422205440,
"required_reserve_bytes": 3819832403,
"historical_generated_private_profiles_bytes": 1941279622,
"historical_completed_176_engine_wall_sum_seconds": 1440.031,
"estimate_note": "Historical engine total about24min; current177 plus collection/guard overhead may take longer, not an ETA guarantee.",
"source_clean": true,
"output": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-final-regression-9a26f9a-r01",
"actual_direction": "OPUS_9A26F9A_VERIFICATION_ORDER.json",
"only_one_heavy_run": true,
"original_denominator": {
"packages": 30,
"units": 88,
"partial_credit": false
},
"formal_credit": 0
}
@@ -0,0 +1,59 @@
{
"plan_id": "P23-03",
"candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"source_clean": true,
"recorded_at": "2026-10-15T09:32:50.105641+00:00",
"native_output": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-native-impact-9a26f9a-r01",
"native_ended_sha256": "318f6af472c189beec8302466a13c7747b178c0a863f5d00391bf25056799a90",
"local_tests": 108,
"native_phases": [
{
"path": "runs/import/import-receipt.json",
"actual_pid": 27972,
"passed": true,
"parse_checks": null,
"checks": null
},
{
"path": "runs/parse/parse-receipt.json",
"actual_pid": 28086,
"passed": true,
"parse_checks": 319,
"checks": null
},
{
"path": "runs/layout-a/layout-a-receipt.json",
"actual_pid": 28132,
"passed": true,
"parse_checks": null,
"checks": 1
},
{
"path": "runs/layout-b/layout-b-receipt.json",
"actual_pid": 28222,
"passed": true,
"parse_checks": null,
"checks": 1
}
],
"semantics": {
"A": {
"passed": true,
"snapshot_count": 17
},
"B": {
"passed": true,
"snapshot_count": 17
}
},
"formal_credit": 0,
"normal_OS": "pending; no old evidence relabel",
"full177": "pending",
"final_independent_review": "pending",
"same_demand": {
"metric": "sum_destination_arrival_minutes_entire_cohort",
"A": 7153,
"B": 2585
},
"renderer_unchanged": true
}
@@ -0,0 +1,254 @@
P23-03 sameworker repair27 actually SUBMITTED9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106, clean, actualrun ea7f081f... finished providerexit0. No implementation currentlylive. Root reran108testsPASS (all99prior +9new), diffcheckPASS. Changed only checker38lines/tests101lines/minimaldecoded45KBcounterfactualfixture/notes; world_preview,Runtime,save,assets unchanged byhash. Actual counter repairs27; raw Opus label28 preserved, noreset.
Native exact9a Root import/parse319/layoutA+B allPASS, component45/0 allguardsunchanged, all5ownedPIDs ended0 cleanup0. New checker inspect_stream17+17PASS, all48 actualarrivals metric7153->2585. Actualnative receipt:
{
"plan_id": "P23-03",
"candidate": "9a26f9ab8c6691ba3cbe32ac4bc4525f4a9c7106",
"source_clean": true,
"recorded_at": "2026-10-15T09:32:50.105641+00:00",
"native_output": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-03-native-impact-9a26f9a-r01",
"native_ended_sha256": "318f6af472c189beec8302466a13c7747b178c0a863f5d00391bf25056799a90",
"local_tests": 108,
"native_phases": [
{
"path": "runs/import/import-receipt.json",
"actual_pid": 27972,
"passed": true,
"parse_checks": null,
"checks": null
},
{
"path": "runs/parse/parse-receipt.json",
"actual_pid": 28086,
"passed": true,
"parse_checks": 319,
"checks": null
},
{
"path": "runs/layout-a/layout-a-receipt.json",
"actual_pid": 28132,
"passed": true,
"parse_checks": null,
"checks": 1
},
{
"path": "runs/layout-b/layout-b-receipt.json",
"actual_pid": 28222,
"passed": true,
"parse_checks": null,
"checks": 1
}
],
"semantics": {
"A": {
"passed": true,
"snapshot_count": 17
},
"B": {
"passed": true,
"snapshot_count": 17
}
},
"formal_credit": 0,
"normal_OS": "pending; no old evidence relabel",
"full177": "pending",
"final_independent_review": "pending",
"same_demand": {
"metric": "sum_destination_arrival_minutes_entire_cohort",
"A": 7153,
"B": 2585
},
"renderer_unchanged": true
}
Prior independentreadiness887f9684 on19 checked all6sourcepaths, canvas/serial/regions, A/B and guards, foundONLYbandoverconstraint. Solimplemented yoursettledrawmembership/derivedcabin/carrier authority +keepfloornonoverlap +allactorsintervalunionnonzerouncovered +failclosedmissingraw +9positive/negativecases. Root inspected diff: nooldnegativeweakened; oldassertmessagechangedonly, all99 remain, confirmsactualcaller compare_traffic(snapshot)->validate_life_overlay(snapshot). Source changes read-only diff below. No full177run yet; no finalreview/OSclaims.
Mac actualscreenlockedtrue, existingunlockquestionpending; cannot performnormalOS. Currentfree4434477056B > historicalreserve3819832403B, remeasurebeforefull. Previous OPUS_19FC3F5_VERIFICATION_ORDER allowedfullbeforeOS afterreadiness toavoidstoppingwhilelocked. The subsequent BAND_SCOPE direction revertedtonormalOS->full order afterfix. Decide the exactefficientcurrent order now without waivingnormalOS/finalreview/registeredgate. Is prior independentcheckedunchangedrenderers+Rootverifiedminimalfix sufficient to do one exactunmodifiedfull177 NOW whilelocked, with a targetedindependentcheckerfixreview or finalallconditionOpusreviewlater? Or do a shortindependentsession reviewingONLYnewchecker/testdiff and itsauthority/legibility logic FIRST, reusingpriorunchangedsourceaudit thenfull? Do notrepeatwhole6617filebroadreadiness unless concreteconcern. Additionalreadinessissupplemental, finalindependentallconditionpixelsmandatory. No newimplementation or prematurevalidate againstabsentcanonical.
Also afterfull starts (oneheavyengineonly), ifnormalOSstilllocked, choose a concreteexistingnon-OSblockedunit for independentREAD-ONLYacceptancegap audit next, without duplicateimplementation or acceptancewaiver. P02-01/02 alreadyformallycompleted; do notredo. MostearlyopenunitsP01-01/02/03,P03-01/02/03,P04-01,P05-02,P06-01/02/03; prefervalue/dependency/remainingeffort and existingevidence. No workstartfornextunit untilitsconditions/evidence audited; currentP23 remainsin_progress all7/6/30-88/formal0. Don'tstopallwork orraisepermissions/billing.
Actualdiff:
diff --git a/tools/check_p23_life_observation_evidence.py b/tools/check_p23_life_observation_evidence.py
index 8dc8d1a..3501717 100644
--- a/tools/check_p23_life_observation_evidence.py
+++ b/tools/check_p23_life_observation_evidence.py
@@ -812,10 +812,10 @@ def compare_traffic(snapshot, report):
rows.append(dict(cell=cell, traffic={k: v for k, v in saved.items() if k != 'cell'},
rect=rect, band_rect=band))
close(report['traffic'], rows, 'traffic and cell rect')
- validate_life_overlay(report)
+ validate_life_overlay(report, snapshot=snapshot)
-def validate_life_overlay(report, root=ROOT):
+def validate_life_overlay(report, root=ROOT, snapshot=None):
"""Check consumed frame and source wiring, not merely reported order flags."""
serial = report.get('observation_serial')
require(type(serial) is int and serial > 0
@@ -842,6 +842,25 @@ def validate_life_overlay(report, root=ROOT):
< overlay.find('_draw_observed_actor(actor, _life_overlay)')
< overlay.find('_draw_actors(_life_overlay)'), 'LifeOverlay source pass order')
actors = list(report['actor_drawings']) + [a for c in report['cabins'] for a in c['passengers']]
+ # Projection authority comes from raw state, never riding/region flags.
+ cabin_actors, carried_keys = set(), set()
+ if snapshot is not None:
+ if report['cabins']:
+ compare_cabin_geometry(snapshot, report)
+ shafts = {s['shaft_id']: s for s in elevator_report(snapshot)['shafts']}
+ for cabin in report['cabins']:
+ members = {key.replace('staff:', 'staff/', 1).replace('guest:', 'guest/', 1)
+ for key in shafts[cabin['shaft_id']]['boarded']}
+ cabin_actors.update(id(a) for a in cabin['passengers'] if a['key'] in members)
+ tasks = snapshot['systems']['runtime']['staff']['tasks']
+ carried_keys = {'staff/' + t['target_entity_id'] for t in tasks
+ if t['task_type'] == 'rescue_transport'
+ and t['state'] not in ('WORKING', 'COMPLETED', 'CANCELLED', 'FAILED')
+ and t['assigned_staff_id']}
+ carried_keys.difference_update(report.get('boarded', {}), report.get('queue_positions', {}))
+ if carried_keys:
+ # Reuse the original raw binding, track and raised-region fit checks.
+ compare_actor_geometry(snapshot, report)
for row in report.get('traffic', []):
x, y, w, h = row['rect']
thickness = max(2, min(5, h * .16))
@@ -850,11 +869,24 @@ def validate_life_overlay(report, root=ROOT):
close(row['band_rect'], expected, 'traffic band rectangle')
if row['traffic']['current_density'] <= 0 and not row['traffic']['temporary_block']:
continue
+ intervals = []
for actor in actors:
core = actor_identity_core(actor)
intersects = (core[0] < expected[0] + expected[2] and expected[0] < core[0] + core[2]
and core[1] < expected[1] + expected[3] and expected[1] < core[1] + core[3])
- require(not intersects, 'traffic band covers actor core: ' + actor['key'])
+ require(not intersects or id(actor) in cabin_actors
+ or (actor in report['actor_drawings'] and actor['key'] in carried_keys),
+ 'floor actor core over traffic band: ' + actor['key'])
+ if intersects:
+ intervals.append((max(core[0], expected[0]),
+ min(core[0] + core[2], expected[0] + expected[2])))
+ end = expected[0]
+ for left, right in sorted(intervals):
+ if left > end:
+ break
+ end = max(end, right)
+ require(end < expected[0] + expected[2],
+ 'traffic band fully occluded: ' + str(row.get('cell')))
def compare_queues(snapshot, report):
diff --git a/tools/test_p23_life_observation_evidence.py b/tools/test_p23_life_observation_evidence.py
index f303854..7bb3d24 100644
--- a/tools/test_p23_life_observation_evidence.py
+++ b/tools/test_p23_life_observation_evidence.py
@@ -157,7 +157,7 @@ class LifeOverlayTests(unittest.TestCase):
def test_core_crossed_by_actual_band_fails(self):
report = self.report()
report['actor_drawings'][0]['at'][1] = 60
- with self.assertRaisesRegex(ValueError, 'traffic band covers actor core'):
+ with self.assertRaisesRegex(ValueError, 'floor actor core over traffic band'):
check.validate_life_overlay(report)
def test_forged_band_geometry_fails(self):
@@ -177,6 +177,105 @@ class LifeOverlayTests(unittest.TestCase):
check.validate_life_overlay(self.report())
+class ProjectionBandTests(unittest.TestCase):
+ def setUp(self):
+ fixture = json.loads((check.ROOT / 'tests/fixtures/p23-03/repair28_frame180_projection.json').read_text())
+ self.report, self.snapshot = fixture['report'], fixture['snapshot']
+
+ def occupied(self):
+ for row in self.report['traffic']:
+ if row['cell'] in ([0, 1, 0], [1, 1, 0]):
+ self.assertEqual(row['traffic']['current_density'], 0)
+ row['traffic']['current_density'] = 1
+
+ def test_counterfactual_actual_frame180_density_one(self):
+ """COUNTERFACTUAL density substitution; never occupied-band engine evidence."""
+ self.occupied()
+ for key in ('guest/p23-018', 'guest/p23-019'):
+ self.assertTrue(any(a['key'] == key for c in self.report['cabins'] for a in c['passengers']))
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_cabin_passenger_union_fully_occludes_band(self):
+ self.occupied()
+ row = next(r for r in self.report['traffic'] if r['cell'] == [0, 1, 0])
+ x, y, w, h = row['band_rect']
+ # Each core covers only part; their touching intervals cover the union.
+ for i, actor in enumerate(self.report['cabins'][0]['passengers']):
+ actor.update(scale=2, flip=False, mode='idle', at=[x+i*12-12, y-2])
+ with self.assertRaisesRegex(ValueError, 'traffic band fully occluded:'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_spoofed_cabin_rectangle_fails_raw_recomputation(self):
+ self.occupied()
+ self.report['cabins'][0]['rect'][1] += 1
+ with self.assertRaisesRegex(ValueError, 'cabin/rect'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_flag_only_cabin_projection_without_raw_membership_fails(self):
+ self.occupied()
+ for cabin in self.report['cabins']:
+ for actor in cabin['passengers']:
+ actor['key'] = 'guest/spoof-' + actor['key']
+ actor['riding'] = True
+ with self.assertRaisesRegex(ValueError, 'floor actor core over traffic band'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_no_raw_state_never_exempts_cabin_projection(self):
+ self.occupied()
+ with self.assertRaisesRegex(ValueError, 'floor actor core over traffic band'):
+ check.validate_life_overlay(self.report)
+
+ def test_floor_copy_of_raw_cabin_member_keeps_zero_intersection(self):
+ self.occupied()
+ self.report['actor_drawings'].append(copy.deepcopy(self.report['cabins'][0]['passengers'][0]))
+ with self.assertRaisesRegex(ValueError, 'floor actor core over traffic band'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_blocked_band_uses_same_projection_and_legibility_rules(self):
+ row = next(r for r in self.report['traffic'] if r['cell'] == [0, 1, 0])
+ row['traffic']['temporary_block'] = True
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+ x, y, w, h = row['band_rect']
+ for i, actor in enumerate(self.report['cabins'][0]['passengers']):
+ actor.update(scale=2, flip=False, mode='idle', at=[x+i*12-12, y-2])
+ with self.assertRaisesRegex(ValueError, 'traffic band fully occluded:'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_flag_only_carried_projection_without_binding_fails(self):
+ self.occupied()
+ actor = copy.deepcopy(self.report['cabins'][0]['passengers'][0])
+ actor.update(key='staff/spoof', staff=True, riding=False, region='carried')
+ self.report['actor_drawings'].append(actor)
+ self.report['carried_patients'] = {'spoof': 'carrier'}
+ with self.assertRaisesRegex(ValueError, 'floor actor core over traffic band: staff/spoof'):
+ check.validate_life_overlay(self.report, snapshot=self.snapshot)
+
+ def test_carried_projection_requires_original_binding_tracks_and_fit(self):
+ fixture = AnchoredGeometryTests()
+ fixture.setUp()
+ fixture.person('staff/carrier', [0, 0, 0], 'AVAILABLE')
+ fixture.person('staff/patient', [0, 0, 0], 'INCAPACITATED')
+ fixture.runtime['staff']['tasks'] = [dict(task_type='rescue_transport', state='MOVING',
+ assigned_staff_id='carrier', target_entity_id='patient', rescue_facility_id='')]
+ fixture.report['carried_patients'] = {'patient': 'carrier'}
+ fixture.drawing('staff/carrier', [108, 214])
+ fixture.drawing('staff/patient', [108, 166], 'collapsed')
+ for key, value in LifeOverlayTests().report().items():
+ if key.startswith('overlay_') or key == 'observation_serial':
+ fixture.report[key] = value
+ # Synthetic band crosses the raised patient, with uncovered span.
+ fixture.report['traffic'] = [dict(cell=[0, 1, 0], rect=[78, 100.5, 60, 92],
+ band_rect=[85.2, 184, 45.6, 5], traffic=dict(current_density=1, temporary_block=False))]
+ check.validate_life_overlay(fixture.report, snapshot=fixture.snapshot)
+ for mutation in ('binding', 'track', 'position'):
+ report, snapshot = copy.deepcopy(fixture.report), copy.deepcopy(fixture.snapshot)
+ if mutation == 'binding': snapshot['systems']['runtime']['staff']['tasks'] = []
+ if mutation == 'track': report['actor_tracks']['staff/carrier']['cell'] = [1, 0, 0]
+ if mutation == 'position': report['actor_drawings'][1]['at'][1] += 1
+ with self.subTest(mutation=mutation), self.assertRaises(ValueError):
+ check.validate_life_overlay(report, snapshot=snapshot)
+
+
class SetupBudgetTests(unittest.TestCase):
def setUp(self):
self.source = (check.ROOT / 'tests/fixtures/p23-03/observation.gd').read_text()
@@ -1,4 +1,5 @@
"""Root component impact check using the unchanged guarded phase executor."""
import argparse
import importlib.util
import os
from pathlib import Path
@@ -8,9 +9,13 @@ import sys
sys.dont_write_bytecode = True
ROOT = Path('/Users/korizatou114/Projects/TheTree-managed-worktrees/p23-03-code/P23-03-implement')
BASE = Path('/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02')
PRIOR = BASE / 'p23-03-native-impact-19fc3f5-r01'
OUT = BASE / 'p23-03-component-impact-19fc3f5-r01'
COMMIT = '19fc3f50c7ef66223a86b438d4327c5b1b308ed1'
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('--commit', default='19fc3f50c7ef66223a86b438d4327c5b1b308ed1')
parser.add_argument('--prior-native', type=Path, default=BASE / 'p23-03-native-impact-19fc3f5-r01')
parser.add_argument('--output', type=Path, default=BASE / 'p23-03-component-impact-19fc3f5-r01')
args = parser.parse_args()
PRIOR, OUT, COMMIT = args.prior_native, args.output, args.commit
assert PRIOR.is_absolute() and OUT.is_absolute()
spec = importlib.util.spec_from_file_location('root_guarded_phase', ROOT / 'tools/run_all_tests.py')
r = importlib.util.module_from_spec(spec)
spec.loader.exec_module(r)