AGENT-DISCIPLINE.md at 728 lines and AGENT-PRELOAD.md, each with its sha256
sidecar. Byte-identical in LF form to the copies already tracked by
dbbh-coms-quant-prism and qprism-3d-slice-harness: sha16 18432cac9676d195 for
the discipline, bce41566f9c8475e for the preload.
This clone carried 0 copies before this commit. Written LF rather than copied
from a working tree, because a Windows checkout carries 728 CR bytes and hashes
to d0e18b4b23818b33, which does not match the sidecar the corpus records.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
write the missing sidecar for this receipt
Jesse Daniel Brown+1: Claude Opus 5 (1M context)
4b20680
This receipt carried no .sha256 companion, so nothing could verify it on a
fresh clone. The sidecar records the hash of the bytes as they are stored now.
It does not assert the receipt was correct when written - only that these are
the bytes, so any future change becomes visible instead of silent. Written only
where no sidecar existed; nothing already recorded was replaced.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
CI: three-valued verdicts, so the gate stops lying in both directions
Jesse Daniel Brown+1: Claude Opus 5 (1M context)
25779ea
Two faults, both found by this gate behaving the way AGENT-DISCIPLINE.md
section 12 says a gate must not:
1. clippy reported failure on a repo with no crate at the root. A repo
that cannot be measured is NOT_MEASURED, not broken.
2. the float grep printed "OK: zero float types" when src/ did not
exist -- a pass declared after scanning zero files. It could not
fail, so it proved nothing.
Now every check emits MEASURED_PASS / MEASURED_FAIL / NOT_MEASURED with
a mandatory reason, the float step reports how many files it scanned,
and the final gate goes red only on MEASURED_FAIL.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
CI: three-valued verdicts, so the gate stops lying in both directions
Jesse Daniel Brown+1: Claude Opus 5 (1M context)
e30428c
Two faults, both found by this gate behaving the way AGENT-DISCIPLINE.md
section 12 says a gate must not:
1. clippy reported failure on a repo with no crate at the root. A repo
that cannot be measured is NOT_MEASURED, not broken.
2. the float grep printed "OK: zero float types" when src/ did not
exist -- a pass declared after scanning zero files. It could not
fail, so it proved nothing.
Now every check emits MEASURED_PASS / MEASURED_FAIL / NOT_MEASURED with
a mandatory reason, the float step reports how many files it scanned,
and the final gate goes red only on MEASURED_FAIL.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
CI: three-valued verdicts, so the gate stops lying in both directions
Jesse Daniel Brown+1: Claude Opus 5 (1M context)
0fbe1df
Two faults, both found by this gate behaving the way AGENT-DISCIPLINE.md
section 12 says a gate must not:
1. clippy reported failure on a repo with no crate at the root. A repo
that cannot be measured is NOT_MEASURED, not broken.
2. the float grep printed "OK: zero float types" when src/ did not
exist -- a pass declared after scanning zero files. It could not
fail, so it proved nothing.
Now every check emits MEASURED_PASS / MEASURED_FAIL / NOT_MEASURED with
a mandatory reason, the float step reports how many files it scanned,
and the final gate goes red only on MEASURED_FAIL.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Pin channel 1.81.0 with clippy+rustfmt; rust-version = "1.81"; replace
rust-1.97-independent-verification.yml with rust-1.81-clippy-verification.yml
(clippy --all-targets -D warnings, hard fail on any f32/f64, tests, receipt).
Re-run on real rustc 1.81.0 (eeb90cda1) before landing: clippy -D warnings
clean, zero float types, all tests pass. The run records in docs/ now read
1.81 because the runs were actually repeated on 1.81 - not because the lines
were edited.
Lint fix needed to reach clippy-clean on 1.81 (behaviour-preserving):
needless_range_loop: iterate axes.iter_mut().enumerate() instead of indexing 0..60 (src/lib.rs:690). 30/30 tests.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Promote measured DBBH→DBWH Path 2
Jesse Daniel Brown
Unverified signature
c7fa4a4
Merge the audited no-store CRT recovery, watcher-gated reprojection, storage applicability, verification receipts, and Rust 1.97 CI workflow.
Merge pull request #1 from JesseBrown1980/liris/multicylinder-qprism-slice
Jesse Daniel Brown
Unverified signature
7d89852
Add Liris multi-cylinder Q-PRISM slice harness
Add watcher gate and omnibit pixel
Kevin Crutt
67cba62
Fix N-cylinder capacity receipts
Kevin Crutt
62a5314
Measure N-Q-prism residual selector bits
Kevin Crutt
fdbac42
Add PIE world-slice harness
Kevin Crutt
af42042
Add Liris multi-cylinder Q-PRISM slice harness
Kevin Crutt
4ae6a28
Path 2 — two-shadow recovery with NO store (the double binary black hole)
The complement to Path 1 (content-addressed recall of a RETAINED object). Path 2 retains nothing:
recover an object from TWO jointly-injective lossy shadows via CRT over prime cylinders. Each
shadow (residue mod a prime) is provably non-injective alone; the two cut the fiber to a singleton
and recover EXACTLY, no store. Honest Shannon boundary: Held::InsufficientJointCapacity when
p1*p2 < range (two shadows can't jointly carry log2(range) bits). Federation form: acer holds only
shadow_a, liris only shadow_b, object in no store; recovery is the consent of two poles, single
pole recovers nothing = the capstone's I(X;S2|S1)>=H(X|S1) in code. 9/9 tests (5 unit + 4
federation), pure-Rust zero-dep, WSL rustc.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DAi1nuxgvuMBwsSsvc4eeT