Skip to content

feat(chat-swarm-runtime): add existing Chrome session control - #178

Open
James3014 wants to merge 1 commit into
mainfrom
chatgpt/issue-117-wave3-existing-session-r2-20260916
Open

James3014 wants to merge 1 commit into
mainfrom
chatgpt/issue-117-wave3-existing-session-r2-20260916

Conversation

@James3014

Copy link
Copy Markdown
Owner

Summary

Part of #117 Wave 3 / G1. Rebind the existing macOS Chat Swarm runtime to an explicitly authorized existing Chrome session without creating a second worker/task/runtime authority.

This PR:

  • adds explicit DEVSPACE_CHAT_SWARM_CDP_MODE=existing-session configuration;
  • reads only the selected Chrome user-data-dir DevToolsActivePort endpoint artifact and opens one bounded browser-control WebSocket per lifecycle operation;
  • keeps browser target/session IDs ephemeral and preserves exact persisted ChatGPT conversation identity;
  • reopens only the saved conversation after target loss and checks exact URL identity before prompt mutation;
  • keeps browser-control, signed-out, app-binding, conversation-drift, and peer-identity failures distinct;
  • preserves OUTCOME_UNKNOWN != retry permission and does not add automatic transport fallback;
  • persists the authenticated MCP peer fingerprint separately from the transport conversation fingerprint after bootstrap;
  • keeps legacy managed CDP and optional OpenCLI compatibility paths intact.

Exact Candidate

  • base: c40873c1ff37f4fb93b46b88028a5aebe63030c1
  • head: 4d1c822e43851b43298386b0ba0a728fd7208a2e
  • tree: 881ba9da8eee6831591d7509135e7224a780993e
  • changed paths: 3
  • deletions: 0
  • diff: 992 insertions / 39 deletions

The final Candidate tree is byte-identical to the earlier locally verified Wave 3 Candidate tree; it was rematerialized through the Core-bound Candidate integration path so publication provenance stayed valid.

Verification

Exact-head local evidence:

  • src/chat-swarm-runtime.test.ts: 36/36 PASS
  • npm run typecheck: PASS
  • npm run build: PASS; build identity devspace-1.0.7-4d1c822e
  • full npm test: PASS (exit 0)
  • git diff --check: PASS
  • remote branch readback: exact head 4d1c822e43851b43298386b0ba0a728fd7208a2e

Hostile controls include malformed/missing DevToolsActivePort, endpoint rotation, exact-target isolation, lost target recovery, browser disconnect/ack loss with no resend, cross-session response rejection, conversation URL drift, signed-out classification, UNKNOWN/DISABLED/STALE app binding, durable binding reason retention, and authenticated-peer bootstrap continuity.

Claim boundary

This is G1 source Candidate evidence only. It does not claim installed-build/native Chrome authorization, exact deployed runtime, G2 zero-touch ensure(3), G3 targeted execution, G4 recovery, G5 scaling, G6 cold reconstruction, release, or production acceptance.

Current #117 ceiling remains:
MACOS_ZERO_TOUCH_CHATGPT_WORKER_RUNTIME_NOT_YET_PROVEN.

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