-
Notifications
You must be signed in to change notification settings - Fork 2
feat(acp): implement session/close handler and capability advertisement #2421
Copy link
Copy link
Closed
Labels
P2High value, medium complexityHigh value, medium complexityenhancementNew feature or requestNew feature or request
Description
Context
ACP schema 0.11.2 renamed session/stop → session/close (breaking). Zeph has no explicit session/close handler in zeph-acp — routing currently falls through to the SDK crate.
More critically, Zeph must:
- Handle the
session/closemethod in the ACP router (terminate the session, cancel in-flight turns, clean upAcpSessionManagerstate) - Advertise
session: { close: {} }in the capabilities response (initialize→serverInfo.capabilities) — without this advertisement Zed will not know the capability is present - Ensure
AcpSessionManagerdrops the session and cancels any in-flight turn on receipt
Why it matters
Zed IDE calls session/close on thread close (e.g., when the user closes a conversation tab). Without a handler, sessions silently leak in AcpSessionManager. The session/close capability advertisement is also required for ACP Registry inclusion (registry CI checks capabilities).
Acceptance criteria
session/closeJSON-RPC method handled inzeph-acp/src/handler.rs(or equivalent router)session: { close: {} }present ininitializeresponse capabilities objectAcpSessionManagerremoves the session from the LRU and sends cancel signal to any running turn actor- Schema 0.11.2 crate update (covered by feat(acp): update agent-client-protocol 0.10.2→0.10.3 + schema 0.11.2→0.11.4 — logout, elicitation, NES, stabilized session/list #2411) is prerequisite
Related
- feat(acp): update agent-client-protocol 0.10.2→0.10.3 + schema 0.11.2→0.11.4 — logout, elicitation, NES, stabilized session/list #2411 — ACP crate update + elicitation + logout + session/list stabilization
- fix(acp): discovery endpoint hardcodes "protocol_version": "0.9" — should reflect actual ProtocolVersion::LATEST #2412 — discovery manifest
protocol_versiontype fix
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
P2High value, medium complexityHigh value, medium complexityenhancementNew feature or requestNew feature or request