-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Description
What happened?
Description
The gRPC specification is missing the state_transition_history field in AgentCapabilities that is present in both the JSON specification and TypeScript types.
Current State
JSON Specification (specification/json/a2a.json)
"AgentCapabilities": {
"properties": {
"streaming": { "type": "boolean" },
"pushNotifications": { "type": "boolean" },
"stateTransitionHistory": { "type": "boolean" },
"extensions": { "type": "array" }
}
}
TypeScript Types (types/src/types.ts):
export interface AgentCapabilities {
streaming?: boolean;
pushNotifications?: boolean;
stateTransitionHistory?: boolean;
extensions?: AgentExtension[];
}
gRPC Proto (specification/grpc/a2a.proto):
message AgentCapabilities {
bool streaming = 1;
bool push_notifications = 2;
repeated AgentExtension extensions = 3;
// ❌ state_transition_history is missing
}
Impact
This creates specification drift where:
- JSON-RPC agents can declare support for state transition history tracking
- gRPC agents cannot declare this capability
- Clients cannot discover which gRPC agents support state transition history
Proposed Solution
Add state_transition_history field to the gRPC AgentCapabilities message:
message AgentCapabilities {
bool streaming = 1;
bool push_notifications = 2;
repeated AgentExtension extensions = 3;
bool state_transition_history = 4;
}
This field indicates whether the agent provides a history of state transitions for a task, which is useful for debugging, compliance, and understanding agent behavior.
Relevant log output
Code of Conduct
- I agree to follow this project's Code of Conduct