GitHub user pltbkd added a comment to the discussion: [Feature] Sub-agent Resource for Flink Agents - Framework part
Thanks for the detailed thoughts. This design aims to keep the user-facing interface simple. I agree that these concerns belong to the framework rather than every individual subagent implementation. At the same time, I'd also like to clarify that most of the mechanisms you mentioned are already part of the current design, although they are exposed differently: - Stable Invocation ID → the deterministic SessionId. - Invocation lifecycle → all subagent calls are expected to go through durableExecute. - Recovery / reconciliation → handled by durableExecute, not by the subagent author. - Completion semantics → durableExecute provides durable execution for internal subagents. Combined with framework-managed Action state, it enables strict consistency; without Action state, it naturally degrades to completion-only semantics, where intermediate execution state is not observable. External subagents are expected to provide the same completion semantics by using durableExecute. Cancellation semantics are indeed missing today. I suppose it won't changes the overall architecture, but it is definitely a gap that should be addressed. For external subagents, the intention is that they follow the same durability contract (for example, by wrapping external operations with durableExecute). What is currently missing is a shared framework for external subagents that can enforce these conventions automatically rather than relying on implementations to follow them. If you have concrete requirements or examples in this area, I'd be happy to discuss them further. GitHub link: https://github.com/apache/flink-agents/discussions/909#discussioncomment-17694034 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected]
