{
  "version": "now33_reference_candidate_consumption_guard_deepseek_consultation.v1",
  "created_at": "2026-06-07T07:35:39.105951Z",
  "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
  "round_id": "round2",
  "project_root": "/wwwb/aitools/writer",
  "output_run_dir": "outputs/now33_reference_candidate_consumption_guard_implementation_deepseek_round2b_20260607_1534",
  "source_guard_packet": {
    "source_guard_run_dir": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_20260607_153137",
    "gate_ref": {
      "path": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_20260607_153137/NOW_33_reference_candidate_consumption_guard_gate.json",
      "exists": true,
      "sha256": "34df3e0fdad1a8024024d14a779c4a2989b72c648e78fb54be72eacea79da299",
      "size_bytes": 8110
    },
    "validation_ref": {
      "path": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_20260607_153137/NOW_33_reference_candidate_consumption_guard_validation_report.json",
      "exists": true,
      "sha256": "01d3556e461fc003224356ee0f937b4a52a9e5b97824db5554d8969cb05b8d9f",
      "size_bytes": 7799
    },
    "review_summary_ref": {
      "path": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_20260607_153137/NOW_33_reference_candidate_review_summary.json",
      "exists": true,
      "sha256": "3318ae382ed239a8c7e01e4a1b2b0abdf2fd470a748520b7525b944b03b109bf",
      "size_bytes": 2112
    },
    "report_ref": {
      "path": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_20260607_153137/NOW_33_reference_candidate_consumption_guard_report.json",
      "exists": true,
      "sha256": "deb532e39a84301dc4d7760d824577d2326fb984133068953add6a83c282ac1d",
      "size_bytes": 10888
    },
    "gate": {
      "version": "now33_reference_candidate_consumption_guard_gate.v1",
      "created_at": "2026-06-07T07:31:37.798260Z",
      "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
      "status": "pending_deepseek_advisory",
      "gate_status": "pending_now33_reference_candidate_consumption_guard_implementation_deepseek_advisory",
      "pass": false,
      "block_reasons": [
        "implementation_deepseek_advisory_pending"
      ],
      "warnings": [
        "candidate_ref_surface_field_normalized_to_matched_surface"
      ],
      "input_integrity": {
        "status": "pass",
        "checked_artifact_count": 17,
        "missing_artifact_keys": [],
        "mismatch_count": 0,
        "mismatches": []
      },
      "source_fingerprint_check": {
        "status": "pass",
        "values": {
          "target_registry_build_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "built_candidate_preflight_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "now33_reference_rerun_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "selected_registry_payload": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34"
        },
        "required_absent_keys": [],
        "unique_nonempty_fingerprints": [
          "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34"
        ],
        "inference_basis": ""
      },
      "registry_path_check": {
        "status": "pass",
        "expected_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
        "observed_paths": {
          "target_registry_candidate": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "preflight_selected_candidate_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "now33_registry_discovery_current_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "now33_input_current_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json"
        },
        "mismatches": [],
        "missing_required_path_keys": []
      },
      "candidate_ref_structural_check": {
        "status": "pass",
        "candidate_ref_count": 1476,
        "structural_missing_count": 0,
        "legacy_surface_normalization_count": 1476,
        "schema_normalization_notes": [
          "candidate refs used legacy surface field; output normalized it to matched_surface"
        ]
      },
      "candidate_ref_count_check": {
        "status": "pass",
        "actual_candidate_ref_count": 1476,
        "gate_declared_candidate_ref_count": 1476,
        "gap_declared_candidate_ref_count": 1476,
        "row_declared_count_mismatch_count": 0,
        "mismatches": []
      },
      "non_binding_flag_check": {
        "status": "pass",
        "failure_count": 0,
        "failures": []
      },
      "blocked_registry_leak_check": {
        "status": "pass",
        "candidate_uid_missing_from_registry_count": 0,
        "blocked_registry_entity_leak_count": 0
      },
      "canonical_uid_writeback_check": {
        "status": "pass",
        "gate_canonical_entity_uid_bound_count": 0,
        "manifest_rows_with_canonical_entity_uids": 0,
        "candidate_refs_with_forbidden_ref_writeback": 0,
        "canonical_uid_rows": []
      },
      "output_forbidden_claim_scan": {
        "status": "pass",
        "finding_count": 0,
        "findings": []
      },
      "review_queue_coverage": {
        "status": "pass",
        "unblocked_registry_entity_count": 28,
        "registry_content_review_queue_rows": 28,
        "candidate_ref_count": 1476,
        "candidate_ref_review_queue_rows": 1476
      },
      "deepseek_advisory_status": {
        "status": "pending_deepseek_advisory",
        "failure_count": 7,
        "failures": [
          "implementation_deepseek_round1_parse_not_pass",
          "implementation_deepseek_round1_call_not_success",
          "implementation_deepseek_round1_not_supporting",
          "implementation_deepseek_round2_parse_not_pass",
          "implementation_deepseek_round2_call_not_success",
          "implementation_deepseek_round2_not_supporting",
          "implementation_deepseek_round2_confidence_not_high"
        ],
        "round1": {},
        "round2": {},
        "advisory_only": true,
        "not_evidence_or_acceptance_or_route_authority": true
      },
      "forbidden_side_effect_counts": {
        "provider_prompt_count": 0,
        "adapter_payload_count": 0,
        "provider_job_execution_count": 0,
        "media_generation_count": 0,
        "manual_provider_evidence_count": 0,
        "operator_evidence_creation_count": 0,
        "feedback_intake_count": 0,
        "repair_execution_count": 0,
        "replay_action_count": 0,
        "accepted_overlay_write_count": 0,
        "operator_overlay_write_count": 0,
        "canonical_kg_writeback_count": 0,
        "raw_kg_writeback_count": 0,
        "outputs_index_mutation_count": 0
      },
      "next_entrypoint_unchanged": true,
      "summary": {
        "target_registry_entity_count": 713,
        "unblocked_registry_entity_count": 28,
        "blocked_registry_entity_count": 685,
        "now33_manifest_row_count": 1638,
        "rows_with_candidate_refs": 1056,
        "candidate_ref_count": 1476,
        "registry_review_queue_rows": 28,
        "candidate_ref_review_queue_rows": 1476,
        "surface_collision_count": 0,
        "missing_high_value_surface_count": 0,
        "legacy_surface_normalization_count": 1476,
        "output_forbidden_claim_finding_count": 0,
        "validator_failure_count": 1,
        "validator_warning_count": 1,
        "provider_prompt_count": 0,
        "adapter_payload_count": 0,
        "provider_job_execution_count": 0,
        "media_generation_count": 0,
        "manual_provider_evidence_count": 0,
        "operator_evidence_creation_count": 0,
        "feedback_intake_count": 0,
        "repair_execution_count": 0,
        "replay_action_count": 0,
        "accepted_overlay_write_count": 0,
        "operator_overlay_write_count": 0,
        "canonical_kg_writeback_count": 0,
        "raw_kg_writeback_count": 0,
        "outputs_index_mutation_count": 0
      },
      "now33_macro_closeout_boundary": "not_closed",
      "canonical_uid_binding_acceptance_or_writeback_authorized": false,
      "candidate_entity_refs_are_not_canonical_bindings": true,
      "candidate_refs_writeback_allowed": false,
      "advisory_only": true,
      "not_evidence_or_acceptance_or_route_authority": true,
      "policy": {
        "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
        "candidate_consumption_guard_only": true,
        "registry_content_review_packet_only": true,
        "candidate_entity_refs_are_not_canonical_bindings": true,
        "candidate_refs_writeback_allowed": false,
        "canonical_uid_binding_acceptance_allowed": false,
        "canonical_entity_uid_writeback_allowed": false,
        "canonical_kg_writeback_allowed": false,
        "raw_kg_writeback_allowed": false,
        "entity_store_writeback_allowed": false,
        "accepted_overlay_writeback_allowed": false,
        "operator_overlay_writeback_allowed": false,
        "row_mutation_allowed": false,
        "held_row_promotion_allowed": false,
        "asset_generation_or_acquisition_allowed": false,
        "asset_binding_allowed": false,
        "provider_specific_prompt_allowed": false,
        "adapter_payload_allowed": false,
        "provider_job_execution_allowed": false,
        "media_generation_allowed": false,
        "manual_provider_evidence_creation_allowed": false,
        "operator_evidence_creation_allowed": false,
        "feedback_intake_allowed": false,
        "repair_execution_allowed": false,
        "replay_execution_allowed": false,
        "outputs_index_mutation_allowed": false,
        "route_transition_allowed": false,
        "operator_production_acceptance_claimed": false,
        "deepseek_advisory_may_substitute_for_expert_advice": true,
        "deepseek_advisory_is_operator_production_acceptance": false,
        "deepseek_findings_have_direct_state_authority": false,
        "active_route_authority": "execution_state.json.next_entrypoint",
        "execution_state_next_entrypoint_unchanged": true
      }
    },
    "validation_summary": {
      "target_registry_entity_count": 713,
      "unblocked_registry_entity_count": 28,
      "blocked_registry_entity_count": 685,
      "now33_manifest_row_count": 1638,
      "rows_with_candidate_refs": 1056,
      "candidate_ref_count": 1476,
      "registry_review_queue_rows": 28,
      "candidate_ref_review_queue_rows": 1476,
      "surface_collision_count": 0,
      "missing_high_value_surface_count": 0,
      "legacy_surface_normalization_count": 1476,
      "output_forbidden_claim_finding_count": 0,
      "validator_failure_count": 1,
      "validator_warning_count": 1,
      "provider_prompt_count": 0,
      "adapter_payload_count": 0,
      "provider_job_execution_count": 0,
      "media_generation_count": 0,
      "manual_provider_evidence_count": 0,
      "operator_evidence_creation_count": 0,
      "feedback_intake_count": 0,
      "repair_execution_count": 0,
      "replay_action_count": 0,
      "accepted_overlay_write_count": 0,
      "operator_overlay_write_count": 0,
      "canonical_kg_writeback_count": 0,
      "raw_kg_writeback_count": 0,
      "outputs_index_mutation_count": 0
    },
    "validation_failures": [
      "implementation_deepseek_advisory_pending"
    ],
    "validation_warnings": [
      "candidate_ref_surface_field_normalized_to_matched_surface"
    ],
    "review_summary": {
      "version": "now33_reference_candidate_consumption_guard.v1",
      "created_at": "2026-06-07T07:31:37.744887Z",
      "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
      "status": "review_packet_built",
      "target_registry_entity_count": 713,
      "unblocked_registry_entity_count": 28,
      "blocked_registry_entity_count": 685,
      "now33_manifest_row_count": 1638,
      "rows_with_candidate_refs": 1056,
      "candidate_ref_count": 1476,
      "registry_review_queue_rows": 28,
      "candidate_ref_review_queue_rows": 1476,
      "surface_collision_count": 0,
      "missing_high_value_surface_count": 0,
      "risk_flag_counts": {
        "multiple_candidate_refs_in_row": 799,
        "role_or_title_surface": 194,
        "high_frequency_surface": 1111,
        "object_or_location_surface": 19
      },
      "top_surfaces": [
        {
          "surface": "宝玉",
          "count": 418
        },
        {
          "surface": "凤姐",
          "count": 267
        },
        {
          "surface": "黛玉",
          "count": 120
        },
        {
          "surface": "秦钟",
          "count": 73
        },
        {
          "surface": "贾政",
          "count": 66
        },
        {
          "surface": "宝钗",
          "count": 55
        },
        {
          "surface": "贾珍",
          "count": 52
        },
        {
          "surface": "刘姥姥",
          "count": 52
        },
        {
          "surface": "秦氏",
          "count": 48
        },
        {
          "surface": "尤氏",
          "count": 47
        },
        {
          "surface": "贾母",
          "count": 45
        },
        {
          "surface": "贾琏",
          "count": 37
        },
        {
          "surface": "平儿",
          "count": 35
        },
        {
          "surface": "贾雨村",
          "count": 30
        },
        {
          "surface": "李嬷嬷",
          "count": 18
        },
        {
          "surface": "封肃",
          "count": 17
        },
        {
          "surface": "薛姨妈",
          "count": 16
        },
        {
          "surface": "李贵",
          "count": 13
        },
        {
          "surface": "甄士隐",
          "count": 10
        },
        {
          "surface": "李纨",
          "count": 10
        }
      ],
      "advisory_only": true,
      "canonical_writeback_allowed": false,
      "not_evidence_or_acceptance_or_route_authority": true
    },
    "guard_report_checks": {
      "input_integrity": {
        "status": "pass",
        "checked_artifact_count": 17,
        "missing_artifact_keys": [],
        "mismatch_count": 0,
        "mismatches": []
      },
      "source_fingerprint_check": {
        "status": "pass",
        "values": {
          "target_registry_build_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "built_candidate_preflight_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "now33_reference_rerun_gate": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34",
          "selected_registry_payload": "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34"
        },
        "required_absent_keys": [],
        "unique_nonempty_fingerprints": [
          "c5d6ab4f5d8bc0aa4a018ebe6daec3315b0d646cb189b1a4fb28fe9a6e23ba34"
        ],
        "inference_basis": ""
      },
      "registry_path_check": {
        "status": "pass",
        "expected_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
        "observed_paths": {
          "target_registry_candidate": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "preflight_selected_candidate_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "now33_registry_discovery_current_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json",
          "now33_input_current_registry_path": "/wwwb/aitools/writer/outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json"
        },
        "mismatches": [],
        "missing_required_path_keys": []
      },
      "candidate_ref_structural_check": {
        "status": "pass",
        "candidate_ref_count": 1476,
        "structural_missing_count": 0,
        "legacy_surface_normalization_count": 1476,
        "schema_normalization_notes": [
          "candidate refs used legacy surface field; output normalized it to matched_surface"
        ]
      },
      "candidate_ref_count_check": {
        "status": "pass",
        "actual_candidate_ref_count": 1476,
        "gate_declared_candidate_ref_count": 1476,
        "gap_declared_candidate_ref_count": 1476,
        "row_declared_count_mismatch_count": 0,
        "mismatches": []
      },
      "non_binding_flag_check": {
        "status": "pass",
        "failure_count": 0,
        "failures": []
      },
      "blocked_registry_leak_check": {
        "status": "pass",
        "candidate_uid_missing_from_registry_count": 0,
        "blocked_registry_entity_leak_count": 0
      },
      "canonical_uid_writeback_check": {
        "status": "pass",
        "gate_canonical_entity_uid_bound_count": 0,
        "manifest_rows_with_canonical_entity_uids": 0,
        "candidate_refs_with_forbidden_ref_writeback": 0,
        "canonical_uid_rows": []
      },
      "review_queue_coverage": {
        "status": "pass",
        "unblocked_registry_entity_count": 28,
        "registry_content_review_queue_rows": 28,
        "candidate_ref_count": 1476,
        "candidate_ref_review_queue_rows": 1476
      }
    }
  },
  "contract_excerpt": {
    "path": "/wwwb/aitools/writer/docs/now33_reference_candidate_consumption_guard_and_registry_content_review_contract_20260607.md",
    "exists": true,
    "sha256": "b1ed73c869e27fb8ed3fe22e3cd85ec61af62bcf25dce745f86dffd7366edbf2",
    "char_count": 17282,
    "text": "# NOW-33 Reference Candidate Consumption Guard And Registry Content Review Contract\n\n更新时间：`2026-06-07T14:40:40+08:00`\n\n## Status\n\n- contract id: `now33_reference_candidate_consumption_guard_and_registry_content_review_contract`\n- status: `contract_landed_pending_implementation`\n- active route authority: `execution_state.json.next_entrypoint`\n- active route remains: `platform_neutral_prompt_readiness_manual_execution_log_contract`\n- source retrospective: `docs/now33_reference_registry_rerun_retrospective_20260607.md`\n- source NOW-33 rerun: `outputs/now33_entity_link_binding_with_built_registry_20260607_0049`\n- source registry build: `outputs/target_source_grounded_entity_registry_build_20260607_0032`\n- source built-candidate preflight: `outputs/current_registry_authority_preflight_for_built_candidate_20260607_0034`\n- DeepSeek v4 pro Round 1: `outputs/now33_reference_candidate_consumption_guard_contract_deepseek_pro_consultation_20260607_143239`\n- DeepSeek v4 pro Round 2: `outputs/now33_reference_candidate_consumption_guard_contract_deepseek_pro_consultation_round2_20260607_143656`\n- superseded non-pro advisory record: `outputs/now33_reference_candidate_consumption_guard_contract_deepseek_consultation_20260607_143046`\n\n## Purpose\n\nNOW-33 reference-registry rerun produced `1476` exact-surface `candidate_entity_refs` across `1056` of `1638` prompt draft rows. These refs are useful review signals, but they are not canonical bindings.\n\nThis contract defines the next implementation step before any canonical UID binding, KG/raw KG/entity-store writeback, row mutation, asset binding, evidence pack, route transition, or production acceptance:\n\n1. Build deterministic consumption guards so downstream code cannot treat `candidate_entity_refs` as `canonical_entity_uids`.\n2. Build a registry content review packet for the `28` unblocked registry entities and the `1476` candidate refs.\n3. Produce review/gap/risk artifacts that prepare, but do not execute, a future canonical UID binding acceptance/writeback contract.\n\n## Inputs\n\nRequired read-only inputs:\n\n- `outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_gate.json`\n- `outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_candidate_current_entity_registry.json`\n- `outputs/target_source_grounded_entity_registry_build_20260607_0032/TARGET_REGISTRY_source_entity_candidate_manifest.jsonl`\n- `outputs/current_registry_authority_preflight_for_built_candidate_20260607_0034/NOW_33A_current_registry_gate.json`\n- `outputs/current_registry_authority_preflight_for_built_candidate_20260607_0034/NOW_33A_registry_candidate_manifest.jsonl`\n- `outputs/now33_entity_link_binding_with_built_registry_20260607_0049/NOW_33_entity_link_gate.json`\n- `outputs/now33_entity_link_binding_with_built_registry_20260607_0049/NOW_33_entity_link_advisory_manifest.jsonl`\n- `outputs/now33_entity_link_binding_with_built_registry_20260607_0049/NOW_33_entity_gap_report.json`\n- `outputs/now33_entity_link_binding_with_built_registry_20260607_0049/NOW_33_registry_discovery_report.json`\n- DeepSeek final advisory refs for registry build and NOW-33 rerun.\n\nAll inputs remain source artifacts only. Reading these inputs does not create acceptance, evidence, canonical authority, or writeback authority.\n\n## Allowed Work\n\nImplementation may:\n\n- Parse and validate the required input gates/manifests.\n- Verify that the configured registry path, selected preflight path, and NOW-33 registry discovery path match.\n- Verify SHA-256 integrity for all required input artifacts recorded in the implementation input manifest before processing.\n- Verify that `target_source_fingerprint` exists and matches across the target registry build gate, built-candidate preflight gate, and NOW-33 reference rerun gate.\n- Verify that every NOW-33 row with candidate refs includes `candidate_entity_refs_are_not_canonical_bindings=true` and `candidate_refs_writeback_allowed=false`.\n- Verify that every candidate ref object is structurally valid before review queue generation.\n- Verify that every referenced candidate comes from a registry entity with `blocked_for_review=false`.\n- Verify row-level candidate-ref count consistency between declared row counts and actual candidate ref arrays.\n- Build a candidate-ref consumption guard report with pass/block findings.\n- Build a registry content review queue covering the `28` unblocked registry entities.\n- Build a candidate-ref review queue covering the `1476` candidate refs, grouped by entity UID, surface, draft row, chapter, scene, and shot.\n- Flag likely false positives, missing high-value surfaces, blocked-entity leakage, alias/surface collisions, duplicate-surface risks, weak support, and type/subtype uncertainty.\n- Generate side-effect-free JSON/JSONL/HTML artifacts under a new output run.\n- Run two DeepSeek v4 pro thinking/max advisory rounds over the contract and output packet if the implementation asserts closeout/readiness.\n\n## Forbidden Work\n\nThis contract does not authorize:\n\n- canonical UID binding acceptance or writeback;\n- KG/raw KG/entity-store writeback;\n- accepted/operator overlay writeback;\n- draft, held, readiness, execution-log, or prompt-row mutation;\n- held-row promotion, waiver, or repair execution;\n- asset generation, acquisition, or binding;\n- provider-specific prompt generation, adapter payload generation, provider job execution, or media generation;\n- manual/provider/operator evidence creation;\n- feedback intake, repair, replay, or replay eligibility;\n- route transition or `execution_state.json.next_entrypoint` change;\n- `outputs/index.json` or `outputs/index-lite.json` mutation;\n- production readiness or production acceptance.\n\nDeepSeek advisory remains advisory-only and cannot become evidence, operator acceptance, canonical state, writeback authority, route authority, or output-index authority.\n\n## Required Output Artifacts\n\nThe implementation should create a new output run, for example:\n\n`outputs/now33_reference_candidate_consumption_guard_and_registry_content_review_<timestamp>`\n\nRequired artifacts:\n\n- `NOW_33_reference_candidate_consumption_guard_input.json`\n- `NOW_33_reference_candidate_consumption_guard_report.json`\n- `NOW_33_reference_candidate_registry_content_review_queue.jsonl`\n- `NOW_33_reference_candidate_ref_review_queue.jsonl`\n- `NOW_33_reference_candidate_surface_collision_report.json`\n- `NOW_33_reference_candidate_missing_high_value_surface_report.json`\n- `NOW_33_reference_candidate_review_summary.json`\n- `NOW_33_reference_candidate_consumption_guard_validation_report.json`\n- `NOW_33_reference_candidate_consumption_guard_gate.json`\n- `NOW_33_reference_candidate_consumption_guard_review.html`\n- `manifest.json`\n\nIf DeepSeek consultation is run for implementation closeout, store consultation inputs/messages/raw/parsed/record files in dedicated output directories and reference them from the gate. These records are review aids only and must never be used as provider/manual/operator evidence, accepted overlay, canonical facts, route authority, or output-index authority.\n\n## Required Output Schemas\n\n`manifest.json` must include at minimum:\n\n- `version`\n- `created_at`\n- `run_id`\n- `stage`\n- `status`\n- `input_artifacts` with `path`, `sha256`, and `size_bytes`\n- `output_artifacts` with `path`, `sha256`, `size_bytes`, and `artifact_role`\n- `deepseek_advisory_refs`\n- `forbidden_side_effect_counts`\n- `advisory_only=true`\n- `not_evidence_or_acceptance_or_route_authority=true`\n\n`NOW_33_reference_candidate_consumption_guard_gate.json` must include at minimum:\n\n- `version`\n- `created_at`\n- `status`\n- `pass`\n- `block_reasons`\n- `warnings`\n- `input_integrity`\n- `source_fingerprint_check`\n- `registry_path_check`\n- `candidate_ref_structural_check`\n- `candidate_ref_count_check`\n- `non_binding_flag_check`\n- `blocked_registry_leak_check`\n- `canonical_uid_writeback_check`\n- `output_forbidden_claim_scan`\n- `review_queue_coverage`\n- `deepseek_advisory_status`\n- `forbidden_side_effect_counts`\n- `next_entrypoint_unchanged`\n- `advisory_only=true`\n- `not_evidence_or_acceptance_or_route_authority=true`\n\n## Consumption Guard Rules\n\nThe guard must block if any of the following are true:\n\n- `execution_state.json.next_entrypoint` changed.\n- NOW-33 rerun gate is not `advisory_entity_link_binding_closed_reference_registry_no_writeback`.\n- NOW-33 rerun gate has `canonical_entity_uid_bound_count != 0`.\n- Any NOW-33 row has non-empty `canonical_entity_uids`.\n- Any NOW-33 row with candidate refs lacks `candidate_entity_refs_are_not_canonical_bindings=true`.\n- Any NOW-33 row with candidate refs lacks `candidate_refs_writeback_allowed=false`.\n- Any candidate ref object lacks required structural fields: `entity_uid`, `canonical_name`, and `matched_surface`.\n- Any row-level declared candidate-ref count differs from the actual number of candidate ref objects for that row.\n- Any candidate ref resolves to a registry entity with `blocked_for_review=true`.\n- Any candidate ref points to an entity UID absent from the configured registry.\n- Any source/preflight/NOW-33 selected registry path mismatches.\n- `target_source_fingerprint` is absent from any target registry build, built-candidate preflight, or NOW-33 reference rerun gate, or the values differ.\n- Any required input artifact SHA-256 differs from the implementation input manifest.\n- Any output artifact claims accepted binding, canonical writeback, evidence, provider execution, route transition, output-index mutation, or production acceptance.\n- Any output artifact content scan detects forbidden claims such as `canonical_entity_uids` populated, `candidate_refs_writeback_allowed=true`, accepted/operator overlay writeback, manual/provider/operator evidence, provider execution, route transition, output-index mutation, or production acceptance.\n\nThe guard may pass with review warnings if false-positive, missing-surface, alias-collision, or type-uncertainty risks are present, provided they are explicit review queue items and no forbidden writeback/acceptance authority is created.\n\n## Registry Content Review Queue\n\nEach unblocked registry entity review row must include:\n\n- `review_item_id`\n- `entity_uid`\n- `canonical_name`\n- `aliases`\n- `type`\n- `subtype`\n- `source_evidence_refs`\n- `source_ref_count`\n- `candidate_ref_count`\n- `matched_surfaces`\n- `matched_draft_row_ids`\n- `risk_flags`\n- `recommended_review_action`\n- `allowed_review_actions`\n- `advisory_only=true`\n- `canonical_writeback_allowed=false`\n\nAllowed review actions are:\n\n- `keep_candidate_for_future_binding_review`\n- `needs_alias_or_surface_review`\n- `needs_type_subtype_review`\n- `needs_split_or_merge_review`\n- `exclude_from_future_binding_review`\n- `defer_until_more_evidence`\n\nThese actions are review recommendations only. They do not become accepted overlay rows.\n\n## Candidate Ref Review Queue\n\nEach candidate ref review row must include:\n\n- `review_item_id`\n- `draft_row_id`\n- `chapter_index`\n- `scene_number`\n- `shot_number`\n- `entity_uid`\n- `canonical_name`\n- `matched_surface`\n- `match_source`\n- `context_excerpt`\n- `row_candidate_ref_count`\n- `risk_flags`\n- `recommended_review_action`\n- `allowed_review_actions`\n- `candidate_entity_refs_are_not_canonical_bindings=true`\n- `candidate_refs_writeback_allowed=false`\n- `canonical_writeback_allowed=false`\n\nAllowed review actions are:\n\n- `candidate_ref_plausible_for_future_binding_review`\n- `candidate_ref_surface_collision_risk`\n- `candidate_ref_false_positive_suspected`\n- `candidate_ref_needs_context_review`\n- `candidate_ref_defer_until_registry_review`\n\nThese actions are review recommendations only and cannot mutate source rows or accepted overlays.\n\n## Risk Flags\n\nUse deterministic flags where possible:\n\n- `blocked_registry_entity_leak`\n- `candidate_uid_missing_from_registry`\n- `surface_collision`\n- `alias_collision`\n- `multiple_candidate_refs_in_row`\n- `weak_source_support`\n- `type_subtype_uncertain`\n- `high_frequency_surface`\n- `role_or_title_surface`\n- `object_or_locat",
    "truncated": true
  },
  "active_route": {
    "execution_state_ref": {
      "path": "/wwwb/aitools/writer/execution_state.json",
      "exists": true,
      "sha256": "5432a7e0256dbc1b4a8f8a9659d63395b361c68feae9cfb3d27ac2c4734424b7",
      "size_bytes": 82528
    },
    "next_entrypoint_id": "platform_neutral_prompt_readiness_manual_execution_log_contract"
  },
  "previous_round": {
    "dir": "/wwwb/aitools/writer/outputs/now33_reference_candidate_consumption_guard_implementation_deepseek_round1b_20260607_1532",
    "parsed": {
      "parse_status": "pass",
      "round_id": "round1",
      "confidence": "high",
      "findings": [
        {
          "category": "scope",
          "description": "Implementation's DeepSeek advisory status blocked gate pass; this independent Round 1 advisory resolves that requirement.",
          "required_fix": "Record this advisory and update gate pass to true.",
          "severity": "medium"
        },
        {
          "category": "schema",
          "description": "Candidate refs used legacy 'surface' field; output normalized to 'matched_surface' for schema compliance. No semantic change.",
          "required_fix": "None; normalization is acceptable per contract.",
          "severity": "low"
        },
        {
          "category": "fingerprint",
          "description": "Source fingerprint check passed across all gates with no inference needed; any implied fingerprint warning is absent, confirming explicit handling.",
          "required_fix": "None",
          "severity": "low"
        }
      ],
      "finding_counts": {
        "medium": 1,
        "low": 2
      },
      "required_fixes": [],
      "raw_parsed": {
        "confidence": "high",
        "findings": [
          {
            "category": "scope",
            "description": "Implementation's DeepSeek advisory status blocked gate pass; this independent Round 1 advisory resolves that requirement.",
            "required_fix": "Record this advisory and update gate pass to true.",
            "severity": "medium"
          },
          {
            "category": "schema",
            "description": "Candidate refs used legacy 'surface' field; output normalized to 'matched_surface' for schema compliance. No semantic change.",
            "required_fix": "None; normalization is acceptable per contract.",
            "severity": "low"
          },
          {
            "category": "fingerprint",
            "description": "Source fingerprint check passed across all gates with no inference needed; any implied fingerprint warning is absent, confirming explicit handling.",
            "required_fix": "None",
            "severity": "low"
          }
        ],
        "overall_verdict": "supports_now33_candidate_consumption_guard_no_writeback_closeout",
        "recommended_closeout_label": "now33_consumption_guard_no_writeback_ready",
        "required_fixes": [],
        "scope_audit": {
          "candidate_refs_remain_advisory_only": true,
          "canonical_uid_binding_or_writeback_blocked": true,
          "deepseek_advisory_only": true,
          "kg_raw_entity_store_overlay_row_mutation_blocked": true,
          "now33_gate_missing_fingerprint_warning_acceptable": true,
          "provider_manual_evidence_route_output_index_blocked": true,
          "registry_content_review_packet_only": true,
          "surface_to_matched_surface_normalization_acceptable": true
        }
      },
      "overall_verdict": "supports_now33_candidate_consumption_guard_no_writeback_closeout",
      "scope_audit": {
        "candidate_refs_remain_advisory_only": true,
        "canonical_uid_binding_or_writeback_blocked": true,
        "deepseek_advisory_only": true,
        "kg_raw_entity_store_overlay_row_mutation_blocked": true,
        "now33_gate_missing_fingerprint_warning_acceptable": true,
        "provider_manual_evidence_route_output_index_blocked": true,
        "registry_content_review_packet_only": true,
        "surface_to_matched_surface_normalization_acceptable": true
      },
      "recommended_closeout_label": "now33_consumption_guard_no_writeback_ready"
    },
    "record": {
      "version": "now33_reference_candidate_consumption_guard_deepseek_consultation.v1",
      "created_at": "2026-06-07T07:33:32.567245Z",
      "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
      "round_id": "round1",
      "call_status": "success",
      "parse_status": "pass",
      "provider_meta": {
        "provider": "deepseek_reviewer",
        "model": "deepseek-v4-pro",
        "base_url": "https://api.deepseek.com/chat/completions",
        "thinking_type": "enabled",
        "reasoning_effort": "max",
        "max_tokens": 32000,
        "timeout_seconds": 600,
        "temperature": 0.0,
        "skipped": false
      },
      "message_fingerprint": "d194990ebbf2207750eb752e98537725af26d7341ab7a2da537ef0d5397672ee",
      "advisory_only": true,
      "not_evidence_or_acceptance_or_route_authority": true
    }
  },
  "hard_boundaries": {
    "stage": "NOW_33_reference_candidate_consumption_guard_and_registry_content_review",
    "candidate_consumption_guard_only": true,
    "registry_content_review_packet_only": true,
    "candidate_entity_refs_are_not_canonical_bindings": true,
    "candidate_refs_writeback_allowed": false,
    "canonical_uid_binding_acceptance_allowed": false,
    "canonical_entity_uid_writeback_allowed": false,
    "canonical_kg_writeback_allowed": false,
    "raw_kg_writeback_allowed": false,
    "entity_store_writeback_allowed": false,
    "accepted_overlay_writeback_allowed": false,
    "operator_overlay_writeback_allowed": false,
    "row_mutation_allowed": false,
    "held_row_promotion_allowed": false,
    "asset_generation_or_acquisition_allowed": false,
    "asset_binding_allowed": false,
    "provider_specific_prompt_allowed": false,
    "adapter_payload_allowed": false,
    "provider_job_execution_allowed": false,
    "media_generation_allowed": false,
    "manual_provider_evidence_creation_allowed": false,
    "operator_evidence_creation_allowed": false,
    "feedback_intake_allowed": false,
    "repair_execution_allowed": false,
    "replay_execution_allowed": false,
    "outputs_index_mutation_allowed": false,
    "route_transition_allowed": false,
    "operator_production_acceptance_claimed": false,
    "deepseek_advisory_may_substitute_for_expert_advice": true,
    "deepseek_advisory_is_operator_production_acceptance": false,
    "deepseek_findings_have_direct_state_authority": false,
    "active_route_authority": "execution_state.json.next_entrypoint",
    "execution_state_next_entrypoint_unchanged": true
  },
  "advisory_question": "Round 2: critique Round 1 and the guard packet for overreach, hallucination, boundary violations, missing assumptions, source fingerprint handling, schema normalization, and operator constraints.",
  "input_fingerprint": "27ff7580605d48c29ab381b75455b09a429e3f27318778609239ebeba909fb0c"
}