Skip to content

feat(acp): implement session/close handler and capability advertisement #2421

@bug-ops

Description

@bug-ops

Context

ACP schema 0.11.2 renamed session/stopsession/close (breaking). Zeph has no explicit session/close handler in zeph-acp — routing currently falls through to the SDK crate.

More critically, Zeph must:

  1. Handle the session/close method in the ACP router (terminate the session, cancel in-flight turns, clean up AcpSessionManager state)
  2. Advertise session: { close: {} } in the capabilities response (initializeserverInfo.capabilities) — without this advertisement Zed will not know the capability is present
  3. Ensure AcpSessionManager drops 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

Related

Metadata

Metadata

Assignees

Labels

P2High value, medium complexityenhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions