[Feat]: A2A Client Support fallback to re-select url and transport when first choise fails.
还没有人认领这个 Issue。
评估
调研方向
查看选择传输方式和 URL 的客户端构建步骤,该步骤可能位于类似 A2AClientBuilder 的类中。了解 AgentInterface 和传输方式选择逻辑。需要将回退机制集成到 sendRequest 方法中,以便在失败时使用备用传输方式重试,也可能需要使用失败次数阈值。查看 A2A 规范第 5.6.3 节,了解传输方式选择规则的相关背景。
由索引模型根据 Issue 内容生成。
描述
Is your feature request related to a problem? Please describe.
According to the spec of A2A. Clients SHOULD implement fallback logic to try alternative transports if their first choice fails. Whice in No.4 from https://a2a-protocol.org/latest/specification/#563-client-transport-selection-rules.
I see the a2a-java client only choise trasport and url during building step and no the fallback to re-choice in any time. Once the transport that choised request fail, the client will be unavailable and users should re-get agentcard and re-build a2a client to used. I think it's not Graceful degradation.
I'm not sure whether there is plan to implement this feature in a2a-java communities. I’m excited to see this fallback mechanism implemented in the client.
Describe the solution you'd like
I think there are two way to implement this featrure.
-
when client.sendRequest fails with threadhold, client do re-choice transport without current AgentInterface. And let next request use new choised transport.
-
client not only build one best matched transport during building, but build all matched protocol transport and marked which is current choice. When request failed, client do fallback with other protocol transport to do retry.
Describe alternatives you've considered
No response
Additional context
No response
Code of Conduct
- I agree to follow this project's Code of Conduct
- 主要语言
- Java
- 星标
- 495
- 派生
- 174
- 平均合并
- 1 天 17 小时
- 30 天内合并 PR
- 48
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
a2aproject/a2a-java 的其他 Issue
-
[Bug]: NullPointerException in A2ACommonFieldMapper when a struct field has an explicit null value 未关闭
难度 2/5 1-3 小时 新手友好度 78/100
a2aproject/a2a-java#1160 · 1 条评论 · 2 个 reaction ·
-
难度 2/5 1-3 小时 新手友好度 75/100
a2aproject/a2a-java#1142 · 已指派 1 人 ·
-
难度 2/5 1-3 小时 新手友好度 75/100
a2aproject/a2a-java#1012 ·
-
难度 2/5 1-3 小时 新手友好度 65/100
a2aproject/a2a-java#464 · 1 条评论 ·
-
sample
难度 2/5 1-3 小时 新手友好度 70/100
a2aproject/a2a-java#375 · 5 条评论 · 已指派 1 人 ·
查看 a2aproject/a2a-java 的全部 Issue
相似的 Issue
-
documentation
难度 2/5 1-3 小时 新手友好度 65/100
inu-appcenter/memorIN-backend#288 ·
-
难度 2/5 1-3 小时 新手友好度 65/100
-
frontend maui-pilot pilot-ask question
难度 2/5 1-3 小时 新手友好度 75/100
-
难度 2/5 1-3 小时 新手友好度 75/100
-
area/plugin
难度 2/5 1-3 小时 新手友好度 75/100
kestra-io/plugin-kestra#190 ·