Skip to content

fix: stop daemon/runner lifecycle leaks on iOS#60

Merged
thymikee merged 3 commits intomainfrom
codex/fix-daemon-runner-lifecycle
Feb 16, 2026
Merged

fix: stop daemon/runner lifecycle leaks on iOS#60
thymikee merged 3 commits intomainfrom
codex/fix-daemon-runner-lifecycle

Conversation

@thymikee
Copy link
Copy Markdown
Contributor

Summary

Make daemon and iOS runner lifecycle ownership deterministic so xcodebuild processes cannot leak or multiply.

  • enforce daemon singleton ownership with a lock and process identity checks
  • add safe daemon takeover in client (TERM/KILL with bounded waits)
  • serialize iOS runner session lifecycle per device and parallelize global runner teardown
  • ensure daemon shutdown always drains all iOS runner sessions
  • keep sessionless iOS snapshot/wait/alert paths cleaned up after command completion
  • align default daemon request timeout to 180000ms
  • remove test-only production exports and add utility-level tests for keyed locks and process identity

Validation

  • pnpm typecheck
  • pnpm test:unit
  • pnpm test:smoke

@github-actions
Copy link
Copy Markdown

github-actions bot commented Feb 16, 2026

PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://callstackincubator.github.io/agent-device/pr-preview/pr-60/

Built to branch gh-pages at 2026-02-16 10:24 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@thymikee thymikee merged commit 586716d into main Feb 16, 2026
6 checks passed
@thymikee thymikee deleted the codex/fix-daemon-runner-lifecycle branch February 16, 2026 10:30
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