Agoric / agoric-sdk

monorepo for the Agoric Javascript smart contract platform
Apache License 2.0
303 stars 191 forks source link

chore(orchestration): endowments are membrane-friendly #9591

Closed 0xpatrickdev closed 1 day ago

0xpatrickdev commented 4 days ago

closes: #XXXX refs: #9449 refs: #9308

Description

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:

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.

Upgrade Considerations

This PR contains a change to smart-wallet.

cloudflare-pages[bot] commented 4 days ago

Deploying agoric-sdk with  Cloudflare Pages  Cloudflare Pages

Latest commit: 100e0a3
Status: ✅  Deploy successful!
Preview URL: https://24abe6ef.agoric-sdk.pages.dev
Branch Preview URL: https://pc-local-orch-account-vows.agoric-sdk.pages.dev

View logs