Skip to content

Two more frozen measurements in the eager-closure gate's prose that #7518's ruling did not cover: "52 chunks" and the workflow's "3.15 MB" #7528

Description

@os-project-manager

Found by the whole-file census #7518 asked for. Neither is an aggregate-headroom
sentence, so neither is inside that card's ruled scope (which was "any hardcoded
aggregate headroom, ratio, or distance-to-ceiling prose"), and both are left
untouched by its PR. Same defect class one column over: a measurement frozen into
present-tense prose, drifted, and asserted as current.

Sibling of #7518 — that card stays about the headroom sentences and is not
addressed by anything here.

Site 1 — "52 chunks", asserted in the present tense in two files

  • scripts/check-eager-closure-budget.mjs, PER_CHUNK_GZIP_CEILINGS block:
    "One total over 52 chunks cannot say WHERE the payload moved"
  • same file, a few lines down: "The aggregate is one number over 52 chunks."
  • scripts/__tests__/check-eager-closure-budget.test.ts: "The aggregate is one
    number over 52 chunks: inside its headroom a single..."

Measured on f620a26f6 (a full apps/console build plus pnpm check:eager-closure):
the closure holds 50 eager chunks of 518. The file's own BASELINE.chunks says
48. So the prose, the constant beside it, and the gate's live output give three
different counts, and the prose is the only one asserting its number as current.

The count is not load-bearing for any verdict — the sentence is rhetorical ("one
total over N chunks cannot say WHERE") — which is exactly why nothing catches it.
The fix that matches #7518's ruling is to stop writing the count rather than to
refresh it: it moves on most builds.

Site 2 — .github/workflows/performance-budget.yml cites a retired ceiling

Around the MAX_ENTRY_GZIP_KB=350 comment block:

# It is a truthful current-state ceiling, not a statement that 3.15 MB is fine.

3.15 MiB is 3,300,000 bytes — the ceiling objectui#6683 set and objectui#6776
retired. The ceiling in force is MAX_EAGER_CLOSURE_GZIP_BYTES = 3_268_000
(3.12 MiB) and the payload measured 3,258,288 bytes (3.11 MiB) on f620a26f6.

This one matters slightly more than it looks: the sentence exists to stop a reader
concluding the current payload is acceptable, and it names a size the gate has not
allowed since objectui#6776. The same paragraph already does the right thing for the
ceiling itself — "The closure ceiling is NOT set here. It lives in
scripts/check-eager-closure-budget.mjs next to the reasoning that produced it" —
so the repair is to apply that rule to this clause too and name no size.

Cost note

performance-budget.yml and check-eager-closure-budget.mjs are both in the gate's
own path filter, so either edit pays a full apps/console build on its PR. Doing the
two sites in one change is what makes that one build instead of two.

Not filed as defects

Recorded so the census is not read as complete when it is only complete for headroom:

  • scripts/vite-declared-lazy-views.ts — "more than four times its 42.5 KB of
    headroom" is objectui#6683-era, but it sits inside a paragraph dated to a
    b98352a15 measurement and reads as history. Correct as written.
  • check-eager-closure-budget.mjs names both "3.07 MB" and "3.12 MB" in one
    paragraph. Both are right — they are BASELINE and the ceiling rendered in MiB —
    but the paragraph never says which is which, so it reads as a contradiction.
    Cosmetic; folded here rather than filed separately.

Generated by Claude Code

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationdomain:devxobjectui devx stream: fix lands on .github/, scripts/ or release pipeline — devx lane cross-repofindingpm:dispatchedpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions