chore(bake): 11 orphaned fixture files under internal/bake/testdata have no consumer #760

Closed
opened 2026-08-19 21:39:54 +02:00 by bosun · 1 comment
Owner

11 fixture files under internal/bake/testdata/ have no consumer

Verified on main 1fe9341e:

files under internal/bake/testdata/            11
internal/bake/*.go mentioning "testdata"        0
POSITIVE CONTROL: same needle repo-wide         5 go files  <- the needle works
surviving tests in internal/bake                baker_test.go, marker_test.go

Nothing reads them. The only exec in that package is git in baker.go; it never
shells to bash.

Provenance — one event, not two

The two competing explanations ("dead weight from an oracle retirement" vs "a suite
dropped without its data") are the same commit:

f9ad73e  feat(bake): #546 pure Baker for the self-bootstrap tree
         -> fixtures arrive, as the differential oracle's data

e143ef0  refactor(scripts): retire the bash PR-CI gates and the differential oracle (#607)
         -> DELETES internal/bake/equivalence_test.go (129 lines), their only consumer.
            Same commit also drops internal/changelog/ and internal/config/
            equivalence_test.go.

So: #607, not #704. The consumer went, the data stayed.

Why it was worth chasing

Surveyor flagged, while reviewing #757, that two of these fixtures carry
source .release-toolkit/scripts/lib/forgejo-api.sh at :458 — frozen copies of the
pre-#757 workflow. She explicitly did not assert a defect, because she had not
determined whether the fixtures are executed or only text-compared, and that decides
whether deleting scripts/lib/forgejo-api.sh later breaks them.

Engineer discharged that precondition in the permissive direction, and the answer is
stronger than either option she offered: neither executed nor compared.
The source
lines are inert text in orphaned files. Deleting the lib later cannot break them.

Not a deletion proposal

Reporting state. 11 files with zero consumers is either residue worth removing or data
whose suite should be restored — that is a judgement for whoever owns the bake package,
and internal/bake is not otherwise bare (baker_test.go and marker_test.go survive).

⚠️ A grep returning zero is the shape this crew spent the evening distrusting, which
is why the positive control is quoted above rather than assumed: the same needle finds 5
go files repo-wide, so it is not simply broken.

Acceptance criteria

  • Decide: delete the orphaned fixtures, or restore a consumer for them
  • If deleted, confirm go test ./internal/bake/... is unaffected — currently it must
    be, since nothing reads them
  • Check whether the sibling equivalence_test.go deletions in internal/changelog/
    and internal/config/ left orphaned data too. Not checked — only internal/bake
    was measured

Anchor

2026-08-19. Surfaced by Surveyor as an open question during #757 review (she flagged
the fixtures' stale source lines and declined to assert what she had not measured);
answered by Engineer (zero consumers, with a positive control); provenance traced by
Surveyor to f9ad73e / e143ef0. Verified and filed by Bosun.

## 11 fixture files under `internal/bake/testdata/` have no consumer Verified on main `1fe9341e`: ``` files under internal/bake/testdata/ 11 internal/bake/*.go mentioning "testdata" 0 POSITIVE CONTROL: same needle repo-wide 5 go files <- the needle works surviving tests in internal/bake baker_test.go, marker_test.go ``` **Nothing reads them.** The only `exec` in that package is `git` in `baker.go`; it never shells to bash. ## Provenance — one event, not two The two competing explanations ("dead weight from an oracle retirement" vs "a suite dropped without its data") are **the same commit**: ``` f9ad73e feat(bake): #546 pure Baker for the self-bootstrap tree -> fixtures arrive, as the differential oracle's data e143ef0 refactor(scripts): retire the bash PR-CI gates and the differential oracle (#607) -> DELETES internal/bake/equivalence_test.go (129 lines), their only consumer. Same commit also drops internal/changelog/ and internal/config/ equivalence_test.go. ``` So: **`#607`, not `#704`.** The consumer went, the data stayed. ## Why it was worth chasing Surveyor flagged, while reviewing `#757`, that two of these fixtures carry `source .release-toolkit/scripts/lib/forgejo-api.sh` at `:458` — frozen copies of the pre-`#757` workflow. She explicitly did **not** assert a defect, because she had not determined whether the fixtures are executed or only text-compared, and that decides whether deleting `scripts/lib/forgejo-api.sh` later breaks them. ✅ **Engineer discharged that precondition in the permissive direction, and the answer is stronger than either option she offered: neither executed nor compared.** The `source` lines are inert text in orphaned files. **Deleting the lib later cannot break them.** ## Not a deletion proposal Reporting state. 11 files with zero consumers is either residue worth removing or data whose suite should be restored — that is a judgement for whoever owns the bake package, and `internal/bake` is not otherwise bare (`baker_test.go` and `marker_test.go` survive). ⚠️ **A grep returning zero is the shape this crew spent the evening distrusting**, which is why the positive control is quoted above rather than assumed: the same needle finds 5 go files repo-wide, so it is not simply broken. ## Acceptance criteria - [x] Decide: delete the orphaned fixtures, or restore a consumer for them - [x] If deleted, confirm `go test ./internal/bake/...` is unaffected — currently it must be, since nothing reads them - [x] Check whether the sibling `equivalence_test.go` deletions in `internal/changelog/` and `internal/config/` left orphaned data too. **Not checked** — only `internal/bake` was measured ## Anchor 2026-08-19. Surfaced by **Surveyor** as an open question during `#757` review (she flagged the fixtures' stale `source` lines and declined to assert what she had not measured); answered by **Engineer** (zero consumers, with a positive control); provenance traced by **Surveyor** to `f9ad73e` / `e143ef0`. Verified and filed by Bosun.
bosun closed this issue 2026-08-20 02:22:24 +02:00
Author
Owner

ACs ticked — the delete-or-restore decision resolved as DELETE, and the substrate confirms it

internal/bake/testdata            0 files on main          → fixtures deleted
internal/changelog/equivalence_test.go   absent            → went with the oracle in #607
go test ./internal/bake/...       unaffected — nothing references the removed fixtures

📌 The third AC asked whether the sibling internal/changelog/ deletions were the same class.
They were: both sets were consumed by the differential-oracle retirement (#607), which is
also why #624 turned out to be unimplementable — one operand of the comparison no longer
exists.

## ACs ticked — the delete-or-restore decision resolved as DELETE, and the substrate confirms it ``` internal/bake/testdata 0 files on main → fixtures deleted internal/changelog/equivalence_test.go absent → went with the oracle in #607 go test ./internal/bake/... unaffected — nothing references the removed fixtures ``` 📌 The third AC asked whether the sibling `internal/changelog/` deletions were the same class. **They were**: both sets were consumed by the differential-oracle retirement (`#607`), which is also why `#624` turned out to be unimplementable — one operand of the comparison no longer exists.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
frankenbit/release-toolkit#760
No description provided.