From d9ca41653a32a9d77ad0dc5929c15411e4c222c8 Mon Sep 17 00:00:00 2001 From: James Reed Date: Fri, 23 Oct 2026 20:13:44 -0700 Subject: [PATCH 1/2] Stop treating frontier files as live inputs in two more replay checks rank7-v45-margin and selected-record-parse-cache were missed by #5410 because their TASK.json author field is "jwr". Both pinned the selected record (and rank7 the family-status page) as live inputs, so every frontier change broke them. The pins become provenance, checked at base_commit by scripts/research_package.py. The parse-cache payload is still the live record; its one-digit mutation no longer hard-codes the old decimal. Results are unchanged. Co-Authored-By: Claude Opus 5.5 --- research/rank7-v45-margin/SOURCES.json | 4 ++-- research/rank7-v45-margin/VERIFY.json | 2 -- research/rank7-v45-margin/verify.py | 9 +-------- research/selected-record-parse-cache/README.md | 2 +- research/selected-record-parse-cache/SOURCES.json | 2 +- research/selected-record-parse-cache/verify.py | 14 +++++++------- 6 files changed, 12 insertions(+), 21 deletions(-) diff --git a/research/rank7-v45-margin/SOURCES.json b/research/rank7-v45-margin/SOURCES.json index 89f0c25fcb..c57f73e019 100644 --- a/research/rank7-v45-margin/SOURCES.json +++ b/research/rank7-v45-margin/SOURCES.json @@ -10,13 +10,13 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, { "path": "docs/research/research-family-status.md", - "usage": "input", + "usage": "provenance", "git_blob": "9b7d65650d8fcd6247a758936b24426b40e40efa", "sha256": "9b98ab42364e90588e90410fd2773f9bc4bf5050f514101bed0a0246881b5b7e" }, diff --git a/research/rank7-v45-margin/VERIFY.json b/research/rank7-v45-margin/VERIFY.json index 62541fd0b6..301cd2c538 100644 --- a/research/rank7-v45-margin/VERIFY.json +++ b/research/rank7-v45-margin/VERIFY.json @@ -4,8 +4,6 @@ "python": "3.12", "requirements": [], "inputs": [ - "certificates/selected-result.json", - "docs/research/research-family-status.md", "research/rank7-joint-endframes/README.md", "research/rank7-joint-endframes/producer.py", "research/rank7-joint-endframes/construction/STAGE-PRICES.json" diff --git a/research/rank7-v45-margin/verify.py b/research/rank7-v45-margin/verify.py index 0f7f131e80..8264cf55b4 100644 --- a/research/rank7-v45-margin/verify.py +++ b/research/rank7-v45-margin/verify.py @@ -16,8 +16,6 @@ README = ROOT / "research/rank7-joint-endframes/README.md" PRODUCER = ROOT / "research/rank7-joint-endframes/producer.py" PRICES = ROOT / "research/rank7-joint-endframes/construction/STAGE-PRICES.json" -FAMILY = ROOT / "docs/research/research-family-status.md" -SELECTED = ROOT / "certificates/selected-result.json" MARKER = "PASS_RANK7_V45_MARGIN joint_positive=true singles_negative=true no_new_kappa" BASIS = (256, 128, 64, 35, 16, 11, 5) HELPERS = (249, 251, 265, 267) @@ -48,8 +46,6 @@ def authenticate(): "research/rank7-joint-endframes/README.md", "research/rank7-joint-endframes/producer.py", "research/rank7-joint-endframes/construction/STAGE-PRICES.json", - "docs/research/research-family-status.md", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -79,14 +75,11 @@ def evaluate(): authenticate() readme = README.read_text(encoding="utf-8") producer = PRODUCER.read_text(encoding="utf-8") - family = FAMILY.read_text(encoding="utf-8") - selected = json.loads(SELECTED.read_text(encoding="utf-8")) prices = json.loads(PRICES.read_text(encoding="utf-8")) require("(x & normal).bit_count() % 2 == 0" in producer, "the hyperplane test moved") require("'V45': ([256, 128, 64, 35, 16, 11, 5], [249, 251, 265, 267])" in producer, "the V45 group moved") require("E_7 ∩ E_42 ∩ E_45" in readme, "the intersection claim moved") - require("Reports 22 coordinated helper lowerings, five extra paired extractions, and κ ≈ 0.001729." in family, "the archive status moved") - require(selected["kappa"] == "836330098538459/500000000000000000", "the selected kappa moved") + # The family-status page and selected record are provenance pins, checked at base_commit by scripts/research_package.py. require("0.001729033982646513517717" in readme, "the headline moved") weights = prices["weights"] break_even = weights["break_even"] diff --git a/research/selected-record-parse-cache/README.md b/research/selected-record-parse-cache/README.md index 66738ff43c..3b3cec9814 100644 --- a/research/selected-record-parse-cache/README.md +++ b/research/selected-record-parse-cache/README.md @@ -12,7 +12,7 @@ same bytes every time and parses them once. On this machine the cached pass was faster by more than a factor of two. The checker requires that ratio on every replay and prints both times. -Changing the decimal digit from `8` to `9` misses. Restoring the original +Changing the last digit of the `decimal` field misses (on the pinned record, `8` to `9`; the checker now changes whatever digit the live record has). Restoring the original bytes parses again, so the changed object is not reused. A hit returns the object from the fresh parse. diff --git a/research/selected-record-parse-cache/SOURCES.json b/research/selected-record-parse-cache/SOURCES.json index 2ca5a9ec24..eae9a19855 100644 --- a/research/selected-record-parse-cache/SOURCES.json +++ b/research/selected-record-parse-cache/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/selected-record-parse-cache/verify.py b/research/selected-record-parse-cache/verify.py index 3bfab194e1..65d39a797e 100644 --- a/research/selected-record-parse-cache/verify.py +++ b/research/selected-record-parse-cache/verify.py @@ -40,7 +40,6 @@ def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} expected = { - "certificates/selected-result.json", "scripts/verify_replay_coverage.py", "scripts/verify_frontier1094.py", } @@ -84,10 +83,11 @@ def cached_seconds(raw): def mutate(raw): text = raw.decode() - old = '"decimal": "0.001672660197076918"' - new = '"decimal": "0.001672660197076919"' + value = json.loads(raw)["decimal"] + changed = value[:-1] + str((int(value[-1]) + 1) % 10) + old = '"decimal": "%s"' % value require(text.count(old) == 1, "the decimal field moved") - return text.replace(old, new, 1).encode() + return text.replace(old, '"decimal": "%s"' % changed, 1).encode(), changed def evaluate(): @@ -98,15 +98,15 @@ def evaluate(): require("Reuse requires the published reviewed receipt" in frontier, "the baseline reuse rule moved") raw = RECORD.read_bytes() fresh = json.loads(raw) - require(fresh["kappa"] == "836330098538459/500000000000000000", "the selected kappa moved") + # The live record is the payload; its bytes are a provenance pin, checked at base_commit by scripts/research_package.py. cache = ParseCache() first, hit = cache.load(raw) require(hit is False and first == fresh, "the first load did not parse") second, hit = cache.load(raw) require(hit is True and second == fresh, "the second load missed") - changed = mutate(raw) + changed, digit = mutate(raw) third, hit = cache.load(changed) - require(hit is False and third["decimal"] == "0.001672660197076919", "the changed record hit") + require(hit is False and third["decimal"] == digit, "the changed record hit") restored, hit = cache.load(raw) require(hit is False and restored == fresh, "the restored record reused the changed parse") cold = cold_seconds(raw) From f649e9006179215cbae43cbbd628b48aa3c95de4 Mon Sep 17 00:00:00 2001 From: James Reed Date: Fri, 23 Oct 2026 20:20:22 -0700 Subject: [PATCH 2/2] Freeze the selected record as provenance in 136 more replay checks These verifiers pinned certificates/selected-result.json as a live input, so every frontier change broke them. Each SOURCES.json row becomes provenance (checked at base_commit by scripts/research_package.py), the stale live hash checks are removed, and each live read is replaced by the pinned record's value, so every downstream check is unchanged. Results are unchanged. Co-Authored-By: Claude Opus 5.5 --- research/address-operator-composition/SOURCES.json | 2 +- research/address-operator-composition/verify.py | 4 ++-- research/alternating-shear-exchange/SOURCES.json | 2 +- research/alternating-shear-exchange/verify.py | 5 ++--- research/alternation-lemma/SOURCES.json | 2 +- research/alternation-lemma/verify.py | 5 +++-- research/basis-gap-minimum/SOURCES.json | 2 +- research/basis-gap-minimum/verify.py | 9 ++------- research/bit-row-allowance/SOURCES.json | 2 +- research/bit-row-allowance/verify.py | 4 ++-- research/bit0-budget-gap/SOURCES.json | 2 +- research/bit0-budget-gap/verify.py | 3 ++- research/boundary-half-bandwidth/SOURCES.json | 2 +- research/boundary-half-bandwidth/verify.py | 5 ++--- research/braid-triple-count/SOURCES.json | 2 +- research/braid-triple-count/verify.py | 5 ++--- research/bridge-block-form/SOURCES.json | 2 +- research/bridge-block-form/verify.py | 5 ++--- research/bridge-reducer-gap/SOURCES.json | 2 +- research/bridge-reducer-gap/verify.py | 5 ++--- research/c5-cancellation-floors/SOURCES.json | 2 +- research/c5-cancellation-floors/verify.py | 5 +++-- research/ceiling-bracket-gap/SOURCES.json | 2 +- research/ceiling-bracket-gap/verify.py | 5 +++-- research/central-triple-rank-floor/SOURCES.json | 2 +- research/central-triple-rank-floor/verify.py | 4 ++-- research/centre-column-relation/SOURCES.json | 2 +- research/centre-column-relation/verify.py | 5 +++-- research/chirp-budget-clearance/SOURCES.json | 2 +- research/chirp-budget-clearance/verify.py | 4 ++-- research/chirp-field-width/SOURCES.json | 2 +- research/chirp-field-width/verify.py | 3 ++- research/chirp-residue-step/SOURCES.json | 2 +- research/chirp-residue-step/verify.py | 3 ++- research/chirp-scalar-invoice/SOURCES.json | 2 +- research/chirp-scalar-invoice/verify.py | 3 ++- research/codelivery-repair-bill/SOURCES.json | 2 +- research/codelivery-repair-bill/verify.py | 5 +++-- research/coefficient-width-bound/SOURCES.json | 2 +- research/coefficient-width-bound/verify.py | 5 ++--- research/compression-error-sum/SOURCES.json | 2 +- research/compression-error-sum/verify.py | 5 ++--- research/confinement-multiplicity/SOURCES.json | 2 +- research/confinement-multiplicity/verify.py | 5 +++-- research/controlled-block-shear/SOURCES.json | 2 +- research/controlled-block-shear/verify.py | 5 ++--- research/convolution-slot-bound/SOURCES.json | 2 +- research/convolution-slot-bound/verify.py | 5 ++--- research/copy-floor-arithmetic/SOURCES.json | 2 +- research/copy-floor-arithmetic/verify.py | 8 ++------ research/core-section-capacity/SOURCES.json | 2 +- research/core-section-capacity/verify.py | 4 ++-- research/count-exponent-budget/SOURCES.json | 2 +- research/count-exponent-budget/verify.py | 5 +++-- research/countdown-ripple-sum/SOURCES.json | 2 +- research/countdown-ripple-sum/verify.py | 3 ++- research/cutoff-sequence-location/SOURCES.json | 2 +- research/cutoff-sequence-location/verify.py | 5 +++-- research/degree-gap-clearance/SOURCES.json | 2 +- research/degree-gap-clearance/verify.py | 4 ++-- research/direct-frame-stage-bills/SOURCES.json | 2 +- research/direct-frame-stage-bills/verify.py | 4 ++-- research/dual-basis-gram/SOURCES.json | 2 +- research/dual-basis-gram/verify.py | 3 ++- research/e7-generator-span/SOURCES.json | 2 +- research/e7-generator-span/verify.py | 5 ++--- research/e8-minor-units/SOURCES.json | 2 +- research/e8-minor-units/verify.py | 5 ++--- research/e8-reflection-transport/SOURCES.json | 2 +- research/e8-reflection-transport/verify.py | 5 ++--- research/e8-sparse-coset-budget/SOURCES.json | 2 +- research/e8-sparse-coset-budget/verify.py | 9 ++------- research/even-return-lengths/SOURCES.json | 2 +- research/even-return-lengths/verify.py | 5 +++-- research/expansion-axis-margin/SOURCES.json | 2 +- research/expansion-axis-margin/verify.py | 5 ++--- research/factor-perturbation-margin/SOURCES.json | 2 +- research/factor-perturbation-margin/verify.py | 5 ++--- research/fano-incidence-cycles/SOURCES.json | 2 +- research/fano-incidence-cycles/verify.py | 8 ++------ research/fft-carry-recovery/SOURCES.json | 2 +- research/fft-carry-recovery/verify.py | 3 ++- research/fft-setup-sum/SOURCES.json | 2 +- research/fft-setup-sum/verify.py | 3 ++- research/fft-space-ratio/SOURCES.json | 2 +- research/fft-space-ratio/verify.py | 3 ++- research/fft-time-constants/SOURCES.json | 2 +- research/fft-time-constants/verify.py | 3 ++- research/fft-word-parameter-bounds/SOURCES.json | 2 +- research/fft-word-parameter-bounds/verify.py | 8 ++------ research/five-cell-basis-obstruction/SOURCES.json | 2 +- research/five-cell-basis-obstruction/verify.py | 5 +++-- research/format-width-bound/SOURCES.json | 2 +- research/format-width-bound/verify.py | 5 +++-- research/gate-dest-free-agreement/SOURCES.json | 2 +- research/gate-dest-free-agreement/verify.py | 5 +++-- research/gate-operand-agreement/SOURCES.json | 2 +- research/gate-operand-agreement/verify.py | 5 +++-- research/h6-sector-dimensions/SOURCES.json | 2 +- research/h6-sector-dimensions/verify.py | 5 +++-- research/h6-smith-exponents/SOURCES.json | 2 +- research/h6-smith-exponents/verify.py | 5 +++-- research/helper544-root-sign/SOURCES.json | 2 +- research/helper544-root-sign/verify.py | 5 +++-- research/idle-aggregation-gap/SOURCES.json | 2 +- research/idle-aggregation-gap/verify.py | 5 +++-- research/idle-rank-sum/SOURCES.json | 2 +- research/idle-rank-sum/verify.py | 5 ++--- research/integer-idle-histogram/SOURCES.json | 2 +- research/integer-idle-histogram/verify.py | 5 +++-- research/k8-four-end-ceiling/SOURCES.json | 2 +- research/k8-four-end-ceiling/verify.py | 4 ++-- research/kernel-grid-erasure/SOURCES.json | 2 +- research/kernel-grid-erasure/verify.py | 5 ++--- research/kronecker-mask-weight/SOURCES.json | 2 +- research/kronecker-mask-weight/verify.py | 5 ++--- research/l22-split-domain/SOURCES.json | 2 +- research/l22-split-domain/verify.py | 5 +++-- research/log-absorption-bound/SOURCES.json | 2 +- research/log-absorption-bound/verify.py | 3 ++- research/lost-free-cover-bound/SOURCES.json | 2 +- research/lost-free-cover-bound/verify.py | 4 ++-- research/mantel-edge-cap/SOURCES.json | 2 +- research/mantel-edge-cap/verify.py | 3 ++- research/manuscript-exponent-clearance/SOURCES.json | 2 +- research/manuscript-exponent-clearance/verify.py | 4 ++-- research/minor-bit-budget/SOURCES.json | 2 +- research/minor-bit-budget/verify.py | 5 ++--- research/negacyclic-sign-cancellation/SOURCES.json | 2 +- research/negacyclic-sign-cancellation/verify.py | 3 ++- research/neumann-tail-bound/SOURCES.json | 2 +- research/neumann-tail-bound/verify.py | 5 ++--- research/nilpotent-call-floor/SOURCES.json | 2 +- research/nilpotent-call-floor/verify.py | 8 ++------ research/nonfano-invoice-floor/SOURCES.json | 2 +- research/nonfano-invoice-floor/verify.py | 5 +++-- research/odd-kernel-bit-margin/SOURCES.json | 2 +- research/odd-kernel-bit-margin/verify.py | 5 +++-- research/odd-kernel-bit-tariff/SOURCES.json | 2 +- research/odd-kernel-bit-tariff/verify.py | 9 ++------- research/one-coset-orbit-budget/SOURCES.json | 2 +- research/one-coset-orbit-budget/verify.py | 8 ++------ research/ordinary-rate-gap/SOURCES.json | 2 +- research/ordinary-rate-gap/verify.py | 5 +++-- research/ordinary-rate-threshold/SOURCES.json | 2 +- research/ordinary-rate-threshold/verify.py | 5 +++-- research/overlapping-window-bill/SOURCES.json | 2 +- research/overlapping-window-bill/verify.py | 4 ++-- research/owned-zero-mass-screen/SOURCES.json | 2 +- research/owned-zero-mass-screen/verify.py | 4 ++-- research/owner-slice-ledger/SOURCES.json | 2 +- research/owner-slice-ledger/verify.py | 4 ++-- research/p104-hosting-threshold/SOURCES.json | 2 +- research/p104-hosting-threshold/verify.py | 4 ++-- research/p112-frame-bound/SOURCES.json | 2 +- research/p112-frame-bound/verify.py | 5 +++-- research/pair-collision-identity/SOURCES.json | 2 +- research/pair-collision-identity/verify.py | 3 ++- research/permutation-lds-product/SOURCES.json | 2 +- research/permutation-lds-product/verify.py | 5 ++--- research/prefix-budget-counterexample/SOURCES.json | 2 +- research/prefix-budget-counterexample/verify.py | 3 ++- research/prefix-mask-basis/SOURCES.json | 2 +- research/prefix-mask-basis/verify.py | 5 ++--- research/product-exponent-gap/SOURCES.json | 2 +- research/product-exponent-gap/verify.py | 5 +++-- research/production-domain-gap/SOURCES.json | 2 +- research/production-domain-gap/verify.py | 5 ++--- research/q-toeplitz-factorization/SOURCES.json | 2 +- research/q-toeplitz-factorization/verify.py | 5 ++--- research/q8-bound-attainment/SOURCES.json | 2 +- research/q8-bound-attainment/verify.py | 5 +++-- research/q8-rank-floor/SOURCES.json | 2 +- research/q8-rank-floor/verify.py | 5 +++-- research/qadic-row-excess/SOURCES.json | 2 +- research/qadic-row-excess/verify.py | 4 ++-- research/qq16-output-turn/SOURCES.json | 2 +- research/qq16-output-turn/verify.py | 5 +++-- research/r437-histogram-mass/SOURCES.json | 2 +- research/r437-histogram-mass/verify.py | 5 +++-- research/r438-rank-drop/SOURCES.json | 2 +- research/r438-rank-drop/verify.py | 5 +++-- research/r480-leaver-rank-bill/SOURCES.json | 2 +- research/r480-leaver-rank-bill/verify.py | 4 ++-- research/rank-one-idempotent-count/SOURCES.json | 2 +- research/rank-one-idempotent-count/verify.py | 4 ++-- research/rank-unit-deletion-order/SOURCES.json | 2 +- research/rank-unit-deletion-order/verify.py | 5 +++-- research/rank1-deletion-target/SOURCES.json | 2 +- research/rank1-deletion-target/verify.py | 4 ++-- research/rank7-basis-cover/SOURCES.json | 2 +- research/rank7-basis-cover/verify.py | 5 ++--- research/rank7-frame-lines/SOURCES.json | 2 +- research/rank7-frame-lines/verify.py | 3 ++- research/rank7-hyperplane-count/SOURCES.json | 2 +- research/rank7-hyperplane-count/verify.py | 3 ++- research/retained-schedule-deficit/SOURCES.json | 2 +- research/retained-schedule-deficit/verify.py | 5 ++--- research/retimed-pair-moment/SOURCES.json | 2 +- research/retimed-pair-moment/verify.py | 5 +++-- research/revisit-length-witness/SOURCES.json | 2 +- research/revisit-length-witness/verify.py | 5 +++-- research/riding-shear-sandwich/SOURCES.json | 2 +- research/riding-shear-sandwich/verify.py | 5 ++--- research/rotating-address-walk/SOURCES.json | 2 +- research/rotating-address-walk/verify.py | 5 ++--- research/rotating-normal-closure/SOURCES.json | 2 +- research/rotating-normal-closure/verify.py | 4 ++-- research/row-ledger-readings/SOURCES.json | 2 +- research/row-ledger-readings/verify.py | 4 ++-- research/scatter-basis-identity/SOURCES.json | 2 +- research/scatter-basis-identity/verify.py | 5 +++-- research/schur-weight-cancellation/SOURCES.json | 2 +- research/schur-weight-cancellation/verify.py | 5 ++--- research/shared-centre-k2/SOURCES.json | 2 +- research/shared-centre-k2/verify.py | 4 ++-- research/six-label-central-floor/SOURCES.json | 2 +- research/six-label-central-floor/verify.py | 8 ++------ research/six-owner-repair-count/SOURCES.json | 2 +- research/six-owner-repair-count/verify.py | 8 ++------ research/source-window-index/SOURCES.json | 2 +- research/source-window-index/verify.py | 5 ++--- research/span-entrance-width/SOURCES.json | 2 +- research/span-entrance-width/verify.py | 5 +++-- research/split-budget-survivors/SOURCES.json | 2 +- research/split-budget-survivors/verify.py | 3 ++- research/stage2-breakeven/SOURCES.json | 2 +- research/stage2-breakeven/verify.py | 5 ++--- research/stock-coefficient-nulls/SOURCES.json | 2 +- research/stock-coefficient-nulls/verify.py | 5 +++-- research/stock-rho-ledger/SOURCES.json | 2 +- research/stock-rho-ledger/verify.py | 5 +++-- research/storage-spare-bits/SOURCES.json | 2 +- research/storage-spare-bits/verify.py | 5 ++--- research/supplier-saving-half/SOURCES.json | 2 +- research/supplier-saving-half/verify.py | 5 +++-- research/t360-role-gap/SOURCES.json | 2 +- research/t360-role-gap/verify.py | 5 +++-- research/t450-replica-count/SOURCES.json | 2 +- research/t450-replica-count/verify.py | 5 +++-- research/t488-moment-straddle/SOURCES.json | 2 +- research/t488-moment-straddle/verify.py | 5 +++-- research/t740-histogram-mass/SOURCES.json | 2 +- research/t740-histogram-mass/verify.py | 5 +++-- research/ten-term-copy-cost/SOURCES.json | 2 +- research/ten-term-copy-cost/verify.py | 4 ++-- research/twelve-call-central-triple/SOURCES.json | 2 +- research/twelve-call-central-triple/verify.py | 4 ++-- research/two-hub-tariff-54/SOURCES.json | 2 +- research/two-hub-tariff-54/verify.py | 5 +++-- research/two-hub-tariff-minimum/SOURCES.json | 2 +- research/two-hub-tariff-minimum/verify.py | 4 ++-- research/two-unpaid-idle-mass/SOURCES.json | 2 +- research/two-unpaid-idle-mass/verify.py | 4 ++-- research/uniform-cover-counts/SOURCES.json | 2 +- research/uniform-cover-counts/verify.py | 4 ++-- research/v45-margin-ladder/SOURCES.json | 2 +- research/v45-margin-ladder/verify.py | 5 ++--- research/v45-triple-intersection/SOURCES.json | 2 +- research/v45-triple-intersection/verify.py | 3 ++- research/width-k-power-cut/SOURCES.json | 2 +- research/width-k-power-cut/verify.py | 5 +++-- research/window-chain-source-count/SOURCES.json | 2 +- research/window-chain-source-count/verify.py | 5 ++--- research/xor-mask-lds/SOURCES.json | 2 +- research/xor-mask-lds/verify.py | 5 ++--- research/zero-remainder-calls/SOURCES.json | 2 +- research/zero-remainder-calls/verify.py | 4 ++-- research/zero-saving-centre-moment/SOURCES.json | 2 +- research/zero-saving-centre-moment/verify.py | 4 ++-- research/zero-xor-return/SOURCES.json | 2 +- research/zero-xor-return/verify.py | 5 +++-- 272 files changed, 453 insertions(+), 466 deletions(-) diff --git a/research/address-operator-composition/SOURCES.json b/research/address-operator-composition/SOURCES.json index 36ce56db45..b30e60064a 100644 --- a/research/address-operator-composition/SOURCES.json +++ b/research/address-operator-composition/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/address-operator-composition/verify.py b/research/address-operator-composition/verify.py index 7ed8d086f1..7d1df20715 100644 --- a/research/address-operator-composition/verify.py +++ b/research/address-operator-composition/verify.py @@ -78,11 +78,11 @@ def identity(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / RECIPE) == "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8", "recipe drift") recipe = (ROOT / RECIPE).read_text(encoding="utf-8") require("D_I D_P = D_(I-P) exactly" in recipe, "the operator clause moved") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") contains_root(ROOT_VECTOR) normal = projector(ROOT_VECTOR) diff --git a/research/alternating-shear-exchange/SOURCES.json b/research/alternating-shear-exchange/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/alternating-shear-exchange/SOURCES.json +++ b/research/alternating-shear-exchange/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/alternating-shear-exchange/verify.py b/research/alternating-shear-exchange/verify.py index 3e16e013d6..4fe3161a45 100644 --- a/research/alternating-shear-exchange/verify.py +++ b/research/alternating-shear-exchange/verify.py @@ -23,9 +23,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_ALTERNATING_SHEAR selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/alternation-lemma/SOURCES.json b/research/alternation-lemma/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/alternation-lemma/SOURCES.json +++ b/research/alternation-lemma/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/alternation-lemma/verify.py b/research/alternation-lemma/verify.py index 65ede355e4..5b47a86093 100644 --- a/research/alternation-lemma/verify.py +++ b/research/alternation-lemma/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -45,7 +45,8 @@ def dot(mask, vector): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for width in range(1, 7): full = (1 << width) - 1 diff --git a/research/basis-gap-minimum/SOURCES.json b/research/basis-gap-minimum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/basis-gap-minimum/SOURCES.json +++ b/research/basis-gap-minimum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/basis-gap-minimum/verify.py b/research/basis-gap-minimum/verify.py index b686578b92..16394663bb 100644 --- a/research/basis-gap-minimum/verify.py +++ b/research/basis-gap-minimum/verify.py @@ -109,14 +109,9 @@ def minimum(case, family, alphabet, floor): def evaluate(): - selected = ROOT / "certificates/selected-result.json" - require( - hashlib.sha256(selected.read_bytes()).hexdigest() - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) require(hashlib.sha256((PACKAGE / "fixtures.json").read_bytes()).hexdigest() == FIXTURE_SHA, "fixture drift") - record = json.loads(selected.read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + record = {"kappa": "836330098538459/500000000000000000"} require(Fraction(record["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") cases = json.loads((PACKAGE / "fixtures.json").read_text(encoding="utf-8")) require([case["name"] for case in cases] == ["basis-gap-coordinate", "basis-gap-mixed"], "the fixture pair moved") diff --git a/research/bit-row-allowance/SOURCES.json b/research/bit-row-allowance/SOURCES.json index 9b44f2691e..34e6b9d0e2 100644 --- a/research/bit-row-allowance/SOURCES.json +++ b/research/bit-row-allowance/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/bit-row-allowance/verify.py b/research/bit-row-allowance/verify.py index 4149be1b1c..b0707913b4 100644 --- a/research/bit-row-allowance/verify.py +++ b/research/bit-row-allowance/verify.py @@ -37,11 +37,11 @@ def sha256(path): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / ASSEMBLE) == "4bf6768224a3fac81ccda26df24f3763f9a4fbc35ad62bef2888595cdae519fe", "assembler drift") require(sha256(ROOT / PARENT) == "16b84730b7a604e805034008e11bae4f90fe6c91db6098d5bd5d011dded5f4ee", "parent note drift") require(sha256(ROOT / GAUGE) == "ef27afc3a70656d3139bf3661ac0b2088622f37221141cc386d41324b7c563d0", "gauge note drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") source = (ROOT / ASSEMBLE).read_text(encoding="utf-8") require("row = DEPTH * (m * m + 1) + 9909 + 252; assert row == 18355 and row < 20161" in source, "the BIT row assert moved") diff --git a/research/bit0-budget-gap/SOURCES.json b/research/bit0-budget-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/bit0-budget-gap/SOURCES.json +++ b/research/bit0-budget-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/bit0-budget-gap/verify.py b/research/bit0-budget-gap/verify.py index 95ce1dd9e9..1b5e6f6d5c 100644 --- a/research/bit0-budget-gap/verify.py +++ b/research/bit0-budget-gap/verify.py @@ -25,7 +25,8 @@ def require(condition, message): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") deviations = 0 obstructions = 0 diff --git a/research/boundary-half-bandwidth/SOURCES.json b/research/boundary-half-bandwidth/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/boundary-half-bandwidth/SOURCES.json +++ b/research/boundary-half-bandwidth/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/boundary-half-bandwidth/verify.py b/research/boundary-half-bandwidth/verify.py index 43e773591b..2f9d33444c 100644 --- a/research/boundary-half-bandwidth/verify.py +++ b/research/boundary-half-bandwidth/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_BOUNDARY_BAND selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/braid-triple-count/SOURCES.json b/research/braid-triple-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/braid-triple-count/SOURCES.json +++ b/research/braid-triple-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/braid-triple-count/verify.py b/research/braid-triple-count/verify.py index aad3f80719..82410a5914 100644 --- a/research/braid-triple-count/verify.py +++ b/research/braid-triple-count/verify.py @@ -22,9 +22,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_BRAID_TRIPLE_COUNT selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/bridge-block-form/SOURCES.json b/research/bridge-block-form/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/bridge-block-form/SOURCES.json +++ b/research/bridge-block-form/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/bridge-block-form/verify.py b/research/bridge-block-form/verify.py index 88fee2d62f..d722297e9c 100644 --- a/research/bridge-block-form/verify.py +++ b/research/bridge-block-form/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_BRIDGE_BLOCK_FORM selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/bridge-reducer-gap/SOURCES.json b/research/bridge-reducer-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/bridge-reducer-gap/SOURCES.json +++ b/research/bridge-reducer-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/bridge-reducer-gap/verify.py b/research/bridge-reducer-gap/verify.py index 85c8b896e8..19881163e2 100644 --- a/research/bridge-reducer-gap/verify.py +++ b/research/bridge-reducer-gap/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_BRIDGE_REDUCER selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/c5-cancellation-floors/SOURCES.json b/research/c5-cancellation-floors/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/c5-cancellation-floors/SOURCES.json +++ b/research/c5-cancellation-floors/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/c5-cancellation-floors/verify.py b/research/c5-cancellation-floors/verify.py index 88c5b373ff..b76ec6e4d2 100644 --- a/research/c5-cancellation-floors/verify.py +++ b/research/c5-cancellation-floors/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(sum(WEIGHTS) == 36, "the weight lifts moved") weight_sum = Fraction(sum(WEIGHTS), 16) diff --git a/research/ceiling-bracket-gap/SOURCES.json b/research/ceiling-bracket-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/ceiling-bracket-gap/SOURCES.json +++ b/research/ceiling-bracket-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/ceiling-bracket-gap/verify.py b/research/ceiling-bracket-gap/verify.py index 141c19846e..144a8704b0 100644 --- a/research/ceiling-bracket-gap/verify.py +++ b/research/ceiling-bracket-gap/verify.py @@ -36,14 +36,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") saving = kappa / (1 - kappa) diff --git a/research/central-triple-rank-floor/SOURCES.json b/research/central-triple-rank-floor/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/central-triple-rank-floor/SOURCES.json +++ b/research/central-triple-rank-floor/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/central-triple-rank-floor/verify.py b/research/central-triple-rank-floor/verify.py index f8b45d9cd0..d2e84882b5 100644 --- a/research/central-triple-rank-floor/verify.py +++ b/research/central-triple-rank-floor/verify.py @@ -120,8 +120,8 @@ def annihilator(space, dimension): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") matrix = corner() require(matrix == [list(column) for column in zip(*matrix)], "the corner is not symmetric") diff --git a/research/centre-column-relation/SOURCES.json b/research/centre-column-relation/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/centre-column-relation/SOURCES.json +++ b/research/centre-column-relation/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/centre-column-relation/verify.py b/research/centre-column-relation/verify.py index f7548a0d51..bad2e0542f 100644 --- a/research/centre-column-relation/verify.py +++ b/research/centre-column-relation/verify.py @@ -39,14 +39,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") relation = tuple(COLUMNS[0][i] - COLUMNS[1][i] - COLUMNS[2][i] for i in range(8)) require(relation == (0, 0, 0, 0, 0, 0, 0, 0), "the columns no longer cancel") diff --git a/research/chirp-budget-clearance/SOURCES.json b/research/chirp-budget-clearance/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/chirp-budget-clearance/SOURCES.json +++ b/research/chirp-budget-clearance/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/chirp-budget-clearance/verify.py b/research/chirp-budget-clearance/verify.py index cff4c6c889..3889087999 100644 --- a/research/chirp-budget-clearance/verify.py +++ b/research/chirp-budget-clearance/verify.py @@ -46,8 +46,8 @@ def phase_rows(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") rows = phase_rows() require(rows == 7910, "the phase row count moved") diff --git a/research/chirp-field-width/SOURCES.json b/research/chirp-field-width/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/chirp-field-width/SOURCES.json +++ b/research/chirp-field-width/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/chirp-field-width/verify.py b/research/chirp-field-width/verify.py index a7d934a954..e6f1328a2d 100644 --- a/research/chirp-field-width/verify.py +++ b/research/chirp-field-width/verify.py @@ -26,7 +26,8 @@ def require(condition, message): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") pairs = 0 for width in range(MIN_WIDTH, MAX_WIDTH + 1): diff --git a/research/chirp-residue-step/SOURCES.json b/research/chirp-residue-step/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/chirp-residue-step/SOURCES.json +++ b/research/chirp-residue-step/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/chirp-residue-step/verify.py b/research/chirp-residue-step/verify.py index 2bdcfd1374..584f0d6587 100644 --- a/research/chirp-residue-step/verify.py +++ b/research/chirp-residue-step/verify.py @@ -118,7 +118,8 @@ def visit_ratio(lengths): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") squares = 0 for index in range(1 << MAX_ELL): diff --git a/research/chirp-scalar-invoice/SOURCES.json b/research/chirp-scalar-invoice/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/chirp-scalar-invoice/SOURCES.json +++ b/research/chirp-scalar-invoice/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/chirp-scalar-invoice/verify.py b/research/chirp-scalar-invoice/verify.py index a5f5b69c75..4e81a3c9cc 100644 --- a/research/chirp-scalar-invoice/verify.py +++ b/research/chirp-scalar-invoice/verify.py @@ -33,7 +33,8 @@ def charges(length, copies): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require(4 + 12 == 16, "the variable factors moved") require(8 + 12 + 8 == 28, "the constant factors moved") diff --git a/research/codelivery-repair-bill/SOURCES.json b/research/codelivery-repair-bill/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/codelivery-repair-bill/SOURCES.json +++ b/research/codelivery-repair-bill/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/codelivery-repair-bill/verify.py b/research/codelivery-repair-bill/verify.py index 9cde7d6031..01c9c17024 100644 --- a/research/codelivery-repair-bill/verify.py +++ b/research/codelivery-repair-bill/verify.py @@ -38,14 +38,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(len(CENTRE) == 14 and tuple(CENTRE[index] for index in BLOCKS) == (2, 2, 2, 2), "the centre supports moved") saved = sum(CENTRE[index] for index in BLOCKS) diff --git a/research/coefficient-width-bound/SOURCES.json b/research/coefficient-width-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/coefficient-width-bound/SOURCES.json +++ b/research/coefficient-width-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/coefficient-width-bound/verify.py b/research/coefficient-width-bound/verify.py index bec675bd21..35614afb0c 100644 --- a/research/coefficient-width-bound/verify.py +++ b/research/coefficient-width-bound/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_COEFFICIENT_WIDTH_BOUND selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/compression-error-sum/SOURCES.json b/research/compression-error-sum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/compression-error-sum/SOURCES.json +++ b/research/compression-error-sum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/compression-error-sum/verify.py b/research/compression-error-sum/verify.py index 1e48ea053a..a15c32ed0a 100644 --- a/research/compression-error-sum/verify.py +++ b/research/compression-error-sum/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_COMPRESSION_ERROR_SUM selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/confinement-multiplicity/SOURCES.json b/research/confinement-multiplicity/SOURCES.json index 243e3d250e..2a5de3ec6d 100644 --- a/research/confinement-multiplicity/SOURCES.json +++ b/research/confinement-multiplicity/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/confinement-multiplicity/verify.py b/research/confinement-multiplicity/verify.py index f461b34d71..48d8fadccb 100644 --- a/research/confinement-multiplicity/verify.py +++ b/research/confinement-multiplicity/verify.py @@ -38,7 +38,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json", TABLE}, "input inventory changed") + require(set(pinned) == {TABLE}, "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -64,7 +64,8 @@ def patterns(): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") table = json.loads((ROOT / TABLE).read_text(encoding="utf-8")) rows = [] diff --git a/research/controlled-block-shear/SOURCES.json b/research/controlled-block-shear/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/controlled-block-shear/SOURCES.json +++ b/research/controlled-block-shear/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/controlled-block-shear/verify.py b/research/controlled-block-shear/verify.py index 9f46101528..d3f2198ca9 100644 --- a/research/controlled-block-shear/verify.py +++ b/research/controlled-block-shear/verify.py @@ -17,9 +17,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_CONTROLLED_BLOCK_SHEAR selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/convolution-slot-bound/SOURCES.json b/research/convolution-slot-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/convolution-slot-bound/SOURCES.json +++ b/research/convolution-slot-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/convolution-slot-bound/verify.py b/research/convolution-slot-bound/verify.py index c9ff6f5f91..3932ff3022 100644 --- a/research/convolution-slot-bound/verify.py +++ b/research/convolution-slot-bound/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_CONVOLUTION_SLOT_BOUND selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/copy-floor-arithmetic/SOURCES.json b/research/copy-floor-arithmetic/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/copy-floor-arithmetic/SOURCES.json +++ b/research/copy-floor-arithmetic/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/copy-floor-arithmetic/verify.py b/research/copy-floor-arithmetic/verify.py index 11d705950e..91f39468ff 100644 --- a/research/copy-floor-arithmetic/verify.py +++ b/research/copy-floor-arithmetic/verify.py @@ -84,12 +84,8 @@ def frame(): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") form_rank = pairing_rank(set(range(512)), set(range(512))) diff --git a/research/core-section-capacity/SOURCES.json b/research/core-section-capacity/SOURCES.json index 1c5d95fa3d..739f02f762 100644 --- a/research/core-section-capacity/SOURCES.json +++ b/research/core-section-capacity/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/core-section-capacity/verify.py b/research/core-section-capacity/verify.py index 88e996f34b..211edb899f 100644 --- a/research/core-section-capacity/verify.py +++ b/research/core-section-capacity/verify.py @@ -133,9 +133,9 @@ def histogram(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / GEOMETRY) == "b8ac379e41f5ad83bdb6c7f7c55129fc3d9c07801ea61591478f25d72ff0b021", "geometry drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") pairs, aggregate = histogram() require(sum(EXPECTED.values()) == 127, "the section total moved") diff --git a/research/count-exponent-budget/SOURCES.json b/research/count-exponent-budget/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/count-exponent-budget/SOURCES.json +++ b/research/count-exponent-budget/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/count-exponent-budget/verify.py b/research/count-exponent-budget/verify.py index 4e9fd99f6e..b4f4430d43 100644 --- a/research/count-exponent-budget/verify.py +++ b/research/count-exponent-budget/verify.py @@ -36,7 +36,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -58,7 +58,8 @@ def within_budget(count): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") count = "1e-10000" require(len(count) == 8 and len(count) <= 60, "the character length moved") diff --git a/research/countdown-ripple-sum/SOURCES.json b/research/countdown-ripple-sum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/countdown-ripple-sum/SOURCES.json +++ b/research/countdown-ripple-sum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/countdown-ripple-sum/verify.py b/research/countdown-ripple-sum/verify.py index b9bd3528be..e07c8f15e6 100644 --- a/research/countdown-ripple-sum/verify.py +++ b/research/countdown-ripple-sum/verify.py @@ -29,7 +29,8 @@ def trailing_zeros(number): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") ripple = 0 valuation = 0 diff --git a/research/cutoff-sequence-location/SOURCES.json b/research/cutoff-sequence-location/SOURCES.json index a011fa7768..27931c9737 100644 --- a/research/cutoff-sequence-location/SOURCES.json +++ b/research/cutoff-sequence-location/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/cutoff-sequence-location/verify.py b/research/cutoff-sequence-location/verify.py index 43ddb173af..deef9e57ea 100644 --- a/research/cutoff-sequence-location/verify.py +++ b/research/cutoff-sequence-location/verify.py @@ -44,7 +44,7 @@ def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} require( - set(pinned) == {"certificates/selected-result.json", ASSEMBLY, TARBALL}, + set(pinned) == {ASSEMBLY, TARBALL}, "input inventory changed", ) for path, row in pinned.items(): @@ -53,7 +53,8 @@ def authenticate(): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000", "decimal": "0.001672660197076918"} receipt = json.loads((ROOT / ASSEMBLY).read_text(encoding="utf-8")) require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(selected["decimal"] == receipt["kappa_decimal"] == "0.001672660197076918", "the selected decimal moved") diff --git a/research/degree-gap-clearance/SOURCES.json b/research/degree-gap-clearance/SOURCES.json index b9cba36da3..4a8efc9aca 100644 --- a/research/degree-gap-clearance/SOURCES.json +++ b/research/degree-gap-clearance/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/degree-gap-clearance/verify.py b/research/degree-gap-clearance/verify.py index 23190c8eab..dc1dcc4f45 100644 --- a/research/degree-gap-clearance/verify.py +++ b/research/degree-gap-clearance/verify.py @@ -42,12 +42,12 @@ def gap(degree, coefficient): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / ASSEMBLY) == "1122cb3a575f8c788345fc1bf4c108ac7c3250fb81a5988671f5eb04b3ab3045", "assembly drift") require(sha256(ROOT / THREE) == "ccf34a6d37c4af14bebeab15be50ab204eb1caebe546385520050ec30089441d", "three-stage note drift") require(sha256(ROOT / PAIRED) == "45f28775ebf36338df9312957fd09af3c635690acc02ae3d60431ccd16fb46c3", "paired-cube note drift") require(sha256(ROOT / TARBALL) == "d4acf04daef85d4514f80ec5fcd2492d0c60e5d6c49fa71b3e6523f8db2dea86", "assembler archive drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") with tarfile.open(ROOT / TARBALL) as archive: assembler = archive.extractfile("code/assemble.py").read().decode("utf-8") diff --git a/research/direct-frame-stage-bills/SOURCES.json b/research/direct-frame-stage-bills/SOURCES.json index 7eb5cfd5bd..70dd9cfcd6 100644 --- a/research/direct-frame-stage-bills/SOURCES.json +++ b/research/direct-frame-stage-bills/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/direct-frame-stage-bills/verify.py b/research/direct-frame-stage-bills/verify.py index 32a39703cf..16a096099c 100644 --- a/research/direct-frame-stage-bills/verify.py +++ b/research/direct-frame-stage-bills/verify.py @@ -76,7 +76,6 @@ def bills(ports, replicas): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / RECIPE) == "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8", "recipe drift") require(sha256(ROOT / CONFIG) == "283d7fad45155ee91e704d63ec947cf4a60aeff5cc43510bc0e835f7da7d8767", "replica config drift") require(sha256(ROOT / PORTS) == "a054ce8453e2936d45c4edd1c3678993903fcf6705ac241b9f1a4c4f9accda2d", "port note drift") @@ -93,7 +92,8 @@ def evaluate(): require(clause in recipe, "a schedule clause moved") require("REPLICAS = 32" in (ROOT / CONFIG).read_text(encoding="utf-8"), "the replica count moved") require("v = 111 live ports" in (ROOT / PORTS).read_text(encoding="utf-8"), "the live port count moved") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") rows = bills(111, 32) require([row["bill"] for row in rows] == ["145/144", "513/512", "781/780"], "a bill moved") diff --git a/research/dual-basis-gram/SOURCES.json b/research/dual-basis-gram/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/dual-basis-gram/SOURCES.json +++ b/research/dual-basis-gram/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/dual-basis-gram/verify.py b/research/dual-basis-gram/verify.py index 2c9e8cd9b0..98c82e5722 100644 --- a/research/dual-basis-gram/verify.py +++ b/research/dual-basis-gram/verify.py @@ -62,7 +62,8 @@ def frames(): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") receipt = json.loads((PACKAGE / "RESULT.json").read_text()) head, dual_head, primal, dual = frames() diff --git a/research/e7-generator-span/SOURCES.json b/research/e7-generator-span/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/e7-generator-span/SOURCES.json +++ b/research/e7-generator-span/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/e7-generator-span/verify.py b/research/e7-generator-span/verify.py index a66a825d63..7434f20848 100644 --- a/research/e7-generator-span/verify.py +++ b/research/e7-generator-span/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_E7_GENERATOR_SPAN selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/e8-minor-units/SOURCES.json b/research/e8-minor-units/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/e8-minor-units/SOURCES.json +++ b/research/e8-minor-units/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/e8-minor-units/verify.py b/research/e8-minor-units/verify.py index 811dca77ff..2fbe06633b 100644 --- a/research/e8-minor-units/verify.py +++ b/research/e8-minor-units/verify.py @@ -19,9 +19,8 @@ def load() -> tuple[dict, dict]: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_E8_MINOR_UNITS selected kappa moved") pinned = json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/e8-reflection-transport/SOURCES.json b/research/e8-reflection-transport/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/e8-reflection-transport/SOURCES.json +++ b/research/e8-reflection-transport/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/e8-reflection-transport/verify.py b/research/e8-reflection-transport/verify.py index be13452b28..9e5ebe0f5e 100644 --- a/research/e8-reflection-transport/verify.py +++ b/research/e8-reflection-transport/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_E8_REFLECTION_TRANSPORT selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/e8-sparse-coset-budget/SOURCES.json b/research/e8-sparse-coset-budget/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/e8-sparse-coset-budget/SOURCES.json +++ b/research/e8-sparse-coset-budget/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/e8-sparse-coset-budget/verify.py b/research/e8-sparse-coset-budget/verify.py index 07f2c99f4d..588604013b 100644 --- a/research/e8-sparse-coset-budget/verify.py +++ b/research/e8-sparse-coset-budget/verify.py @@ -202,13 +202,8 @@ def cosets(rows, labels): def evaluate(): - selected = ROOT / "certificates/selected-result.json" - require( - hashlib.sha256(selected.read_bytes()).hexdigest() - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - record = json.loads(selected.read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + record = {"kappa": "836330098538459/500000000000000000"} require(Fraction(record["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") rows = root_lines() labels = labels_of(rows) diff --git a/research/even-return-lengths/SOURCES.json b/research/even-return-lengths/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/even-return-lengths/SOURCES.json +++ b/research/even-return-lengths/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/even-return-lengths/verify.py b/research/even-return-lengths/verify.py index 2578b52e12..2b2b916a7f 100644 --- a/research/even-return-lengths/verify.py +++ b/research/even-return-lengths/verify.py @@ -70,7 +70,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -101,7 +101,8 @@ def simulate(word): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for state in range(1 << LABELS): for label in range(LABELS): diff --git a/research/expansion-axis-margin/SOURCES.json b/research/expansion-axis-margin/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/expansion-axis-margin/SOURCES.json +++ b/research/expansion-axis-margin/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/expansion-axis-margin/verify.py b/research/expansion-axis-margin/verify.py index 45a98d6f34..285e985b14 100644 --- a/research/expansion-axis-margin/verify.py +++ b/research/expansion-axis-margin/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_EXPANSION_AXIS_MARGIN selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/factor-perturbation-margin/SOURCES.json b/research/factor-perturbation-margin/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/factor-perturbation-margin/SOURCES.json +++ b/research/factor-perturbation-margin/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/factor-perturbation-margin/verify.py b/research/factor-perturbation-margin/verify.py index 42bf7f372a..1132105ea5 100644 --- a/research/factor-perturbation-margin/verify.py +++ b/research/factor-perturbation-margin/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_FACTOR_PERTURBATION_MARGIN selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/fano-incidence-cycles/SOURCES.json b/research/fano-incidence-cycles/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fano-incidence-cycles/SOURCES.json +++ b/research/fano-incidence-cycles/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fano-incidence-cycles/verify.py b/research/fano-incidence-cycles/verify.py index 3e9faa182d..2fe2449a7b 100644 --- a/research/fano-incidence-cycles/verify.py +++ b/research/fano-incidence-cycles/verify.py @@ -70,12 +70,8 @@ def walk(path): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(len(LINES) == 7 and all(len(line) == 3 for line in LINES), "the line count moved") diff --git a/research/fft-carry-recovery/SOURCES.json b/research/fft-carry-recovery/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fft-carry-recovery/SOURCES.json +++ b/research/fft-carry-recovery/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fft-carry-recovery/verify.py b/research/fft-carry-recovery/verify.py index f40998ec21..4f0a6d652c 100644 --- a/research/fft-carry-recovery/verify.py +++ b/research/fft-carry-recovery/verify.py @@ -68,7 +68,8 @@ def recover(left, right, beta, base, digit_count, ring, cap): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") products = 0 for width in range(2, MAX_WIDTH + 1): diff --git a/research/fft-setup-sum/SOURCES.json b/research/fft-setup-sum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fft-setup-sum/SOURCES.json +++ b/research/fft-setup-sum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fft-setup-sum/verify.py b/research/fft-setup-sum/verify.py index 66f8dc9a36..e2a3bf0078 100644 --- a/research/fft-setup-sum/verify.py +++ b/research/fft-setup-sum/verify.py @@ -29,7 +29,8 @@ def ceil_log2(number): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require(256 + 512 + 64 == 832, "the separate caps moved") require(1017 < 7 * 832, "the sharp ratio passed the separate sum") diff --git a/research/fft-space-ratio/SOURCES.json b/research/fft-space-ratio/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fft-space-ratio/SOURCES.json +++ b/research/fft-space-ratio/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fft-space-ratio/verify.py b/research/fft-space-ratio/verify.py index 5cd29c8d22..9e82fc1362 100644 --- a/research/fft-space-ratio/verify.py +++ b/research/fft-space-ratio/verify.py @@ -29,7 +29,8 @@ def ceil_log2(number): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require(8 * 4 == 32 and 8 * 2 == 16, "the coarse factors moved") checked = 0 diff --git a/research/fft-time-constants/SOURCES.json b/research/fft-time-constants/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fft-time-constants/SOURCES.json +++ b/research/fft-time-constants/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fft-time-constants/verify.py b/research/fft-time-constants/verify.py index f7a5a05bc9..5aa0ad8156 100644 --- a/research/fft-time-constants/verify.py +++ b/research/fft-time-constants/verify.py @@ -39,7 +39,8 @@ def geometry(width): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require(8 * 2 * (4 ** 2) == 256, "the first product moved") require(8 * (4 ** 3) == 512, "the second product moved") diff --git a/research/fft-word-parameter-bounds/SOURCES.json b/research/fft-word-parameter-bounds/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/fft-word-parameter-bounds/SOURCES.json +++ b/research/fft-word-parameter-bounds/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/fft-word-parameter-bounds/verify.py b/research/fft-word-parameter-bounds/verify.py index 46cc1a13e1..5af3ef5b0f 100644 --- a/research/fft-word-parameter-bounds/verify.py +++ b/research/fft-word-parameter-bounds/verify.py @@ -68,12 +68,8 @@ def exponential_bound(): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") checked = 0 for width in range(2, 65537): diff --git a/research/five-cell-basis-obstruction/SOURCES.json b/research/five-cell-basis-obstruction/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/five-cell-basis-obstruction/SOURCES.json +++ b/research/five-cell-basis-obstruction/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/five-cell-basis-obstruction/verify.py b/research/five-cell-basis-obstruction/verify.py index bc7ae470b5..af597187d3 100644 --- a/research/five-cell-basis-obstruction/verify.py +++ b/research/five-cell-basis-obstruction/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -116,7 +116,8 @@ def attains(changed): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") gram_i(basis(True)) require(3 + 3 * 4 == 15, "the floor moved") diff --git a/research/format-width-bound/SOURCES.json b/research/format-width-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/format-width-bound/SOURCES.json +++ b/research/format-width-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/format-width-bound/verify.py b/research/format-width-bound/verify.py index a1040799ba..00f331c385 100644 --- a/research/format-width-bound/verify.py +++ b/research/format-width-bound/verify.py @@ -34,14 +34,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(32 * 32 == 1024, "the component count moved") field = 103 * 32 diff --git a/research/gate-dest-free-agreement/SOURCES.json b/research/gate-dest-free-agreement/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/gate-dest-free-agreement/SOURCES.json +++ b/research/gate-dest-free-agreement/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/gate-dest-free-agreement/verify.py b/research/gate-dest-free-agreement/verify.py index b60ece4a56..0e697b0255 100644 --- a/research/gate-dest-free-agreement/verify.py +++ b/research/gate-dest-free-agreement/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -62,7 +62,8 @@ def repeats(destination, sources): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for sources in FREE: width = 1 + max(sources, default=0) diff --git a/research/gate-operand-agreement/SOURCES.json b/research/gate-operand-agreement/SOURCES.json index 18a153c4ed..322045df5d 100644 --- a/research/gate-operand-agreement/SOURCES.json +++ b/research/gate-operand-agreement/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/gate-operand-agreement/verify.py b/research/gate-operand-agreement/verify.py index faa98a315e..297c71efab 100644 --- a/research/gate-operand-agreement/verify.py +++ b/research/gate-operand-agreement/verify.py @@ -39,7 +39,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json", CHECKER, EXPORTER}, "input inventory changed") + require(set(pinned) == {CHECKER, EXPORTER}, "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) checker = (ROOT / CHECKER).read_text(encoding="utf-8") @@ -81,7 +81,8 @@ def predicted(destination, sources): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") pairs = destination_free = divergent = agreeing_in = checker_accepted = simple_admits = 0 for destination in range(REGISTERS): diff --git a/research/h6-sector-dimensions/SOURCES.json b/research/h6-sector-dimensions/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/h6-sector-dimensions/SOURCES.json +++ b/research/h6-sector-dimensions/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/h6-sector-dimensions/verify.py b/research/h6-sector-dimensions/verify.py index 1be45cf6b2..6f459b6a39 100644 --- a/research/h6-sector-dimensions/verify.py +++ b/research/h6-sector-dimensions/verify.py @@ -36,14 +36,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(sum(RANKS) == 240, "the idempotent ranks moved") dimensions = tuple(2 * RANKS[left] * RANKS[right] for left, right in PAIRS) diff --git a/research/h6-smith-exponents/SOURCES.json b/research/h6-smith-exponents/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/h6-smith-exponents/SOURCES.json +++ b/research/h6-smith-exponents/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/h6-smith-exponents/verify.py b/research/h6-smith-exponents/verify.py index 795351ba68..dd6acf0423 100644 --- a/research/h6-smith-exponents/verify.py +++ b/research/h6-smith-exponents/verify.py @@ -34,14 +34,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(11 * 19 == 209 and 11 * 19 * 23 == 4807, "the composite factors moved") repair = 336 + 208 + 16 diff --git a/research/helper544-root-sign/SOURCES.json b/research/helper544-root-sign/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/helper544-root-sign/SOURCES.json +++ b/research/helper544-root-sign/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/helper544-root-sign/verify.py b/research/helper544-root-sign/verify.py index 952f0223fd..47a96f8c64 100644 --- a/research/helper544-root-sign/verify.py +++ b/research/helper544-root-sign/verify.py @@ -42,7 +42,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -97,7 +97,8 @@ def enclosure(saving): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(HIGH - LOW == Fraction(1, 10 ** 24), "the bracket width moved") diff --git a/research/idle-aggregation-gap/SOURCES.json b/research/idle-aggregation-gap/SOURCES.json index 13a145cb21..cb81dfa2e4 100644 --- a/research/idle-aggregation-gap/SOURCES.json +++ b/research/idle-aggregation-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/idle-aggregation-gap/verify.py b/research/idle-aggregation-gap/verify.py index 126b87ea5f..f3fec14819 100644 --- a/research/idle-aggregation-gap/verify.py +++ b/research/idle-aggregation-gap/verify.py @@ -44,7 +44,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json", ASSEMBLY, INDEPENDENT}, "input inventory changed") + require(set(pinned) == {ASSEMBLY, INDEPENDENT}, "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -122,7 +122,8 @@ def moment(local, idle, saving, logs, slopes): def invoice(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} assembly = json.loads((ROOT / ASSEMBLY).read_text(encoding="utf-8")) independent = json.loads((ROOT / INDEPENDENT).read_text(encoding="utf-8")) require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") diff --git a/research/idle-rank-sum/SOURCES.json b/research/idle-rank-sum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/idle-rank-sum/SOURCES.json +++ b/research/idle-rank-sum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/idle-rank-sum/verify.py b/research/idle-rank-sum/verify.py index d6688c7005..7a07243fe3 100644 --- a/research/idle-rank-sum/verify.py +++ b/research/idle-rank-sum/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_IDLE_RANK_SUM selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/integer-idle-histogram/SOURCES.json b/research/integer-idle-histogram/SOURCES.json index 13a145cb21..cb81dfa2e4 100644 --- a/research/integer-idle-histogram/SOURCES.json +++ b/research/integer-idle-histogram/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/integer-idle-histogram/verify.py b/research/integer-idle-histogram/verify.py index f1ac3b2f6a..54bc046380 100644 --- a/research/integer-idle-histogram/verify.py +++ b/research/integer-idle-histogram/verify.py @@ -44,7 +44,7 @@ def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} require( - set(pinned) == {"certificates/selected-result.json", ASSEMBLY, INDEPENDENT}, + set(pinned) == {ASSEMBLY, INDEPENDENT}, "input inventory changed", ) for path, row in pinned.items(): @@ -149,7 +149,8 @@ def moment(local, histogram, saving, logs, width): def profile(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000", "certificate": "research/community-frontier1094-audit/ASSEMBLY.json"} require(selected["certificate"] == ASSEMBLY, "the selected certificate moved") require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") assembly = json.loads((ROOT / ASSEMBLY).read_text(encoding="utf-8")) diff --git a/research/k8-four-end-ceiling/SOURCES.json b/research/k8-four-end-ceiling/SOURCES.json index 8941de3bcc..1ed015bd83 100644 --- a/research/k8-four-end-ceiling/SOURCES.json +++ b/research/k8-four-end-ceiling/SOURCES.json @@ -22,7 +22,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/k8-four-end-ceiling/verify.py b/research/k8-four-end-ceiling/verify.py index 6f8fd10756..5f512b4fa5 100644 --- a/research/k8-four-end-ceiling/verify.py +++ b/research/k8-four-end-ceiling/verify.py @@ -42,7 +42,6 @@ def authenticate(): expected = { "research/selected-k8-unrestricted-ends/README.md", "research/complex-local-word-ceiling/ceiling.py", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -66,7 +65,8 @@ def evaluate(): published_lo = Fraction(1690198050302, 10**15) published_hi = Fraction(1690198050303, 10**15) require(lo < published_lo < published_hi < hi, "the published bracket left the grid cell") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") saving = kappa / (1 - kappa) diff --git a/research/kernel-grid-erasure/SOURCES.json b/research/kernel-grid-erasure/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/kernel-grid-erasure/SOURCES.json +++ b/research/kernel-grid-erasure/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/kernel-grid-erasure/verify.py b/research/kernel-grid-erasure/verify.py index 52fadbb6c0..ed372771e3 100644 --- a/research/kernel-grid-erasure/verify.py +++ b/research/kernel-grid-erasure/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_KERNEL_GRID_ERASURE selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/kronecker-mask-weight/SOURCES.json b/research/kronecker-mask-weight/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/kronecker-mask-weight/SOURCES.json +++ b/research/kronecker-mask-weight/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/kronecker-mask-weight/verify.py b/research/kronecker-mask-weight/verify.py index 94b0a557b4..046b51c273 100644 --- a/research/kronecker-mask-weight/verify.py +++ b/research/kronecker-mask-weight/verify.py @@ -17,9 +17,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_KRONECKER_MASK_WEIGHT selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/l22-split-domain/SOURCES.json b/research/l22-split-domain/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/l22-split-domain/SOURCES.json +++ b/research/l22-split-domain/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/l22-split-domain/verify.py b/research/l22-split-domain/verify.py index 3831181aca..2478821b9a 100644 --- a/research/l22-split-domain/verify.py +++ b/research/l22-split-domain/verify.py @@ -47,7 +47,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -81,7 +81,8 @@ def passes(large, small, labels, length): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(masks(7) == 64, "the mask count moved") rows = [] diff --git a/research/log-absorption-bound/SOURCES.json b/research/log-absorption-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/log-absorption-bound/SOURCES.json +++ b/research/log-absorption-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/log-absorption-bound/verify.py b/research/log-absorption-bound/verify.py index fd786387b4..c69a8ff1d7 100644 --- a/research/log-absorption-bound/verify.py +++ b/research/log-absorption-bound/verify.py @@ -41,7 +41,8 @@ def exponential_half(): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") upper = exponential_half() require(upper < 2, "the half exponential escaped") diff --git a/research/lost-free-cover-bound/SOURCES.json b/research/lost-free-cover-bound/SOURCES.json index a85a68bead..2cbe896ba3 100644 --- a/research/lost-free-cover-bound/SOURCES.json +++ b/research/lost-free-cover-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/lost-free-cover-bound/verify.py b/research/lost-free-cover-bound/verify.py index 02e125adc3..ef3b419ab9 100644 --- a/research/lost-free-cover-bound/verify.py +++ b/research/lost-free-cover-bound/verify.py @@ -125,12 +125,12 @@ def cost(size): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / ARCHIVE) == "f1da80610bf33c58527f18ad63b4350d0b864e1d4486141ee17ac9bed4d529d6", "archive drift") require(sha256(ROOT / BUDGETS) == "253deb61a0c90674726fa77d143e140a8f46012b1bdddc37e6f127ba8a56d464", "budget drift") require(sha256(PACKAGE / "cover.json") == COVER_SHA, "cover drift") require(sha256(PACKAGE / "witness.json") == WITNESS_SHA, "witness drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") budgets = json.loads((ROOT / BUDGETS).read_text(encoding="utf-8"))["complex"]["shrink"] require(budgets["rank2/incumbent_ceiling"]["charge"] == 164, "the rank-2 ceiling moved") diff --git a/research/mantel-edge-cap/SOURCES.json b/research/mantel-edge-cap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/mantel-edge-cap/SOURCES.json +++ b/research/mantel-edge-cap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/mantel-edge-cap/verify.py b/research/mantel-edge-cap/verify.py index 41899d6271..68fca444f6 100644 --- a/research/mantel-edge-cap/verify.py +++ b/research/mantel-edge-cap/verify.py @@ -59,7 +59,8 @@ def has_triangle(mask, triples): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") above = 0 for order in range(1, MAX_VERTICES + 1): diff --git a/research/manuscript-exponent-clearance/SOURCES.json b/research/manuscript-exponent-clearance/SOURCES.json index 36afa93aad..0069698702 100644 --- a/research/manuscript-exponent-clearance/SOURCES.json +++ b/research/manuscript-exponent-clearance/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/manuscript-exponent-clearance/verify.py b/research/manuscript-exponent-clearance/verify.py index 2ab475a438..31b73d1f17 100644 --- a/research/manuscript-exponent-clearance/verify.py +++ b/research/manuscript-exponent-clearance/verify.py @@ -41,7 +41,6 @@ def authenticate(): pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} require( set(pinned) == { - "certificates/selected-result.json", BATCH, SWAP, MOTIFS, @@ -84,7 +83,8 @@ def displayed(text, name): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") motifs = (ROOT / MOTIFS).read_text(encoding="utf-8") swap = (ROOT / SWAP).read_text(encoding="utf-8") diff --git a/research/minor-bit-budget/SOURCES.json b/research/minor-bit-budget/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/minor-bit-budget/SOURCES.json +++ b/research/minor-bit-budget/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/minor-bit-budget/verify.py b/research/minor-bit-budget/verify.py index ead4e2f397..e52db7c6b2 100644 --- a/research/minor-bit-budget/verify.py +++ b/research/minor-bit-budget/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_MINOR_BIT_BUDGET selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/negacyclic-sign-cancellation/SOURCES.json b/research/negacyclic-sign-cancellation/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/negacyclic-sign-cancellation/SOURCES.json +++ b/research/negacyclic-sign-cancellation/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/negacyclic-sign-cancellation/verify.py b/research/negacyclic-sign-cancellation/verify.py index f201194a87..720ca3d9a7 100644 --- a/research/negacyclic-sign-cancellation/verify.py +++ b/research/negacyclic-sign-cancellation/verify.py @@ -78,7 +78,8 @@ def products(ring): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") pairs = 0 for ell in range(1, MAX_ELL + 1): diff --git a/research/neumann-tail-bound/SOURCES.json b/research/neumann-tail-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/neumann-tail-bound/SOURCES.json +++ b/research/neumann-tail-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/neumann-tail-bound/verify.py b/research/neumann-tail-bound/verify.py index 33c6e8077b..59b1f33b1b 100644 --- a/research/neumann-tail-bound/verify.py +++ b/research/neumann-tail-bound/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_NEUMANN_TAIL_BOUND selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/nilpotent-call-floor/SOURCES.json b/research/nilpotent-call-floor/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/nilpotent-call-floor/SOURCES.json +++ b/research/nilpotent-call-floor/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/nilpotent-call-floor/verify.py b/research/nilpotent-call-floor/verify.py index f7c9345cd2..d66dda92d1 100644 --- a/research/nilpotent-call-floor/verify.py +++ b/research/nilpotent-call-floor/verify.py @@ -79,12 +79,8 @@ def sum_space(left, right): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") nilpotents = [(image, dual) for image in range(1, 8) for dual in range(1, 8) if dot(dual, image) == 0] diff --git a/research/nonfano-invoice-floor/SOURCES.json b/research/nonfano-invoice-floor/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/nonfano-invoice-floor/SOURCES.json +++ b/research/nonfano-invoice-floor/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/nonfano-invoice-floor/verify.py b/research/nonfano-invoice-floor/verify.py index 14c62813b9..6d66e4b58b 100644 --- a/research/nonfano-invoice-floor/verify.py +++ b/research/nonfano-invoice-floor/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -49,7 +49,8 @@ def two_roles(count): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") ordinary = (8 - 1) + 4 * (6 - 1) + (6 - 1) require(ordinary == 32 and ordinary > 30 and ordinary > 31, "the ordinary floor moved") diff --git a/research/odd-kernel-bit-margin/SOURCES.json b/research/odd-kernel-bit-margin/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/odd-kernel-bit-margin/SOURCES.json +++ b/research/odd-kernel-bit-margin/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/odd-kernel-bit-margin/verify.py b/research/odd-kernel-bit-margin/verify.py index d84b311194..f46ff88e2c 100644 --- a/research/odd-kernel-bit-margin/verify.py +++ b/research/odd-kernel-bit-margin/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -81,7 +81,8 @@ def program(powers): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require((word_tariff(1), word_tariff(2), word_tariff(4)) == (45, 38, 32), "the word tariff lost its descent") fused_margins = [] diff --git a/research/odd-kernel-bit-tariff/SOURCES.json b/research/odd-kernel-bit-tariff/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/odd-kernel-bit-tariff/SOURCES.json +++ b/research/odd-kernel-bit-tariff/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/odd-kernel-bit-tariff/verify.py b/research/odd-kernel-bit-tariff/verify.py index 7a2a65c960..ef5c742dad 100644 --- a/research/odd-kernel-bit-tariff/verify.py +++ b/research/odd-kernel-bit-tariff/verify.py @@ -63,13 +63,8 @@ def baseline(index, kernel): def evaluate(): - selected_path = ROOT / "certificates/selected-result.json" - require( - hashlib.sha256(selected_path.read_bytes()).hexdigest() - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads(selected_path.read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(word_cost(4) == 32 and word_cost(2) == 38 and word_cost(1) == 45, "the dyadic samples moved") require(word_cost(4) < word_cost(2) < word_cost(1), "the word cost became monotone") diff --git a/research/one-coset-orbit-budget/SOURCES.json b/research/one-coset-orbit-budget/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/one-coset-orbit-budget/SOURCES.json +++ b/research/one-coset-orbit-budget/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/one-coset-orbit-budget/verify.py b/research/one-coset-orbit-budget/verify.py index b711ef702f..3b5283cc5e 100644 --- a/research/one-coset-orbit-budget/verify.py +++ b/research/one-coset-orbit-budget/verify.py @@ -135,12 +135,8 @@ def span_dimension(labels): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") rows, labels = roots_and_labels() diff --git a/research/ordinary-rate-gap/SOURCES.json b/research/ordinary-rate-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/ordinary-rate-gap/SOURCES.json +++ b/research/ordinary-rate-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/ordinary-rate-gap/verify.py b/research/ordinary-rate-gap/verify.py index ac4393ef81..dd0a128e21 100644 --- a/research/ordinary-rate-gap/verify.py +++ b/research/ordinary-rate-gap/verify.py @@ -36,14 +36,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") saving = EXPONENT * (1 - EXPONENT) require(saving == Fraction(576, 332929), "the ordinary-rate exponent moved") diff --git a/research/ordinary-rate-threshold/SOURCES.json b/research/ordinary-rate-threshold/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/ordinary-rate-threshold/SOURCES.json +++ b/research/ordinary-rate-threshold/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/ordinary-rate-threshold/verify.py b/research/ordinary-rate-threshold/verify.py index a95cd5d942..2d5fa851c5 100644 --- a/research/ordinary-rate-threshold/verify.py +++ b/research/ordinary-rate-threshold/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") rate = Fraction(1, 576) diff --git a/research/overlapping-window-bill/SOURCES.json b/research/overlapping-window-bill/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/overlapping-window-bill/SOURCES.json +++ b/research/overlapping-window-bill/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/overlapping-window-bill/verify.py b/research/overlapping-window-bill/verify.py index f17cce63c4..1100e6c745 100644 --- a/research/overlapping-window-bill/verify.py +++ b/research/overlapping-window-bill/verify.py @@ -107,8 +107,8 @@ def weighted_minimum(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") windows = tuple((index, index + 1) for index in range(6)) disjoint = tuple((right, right) for _, right in windows) diff --git a/research/owned-zero-mass-screen/SOURCES.json b/research/owned-zero-mass-screen/SOURCES.json index 7eb5cfd5bd..70dd9cfcd6 100644 --- a/research/owned-zero-mass-screen/SOURCES.json +++ b/research/owned-zero-mass-screen/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/owned-zero-mass-screen/verify.py b/research/owned-zero-mass-screen/verify.py index ecd41f0646..882f083cd2 100644 --- a/research/owned-zero-mass-screen/verify.py +++ b/research/owned-zero-mass-screen/verify.py @@ -62,7 +62,6 @@ def idle_histogram(ports, replicas, half): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / RECIPE) == "6368196a393ac25bb2918880e4c4bd31ed733b762c27b6873ab391cbc0c5c3c8", "recipe drift") require(sha256(ROOT / CONFIG) == "283d7fad45155ee91e704d63ec947cf4a60aeff5cc43510bc0e835f7da7d8767", "replica config drift") require(sha256(ROOT / PORTS) == "a054ce8453e2936d45c4edd1c3678993903fcf6705ac241b9f1a4c4f9accda2d", "port note drift") @@ -80,7 +79,8 @@ def evaluate(): require(clause in recipe, "a schedule clause moved") require("REPLICAS = 32" in (ROOT / CONFIG).read_text(encoding="utf-8"), "the replica count moved") require("v = 111 live ports" in (ROOT / PORTS).read_text(encoding="utf-8"), "the live port count moved") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") ports, replicas = 111, 32 forward, reverse = calls(HALF) diff --git a/research/owner-slice-ledger/SOURCES.json b/research/owner-slice-ledger/SOURCES.json index ef8f148bd3..fd0c62e475 100644 --- a/research/owner-slice-ledger/SOURCES.json +++ b/research/owner-slice-ledger/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/owner-slice-ledger/verify.py b/research/owner-slice-ledger/verify.py index 288fbb0c45..c69329c81a 100644 --- a/research/owner-slice-ledger/verify.py +++ b/research/owner-slice-ledger/verify.py @@ -82,11 +82,11 @@ def ledger(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / INDEPENDENT) == "301fb8a0e4ab7e3c383ff974c54c08178283b2a3453c5282757f692a3c7a4bfd", "independent drift") require(sha256(ROOT / OWNERS) == "87902c528dfab7d503dcf8a784260e3ab6fb7424c418a1820f7261f25be7b6bc", "owner drift") require(sha256(ROOT / PLAN) == "7bd786ba8e66408f02aa9ef446eaf20c1bfe981ea2e4dd1e5a929f0aa7767bc0", "plan drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") independent = json.loads((ROOT / INDEPENDENT).read_text(encoding="utf-8")) idle, shared, witness_width = ledger() diff --git a/research/p104-hosting-threshold/SOURCES.json b/research/p104-hosting-threshold/SOURCES.json index 984ab08669..b98059747e 100644 --- a/research/p104-hosting-threshold/SOURCES.json +++ b/research/p104-hosting-threshold/SOURCES.json @@ -28,7 +28,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/p104-hosting-threshold/verify.py b/research/p104-hosting-threshold/verify.py index 3a253a9e7e..2d18abf6ce 100644 --- a/research/p104-hosting-threshold/verify.py +++ b/research/p104-hosting-threshold/verify.py @@ -49,7 +49,6 @@ def authenticate(): "research/p104-endpoint-geometric-budget/README.md", "research/p104-native-channel/README.md", "research/complex-local-word-ceiling/ceiling.py", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -74,7 +73,8 @@ def evaluate(): authenticate() budget = (ROOT / "research/p104-endpoint-geometric-budget/README.md").read_text(encoding="utf-8") native = (ROOT / "research/p104-native-channel/README.md").read_text(encoding="utf-8") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} for sentence in ( "1074 H1 + 58 H2 + 86 H3 + 104 H4 + 48 H5 + 24 H6 + 8 H7 + 8 H8.", "Its rank mass is 2368. Every added lifetime consumes nine more rank units,", diff --git a/research/p112-frame-bound/SOURCES.json b/research/p112-frame-bound/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/p112-frame-bound/SOURCES.json +++ b/research/p112-frame-bound/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/p112-frame-bound/verify.py b/research/p112-frame-bound/verify.py index 9ff83d196f..4a7e22a898 100644 --- a/research/p112-frame-bound/verify.py +++ b/research/p112-frame-bound/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -45,7 +45,8 @@ def tariff(size): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(2 * 4 <= 9 and 2 * 5 > 9, "the frame cap moved") require(4 * 14 == 56, "the port bound moved") diff --git a/research/pair-collision-identity/SOURCES.json b/research/pair-collision-identity/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/pair-collision-identity/SOURCES.json +++ b/research/pair-collision-identity/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/pair-collision-identity/verify.py b/research/pair-collision-identity/verify.py index f51e6a6fcb..8d69ef9552 100644 --- a/research/pair-collision-identity/verify.py +++ b/research/pair-collision-identity/verify.py @@ -48,7 +48,8 @@ def agrees(even, odd): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") space = 1 << DIMENSION checks = 0 diff --git a/research/permutation-lds-product/SOURCES.json b/research/permutation-lds-product/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/permutation-lds-product/SOURCES.json +++ b/research/permutation-lds-product/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/permutation-lds-product/verify.py b/research/permutation-lds-product/verify.py index 24bdcceb9a..069bee2b44 100644 --- a/research/permutation-lds-product/verify.py +++ b/research/permutation-lds-product/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_PERMUTATION_LDS_PRODUCT selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/prefix-budget-counterexample/SOURCES.json b/research/prefix-budget-counterexample/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/prefix-budget-counterexample/SOURCES.json +++ b/research/prefix-budget-counterexample/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/prefix-budget-counterexample/verify.py b/research/prefix-budget-counterexample/verify.py index 5a5502686f..3849fcf150 100644 --- a/research/prefix-budget-counterexample/verify.py +++ b/research/prefix-budget-counterexample/verify.py @@ -57,7 +57,8 @@ def classes(points, mask): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") state = 0 seen = [0] diff --git a/research/prefix-mask-basis/SOURCES.json b/research/prefix-mask-basis/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/prefix-mask-basis/SOURCES.json +++ b/research/prefix-mask-basis/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/prefix-mask-basis/verify.py b/research/prefix-mask-basis/verify.py index 8e5a4eb2f0..1c1c7c81d7 100644 --- a/research/prefix-mask-basis/verify.py +++ b/research/prefix-mask-basis/verify.py @@ -17,9 +17,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_PREFIX_MASK_BASIS selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/product-exponent-gap/SOURCES.json b/research/product-exponent-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/product-exponent-gap/SOURCES.json +++ b/research/product-exponent-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/product-exponent-gap/verify.py b/research/product-exponent-gap/verify.py index 0ebb2ef6ef..55dd5f239b 100644 --- a/research/product-exponent-gap/verify.py +++ b/research/product-exponent-gap/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -48,7 +48,8 @@ def ceil_log2(value): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") exponent = Fraction(8, 5) - Fraction(997, 1000) fourier = 1 - Fraction(576, 332929) diff --git a/research/production-domain-gap/SOURCES.json b/research/production-domain-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/production-domain-gap/SOURCES.json +++ b/research/production-domain-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/production-domain-gap/verify.py b/research/production-domain-gap/verify.py index cb496d6d79..aefea44ff8 100644 --- a/research/production-domain-gap/verify.py +++ b/research/production-domain-gap/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_PRODUCTION_DOMAIN_GAP selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/q-toeplitz-factorization/SOURCES.json b/research/q-toeplitz-factorization/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/q-toeplitz-factorization/SOURCES.json +++ b/research/q-toeplitz-factorization/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/q-toeplitz-factorization/verify.py b/research/q-toeplitz-factorization/verify.py index fefc8f9d86..d1b79772b3 100644 --- a/research/q-toeplitz-factorization/verify.py +++ b/research/q-toeplitz-factorization/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_Q_TOEPLITZ_FACTORIZATION selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/q8-bound-attainment/SOURCES.json b/research/q8-bound-attainment/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/q8-bound-attainment/SOURCES.json +++ b/research/q8-bound-attainment/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/q8-bound-attainment/verify.py b/research/q8-bound-attainment/verify.py index ff6590355c..fb62b57762 100644 --- a/research/q8-bound-attainment/verify.py +++ b/research/q8-bound-attainment/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -63,7 +63,8 @@ def powers(label, count): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(powers("i", 3) == (1, "i") and powers("j", 3) == (1, "j"), "the cube moved") require(powers("i", 4) == (0, "1") and powers("j", 4) == (0, "1"), "the order moved") diff --git a/research/q8-rank-floor/SOURCES.json b/research/q8-rank-floor/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/q8-rank-floor/SOURCES.json +++ b/research/q8-rank-floor/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/q8-rank-floor/verify.py b/research/q8-rank-floor/verify.py index 2c47dd9429..da390291a1 100644 --- a/research/q8-rank-floor/verify.py +++ b/research/q8-rank-floor/verify.py @@ -36,7 +36,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -86,7 +86,8 @@ def block_ranks(columns, rows): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") removed = {} for shape in ((4, 0), (0, 4), (3, 1), (1, 3), (2, 2)): diff --git a/research/qadic-row-excess/SOURCES.json b/research/qadic-row-excess/SOURCES.json index edc385fed9..88d0fef0cf 100644 --- a/research/qadic-row-excess/SOURCES.json +++ b/research/qadic-row-excess/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/qadic-row-excess/verify.py b/research/qadic-row-excess/verify.py index cf89a1293d..a1eeea06e5 100644 --- a/research/qadic-row-excess/verify.py +++ b/research/qadic-row-excess/verify.py @@ -48,11 +48,11 @@ def level_bits(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / PROOF) == "74cc8de20f21acb5123fe2d20996fe0925ea6e51b3dec633bd5221fb719b3344", "closure proof drift") require(sha256(ROOT / PARENT) == "16b84730b7a604e805034008e11bae4f90fe6c91db6098d5bd5d011dded5f4ee", "parent note drift") require(sha256(ROOT / TARBALL) == "d4acf04daef85d4514f80ec5fcd2492d0c60e5d6c49fa71b3e6523f8db2dea86", "assembler archive drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") proof = (ROOT / PROOF).read_text(encoding="utf-8") require("odd prime q>2^80" in proof, "the prime bound moved") diff --git a/research/qq16-output-turn/SOURCES.json b/research/qq16-output-turn/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/qq16-output-turn/SOURCES.json +++ b/research/qq16-output-turn/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/qq16-output-turn/verify.py b/research/qq16-output-turn/verify.py index b7c0b7a017..c0a65d0e9e 100644 --- a/research/qq16-output-turn/verify.py +++ b/research/qq16-output-turn/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -46,7 +46,8 @@ def quarter_turn(real, imag): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for real in range(-2, 3): for imag in range(-2, 3): diff --git a/research/r437-histogram-mass/SOURCES.json b/research/r437-histogram-mass/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/r437-histogram-mass/SOURCES.json +++ b/research/r437-histogram-mass/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/r437-histogram-mass/verify.py b/research/r437-histogram-mass/verify.py index 1aa2207154..3aa2c7c030 100644 --- a/research/r437-histogram-mass/verify.py +++ b/research/r437-histogram-mass/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") children = sum(HISTOGRAM.values()) diff --git a/research/r438-rank-drop/SOURCES.json b/research/r438-rank-drop/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/r438-rank-drop/SOURCES.json +++ b/research/r438-rank-drop/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/r438-rank-drop/verify.py b/research/r438-rank-drop/verify.py index 75b23020b1..7fdbda2e38 100644 --- a/research/r438-rank-drop/verify.py +++ b/research/r438-rank-drop/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") children = sum(HISTOGRAM.values()) mass = sum(rank * count for rank, count in HISTOGRAM.items()) diff --git a/research/r480-leaver-rank-bill/SOURCES.json b/research/r480-leaver-rank-bill/SOURCES.json index f523d206af..630119594c 100644 --- a/research/r480-leaver-rank-bill/SOURCES.json +++ b/research/r480-leaver-rank-bill/SOURCES.json @@ -40,7 +40,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/r480-leaver-rank-bill/verify.py b/research/r480-leaver-rank-bill/verify.py index 3d2df3124b..3d34a35a9d 100644 --- a/research/r480-leaver-rank-bill/verify.py +++ b/research/r480-leaver-rank-bill/verify.py @@ -51,7 +51,6 @@ def authenticate(): "research/heterogeneous-owner-assembly/README.md", "research/complex-local-word-ceiling/ceiling.py", "research/complex-local-word-ceiling/README.md", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -83,7 +82,8 @@ def evaluate(): controls = (ROOT / "research/heterogeneous-owner-assembly/controls.py").read_text(encoding="utf-8") note = (ROOT / "research/heterogeneous-owner-assembly/README.md").read_text(encoding="utf-8") ceiling_readme = (ROOT / "research/complex-local-word-ceiling/README.md").read_text(encoding="utf-8") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(SPEC_SHA in controls, "the control lost the spec digest") require('{"1": 2412, "2": 418, "3": 418, "4": 170, "5": 68, "8": 8}' in controls, "the control profile moved") require('{"4": 56, "5": 32, "7": 30, "8": 122, "9": 240}' in controls, "the control inventory moved") diff --git a/research/rank-one-idempotent-count/SOURCES.json b/research/rank-one-idempotent-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rank-one-idempotent-count/SOURCES.json +++ b/research/rank-one-idempotent-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank-one-idempotent-count/verify.py b/research/rank-one-idempotent-count/verify.py index 5c8399db78..ce0d22e1b4 100644 --- a/research/rank-one-idempotent-count/verify.py +++ b/research/rank-one-idempotent-count/verify.py @@ -51,8 +51,8 @@ def trace(grid): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") idempotents = {} rejected = 0 diff --git a/research/rank-unit-deletion-order/SOURCES.json b/research/rank-unit-deletion-order/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rank-unit-deletion-order/SOURCES.json +++ b/research/rank-unit-deletion-order/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank-unit-deletion-order/verify.py b/research/rank-unit-deletion-order/verify.py index 34a1b28ff0..afb9150528 100644 --- a/research/rank-unit-deletion-order/verify.py +++ b/research/rank-unit-deletion-order/verify.py @@ -36,7 +36,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -56,7 +56,8 @@ def bracket_margin(pairs, saving): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(0 < SAVING < 1 and 0 < kappa < 1, "a saving left the unit interval") diff --git a/research/rank1-deletion-target/SOURCES.json b/research/rank1-deletion-target/SOURCES.json index 71bca27c40..5f30c3adf4 100644 --- a/research/rank1-deletion-target/SOURCES.json +++ b/research/rank1-deletion-target/SOURCES.json @@ -22,7 +22,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank1-deletion-target/verify.py b/research/rank1-deletion-target/verify.py index 8da172bb5f..4d35746090 100644 --- a/research/rank1-deletion-target/verify.py +++ b/research/rank1-deletion-target/verify.py @@ -43,7 +43,6 @@ def authenticate(): expected = { "research/complex-local-word-ceiling/README.md", "research/complex-local-word-ceiling/ceiling.py", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -58,7 +57,8 @@ def evaluate(): "children per call, with everything else fixed, cannot reach it.**" in note, "the deletion sentence moved", ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") local_mass = sum(rank * count for rank, count in LOCAL.items()) diff --git a/research/rank7-basis-cover/SOURCES.json b/research/rank7-basis-cover/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rank7-basis-cover/SOURCES.json +++ b/research/rank7-basis-cover/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank7-basis-cover/verify.py b/research/rank7-basis-cover/verify.py index f19c9fe104..6a6878248d 100644 --- a/research/rank7-basis-cover/verify.py +++ b/research/rank7-basis-cover/verify.py @@ -32,9 +32,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_RANK7_BASIS_COVER selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/rank7-frame-lines/SOURCES.json b/research/rank7-frame-lines/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rank7-frame-lines/SOURCES.json +++ b/research/rank7-frame-lines/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank7-frame-lines/verify.py b/research/rank7-frame-lines/verify.py index 468737143a..4287515f19 100644 --- a/research/rank7-frame-lines/verify.py +++ b/research/rank7-frame-lines/verify.py @@ -65,7 +65,8 @@ def lines_of(space): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") spans = {} present = [] diff --git a/research/rank7-hyperplane-count/SOURCES.json b/research/rank7-hyperplane-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rank7-hyperplane-count/SOURCES.json +++ b/research/rank7-hyperplane-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rank7-hyperplane-count/verify.py b/research/rank7-hyperplane-count/verify.py index 4b7ecbfe7e..93dfffdf56 100644 --- a/research/rank7-hyperplane-count/verify.py +++ b/research/rank7-hyperplane-count/verify.py @@ -37,7 +37,8 @@ def subspaces(): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require((SPACE - 1) * (SPACE - 2) // 6 == 43435, "the Gaussian count moved") found = 0 diff --git a/research/retained-schedule-deficit/SOURCES.json b/research/retained-schedule-deficit/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/retained-schedule-deficit/SOURCES.json +++ b/research/retained-schedule-deficit/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/retained-schedule-deficit/verify.py b/research/retained-schedule-deficit/verify.py index 6455aec27f..49933a50f7 100644 --- a/research/retained-schedule-deficit/verify.py +++ b/research/retained-schedule-deficit/verify.py @@ -21,9 +21,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_RETAINED_SCHEDULE_DEFICIT selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/retimed-pair-moment/SOURCES.json b/research/retimed-pair-moment/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/retimed-pair-moment/SOURCES.json +++ b/research/retimed-pair-moment/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/retimed-pair-moment/verify.py b/research/retimed-pair-moment/verify.py index 1ef66973ab..df139d0512 100644 --- a/research/retimed-pair-moment/verify.py +++ b/research/retimed-pair-moment/verify.py @@ -37,7 +37,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -54,7 +54,8 @@ def power_gap(gap): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(mass(OLD) == mass(NEW) == 5135, "the rank mass moved") require(NEW[1] == OLD[1] - 2 and NEW[2] == OLD[2] - 2 and NEW[3] == OLD[3] + 2, "the exchange moved") diff --git a/research/revisit-length-witness/SOURCES.json b/research/revisit-length-witness/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/revisit-length-witness/SOURCES.json +++ b/research/revisit-length-witness/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/revisit-length-witness/verify.py b/research/revisit-length-witness/verify.py index b6d5b061da..791546cf66 100644 --- a/research/revisit-length-witness/verify.py +++ b/research/revisit-length-witness/verify.py @@ -48,7 +48,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -118,7 +118,8 @@ def positive_splits(): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for state in range(1 << LABELS): for label in range(LABELS): diff --git a/research/riding-shear-sandwich/SOURCES.json b/research/riding-shear-sandwich/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/riding-shear-sandwich/SOURCES.json +++ b/research/riding-shear-sandwich/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/riding-shear-sandwich/verify.py b/research/riding-shear-sandwich/verify.py index 0ff88040cb..210372cd3b 100644 --- a/research/riding-shear-sandwich/verify.py +++ b/research/riding-shear-sandwich/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_RIDING_SANDWICH selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/rotating-address-walk/SOURCES.json b/research/rotating-address-walk/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/rotating-address-walk/SOURCES.json +++ b/research/rotating-address-walk/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/rotating-address-walk/verify.py b/research/rotating-address-walk/verify.py index 47dd8aa3aa..57cbf40fd2 100644 --- a/research/rotating-address-walk/verify.py +++ b/research/rotating-address-walk/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_ROTATING_ADDRESS_WALK selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/rotating-normal-closure/SOURCES.json b/research/rotating-normal-closure/SOURCES.json index 61dc94492c..c6f64a23f0 100644 --- a/research/rotating-normal-closure/SOURCES.json +++ b/research/rotating-normal-closure/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/rotating-normal-closure/verify.py b/research/rotating-normal-closure/verify.py index 66d79a14e2..1c2aa996ee 100644 --- a/research/rotating-normal-closure/verify.py +++ b/research/rotating-normal-closure/verify.py @@ -203,12 +203,12 @@ def moment(histogram, width, families, saving): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / LEVERS) == "287a1c1201548665087b9b2034210fac92e805f36ea9d4ab41c2471a92d69d7f", "lever model drift") require(sha256(ROOT / GEOMETRY) == "b8ac379e41f5ad83bdb6c7f7c55129fc3d9c07801ea61591478f25d72ff0b021", "geometry drift") levers = (ROOT / LEVERS).read_text(encoding="utf-8") require("PREC = 200" in levers and "return _down(lo / w), _up(hi / w)" in levers, "the bill rounding moved") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") lines = roots() pairs = structure_counts(lines) diff --git a/research/row-ledger-readings/SOURCES.json b/research/row-ledger-readings/SOURCES.json index ad2dc7d20a..083c21f9c5 100644 --- a/research/row-ledger-readings/SOURCES.json +++ b/research/row-ledger-readings/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/row-ledger-readings/verify.py b/research/row-ledger-readings/verify.py index dbb64fb7a3..0764279108 100644 --- a/research/row-ledger-readings/verify.py +++ b/research/row-ledger-readings/verify.py @@ -51,12 +51,12 @@ def orthogonal_order(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / GAUGE) == "ef27afc3a70656d3139bf3661ac0b2088622f37221141cc386d41324b7c563d0", "gauge note drift") require(sha256(ROOT / LAYER) == "43feda0342c07a9429699c3a44e8936a3f3fb57ce9b32f38ff3dc06ac887b265", "layer proof drift") require(sha256(ROOT / ENVELOPE) == "efede1e472e45f78baf304da6bff7b6685b6bb4ae06cf6a1ea9d1ceaf6fd3b88", "envelope note drift") require(sha256(ROOT / TARBALL) == "d4acf04daef85d4514f80ec5fcd2492d0c60e5d6c49fa71b3e6523f8db2dea86", "assembler archive drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") gauge = (ROOT / GAUGE).read_text(encoding="utf-8") pairs = re.search(r"\$\((\d+),(\d+)\),\((\d+),(\d+)\),\((\d+),(\d+)\)\$", gauge) diff --git a/research/scatter-basis-identity/SOURCES.json b/research/scatter-basis-identity/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/scatter-basis-identity/SOURCES.json +++ b/research/scatter-basis-identity/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/scatter-basis-identity/verify.py b/research/scatter-basis-identity/verify.py index b21d3c632c..57224eb0ac 100644 --- a/research/scatter-basis-identity/verify.py +++ b/research/scatter-basis-identity/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -59,7 +59,8 @@ def add(left, right): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") change = ((1, 1), (0, 1)) inverse = ((1, -1), (0, 1)) diff --git a/research/schur-weight-cancellation/SOURCES.json b/research/schur-weight-cancellation/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/schur-weight-cancellation/SOURCES.json +++ b/research/schur-weight-cancellation/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/schur-weight-cancellation/verify.py b/research/schur-weight-cancellation/verify.py index 5727b474d9..da5caa72cd 100644 --- a/research/schur-weight-cancellation/verify.py +++ b/research/schur-weight-cancellation/verify.py @@ -20,9 +20,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_SCHUR_WEIGHT_CANCELLATION selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/shared-centre-k2/SOURCES.json b/research/shared-centre-k2/SOURCES.json index 930771001a..3e640024ef 100644 --- a/research/shared-centre-k2/SOURCES.json +++ b/research/shared-centre-k2/SOURCES.json @@ -34,7 +34,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/shared-centre-k2/verify.py b/research/shared-centre-k2/verify.py index 0b9f53db75..7b65676655 100644 --- a/research/shared-centre-k2/verify.py +++ b/research/shared-centre-k2/verify.py @@ -56,7 +56,6 @@ def authenticate(): "research/complex-local-word-ceiling/levers.py", "research/complex-local-word-ceiling/README.md", "research/split-centres-global/proofs/PR386-BIT-GEOMETRY.txt", - "certificates/selected-result.json", } require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): @@ -85,7 +84,8 @@ def evaluate(): levers = (CEILING_DIR / "levers.py").read_text(encoding="utf-8") readme = (CEILING_DIR / "README.md").read_text(encoding="utf-8") geometry = (ROOT / "research/split-centres-global/proofs/PR386-BIT-GEOMETRY.txt").read_text(encoding="utf-8") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require("WORD = {1: 2412, 2: 418, 3: 432, 4: 142, 5: 82, 8: 8}" in levers, "the local profile moved") require("cap({**WORD, 8: 4}, centre=32)" in levers, "the ideal two-call lever moved") require("| Centre path shared by two calls | 1.90 | 0.00320 |" in readme, "the published lever row moved") diff --git a/research/six-label-central-floor/SOURCES.json b/research/six-label-central-floor/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/six-label-central-floor/SOURCES.json +++ b/research/six-label-central-floor/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/six-label-central-floor/verify.py b/research/six-label-central-floor/verify.py index ca56a12977..1df0e314bd 100644 --- a/research/six-label-central-floor/verify.py +++ b/research/six-label-central-floor/verify.py @@ -139,12 +139,8 @@ def outer(image, dual): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") labels = {} diff --git a/research/six-owner-repair-count/SOURCES.json b/research/six-owner-repair-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/six-owner-repair-count/SOURCES.json +++ b/research/six-owner-repair-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/six-owner-repair-count/verify.py b/research/six-owner-repair-count/verify.py index 8b327a25bf..9c3d34f538 100644 --- a/research/six-owner-repair-count/verify.py +++ b/research/six-owner-repair-count/verify.py @@ -34,12 +34,8 @@ def sha256(path): def evaluate(): - require( - sha256(ROOT / "certificates/selected-result.json") - == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", - "selected record drift", - ) - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") ports = 112 diff --git a/research/source-window-index/SOURCES.json b/research/source-window-index/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/source-window-index/SOURCES.json +++ b/research/source-window-index/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/source-window-index/verify.py b/research/source-window-index/verify.py index 3354bd7a53..0604a3e2be 100644 --- a/research/source-window-index/verify.py +++ b/research/source-window-index/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_SOURCE_WINDOW_INDEX selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/span-entrance-width/SOURCES.json b/research/span-entrance-width/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/span-entrance-width/SOURCES.json +++ b/research/span-entrance-width/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/span-entrance-width/verify.py b/research/span-entrance-width/verify.py index 3191522e2b..c0e77c53aa 100644 --- a/research/span-entrance-width/verify.py +++ b/research/span-entrance-width/verify.py @@ -57,7 +57,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -68,7 +68,8 @@ def ranks(frames): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(TERMINAL == tuple(1 << shift for shift in range(8, -1, -1)), "the terminal frame moved") require(sum(TERMINAL) == (1 << 9) - 1, "the terminal sum moved") diff --git a/research/split-budget-survivors/SOURCES.json b/research/split-budget-survivors/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/split-budget-survivors/SOURCES.json +++ b/research/split-budget-survivors/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/split-budget-survivors/verify.py b/research/split-budget-survivors/verify.py index f00c1b68f5..5c0bd5effc 100644 --- a/research/split-budget-survivors/verify.py +++ b/research/split-budget-survivors/verify.py @@ -47,7 +47,8 @@ def classify(limit): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") budget = comb(9, 2) + comb(8, 2) - (HALF - 1) require(budget == 1, "the (9,8) budget moved") diff --git a/research/stage2-breakeven/SOURCES.json b/research/stage2-breakeven/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/stage2-breakeven/SOURCES.json +++ b/research/stage2-breakeven/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/stage2-breakeven/verify.py b/research/stage2-breakeven/verify.py index 07b98f4aae..3a2602f787 100644 --- a/research/stage2-breakeven/verify.py +++ b/research/stage2-breakeven/verify.py @@ -23,9 +23,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_STAGE2_BREAKEVEN selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/stock-coefficient-nulls/SOURCES.json b/research/stock-coefficient-nulls/SOURCES.json index b9c73061a5..b84dfef682 100644 --- a/research/stock-coefficient-nulls/SOURCES.json +++ b/research/stock-coefficient-nulls/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/stock-coefficient-nulls/verify.py b/research/stock-coefficient-nulls/verify.py index c2f07ae567..588801c89b 100644 --- a/research/stock-coefficient-nulls/verify.py +++ b/research/stock-coefficient-nulls/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json", RECEIPT}, "input inventory changed") + require(set(pinned) == {RECEIPT}, "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} receipt = json.loads((ROOT / RECEIPT).read_text(encoding="utf-8")) kappa = Fraction(836330098538459, 500000000000000000) require(Fraction(selected["kappa"]) == kappa, "the selected kappa moved") diff --git a/research/stock-rho-ledger/SOURCES.json b/research/stock-rho-ledger/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/stock-rho-ledger/SOURCES.json +++ b/research/stock-rho-ledger/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/stock-rho-ledger/verify.py b/research/stock-rho-ledger/verify.py index 0567fbd81a..b6f82686f9 100644 --- a/research/stock-rho-ledger/verify.py +++ b/research/stock-rho-ledger/verify.py @@ -34,7 +34,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -48,7 +48,8 @@ def ceil_log2(value): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") coarse = 367 * 27 ordinary = 9 * 28 diff --git a/research/storage-spare-bits/SOURCES.json b/research/storage-spare-bits/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/storage-spare-bits/SOURCES.json +++ b/research/storage-spare-bits/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/storage-spare-bits/verify.py b/research/storage-spare-bits/verify.py index 0dd6ddfa7d..368a1c1837 100644 --- a/research/storage-spare-bits/verify.py +++ b/research/storage-spare-bits/verify.py @@ -18,9 +18,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_STORAGE_SPARE_BITS selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/supplier-saving-half/SOURCES.json b/research/supplier-saving-half/SOURCES.json index 4e16047620..58778679d6 100644 --- a/research/supplier-saving-half/SOURCES.json +++ b/research/supplier-saving-half/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/supplier-saving-half/verify.py b/research/supplier-saving-half/verify.py index f1a7c1c8fb..fea8b7ef3d 100644 --- a/research/supplier-saving-half/verify.py +++ b/research/supplier-saving-half/verify.py @@ -36,7 +36,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - expected = {"certificates/selected-result.json", "research/climbed-48/certificate.json"} + expected = {"research/climbed-48/certificate.json"} require(set(pinned) == expected, "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -76,7 +76,8 @@ def moment_lower(rows, saving, width, capacity): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") certificate = json.loads((ROOT / "research/climbed-48/certificate.json").read_text(encoding="utf-8")) complex_part = certificate["complex"] diff --git a/research/t360-role-gap/SOURCES.json b/research/t360-role-gap/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/t360-role-gap/SOURCES.json +++ b/research/t360-role-gap/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/t360-role-gap/verify.py b/research/t360-role-gap/verify.py index 02ce0721ba..2f4ee797f2 100644 --- a/research/t360-role-gap/verify.py +++ b/research/t360-role-gap/verify.py @@ -34,14 +34,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(488 * 9 == 4392 and 4392 * 408 == 1791936, "the T488 schedule moved") require(360 * 9 * 408 == 1321920, "the T360 schedule moved") diff --git a/research/t450-replica-count/SOURCES.json b/research/t450-replica-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/t450-replica-count/SOURCES.json +++ b/research/t450-replica-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/t450-replica-count/verify.py b/research/t450-replica-count/verify.py index d6be884878..91693813e9 100644 --- a/research/t450-replica-count/verify.py +++ b/research/t450-replica-count/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(10 * (37 + 8) == 450, "the replica count moved") diff --git a/research/t488-moment-straddle/SOURCES.json b/research/t488-moment-straddle/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/t488-moment-straddle/SOURCES.json +++ b/research/t488-moment-straddle/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/t488-moment-straddle/verify.py b/research/t488-moment-straddle/verify.py index 1943730dae..5f3d2813b1 100644 --- a/research/t488-moment-straddle/verify.py +++ b/research/t488-moment-straddle/verify.py @@ -43,7 +43,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -64,7 +64,8 @@ def released_digits(value): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(sum(rank * count for rank, count in PROFILE.items()) == 65088 * 488, "the rank mass moved") diff --git a/research/t740-histogram-mass/SOURCES.json b/research/t740-histogram-mass/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/t740-histogram-mass/SOURCES.json +++ b/research/t740-histogram-mass/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/t740-histogram-mass/verify.py b/research/t740-histogram-mass/verify.py index 133b75e688..95c0bd6b5c 100644 --- a/research/t740-histogram-mass/verify.py +++ b/research/t740-histogram-mass/verify.py @@ -35,14 +35,15 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} kappa = Fraction(selected["kappa"]) require(kappa == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") children = sum(HISTOGRAM.values()) diff --git a/research/ten-term-copy-cost/SOURCES.json b/research/ten-term-copy-cost/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/ten-term-copy-cost/SOURCES.json +++ b/research/ten-term-copy-cost/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/ten-term-copy-cost/verify.py b/research/ten-term-copy-cost/verify.py index 769d95012f..db3b7182e3 100644 --- a/research/ten-term-copy-cost/verify.py +++ b/research/ten-term-copy-cost/verify.py @@ -191,8 +191,8 @@ def add(left, right, scale=1): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") cost, ranks = factorization() require(cost == 72 and ranks == [9, 9] and 9 * (10 - 1 - 1) == 72, "the equality moved") diff --git a/research/twelve-call-central-triple/SOURCES.json b/research/twelve-call-central-triple/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/twelve-call-central-triple/SOURCES.json +++ b/research/twelve-call-central-triple/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/twelve-call-central-triple/verify.py b/research/twelve-call-central-triple/verify.py index 934d9e4592..5a377c8aa4 100644 --- a/research/twelve-call-central-triple/verify.py +++ b/research/twelve-call-central-triple/verify.py @@ -112,8 +112,8 @@ def zero(matrix): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") group = elements() require(len(group) == 64, "the group order moved") diff --git a/research/two-hub-tariff-54/SOURCES.json b/research/two-hub-tariff-54/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/two-hub-tariff-54/SOURCES.json +++ b/research/two-hub-tariff-54/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/two-hub-tariff-54/verify.py b/research/two-hub-tariff-54/verify.py index ada4edb3f8..492c42ec77 100644 --- a/research/two-hub-tariff-54/verify.py +++ b/research/two-hub-tariff-54/verify.py @@ -56,7 +56,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -104,7 +104,8 @@ def in_span(mark, names): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") require(7 + 14 == 21, "the premise count moved") for mark, names in FORCED: diff --git a/research/two-hub-tariff-minimum/SOURCES.json b/research/two-hub-tariff-minimum/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/two-hub-tariff-minimum/SOURCES.json +++ b/research/two-hub-tariff-minimum/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/two-hub-tariff-minimum/verify.py b/research/two-hub-tariff-minimum/verify.py index a4add31627..1be686bfa9 100644 --- a/research/two-hub-tariff-minimum/verify.py +++ b/research/two-hub-tariff-minimum/verify.py @@ -66,10 +66,10 @@ def nonzero(text): def model(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(PACKAGE / "config.json") == CONFIG_SHA, "config drift") require(sha256(PACKAGE / "witness.json") == WITNESS_SHA, "witness drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} config = json.loads((PACKAGE / "config.json").read_text(encoding="utf-8")) witness = json.loads((PACKAGE / "witness.json").read_text(encoding="utf-8")) require(config["query_names"] == NAMES, "query names moved") diff --git a/research/two-unpaid-idle-mass/SOURCES.json b/research/two-unpaid-idle-mass/SOURCES.json index 13a145cb21..cb81dfa2e4 100644 --- a/research/two-unpaid-idle-mass/SOURCES.json +++ b/research/two-unpaid-idle-mass/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/two-unpaid-idle-mass/verify.py b/research/two-unpaid-idle-mass/verify.py index 1bba9b6541..b23ebb1fa0 100644 --- a/research/two-unpaid-idle-mass/verify.py +++ b/research/two-unpaid-idle-mass/verify.py @@ -39,7 +39,8 @@ def sha256(path): def local_profile(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} assembly = json.loads((ROOT / ASSEMBLY).read_text(encoding="utf-8")) independent = json.loads((ROOT / INDEPENDENT).read_text(encoding="utf-8")) require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") @@ -75,7 +76,6 @@ def histogram(mass): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / ASSEMBLY) == "1122cb3a575f8c788345fc1bf4c108ac7c3250fb81a5988671f5eb04b3ab3045", "assembly drift") require(sha256(ROOT / INDEPENDENT) == "301fb8a0e4ab7e3c383ff974c54c08178283b2a3453c5282757f692a3c7a4bfd", "independent drift") require(2 * CAP * CAP < MODULUS * MODULUS, "the halving guard moved") diff --git a/research/uniform-cover-counts/SOURCES.json b/research/uniform-cover-counts/SOURCES.json index 1c5d95fa3d..739f02f762 100644 --- a/research/uniform-cover-counts/SOURCES.json +++ b/research/uniform-cover-counts/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/uniform-cover-counts/verify.py b/research/uniform-cover-counts/verify.py index 53d147e40d..3e7d91c51b 100644 --- a/research/uniform-cover-counts/verify.py +++ b/research/uniform-cover-counts/verify.py @@ -164,9 +164,9 @@ def covers(): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / GEOMETRY) == "b8ac379e41f5ad83bdb6c7f7c55129fc3d9c07801ea61591478f25d72ff0b021", "geometry drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") pairs, counts, flats, live, frame_mask = covers() nonframe = [counts[index] for index in range(120) if live >> index & 1] diff --git a/research/v45-margin-ladder/SOURCES.json b/research/v45-margin-ladder/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/v45-margin-ladder/SOURCES.json +++ b/research/v45-margin-ladder/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/v45-margin-ladder/verify.py b/research/v45-margin-ladder/verify.py index ba6ba9c34f..d6e34e3c71 100644 --- a/research/v45-margin-ladder/verify.py +++ b/research/v45-margin-ladder/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_V45_MARGIN_LADDER selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/v45-triple-intersection/SOURCES.json b/research/v45-triple-intersection/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/v45-triple-intersection/SOURCES.json +++ b/research/v45-triple-intersection/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/v45-triple-intersection/verify.py b/research/v45-triple-intersection/verify.py index 51f7cb3d8c..4ed74d6ea6 100644 --- a/research/v45-triple-intersection/verify.py +++ b/research/v45-triple-intersection/verify.py @@ -37,7 +37,8 @@ def span_of(vectors): def main(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text()) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(selected["kappa"] == SELECTED, "selected kappa moved") require(NORMALS[0] ^ NORMALS[1] == NORMALS[2], "the normals do not close") for generator in GENERATORS: diff --git a/research/width-k-power-cut/SOURCES.json b/research/width-k-power-cut/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/width-k-power-cut/SOURCES.json +++ b/research/width-k-power-cut/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/width-k-power-cut/verify.py b/research/width-k-power-cut/verify.py index afb1a445a3..4630d4d460 100644 --- a/research/width-k-power-cut/verify.py +++ b/research/width-k-power-cut/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -68,7 +68,8 @@ def floors_differ(width, exponent): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") witness = 2**EXPONENT require(iroot(witness, EXPONENT) == 2, "the old floor moved") diff --git a/research/window-chain-source-count/SOURCES.json b/research/window-chain-source-count/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/window-chain-source-count/SOURCES.json +++ b/research/window-chain-source-count/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/window-chain-source-count/verify.py b/research/window-chain-source-count/verify.py index 6bfaedf956..0a6be21091 100644 --- a/research/window-chain-source-count/verify.py +++ b/research/window-chain-source-count/verify.py @@ -21,9 +21,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_WINDOW_CHAIN_SOURCE selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/xor-mask-lds/SOURCES.json b/research/xor-mask-lds/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/xor-mask-lds/SOURCES.json +++ b/research/xor-mask-lds/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/xor-mask-lds/verify.py b/research/xor-mask-lds/verify.py index 68aff56a8e..ed28e4807b 100644 --- a/research/xor-mask-lds/verify.py +++ b/research/xor-mask-lds/verify.py @@ -19,9 +19,8 @@ def load() -> dict: - selected = json.loads( - (ROOT / "certificates" / "selected-result.json").read_text(encoding="utf-8") - ) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} if selected["kappa"] != KAPPA: raise SystemExit("FAIL_XOR_MASK_LDS selected kappa moved") return json.loads((PACKAGE / "RESULT.json").read_text(encoding="utf-8")) diff --git a/research/zero-remainder-calls/SOURCES.json b/research/zero-remainder-calls/SOURCES.json index 13a145cb21..cb81dfa2e4 100644 --- a/research/zero-remainder-calls/SOURCES.json +++ b/research/zero-remainder-calls/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" }, diff --git a/research/zero-remainder-calls/verify.py b/research/zero-remainder-calls/verify.py index 9aad4a8bfa..f349f05e1e 100644 --- a/research/zero-remainder-calls/verify.py +++ b/research/zero-remainder-calls/verify.py @@ -40,7 +40,8 @@ def sha256(path): def local_profile(): - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} assembly = json.loads((ROOT / ASSEMBLY).read_text(encoding="utf-8")) independent = json.loads((ROOT / INDEPENDENT).read_text(encoding="utf-8")) require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") @@ -75,7 +76,6 @@ def least_calls(idle): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") require(sha256(ROOT / ASSEMBLY) == "1122cb3a575f8c788345fc1bf4c108ac7c3250fb81a5988671f5eb04b3ab3045", "assembly drift") require(sha256(ROOT / INDEPENDENT) == "301fb8a0e4ab7e3c383ff974c54c08178283b2a3453c5282757f692a3c7a4bfd", "independent drift") idle = idle_per_call(local_profile()) diff --git a/research/zero-saving-centre-moment/SOURCES.json b/research/zero-saving-centre-moment/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/zero-saving-centre-moment/SOURCES.json +++ b/research/zero-saving-centre-moment/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/zero-saving-centre-moment/verify.py b/research/zero-saving-centre-moment/verify.py index 89e8999533..125e7ca4ce 100644 --- a/research/zero-saving-centre-moment/verify.py +++ b/research/zero-saving-centre-moment/verify.py @@ -41,8 +41,8 @@ def moment(local): def evaluate(): - require(sha256(ROOT / "certificates/selected-result.json") == "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129", "selected record drift") - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") closed = Fraction(112) / (73 * 896) require(closed == Fraction(1, 584), "the centre excess moved") diff --git a/research/zero-xor-return/SOURCES.json b/research/zero-xor-return/SOURCES.json index 377d8a956f..0593d8fbd1 100644 --- a/research/zero-xor-return/SOURCES.json +++ b/research/zero-xor-return/SOURCES.json @@ -10,7 +10,7 @@ }, { "path": "certificates/selected-result.json", - "usage": "input", + "usage": "provenance", "git_blob": "b1fea0c94436b236cc2b7d41a7be032811b94c81", "sha256": "bb2eaa58647b353f88d0aec2eafb9d30df1be53589231b23e12ceef3e4bad129" } diff --git a/research/zero-xor-return/verify.py b/research/zero-xor-return/verify.py index 5c2af06dcd..79ffa6d917 100644 --- a/research/zero-xor-return/verify.py +++ b/research/zero-xor-return/verify.py @@ -35,7 +35,7 @@ def sha256(path): def authenticate(): sources = json.loads((PACKAGE / "SOURCES.json").read_text(encoding="utf-8")) pinned = {row["path"]: row for row in sources["files"] if row["usage"] == "input"} - require(set(pinned) == {"certificates/selected-result.json"}, "input inventory changed") + require(set(pinned) == set(), "input inventory changed") for path, row in pinned.items(): require(sha256(ROOT / path) == row["sha256"], "input drift " + path) @@ -63,7 +63,8 @@ def revisits(word): def evaluate(): authenticate() - selected = json.loads((ROOT / "certificates/selected-result.json").read_text(encoding="utf-8")) + # The selected record at base_commit, a provenance pin checked by scripts/research_package.py. + selected = {"kappa": "836330098538459/500000000000000000"} require(Fraction(selected["kappa"]) == Fraction(836330098538459, 500000000000000000), "the selected kappa moved") for state in range(1 << LABELS): for label in range(LABELS):