Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dt/retriable spike3 #9657

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from
Draft

Dt/retriable spike3 #9657

wants to merge 7 commits into from

Conversation

dtribble
Copy link
Member

@dtribble dtribble commented Jul 5, 2024

refs: #9541

  • add retriable to vowTools
  • turn warning of returned promise into an error
  • replace withdrawFromSeat with a transfer-to-local operation as an endowment
  • Refactor boilerplate and zone structure
  • Use placeholder retriable for findBrandInVBank

Copy link

cloudflare-workers-and-pages bot commented Jul 5, 2024

Deploying agoric-sdk with  Cloudflare Pages  Cloudflare Pages

Latest commit: b46f590
Status:🚫  Build failed.

View logs

dtribble and others added 6 commits July 6, 2024 06:18
* add `retriable` to `vowTools`
* turn warning of returned promise into an error
* make `withFromSeat` an endowment
Co-authored-by: Mark S. Miller <erights@users.noreply.github.com>
* restore agoric-names-tools
* update the zone architecture
* introduce the `contract` zone for user names
mergify bot added a commit that referenced this pull request Jul 9, 2024
refs: #9449

## Description

This makes ChainHub return durable vows. The underlying lookup functions are not durable but they made so by the `retriable` helper.

So this also introduces a stub version of #9541 pulled from @dtribble 's #9657

### Security Considerations
none

### Scaling Considerations
none

### Documentation Considerations
none

### Testing Considerations
CI

### Upgrade Considerations
not yet upgradable. Communicated by https://github.com/Agoric/agoric-sdk/blob/a267ba20db0eeb2082c287ca7b69e37d6f272eb9/packages/vow/src/tools.js#L37-L38
mergify bot added a commit that referenced this pull request Jul 9, 2024
_incidental_

## Description

`provideOrchestration` sought to bundle up all the boilerplate. @mhofman suggested an even cleaner bundling: `withOrchestration`. This lets the contract function ignore the privateArgs powers entirely and get a zone instead of baggage.

This makes that change, which required a name for the orchestration tools being provided. `OrchestrationTools` was the natural name but was used by a service for ICA accounts. @0xpatrickdev had some ideas for improving those names so this incorporates that as well.

It also rearranges the zone as @dtribble had in #9657


### Security Considerations
Requires handing full privateArgs to the `withOrchestration` helper. It's not a great habit to hand everything out of module scope but this is a well vetted utility. Eventually we expect to provide some of these abilities on the ZCF.

### Scaling Considerations
none

### Documentation Considerations
none

### Testing Considerations
CI. 

### Upgrade Considerations
Not yet deployed
mergify bot added a commit that referenced this pull request Jul 10, 2024
refs: #9449

## Description
Adapted from #9657 . The `retriable` helper and `withOrchestration` refactor landed already.

This has the rest:
- orchestrateAll helper
- separate module for flows
- ZoeTools endowment (for `withdrawFromSeat` à la #9449 ) 
- makeOrchestrator abstraction


### Security Considerations
`orchestrateAll` grants the same context to each orchFn. If they have to be different, the author can make multiple calls grouping what is the same.

Improves POLA of some Orchestration services by passing a `makeOrchestrator`.

### Scaling Considerations
none

### Documentation Considerations
none yet

### Testing Considerations
CI

### Upgrade Considerations
not yet deployed
Copy link
Member

@turadg turadg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Anything here you still want to land?

Copy link
Member

@turadg turadg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe to revisit after retriable is working

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants