UAT: A2A server transports and Agent Card discovery missing #6968

Open
opened 2026-04-10 06:06:22 +00:00 by HAL9000 · 0 comments
Owner

What was tested

  • Verified the A2A protocol implementation for server transports, Agent Card discovery, and SSE streaming against docs/specification.md on commit 51aab18411.

Expected behavior

  • The HTTP transport described in the spec should let clients connect to the CleverAgents server in server mode so JSON-RPC 2.0 calls succeed.
  • Agent Card discovery (message/agentCard and related operations) should be implemented so clients can enumerate capabilities, auth schemes, and metadata.
  • Remote SSE streaming should be available for plan/task updates as part of the A2A streaming architecture.

Actual behavior

  • A2aHttpTransport (src/cleveragents/a2a/transport.py, lines 22-67) is a stub that always raises A2aNotAvailableError, so any attempt to use the HTTP binding immediately fails.
  • Remote subscriptions (A2aEventQueue.subscribe_remote in src/cleveragents/a2a/events.py, lines 122-134) also raise A2aNotAvailableError, leaving no SSE streaming path in server mode.
  • There is no Agent Card implementation anywhere in src/cleveragents/a2a; searching for AgentCard or _cleveragents/agentCard returns no results, so the required discovery endpoint is missing entirely.
  • CLI bootstrap (src/cleveragents/a2a/cli_bootstrap.py) wires commands directly to the local facade instead of using the stdio JSON-RPC bridge promised in the spec, so there is no stdio transport either.

Steps to reproduce

  1. From the repository root, run a Python shell and execute:
    from cleveragents.a2a.transport import A2aHttpTransport
    A2aHttpTransport().connect('http://localhost:9000')
    
    The call raises A2aNotAvailableError because the transport is a stub.
  2. Attempt to subscribe to remote events:
    from cleveragents.a2a.events import A2aEventQueue
    A2aEventQueue().subscribe_remote('http://localhost:9000/sse')
    
    This raises the same A2aNotAvailableError, demonstrating the missing SSE support.
  3. Search the codebase for the Agent Card operations (AgentCard or _cleveragents/agentCard) – no matches are found, confirming the discovery API is unimplemented.

Code location

  • src/cleveragents/a2a/transport.py
  • src/cleveragents/a2a/events.py
  • src/cleveragents/a2a/cli_bootstrap.py
  • entire src/cleveragents/a2a module lacks Agent Card handling
## What was tested - Verified the A2A protocol implementation for server transports, Agent Card discovery, and SSE streaming against `docs/specification.md` on commit 51aab184112728471a44d5a91c334663cf8cd016. ## Expected behavior - The HTTP transport described in the spec should let clients connect to the CleverAgents server in server mode so JSON-RPC 2.0 calls succeed. - Agent Card discovery (`message/agentCard` and related operations) should be implemented so clients can enumerate capabilities, auth schemes, and metadata. - Remote SSE streaming should be available for plan/task updates as part of the A2A streaming architecture. ## Actual behavior - `A2aHttpTransport` (`src/cleveragents/a2a/transport.py`, lines 22-67) is a stub that always raises `A2aNotAvailableError`, so any attempt to use the HTTP binding immediately fails. - Remote subscriptions (`A2aEventQueue.subscribe_remote` in `src/cleveragents/a2a/events.py`, lines 122-134) also raise `A2aNotAvailableError`, leaving no SSE streaming path in server mode. - There is no Agent Card implementation anywhere in `src/cleveragents/a2a`; searching for `AgentCard` or `_cleveragents/agentCard` returns no results, so the required discovery endpoint is missing entirely. - CLI bootstrap (`src/cleveragents/a2a/cli_bootstrap.py`) wires commands directly to the local facade instead of using the stdio JSON-RPC bridge promised in the spec, so there is no stdio transport either. ## Steps to reproduce 1. From the repository root, run a Python shell and execute: ```python from cleveragents.a2a.transport import A2aHttpTransport A2aHttpTransport().connect('http://localhost:9000') ``` The call raises `A2aNotAvailableError` because the transport is a stub. 2. Attempt to subscribe to remote events: ```python from cleveragents.a2a.events import A2aEventQueue A2aEventQueue().subscribe_remote('http://localhost:9000/sse') ``` This raises the same `A2aNotAvailableError`, demonstrating the missing SSE support. 3. Search the codebase for the Agent Card operations (`AgentCard` or `_cleveragents/agentCard`) – no matches are found, confirming the discovery API is unimplemented. ## Code location - `src/cleveragents/a2a/transport.py` - `src/cleveragents/a2a/events.py` - `src/cleveragents/a2a/cli_bootstrap.py` - entire `src/cleveragents/a2a` module lacks Agent Card handling
HAL9000 added the
State
Unverified
label 2026-04-10 06:18:42 +00:00
HAL9000 self-assigned this 2026-04-10 06:21:44 +00:00
HAL9000 added this to the v3.7.0 milestone 2026-04-10 06:21:45 +00:00
HAL9000 added
MoSCoW
Must have
Points
3
Priority
High
State
Verified
and removed
State
Unverified
labels 2026-04-10 06:22:41 +00:00
freemo added
Priority
Backlog
Type
Bug
and removed
Priority
High
labels 2026-04-12 18:38:11 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: cleveragents/cleveragents-core#6968