Skip to content

[finding] lint.yml's swallow-census step still says the instrument declares four control families, and that gated runs three #15569

Description

@claude

.github/workflows/lint.yml's swallow-census step (Swallow-census control families (gated families only, never POSITIVE), the pnpm check:swallow-census-controls step) carries a comment block that counts the
families of scripts/measure-durability-swallow-family.mjs, and the count has
been wrong for two rounds:

# `measure-durability-swallow-family.mjs` declares four
# control families and, measured on `origin/main` when #13919 was filed,
...
# rather than a convenience. `--self-test=gated` runs RESOLUTION + NEGATIVE
# + REGRESSION; it omits POSITIVE_CONTROLS, ...
...
# step into a bare `--self-test`. The three wired families cannot be
# destroyed by a successful repair: ...

What the instrument declares today, and what the step's own log prints:

So gated runs five families today, not "RESOLUTION + NEGATIVE + REGRESSION",
and the file declares six rather than four. The step's own verdict line names
every one of them on every CI run, which is what makes this legible at all --
the comment is contradicted by the log the step it annotates produces.

Nothing about the step's BEHAVIOUR is wrong: the asymmetry it exists to
explain (gated, never a bare --self-test, because POSITIVE_CONTROLS pin
members the repair programme exists to remove) is correct and is the part
worth keeping. Only the arithmetic around it is stale.

Why it was not repaired in the PR that noticed it: that card's ruling holds
the change to the census script alone. lint.yml is edited by many seats at
once and an edit there pulls in the CI-parity gate family, which is a
verification surface that card does not carry -- so the boundary is the PM's to
move, not the dev's.

Noticed while implementing #15503.

Duplicate check: 605 open issues enumerated by page over the repo-scoped REST
list endpoint and grepped locally for swallow-census / control famil /
four control families (control word empty-worklist verified to hit exactly
the card it should); no match.

Unassigned, unlabeled -- for PM triage.


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

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions