Proxy leases: without --session, parallel agents pick up each other's session after open
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Anfängerfreundlichkeit
- 48/100
- Issue-Typ
- Bug
- Klarheit
- Größtenteils klar
- Aktivitätsstatus
- Aktiv
- Tech-Stack
- node.js, typescript
Rechercherichtung
Start by tracing session creation and loading in connection.js (Ae()) and cli.js (Zt/Kt), then inspect the code that writes remote-connections/<session>.json and .active-session.json. Reproduce with two parallel agents opening proxy leases and running snapshot -i without --session. Done when each agent's commands use its own lease reliably, with a clear error if an explicit session is required.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
With a proxy lease provider (simlock), commands after open only work when every one passes --session <id>, if several agents run on the same machine.
Seen with agent-device 0.21.28 through a simlock gateway, two agents in parallel. After open, snapshot -i without --session failed with one of:
No active proxy device lease for this session; run open first.refused: lease <id> is not one of yours on this gateway(from simlock: the lease id sent belongs to the other agent's token)
A single agent alone does not show it.
Cause, from the 0.21.28 dist:
- Without
--session,connect/openmakes up a random session name,adc-<32 hex>(connection.js,Ae()). - Each save writes
<stateDir>/remote-connections/<session>.jsonand points the machine-wide<stateDir>/remote-connections/.active-session.jsonat it. - A later command without
--sessionreads thedefaultsession file. That file does not exist, so it falls back to.active-session.json(cli.js,Zt/Kt;allowActiveFallbackis true when--sessionis not given).
So the active session is "whoever saved last on this machine". With two agents, agent A's snapshot picks up agent B's session (B's lease → simlock refuses it), or a session that has no lease (→ "No active proxy device lease"). On this machine .active-session.json currently names a session whose file is already gone.
Possible fixes, in agent-device:
- Derive the default session from something per-agent (e.g.
AGENT_DEVICE_SESSION, or an agent session id such asCLAUDE_CODE_SESSION_ID/CODEX_SESSION_ID) instead of a random name plus a machine-wide pointer. - Or have
openprint the session it made and refuse to fall back to the machine-wide pointer for a proxy lease, with an error that says to pass--session.
Workaround today: set AGENT_DEVICE_SESSION per agent, or pass --session on every command.
Written by an agent.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 5.1k
- Forks
- 339
- Ø Merge
- 12 Std. 50 Min.
- Gemergte PRs (30 T.)
- 632
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus callstack/agent-device
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 64/100
callstack/agent-device#3945 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Limrun iOS fill reports success but drops non-ASCII textEvtl. vergeben @mvanhorn hat das vor 5 Tagen übernommen. Offenbug ready-for-agent
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 87/100
callstack/agent-device#3819 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 68/100
callstack/agent-device#1869 ·
Maintainer antworten meist innerhalb von 1 Tag
-
iOS keyboard capture can race dismissal and omit the input assistant barEvtl. vergeben @shamilovtim hat das vor 1 Tag übernommen. Offen
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 51/100
callstack/agent-device#3957 ·
Maintainer antworten meist innerhalb von 1 Tag
-
iOS fill can report TEXT_ENTRY_MISMATCH before the confirmation deadlineEvtl. vergeben @shamilovtim hat das vor 1 Tag übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 35/100
callstack/agent-device#3952 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in callstack/agent-device
Ähnliche Issues
-
ready
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 63/100
wheresrhys/totf#1214 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
CodeChefVIT/ffcs#281 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 83/100
endora-commerce/endora-commerce#451 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
vetro-protocol/vetro-monorepo#1007 ·
Maintainer antworten meist innerhalb von 1 Tag