Commit Graph

4 Commits

Author SHA1 Message Date
Michał Pierzchała 26ac865c63 refactor: consolidate Apple platform internals (#968) 2026-06-30 21:30:46 +02:00
Michał Pierzchała 47fadf6925 fix: clean daemon-owned ios runner leases (#829) 2026-06-19 16:01:11 +02:00
Michał Pierzchała 5462d516d9 chore(daemon): takeover notice, dev state-dir pruning, session state-dir command surface (#754)
* chore(daemon): takeover notice, dev state-dir pruning, session state-dir command surface

Implements the three follow-ups from #737:

1. Print a one-line stderr notice when the client replaces a running
   daemon, stating identity and reason (version mismatch, code-signature
   mismatch, or unreachable). Best effort; never fails the command.

2. Add 'pnpm clean:daemon --prune-dev' to remove worktree-scoped state
   dirs under ~/.agent-device/dev/ that no live daemon owns (same
   pid/start-time liveness check as server-lifecycle) and that have been
   idle for 14+ days. Scoped dirs only; one line printed per removal.

3. Fold 'session state-dir' into the regular command surface: the
   session contract resolves it locally via the new
   client.sessions.stateDir(), the cli.ts pre-dispatch special case is
   removed, and the MCP session tool now exposes the state-dir action.

Closes #737

https://claude.ai/code/session_013WBrUjQ4WRxRkfVruALKX3

* docs: surface clean:daemon --prune-dev in AGENTS.md

Local agents discover daemon state-dir hygiene through AGENTS.md, not
the website docs, so document the prune flag next to the existing
worktree-scoped state-dir guidance.

https://claude.ai/code/session_013WBrUjQ4WRxRkfVruALKX3

---------

Co-authored-by: Claude <noreply@anthropic.com>
2026-06-11 07:41:34 +02:00
Michał Pierzchała c2b29d5600 fix: stabilize Maestro replay on iOS (#713)
* fix: stabilize Maestro replay on iOS

* fix: scope iOS runner cleanup to daemon owner

* fix: lease iOS runner ownership per device

* fix: release prepared iOS runner daemon in CI

* fix: inline runner lease release cleanup
2026-06-09 14:12:57 +02:00