Skip to content

fix: clarify proxy runner ownership#882

Merged
thymikee merged 2 commits into
mainfrom
codex/proxy-runner-lease-help
Jun 25, 2026
Merged

fix: clarify proxy runner ownership#882
thymikee merged 2 commits into
mainfrom
codex/proxy-runner-lease-help

Conversation

@thymikee

@thymikee thymikee commented Jun 25, 2026

Copy link
Copy Markdown
Member

Summary

Clarifies direct proxy remote simulator guidance, makes same-state iOS runner leases reclaimable, and improves proxy daemon reuse when HTTP transport is required.
Details: direct proxy users now see split proxy/session/cloud guidance and no longer get steered toward cloud/remote-config or prepare ios-runner recovery. Review follow-up also centralizes daemon transport-unavailable messages and documents the same-state runner lease reclaim invariant.

Validation

Passed focused runner lease, top-level help, daemon lifecycle tests, formatting, and quick lint/typecheck. Added SkillGym cases for direct-proxy simulator planning and retrying an owned-runner snapshot, but model-run validation was not rerun here because it requires explicit approval to send workspace-derived prompts to external model services.

@github-actions

github-actions Bot commented Jun 25, 2026

Copy link
Copy Markdown

Size Report

Metric Base Current Diff
JS raw 1.3 MB 1.3 MB +3.3 kB
JS gzip 433.9 kB 434.9 kB +923 B
npm tarball 571.8 kB 572.8 kB +940 B
npm unpacked 1.9 MB 1.9 MB +3.3 kB

Startup median (7 runs, lower is better):

Scenario Base Current Diff
CLI --version 27.6 ms 27.4 ms -0.1 ms
CLI --help 47.8 ms 47.9 ms +0.1 ms

Top changed chunks:

Chunk Raw diff Gzip diff
dist/src/cli-help.js +2.4 kB +572 B
dist/src/9722.js +599 B +225 B
dist/src/2948.js +159 B +66 B
dist/src/9919.js +107 B +60 B

@thymikee

Copy link
Copy Markdown
Member Author

Review pass: I do not see a code-path blocker in the diff, but I would not call this merge-ready yet because the core change is routing/device-facing.

The tests cover the helper behavior around HTTP-vs-socket daemon takeover and same-state runner lease cleanup, but the shipped path here is remote client -> proxy HTTP daemon -> iOS runner startup/retry on a real simulator. Please add one live direct-proxy iOS simulator result for the current branch, ideally showing:

  • direct proxy commands use one explicit --session and reach the proxied Mac daemon;
  • the first snapshot -i/interaction that hits the runner path succeeds after retry/reclaim behavior, or the exact command/device/session blocker if that cannot be reproduced;
  • prepare ios-runner is not part of the remote-client recovery path.

After that, the residual risk looks mostly around the intentional policy that a matching AGENT_DEVICE_STATE_DIR makes a foreign-token runner lease disposable. The unit test at src/platforms/ios/__tests__/runner-session.test.ts:707 covers that policy, but live evidence is what proves the proxy/daemon/runner boundary behaves the same way.

@thymikee thymikee merged commit 8c49d54 into main Jun 25, 2026
20 checks passed
@thymikee thymikee deleted the codex/proxy-runner-lease-help branch June 25, 2026 19:44
@github-actions

Copy link
Copy Markdown
PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-06-25 19:44 UTC

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