{
  "status": "native_free_point_phenotype_reproduced_optional_policy_released",
  "version": "2026-11-01-r4",
  "rom_sha256": "c32a79e34127757b52cd488c124c9247bf7b875088bac89956a6b7ca2b132cf6",
  "exact_original_incident_authenticated": false,
  "root_cause": "Inherited native free neutral-zone stoppage point; formation follows BF94/BF96 correctly.",
  "off_point": [
    -14,
    -12
  ],
  "off_centres": [
    [
      -14,
      -27
    ],
    [
      -14,
      3
    ]
  ],
  "on_point": [
    0,
    0
  ],
  "on_centres": [
    [
      0,
      -15
    ],
    [
      0,
      15
    ]
  ],
  "exact_unmodified_parent_controls": [
    "2026-10-30-r3",
    "2026-11-01-r3"
  ],
  "option": "Faceoff Dots Off/On; defaultOff",
  "earlier_centre_only_blind_spot": "Required BF94/BF96==0, excluding displaced point.",
  "current_evidence": "FACEOFF_DOTS_RESULT.json",
  "prior_investigation": {
    "status": "investigated_not_reproduced_no_ROM_change",
    "original_incident": "SanJose2\u2013Edmonton1,period1 1:17,SJSPP1:00,PP2/PK2; exact preceding state unavailable.",
    "read_only_original_PP_episodes": [
      {
        "version": "reported-era-r3",
        "rom_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
        "readable_frames": 2453,
        "relative_sprite_to_plane_offsets": [
          {
            "offset": [
              0,
              0
            ],
            "frames": 2453
          }
        ],
        "raw_RAM_camera_flags": 117,
        "raw_flags_explanation": "Native actors and rink share the same previous camera snapshot. Opposite signs of vertical scroll and world-to-screen sprite conversion cancel. These raw RAM-camera differences are not relative sprite-to-rink faults.",
        "line_counts": {
          "[6, 4]": 1358,
          "[4, 6]": 656,
          "[3, 5]": 220,
          "[5, 3]": 219
        },
        "overlapping_before_state_replays": true
      },
      {
        "version": "current-Nov1r2",
        "rom_sha256": "984854649bb9528f9dfc2200d43237cb2a3ab2cbe5cc847fde1ef10d375e660f",
        "readable_frames": 2453,
        "relative_sprite_to_plane_offsets": [
          {
            "offset": [
              0,
              0
            ],
            "frames": 2453
          }
        ],
        "raw_RAM_camera_flags": 117,
        "raw_flags_explanation": "Native actors and rink share the same previous camera snapshot. Opposite signs of vertical scroll and world-to-screen sprite conversion cancel. These raw RAM-camera differences are not relative sprite-to-rink faults.",
        "line_counts": {
          "[6, 4]": 1358,
          "[4, 6]": 656,
          "[3, 5]": 220,
          "[5, 3]": 219
        },
        "overlapping_before_state_replays": true
      }
    ],
    "targeted_native_PP2_PK2_centre_goal_controls": [
      {
        "version": "reported-era-r3",
        "source": "human-5",
        "actual_native_goal_frame": 221,
        "centre_frames": 40,
        "valid_relative_alignment_frames": 34,
        "all_valid_relative_offsets_zero": true,
        "actual_lines": [
          6,
          4
        ],
        "fixture": "Declared physical goal-line puck/velocity/loose owner, CPU controller configuration, and second-unit roster energy4096 with other roster energy0. Native F790 chooses the resulting PP/PK line; no direct line, actor position, score, clock or RNG writes. A targeted geometry fixture, not a naturally reproduced incident."
      },
      {
        "version": "reported-era-r3",
        "source": "cpu-7",
        "actual_native_goal_frame": 280,
        "centre_frames": 40,
        "valid_relative_alignment_frames": 34,
        "all_valid_relative_offsets_zero": true,
        "actual_lines": [
          6,
          4
        ],
        "fixture": "Declared physical goal-line puck/velocity/loose owner, CPU controller configuration, and second-unit roster energy4096 with other roster energy0. Native F790 chooses the resulting PP/PK line; no direct line, actor position, score, clock or RNG writes. A targeted geometry fixture, not a naturally reproduced incident."
      },
      {
        "version": "current-Nov1r2",
        "source": "human-5",
        "actual_native_goal_frame": 221,
        "centre_frames": 40,
        "valid_relative_alignment_frames": 34,
        "all_valid_relative_offsets_zero": true,
        "actual_lines": [
          6,
          4
        ],
        "fixture": "Declared physical goal-line puck/velocity/loose owner, CPU controller configuration, and second-unit roster energy4096 with other roster energy0. Native F790 chooses the resulting PP/PK line; no direct line, actor position, score, clock or RNG writes. A targeted geometry fixture, not a naturally reproduced incident."
      },
      {
        "version": "current-Nov1r2",
        "source": "cpu-7",
        "actual_native_goal_frame": 280,
        "centre_frames": 40,
        "valid_relative_alignment_frames": 34,
        "all_valid_relative_offsets_zero": true,
        "actual_lines": [
          6,
          4
        ],
        "fixture": "Declared physical goal-line puck/velocity/loose owner, CPU controller configuration, and second-unit roster energy4096 with other roster energy0. Native F790 chooses the resulting PP/PK line; no direct line, actor position, score, clock or RNG writes. A targeted geometry fixture, not a naturally reproduced incident."
      }
    ],
    "relative_screen_formula": "spriteOffsetX-planeCameraDeltaX; spriteOffsetY+planeCameraDeltaY",
    "limitations": [
      "Original episodes involve Washington/Colorado; the exact Edmonton/SanJose incident is not reproduced.",
      "Centre controls declare one physical goal-line puck, CPU controller configuration and roster energy that causes native F790 to select PP2/PK2. No direct line/actor-position/score/clock/RNG writes.",
      "Negative observations and overlapping restores are not a fix or independent natural matches.",
      "Real input comes from a movie recorded after the first reported screenshot; it is not a recording of the original incident.",
      "No later movie checkpoints or authenticated initial SRAM tie this replay to the original later native states.",
      "Preserved clone SRAM gives Edmonton/SanJose; blank SRAM gives Edmonton/Nashville and a different trajectory.",
      "Declared actual-team PP2/PK2 scenes match clubs, centre and1-2score, not original1:17timestamp or event history.",
      "Overlapping restores and repeated movie playback are not independent natural matches.",
      "Negative evidence is not a repair; reported formation displacement remains open."
    ],
    "next_step": "Capture a recurrence with exact ROM/core/options/remap, initial SRAM, native input movie and an incident savestate; compare formation world anchors with actual VDP plane and SAT before a cause-specific repair. The movie and declared controls did not reproduce the displacement.",
    "current_release_followup": {
      "version": "2026-11-01-r3",
      "rom_sha256": "0b4b104cf31e3b78d5f686349bbaad73ed54ba491c23c6ac661aca02eca396ca",
      "read_only_before_state_windows": 16,
      "native_frames": 4160,
      "readable_relative_alignment_frames": 2453,
      "relative_offsets": [
        0,
        0
      ],
      "raw_RAM_camera_flags": 117,
      "all_raw_flags_shared_coherent_camera_lag": true,
      "line_counts": {
        "[6, 4]": 1358,
        "[4, 6]": 656,
        "[3, 5]": 220,
        "[5, 3]": 219
      },
      "declared_native_PP2_PK2_centre_cases": 2,
      "centre_frames": 80,
      "valid_centre_relative_alignment_frames": 68,
      "no_relative_fault_reproduced": true
    },
    "actual_input_movie_followup": {
      "format": "BSV2, independent parser checked against official RetroArch bsvmovie.c/.h",
      "movie_sha256": "1d5c3f0a468e9d7b3fa96a8bc32d76242ae0612ef20e38d98c3d67ff750bcf10",
      "recorded_ROM_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
      "movie_frames": 20679,
      "core_sha256": "07c104765dcfe1f588d637c0fda1ab3987f86b94835d43b6506b0236948310b1",
      "explicit_current_core_options_sha256": "f866e14fbaa0b52e4852764e856b307dc106492f33e17d1d60663de02d601c5a",
      "preserved_SRAM_clone_sha256": "589544c50ad64b578907edb96c786e8062d638349b6976672ddfcdd9c4e91533",
      "devices": [
        1281,
        1281
      ],
      "actual_teams": [
        10,
        22
      ],
      "counts": {
        "native_frames": 20679,
        "readable_faceoff_frames": 1643,
        "valid_relative_frames": 1641,
        "nonzero_relative_frames": 0
      },
      "episodes": [
        {
          "episode": 1,
          "first_frame": 1658,
          "last_frame": 1877,
          "readable_frames": 220,
          "point": [
            0,
            0
          ],
          "lines": [
            0,
            0
          ],
          "clock": 300,
          "score": [
            0,
            0
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 2,
          "first_frame": 3293,
          "last_frame": 3523,
          "readable_frames": 231,
          "point": [
            -70,
            -206
          ],
          "lines": [
            2,
            2
          ],
          "clock": 266,
          "score": [
            0,
            0
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 3,
          "first_frame": 4629,
          "last_frame": 4833,
          "readable_frames": 205,
          "point": [
            0,
            0
          ],
          "lines": [
            2,
            2
          ],
          "clock": 236,
          "score": [
            0,
            1
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 4,
          "first_frame": 5840,
          "last_frame": 6040,
          "readable_frames": 201,
          "point": [
            -70,
            -206
          ],
          "lines": [
            2,
            2
          ],
          "clock": 202,
          "score": [
            0,
            1
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 5,
          "first_frame": 8139,
          "last_frame": 8410,
          "readable_frames": 272,
          "point": [
            70,
            -206
          ],
          "lines": [
            2,
            2
          ],
          "clock": 123,
          "score": [
            0,
            1
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 6,
          "first_frame": 9846,
          "last_frame": 10086,
          "readable_frames": 241,
          "point": [
            -70,
            -65
          ],
          "lines": [
            3,
            6
          ],
          "clock": 82,
          "score": [
            0,
            1
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        },
        {
          "episode": 7,
          "first_frame": 10528,
          "last_frame": 10800,
          "readable_frames": 273,
          "point": [
            -70,
            -206
          ],
          "lines": [
            4,
            5
          ],
          "clock": 72,
          "score": [
            0,
            1
          ],
          "settled_centre_offsets": [
            [
              0,
              0
            ],
            [
              0,
              0
            ]
          ]
        }
      ],
      "repeat": {
        "full_RAM_every_frame_exact": true,
        "full_video_every_frame_exact": true,
        "full_RAM_frame_stream_sha256": "a22bff29ac18562ef386f1ebfedcd57c9bd6214429588044dcd1d728264946b9",
        "full_video_frame_stream_sha256": "866aea5139819630a98877115dc74666894991681e087694a882a8678a721677",
        "frames_each": 20679
      },
      "original_recorded_later_states_authenticated": false,
      "six_button_default_control": {
        "frames": 20679,
        "readable_faceoff_frames": 2025,
        "valid_relative_frames": 2025,
        "nonzero_relative_frames": 0,
        "episodes": 8,
        "repeated_observations_and_saved_images_exact": true,
        "raw_final_serialization_difference_bytes": 162,
        "raw_full_serialization_exact": false
      },
      "blank_SRAM_control": {
        "actual_teams": [
          10,
          18
        ],
        "counts": {
          "native_frames": 20679,
          "readable_faceoff_frames": 1407,
          "valid_relative_frames": 1389,
          "nonzero_relative_frames": 0
        },
        "original_incident_control": false
      },
      "format_sources": [
        {
          "url": "https://raw.githubusercontent.com/libretro/RetroArch/master/input/bsv/bsvmovie.c",
          "sha256": "848ea6a23a192ec7243834e604b405bbe7af57abe097a6be06f4bedfc248830c"
        },
        {
          "url": "https://raw.githubusercontent.com/libretro/RetroArch/master/input/bsv/bsvmovie.h",
          "sha256": "b2de077f529ec24ce365279c51202933950f072805d8bed148aa9df662c7bdb4"
        },
        {
          "url": "https://raw.githubusercontent.com/libretro/RetroArch/master/input/input_driver.h",
          "sha256": "d8fa970f45f46b26a3d23327cad32a8e909dbf36ae147f79241b4cb2a5ab699e"
        }
      ],
      "initial_SRAM_restore_control": {
        "private_isolated_core_only": true,
        "no_installed_or_retained_save_written": true,
        "initial_checkpoint_sha256": "01f08c26cde23e4de035f053268a8cce3d4dadb781ba7c21709b1f855bcbac92",
        "SRAM_bytes_compared": 65536,
        "declared_sentinel_sha256": "df95ef99d1010c229e1eaae7831b2b4531eb83066698c4454dd88f1b0c714a30",
        "all_SRAM_bytes_untouched_by_unserialize": true,
        "qualification": "This initial native checkpoint does not restore any SRAM byte in the matching installed core. A separate authenticated initial save is required to bind original-session playback. No native gameplay or ROM change."
      }
    },
    "declared_actual_team_PP2_PK2_followup": [
      {
        "generation": "v2",
        "version": "reported-era-r3",
        "base_ROM_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
        "instrumented_ROM_sha256": "09ce3ba68f664cadf7713598527ca96dbc3396a9961a297003bef15e1562a251",
        "actual_teams": [
          10,
          22
        ],
        "actual_PP2_PK2_centre_frames": 260,
        "valid_multi_actor_relative_frames": 254,
        "all_valid_offsets_zero": true,
        "settled_centre_positions": [
          [
            0,
            -15
          ],
          [
            0,
            15
          ]
        ],
        "score": [
          1,
          2
        ],
        "clock": 133,
        "device": 513,
        "scope": "Declared goal-line pucks/velocity/loose owner, CPU controls and second-unit roster energy; a private frame-call helper requests actual native minor11F2C. No direct actor/line/score/clock/RNG writes. Current image starts from an actual-team legacy state, not a fresh current game. Helper code/timing is explicitly different from released ROM."
      },
      {
        "generation": "v2",
        "version": "current-Nov1r3",
        "base_ROM_sha256": "0b4b104cf31e3b78d5f686349bbaad73ed54ba491c23c6ac661aca02eca396ca",
        "instrumented_ROM_sha256": "8937d0c69eacc706b5f5de6f903464a2656e58e65497a5ebdad3755294921cef",
        "actual_teams": [
          10,
          22
        ],
        "actual_PP2_PK2_centre_frames": 260,
        "valid_multi_actor_relative_frames": 254,
        "all_valid_offsets_zero": true,
        "settled_centre_positions": [
          [
            0,
            -15
          ],
          [
            0,
            15
          ]
        ],
        "score": [
          1,
          2
        ],
        "clock": 116,
        "device": 513,
        "scope": "Declared goal-line pucks/velocity/loose owner, CPU controls and second-unit roster energy; a private frame-call helper requests actual native minor11F2C. No direct actor/line/score/clock/RNG writes. Current image starts from an actual-team legacy state, not a fresh current game. Helper code/timing is explicitly different from released ROM."
      },
      {
        "generation": "v4",
        "version": "reported-era-r3",
        "base_ROM_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
        "instrumented_ROM_sha256": "09ce3ba68f664cadf7713598527ca96dbc3396a9961a297003bef15e1562a251",
        "actual_teams": [
          10,
          22
        ],
        "actual_PP2_PK2_centre_frames": 246,
        "valid_multi_actor_relative_frames": 242,
        "all_valid_offsets_zero": true,
        "settled_centre_positions": [
          [
            0,
            -15
          ],
          [
            0,
            15
          ]
        ],
        "score": [
          1,
          2
        ],
        "clock": 137,
        "device": 1281,
        "scope": "Declared goal-line pucks/velocity/loose owner, CPU controls and second-unit roster energy; a private frame-call helper requests actual native minor11F2C. No direct actor/line/score/clock/RNG writes. Current image starts from an actual-team legacy state, not a fresh current game. Helper code/timing is explicitly different from released ROM."
      },
      {
        "generation": "v4",
        "version": "current-Nov1r3",
        "base_ROM_sha256": "0b4b104cf31e3b78d5f686349bbaad73ed54ba491c23c6ac661aca02eca396ca",
        "instrumented_ROM_sha256": "8937d0c69eacc706b5f5de6f903464a2656e58e65497a5ebdad3755294921cef",
        "actual_teams": [
          10,
          22
        ],
        "actual_PP2_PK2_centre_frames": 190,
        "valid_multi_actor_relative_frames": 184,
        "all_valid_offsets_zero": true,
        "settled_centre_positions": [
          [
            0,
            -15
          ],
          [
            0,
            15
          ]
        ],
        "score": [
          1,
          2
        ],
        "clock": 137,
        "device": 1281,
        "scope": "Declared goal-line pucks/velocity/loose owner, CPU controls and second-unit roster energy; a private frame-call helper requests actual native minor11F2C. No direct actor/line/score/clock/RNG writes. Current image starts from an actual-team legacy state, not a fresh current game. Helper code/timing is explicitly different from released ROM."
      }
    ],
    "exact_unmodified_ROM_pose_followup": {
      "cases": [
        {
          "generation": "v2",
          "version": "reported-era-r3",
          "exact_ROM_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
          "device": 513,
          "counts": {
            "native_frames": 300,
            "readable_PP2_PK2_centre_frames": 294,
            "relative_flags": 0
          },
          "cases": [
            {
              "source_sha256": "f1d64ad58efebcf28984abae1c7323eb8297821af7a000f2a52d4c6a577d66b4",
              "frames": 94,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "383fc2e6337415168e5b639fa7c1f2b0124388c9c7451ef6d6125dd0478c103a",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "d419716686443975d9c21252ad16aef279a2ba3c55fd5093e126005d56579f50",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            }
          ],
          "scope": "Replay declared actual-team fixture states on exact unmodified releases.\nNo helper ROM, no game RAM edits; initial state remains a declared legacy fixture.\n"
        },
        {
          "generation": "v2",
          "version": "current-Nov1r3",
          "exact_ROM_sha256": "0b4b104cf31e3b78d5f686349bbaad73ed54ba491c23c6ac661aca02eca396ca",
          "device": 513,
          "counts": {
            "native_frames": 300,
            "readable_PP2_PK2_centre_frames": 294,
            "relative_flags": 0
          },
          "cases": [
            {
              "source_sha256": "25a146849ef8cbea13860ce21117fe59e8dbe481f6d2ce8d1753bf0d63bf7b08",
              "frames": 94,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "fbf1c52186b6a613e212bc11503fcb06f629ea30f17cbcda237eea2def4e9c6d",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "68d7604f3c178b49c84ef0d6f2a9fceecc70b0c65eb0731af3042d78cf30d05b",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            }
          ],
          "scope": "Replay declared actual-team fixture states on exact unmodified releases.\nNo helper ROM, no game RAM edits; initial state remains a declared legacy fixture.\n"
        },
        {
          "generation": "v4",
          "version": "reported-era-r3",
          "exact_ROM_sha256": "3453b3fba1a4e3b76c8f859311a499f3f2bf8d9a493280f43ad41eca8b784057",
          "device": 1281,
          "counts": {
            "native_frames": 300,
            "readable_PP2_PK2_centre_frames": 294,
            "relative_flags": 0
          },
          "cases": [
            {
              "source_sha256": "2c4686c097d04cd1907745a28fbe22bc14e73ab0313aabaa8fd7fcb7234f05c5",
              "frames": 94,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "ab27f3dcc761383f13dfeb85064969171ea02bc9a97967311c40bf69fc04bb52",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "f197ddeafd5e356294d6832aa78049293cad2f966d3d6002cc3c04650d33bc00",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            }
          ],
          "scope": "Replay declared actual-team fixture states on exact unmodified releases.\nNo helper ROM, no game RAM edits; initial state remains a declared legacy fixture.\n"
        },
        {
          "generation": "v4",
          "version": "current-Nov1r3",
          "exact_ROM_sha256": "0b4b104cf31e3b78d5f686349bbaad73ed54ba491c23c6ac661aca02eca396ca",
          "device": 1281,
          "counts": {
            "native_frames": 300,
            "readable_PP2_PK2_centre_frames": 294,
            "relative_flags": 0
          },
          "cases": [
            {
              "source_sha256": "3f8f7d4ce29571de6c41d5102023f528fc0bbc21f5602e624fd51f987cd67e4e",
              "frames": 94,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "68d9ed70b156d145bdea0e1b121e24d3437da8631e7853e04e23629579693f4e",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            },
            {
              "source_sha256": "20b1841ad45dff7cd5812f2e34a31a0d55c3a59c14d6c0c0c17848fac93aa9ca",
              "frames": 100,
              "all_valid_relative_offsets_zero": true
            }
          ],
          "scope": "Replay declared actual-team fixture states on exact unmodified releases.\nNo helper ROM, no game RAM edits; initial state remains a declared legacy fixture.\n"
        }
      ]
    },
    "retained_failed_diagnostics": [
      "First requested-team boot attempts fail their actual-team assertions.",
      "First current-version movie-seeded attempt fails actual-team assertion; v2/v4 use a declared actual-team legacy state.",
      "v3 timing attempt does not reproduce original time/score; old result is1-3, not incident1-2."
    ]
  }
}
