Skip to content

Audit: correct the W1 status — it is not closed, and two rows were stale - #515

Merged
gstoner merged 2 commits into
mainfrom
agent/w1-status-truth
Aug 4, 2026
Merged

gstoner merged 2 commits into
mainfrom
agent/w1-status-truth

Conversation

@gstoner

@gstoner gstoner commented Aug 4, 2026

Copy link
Copy Markdown
Owner

Verified against main, not recalled. Three documents carried a W1 picture that no longer matched the code.

W1 status — not closed

item state
W1.2 shape-rule registry ✅ complete
W1.3 metadata boundary verifier ✅ complete
W1.4 GA grade threading ✅ complete
W1.1b semantic $kind 🟡 partial
W1.1 Tile IR typing 🔴 open — 4 of 6 steps landed

W1.1 row said "Design landed"

Four steps have landed since: !tile.fragment parameterized (#502); MMAOp::verify reads the contract from the types so the canonical K-loop verifies (#503); NVWGMMA refuses an mma carrying an accumulator rather than silently dropping it (#506); the materializer can mask a ragged edge, with bounded tile.view arity in the shared verifier (#510).

The row now states the blocker instead of an effort estimate: fragment_pack requires a !tile.tile and zero producers supply one, so step 3 is a rewrite of working numerically-verified generators, and step 5 is unreachable until it completes.

W1.1b's premise was measured wrong

It said "62 × $name, 4 × $kind, 1 × $mode". Measured: 17 ops carry $kind, 3 are I64Attr, and 14 of 17 already fail closed. $name is the emitted kernel symbol — an open, caller-chosen set — so enumerating it would reject valid programs.

Landed: $dtype split into three per-family constraints (#499), reduction/mode closed sets (#499), and the three $kind ops that failed open closed (#505) — each had a trailing else doubling as an unnamed semantic default, so a typo silently computed isfinite, trained with Adam, or evaluated the geometric product.

Open: hoisting the other 14 into ODS — layering, not correctness.

MASTER_AUDIT said "W1.1b / W1.3 / W1.4 are untouched"

All three have landed work; two are complete. Corrected in place with the date and reason, per Decision #26.

Added: a W1 status block

The five rows didn't answer "what is really open" without reconstruction. The section now leads with a verified table and the open work in dependency order — items 1–4 are one chain (producer restructure → accumulator threading → Python emitters → delete permissive branch); only the W1.1b ODS hoist can run in parallel.

Docs only. 14444 unit, docs in sync.

🤖 Generated with Claude Code

Verified against `main` rather than recalled. Three documents carried a W1
picture that no longer matched the code.

── W1.1 row said "Design landed" ──

Four of six steps have landed since: (1) `!tile.fragment` parameterized (#502),
(2) `MMAOp::verify` reads the contract from the types so the canonical K-loop
verifies (#503), (2b-guard) NVWGMMA refuses an mma carrying an accumulator
rather than silently dropping it (#506), (3a) the materializer can mask a ragged
edge and the bounded `tile.view` arity is defined in the SHARED verifier (#510).

Open: 2b's real accumulator threading, step 3 producer restructure, step 4
Python emitters, step 5 delete the permissive branch. The row now states the
BLOCKER rather than an effort estimate: `fragment_pack` requires a `!tile.tile`
and zero producers supply one, so step 3 is a rewrite of working
numerically-verified generators and step 5 is unreachable until it completes.

── W1.1b row's premise was measured wrong ──

It said "62 x $name, 4 x $kind, 1 x $mode". Measured: 17 ops carry `$kind`,
three are `I64Attr` rather than strings, and 14 of 17 ALREADY fail closed in
their generators. `$name` is the emitted kernel symbol -- an open, caller-chosen
set -- so enumerating it would reject valid programs; it is deliberately left a
free string.

Landed: `$dtype` split into three per-op-family constraints (#499), reduction
and mode closed sets (#499), and the three `$kind` ops that failed OPEN closed
(#505) -- `predicate`, `optimizer`, `clifford`, each of which had a trailing
`else` doubling as an unnamed semantic default, so a typo silently computed
`isfinite`, trained with Adam, or evaluated the geometric product.

Open: hoisting the other 14 sets into ODS -- layering, not correctness.

── MASTER_AUDIT said "W1.1b / W1.3 / W1.4 are untouched" ──

All three have landed work; W1.3 and W1.4 are complete. Corrected in place with
the date and the reason, per Decision #26 (do not read prose as a snapshot).

── Added: a W1 status block ──

The five rows did not answer "what is really open" without reconstruction. The
section now leads with a verified status table and the open work in DEPENDENCY
order, noting that items 1-4 are one chain (producer restructure -> accumulator
threading -> Python emitters -> delete permissive branch) and only the W1.1b
ODS hoist can proceed in parallel.

Docs only. 14444 unit, docs in sync.

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

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e171376201

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/audit/compiler/INTEGRATED_COMPILER_PLAN.md Outdated
Comment thread docs/audit/compiler/INTEGRATED_COMPILER_PLAN.md
Both findings correct, and the first is an overstatement of mine.

── P2: "4 of 6 steps landed" counted things that are not numbered steps ──

The design doc's step table is 1, 2, 2b, 3, 4, 5, 6, and only 1 and 2 are marked
Landed. I reached "4 of 6" by counting:

  * the 2b GUARD -- but step 2b itself is explicitly still open ("bigger than
    accept a block argument"); the guard makes NVWGMMA fail closed, it does not
    thread the accumulator;
  * 3a -- which is not in the step table at all. I invented it as a prerequisite
    for option (a).

Accurate count is 2 of 6. Both are real landed work and are now listed as such,
under a heading that says plainly they are not numbered steps and that counting
them is how the "4 of 6" arose.

I also omitted STEP 6 entirely from the open-work list: removing unexplained
`AnyType` from `tessera_nvidia` (3/3) and `tessera_apple` (12/12), with
`tessera_x86` (0/0) as the reference shape. That is the sharper half of the
finding -- dropping a step from the queue is how still-required Target IR work
disappears, and it is independent of the producer chain rather than blocked
behind it. Restored to the plan, the W1.1 row, and MASTER_AUDIT.

── P2: stale frontmatter feeding the freshness dashboard ──

The plan and MASTER_AUDIT still declared `last_updated: 2026-08-02` while
carrying explicitly dated 2026-08-04 corrections, and the design doc declared
2026-08-03 while carrying the 08-04 sections §4.3-§4.5. That field feeds
`docs_freshness`, so the dashboard reported freshly-reviewed documents as older
than they are. All three set to 2026-08-04 and the dashboard regenerated.

Docs only. 14444 unit, docs in sync.

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

gstoner commented Aug 4, 2026

Copy link
Copy Markdown
Owner Author

Both correct. Fixed — and the first was an overstatement of mine, not a wording quibble.

The step count

The design doc's table is 1, 2, 2b, 3, 4, 5, 6, and only 1 and 2 are marked Landed. I reached "4 of 6" by counting two things that are not numbered steps:

  • the 2b guard — but step 2b itself is explicitly still open ("bigger than 'accept a block argument'"). The guard makes NVWGMMA fail closed; it does not thread the accumulator.
  • 3a — which isn't in the step table at all. I invented it as a prerequisite for option (a).

Accurate count is 2 of 6. Both remain listed as real landed work, now under a heading stating plainly that they aren't numbered steps and that counting them is how "4 of 6" arose.

Step 6 — the sharper half

I omitted it entirely: removing unexplained AnyType from tessera_nvidia (3/3) and tessera_apple (12/12), with tessera_x86 (0/0) as the reference shape.

You're right about the consequence. Dropping a step from the open-work list is exactly how still-required Target IR work disappears from the owning queue — and worse here, because step 6 is independent of the producer chain, not blocked behind it. So the omission would have hidden the one remaining W1.1 item that could have proceeded in parallel the whole time. Restored to the plan, the W1.1 row, and MASTER_AUDIT.

Frontmatter

Confirmed: the plan and MASTER_AUDIT declared last_updated: 2026-08-02 while carrying explicitly dated 2026-08-04 corrections, and W1_1_TYPING_DESIGN.md declared 2026-08-03 while carrying the 08-04 sections §4.3–§4.5. That field feeds docs_freshness, so the dashboard was reporting freshly-reviewed documents as stale. All three set to 2026-08-04 and the dashboard regenerated.

Docs only. 14444 unit, docs in sync.

@gstoner
gstoner merged commit 897e650 into main Aug 4, 2026
17 checks passed
@gstoner
gstoner deleted the agent/w1-status-truth branch August 7, 2026 23:47
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