{
  "status": "PASS",
  "verified": true,
  "run_id": "run-002",
  "revision": "v1",
  "authority_revision": "v2",
  "candidate_path": "work/story/run-002/candidate.txt",
  "candidate_sha256": "284e069c5bf729c2d26f109806fc4b5bea0ebab0514a2a288fd1e2ed152d2cc5",
  "candidate_bytes": 65495,
  "candidate_words": 10694,
  "candidate_validation_path": "log/run-002/candidate-validation.json",
  "candidate_validation_sha256": "1e9cd25f6503c6d7c2baddfccf7f292bfb50a7c33827771e3146b7fa27a9b2d0",
  "authority_validation_path": "work/story/run-002/authority-validation.json",
  "authority_validation_sha256": "15081c6b8f2a876991d6f4370e0448ff668df374f6fb749c15e5b8579731d302",
  "authority_hashes": {
    "story_brief": "4a211006bf564f359740fe188d01a3792bfd277de2145fce9bb9460617c70ffd",
    "characters": "577227ba53ee086ff07b3485a41ff57e7820dde86f9c04840a645b14a67db080",
    "ledger": "66c4a66d1d31ea90444b29609a9236701c3cdaed5e2b86613306b88d5e7e742a",
    "outline": "b36a31c9d7ea0271e6a7aaa39ff110c2a7674aaec85b3f0beef58d634b1119d0",
    "identity_registry": "da4101aad4992f3a394677f0f117af60a03b338bbaf3a436ba267e5f3f4a768d",
    "reveal_ledger": "75f08fc8b7d9bba6d23c628a5f7f517407ae38f9410dbd59b4173f3faa301d2d"
  },
  "source_parts": [
    {
      "part": 1,
      "status": "closed",
      "beats": [
        1,
        2,
        3,
        4,
        5,
        6
      ],
      "path": "work/story/run-002/part-01.txt",
      "source_temp_path": "work/story/run-002/reviewed-v2/part-01.txt",
      "source_temp_sha256": "494d7afcdcab714c13cd9733da5af8ad3568adc3073c056bd00f383eb0c26a91",
      "sha256": "494d7afcdcab714c13cd9733da5af8ad3568adc3073c056bd00f383eb0c26a91",
      "bytes": 14846,
      "words": 2441,
      "review_note": "producer full-read rebase v2; findings resolved in log/run-002/reviewed-v2-producer-rebase.json",
      "closed_at": "2026-07-21T15:20:30.954359+00:00"
    },
    {
      "part": 2,
      "status": "closed",
      "beats": [
        7,
        8,
        9,
        10,
        11,
        12
      ],
      "path": "work/story/run-002/part-02.txt",
      "source_temp_path": "work/story/run-002/reviewed-v2/part-02.txt",
      "source_temp_sha256": "5ee4743f24ceb652f549a8e5bed4acc17aa897ef12d97e95deeccec98fc97a7d",
      "sha256": "5ee4743f24ceb652f549a8e5bed4acc17aa897ef12d97e95deeccec98fc97a7d",
      "bytes": 15951,
      "words": 2580,
      "review_note": "producer full-read rebase v2; findings resolved in log/run-002/reviewed-v2-producer-rebase.json",
      "closed_at": "2026-07-21T15:20:31.609398+00:00"
    },
    {
      "part": 3,
      "status": "closed",
      "beats": [
        13,
        14,
        15,
        16,
        17,
        18
      ],
      "path": "work/story/run-002/part-03.txt",
      "source_temp_path": "work/story/run-002/reviewed-v2/part-03.txt",
      "source_temp_sha256": "b1453c6ff92fbb3a3337f5c219a4299a722f524896db35ec84b0df872135ba98",
      "sha256": "b1453c6ff92fbb3a3337f5c219a4299a722f524896db35ec84b0df872135ba98",
      "bytes": 14933,
      "words": 2431,
      "review_note": "producer full-read rebase v2; findings resolved in log/run-002/reviewed-v2-producer-rebase.json",
      "closed_at": "2026-07-21T15:20:32.184074+00:00"
    },
    {
      "part": 4,
      "status": "closed",
      "beats": [
        19,
        20,
        21,
        22,
        23,
        24
      ],
      "path": "work/story/run-002/part-04.txt",
      "source_temp_path": "work/story/run-002/reviewed-v2/part-04.txt",
      "source_temp_sha256": "4572eb562da9219766464647e5672e703693c3016832974fcfd6f5612c85c27c",
      "sha256": "4572eb562da9219766464647e5672e703693c3016832974fcfd6f5612c85c27c",
      "bytes": 19762,
      "words": 3242,
      "review_note": "producer full-read rebase v2; findings resolved in log/run-002/reviewed-v2-producer-rebase.json",
      "closed_at": "2026-07-21T15:20:32.766955+00:00"
    }
  ],
  "source_assembly": "exact source part bytes joined by one LF separator; each part already ends in exactly one LF",
  "reverse_reconstruction_verified": true,
  "manual_full_read_verified": true,
  "manual_full_read_scope": "four official source part byte streams whose deterministic aggregate is the exact candidate",
  "manual_full_read_receipt": "log/run-002/reviewed-v2-producer-rebase.json",
  "manual_full_read_receipt_sha256": "9f0a2322e2eb43912ab893b23fb5bbdfc934177eb4d3e4f4d16aeb2d4410941f",
  "teaser_catchup": {
    "teaser_word_count": 149,
    "teaser_state": "D-18 05:12; washing machine stopped; fund zero; landlord says eighteen days; Hoai Tuc asks where money went; Dao Quynh withholds guaranty detail",
    "catchup_reaches_same_state": "PASS",
    "cold_open_forward_jump_or_duplicate_scene": "none"
  },
  "story_checks": {
    "three_reversals_present": true,
    "real_losses_persist": true,
    "two_independent_private_climax_choices": true,
    "marriage_is_causal_engine": true,
    "no_one_quits_career_for_love": true,
    "ending_not_proposal_contract_re-sign_adjacent_seat": true,
    "run001_motifs_absent": true,
    "production_terms_absent": true,
    "narration_hygiene": "PASS"
  },
  "blockers": [],
  "highs": [],
  "producer_verdict": "PASS",
  "completed_at": "2026-07-21T15:21:37.732051+00:00"
}
