Skip to content

✨ feat(examples): EX-S08 discover packs, wire dogfood into task check - #61

Merged
konih merged 1 commit into
mainfrom
lane/ex-s08
Aug 16, 2026
Merged

✨ feat(examples): EX-S08 discover packs, wire dogfood into task check#61
konih merged 1 commit into
mainfrom
lane/ex-s08

Conversation

@konih

@konih konih commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Replaces a triplicated hardcoded 3-pack-name loop (in Taskfile.yml, .github/workflows/verify.yaml, and cmd/assent/test_corpus_test.go's greenExamplePacks slice) with a single discovery script hack/dogfood-examples.sh that walks examples/packs/*/.assent/tests at runtime and runs assent test + assent test --coverage on each discovered pack.
  • Adds hack/examples/dogfood_wiring_test.sh as a wiring pin, asserting that task check runs dogfood-examples after build, and that both Taskfile.yml's dogfood-examples task and verify.yaml's dogfood step delegate to the shared script rather than a hardcoded loop.
  • Adds new Go tests: TestGreenExamplePacksIsFilesystemDerived, TestBrokenPackFixtureIsNotDiscovered, and TestExampleCorpusDiscoveryMatchesReadmeInventory.
  • dogfood-examples now runs in task check sequentially after build.
  • Implements REQ-EX-S08-01 through REQ-EX-S08-05 from the EX epic spec (openspec/specs/p5-ex-complex-examples/spec.md).

This lane passed independent review with verdict APPROVE (P2/P3 non-blocking notes only, no P0/P1). It has been rebased onto the current main tip (which includes an unrelated changelog-sync fix), and CHANGELOG.md was regenerated (task changelog-write) and amended into the lane commit.

Test plan

  • task check — fully green, including changelog-verify, dogfood-examples, dogfood-wiring-test, workflow_pins_test.sh, ci-audit-test
  • task coverage — 91.1% (required: 91%)
  • dogfood-examples discovers all 3 packs (infra-vars, service-catalog, topic-registry) from the filesystem and runs assent test + assent test --coverage on each — all PASS, all rules covered in both polarities
  • Mutation controls in dogfood_wiring_test.sh confirm the wiring assertion and the hardcoded-loop detector can both go red

…3-name loop

EX-S08: the "which example packs does `assent test` dogfood" list was
duplicated by hand across Taskfile.yml's dogfood-examples task, the
verify.yaml dogfood step, and a greenExamplePacks Go slice — a proven
skew risk when a pack is added. hack/dogfood-examples.sh now discovers
every examples/packs/<name> with a .assent/tests directory (mirroring
the EX-S01 inventory contract); Taskfile.yml and verify.yaml both call
that one script, and greenExamplePacks is derived from the same glob at
test time. task check gains a dogfood-wiring-test stage (after build,
alongside build itself) so unwiring dogfood-examples from check: reds a
pin instead of only failing in CI (REQ-EX-S08-01..05).
@konih
konih merged commit befce0f into main Aug 16, 2026
10 checks passed
@konih
konih deleted the lane/ex-s08 branch August 16, 2026 09:45
konih added a commit that referenced this pull request Aug 16, 2026
EX-S08 (PR #61) added dogfood-examples and dogfood-wiring-test to
Taskfile.yml's check: task, bringing it to 17 stages, but the AUD-S18
exit gate's CHECK_STAGES array still pinned only 15 — silently
reddening hack/audit/exitgate_test.sh on every push to main since
befce0f (the release-exitgate job only runs on push, so no PR ever
saw it). Add the two missing stages in Taskfile order.
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