You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are some failures in the smart wallet contract (walletFactory.js) that throw or simply log to console. Because of the async nature of of the Cosmos bridge, that rejection don't get back to the initiator.
Description of the Design
Ensure that every failure in the contract is observable, using chain storage.
In #7291 I struggled to diagnose "tryExitOffer requires spend authority" until I got access to validator node logs. Is there a way to see it from RPC/chainStorage/vstorage?
What is the Problem Being Solved?
There are some failures in the smart wallet contract (walletFactory.js) that throw or simply log to console. Because of the async nature of of the Cosmos bridge, that rejection don't get back to the initiator.
Description of the Design
Ensure that every failure in the contract is observable, using chain storage.
For errors before the wallet is known,
published.wallet.lastError
: https://github.com/Agoric/agoric-sdk/blob/master/packages/smart-wallet/src/walletFactory.js#L152-L169For errors on a wallet before an offer execution can handle it,
published.wallet.{addr}.lastError
: https://github.com/Agoric/agoric-sdk/blob/master/packages/smart-wallet/src/walletFactory.js#L152-L169Anything that gets into an offer handler should write to the offerStatus when it fails.
Security Considerations
Scaling Considerations
Test Plan
The text was updated successfully, but these errors were encountered: