{ "schema": "pi.context_intelligence.closeout_gate_contract.v1", "decision_gate_schema": "pi.context_intelligence.closeout_gate.v1", "purpose": "prompt_to_artifact_context_intelligence_closeout_gate_not_source_of_truth", "allowed_statuses": [ "pass", "fail" ], "allowed_check_statuses": [ "pass", "fail" ], "allowed_decisions": [ "close_final_gate_and_parent_epic", "file_follow_up_beads_before_closing_epic" ], "required_top_level_keys": [ "schema", "generated_at", "status", "purpose", "parent_epic", "final_gate_bead", "required_checks", "child_artifact_map", "quality_gate_results", "checklist", "missing_checks", "follow_up_required", "follow_up_beads", "decision", "epic_can_close_after_this_commit" ], "required_child_bead_ids": [ "bd-ircr3.1", "bd-ircr3.2", "bd-ircr3.3", "bd-ircr3.4", "bd-ircr3.5", "bd-ircr3.6", "bd-ircr3.7", "bd-ircr3.8", "bd-ircr3.9", "bd-ircr3.10" ], "required_check_ids": [ "child_beads_closed", "graph_contracts", "graph_builder", "freshness_claim_gates", "bundle_planner", "redaction_invalidation", "preview_surface", "prompt_injection", "no_mock_e2e", "perf_budgets", "doctor_runpack", "operator_docs", "readme_freshness", "pushed_commits", "quality_gates" ], "required_quality_gate_ids": [ "py_compile", "runpack_self_test", "json_contracts", "semantic_context_graph_contract_rch", "semantic_workspace_graph_contract_rch", "semantic_workspace_graph_builder_rch", "context_intelligence_e2e_rch", "doctor_context_intelligence_rch", "context_perf_budgets_rch", "context_intelligence_closeout_gate_contract_rch", "cargo_fmt", "cargo_check_all_targets_rch", "cargo_clippy_all_targets_rch", "staged_ubs", "beads_ledger_reconcile" ], "requirements": [ { "id": "child_artifact_mapping", "description": "Every implementation child bead maps to its committed code paths, test paths, docs or evidence paths, validation commands, close reason, and commit hash." }, { "id": "prompt_to_artifact_coverage", "description": "The checklist covers contracts, graph builder, freshness and claim gates, bundle planner, redaction and invalidation, preview surface, prompt injection, no-mock E2E, perf budgets, doctor/runpack posture, docs, README freshness, pushed commits, and quality gates." }, { "id": "safe_close_behavior", "description": "A passing gate may close the final gate and parent epic. A failing gate must emit follow-up Beads instead of optimistic closeout." }, { "id": "rch_heavy_gates", "description": "All Cargo and Rust validation evidence must prove RCH execution, including focused context tests plus cargo check and clippy." }, { "id": "not_source_of_truth", "description": "The closeout gate is evidence over existing Beads, git, docs, tests, RCH, Doctor, runpack, and source artifacts. It does not replace those sources of truth." } ] }