Skip to content

Align test taxonomy fixtures with live legends - #21

Merged
flyingrobots merged 4 commits into
mainfrom
cycles/0037-test-taxonomy-and-fixture-drift
Apr 10, 2026
Merged

flyingrobots merged 4 commits into
mainfrom
cycles/0037-test-taxonomy-and-fixture-drift

Conversation

@flyingrobots

Copy link
Copy Markdown
Owner

What changed

  • updated doctrine fixtures in the test suite to use the live repo legends (PROCESS, SYNTH, or none) instead of obsolete PROTO, VIZ, TUI, and FEAT examples
  • rewrote the 0037 design packet with a concrete hill and playback questions, then closed the cycle with a retro and witness
  • kept the remaining odd legend case only as an explicitly named raw-scalar compatibility test rather than silent doctrine drift

Why

The committed suite was still proving an older METHOD taxonomy than the repo now documents. That made test intent ambiguous and made close-time playback drift harder to reason about.

Impact

  • test fixtures now reflect current repo doctrine
  • compatibility coverage is still present, but it is named honestly
  • the 0037 witness now closes cleanly with no playback-question drift

Validation

  • npm test -- tests/api.test.ts tests/cli.test.ts tests/github-adapter.test.ts tests/witness.test.ts tests/ship-sync.test.ts tests/exec.test.ts
  • npm test -- tests/cli.test.ts tests/witness.test.ts tests/ship-sync.test.ts
  • npm test
  • npm run build
  • npm test -- tests/docs.test.ts
  • git diff --check

@coderabbitai

coderabbitai Bot commented Apr 10, 2026 •

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 56c54163-fae7-487d-a219-548f46a9d1d9

📥 Commits

Reviewing files that changed from the base of the PR and between 0867319 and 74b7f8c.

📒 Files selected for processing (2)
  • docs/method/retro/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md
  • tests/cli.test.ts

Summary by CodeRabbit

  • Documentation

    • Added design specification, retrospective, and verification witness for test taxonomy and fixture alignment.
  • Tests

    • Updated fixtures and assertions to use current legend taxonomy; aligned expectations across CLI, API, exec, ship-sync, and witness tests.
    • Cycle verification: 183 tests passed, no drift recorded.
  • Chores

    • Removed an outdated backlog documentation page.

Walkthrough

Added design and retro documentation for the "Test Taxonomy And Fixture Drift" cycle and updated multiple tests/fixtures to use live legend taxonomy (PROCESS, SYNTH) instead of obsolete legend codes; removed a resolved backlog note and added a verification witness recording passing test results.

Changes

Cohort / File(s) Summary
Design & Retrospective Docs
docs/design/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md, docs/method/retro/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md, docs/method/retro/0037-test-taxonomy-and-fixture-drift/witness/verification.md
New design-cycle doc, retro record, and witness verification added. Define PROCESS/SYNTH legend handling, frontmatter escaping, shipSync idempotency, and report 183 passing tests with no drift.
Backlog Removal
docs/method/backlog/bad-code/PROCESS_test-taxonomy-and-fixture-drift.md
Deleted resolved backlog entry describing obsolete legend usage and fixture divergence.
Tests — Legend & Fixture Updates
tests/api.test.ts, tests/cli.test.ts, tests/exec.test.ts, tests/github-adapter.test.ts, tests/ship-sync.test.ts, tests/witness.test.ts
Updated test inputs, assertions, and expected paths to use live legend PROCESS (and SYNTH where applicable) instead of obsolete codes (PROTO, FEAT, VIZ, TUI); adjusted pull/capture identifiers and frontmatter expectations.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Poem

Old legend names retired, new tokens in tow,
PROCESS and SYNTH let the fixtures grow.
Tests aligned, backlog cleared away,
Witnesses nod — no drift today.
ShipSync hums; the repo keeps its glow.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely summarizes the main objective: updating test fixtures to use live repository legends instead of obsolete ones.
Description check ✅ Passed The description comprehensively explains what changed, why it matters, and the validation performed, directly relating to the changeset's core objective.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch cycles/0037-test-taxonomy-and-fixture-drift

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In
`@docs/method/retro/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md`:
- Around line 41-45: The "Backlog Maintenance" checklist currently shows
"outcome: hill-met" and the "None recorded" closure note but leaves "Inbox
processed" and "Dead work buried or merged" unchecked; either mark those two
checklist items as completed (tick the boxes for "Inbox processed" and "Dead
work buried or merged") or add a single-line justification under the Backlog
Maintenance section explaining why the retrospective is considered closed
despite those open maintenance tasks (e.g., "Backlog maintenance deferred to
weekly triage; closure still valid because outcome: hill-met").

In `@tests/cli.test.ts`:
- Line 237: The test titled "Does `method status` report legend health using the
live repo legends rather than stale historical codes?" currently only asserts
positive presence of `SYNTH` and `PROCESS`; add negative assertions that known
stale/historical legend codes are NOT present in the command output to match the
test intent. Locate the test case (the it(...) block with that title in
tests/cli.test.ts) and after the existing positive assertions, add expectations
that the output does not include the stale codes used in your fixtures (e.g.,
assert output does not contain the legacy/stale legend identifiers used
elsewhere in the repo) so the test fails if old codes are reported. Ensure you
use the same output variable/assertion helpers already in the test for
consistency.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: d622e348-ece8-402b-aacc-2a1ab51a324a

📥 Commits

Reviewing files that changed from the base of the PR and between c9e522f and 0867319.

📒 Files selected for processing (10)
  • docs/design/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md
  • docs/method/backlog/bad-code/PROCESS_test-taxonomy-and-fixture-drift.md
  • docs/method/retro/0037-test-taxonomy-and-fixture-drift/test-taxonomy-and-fixture-drift.md
  • docs/method/retro/0037-test-taxonomy-and-fixture-drift/witness/verification.md
  • tests/api.test.ts
  • tests/cli.test.ts
  • tests/exec.test.ts
  • tests/github-adapter.test.ts
  • tests/ship-sync.test.ts
  • tests/witness.test.ts
💤 Files with no reviewable changes (1)
  • docs/method/backlog/bad-code/PROCESS_test-taxonomy-and-fixture-drift.md

Comment thread tests/cli.test.ts

Copy link
Copy Markdown
Owner Author

Follow-up fix summary for the latest review round:

Issue SHA
Clarify why cycle closure is still valid with deferred backlog chores in the 0037 retro 2dfd68e
Harden method status CLI assertions so stale legend codes are explicitly absent 74b7f8c

Local verification after both fixes:

  • npm test -- tests/cli.test.ts tests/docs.test.ts
  • git diff --check

@flyingrobots
flyingrobots merged commit f1631d0 into main Apr 10, 2026
2 of 3 checks passed
@flyingrobots
flyingrobots deleted the cycles/0037-test-taxonomy-and-fixture-drift branch April 10, 2026 01:01
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