Skip to content

fix(tri): close the two-section gap, and print the threshold that caused it - #3019

Merged
gHashTag merged 2 commits into
masterfrom
loop/close-the-gap
Sep 3, 2026
Merged

fix(tri): close the two-section gap, and print the threshold that caused it#3019
gHashTag merged 2 commits into
masterfrom
loop/close-the-gap

Conversation

@gHashTag

@gHashTag gHashTag commented Sep 3, 2026

Copy link
Copy Markdown
Owner

The gap from last pass, closed

§446 shipped 121 where an independent probe said 123, and said the gap was not resolved. Four attempts to locate it had failed, and every one failed the same way: the comparison matched truncated titles. That is a defect in the comparison, not in either reader — and it survives four tries because a title-prefix match is almost right.

The fix is one flag. tri skill claims --numbers prints one <skill>:<number> per counted section and nothing else:

comm -13 <(sort -n rust.txt) <(sort -n probe.txt)

Two lines, first try: sections 54 and 303.

When two readers of one population disagree, compare the identities they counted, not renderings of them. A count has an index; use it.

And the cause was worth the hunt

Both sections carry a single digit — "the gate that exited 0", "Typecheck FAILED, exit 0" — and carries() requires a run of two or more. That threshold sat in the code with no comment, doing work the documented rule (a word boundary on both sides) does not claim.

Measured on 485 open issues: it excludes 20 titles, and they are not one kind of thing.

kind examples
a count (~12) implies appears 9 times in live source and 0 in the compiler · MAX_SORRY counts 5 admitted proofs; 4 are in files nothing compiles · 4 of 7 passes have no precondition
a value (~8) t27c seal exits 0 · the lexer turns 0o777 into 0 · -3/2 is -1, -3>>1 is -2

Dropping the threshold takes the population 288 → 308 and admits about eight titles that count nothing. So it stays — and it is now printed, with --single to list what it removes.

A silent threshold makes a population read as complete. Where deleting a rule is measurably worse, state it, size it, and show the set it removed.

The blocked option was blocked on a measurement

The option written for this pass said widening tri skill claims to the other three SKILL.md files needed an owner's call, because counting copies would double every figure. Two shasum calls and a grep -c:

  • .agents/skills/phi-loop/SKILL.md and .agents/skills/tri-pipeline/SKILL.md are byte-identical to their .claude/skills counterparts.
  • All three unread files carry zero numbered sections.

So the worry was about an empty set. The walk now covers every tracked SKILL.md, the count is unchanged at 123, and byte-identical files are detected, named in the output, and counted once — the guard the worry deserved, for the day one of them gains a section.

Controls

check result
cargo test -p tri 476 passed, 0 failed
--single count vs an independent probe 20 = 20; population 288 = 288
mutation: drop !two from the exclusion rule red (2 of 5)
mutation: drop the numeral-word exclusion red (2 of 5)
mutation: stop stripping addresses red — after the test gained a single-digit address (#7); the four-digit examples passed either way, so they were not a control
mutation: ignore the word boundary red
diff shape (§447) main.rs +8 −2, no formatter reordering

Skill §448–449.

Refs #2994

🤖 Generated with Claude Code

gHashTag and others added 2 commits September 3, 2026 18:49
…sed it

Last pass shipped 121 where a second reader said 123 and said the gap was
not resolved. It is now: `tri skill claims --numbers` prints one
`<skill>:<number>` per counted section, so a comparison subtracts SETS
rather than strings. Four earlier attempts failed for that reason alone --
each matched truncated titles, a defect in the comparison and not in
either reader.

The two are sections 54 and 303, and both carry a SINGLE digit ("exited
0", "exit 0"). The shipped digit rule requires two or more, and that
threshold was never documented. Measured on 485 open issues: it excludes
20 titles, and they are not one kind of thing -- roughly a dozen state a
count ("`implies` appears 9 times in live source and 0 times in the
compiler"), the rest state a VALUE (an exit code, `0o777`, `-3/2 is -1`).
Dropping it takes the population 288 -> 308 and admits about eight titles
that count nothing.

So it is kept and it is now PRINTED, with `--single` to list what it
removes. A silent threshold makes 288 read as the whole population.

Also: `tri skill claims` walks every tracked SKILL.md now. Measured before
widening -- the two `.agents/skills` files are byte-identical to their
`.claude/skills` counterparts and all three unread files carry ZERO
numbered sections, so the count is unchanged at 123. Byte-identical copies
are detected, named, and counted once.

Refs #2994

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
… widening

448: four attempts to find a two-section disagreement failed because each
compared truncated titles. One flag printing section NUMBERS found it
first try: 54 and 303, both single-digit, excluded by an undocumented
two-digit threshold that removes 20 open titles -- a dozen of them real
counts. Kept, sized, printed.

449: the option that said widening was blocked on an owner's decision was
blocked on a measurement. The .agents copies are byte-identical and carry
zero sections, so the walk widened and the count did not move.

Refs #2994

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

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

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-09-03 11:50:41 UTC

Summary

Status Count
Total Open PRs 11
PRs with Failing Checks 10
PRs with All Checks Green 1
READY 0
FAILING 10
PENDING 0

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=a64be3550ca2 != 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).

@gHashTag
gHashTag merged commit c13c3e8 into master Sep 3, 2026
36 checks passed
@gHashTag
gHashTag deleted the loop/close-the-gap branch September 3, 2026 12:06
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.

1 participant