Skip to content

Daemon: opt-in installation, status/recovery UX, benchmarks and acceptance gates #19

Description

@axisrow

Part of #14 (delivery step 4). Depends on transport, lifecycle and providers/caches issues.

Что сделать

  • Opt-in installation: shared mode writes a client-wrapper command into Claude settings (claude-settings.ts); returning to one-shot restores the previous command. Both directions tested; no TUI/CLI regression (CLI from PR feat(cli): non-interactive subcommands for agent-driven configuration (#602) #11 included).
  • Status/recovery UX: daemon status shows protocol/build identity, uptime, aggregate counters, timings — never secrets.
  • Platform scope: macOS/Linux first; Windows keeps the existing one-shot path (documented) until an equivalent private transport is tested. Bun/Node compatibility resolved/documented per fork issue Node 14+ distribution requirement is already broken on main (pre-existing blocker) #4 rather than assuming.
  • Benchmarks: extend scripts/benchmark-render.py (no new framework). One-shot vs shared at 1/10/36/50 sessions; cold and warm starts; idle timer refreshes; active updates; several repositories/configs/accounts; growing transcripts; slow-command/recovery cases. Report CPU seconds per completed render and per minute including the persistent daemon + all clients/children, aggregate/peak RSS, p50/p95/p99 latency, subprocess counts, provider/cache hits, output equality.
  • Acceptance run: execute the epic's acceptance checklist; record honest numbers. The ≥50% aggregate-CPU target in the warmed 36-session workload is a gate to validate, not a claimed result.

Файлы

src/utils/claude-settings.ts, src/ccstatusline.ts, src/daemon/, scripts/benchmark-render.py, docs/USAGE.md.

Эталон

PR #2 / PR #3 (honest benchmark reporting discipline — measured numbers only, no extrapolated claims).

Acceptance (from epic)

Benchmarks report end-to-end cost for daemon and clients/children with unchanged output and equivalent freshness; shared mode remains opt-in with a tested return to one-shot.

Оценка

  • LOC: ~400–700 (src ~250 / benchmark+tests ~350)
  • Размер: L
  • Время (код): ~50–130 мин
  • Время (review): ~60–90 мин (база 30–45 ×2: atomic writes to user config + benchmark claims verification)
  • Время (итого): ~110–220 мин

Priority: medium.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions