Skip to content

fix: accept "default" as the default board name - #44

Merged
jwarykowski merged 1 commit into
masterfrom
fix/default-board-roundtrip
Jul 29, 2026
Merged

fix: accept "default" as the default board name#44
jwarykowski merged 1 commit into
masterfrom
fix/default-board-roundtrip

Conversation

@jwarykowski

@jwarykowski jwarykowski commented Jul 26, 2026

Copy link
Copy Markdown
Owner

Fix a round-trip bug: shepherd boards advertises the default board as default, but --board default resolved to a nonexistent boards/default.md instead of the real todo.md.

Impact

Any consumer that reads a name from the boards listing and feeds it back to --board breaks for exactly the default board — it silently addresses an empty phantom board. Surfaced via drover: its dashboard board-picker passes the advertised default name to shepherd watch --board default, so drover watched an empty board and never saw board.added/board.updated events (no actions fired).

Fix

  • ResolveBoard: "default" resolves to the empty board, so the advertised name round-trips for every consumer.
  • CreateBoard: reserves "default" so no real board can shadow the alias (rename/archive already reserved it).
  • Test added in TestResolveBoard.

`shepherd boards` advertises the default board as "default", but
`--board default` resolved to a nonexistent boards/default.md instead of
the real todo.md. Any consumer that reads a name from the boards listing
and feeds it back (e.g. drover's board picker) hit an empty phantom board.

ResolveBoard now maps "default" to the empty board so the advertised name
round-trips; CreateBoard reserves "default" so no real board can shadow it
(rename/archive already did).
@jwarykowski
jwarykowski merged commit 583cc1b into master Jul 29, 2026
1 check passed
@jwarykowski
jwarykowski deleted the fix/default-board-roundtrip branch July 29, 2026 12:15
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