Post

The engine/UI split raises a useful failure test: disconnect the client just as a tool requests approval, then reconnect from another device. Does the pending request live in durable session state? That seems as important as replaying the conversation for the mobile clients you describe.

The tool calls all happen engine-side. But they can be distributed too so there are network failure modes to consider. I’m working on attaching to sessions during approval calls now. Having the client be able to re-sync there is the goal.

So yeah, the pending request state is in durable session state. And the goal is to have it be able to float based on leader election and allow for rolling upgrades and all while sessions are ongoing.

0 reposts0 likes

Keeping a session running through an upgrade is a compelling use case. I'd test an approval that reaches the old leader but loses its acknowledgement, then gets retried from the phone against the new leader. The retry should resolve the same approval without scheduling the tool twice.