Open erights opened 5 months ago
Hi @mhofman , ok to reassign to you?
https://github.com/Agoric/agoric-sdk/pull/9719/ has one upgrade. We'll need to test the vat terminating at any point, for which we'll need some testing tools in async-flow: https://github.com/Agoric/agoric-sdk/issues/9753
I'll keep this open until we have tests that do that.
What is the Problem Being Solved?
Confidence in upgrading Orchestration flows while they're in progress.
Description of the Design
Upgrade test of each example contract.
For remote calls to Agoric vats, can use
retriable
like in https://github.com/Agoric/agoric-sdk/pull/9719/ once we have https://github.com/Agoric/agoric-sdk/issues/9541In parallel make test that wait on bridge messages.
Security Considerations
Scaling Considerations
Test Plan
Upgrade Considerations
July 22 replaced earlier test: See #9125 #9126 #9097 #7966
The point of asyncFlow is for these flows to survive upgrade. However, the current upgrade testing framework asyncFlow uses, as of #9097, is low fidelity. All incarnations co-exist in one JS heap, and their turns may even interleave! This creates known failures to adequately test upgradability #9126 #9125 . Worse, when it succeeds, we don't know what problems might have been detected by a higher fidelity test, giving us less confidence than we'd like.
Most likely, we should follow the precedent of https://github.com/Agoric/agoric-sdk/pull/7966