{
  "schema_version": 1,
  "review_date": "2026-09-13",
  "review_kind": "independent-technical-guide-package",
  "verdict": "changes_requested",
  "input": {
    "file": "paragraph-cuts-guide-r01.zip",
    "sha256": "fbff95c4b91307917a1ebc4b8498e21ae97ba285695dadf8f6d63fd998083718",
    "bytes": 841399,
    "archive_files": 24,
    "uncompressed_bytes": 1647228,
    "public_tree_files_matching": 24,
    "selected_core_members": 23,
    "selected_core_bytes": 166470,
    "selected_core_uncompressed_bytes": 441343,
    "selected_core_sha256": "d19ac0ccfde3bbfefb786223685277a1085641150807af6556f306b67db2aab7",
    "outer_checksum_entries_verified": 23
  },
  "findings": [
    {
      "id": "PGC-01",
      "priority": "P2",
      "title": "Preparation accepts incomplete inventories and incorrect dwell metadata",
      "locations": ["paragraph-cuts/run.mjs:99", "paragraph-cuts/run.mjs:107", "paragraph-cuts/run.mjs:137", "paragraph-cuts/run.mjs:147"],
      "reproduced": true,
      "observed": {
        "accepted_output_png_counts": [0, 1, 5],
        "accepted_wrong_first_interval": [99, 100],
        "expected_first_interval": [0, 7],
        "reported_variants_each_time": 2,
        "exit_code_each_time": 0
      },
      "evidence_ids": ["prepare-empty-index", "prepare-one-state", "prepare-five-states", "prepare-wrong-metadata"],
      "false_positive_check": "Canonical six-state input passes; missing listed files and bad hashes reject. The defect is missing inventory/dwell validation and false preparation success, not an invalid supplied asset.",
      "recommended_fix": "Validate the exact six filenames, variants and intervals before preparation; report completed validated counts."
    },
    {
      "id": "PGC-02",
      "priority": "P2",
      "title": "Optional plates cause an unperformed preparation and cut check to report success",
      "locations": ["paragraph-cuts/verify.py:116", "paragraph-cuts/verify.py:138", "paragraph-cuts/verify.py:145", "paragraph-cuts/verify.py:153", "paragraph-cuts/README.md:115"],
      "reproduced": true,
      "observed": {
        "constant_movie_frames": 33,
        "actual_mask_cut_indices": [],
        "expected_cut_indices": [7, 16],
        "without_plates_exit_code": 0,
        "without_plates_reported_plate_pass": true,
        "with_plates_exit_code": 1
      },
      "evidence_ids": ["verify-no-cuts-without-plates", "verify-no-cuts-with-plates", "boundary-results"],
      "false_positive_check": "The exact README command supplies plates and works. Clock-only use may be legitimate, but it must not label skipped crop/cut checks as passing.",
      "recommended_fix": "Require plates for the advertised gate, or report crop and cut checks as not run without them."
    }
  ],
  "counts": {
    "reproduced_defects": 2,
    "completed_readme_blocks": 2,
    "distinct_supplied_python_tests_passed": 8,
    "distinct_supplied_node_tests_passed": 6,
    "typescript_diagnostics": 0,
    "independent_inventory_assertion_groups_passed": 71,
    "canonical_svg_states": 6,
    "fresh_retained_movies": 2,
    "retained_frames_per_movie": 33,
    "retained_target_frame_positions_checked": 66,
    "additional_custom_color_movies": 1,
    "additional_custom_color_movie_frames": 33,
    "negative_fixture_movies_encoded": 1,
    "negative_fixture_movie_copies": 1,
    "independent_invalid_contract_cases_rejected": 19,
    "preparation_input_probes": 6,
    "incorrect_preparation_acceptances": 4,
    "correct_preparation_rejections": 2,
    "negative_media_verifier_invocations": 3,
    "negative_media_incorrect_acceptances": 1,
    "negative_media_correct_rejections": 2,
    "provenance_boundary_cases": 10,
    "provenance_expected_acceptances": 3,
    "provenance_expected_rejections": 7,
    "manual_control_text_checks": 15,
    "resolve_cut_table_rows": 6,
    "retained_source_clock_rows_checked": 33,
    "native_resolve_runs": 0,
    "native_source_frames_reinspected": 0,
    "dependency_installations": 0,
    "dependency_copies": 0,
    "dependency_symlinks_created": 0,
    "arbitrary_symlinks_created": 0
  },
  "primary_output_hashes": {
    "original.mp4": "24bd8e80dfd0a1f094d916945a18f10d07d45c3b8fe1ff7ea59b8423fc3a71ef",
    "adaptation.mp4": "ece7eea3a0ec95e87153fe6b2a866e16bb7df74d6ed43111e81400f1d6eb44d2",
    "custom-color.mp4": "034305b73be5e9f8eec4e15564001fbe2b473b69f2a2dd9725c1532cfef823de",
    "no-cuts-control.mp4": "1cc572361033f31f40cebcad48e6ead59f99f1c2b20474cebabd25eed509381f"
  },
  "technical_status": {
    "canonical_readme_workflow": "passed",
    "relative_path_and_space_path_checks": "passed",
    "retained_render_byte_preservation": "passed",
    "all_six_prepared_png_hashes_match": true,
    "retained_rgb_frame_hash_matches": 66,
    "full_publication_archive_ancestry": "not_independently_authenticated",
    "native_resolve": "unverified",
    "source_aesthetic_review": "out_of_scope",
    "moving_source_perception": "not_assessed",
    "source_quality_approval": false
  },
  "source_flags_carried_without_reassessment": {
    "native_pngs_available": 29,
    "native_pngs_expected": 33,
    "missing_local_frames": [19, 20, 21, 27],
    "source_font_recovered": false,
    "PC-03": "open"
  },
  "budget": {
    "hard_limit_bytes": 80000000,
    "completed_readme_replay_measured_peak_bytes": 38305792,
    "peak_measurement_scope": "Owned worker plus newly appearing shared temporary entries, at least aggregate temporary growth; completed README phase only",
    "whole_review_transient_peak_continuously_measured": false
  },
  "single_biggest_remaining_gap": "No native Resolve execution/export/playback evidence. Manual and Chrome preparation checks cannot establish the two native timelines, color behavior or available encoder.",
  "publication_performed": false,
  "shared_repository_edits": false,
  "sealed_inputs_modified": false,
  "other_critic_findings_used": false
}
