STATUS=READY_FOR_CONSOLIDATED_RECOVERY_CANDIDATE_HUMAN_DECISION # AIPOS Consolidated Recovery Candidate R001 — Human Decision Presentation ## Machine-confirmed binding ```text task_class=PREPARE_CONSOLIDATED_RECOVERY_CANDIDATE_HUMAN_DECISION workspace_route=AIPOS_PRODUCT repository_authority=C:/codex/AIPOS/repo canonical_branch=main canonical_head=9d524dc074641f8805d4e519b7c4879e06ffb590 canonical_tree=f96cfd9a13ce73289f902f2b9517ce1fd5351b1d canonical_status_path_count=7 canonical_repository_read_only=TRUE canonical_writes=0 tests_executed=0 decision_materialization_or_consumption=0 runtime_production_writes=0 preflight_result=PASS ``` ```text subject_id=AIPOS-CONSOLIDATED-RECOVERY-CANDIDATE-CONSTRUCTION-R001 subject_path=C:/codex/AIPOS/eval-runs/consolidated-recovery-candidate-subject-r001/CONSOLIDATED-RECOVERY-CANDIDATE-SUBJECT.md presentation_path=C:/codex/AIPOS/eval-runs/consolidated-recovery-candidate-subject-r001/HUMAN-DECISION-PRESENTATION.md subject_status=READY_FOR_CONSOLIDATED_RECOVERY_CANDIDATE_HUMAN_DECISION presentation_status=READY_FOR_CONSOLIDATED_RECOVERY_CANDIDATE_HUMAN_DECISION exact_parent_commit=9d524dc074641f8805d4e519b7c4879e06ffb590 exact_parent_tree=f96cfd9a13ce73289f902f2b9517ce1fd5351b1d candidate_worktree=C:/codex/AIPOS/worktrees/consolidated-recovery-candidate-r001-candidate candidate_write_scope=tools/aipos_workflow.py;tools/aipos_repo.py;tools/tests/test_consolidated_recovery_candidate.py final_status=READY_FOR_CONSOLIDATED_RECOVERY_CANDIDATE_HUMAN_DECISION ``` ## 決策背景 前一份 reconciliation transaction owner subject 的外部報告已記錄 `ACCEPT`,但該文字沒有 native Work Package、Task Graph、`candidate-ref.json` 或 native decision record,也沒有被 `decision_apply` 消費。因此它不是可重播的授權;本次不是重新詢問同一 subject,而是因為後續確認的 `NATIVE_DECISION_ARTIFACT_PRODUCER_REQUIRED` 新增了必要且更完整的 defect scope。 本次可以合併,因為: 1. native decision-artifact producer 是 reconciliation owner Candidate 的前置能力; 2. 兩者共享同一 canonical prestate、exact parent、既有 Human decision owner、既有 `decision_preview`/`decision_apply` 與同一 qualification stop; 3. 兩者可在同一個三檔 Candidate scope 內完成,沒有第二套 decision framework,也沒有兩個互相衝突的 authority owner。 ## 本次要修正的 defect set - 建立一個能把本 exact subject/presentation 綁定成既有 native decision input shape 的 producer,並以 raw SHA-256、canonical prestate、Candidate parent、Work Package/Task Graph pair identity 形成 fail-closed `candidate-ref.json`。 - 建立 reconciliation transaction owner 的 preview/apply contract,僅預留未來對 `aipos/state.md` 與 `aipos/execution/state.json` 的 exact two-path owner-controlled transaction;本 subject 不授權實際 reconciliation。 ## ACCEPT 會授權什麼 若 Human 對 `AIPOS-CONSOLIDATED-RECOVERY-CANDIDATE-CONSTRUCTION-R001` 明確回覆 `ACCEPT`,只會授權: - 從 `9d524dc074641f8805d4e519b7c4879e06ffb590` / `f96cfd9a13ce73289f902f2b9517ce1fd5351b1d` 建立一個非 `main` isolated Candidate; - 只修改 `tools/aipos_workflow.py`、`tools/aipos_repo.py`、`tools/tests/test_consolidated_recovery_candidate.py`; - 實作並 qualification 兩個 bounded owners; - 執行 focused tests、approved AIPOS Python verification、independent exact-identity review,以及 disposable producer rehearsal。 `ACCEPT` 不會授權 canonical write、Candidate integration、任何 decision materialization/consumption、runtime/production、release、R003/R004、P1,或實際 reconciliation apply。 ## Native artifact 的 machine contract Producer 會沿用既有 `AIPOS-R002-EXTERNAL-CANDIDATE-1` candidate-ref shape,新增 owner-defined `candidate_kind=CONSOLIDATED_RECOVERY_CANDIDATE` 與 `AIPOS-CONSOLIDATED-RECOVERY-DECISION-ARTIFACT-BINDING-1` binding。其必要 binding 包含: - exact subject 與 presentation 的 path/bytes/raw SHA-256; - `C:/codex/AIPOS/repo`、`main`、exact HEAD/TREE、完整七路徑 status 與每一路徑 bytes/SHA-256; - exact Candidate parent commit/tree 與三檔 write scope; - native Work Package、exact companion Task Graph、pair identity、candidate identity; - single producer/validator/preview/apply/materializer owner map。 Preview 為 zero-write。Materialize 只可在 owner-managed external 或 disposable qualification root 中 atomic 產生 package pair 與 `candidate-ref.json`,並在 write 前後 revalidate;它不產生 decision、不消費 ACCEPT、不改 canonical repository,也不接受 caller 選擇 poststate、target path 或 residue disposition。 ## Qualification 後的硬停止 Qualification 必須證明 stale/replay/substitution/prestate drift、collision、path traversal、reparse、rollback、exact identity、existing native preview compatibility、two-path reconciliation write set 與七路徑 residue preservation。結果只能是: `CANDIDATE_QUALIFIED_FOR_OWNER_REVIEW`、`CANDIDATE_FAIL`、`REVIEW_INFRASTRUCTURE_FAIL`、`REVIEW_SOURCE_IDENTITY_FAIL` 然後停止在: `CANDIDATE_QUALIFICATION_COMPLETE_STOP_BEFORE_CANONICAL_RECONCILIATION` 之後要整合 Candidate,需新的 Human decision;要執行 reconciliation,需新的 exact preview 與 authorization。兩者都不由本次 `ACCEPT` 自動取得。 ## REJECT 的效果 若 Human 明確回覆 `REJECT`,不建立 Candidate/worktree、不寫 source/test、不產生 native artifact、不執行 qualification、不 integration、不 reconciliation;canonical repository 與既有七路徑 residue 維持原狀,也不會從 REJECT 推導其他決策。 ## 本次不允許的動作 現在及本 subject 的 `ACCEPT` 下,都不得 replay 或 consume 前一份 claimed `ACCEPT`、手寫 native artifact、修改 canonical state/residue、呼叫 `decision_apply`/`task_resume`/`task_complete`/`release_apply`、建立第二套 authority、整合 Candidate、執行 runtime/production 或清理/reset/restore/stash/刪除 residue。 ## Human choice ```text subject_id=AIPOS-CONSOLIDATED-RECOVERY-CANDIDATE-CONSTRUCTION-R001 valid_choices=ACCEPT | REJECT next_legal_action=HUMAN_DECISION_ON_EXACT_CONSOLIDATED_RECOVERY_CANDIDATE_CONSTRUCTION_SUBJECT_R001 ```