Changes in this PR are related to #9449, primarily for local-orchestration-account.js and cosmos-orchestration-account.js, service.js, and orchestrator.js. Attenuated versions of these kit are what the caller of ...getChain('agoric' | 'cosmos').makeAccount() receives.
This PR also includes a change to smart-wallet so it understands how to unwrap offerResults that are Vows. This uses heapVowTools which means it does not cover resumability in the scenario of smart-wallet upgrading - only the contracts that rely on it.
Other small changes included changes:
PromiseToVow and VowifyAll type helpers, so we can still reference the idealized API spec in code that returns Vows
fix/refactor of getTimeoutTimestampNS logic that removes an unnecessary network call when the caller supplies values
lint rule: adds a warning when importing heapVowE in resumable code
resumable lint rule changes to error, now that all warnings are resolved
Security Considerations
N/A
Scaling Considerations
N/A
Documentation Considerations
N/A
Testing Considerations
Adds a test boot and unit tests for a rejected Delegate wallet offer, which is helpful for ensuring errors are properly propagated through the vow chain.
Upgrade tests would be helpful here, but we haven't started on these yet. I don't think we need those to land this PR, although they are certainly critical before release. Would love to pair with someone on this and learn more about how we do that.
closes: #XXXX refs: #9449 refs: #9308
Description
Changes in this PR are related to #9449, primarily for
local-orchestration-account.js
andcosmos-orchestration-account.js
,service.js
, andorchestrator.js
. Attenuated versions of these kit are what the caller of...getChain('agoric' | 'cosmos').makeAccount()
receives.This PR also includes a change to
smart-wallet
so it understands how to unwrap offerResults that are Vows. This uses heapVowTools which means it does not cover resumability in the scenario ofsmart-wallet
upgrading - only the contracts that rely on it.Other small changes included changes:
PromiseToVow
andVowifyAll
type helpers, so we can still reference the idealized API spec in code that returns VowsgetTimeoutTimestampNS
logic that removes an unnecessary network call when the caller supplies valuesheapVowE
in resumable codeSecurity Considerations
N/A
Scaling Considerations
N/A
Documentation Considerations
N/A
Testing Considerations
Adds a test boot and unit tests for a rejected Delegate wallet offer, which is helpful for ensuring errors are properly propagated through the vow chain.
Upgrade tests would be helpful here, but we haven't started on these yet. I don't think we need those to land this PR, although they are certainly critical before release. Would love to pair with someone on this and learn more about how we do that.
Upgrade Considerations
This PR contains a change to smart-wallet.