Skip to content

fix(witness): resolve the wide-rung pack defaults inside the repository - #1582

Open
gHashTag wants to merge 1 commit into
masterfrom
fix/witness-default-paths
Open

fix(witness): resolve the wide-rung pack defaults inside the repository#1582
gHashTag wants to merge 1 commit into
masterfrom
fix/witness-default-paths

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

The six wide-rung witness decode references default to an absolute path under /home/user/workspace when run with no argument:

if __name__ == "__main__":
    p = sys.argv[1] if len(sys.argv) > 1 else \
        "/home/user/workspace/gf128_work/gf128_pack.json"
gf128/gf128_decode_ref.py:161     /home/user/workspace/gf128_work/gf128_pack.json
gf96/gf96_decode_ref.py:161       /home/user/workspace/gf96_work/gf96_pack.json
gf512/gf512_decode_ref.py:161     /home/user/workspace/gf512_work/gf512_pack.json
gf1024/gf1024_decode_ref.py:161   /home/user/workspace/gf1024_work/gf1024_pack.json
gf256/gf256_decode_ref.py:155     /home/user/workspace/gf256_witness/gf256_wide_pack.json
gf48_fp64/gf48_decode_ref.py:164  /home/user/workspace/t27/conformance/vectors/gf48_conformance_v0.json

So the file a witnesses[] entry names fails on every machine but the one it was written on:

$ python3 gf128_decode_ref.py
FileNotFoundError: [Errno 2] No such file or directory:
  '/home/user/workspace/gf128_work/gf128_pack.json'

This matters more than an ordinary broken default, because these are the artifacts honesty rule #10 points a sceptical reader at. Following the witness trail and running the named file is the first thing anyone checking the corpus does, and it currently fails.

The witnesses themselves are sound

Passing the in-repo pack explicitly gives the claimed result immediately:

$ python3 gf128_decode_ref.py ../../vectors/gf128_conformance_v0.json
gf128 golden (Fraction exact oracle) vs pack: 15/15 exact  [e=49 m=78 bias=281474976710655]
VERDICT: gf128 Fraction-oracle path agrees with pack, abs_error=0

Nothing about the decoding is wrong — only where the default input is looked up. The cross_check_representative.py scripts are unaffected, since they import these modules rather than invoking __main__; all three reproduce 201,512/201,512 agreeing codes.

Fix

Resolve the default relative to the script's own location. After the change all six run standalone:

gf48_fp64   gf48 golden (Fraction, FP64-target) vs pack: 15/15 exact
gf96        VERDICT: gf96 Fraction-oracle path agrees with pack, abs_error=0
gf128       VERDICT: gf128 Fraction-oracle path agrees with pack, abs_error=0
gf256       VERDICT: gf256 Fraction-oracle path agrees with pack, abs_error=0
gf512       VERDICT: gf512 Fraction-oracle path agrees with pack, abs_error=0
gf1024      VERDICT: gf1024 Fraction-oracle path agrees with pack, abs_error=0

Related, not fixed here

A wider sweep of scripts/ found 32 files carrying /Users/playra/t27 — another absolute home directory, on a machine that is not the repository. None is referenced by any workflow, so CI is unaffected, and they are left alone rather than bulk-edited. Reported for visibility: scripts/gen_w367_lean.py through gen_w392_lean.py and scripts/fix_v09_latex.py among them.

Closes #1581

The six wide-rung witness decode references defaulted to an absolute path under
/home/user/workspace when run with no argument, so the file a witnesses[] entry
names failed on every machine but the one it was written on:

  FileNotFoundError: '/home/user/workspace/gf128_work/gf128_pack.json'

That matters more than an ordinary broken default. These are the artifacts honesty
rule #10 points a sceptical reader at, and running the named file is the first
thing anyone checking the corpus does.

The witnesses themselves are sound. Passing the in-repo pack explicitly already
gave the claimed result -- gf128 15/15 exact, abs_error=0 -- so nothing about the
decoding changes here, only where the default input is looked up. The
cross_check_representative.py scripts were never affected, since they import these
modules rather than invoking __main__.

The default now resolves relative to the script's own location. All six run
standalone afterwards and print their own verdict at abs_error=0, gf48 through
gf1024.

Found by extending the pass-49 "just run everything" sweep to tools/ and scripts/,
after triaging 300 files by side effect so only the 79 with no write, exec, network
or git call were executed unattended.

Closes #1581
@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-07-31 17:23:22 UTC

Summary

Status Count
Total Open PRs 50
PRs with Failing Checks 41
PRs with All Checks Green 9
READY 1
FAILING 41
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=d6b51a3bcc20 != manifest seal=87e5cbd3ad94.
    The committed NMSE numbers were certified against an older compiler.rs.
    Run scripts/reseal-check.sh locally for the two-step reseal command (advisory; not a merge gate).

@github-actions

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

This notebook contains session context, decisions, and artifacts for this work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Witness decode refs default to /home/user/workspace and fail standalone

1 participant