Skip to content

feat: open the board, a change, and its artifacts from the terminal - #407

Merged
danielhanold merged 10 commits into
mainfrom
feat/open-the-board-a-change-and-its-artifacts-from-the-terminal
Oct 8, 2026
Merged

danielhanold merged 10 commits into
mainfrom
feat/open-the-board-a-change-and-its-artifacts-from-the-terminal

Conversation

@danielhanold

@danielhanold danielhanold commented Oct 8, 2026 •

Copy link
Copy Markdown
Owner

↩ Change 0542 — Open the board, a change, and its artifacts from the terminal

Adds docket open <board|change|spec|plan|results|pr> [id]. With no id, the change is worked out from the checked-out branch.

  • In a shared repository, artifacts open as GitHub pages by default. A new layered config key, open.artifacts: github | local, opens the local metadata file in the OS default app instead.
  • Private repositories always open locally. pr always opens the PR URL.
  • A local open syncs the metadata checkout first. If the sync is refused, it still opens the file, with a stale note.
  • --print prints the target without launching anything. --json returns an OpenResult.

Review (deep tier, chosen because the diff is over 1500 lines)

# Severity Finding State
1 important The opener could hang on Linux when a launched app inherits the stderr pipe (no WaitDelay) fixed (dadf8fe)
2 important No guard asserted that the opener's stdout stays off docket's stdout fixed (06c3906)
3 minor Multi-line opener stderr made a multi-line error fixed (d9328ee)
4 minor No test checked the JSON keys of a fully populated OpenResult fixed (d9328ee)

…t block docket open (review finding: RunOpenerProcess blocks on xdg-open's inherited stderr)
…review finding: nothing guards opener chatter off the --json stream)
…ess JSON document

Review finding 3: RunOpenerProcess embedded multi-line opener stderr in its
error, breaking the one-line error rule; whitespace is now collapsed.
Review finding 4: TestOpenResultRendering now marshals a fully populated
success OpenResult and checks every documented key.
@danielhanold
danielhanold merged commit 2847444 into main Oct 8, 2026
1 check passed
@danielhanold
danielhanold deleted the feat/open-the-board-a-change-and-its-artifacts-from-the-terminal branch October 8, 2026 11:36
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