{
  "schema_version": 1,
  "public_repository": "https://github.com/Robiswell/Euler_Rover_2026",
  "started_at_utc": "2026-09-14T23:04:19.814993+00:00",
  "finished_at_utc": "2026-09-14T23:04:20.535418+00:00",
  "runtime": {
    "implementation": "CPython",
    "python_version": "3.14.7"
  },
  "script": {
    "name": "rover-voting-evidence.py",
    "sha256": "a0ea3d5077d83bf80d55da4efb0bd59e34f2f09537d53d98563d58f7191932ef"
  },
  "scope": {
    "retrospective": true,
    "function_only": true,
    "field_test": false,
    "description": "Replay the fix commit's 15 voting assertion functions against extracted production distance constants and classifier functions from three pinned revisions.",
    "not_established": [
      "raw telemetry authenticity or physical multipath cause",
      "full test-suite or CI success",
      "serial parsing, smoothing, navigation integration, or device behavior",
      "deployment, field retest, or measured operating improvement",
      "stakeholder acceptance or decision rights",
      "exclusive authorship or Claude Code/MCP use"
    ]
  },
  "method": {
    "retrieval": "Read committed blobs with git cat-file if --repo is supplied; otherwise or when objects are missing, GET exact pinned public raw files. Never fetch into the repository or read worktree source files. Public commit attribution always uses unauthenticated GitHub REST.",
    "execution": "Parse source with ast; select only five distance constants, classify_distance, the revision's sector classifier, make_frame, and 15 test_voting functions. Check a narrow AST allowlist, compile with assertions enabled, execute in fresh globals per test with only any/max/min/sorted/AssertionError builtins, and instrument classifier calls. No imports or main blocks from rover code execute.",
    "hashes": "raw_sha256 hashes exact downloaded/git blob bytes. computed_git_blob_sha1 hashes the Git blob header plus those bytes. Source-segment hashes use UTF-8 ast.get_source_segment. AST hashes use ast.dump without location attributes; these may vary with Python versions. Input hashes use canonical sorted ASCII JSON with integral floats normalized to integers. Hashes document observed content; they do not authenticate identity or approvals.",
    "fixture_scope": "15 assertion functions are not 15 independent new scenarios. Full normalized frames are grouped across tests; repeated runs across revisions are paired comparisons, not additional observations. Distinct synthetic inputs are not independent field samples.",
    "expectations": "Parent failures are expected when applying the fix's new assertions retrospectively; they are not a claim that the historical parent suite failed. A successful script exit means the explicit comparison expectations matched, not that every test on every revision passed.",
    "scope_limits": "Direct function extraction bypasses enclosing main blocks, imports, hardware, and upstream processing. The 119-test historical pass claim is not verified here. The reviewed head is pinned, not resolved from today's moving main branch."
  },
  "sources": [
    {
      "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
      "path": "test_nav_logic.py",
      "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py",
      "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py",
      "retrieval": "public_raw",
      "byte_count": 68160,
      "raw_sha256": "e289ca5e6cbce36acdc6a4f5400254b29fa5dfdb841dbd6f9691bfa106c8b0db",
      "computed_git_blob_sha1": "3f4cbf96f97706d5531f3a48050ad20b1b2f8bcd"
    },
    {
      "revision": "ffdb479d11a01b13ed928eb431a24c10827289f1",
      "path": "final_full_gait_test.py",
      "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py",
      "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py",
      "retrieval": "public_raw",
      "byte_count": 194798,
      "raw_sha256": "d7d958264b97f6ccbd76bf0f5d381f5d6e062894cffd0cda105535248f8c821f",
      "computed_git_blob_sha1": "067c27f0a30e6e7ec27b102c64381ab668034b15"
    },
    {
      "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
      "path": "final_full_gait_test.py",
      "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py",
      "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py",
      "retrieval": "public_raw",
      "byte_count": 196247,
      "raw_sha256": "06df7fb64eb57eadd64afb912ea410dbf5ca700e52765f5355e551ec5405aae4",
      "computed_git_blob_sha1": "32fc64876535249e72b8f66a299583b927c8b16e"
    },
    {
      "revision": "bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95",
      "path": "final_full_gait_test.py",
      "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py",
      "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py",
      "retrieval": "public_raw",
      "byte_count": 253727,
      "raw_sha256": "9b3343548b3f9f7ca778642a6c4706614a4eff508ceb6fb9abc440ad103231b4",
      "computed_git_blob_sha1": "50746e1c39dbc9fa1dfbb00c3d9875b2386be623"
    }
  ],
  "fix_attribution": {
    "source_url": "https://api.github.com/repos/Robiswell/Euler_Rover_2026/commits/484a18b64e121635a9161a07736a2883fb9d478c",
    "response_bytes_sha256": "8cf5db0e8506e495e1ee3810ea828a969822bd7814aee332bcdbf9a5645e80d8",
    "commit_url": "https://github.com/Robiswell/Euler_Rover_2026/commit/484a18b64e121635a9161a07736a2883fb9d478c",
    "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
    "parent_revisions": [
      "ffdb479d11a01b13ed928eb431a24c10827289f1"
    ],
    "author": {
      "name": "Robert Ganey",
      "date": "2026-03-19T23:44:25Z"
    },
    "committer": {
      "name": "Robert Ganey",
      "date": "2026-03-19T23:44:25Z"
    },
    "github_author_login": "Robiswell",
    "github_committer_login": "Robiswell",
    "subject": "feat: sector voting + LEG_EFFECTIVE_RADIUS fix",
    "signature_verification": {
      "verified": false,
      "reason": "unsigned"
    },
    "limits": "Public attribution metadata is not proof of exclusive authorship, tool use, deployment authority, or human acceptance. Emails and the full API response are not stored."
  },
  "fixtures": {
    "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
    "source": {
      "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
      "path": "test_nav_logic.py",
      "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py",
      "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py",
      "retrieval": "public_raw",
      "byte_count": 68160,
      "raw_sha256": "e289ca5e6cbce36acdc6a4f5400254b29fa5dfdb841dbd6f9691bfa106c8b0db",
      "computed_git_blob_sha1": "3f4cbf96f97706d5531f3a48050ad20b1b2f8bcd"
    },
    "selected_nodes": [
      {
        "name": "make_frame",
        "start_line": 594,
        "end_line": 615,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L594-L615",
        "source_segment_utf8_sha256": "0b762734dcbe7d2c6bef31227c1e1148b76d9d919d4d79b137e5a5a3828b5054",
        "ast_sha256": "ff8fc28f075127dc8076a960fd13c88c92a9b0824e763ec4cce47faced4f6c5f"
      },
      {
        "name": "test_voting_front_2of3_danger_stays_danger",
        "start_line": 804,
        "end_line": 807,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L804-L807",
        "source_segment_utf8_sha256": "02e3a6fe08c2fbec5662e4051054546e13b1a1cd90e22f38445d03195b60f322",
        "ast_sha256": "1485ec2d72cef793bef7caae746d66fc98f3bc5b65dd32560e1127331cfcc11e"
      },
      {
        "name": "test_voting_front_1of3_danger_rejected",
        "start_line": 810,
        "end_line": 813,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L810-L813",
        "source_segment_utf8_sha256": "104cc7eb48c6c5ec5ac9891f92dcc2e73e4ad6bdb21c3e11f24172943961ea0f",
        "ast_sha256": "c9cc35c3287bd15a80deb901bc1924715d9b2350a987fd2de2be6f16e47de858"
      },
      {
        "name": "test_voting_front_multipath_bounce_rejected",
        "start_line": 816,
        "end_line": 819,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L816-L819",
        "source_segment_utf8_sha256": "9409eefec445329e3ecdc0bc1bc5ef7aa2b93e8415a5632c174ad98c9a5fe2d0",
        "ast_sha256": "3b73be354c90646a513e88b96406e6d99aba7e2b58917066e7aff2d0cbb223dd"
      },
      {
        "name": "test_voting_front_2of3_near_stays_near",
        "start_line": 822,
        "end_line": 825,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L822-L825",
        "source_segment_utf8_sha256": "0844239bbf80dd466ee6b461e2ce14bf01a198c7c07f698c8e90b6db4f3fc846",
        "ast_sha256": "e365a2e07dadd9c9cf2fd7c14b9c091a5169fa5e01bd7e5ef8c379c2b26629e1"
      },
      {
        "name": "test_voting_front_all_3_agree_danger",
        "start_line": 828,
        "end_line": 831,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L828-L831",
        "source_segment_utf8_sha256": "8467767c961f25cb39c0e0cdf9f57dcdda26ae3c1c1ac2181bcc8993614e08cd",
        "ast_sha256": "14bbb3d4b969c7c0fd28ddaf6ebcfd461173cc0b949da5771eceef173f52a374"
      },
      {
        "name": "test_voting_blind_zone_not_outvotable",
        "start_line": 834,
        "end_line": 837,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L834-L837",
        "source_segment_utf8_sha256": "af7bbf10a9bac4fef97722d62df44a40a260d5663440a5e7fa8df12d47a9a6e8",
        "ast_sha256": "a51e35c98469cd17ec8815568e1075abdf2c9ec95b3c0bee61810c6ddf3afb98"
      },
      {
        "name": "test_voting_blind_zone_in_left_sector",
        "start_line": 840,
        "end_line": 843,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L840-L843",
        "source_segment_utf8_sha256": "5a27f1d49c671df97828dffba425340e281c82ee5598e37847dd9398d0b8c164",
        "ast_sha256": "8fc98fdba5020c8cf63feb6e3ece6a2813ebe9a441bd9dd7f31c1a5ad975777e"
      },
      {
        "name": "test_voting_blind_zone_in_right_sector",
        "start_line": 846,
        "end_line": 849,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L846-L849",
        "source_segment_utf8_sha256": "46eef46e1a2c26d226dc0969e18c1be983e1e496d95ce9d2f2a91be9351ffa0b",
        "ast_sha256": "653db85af3f9bfcf7afcfd92cbb9acbfaba8ec9bc41c45bd0922021bd48f4188"
      },
      {
        "name": "test_voting_left_2sensor_agree_danger",
        "start_line": 852,
        "end_line": 855,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L852-L855",
        "source_segment_utf8_sha256": "32202601736f15dac21861da639dbf8ab92cd464366ecffbd54d06bb21bde1a0",
        "ast_sha256": "78dba086aa705c24aabfec23171337f39238d46533c2a83c98fdddc9adfc2697"
      },
      {
        "name": "test_voting_left_2sensor_disagree_downgrade",
        "start_line": 858,
        "end_line": 861,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L858-L861",
        "source_segment_utf8_sha256": "bb5eb2244edd28ac90d69bf4917bc5fcd127e61bbd62dac311716962b1f181a5",
        "ast_sha256": "4038a6d5b4d77b8f90f1d6c9c6ef95a1d3db336d599fd070900b45cc91f76e2d"
      },
      {
        "name": "test_voting_right_2sensor_disagree_downgrade",
        "start_line": 864,
        "end_line": 867,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L864-L867",
        "source_segment_utf8_sha256": "663d0e4ae931e95db20f050725a423c91ab0d9c992cbc54788b17231e2f56afa",
        "ast_sha256": "cec43dc439982ef8c58f34fa72b82a58d1cc2ba0903f432ec3780ed3d9b0c669"
      },
      {
        "name": "test_voting_left_small_disagreement_no_downgrade",
        "start_line": 870,
        "end_line": 873,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L870-L873",
        "source_segment_utf8_sha256": "5bdd39fd0df57cc12b3d86daf089d04651ad87867403f5219977e9fe8cc98c03",
        "ast_sha256": "0aa0b68ffae6bd510f15d44547c2240e8827a1794e58f80a507874d8f171192c"
      },
      {
        "name": "test_voting_fault_sensor_treated_as_caution_not_danger",
        "start_line": 876,
        "end_line": 880,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L876-L880",
        "source_segment_utf8_sha256": "bb29899686730a2d348b721f93201ec2a8b071f40e5c09a1c69aa9d529567489",
        "ast_sha256": "42d34b068e8ba0f4be831fd2dafe5d56ee51a34a9f38c3983bd840170b61233e"
      },
      {
        "name": "test_voting_fault_not_blind_zone",
        "start_line": 883,
        "end_line": 886,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L883-L886",
        "source_segment_utf8_sha256": "fe86819d6e4550888b70cd7c7c1a4c89a354ec07ca317ac9dc6e04fd9b0a6a1a",
        "ast_sha256": "37aa9c819975c958c2606dd706e23f5d91fb45e3675f1581daeb302e0b981943"
      },
      {
        "name": "test_voting_left_near_vs_clear_downgrade",
        "start_line": 889,
        "end_line": 892,
        "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/test_nav_logic.py#L889-L892",
        "source_segment_utf8_sha256": "22fb2992fe0e9fb68fd0084cf35ff4e874b99e79c4cc297d27b01a1a28d5c6d6",
        "ast_sha256": "d0938cd2413c6c9d6e2780416f6e52ba43e1817f966b670a6a2118778b96590e"
      }
    ],
    "selected_ast_sha256": "41e4fce8384ea3ccf6bad0e816e1a77378638c4deccbf3eb22178cb7f6d96fd8",
    "test_names": [
      "test_voting_front_2of3_danger_stays_danger",
      "test_voting_front_1of3_danger_rejected",
      "test_voting_front_multipath_bounce_rejected",
      "test_voting_front_2of3_near_stays_near",
      "test_voting_front_all_3_agree_danger",
      "test_voting_blind_zone_not_outvotable",
      "test_voting_blind_zone_in_left_sector",
      "test_voting_blind_zone_in_right_sector",
      "test_voting_left_2sensor_agree_danger",
      "test_voting_left_2sensor_disagree_downgrade",
      "test_voting_right_2sensor_disagree_downgrade",
      "test_voting_left_small_disagreement_no_downgrade",
      "test_voting_fault_sensor_treated_as_caution_not_danger",
      "test_voting_fault_not_blind_zone",
      "test_voting_left_near_vs_clear_downgrade"
    ],
    "assertion_function_count": 15,
    "distinct_normalized_input_count": 13,
    "inputs": [
      {
        "normalized_input_sha256": "22f093a369fa52261ac47f80380ffbfaf5c0f5a67bfc813cbdfc99c3f28eba2a",
        "frame": {
          "FDL": 10,
          "FCF": 10,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_front_2of3_danger_stays_danger"
        ]
      },
      {
        "normalized_input_sha256": "50ecf35517e9cf4924e49165dcaac8a3d6883fd2ce132513a4d76bc634faea93",
        "frame": {
          "FDL": 10,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_front_1of3_danger_rejected"
        ]
      },
      {
        "normalized_input_sha256": "411fbea25507f8164154df6da8a24f3a3b90bd77335331a1d8c710a8212583ba",
        "frame": {
          "FDL": 100,
          "FCF": 5.83,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_front_multipath_bounce_rejected"
        ]
      },
      {
        "normalized_input_sha256": "f9e3384ef830a5d10b51faf4be595e187d0d462e5aeacd3f2225582952eebdc6",
        "frame": {
          "FDL": 25,
          "FCF": 25,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_front_2of3_near_stays_near"
        ]
      },
      {
        "normalized_input_sha256": "8fccd82aad084dc1b309ff73939379e573b1e268690194299fd001852fd68b4b",
        "frame": {
          "FDL": 10,
          "FCF": 10,
          "FCD": 15,
          "FDR": 10,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_front_all_3_agree_danger"
        ]
      },
      {
        "normalized_input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
        "frame": {
          "FDL": -1,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_blind_zone_not_outvotable",
          "test_voting_blind_zone_in_left_sector"
        ]
      },
      {
        "normalized_input_sha256": "dd358ea3903f361b558cd9166fbd890bb741d96ef4ebdfaf555da4c41ce6efa8",
        "frame": {
          "FDL": 100,
          "FCF": 100,
          "FCD": 15,
          "FDR": -1,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_blind_zone_in_right_sector"
        ]
      },
      {
        "normalized_input_sha256": "4de0c692f70042a0e2354f23dde62df007a37797cba31fa358c529ae568f21f0",
        "frame": {
          "FDL": 10,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 10,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_left_2sensor_agree_danger"
        ]
      },
      {
        "normalized_input_sha256": "612dfeabe94b102319bd33ac834e51950c7a2812fce666cf4c42968effd481b7",
        "frame": {
          "FDL": 100,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 10,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_left_2sensor_disagree_downgrade"
        ]
      },
      {
        "normalized_input_sha256": "7b223619d08e98c7238e072b00d066c22009ce3d483258b9ad7abe1cdfcaa2d7",
        "frame": {
          "FDL": 100,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 10,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_right_2sensor_disagree_downgrade"
        ]
      },
      {
        "normalized_input_sha256": "22dac1986947c3dd99fbfca44b4b8f16ec2652e15bea1bcfaeac98157c138051",
        "frame": {
          "FDL": 25,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 35,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_left_small_disagreement_no_downgrade"
        ]
      },
      {
        "normalized_input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
        "frame": {
          "FDL": -2,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_fault_sensor_treated_as_caution_not_danger",
          "test_voting_fault_not_blind_zone"
        ]
      },
      {
        "normalized_input_sha256": "70bb620ccc9b08886222e4b7102fcd2484848b8b7d5374a1a4f5a93c8a29fdb3",
        "frame": {
          "FDL": 25,
          "FCF": 100,
          "FCD": 15,
          "FDR": 100,
          "RDL": 100,
          "RCF": 100,
          "RCD": 15,
          "RDR": 100,
          "qw": 1,
          "qx": 0,
          "qy": 0,
          "qz": 0,
          "ax": 0,
          "ay": 0,
          "az": 9.8,
          "gx": 0,
          "gy": 0,
          "gz": 0,
          "upside_down": 0
        },
        "test_names": [
          "test_voting_left_near_vs_clear_downgrade"
        ]
      }
    ],
    "shared_input_groups": [
      {
        "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
        "test_names": [
          "test_voting_blind_zone_not_outvotable",
          "test_voting_blind_zone_in_left_sector"
        ]
      },
      {
        "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
        "test_names": [
          "test_voting_fault_sensor_treated_as_caution_not_danger",
          "test_voting_fault_not_blind_zone"
        ]
      }
    ]
  },
  "severity_encoding": {
    "CLEAR": 0,
    "CAUTION_OR_UNKNOWN": 1,
    "NEAR": 2,
    "DANGER": 3
  },
  "runs": [
    {
      "label": "parent",
      "revision": "ffdb479d11a01b13ed928eb431a24c10827289f1",
      "source": {
        "revision": "ffdb479d11a01b13ed928eb431a24c10827289f1",
        "path": "final_full_gait_test.py",
        "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py",
        "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py",
        "retrieval": "public_raw",
        "byte_count": 194798,
        "raw_sha256": "d7d958264b97f6ccbd76bf0f5d381f5d6e062894cffd0cda105535248f8c821f",
        "computed_git_blob_sha1": "067c27f0a30e6e7ec27b102c64381ab668034b15"
      },
      "classifier": "classify_sectors",
      "production_nodes": [
        {
          "name": "DIST_DANGER",
          "start_line": 1785,
          "end_line": 1785,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1785-L1785",
          "source_segment_utf8_sha256": "eb6f322b377f7f5b7378fca7ae0ba268fc89539052c5688e39c42320023179d7",
          "ast_sha256": "c97abae21552b1bfcd3e10b7a6b277807433b0a8d3684e6fc9719f9dab8fdc86"
        },
        {
          "name": "DIST_NEAR",
          "start_line": 1786,
          "end_line": 1786,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1786-L1786",
          "source_segment_utf8_sha256": "73034db299b657b07edab64e07ccedeb8057f77cbfdcfa395cffc5b52cf46a31",
          "ast_sha256": "e31d7fed30c7ece67ff6ac5fa67491408916f45c3e21f289bbbd99b990876f08"
        },
        {
          "name": "DIST_CAUTION",
          "start_line": 1787,
          "end_line": 1787,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1787-L1787",
          "source_segment_utf8_sha256": "22371535ea82ba307bba1536e095f37f956424e95276013c28967f8b8e269edd",
          "ast_sha256": "ac7d0ada3eb7aed439cd3d557acc770e4d5663b5b371693918868cf4a6c802c4"
        },
        {
          "name": "DIST_CLEAR",
          "start_line": 1788,
          "end_line": 1788,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1788-L1788",
          "source_segment_utf8_sha256": "963f887a26e33505dcdb0a77e47aee5ec76d5c9f9da454c7fa623bf7074f43cd",
          "ast_sha256": "3857e39aa4f02f8b74206ba393d7bcf7f5dbb8bc705c323cd029b7a1d3ef5df8"
        },
        {
          "name": "DIST_UNKNOWN",
          "start_line": 1789,
          "end_line": 1789,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1789-L1789",
          "source_segment_utf8_sha256": "460d50adb22b5051e45ffee7b8d36c9b7c556a21e40e5104e39eebca8c09dd84",
          "ast_sha256": "4e547ed6e7911a6bc04b117e40b193c611d814cca71a5e8d87d69f58f0ceb9a4"
        },
        {
          "name": "classify_distance",
          "start_line": 1791,
          "end_line": 1805,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1791-L1805",
          "source_segment_utf8_sha256": "139cca43fee6f1489e8d98cdede2a69a5f51eaad05fbede351dc9d8c0b8ea655",
          "ast_sha256": "7486561c5cb7b7417b6746fb0f94136890abc1b69a7c9f52990bafd71db101f9"
        },
        {
          "name": "classify_sectors",
          "start_line": 1807,
          "end_line": 1817,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/ffdb479d11a01b13ed928eb431a24c10827289f1/final_full_gait_test.py#L1807-L1817",
          "source_segment_utf8_sha256": "b7cbdc761e22e1f7b61a049fc9918910afeffa92155afcc4d041a3b5c13a1609",
          "ast_sha256": "9b80911afadddba26ade21a389cf8dd5292dd6da6f14649ec7d5b7683e1467f8"
        }
      ],
      "production_ast_sha256": "587f3a64c0a3950ee9cdfc13c2bc13873cb17edcc191ccff9cb56d447037088a",
      "executed_module_ast_sha256": "d4903e79d077711c683bc9b7d0764c8487efd97ddfb2ac86d5c54629b53ab13f",
      "passed": 9,
      "failed": 6,
      "per_test": [
        {
          "test_name": "test_voting_front_2of3_danger_stays_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22f093a369fa52261ac47f80380ffbfaf5c0f5a67bfc813cbdfc99c3f28eba2a",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_1of3_danger_rejected",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "50ecf35517e9cf4924e49165dcaac8a3d6883fd2ce132513a4d76bc634faea93",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_multipath_bounce_rejected",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "411fbea25507f8164154df6da8a24f3a3b90bd77335331a1d8c710a8212583ba",
              "actual_front_left_right": [
                3,
                0,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_2of3_near_stays_near",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "f9e3384ef830a5d10b51faf4be595e187d0d462e5aeacd3f2225582952eebdc6",
              "actual_front_left_right": [
                2,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_all_3_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "8fccd82aad084dc1b309ff73939379e573b1e268690194299fd001852fd68b4b",
              "actual_front_left_right": [
                3,
                3,
                3
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_not_outvotable",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_left_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_right_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "dd358ea3903f361b558cd9166fbd890bb741d96ef4ebdfaf555da4c41ce6efa8",
              "actual_front_left_right": [
                3,
                0,
                3
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4de0c692f70042a0e2354f23dde62df007a37797cba31fa358c529ae568f21f0",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_disagree_downgrade",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "612dfeabe94b102319bd33ac834e51950c7a2812fce666cf4c42968effd481b7",
              "actual_front_left_right": [
                0,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_right_2sensor_disagree_downgrade",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "7b223619d08e98c7238e072b00d066c22009ce3d483258b9ad7abe1cdfcaa2d7",
              "actual_front_left_right": [
                0,
                0,
                3
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_small_disagreement_no_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22dac1986947c3dd99fbfca44b4b8f16ec2652e15bea1bcfaeac98157c138051",
              "actual_front_left_right": [
                2,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_sensor_treated_as_caution_not_danger",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                1,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_not_blind_zone",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                1,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_near_vs_clear_downgrade",
          "status": "fail",
          "observations": [
            {
              "input_sha256": "70bb620ccc9b08886222e4b7102fcd2484848b8b7d5374a1a4f5a93c8a29fdb3",
              "actual_front_left_right": [
                2,
                2,
                0
              ]
            }
          ]
        }
      ]
    },
    {
      "label": "fix",
      "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
      "source": {
        "revision": "484a18b64e121635a9161a07736a2883fb9d478c",
        "path": "final_full_gait_test.py",
        "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py",
        "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py",
        "retrieval": "public_raw",
        "byte_count": 196247,
        "raw_sha256": "06df7fb64eb57eadd64afb912ea410dbf5ca700e52765f5355e551ec5405aae4",
        "computed_git_blob_sha1": "32fc64876535249e72b8f66a299583b927c8b16e"
      },
      "classifier": "classify_sectors_voted",
      "production_nodes": [
        {
          "name": "DIST_DANGER",
          "start_line": 1785,
          "end_line": 1785,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1785-L1785",
          "source_segment_utf8_sha256": "eb6f322b377f7f5b7378fca7ae0ba268fc89539052c5688e39c42320023179d7",
          "ast_sha256": "c97abae21552b1bfcd3e10b7a6b277807433b0a8d3684e6fc9719f9dab8fdc86"
        },
        {
          "name": "DIST_NEAR",
          "start_line": 1786,
          "end_line": 1786,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1786-L1786",
          "source_segment_utf8_sha256": "73034db299b657b07edab64e07ccedeb8057f77cbfdcfa395cffc5b52cf46a31",
          "ast_sha256": "e31d7fed30c7ece67ff6ac5fa67491408916f45c3e21f289bbbd99b990876f08"
        },
        {
          "name": "DIST_CAUTION",
          "start_line": 1787,
          "end_line": 1787,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1787-L1787",
          "source_segment_utf8_sha256": "22371535ea82ba307bba1536e095f37f956424e95276013c28967f8b8e269edd",
          "ast_sha256": "ac7d0ada3eb7aed439cd3d557acc770e4d5663b5b371693918868cf4a6c802c4"
        },
        {
          "name": "DIST_CLEAR",
          "start_line": 1788,
          "end_line": 1788,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1788-L1788",
          "source_segment_utf8_sha256": "963f887a26e33505dcdb0a77e47aee5ec76d5c9f9da454c7fa623bf7074f43cd",
          "ast_sha256": "3857e39aa4f02f8b74206ba393d7bcf7f5dbb8bc705c323cd029b7a1d3ef5df8"
        },
        {
          "name": "DIST_UNKNOWN",
          "start_line": 1789,
          "end_line": 1789,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1789-L1789",
          "source_segment_utf8_sha256": "460d50adb22b5051e45ffee7b8d36c9b7c556a21e40e5104e39eebca8c09dd84",
          "ast_sha256": "4e547ed6e7911a6bc04b117e40b193c611d814cca71a5e8d87d69f58f0ceb9a4"
        },
        {
          "name": "classify_distance",
          "start_line": 1791,
          "end_line": 1805,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1791-L1805",
          "source_segment_utf8_sha256": "139cca43fee6f1489e8d98cdede2a69a5f51eaad05fbede351dc9d8c0b8ea655",
          "ast_sha256": "7486561c5cb7b7417b6746fb0f94136890abc1b69a7c9f52990bafd71db101f9"
        },
        {
          "name": "classify_sectors_voted",
          "start_line": 1819,
          "end_line": 1851,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/484a18b64e121635a9161a07736a2883fb9d478c/final_full_gait_test.py#L1819-L1851",
          "source_segment_utf8_sha256": "1599223433da2b6b0fd26c064491fad778382b44cf9901995e94f02d2f3f5889",
          "ast_sha256": "347bb68981b91e103473ce4bedef09c29b9969ef9b250d64504d60aff7bd367a"
        }
      ],
      "production_ast_sha256": "d4e784f13869575062ac22cb3573eea0e03c3de9ad53e4dd1b24da30475d3972",
      "executed_module_ast_sha256": "f6b1bcf88fe508ff1e85c74e2c97f8186e1dfb102268feb65eb50cbbcb92a525",
      "passed": 15,
      "failed": 0,
      "per_test": [
        {
          "test_name": "test_voting_front_2of3_danger_stays_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22f093a369fa52261ac47f80380ffbfaf5c0f5a67bfc813cbdfc99c3f28eba2a",
              "actual_front_left_right": [
                3,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_1of3_danger_rejected",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "50ecf35517e9cf4924e49165dcaac8a3d6883fd2ce132513a4d76bc634faea93",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_multipath_bounce_rejected",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "411fbea25507f8164154df6da8a24f3a3b90bd77335331a1d8c710a8212583ba",
              "actual_front_left_right": [
                0,
                0,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_2of3_near_stays_near",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "f9e3384ef830a5d10b51faf4be595e187d0d462e5aeacd3f2225582952eebdc6",
              "actual_front_left_right": [
                2,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_all_3_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "8fccd82aad084dc1b309ff73939379e573b1e268690194299fd001852fd68b4b",
              "actual_front_left_right": [
                3,
                2,
                2
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_not_outvotable",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_left_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_right_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "dd358ea3903f361b558cd9166fbd890bb741d96ef4ebdfaf555da4c41ce6efa8",
              "actual_front_left_right": [
                3,
                0,
                3
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4de0c692f70042a0e2354f23dde62df007a37797cba31fa358c529ae568f21f0",
              "actual_front_left_right": [
                0,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_disagree_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "612dfeabe94b102319bd33ac834e51950c7a2812fce666cf4c42968effd481b7",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_right_2sensor_disagree_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "7b223619d08e98c7238e072b00d066c22009ce3d483258b9ad7abe1cdfcaa2d7",
              "actual_front_left_right": [
                0,
                0,
                2
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_small_disagreement_no_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22dac1986947c3dd99fbfca44b4b8f16ec2652e15bea1bcfaeac98157c138051",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_sensor_treated_as_caution_not_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_not_blind_zone",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_near_vs_clear_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "70bb620ccc9b08886222e4b7102fcd2484848b8b7d5374a1a4f5a93c8a29fdb3",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        }
      ]
    },
    {
      "label": "reviewed_head",
      "revision": "bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95",
      "source": {
        "revision": "bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95",
        "path": "final_full_gait_test.py",
        "public_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py",
        "raw_url": "https://raw.githubusercontent.com/Robiswell/Euler_Rover_2026/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py",
        "retrieval": "public_raw",
        "byte_count": 253727,
        "raw_sha256": "9b3343548b3f9f7ca778642a6c4706614a4eff508ceb6fb9abc440ad103231b4",
        "computed_git_blob_sha1": "50746e1c39dbc9fa1dfbb00c3d9875b2386be623"
      },
      "classifier": "classify_sectors_voted",
      "production_nodes": [
        {
          "name": "DIST_DANGER",
          "start_line": 2002,
          "end_line": 2002,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2002-L2002",
          "source_segment_utf8_sha256": "eb6f322b377f7f5b7378fca7ae0ba268fc89539052c5688e39c42320023179d7",
          "ast_sha256": "c97abae21552b1bfcd3e10b7a6b277807433b0a8d3684e6fc9719f9dab8fdc86"
        },
        {
          "name": "DIST_NEAR",
          "start_line": 2003,
          "end_line": 2003,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2003-L2003",
          "source_segment_utf8_sha256": "73034db299b657b07edab64e07ccedeb8057f77cbfdcfa395cffc5b52cf46a31",
          "ast_sha256": "e31d7fed30c7ece67ff6ac5fa67491408916f45c3e21f289bbbd99b990876f08"
        },
        {
          "name": "DIST_CAUTION",
          "start_line": 2004,
          "end_line": 2004,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2004-L2004",
          "source_segment_utf8_sha256": "22371535ea82ba307bba1536e095f37f956424e95276013c28967f8b8e269edd",
          "ast_sha256": "ac7d0ada3eb7aed439cd3d557acc770e4d5663b5b371693918868cf4a6c802c4"
        },
        {
          "name": "DIST_CLEAR",
          "start_line": 2005,
          "end_line": 2005,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2005-L2005",
          "source_segment_utf8_sha256": "963f887a26e33505dcdb0a77e47aee5ec76d5c9f9da454c7fa623bf7074f43cd",
          "ast_sha256": "3857e39aa4f02f8b74206ba393d7bcf7f5dbb8bc705c323cd029b7a1d3ef5df8"
        },
        {
          "name": "DIST_UNKNOWN",
          "start_line": 2006,
          "end_line": 2006,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2006-L2006",
          "source_segment_utf8_sha256": "460d50adb22b5051e45ffee7b8d36c9b7c556a21e40e5104e39eebca8c09dd84",
          "ast_sha256": "4e547ed6e7911a6bc04b117e40b193c611d814cca71a5e8d87d69f58f0ceb9a4"
        },
        {
          "name": "classify_distance",
          "start_line": 2008,
          "end_line": 2022,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2008-L2022",
          "source_segment_utf8_sha256": "57e0fba873ae9b880644e346f918931bcaf385e7c130e288f99ce8e131d2c004",
          "ast_sha256": "ff92c3e64ce074703a2e41ce6abf9e73fdeb4546bb17284d1cc7282f2256a563"
        },
        {
          "name": "classify_sectors_voted",
          "start_line": 2036,
          "end_line": 2068,
          "source_url": "https://github.com/Robiswell/Euler_Rover_2026/blob/bba2a57fcd80a41d3f30ef6e64f3bfd26b412f95/final_full_gait_test.py#L2036-L2068",
          "source_segment_utf8_sha256": "1599223433da2b6b0fd26c064491fad778382b44cf9901995e94f02d2f3f5889",
          "ast_sha256": "347bb68981b91e103473ce4bedef09c29b9969ef9b250d64504d60aff7bd367a"
        }
      ],
      "production_ast_sha256": "6d44feefb2ba722ebe465a48ea9cc1b808906284a9814943323b6c0e982f5777",
      "executed_module_ast_sha256": "65ab5da39f5e064f34ae543aa09b09e7d9b274f136cd1e439a34ac27ff94e78d",
      "passed": 15,
      "failed": 0,
      "per_test": [
        {
          "test_name": "test_voting_front_2of3_danger_stays_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22f093a369fa52261ac47f80380ffbfaf5c0f5a67bfc813cbdfc99c3f28eba2a",
              "actual_front_left_right": [
                3,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_1of3_danger_rejected",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "50ecf35517e9cf4924e49165dcaac8a3d6883fd2ce132513a4d76bc634faea93",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_multipath_bounce_rejected",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "411fbea25507f8164154df6da8a24f3a3b90bd77335331a1d8c710a8212583ba",
              "actual_front_left_right": [
                0,
                0,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_2of3_near_stays_near",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "f9e3384ef830a5d10b51faf4be595e187d0d462e5aeacd3f2225582952eebdc6",
              "actual_front_left_right": [
                2,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_front_all_3_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "8fccd82aad084dc1b309ff73939379e573b1e268690194299fd001852fd68b4b",
              "actual_front_left_right": [
                3,
                2,
                2
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_not_outvotable",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_left_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "cdb17bb006ea2e29f1593b3452c76c22a41de52669ea65cbfcb54883e51a3711",
              "actual_front_left_right": [
                3,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_blind_zone_in_right_sector",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "dd358ea3903f361b558cd9166fbd890bb741d96ef4ebdfaf555da4c41ce6efa8",
              "actual_front_left_right": [
                3,
                0,
                3
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_agree_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4de0c692f70042a0e2354f23dde62df007a37797cba31fa358c529ae568f21f0",
              "actual_front_left_right": [
                0,
                3,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_2sensor_disagree_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "612dfeabe94b102319bd33ac834e51950c7a2812fce666cf4c42968effd481b7",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_right_2sensor_disagree_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "7b223619d08e98c7238e072b00d066c22009ce3d483258b9ad7abe1cdfcaa2d7",
              "actual_front_left_right": [
                0,
                0,
                2
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_small_disagreement_no_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "22dac1986947c3dd99fbfca44b4b8f16ec2652e15bea1bcfaeac98157c138051",
              "actual_front_left_right": [
                0,
                2,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_sensor_treated_as_caution_not_danger",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_fault_not_blind_zone",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "4732d2d83741f6c8ef87614592465aab9d901d799715a04b39c2a3addaa12709",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        },
        {
          "test_name": "test_voting_left_near_vs_clear_downgrade",
          "status": "pass",
          "observations": [
            {
              "input_sha256": "70bb620ccc9b08886222e4b7102fcd2484848b8b7d5374a1a4f5a93c8a29fdb3",
              "actual_front_left_right": [
                0,
                1,
                0
              ]
            }
          ]
        }
      ]
    }
  ],
  "comparison_expectations": {
    "parent_has_exact_six_previously_observed_failures": true,
    "fix_passes_all_15_assertion_functions": true,
    "reviewed_head_passes_all_15_assertion_functions": true,
    "identical_ordered_fixture_inputs_across_revisions": true
  },
  "comparison_expectations_met": true
}
