CLAUDE.md: the matching rule (P0) + the entry whose corrections produced it - #1238
AdaWorldAPI wants to merge 3 commits into
Conversation
…ip's unit
§8a measures the clustered regime's best ordering at 99.90% of words skipped.
That is not a high-water mark: the skip's granularity is the 64-row word
(`MaskOp::Pred`'s own doc), 65,536 rows is exactly 1024 words, and
1023/1024 = 0.9990234. One live word out of 1024 -- the least a non-empty mask
can occupy. The probe's `skipped_words` ramp says it twice: [4092, 3069, 2046,
1023, 0], where 4092 = 4 x 1023 and every delta is -1023.
So there is no tuning headroom above 99.90% on that tile, and 256x256 is the
skip's UNIT rather than the fixture's geometry -- the tile and the word ladder
are one object counted twice.
Three further readings, each arithmetic on a number measured elsewhere:
- The carriers hand off at 10 bits of 16. A 16-bit tile coordinate against
64-row words splits 10/6: the top 10 select the word, the bottom 6 select a
bit inside it, so a prefix buys skip for exactly 10 bits and the last 6 are
structurally invisible to a mask carrier however precisely named.
- "How far" spans 8 B to 128 KiB; "which" has no analytic form. le-contract's
ANALYTIC section is explicit that a materialized k x k table is "a CACHE of
the formula, never the canon" (Fisher-z, 8-byte per-family affine). A metric
over a tile is a function of two coordinates and compresses to a formula; an
arbitrary subset of 65,536 cells does not. That asymmetry is why the two
carriers cannot substitute for each other.
- 256x256 is 8 KiB, 64x inside D-GTM-0n's measured 512 KiB L2-residency bound
where chained ternlog stops paying. The tile that breaks it is exactly
2048x2048. Named as a coincidence, not as load-bearing: no tile-size sweep
was run and D-GTM-0n's fixture is not §8a's.
Fences in the entry: not a claim that the skip is good in general (§8a's
permissive and moderate rows stay 0.00%); not a claim about the 12-byte facet,
which expresses six points and never a set; not an identification of a facet
RAIL with a cascade TIER (both two bytes -- shape identity, not object
identity); and not a measurement -- every number is re-stated with its source or
is one line of arithmetic on such a number.
Two citations were corrected while writing it. `le-contract.md:160-170` was
carried forward from another entry without checking: :160-170 is CausalEdge64
residual carriers, the LUT section starts at :169, and reading it is what
produced the analytic/materialized row above. And an earlier framing of mine --
"survivor-independence is structural because gt_i32_to_mask takes no gate" --
was over-general and is corrected on main already by
E-FUSING-FORFEITS-THE-SKIP-AND-ADAPTIVEFILTER-FAILS-IN-TWO-PLACES-NOT-ONE-1:
an UNGATED sweep is structurally survivor-independent, a GATED one is not, and
gt_i32_to_mask_under exists. Verified at simd_masking_ops.rs:1614.
Gates: append-only 9 files, none shrank (EPIPHANIES +124). citation-decay
--since origin/main: 0 new decay. Supersession index regenerated after the board
write, byte-identical (the entry cites E-/ISS- names, no D-ids).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011JRoXmYPrE8KubXVrDB71L
…k DOES have an analytic form
Two errors in the section as first committed, both caught by the operator asking
why the Fisher-z figure was 8 BYTES when palette256 is 8 BITS. It is a fair
question and the answer exposed that I had not read the types.
1. WRONG TABLE. I gave the materialized LUT as 128 KiB and attributed it to the
contract's Fisher-z canon. Verified in source: `FisherZTable { entries:
Vec<i8>, k, gamma }` with `byte_size() = k*k + 8`, so at k=256 it is
**64 KiB + 8 B** -- entries at ONE byte each, because the codec's output grade
is the normalized i8. The 128 KiB u16 figure belongs to
E-X265-PROBE-GPU-LUT-1's GPU table, a different object. I matched on "256²
LUT" and carried a figure across two tables.
2. THE MASK HAS AN ANALYTIC FORM, for the case this entry is about. I wrote that
"how far" compacts and "which" does not. True of an arbitrary subset; false of
a prefix range, which is `Cmp::MatchU32 { pattern, care }` -- 8 bytes, the
same order as the gamma -- and which matrix row R5 independently describes as
DuckDB's SequenceVector compressing a contiguous range to 3 scalars. §8a's
clustered conjunct IS an address prefix, so the entry's own regime is exactly
the one where the mask's compact form exists.
The corrected asymmetry is about the CONDITION, not the possibility: "how far"
compacts unconditionally (a metric is a function of two coordinates, so a
formula always exists); "which" compacts only when the set is structured.
Also stated now rather than elided: the 8 B is PARAMETERS, not answers.
`FamilyGamma { z_min: f32, z_range: f32 }` costs an atanh/tanh and the affine to
yield a distance, so the 8 B vs 64 KiB pair is compute-versus-table, not a
smaller answer. The earlier "16,384x range" phrasing elided that and is gone.
The palette index is 8 BITS; the family's affine is 8 BYTES. The table in the
entry now keeps them apart explicitly.
Recorded as a in-entry ⊘ rather than a silent edit, and as a second commit rather
than an amend, so the error is in the history where it belongs.
Gates: append-only 9 files, none shrank (EPIPHANIES 30463 -> 30604). citation
-decay --since origin/main: 0 new decay.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011JRoXmYPrE8KubXVrDB71L
…is prohibited
Operator ruling, 2026-09-15: "Matching without reading is strictly prohibited."
It names the mechanism behind five errors in one session, three of which
occurred INSIDE the correction of the other two. A shared surface feature -- a
width, a count, a phrase, a file path, a name -- is never evidence that two
things are the same thing. Before claiming A tells you about B, read B.
The five, with what B actually was:
1. 6 B == 6 rails helix residue -> a Hexagon synapse surface
(6 B is ONE 48-bit Signed360 sphere angle)
2. 48 bit == 48 bit cam_pq's ranking result -> HelixResidue
(the measurement never ranged over HelixResidue)
3. the words "multi-hop" jc's synthetic-SPD EWA bound -> graph recall
(that pillar never traverses a graph)
4. a neighbouring entry le-contract.md:160-170 cited for the LUT
(:160-170 is CausalEdge64 residual carriers)
5. the phrase "256² LUT" 128 KiB u16 -> bgz-tensor's Fisher-z canon
(that table is Vec<i8>, k*k + 8 = 64 KiB + 8 B)
Placed beside the falsifiability rule because it is the same shape: a recurring
failure mode, its measured instances, and consequences stated as prohibitions.
Instances 1-3 live with their censuses in
E-I-GRAFTED-HELIX-ONTO-HEXAGON-AND-THEN-DEPRECATED-THE-OPERATORS-TENANTS-ON-MY-OWN-AUTHORITY-1;
4 and 5 are in this PR's entry as ⊘.
One consequence is counterintuitive enough to state explicitly: PREFER THE
PRECISE FORM, because precision is what makes a claim falsifiable. Instance 4
was invisible while the citation path was partial -- citation_decay reported it
UNVERIFIABLE and did not fail. Widening it to repo-relative is what let the gate
check it and go red. A vaguer citation is not safer, only unfalsifiable.
The rule's own citation was verified rather than copied forward, which is the
test it demands: canonical_node.rs:868-871 reads "signed full-sphere Signed360,
48-bit = 6 B" with HelixResidue = 4 at :871.
Gates: citation-decay --since origin/main 0 new decay; append-only 9 files none
shrank; supersession index regenerated after the board write, byte-identical.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011JRoXmYPrE8KubXVrDB71L
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueComment |
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_45ec21c6-0583-42f4-88e0-81239a1cbe6b) |
|
Closing. The entry's organizing frame is a graft.
What that takes with it: the "256×256 is the skip's unit" claim, the 10-bits-of-16 carrier handoff (it needs a 16-bit tile coordinate this probe does not have), the 8 KiB-vs-LUT comparison, and the D-GTM-0n tile-size pairing. That is the frame, not a detail. What survived was one arithmetic identity — It is the third instance in this PR of the same move the PR's own P0 rule prohibits. Not worth re-cutting. Generated by Claude Code |
Supersedes #1237 — same content, clean history. See that PR's closing note for why.
Two things, and the second is why the first exists.
1.
CLAUDE.md— the matching rule (P0, operator-ruled)Five measured instances in one session:
6 B == 6 railsSigned360sphere angle48 bit == 48 bitHelixResidueHelixResiduele-contract.md:160-170cited for the LUT:160-170is CausalEdge64 residual carriersbgz-tensor's Fisher-z canonVec<i8>,k*k + 8→ 64 KiB + 8 BInstances 2, 4 and 5 occurred inside the correction of 1, 3 and 4 — so the rule binds the retraction as hard as the claim.
Placed beside the falsifiability rule, same shape: failure mode, measured instances, consequences as prohibitions. One consequence is counterintuitive enough to state outright — prefer the precise form, because precision is what makes a claim falsifiable. Instance 4 was invisible while the citation path was partial (
citation_decayreportedUNVERIFIABLEand did not fail); widening it to repo-relative is what let the gate check it and go red. A vaguer citation is not safer, only unfalsifiable.2.
EPIPHANIES.md— the entry that occasioned itadaptive_order_probe.rsmeasures the clustered regime's best ordering at 99.90 % of words skipped. The skip's granularity is the 64-row word, and 65,536 rows is exactly 1024 words:Not near the ceiling — it is the ceiling: one live word out of 1024. The probe's own ramp says it twice:
[4092, 3069, 2046, 1023, 0],4092 = 4 × 1023, every delta−1023. So there is no tuning headroom above 99.90 % on that tile, and 256×256 is the skip's unit rather than the fixture's geometry.Three further readings, each arithmetic on a number measured elsewhere:
FamilyGamma, 8 B of parameters — plusatanh/tanh, so compute-versus-table, not a smaller answer). Which compacts only when the set is structured: a prefix range isCmp::MatchU32 { pattern, care }, 8 bytes. §8a's clustered conjunct is an address prefix, so the entry's own regime is where both compact forms exist.Fences the entry carries: not a claim that the skip is good in general (§8a's permissive and moderate rows stay
0.00 %); not a claim about the 12-byte facet, which expresses six points and never a set; not an identification of a facet rail with a cascade tier (both two bytes — shape identity, not object identity); and not a measurement.Relation to #1235
Complementary, prior-art checked before writing.
E-FUSING-FORFEITS-THE-SKIP-…-1(landed there) establishes under what conditions the lever exists; this entry establishes what its ceiling is and why. That entry's ⊘ correcting my over-general "survivor-independence is structural" framing is accepted —gt_i32_to_mask_underexists atsimd_masking_ops.rs:1614, verified.Gates
append_only_gate.py: 9 protected files, none shrank (EPIPHANIES.md30463 → 30604).citation_decay.py --since origin/main: 0 new decay, 145 pre-existing backlog.supersession_index.py: regenerated after the board write, byte-identical.No code touched, so no cargo gate applies.
🤖 Generated with Claude Code
https://claude.ai/code/session_011JRoXmYPrE8KubXVrDB71L
Generated by Claude Code