{ "id": "P19-03-TABLE", "original_plan_id": "P19-03", "title": "分岐の到達性", "original_work": "人物ごとの3ルートに必要なイベント・条件・中断処理を列挙する。", "original_acceptance": "7名×3ルートの到達表があり、未制作内容は欠損として残る。", "original_denominator": { "packages": 30, "units": 88, "completed_at_start": 14, "partial_credit": false }, "whole_original_unit_review_required": true, "scope": "Whole original documentation/audit unit P19-03. Neutral non-graphic state/event IDs and exact source citations only; never create intimate content, narrative events, per-character mechanics or product numbers. Does not implement or accept route gameplay, content, endings, Windows or the whole game.", "authority": [ { "path": "docs/traceability/original/BASELINE.txt", "sha256": "75e4bdbdeb379c9269553f0c776bdb9cc96e01f2d6aa5ca650d132c63a8aeb1a", "sections": "Original §6 seven-character catalog; §7 lines136–161 three routes and relation/duel/action/history rules. Read actual full relevant lines, do not trust line numbers without matching text." }, { "path": "docs/plans/original-completion-2026-10-02/work_packages.json", "unit": "P19-03", "acceptance_exact": true }, { "path": "docs/plans/original-completion-2026-10-02/atomic_requirements.json", "requirements": "B-7.1 through B-7.6 and relevant character/route clauses; inspect complete selected entries." }, { "path": "docs/plans/original-completion-2026-10-02/decisions.json", "rule": "Only approved decisions may fill specifications. D08 pending cells remain 原本未定義/D08 pending 欠損." } ], "actual_opus_selection": "dc342e4d69154660bef7e688a70fd783", "frozen_game_input_pins_sha256": "6c778226a4cc6d0b0d682500759e7d4229c926a27bd2e247b00b9c3e5f1a2fb0", "audit_source_anchor": "1b07b87d3736e777932315a4bdde8b70cbf9cb23", "implementation_requirements": [ "Build REACHABILITY_TABLE.json plus deterministic REACHABILITY_TABLE.md with exactly7 canonical character IDs/names from original §6, existing catalog and scripts/relationship/original_relationship_state.gd, crossed with3 original routes 純愛/NTR/堕落. No invented or substituted character/route.", "Every one of21 cells enumerates applicable entry/required events, source-defined state conditions, duel win/loss and route/selection effects, interruption/cancellation and save handling, history/marks and current reachability. Distinguish common baseline rules from character-specific content undefined by the original.", "Every listed event/condition/handling item carries exact original line range+text/hash authority, concrete implementation status implemented/partial/missing, exact existing source path+SHA at the audited source anchor (or explicit not implemented with no fake path), and owning remaining original deliverable. Do not call backend model support a completed natural route.", "Unproduced or undefined character-specific events/conditions/interruption/save/history content remains explicitly 欠損 with reason and owning remaining original item. Missing content is allowed by the unchanged original audit acceptance; it is never game acceptance. Preserve unknown numeric thresholds/rates/initial values as pending; use neutral abstract state IDs only.", "Implement stdlib check_reachability_table.py and test_reachability_table.py under this documentation directory. This placement is inside actual Opus proposed docs/** scope and preserves the exact1368 selected native-game input set. Do not add new files under tools, game scripts, data, tests, marker registry or other game-selected paths.", "Checker verifies exact7×3 unique complete cell set, canonical IDs, original pinned source+line text, no uncited item, exact current source SHA+anchor binding, valid status/owner and explicit gaps, no fabricated thresholds/unsupported completion, and byte-for-byte deterministic Markdown regeneration. --check must be read-only; optional --write may regenerate view during implementation.", "Source binding enforces complete frozen selected-source map, no missing/new/changed selected files, marker/policy/engine/roster/parse identity and baseline hash. Validate FROZEN_GAME_INPUT_PINS.json against this immutable spec SHA field. Code source evidence may cite published audited anchor; checker output binds actual current commit and proves exact file equality. Do not fabricate a future self-containing commit SHA.", "Cross-cutting UI/Runtime/save/Windows applicability is explicit: audit existing support and missing mechanisms per route; this documentation-only unit introduces no product OS behavior, so audit-unit native GUI/Windows execution is not applicable. Global/other-unit Windows and game acceptance remain open.", "Self-tests meaningfully reject missing/duplicate cell, wrong character/route, missing category/citation, stale source/baseline text/hash, invented numeric threshold, missing content falsely marked complete, wrong owning deliverable/status, malformed JSON/types, or Markdown drift; include valid implemented/partial/missing controls. No test-count padding.", "Reuse existing completed P13-03 content-audit checker pattern as guidance. Preserve all current game files, original text, decisions, frozen pins, immutable TASK_SPEC and selection record. Do not revise acceptance or invent D05/D08 answers.", "Provide concise implementation report with all requirements mapped to files/checks, actual invocations/results and remaining parent/game gaps. No worker claim or exit0 substitutes for independent whole-unit review and normal gates." ], "required_outputs": [ "REACHABILITY_TABLE.json", "REACHABILITY_TABLE.md", "check_reachability_table.py", "test_reachability_table.py", "IMPLEMENTATION_REPORT.md" ], "validation_interface": [ { "id": "p19-table", "argv": [ "{python}", "{worktree}/docs/plans/original-completion-2026-10-02/execution/p19-03/check_reachability_table.py", "--project-root", "{worktree}", "--check" ] }, { "id": "p19-negative", "argv": [ "{python}", "{worktree}/docs/plans/original-completion-2026-10-02/execution/p19-03/test_reachability_table.py", "--project-root", "{worktree}" ] }, { "id": "p19-source-binding", "argv": [ "{python}", "{worktree}/docs/plans/original-completion-2026-10-02/execution/p19-03/check_reachability_table.py", "--project-root", "{worktree}", "--source-binding-only" ] } ], "workflow": [ "Register fixed original acceptance P19-03 once; actual Opus confirms next registered run and chooses Sol6.1 default/Astra only justified. One managed worker, no duplicate task.", "Worker local static+checker+self-tests only; do not run native full during implementation.", "Required full native evidence may be reused only after independent exact candidate input equality against frozen C/S source/settings/markers/policy/engine/test inputs/roster/applicability. Doc helpers live outside selected source set; no narrowed equality definition. If equality fails do not claim reuse or launch an uncontrolled full.", "Separate actual Opus whole-original P19-03 review against full original §6–7 and exact acceptance. Reviewer decides whether explicit D08/content gaps satisfy audit acceptance; fail honestly if not, never redefine it.", "Normal prepare-integration, actual C/M exact equality, existing real main permission only (no fabricated new human speech), normal final, ledger+push. Only then original P19-03 may add1 to14/88." ], "pending_not_waived": [ "P04 existing D05 owner choices", "D08 production chapter/route/content scope", "P19-01/02 Runtime and normal route gameplay", "P20/P26 content/endings/encyclopedia", "P13 four low production followups", "Global same-Windows acceptance and held gestures remain open" ], "model_proposal": { "codex_model": "gpt-6.1-sol", "actual_opus_decision": "dc342e4d69154660bef7e688a70fd783" } }