CI enforces map ↔ OpenAPI parity via http_openapi_capability_map_contract, table-driven HTTP denial via http_capability_matrix_e2e, and scripts/check-agent-contract.sh.
GET workspaces, channels, threads, messages, artifacts, search, events (member), GET /workspaces/:id/audit, GET /workspaces/:id/context, GET /workspaces/:wid/mention-webhook, group-DM list/get, automation list/DLQ/get, MCP notifications SSE, POST /mcp/streamable
workspace:write
POST channels, threads, messages (mentions, votes), references; POST /workspaces/:id/purge; automation replay; slash/FSM hook CRUD; PUT /workspaces/:wid/mention-webhook
message:post
POST thread messages, A2A SendMessage
thread:transition
POST thread FSM transitions
artifact:upload
POST /artifacts, multipart artifact routes
search:query
GET workspace search
event:subscribe
WebSocket /ws/subscribe (token in subscribe frame)
token:admin
Mint/revoke/list API tokens (GET/POST .../members/:mid/tokens, DELETE /tokens/:id)