{
  "addendum_of": {
    "file": "prereg-v1.json",
    "sha256": "414490f68e292fd6db92b2b50dc448d7b504f5f1e5fe28330beca219e34d0edb",
    "url": "https://pruviq.com/verify/forward/prereg-v1.json"
  },
  "amendments": [
    {
      "commitment_changes": [
        {
          "key": "verify_b1",
          "new": "495f06435b3e4b9aca2c9bae4989624d0bb0c9e02f746ec5f2609db38ae991e0",
          "old": "b4e9a61aa2df19a74154241160ab051a828ab246e217507cc3fd5f8500eab9eb"
        },
        {
          "key": "verify_b3",
          "new": "4634b34d37c8756c7e8bccbb1e8c626bc4b8b6de99c430aa06f9ccc961070006",
          "old": "155c19a3b80a4f21015ca3984855b72ed996d43fea27d08d4608ddc270475ec2"
        }
      ],
      "id": "Q-H658-2-3-6",
      "scope": "verifier files verify_b1 (B1, B2) and verify_b3 (B3; it imports verify_b1's helpers). Judgment rules, candidates, engines and the trial count N are unchanged.",
      "what": [
        "52-week edge test: the input series is cut to the first 364 days of the window (previously it could include later days).",
        "A candidate whose 12-week result is REJECT or CANNOT_JUDGE enters the 52-week edge test and the final Holm table with p = 1.",
        "The 12-week verdict is fixed at settle time: one record line is written to a record file, that file is stamped with OpenTimestamps, and the 52-week run re-derives the verdict from the inputs as they were at record time and refuses a record that does not match or that names a verifier sha which was never pinned.",
        "Entries skipped because the entry price was missing now count as missing fills (the CANNOT_JUDGE condition «missing fills > 10% of fills»). The verifier identifies them from the tracker field fill_blocked (amendment Q-H658-6-tracker); a window line without that field is CANNOT_JUDGE.",
        "Parity-B input must be the output of the pinned parity-B generator for the same candidate and window; otherwise CANNOT_JUDGE.",
        "The Q-H659 edge threshold recorded in addendum 1 (k <= 9 at B = 10000, and the Holm step table) is now applied by verify_b1."
      ],
      "why": "Independent review found that the previous verifiers could read past the 52-week window, could let a 12-week REJECT or CANNOT_JUDGE slot compete in the edge test, and did not count price-skipped entries as missing fills."
    },
    {
      "commitment_changes": [
        {
          "key": "tracker_b1",
          "new": "93ecb71fa7b9b7e53f89e69028463da8aabaa4da73eb17aaf7fac9d32b23a31a",
          "old": "6a24ca226d31b6e2c25fe25effbb6f9c73994d0fe615b6d32b86c58c9fd181b0"
        }
      ],
      "id": "Q-H658-6-tracker",
      "scope": "tracker_b1 (hourly journal writer for B1 and B2; also imported by the B3 tracker)",
      "what": "Adds one report-only field, fill_blocked, to each B1/B2 journal line: the entries decided for that hour that the engine did not open because the entry price was missing. Fills, exits, P&L and the engine are unchanged.",
      "why": "The verifier needs the identity of price-skipped entries from the same run as the journal line to count them as missing fills."
    }
  ],
  "canonical_url": "https://pruviq.com/verify/forward/prereg-v1-addendum-2.json",
  "commitments_unchanged": [
    "b1core",
    "b3core",
    "batch1_prereg",
    "f5p_governing_prereg",
    "f5p_paper_plan",
    "f5p_tracker",
    "forward_rules",
    "tracker_b3",
    "verifier_readings_v1"
  ],
  "commitments_unchanged_note": "relative to prereg-v1.json as amended by addendum 1 (b1core 649fe9b1..., tracker_b3 492ddc10...)",
  "follows": {
    "file": "prereg-v1-addendum-1.json",
    "sha256": "e9f8bcff85f033df5c09e733b54f05c249deb76674902e2efb0c408609012174",
    "url": "https://pruviq.com/verify/forward/prereg-v1-addendum-1.json"
  },
  "forward_journal_evidence": {
    "checked_utc": "2026-09-29T07:41:06Z",
    "earliest_scheduled_start": "2026-10-01T00:00:00Z",
    "locations_checked": {
      "B1, B2": "journals/ under the batch-1 tracker root: no journals directory exists",
      "B3": "journals/ under the B3 tracker root: no journals directory exists",
      "B5": "journals/ under the B5 tracker root: directory exists and is empty (0 files)",
      "F5-P (and F1-P, F3-P, F5-V1)": "journal.jsonl under the F5-P tracker root: file does not exist"
    },
    "method": "direct file-system check of every production tracker journal location at recording time"
  },
  "forward_journal_lines_at_recording": 0,
  "how_to_verify": [
    "shasum -a 256 prereg-v1-addendum-2.json",
    "ots verify prereg-v1-addendum-2.json.ots"
  ],
  "internal_pin_changes_not_prereg_commitments": [
    {
      "file": "forward/batch2/b5/pins-verify-b5.json",
      "key": "verify_b5",
      "new": "1288c736598d8e6ee118de47441c3b6e5cf9d503670b43b9bfd636b8f27cef31",
      "old": "8fe5524679e346de70461c5495601cda9110296b34dc464f525e1163edee1e87",
      "what": "B5 verifier self-pin; B5's verifier imports the verify_b1 helpers and receives the same fixes. Not a prereg-v1 commitment."
    }
  ],
  "public_commitment_changes": [
    "tracker_b1",
    "verify_b1",
    "verify_b3"
  ],
  "public_commitment_changes_note": "the only prereg-v1.json commitments this addendum replaces; old and new values are in amendments[].commitment_changes",
  "rc": 0,
  "recorded_utc": "2026-09-29T07:41:16Z",
  "repin_note": "Changed keys per pin file: forward/batch1/pins.json and forward/batch1/b3/pins.json: tracker_b1 only; forward/batch1/pins-verify.json: verify_b1 only; forward/batch1/b3/pins-verify-b3.json: verify_b1 and verify_b3; forward/batch2/b5/pins-verify-b5.json: verify_b1, tracker_b1 and verify_b5 (verify_b5 is an internal pin, listed under internal_pin_changes_not_prereg_commitments). The previous verifier pins are kept in an append-only history next to each verifier pin file.",
  "repinned_files_sha256": {
    "forward/batch1/b3/pins-verify-b3.json": "f77868b2c184c2260f628fc9426331f5bd977d4b08f9ac9996b6f7e1c0172463",
    "forward/batch1/b3/pins.json": "4259e4d0499386b7951c4076af5d320f7a163baba5ce2f0588089ecbf46a0cc9",
    "forward/batch1/pins-verify.json": "114716cd76d2ff9e43a7f31fb935d811c3984cc4caf76b892a54b5731472e596",
    "forward/batch1/pins.json": "57ccc3ae83cd2aca3596d34a331af35f84af1fac20d748a80053e0f8a764ed8b",
    "forward/batch2/b5/pins-verify-b5.json": "b9a99604b2af153b431013efe6cdf5cfd0b4ac8d0d0d69ea7659605f37c9550d"
  },
  "review_chain": {
    "Q-H658-2-3-6": [
      "Codex (second model, cross-check; defects found and fixed in sequence, final verdict GO)",
      "critic (independent reviewer; GO with fixes, fixes applied)"
    ],
    "Q-H658-6-tracker": [
      "critic (independent reviewer)",
      "Codex (second model, cross-check)"
    ]
  },
  "review_note": "The third independent reviewer used for addendum 1 did not review these changes; this is recorded as a deviation.",
  "schema": "pruviq.prereg.addendum.v1",
  "timestamps": "third-party: OpenTimestamps proof published next to this file",
  "what_this_is": "Addendum 2 to the forward-trading pre-registration prereg-v1.json (after addendum 1). It records verifier and tracker changes made before any forward data existed and replaces three sha256 commitments of prereg-v1.json. prereg-v1.json and addendum 1 are intentionally left unchanged so that their OpenTimestamps proofs stay valid; where this addendum differs from them, this addendum governs from its recorded_utc."
}
