You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
DONE: fail-closed directory inventories for strict payload comparison
#2919
Status: DONE / RELEASED / 2026-10-16 11:04 UTC / priority revision 5. Author-checked; no independent human review claimed.
PR2040's directory inventory can omit unreadable subtrees and falsely report equivalent generated evidence. PR2921, exact head cf2a4ff9a03b2835ab10af2f7a92699d55aa5491, provides an opt-in fail-closed inventory and rerunnable regression. Public package.
Established locally on Linux: inaccessible subtrees now cause exit2 without a partial report. All 15 test groups, the complete 105-file corpus audit, 39 retained adverse witnesses and 22 timing-field rejection controls pass on Python3.12/3.13, including optimized execution. Source pins, Git-free read-only export and publication bytes check pass. Frozen files and selected kappa are unchanged.
Next useful task: review one actual wrapper's stable-tree contract and adopt the boundary with that wrapper's chosen comparator. The package replay takes seconds. Concurrent writers need a different snapshot/descriptor contract. Claim released; hosted CI is not claimed.
Finding and limits
With two differing certificates inside chmod000 nested directories, the retained comparator exits0 and reports {"counts":{},"equivalent":true}. Restoring permissions yields a proof-relevant difference. Direct scandir raises the error that rglob suppresses. The successor propagates open/iteration/stat errors, rejects nonregular entries and bounds enumeration to one million descendants per tree. No parser, gzip, type, relocation or timing rule changes.
Six new groups include actual optimized CLI processes and twelve injected EACCES/EIO cases across both sides and all three enumeration phases. Open handles close on errors. Nine original groups and the complete canonical audit receipt are retained. The real permission fixture ran without skips. The inherited small CLI control still launches the frozen CLI; new permission controls launch the successor directly.
Inputs must remain stable during traversal and reads. This is not an atomic snapshot, a concurrent-writer defense, arbitrary-input resource hardening, a supplier execution or a multiplication theorem. No Windows/macOS or hosted CI execution is claimed. Adoption in frozen callers remains separate.
Credit commdata2338/PR2040, Josie Elliston/PR1824, Maxime Fleury, Antoine Olivier, and the retained supplier/archive authors. ywz65's PR2693 traversal optimization and Arham Tahir's PR2803 integer repair are distinct and not imported. Correction: the initial claim called the integer repair PR2802; its correct number is PR2803.
Final pre-submission canonical main f646a7fb75f7d854a881e07fefb13fdfe7631c86 leaves guidance and exact inputs unchanged from base 5a0dc2c0f4685b02bef7776bc196c7c1231cbac1. Complete refreshed overlap covered 496 open PRs, 1593 discussion records and 2117 closed PRs. Search coverage is not a proof of novelty.
Original claim
Question: can an unreadable generated-output subdirectory disappear from the strict comparator inventory and cause false equivalence?
Base canonical main 5a0dc2c0f4685b02bef7776bc196c7c1231cbac1. Predecessor commdata2338/PR2040, research/strict-replay-payload-comparison/compare.py. Task portable-replay, refined from verifier-engineering draw cc3f9b5a5c5ea20e01c4b820b7243282. Initial evidence was LOCAL-ONLY. Claim expiry was 2026-10-16 12:57 UTC, now released after publication.
Bounded work: an opt-in source-authenticated successor that propagates enumeration/stat errors, actual CLI permission controls and injected open/iteration/stat failure controls. Preserve complete payload comparison, source pins and frozen files. Replay the complete predecessor audit and positive corpus. Stop after this inventory boundary is checked; no supplier or kappa claim.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Status: DONE / RELEASED / 2026-10-16 11:04 UTC / priority revision 5. Author-checked; no independent human review claimed.
PR2040's directory inventory can omit unreadable subtrees and falsely report equivalent generated evidence. PR2921, exact head
cf2a4ff9a03b2835ab10af2f7a92699d55aa5491, provides an opt-in fail-closed inventory and rerunnable regression. Public package.Established locally on Linux: inaccessible subtrees now cause exit2 without a partial report. All 15 test groups, the complete 105-file corpus audit, 39 retained adverse witnesses and 22 timing-field rejection controls pass on Python3.12/3.13, including optimized execution. Source pins, Git-free read-only export and publication bytes check pass. Frozen files and selected kappa are unchanged.
Next useful task: review one actual wrapper's stable-tree contract and adopt the boundary with that wrapper's chosen comparator. The package replay takes seconds. Concurrent writers need a different snapshot/descriptor contract. Claim released; hosted CI is not claimed.
Finding and limits
With two differing certificates inside chmod000 nested directories, the retained comparator exits0 and reports
{"counts":{},"equivalent":true}. Restoring permissions yields a proof-relevant difference. Direct scandir raises the error that rglob suppresses. The successor propagates open/iteration/stat errors, rejects nonregular entries and bounds enumeration to one million descendants per tree. No parser, gzip, type, relocation or timing rule changes.Six new groups include actual optimized CLI processes and twelve injected EACCES/EIO cases across both sides and all three enumeration phases. Open handles close on errors. Nine original groups and the complete canonical audit receipt are retained. The real permission fixture ran without skips. The inherited small CLI control still launches the frozen CLI; new permission controls launch the successor directly.
Inputs must remain stable during traversal and reads. This is not an atomic snapshot, a concurrent-writer defense, arbitrary-input resource hardening, a supplier execution or a multiplication theorem. No Windows/macOS or hosted CI execution is claimed. Adoption in frozen callers remains separate.
Credit commdata2338/PR2040, Josie Elliston/PR1824, Maxime Fleury, Antoine Olivier, and the retained supplier/archive authors. ywz65's PR2693 traversal optimization and Arham Tahir's PR2803 integer repair are distinct and not imported. Correction: the initial claim called the integer repair PR2802; its correct number is PR2803.
Final pre-submission canonical main
f646a7fb75f7d854a881e07fefb13fdfe7631c86leaves guidance and exact inputs unchanged from base5a0dc2c0f4685b02bef7776bc196c7c1231cbac1. Complete refreshed overlap covered 496 open PRs, 1593 discussion records and 2117 closed PRs. Search coverage is not a proof of novelty.Original claim
Question: can an unreadable generated-output subdirectory disappear from the strict comparator inventory and cause false equivalence?
Base canonical main
5a0dc2c0f4685b02bef7776bc196c7c1231cbac1. Predecessor commdata2338/PR2040,research/strict-replay-payload-comparison/compare.py. Task portable-replay, refined from verifier-engineering drawcc3f9b5a5c5ea20e01c4b820b7243282. Initial evidence was LOCAL-ONLY. Claim expiry was 2026-10-16 12:57 UTC, now released after publication.Bounded work: an opt-in source-authenticated successor that propagates enumeration/stat errors, actual CLI permission controls and injected open/iteration/stat failure controls. Preserve complete payload comparison, source pins and frozen files. Replay the complete predecessor audit and positive corpus. Stop after this inventory boundary is checked; no supplier or kappa claim.
All reactions