Skip to content

A claim about a program that did not exist yet - #2878

Merged
gHashTag merged 1 commit into
masterfrom
w729
Aug 29, 2026
Merged

A claim about a program that did not exist yet#2878
gHashTag merged 1 commit into
masterfrom
w729

Conversation

@gHashTag

Copy link
Copy Markdown
Owner

§317, written one iteration ago, ended with:

That is a five-line script, not an audit — and it would have found all four.

No such script existed when I wrote that sentence. It was a prediction wearing the grammar of a measurement, in a document whose whole purpose is to hold measurements.

Built and measured

version flags on master on the commit before #2875
naive diff: constructed variants vs each list 10 of 10 lists
grouped into families, flag a partial family 3 of 10 points at the exact has_body line
tri kinds drift (comment vs pattern) 0 points at the exact StmtIf arm

The naive diff finds everything, which is finding nothing: almost every list in the file is a legitimate subset of the constructed kinds.

The family version discriminates and does find the real defect on history — but all three of its hits on a clean tree are correct code:

  • StmtLocal | StmtAssign at 7242 and 7290 collects named bindings, and StmtExpr has no name;
  • StmtForRange | StmtWhile | StmtFor at 10979 sits under "Do NOT recurse into loop bodies"StmtIf is absent on purpose.

And two of the four defects are not NodeKind lists at all: compound_binop maps operator strings, and expr_is_bool is a match whose missing arm nobody enumerated.

Score: the enumeration-diff finds 1 of 4 and costs three false positives. tri kinds drift finds 1 of 4 and costs zero. That is why the second one is the one that shipped, and §317 now carries these numbers instead of the prediction.

§319 — the general form

A sentence in the conditional tense, inside a document of findings, takes its authority from the numbers around it. And unlike a wrong claim about existing code — an issue reasoning from absence (§240), a hypothesis reported as a rule (#2830) — it cannot be checked at all until somebody builds the thing.

Either build it and write the number, or write "untested" beside it — and if neither, do not write the sentence.

Refs #2876

§317 ended with "That is a five-line script, not an audit -- and it
would have found all four." No such script existed when I wrote that.

Built and measured:

  naive diff of constructed variants against each list
      -> 10 lists of 10 flagged. Almost every list is a legitimate
         subset, so it finds everything, which is finding nothing.

  the same grouped into families (control flow / binding / exit),
  flagging a list that covers PART of a family
      -> 3 of 10, and on the commit before #2875 it points at the exact
         `has_body` line. But all three of its hits on a clean tree are
         correct code: `StmtLocal | StmtAssign` collects NAMED bindings
         and `StmtExpr` has no name; the loop arm at 10979 excludes
         `StmtIf` on purpose.

  two of the four are not NodeKind lists at all: `compound_binop` maps
  operator strings and `expr_is_bool` is a match whose missing arm
  nobody enumerated.

So: 1 of 4, three false positives. `tri kinds drift` also finds 1 of 4
and costs zero false positives, which is why that is the one that
shipped. §317 now carries these numbers instead of the prediction.

319 is the general form. A sentence in the conditional tense, inside a
document whose purpose is to hold measurements, takes authority from the
numbers around it -- and unlike a wrong claim about existing code, it
cannot be checked until somebody builds the thing. Either build it and
write the number, or write "untested" beside it.

Refs #2876
@gHashTag
gHashTag enabled auto-merge (squash) August 29, 2026 20:08
@github-actions

Copy link
Copy Markdown
Contributor

📓 NotebookLM Notebook linked to this PR

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

@github-actions

Copy link
Copy Markdown
Contributor

PR Dashboard

Generated at: 2026-08-29 20:08:41 UTC

Summary

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

Seal Status

  • ⚠️ STALE -- sha256(compiler.rs)=95f7168a9594 != 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 35c6023 into master Aug 29, 2026
23 of 24 checks passed
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