Skip to content

fix: prose daemon-status lines — complete #311 item 3#324

Merged
BunsDev merged 1 commit into
mainfrom
fix/daemon-status-prose-311
Jul 7, 2026
Merged

fix: prose daemon-status lines — complete #311 item 3#324
BunsDev merged 1 commit into
mainfrom
fix/daemon-status-prose-311

Conversation

@BunsDev

@BunsDev BunsDev commented Jul 7, 2026

Copy link
Copy Markdown
Member

Completes the third item of #311. PR #319 landed items 1 (^D artifact on piped coven run) and 2 (neutral patch-cancel voice), but merged before item 3 could be pushed, so #311 auto-closed with the key=value status lines still on main. This lands item 3.

Change

The human daemon-status output still spoke in telemetry voice — status=running ok=true pid=… socket=…, status=stopped, etc. Every human path is now prose, consistent with the output discipline from #297:

  • coven doctor daemon block → Running (pid N, socket …) / Stale (pid N, socket …) / Not running
  • coven daemon start / restartCoven daemon: running (pid N, socket …) / Coven daemon: restarted (…)
  • coven daemon statusCoven daemon: running (…) / Coven daemon: stale (…) / Coven daemon: not running
  • coven daemon stopCoven daemon: stopped / Coven daemon: was not running

The --json output added in #308 is the machine surface and is untouched. The 11 exact-string smoke.rs assertions on the old status= strings are updated to the new prose.

Testing

  • cargo fmt --check, cargo clippy --workspace --all-targets -- -D warnings, cargo test --workspace --locked (full suite, 940+ tests), scripts/check-secrets.py — all green.

Closes #311

🤖 Generated with Claude Code

#319 covered the ^D artifact and neutral patch-cancel voice but left the
third #311 item: human daemon-status lines still printed telemetry-style
`status=running/stale/stopped ok=… pid=… socket=…`. Convert every human
path (doctor block, `daemon start/restart/status/stop`) to prose —
`Coven daemon: running (pid N, socket …)`, `Coven daemon: not running`,
etc. The `--json` output added in #308 is untouched (that's the machine
surface). Updated the exact-string smoke assertions to match.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings July 7, 2026 05:32
@BunsDev
BunsDev merged commit 3e9763b into main Jul 7, 2026
12 of 15 checks passed

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR updates human-facing daemon status output in the coven CLI from key=value telemetry-style lines to prose, aligning doctor and daemon {start,restart,status,stop} with the output discipline established in earlier UX work. The machine-readable --json surface is intended to remain the stable scripting interface.

Changes:

  • Convert daemon status lines in coven doctor and coven daemon … from status=… ok=… pid=… socket=… to prose (e.g., Coven daemon: running (pid …, socket …)).
  • Update Rust smoke tests to assert on the new prose output strings.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
crates/coven-cli/src/main.rs Switches human daemon/doctor output to prose strings while keeping the --json renderer unchanged.
crates/coven-cli/tests/smoke.rs Updates smoke assertions to match the new prose output for daemon lifecycle and doctor output.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 1562 to 1565
println!(
"coven daemon status=running pid={} socket={}",
"Coven daemon: running (pid {}, socket {})",
status.pid, status.socket
);
BunsDev added a commit that referenced this pull request Jul 7, 2026
)

#324 converted the human coven daemon start/status lines to prose but
missed the non-Rust consumers of the old key=value shape, turning the
npm onboarding smoke red on main.

- test-cli-prepublish.mjs asserts the prose human path and checks
  daemon health via coven daemon status --json (machine surface, #308).
- onboarding-docs-test.mjs meta-assertions updated to match.
- daemon/doctor docs refreshed to the current prose output.

Closes #326

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@BunsDev
BunsDev deleted the fix/daemon-status-prose-311 branch July 7, 2026 12:08
BunsDev added a commit that referenced this pull request Jul 9, 2026
…ntics (#330)

Follow-ups from the #322 review:

- coven vacuum now prints a prose status line ("Coven store: vacuumed
  (event index rebuilt, integrity ok, path ...)") matching the daemon
  status convention from #324, instead of key=value output.
- Document that eventIndexRebuilt reports the events_fts index was
  present and rebuilt — the rebuild is unconditional when the index
  exists, so true does not imply the index was stale.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
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.

Output polish: ^D artifact on piped coven run; patch cancellation surfaces as Error:; key=value dev-log voice on human status lines

2 participants