Skip to content

21 baseline acks lapse on 2026-10-22 and 17 point at closed issues #975

Description

@hyperpolymath

The finding

21 baseline acknowledgements lapse on 2026-10-22, and 17 of them point at a closed issue.

Two separate defects that happen to land on the same date, which is why neither is visible on its own:

  1. An expiry cliff. .hypatia-baseline.json has 211 entries. 21 share expires_at: 2026-10-21. scripts/apply-baseline.sh:177 pre-filters with map(select((.expires_at // "9999-12-31") >= $today)) — inclusive — so they are active through the 21st and all stop suppressing together on the 22nd.

  2. Orphaned exit criteria. 17 of those 21 name a tracking_issue that is already CLOSED/COMPLETED. The suppression is the part that keeps working; the cure quietly stops being anyone's job, and nobody is watching a closed thread.

Evidence

Active-entry count as the filter would compute it on each date:

on 2026-09-22: 211 of 211 active
on 2026-10-21: 211 of 211 active
on 2026-10-22: 190 of 211 active   <- 21 lapse here
on 2026-11-29: 190 of 211 active
on 2026-12-22: 165 of 211 active
jq '[.[] | select((.expires_at // "9999-12-31") >= "2026-10-22")] | length' .hypatia-baseline.json

Breakdown of the 21, by tracking issue and its state:

tracking issue acks state
#399 5 CLOSED/COMPLETED
#492 5 CLOSED/COMPLETED
#378 3 CLOSED/COMPLETED
#494 2 CLOSED/COMPLETED
#254 1 CLOSED/COMPLETED
#496 1 CLOSED/COMPLETED
#493 3 OPEN
#124 1 OPEN

17 orphaned / 4 owned. The batch that lapses first is overwhelmingly the batch nobody owns.

Across the whole ledger the orphan count was 20, spanning 7 closed issues: the 17 above, one more under #399 that has no expires_at at all, and two citing #951. #974 collapsed and repointed the #951 pair, so 18 remain orphaned today — 17 lapsing on 2026-10-22 and 1 that never lapses.

On the pair #974 fixed: #951 was closed COMPLETED with zero comments while its defect is demonstrably live (.github/workflows/actions.lock:210 still declares the floating transitive actions/setup-python@v2 under the asana pin, and setup-python is never a top-level lock key), because #963 superseded it and is OPEN. The ack simply never followed the supersession. That is the pattern to look for in the other 17: not closed-in-error, but closed-and-superseded with the ledger left behind.

Why this is not just housekeeping

An acknowledgement pointing at a closed issue is the "looks correct in every visible respect" failure mode. Every field validates, the schema passes, the ratchet is happy, the gate is green — and the one thing that would make it true, someone working the exit criteria, has silently stopped. It then converts to a red main on a date nobody has in their calendar, with no live thread to read for context.

Deliberately not done here

Not swept. A bulk rewrite of 18 tracking_issue values would be one unreviewable commit that re-points each ack at a guess. Each needs checking against the issue that actually superseded it — the #951 → #963 repoint took one command to establish and one to verify.

Acceptance criteria

  • For each of the 18 still-orphaned acks (17 lapsing on 2026-10-22, plus the no-expires_at one under CI: governance + hypatia-scan red on main — 104 Hypatia findings vs empty baseline #399), either (a) re-point tracking_issue at the live successor issue, or (b) if the defect is genuinely cured, delete the ack and prove main stays green without it.
  • Decide the 2026-10-22 cliff deliberately: 21 acks lapsing in one day is a mass red, not a ratchet. Either stagger the dates or accept it with a named owner.
  • Add a check that fails when an entry's tracking_issue is closed — this class is mechanically detectable and currently nothing looks for it.
  • Separately consider the 83 entries with no expires_at at all ("NONE" in the distribution below) — those are permanent suppressions that no date will ever force a review of.
expires_at distribution (211 entries)
  2026-10-21   21
  2026-11-29   25
  2026-12-22   82
  NONE         83

Refs #974, #963, #951, #966.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Ji1bq3TypfycfUPAR7hSxR

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

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions