Skip to content

fix(planning): align wayfind label taxonomy with colon-space axis grammar#235

Merged
kyle-sexton merged 2 commits into
mainfrom
fix/wayfind-label-grammar
Jul 17, 2026
Merged

fix(planning): align wayfind label taxonomy with colon-space axis grammar#235
kyle-sexton merged 2 commits into
mainfrom
fix/wayfind-label-grammar

Conversation

@kyle-sexton

Copy link
Copy Markdown
Contributor

What

/planning:wayfind typed decision-item labels become wayfind: <type> (colon-space): SKILL.md routing table, tracker-mechanics bootstrap check + frontier jq (startswith("wayfind: ")), map-anatomy, evals. Planning plugin v0.11.1 → v0.11.2 + CHANGELOG.

Why

Label-as-code owners enforcing the prefix: value axis grammar (github-iac LabelsGrammarTests) reject bare-colon names, forcing a permanent grammar exception for a taxonomy we own. Verified in the wild: colon-space is one of the two dominant OSS axis styles (React Component: …, Angular action: …, Flutter a: …); bare-colon is the rare one (TensorFlow). work-map / needs-human stay flat, grammar-exempt.

Migration

Maps charted under old names need a one-time label rename before work mode routes them. None exist yet — this lands before the first map (ai-adoption-ladder, blocked on the companion github-iac label PR melodic-software/github-iac#150).

Deferred

Label-name config seam for orgs with a different grammar (e.g. slash style) — deferred with trigger, tracked on the ai-adoption-ladder map.

🤖 Generated with Claude Code

…mmar

The typed decision-item labels become `wayfind: <type>` (colon-space),
matching the axis grammar label-as-code owners enforce (github-iac's
LabelsGrammarTests rejects bare-colon axis names), so the taxonomy can
be declared verbatim with no grammar exception. Verified against the
wild: colon-space is one of the two dominant OSS axis styles (React,
Angular, Flutter); bare-colon is the rare one. `work-map` and
`needs-human` stay flat and grammar-exempt. Frontier jq, bootstrap
presence check, docs, and evals updated; existing maps charted under
old names need a one-time label rename.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @kyle-sexton's task in 2m 11s —— View job


PR Review: fix(planning): align wayfind label taxonomy with colon-space axis grammar

  • Gather context and read changed files
  • Review plugin.json version bump
  • Review CHANGELOG.md entry
  • Review SKILL.md routing table changes
  • Review map-anatomy.md changes
  • Review tracker-mechanics.md changes
  • Review evals.json changes
  • Synthesize findings and post review

Summary

Clean, focused change that threads the label rename consistently through all 6 affected files. No logic is touched — this is a pure taxonomy rename (wayfind:researchwayfind: research, etc.) with mechanical updates to the shell script, jq filter, documentation prose, and evals. Security posture is unchanged. No concerns that block merge.


Findings

1. tracker-mechanics.md — parenthetical rationale mid-list sentence (minor, style)

The new inline justification splices an explanation clause between two list members, making the sentence noticeably harder to parse:

Line 22–24:

`/wayfind` uses its own taxonomy — `work-map`, `wayfind: research|interview|design|prototype|task`
(axis labels follow the colon-space grammar so label-as-code owners with a `prefix: value` convention
can declare them verbatim), `needs-human`.

The parenthetical splits …, <labels> from , needs-human so the reader has to remember an open list across a multi-line aside. Context files are read by the AI at runtime; prose noise here adds a small but real parsing cost. The rationale is already in the CHANGELOG and the PR description — consider a tighter form:

`/wayfind` uses its own taxonomy — `work-map`,
`wayfind: research|interview|design|prototype|task` (colon-space axis grammar), `needs-human`.

or just drop the parenthetical entirely since it's already captured in the CHANGELOG. Fix this →


2. CHANGELOG — no release date (very minor, existing pattern)

Line 6: ## [0.11.2] — the referenced Keep a Changelog spec calls for ## [0.11.2] - YYYY-MM-DD. 0.11.1 also lacks a date, so this is an existing anti-pattern rather than a regression, but it is diverging from the format that the file's own header cites.


3. Version bump semantics (informational, no action needed)

A label rename is technically a breaking change for consumers who have already provisioned labels. The patch bump (0.11.2 vs. 0.12.0) is defensible here because the PR documents that no maps exist under the old names yet. Worth keeping the zero-consumers assumption explicit if that changes before the companion PR (#150) lands.


What looks good

Repo precedent (hook-telemetry convention) treats rename of a contract
field as breaking; the wayfind label taxonomy rename is the same shape,
so at 0.x it signals as a minor bump, not a patch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@kyle-sexton

Copy link
Copy Markdown
Contributor Author

Version corrected 0.11.2 → 0.12.0: repo's own hook-telemetry convention treats a contract rename as breaking; the taxonomy rename is the same shape, so 0.x signals it as a minor bump.

@claude

claude Bot commented Jul 17, 2026

Copy link
Copy Markdown

Claude finished @kyle-sexton's task in 1m 2s —— View job


PR Review: fix(planning): align wayfind label taxonomy with colon-space axis grammar

  • Gather context and read changed files
  • Review version correction (0.11.2 → 0.12.0)
  • Re-assess previous findings against updated HEAD
  • Post updated review

Summary

The version correction (0.11.2 → 0.12.0) is correct and well-justified in the commit message. The label taxonomy rename is mechanically consistent across all 6 files. One minor prose finding from the prior review is still open; the CHANGELOG date anti-pattern is pre-existing and unchanged.


Updated Findings

1. tracker-mechanics.md — verbose parenthetical (still open, minor)

The multi-line aside at lines 22–24 was not tightened in the version-bump commit:

`/wayfind` uses its own taxonomy — `work-map`, `wayfind: research|interview|design|prototype|task`
(axis labels follow the colon-space grammar so label-as-code owners with a `prefix: value` convention
can declare them verbatim), `needs-human`.

The open list across a multi-line parenthetical is still there. A tighter form keeps the taxonomy scannable:

`/wayfind` uses its own taxonomy — `work-map`,
`wayfind: research|interview|design|prototype|task` (colon-space axis grammar), `needs-human`.

Fix this →

2. CHANGELOG — no release date (pre-existing, no action needed)

## [0.12.0] still lacks a - YYYY-MM-DD suffix. Not introduced by this PR; noting for completeness.


Version Bump: Confirmed Correct ✓

0.11.2 → 0.12.0 is right. At 0.x, a minor increment signals a breaking change per semver; the commit message correctly applies that convention to a label rename (same shape as the repo's hook-telemetry precedent). Both plugin.json and the CHANGELOG.md header are consistent.


What looks good

  • Version bump mechanically consistentplugin.json and CHANGELOG.md header both show 0.12.0.
  • Shell quoting correct'wayfind: research' etc. in the for L in … loop handle the embedded space safely. (line 34)
  • jq filter updated correctlystartswith("wayfind: ") is right. (line 86)
  • All 5 type labels updated consistently across SKILL.md, map-anatomy.md (×2), tracker-mechanics.md bootstrap + create command, and evals.json.
  • Evals updated — both prompt string and expectation string in eval fix: correct plugin-system inaccuracies and harden references #2 use 'wayfind: design'.
  • Migration note in CHANGELOG is clear about the one-time label rename requirement and correctly documents the zero-consumers assumption.

The prose finding is non-blocking. This is ready to merge once the parenthetical is either tightened or accepted as-is.

@kyle-sexton
kyle-sexton merged commit 53ccfd9 into main Jul 17, 2026
15 checks passed
@kyle-sexton
kyle-sexton deleted the fix/wayfind-label-grammar branch July 17, 2026 12:22
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