{
  "version": "reserve_downstream_catchup.v1",
  "generated_at": "2026-04-09T04:53:30.244838Z",
  "run_dir": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1",
  "output_dir": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1/reserve_downstream_catchup",
  "summary": {
    "run_dir": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1",
    "generated_at": "2026-04-09T04:53:30.244812Z",
    "action_count": 1,
    "replay_promoted": false,
    "rebuild_performed": false,
    "artifact_gap_closed": true,
    "product_quality_status_before": "warn",
    "product_quality_status_after": "warn",
    "product_quality_fail_count_before": 0,
    "product_quality_fail_count_after": 0,
    "product_quality_warn_count_before": 2,
    "product_quality_warn_count_after": 2,
    "quality_gate_status_before": "pass",
    "quality_gate_status_after": "pass"
  },
  "before": {
    "artifact_presence": {
      "03d_screenplay.json": true,
      "03e_dramart_package.json": true,
      "04_scripts.json": true,
      "04b_style_bible.json": true,
      "05_storyboard.json": true,
      "05b_storyboard_guard.json": true,
      "05c_dramart_storyboard.json": true,
      "05d_delivery_repair_contract.json": true
    },
    "quality_gate": {
      "status": "pass",
      "broad_status": "warn",
      "top_issues": [
        {
          "id": "text_quality.abstract_prose_risk_count",
          "stage": "screenplay",
          "status": "warn",
          "severity": "warn",
          "failure_type": "legacy_pressure_only",
          "track_view": "baseline",
          "message": "abstract prose risk count exceeds threshold",
          "actual": 1,
          "expected": {
            "max_abstract_prose_risk_count": 0
          }
        }
      ]
    },
    "product_quality": {
      "status": "warn",
      "fail_count": 0,
      "warn_count": 2,
      "top_issues": [
        {
          "id": "screenplay.purity_warn_block_count",
          "stage": "screenplay",
          "status": "warn",
          "message": "screenplay purity warn block 数必须保持在冻结阈值内",
          "actual": 3,
          "expected": 1
        },
        {
          "id": "writing_strategy.abstract_prose_risk_count",
          "stage": "writing_strategy",
          "status": "warn",
          "message": "正文不能退化成抽象解释或总结式 prose，必须回到可拍信息",
          "actual": 1,
          "expected": 0
        }
      ]
    }
  },
  "actions": [
    {
      "kind": "delivery_repair_replay",
      "replay_report_path": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1/repair_replay/delivery_repair_replay_report.json",
      "replay_summary": {
        "run_dir": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1",
        "output_dir": "/wwwb/aitools/writer/outputs/daozu_conflict_downstream_trim8_20260329_v1/repair_replay",
        "generated_at": "2026-04-09T04:53:30.096557Z",
        "replayed_stage_count": 0,
        "replayed_stages": [],
        "requested_owner_stages": [
          "screenplay",
          "storyboard_prompt",
          "storyboard_ready"
        ],
        "requested_priority_tiers": [],
        "requested_action_ids": [],
        "requested_shot_ids": [],
        "available_owner_stages": [],
        "repair_action_count": 0,
        "screenplay_block_count": 17,
        "storyboard_count": 58,
        "storyboard_ready_status": "pass",
        "prompt_guard_revalidated": true,
        "prompt_guard_issue_count": 0,
        "prompt_guard_delivery_status": "pass",
        "delivery_fix_queue_size": 0
      },
      "improved": false,
      "promoted": false,
      "writes": []
    }
  ],
  "after": {
    "artifact_presence": {
      "03d_screenplay.json": true,
      "03e_dramart_package.json": true,
      "04_scripts.json": true,
      "04b_style_bible.json": true,
      "05_storyboard.json": true,
      "05b_storyboard_guard.json": true,
      "05c_dramart_storyboard.json": true,
      "05d_delivery_repair_contract.json": true
    },
    "quality_gate": {
      "status": "pass",
      "broad_status": "warn",
      "top_issues": [
        {
          "id": "text_quality.abstract_prose_risk_count",
          "stage": "screenplay",
          "status": "warn",
          "severity": "warn",
          "failure_type": "legacy_pressure_only",
          "track_view": "baseline",
          "message": "abstract prose risk count exceeds threshold",
          "actual": 1,
          "expected": {
            "max_abstract_prose_risk_count": 0
          }
        }
      ]
    },
    "product_quality": {
      "status": "warn",
      "fail_count": 0,
      "warn_count": 2,
      "top_issues": [
        {
          "id": "screenplay.purity_warn_block_count",
          "stage": "screenplay",
          "status": "warn",
          "message": "screenplay purity warn block 数必须保持在冻结阈值内",
          "actual": 3,
          "expected": 1
        },
        {
          "id": "writing_strategy.abstract_prose_risk_count",
          "stage": "writing_strategy",
          "status": "warn",
          "message": "正文不能退化成抽象解释或总结式 prose，必须回到可拍信息",
          "actual": 1,
          "expected": 0
        }
      ]
    }
  }
}