From ed3ee23709b22d5822372fe7a9183bc51e82ff09 Mon Sep 17 00:00:00 2001 From: Takeshi Date: Wed, 14 Oct 2026 17:48:33 +0900 Subject: [PATCH] Start Opus-directed shared Runtime support without adding delivery units --- .../IMPLEMENTATION_PLAN.md | 3 +++ .../p08-03/CURRENT_ACCEPTANCE_STATUS.json | 15 ++++++++--- .../p08-03/OPUS_RUNTIME_SUPPORT_RUN.json | 7 +++++ .../baseline.json | 10 +++++++ .../contract.json | 26 +++++++++++++++++++ .../runtime-support-registration/policy.json | 23 ++++++++++++++++ .../validations.json | 11 ++++++++ .../progress_snapshot.json | 19 +++++++++++++- 8 files changed, 110 insertions(+), 4 deletions(-) create mode 100644 docs/plans/original-completion-2026-10-02/execution/p08-03/OPUS_RUNTIME_SUPPORT_RUN.json create mode 100644 docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/baseline.json create mode 100644 docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/contract.json create mode 100644 docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/policy.json create mode 100644 docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/validations.json diff --git a/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md b/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md index 71b3c5a..94f9ace 100644 --- a/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md +++ b/docs/plans/original-completion-2026-10-02/IMPLEMENTATION_PLAN.md @@ -1,5 +1,8 @@ ## 現在の対象(2026-10-13・現版監査更新) +2026-10-14 現在の閉鎖対象はP08-03。台帳は正式11/着手25/予定52で、今回の支援登録による加点は0。提出4775001の撤去表示・検証器修正を保持し、Opus 5.5の具体指示で既存案を再利用する共有Runtime支援P08-03-RTPREVIEWを6.1-solで実装中。支援は原88へ加点しない。旧R09は変更前の履歴証跡で、新版受入へ流用しない。関連修正を固め、正確な最終版で通常OS・全必須回帰・独立レビュー・統合を満たす。原30/88と部分点なしを維持し、未完了の条件を完了へ変更しない。容量整理済みで現在7.9GB空き。以下の過去の個別修正上限・容量削除承認待ちの記述は履歴であり、現在の停止理由ではない。 + + 原30パッケージ/88成果、部分点なし。現在は正式10/着手24/予定54。P24-03は正式完了、MP-01-r02承認用資料は正式統合済みだが原88へ加点しない。P13-03既存最終修正は全7施設/84スロット/6分類が保全済み。P13/RP13の限定追加修正と正式host自己試験は直接許可待ちで、重複実装や無断上限変更をしない。 独立作業としてOpus判断に基づきP22-02の権利・形式契約へ着手。受入済614利用記録を再利用し、公式Kenney2packの全283同梱files、UI4音/Licenseをraw byte照合。現物296media中276の配布元権利を検証し、20の最終権利/creator条件を明示。BGMの内部recipe起源は見つかったが実聴/最終品質へ換算しない。全枠の選定/契約/欠損開示/実利用/必要検証/独立レビュー/統合が残る。完成素材欄0、全ゲーム未完を維持する。 diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/CURRENT_ACCEPTANCE_STATUS.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/CURRENT_ACCEPTANCE_STATUS.json index b8ae946..93a3995 100644 --- a/docs/plans/original-completion-2026-10-02/execution/p08-03/CURRENT_ACCEPTANCE_STATUS.json +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/CURRENT_ACCEPTANCE_STATUS.json @@ -11,7 +11,7 @@ "Main must display real rejection reason consistently", "Opus recorded scope reconciliation for necessary Runtime/test changes", "changed-product native/OS recollection after batch freezes", - "final175 on exact final candidate", + "all mandatory regression suites on exact final candidate; derive actual roster after added targeted test", "independent raw-proof read and all-five-condition review", "integration, current final verification and ledger closure" ], @@ -20,11 +20,20 @@ "denominator_units": 88, "completed_delta": 0, "formal_validator": "7e2368f5 only historical after changed Main/checker; current 4775001 not accepted", - "next_action": "actual Opus commander running after native Claude subscription auth refresh; preserve submitted work; no duplicate implementer", + "next_action": "Actual recorded Opus RUN dispatched; one 6.1-sol supporting implementer; Root targeted native work starts only on submitted frozen source", "semantic_triage": "OPUS_PRE_FULL_SEMANTIC_TRIAGE_7E2368F5.json (read-only, no acceptance)", "capacity": "cleanup complete: 7.94GB free; 580 closed stages archived losslessly; current R09 retained; no cleanup permission pending", "implemented_not_accepted": [ "readable demolition outcome/refund from real result", "checker rejects preview/command disagreement; 128 local Python controls executed" - ] + ], + "support_task": { + "id": "P08-03-RTPREVIEW", + "project": "the-tree-p08-runtime-preview", + "state": "implementing", + "base": "d4747dd7e12e8fd19e404ad444bdc1e56d03f088", + "counting_scope": "zero additional original units", + "reuse": "4775001 unapplied Runtime/test proposal, reviewed by actual Opus", + "actual_pid_at_start": 9155 + } } diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/OPUS_RUNTIME_SUPPORT_RUN.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/OPUS_RUNTIME_SUPPORT_RUN.json new file mode 100644 index 0000000..fa5d29c --- /dev/null +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/OPUS_RUNTIME_SUPPORT_RUN.json @@ -0,0 +1,7 @@ +{ + "action": "run", + "task_id": "P08-03-RTPREVIEW", + "reason": "RUN P08-03-RTPREVIEW on gpt-6.1-sol. Base is d4747dd. Edit only these three files: autoload/simulation_runtime.gd, tests/transport/test_runtime_build_preview.gd and tests/transport/test_runtime_build_preview.gd.uid. This counts as supporting work for P08-03 only: the original 30/88 does not change, no original units are added and there is no partial credit.\n\nStart from the seed proposal's Runtime and test parts. Do not apply the WorldPreview/UI hunk (scenes/main/world_preview.gd). Make the following corrections.\n\n(1) Shared precheck.\n- Add _build_facility_precheck(command_id, payload) -> CommandResult. Move the existing checks from _execute_build_facility (:7576) into it, keeping the actual order: operations gate (:7988) → NOT_FOUND → unsupported vertical → origin parse → STAIR_LANDING_MISSING → ELEVATOR_BUSY → rotation.\n- Keep every code, message string, details dict and the _staff_assignment_failure (:6687) usage byte-identical to HEAD.\n- _execute_build_facility calls the precheck first, then runs its existing start_construction path unchanged.\n- Show this with a side-by-side comparison of the removed and added rule lines.\n\n(2) preview_build_facility(definition_id, origin, rotation) -> Dictionary.\n- Look up the definition first.\n- If the precheck fails and the definition is null, which covers both NOT_FOUND and an operations-gate failure ordered before NOT_FOUND, return {can_build:false, error_codes:[code], reasons:[{code, message:failure.message, cells:[], details:failure.details.duplicate(true)}], cells:[]}. Do not call construction_service.validate_placement in that case.\n- Otherwise use the seed's logic: call validate_placement and push the precheck reason to the front. code = details.reason if present, else the CommandResult.Code name.\n- Never crash on an unknown id, an unsupported definition or a precheck failure.\n\n(3) Purity. In the returned summary, cite file:line showing that each of these is read-only:\n- operations_coordinator.can_start_construction_or_investment\n- _operations_total_arrears (:1890), including _staff_payroll_arrears_total and upkeep_settlement.get_arrears_total\n- definition_registry.get_facility\n- _facility_definition_is_unsupported_vertical_proxy\n- _parse_world_cell (:12401)\n- path_service.has_cell\n- elevators.get_report\n- _elevator_touches_module (:12749) and _elevator_shaft_busy (:12744)\n- construction_service.validate_placement\n\nIf any of them mutates state, stop and report it as blocked. Do not work around it.\n\n(4) Test.\n- Replace the invented ARREARS_REMAIN with the existing UNPAID_EXPENSES (:7993), or assert whatever the real gate returns.\n- Cover these cases:\n - NOT_FOUND with an unknown id\n - an operations failure with a null definition (precedence, no crash)\n - unsupported vertical precedence\n - STAIR_LANDING_MISSING, using the real message\n - ELEVATOR_BUSY taking precedence over an invalid rotation\n - invalid rotation → INVALID_PAYLOAD 'The selected rotation is not allowed.'\n - the positive landing case\n- For every precheck case, check that preview and submit_command agree on the code and the message.\n- State in a comment that the origin INVALID_PAYLOAD case cannot be reached through the Vector3i API.\n- Check that a preview leaves var_to_bytes(create_snapshot()), the command log and the event count byte- and count-identical.\n- Remove every WorldPreview use from the test.\n- Print exactly one strict final marker line with the actual check and failure counts, and quit with a nonzero code if any check fails.\n\n(5) UID.\n- Replace uid://cpxbldpreview with a valid Godot UID in the same format as the existing ones (e.g. tests/transport/test_runtime_stairs.gd.uid = uid://blt3w5drpduju).\n- Grep the repository to confirm it is unique.\n\n(6) Prohibitions.\n- The worker must not commit, create or switch branches, or run Godot, native or full tests.\n- No changes to rule values, specs, data, the construction service, Main/UI or the Runner.\n\n(7) Return 'submitted' after these static checks: git diff --check, the scope check against the three files, and the comparison against the existing rules.\n- Make no acceptance claim.\n- After submission, freeze the changes. Root collects the targeted test, impact tests (test_runtime_stairs plus the construction/world_preview tests) and the native/purity proof.\n- Independent review and integration follow, then the existing P08-03 repair applies the Main/WorldPreview changes.", + "codex_model": "gpt-6.1-sol", + "codex_model_reason": "Keeping the default gpt-6.1-sol. The task is a small, fully specified refactor in one file plus one targeted test and a uid file. The rule order, codes and messages are already pinned against HEAD (:7576-7615). The gate and helper line numbers were re-checked in this session at :1890, :6687, :7988-8001, :12401, :12744 and :12749. There is no open design question or cross-component debugging, so gpt-6-astra's extra time and usage would not be worth it." +} \ No newline at end of file diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/baseline.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/baseline.json new file mode 100644 index 0000000..c81aaf1 --- /dev/null +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/baseline.json @@ -0,0 +1,10 @@ +[ + { + "id": "P08-03-RTPREVIEW", + "requirement_id": "P08-03", + "text": "Internal shared-runtime implementation proof only; does not close or add original P08-03/88. All required native/purity/precedence cases, impact verification, independent review and integration required.", + "validation_ids": [ + "runtime-preview-proof" + ] + } +] \ No newline at end of file diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/contract.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/contract.json new file mode 100644 index 0000000..8cc0dce --- /dev/null +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/contract.json @@ -0,0 +1,26 @@ +{ + "id": "P08-03-RTPREVIEW", + "title": "P08-03を閉じるための共有配置プレビュー判定", + "requirement_ids": [ + "P08-03" + ], + "acceptance_ids": [ + "P08-03-RTPREVIEW" + ], + "spec_ref": "docs/spec/acceptance/P08-03-RTPREVIEW.json", + "base_commit": "d4747dd7e12e8fd19e404ad444bdc1e56d03f088", + "worker": "codex", + "allowed_paths": [ + "autoload/simulation_runtime.gd", + "tests/transport/test_runtime_build_preview.gd", + "tests/transport/test_runtime_build_preview.gd.uid" + ], + "depends_on": [], + "resource_locks": [ + "p08-shared-build-runtime" + ], + "validation_ids": [ + "runtime-preview-proof" + ], + "max_repair_attempts": null +} \ No newline at end of file diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/policy.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/policy.json new file mode 100644 index 0000000..1e87434 --- /dev/null +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/policy.json @@ -0,0 +1,23 @@ +{ + "max_implementers": 1, + "max_llm": 2, + "max_heavy_tests": 1, + "max_llm_runs": null, + "timeout_seconds": 900, + "test_timeout_seconds": 300, + "max_repair_attempts": null, + "api_fallback": false, + "owner_approval_required": true, + "allowed_services": [ + "codex", + "claude", + "agy" + ], + "ui_mode": "semi-automatic", + "claude_max_budget_usd": null, + "models": { + "codex": "gpt-6.1-sol", + "claude": "claude-opus-5-5", + "agy": null + } +} \ No newline at end of file diff --git a/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/validations.json b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/validations.json new file mode 100644 index 0000000..28e5626 --- /dev/null +++ b/docs/plans/original-completion-2026-10-02/execution/p08-03/runtime-support-registration/validations.json @@ -0,0 +1,11 @@ +{ + "runtime-preview-proof": { + "argv": [ + "{python}", + "-B", + "-c", + "import os,json,pathlib,hashlib,subprocess; r=pathlib.Path.cwd(); p=pathlib.Path(os.environ[\"BUILD_OUTPUT_DIR\"])/\"runtime-preview-proof.json\"; x=json.loads(p.read_text()); sha=subprocess.check_output([\"git\",\"rev-parse\",\"HEAD\"],text=True).strip(); assert x[\"candidate\"]==sha; assert x[\"protocol\"]==\"guarded-runtime-preview-v1\"; assert x[\"native_executed\"] is True and x[\"owned_engine_ended\"] is True; assert not x[\"guard_errors\"] and not x[\"cleanup_errors\"]; required={\"landing_rejection\",\"landing_positive\",\"unknown_definition\",\"operations_precedence\",\"unsupported_vertical\",\"elevator_before_rotation\",\"invalid_rotation\",\"preview_purity\"}; assert required<=set(x[\"cases\"]); assert all(x[\"cases\"][n] is True for n in required); assert x[\"snapshot_before_sha256\"]==x[\"snapshot_after_sha256\"]; assert x[\"command_log_before\"]==x[\"command_log_after\"] and x[\"events_before\"]==x[\"events_after\"]; [(lambda f,pin: (_ for _ in ()).throw(AssertionError(f)) if hashlib.sha256(f.read_bytes()).hexdigest()!=pin else None)(r/path,pin) for path,pin in x[\"sources\"].items()]; assert len(x[\"sources\"])>=3; print(\"Runtime preview proof integrity verified; independent review remains required\")" + ], + "timeout_seconds": 180 + } +} \ No newline at end of file diff --git a/docs/plans/original-completion-2026-10-02/progress_snapshot.json b/docs/plans/original-completion-2026-10-02/progress_snapshot.json index 0c5b200..2c2e4da 100644 --- a/docs/plans/original-completion-2026-10-02/progress_snapshot.json +++ b/docs/plans/original-completion-2026-10-02/progress_snapshot.json @@ -9709,7 +9709,7 @@ "current": "P08-03", "previous_formally_completed": "P08-02", "previous_integration_commit": "c675bed91d694a18abbddac85013eb5b443bdca1", - "next_state": "P08-03 original/source audit started; missing normal demolition entry confirmed; no worker started" + "next_state": "P08-03 submitted 4775001 kept; actual Opus scoped Runtime support task implementing on 6.1-sol; original unit remains incomplete" }, "historical_regression_before_P08_02_formal_closure": { "path": "/Users/korizatou114/Projects/とりにく工房ゲーム制作部/artifacts/original-completion-2026-10-02/p23-02-final-candidate-r32-combined-root-acceptance-r01.json", @@ -9815,6 +9815,23 @@ } }, "current_P08_03_acceptance_audit": { + "plan_id": "P08-03", + "status": "in_progress", + "submitted": "47750010b8694c72737f47078f925b2b2e22ce59", + "previous_review": "7e2368f5 changes_requested", + "native_evidence": "31aa7706 R09 historical after changed UI/checker", + "dependency": { + "task": "P08-03-RTPREVIEW", + "project": "the-tree-p08-runtime-preview", + "state": "implementing", + "model": "gpt-6.1-sol", + "commander": "claude-opus-5-5", + "added_original_units": 0 + }, + "next": "shared Runtime precheck, existing P08 UI connection, frozen-version native and complete regression, independent review, integration", + "formal_complete": false + }, + "historical_P08_03_audit_before_runtime_support_20261014": { "plan_id": "P08-03", "original_work": "通常パレットから支持・接続・不正位置・撤去・再建築を操作する。", "original_acceptance": "拒否理由と実判定が一致し、パン・ズーム・保存再開後も同じ位置を扱う。",