@agoric/orchestration 0.1.1-dev-217005a.0 → 0.1.1-dev-023e19f.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agoric/orchestration",
3
- "version": "0.1.1-dev-217005a.0+217005a",
3
+ "version": "0.1.1-dev-023e19f.0+023e19f",
4
4
  "description": "Chain abstraction for Agoric's orchestration clients",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -33,19 +33,19 @@
33
33
  },
34
34
  "homepage": "https://github.com/Agoric/agoric-sdk#readme",
35
35
  "dependencies": {
36
- "@agoric/async-flow": "0.1.1-dev-217005a.0+217005a",
37
- "@agoric/cosmic-proto": "0.4.1-dev-217005a.0+217005a",
38
- "@agoric/ertp": "0.16.3-dev-217005a.0+217005a",
39
- "@agoric/internal": "0.3.3-dev-217005a.0+217005a",
40
- "@agoric/network": "0.1.1-dev-217005a.0+217005a",
41
- "@agoric/notifier": "0.6.3-dev-217005a.0+217005a",
42
- "@agoric/store": "0.9.3-dev-217005a.0+217005a",
43
- "@agoric/time": "0.3.3-dev-217005a.0+217005a",
44
- "@agoric/vat-data": "0.5.3-dev-217005a.0+217005a",
45
- "@agoric/vats": "0.15.2-dev-217005a.0+217005a",
46
- "@agoric/vow": "0.1.1-dev-217005a.0+217005a",
47
- "@agoric/zoe": "0.26.3-dev-217005a.0+217005a",
48
- "@agoric/zone": "0.2.3-dev-217005a.0+217005a",
36
+ "@agoric/async-flow": "0.1.1-dev-023e19f.0+023e19f",
37
+ "@agoric/cosmic-proto": "0.4.1-dev-023e19f.0+023e19f",
38
+ "@agoric/ertp": "0.16.3-dev-023e19f.0+023e19f",
39
+ "@agoric/internal": "0.3.3-dev-023e19f.0+023e19f",
40
+ "@agoric/network": "0.1.1-dev-023e19f.0+023e19f",
41
+ "@agoric/notifier": "0.6.3-dev-023e19f.0+023e19f",
42
+ "@agoric/store": "0.9.3-dev-023e19f.0+023e19f",
43
+ "@agoric/time": "0.3.3-dev-023e19f.0+023e19f",
44
+ "@agoric/vat-data": "0.5.3-dev-023e19f.0+023e19f",
45
+ "@agoric/vats": "0.15.2-dev-023e19f.0+023e19f",
46
+ "@agoric/vow": "0.1.1-dev-023e19f.0+023e19f",
47
+ "@agoric/zoe": "0.26.3-dev-023e19f.0+023e19f",
48
+ "@agoric/zone": "0.2.3-dev-023e19f.0+023e19f",
49
49
  "@endo/base64": "^1.0.5",
50
50
  "@endo/errors": "^1.2.2",
51
51
  "@endo/far": "^1.1.2",
@@ -53,6 +53,7 @@
53
53
  "@endo/patterns": "^1.4.0"
54
54
  },
55
55
  "devDependencies": {
56
+ "@agoric/swingset-liveslots": "0.10.3-dev-023e19f.0+023e19f",
56
57
  "@chain-registry/client": "^1.47.4",
57
58
  "@cosmjs/amino": "^0.32.3",
58
59
  "@cosmjs/proto-signing": "^0.32.3",
@@ -90,5 +91,5 @@
90
91
  "typeCoverage": {
91
92
  "atLeast": 97.1
92
93
  },
93
- "gitHead": "217005a921dcac6928c999e6bfe06330a5947ac5"
94
+ "gitHead": "023e19f0ed07c5ee83801d8619f4b507f07abdaf"
94
95
  }
@@ -47,7 +47,7 @@ export const start = async (zcf, privateArgs, baggage) => {
47
47
  zcf,
48
48
  privateArgs.timerService,
49
49
  vowTools,
50
- makeChainHub(privateArgs.agoricNames),
50
+ makeChainHub(privateArgs.agoricNames, vowTools),
51
51
  );
52
52
 
53
53
  // ----------------
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @import {NameHub} from '@agoric/vats';
3
- * @import {Vow} from '@agoric/vow';
3
+ * @import {Vow, VowTools} from '@agoric/vow';
4
4
  * @import {CosmosChainInfo, IBCConnectionInfo} from '../cosmos-api.js';
5
5
  * @import {ChainInfo, KnownChains} from '../chain-info.js';
6
6
  * @import {Remote} from '@agoric/internal';
@@ -17,7 +17,7 @@ export const CHAIN_KEY: "chain";
17
17
  /** namehub for connection info */
18
18
  export const CONNECTIONS_KEY: "chainConnection";
19
19
  export function connectionKey(chainId1: string, chainId2: string): string;
20
- export function makeChainHub(agoricNames: Remote<NameHub>, zone?: Zone | undefined): import("@endo/exo").Guarded<{
20
+ export function makeChainHub(agoricNames: Remote<NameHub>, vowTools: VowTools): import("@endo/exo").Guarded<{
21
21
  /**
22
22
  * Register a new chain. The name will override a name in well known chain
23
23
  * names.
@@ -68,7 +68,7 @@ export type ActualChainInfo<K extends string> = K extends keyof KnownChains ? Om
68
68
  export type ChainHub = ReturnType<typeof makeChainHub>;
69
69
  import type { NameHub } from '@agoric/vats';
70
70
  import type { Remote } from '@agoric/internal';
71
- import type { Zone } from '@agoric/zone';
71
+ import type { VowTools } from '@agoric/vow';
72
72
  import type { CosmosChainInfo } from '../cosmos-api.js';
73
73
  import type { Vow } from '@agoric/vow';
74
74
  import type { IBCConnectionInfo } from '../cosmos-api.js';
@@ -1 +1 @@
1
- {"version":3,"file":"chain-hub.d.ts","sourceRoot":"","sources":["chain-hub.js"],"names":[],"mappings":"AAcA;;;;;;;GAOG;AAEH;;;;;GAKG;AAEH,wCAAwC;AACxC,gCAAiC;AACjC,kCAAkC;AAClC,gDAAiD;AAqB1C,wCAHI,MAAM,YACN,MAAM,UAUhB;AAoCM,0CAHI,OAAO,OAAO,CAAC;IAgBtB;;;;;;;;;;;OAWG;wBAFQ,MAAM,aACN,eAAe;IAK1B;;;;OAIG;iBAHmB,CAAC,SAAV,MAAQ,aACV,CAAC,GACC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IAoBpC;;;;OAIG;iCAHQ,MAAM,YACN,MAAM,kBACN,iBAAiB;IAO5B;;;;OAIG;8BAHQ,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,UAC5B,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAC1B,IAAI,iBAAiB,CAAC;IAqBnC;;;;;;;;OAQG;2BAPmB,EAAE,SAAX,MAAQ,EACC,EAAE,SAAX,MAAQ,cACV,EAAE,cACF,EAAE,GACA,IACZ,CAAK,eAAe,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAC9D;GAsBP;4BA5LqB,CAAC,SAAV,MAAQ,IACR,CAAC,SAAS,MAAM,WAAW,GACjC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,GACnC,SAAS;uBA0LF,UAAU,CAAC,OAAO,YAAY,CAAC;6BAtMnB,cAAc;4BAIf,kBAAkB;0BACpB,cAAc;qCAHgB,kBAAkB;yBADjD,aAAa;uCACkB,kBAAkB;iCAC9B,kBAAkB;+BAAlB,kBAAkB"}
1
+ {"version":3,"file":"chain-hub.d.ts","sourceRoot":"","sources":["chain-hub.js"],"names":[],"mappings":"AAQA;;;;;;;GAOG;AAEH;;;;;GAKG;AAEH,wCAAwC;AACxC,gCAAiC;AACjC,kCAAkC;AAClC,gDAAiD;AAqB1C,wCAHI,MAAM,YACN,MAAM,UAUhB;AAoCM,0CAHI,OAAO,OAAO,CAAC,YACf,QAAQ;IAmGf;;;;;;;;;;;OAWG;wBAFQ,MAAM,aACN,eAAe;IAK1B;;;;OAIG;iBAHmB,CAAC,SAAV,MAAQ,aACV,CAAC,GACC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;IAYpC;;;;OAIG;iCAHQ,MAAM,YACN,MAAM,kBACN,iBAAiB;IAO5B;;;;OAIG;8BAHQ,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,UAC5B,MAAM,GAAG;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAC1B,IAAI,iBAAiB,CAAC;IAanC;;;;;;;;OAQG;2BAPmB,EAAE,SAAX,MAAQ,EACC,EAAE,SAAX,MAAQ,cACV,EAAE,cACF,EAAE,GACA,IACZ,CAAK,eAAe,CAAC,EAAE,CAAC,EAAE,eAAe,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC,CAC9D;GASP;4BAnPqB,CAAC,SAAV,MAAQ,IACR,CAAC,SAAS,MAAM,WAAW,GACjC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,aAAa,CAAC,GACnC,SAAS;uBAiPF,UAAU,CAAC,OAAO,YAAY,CAAC;6BA7PnB,cAAc;4BAIf,kBAAkB;8BAHX,aAAa;qCACQ,kBAAkB;yBADvC,aAAa;uCACQ,kBAAkB;iCAC9B,kBAAkB;+BAAlB,kBAAkB"}
@@ -3,18 +3,12 @@ import { E } from '@endo/far';
3
3
  import { M } from '@endo/patterns';
4
4
 
5
5
  import { VowShape } from '@agoric/vow';
6
- // eslint-disable-next-line no-restricted-syntax
7
- import { heapVowTools } from '@agoric/vow/vat.js';
8
6
  import { makeHeapZone } from '@agoric/zone';
9
7
  import { CosmosChainInfoShape, IBCConnectionInfoShape } from '../typeGuards.js';
10
8
 
11
- // FIXME test thoroughly whether heap suffices for ChainHub
12
- // eslint-disable-next-line no-restricted-syntax
13
- const { allVows, watch } = heapVowTools;
14
-
15
9
  /**
16
10
  * @import {NameHub} from '@agoric/vats';
17
- * @import {Vow} from '@agoric/vow';
11
+ * @import {Vow, VowTools} from '@agoric/vow';
18
12
  * @import {CosmosChainInfo, IBCConnectionInfo} from '../cosmos-api.js';
19
13
  * @import {ChainInfo, KnownChains} from '../chain-info.js';
20
14
  * @import {Remote} from '@agoric/internal';
@@ -94,9 +88,10 @@ const ChainHubI = M.interface('ChainHub', {
94
88
  * hub and repeat the registrations.
95
89
  *
96
90
  * @param {Remote<NameHub>} agoricNames
97
- * @param {Zone} [zone]
91
+ * @param {VowTools} vowTools
98
92
  */
99
- export const makeChainHub = (agoricNames, zone = makeHeapZone()) => {
93
+ export const makeChainHub = (agoricNames, vowTools) => {
94
+ const zone = makeHeapZone();
100
95
  /** @type {MapStore<string, CosmosChainInfo>} */
101
96
  const chainInfos = zone.mapStore('chainInfos', {
102
97
  keyShape: M.string(),
@@ -108,6 +103,89 @@ export const makeChainHub = (agoricNames, zone = makeHeapZone()) => {
108
103
  valueShape: IBCConnectionInfoShape,
109
104
  });
110
105
 
106
+ const lookupChainInfo = vowTools.retriable(
107
+ zone,
108
+ 'lookupChainInfo',
109
+ /** @param {string} chainName */
110
+ // eslint-disable-next-line no-restricted-syntax -- TODO more exact rules for vow best practices
111
+ async chainName => {
112
+ await null;
113
+ try {
114
+ const chainInfo = await E(agoricNames).lookup(CHAIN_KEY, chainName);
115
+ // It may have been set by another concurrent call
116
+ // TODO consider makeAtomicProvider for vows
117
+ if (!chainInfos.has(chainName)) {
118
+ chainInfos.init(chainName, chainInfo);
119
+ }
120
+ return chainInfo;
121
+ } catch (e) {
122
+ console.error('lookupChainInfo', chainName, 'error', e);
123
+ throw makeError(`chain not found:${chainName}`);
124
+ }
125
+ },
126
+ );
127
+
128
+ const lookupConnectionInfo = vowTools.retriable(
129
+ zone,
130
+ 'lookupConnectionInfo',
131
+ /**
132
+ * @param {string} chainId1
133
+ * @param {string} chainId2
134
+ */
135
+ // eslint-disable-next-line no-restricted-syntax -- TODO more exact rules for vow best practices
136
+ async (chainId1, chainId2) => {
137
+ await null;
138
+ const key = connectionKey(chainId1, chainId2);
139
+ try {
140
+ const connectionInfo = await E(agoricNames).lookup(
141
+ CONNECTIONS_KEY,
142
+ key,
143
+ );
144
+ // It may have been set by another concurrent call
145
+ // TODO consider makeAtomicProvider for vows
146
+ if (!connectionInfos.has(key)) {
147
+ connectionInfos.init(key, connectionInfo);
148
+ }
149
+ return connectionInfo;
150
+ } catch (e) {
151
+ console.error('lookupConnectionInfo', chainId1, chainId2, 'error', e);
152
+ throw makeError(`connection not found: ${chainId1}<->${chainId2}`);
153
+ }
154
+ },
155
+ );
156
+
157
+ /* eslint-disable no-use-before-define -- chainHub defined below */
158
+ const lookupChainsAndConnection = vowTools.retriable(
159
+ zone,
160
+ 'lookupChainsAndConnection',
161
+ /**
162
+ * @template {string} C1
163
+ * @template {string} C2
164
+ * @param {C1} chainName1
165
+ * @param {C2} chainName2
166
+ * @returns {Promise<
167
+ * [ActualChainInfo<C1>, ActualChainInfo<C2>, IBCConnectionInfo]
168
+ * >}
169
+ */
170
+ // eslint-disable-next-line no-restricted-syntax -- TODO more exact rules for vow best practices
171
+ async (chainName1, chainName2) => {
172
+ const [chain1, chain2] = await vowTools.asPromise(
173
+ vowTools.allVows([
174
+ chainHub.getChainInfo(chainName1),
175
+ chainHub.getChainInfo(chainName2),
176
+ ]),
177
+ );
178
+ const connectionInfo = await vowTools.asPromise(
179
+ chainHub.getConnectionInfo(chain2, chain1),
180
+ );
181
+ return /** @type {[ActualChainInfo<C1>, ActualChainInfo<C2>, IBCConnectionInfo]} */ ([
182
+ chain1,
183
+ chain2,
184
+ connectionInfo,
185
+ ]);
186
+ },
187
+ );
188
+
111
189
  const chainHub = zone.exo('ChainHub', ChainHubI, {
112
190
  /**
113
191
  * Register a new chain. The name will override a name in well known chain
@@ -133,19 +211,11 @@ export const makeChainHub = (agoricNames, zone = makeHeapZone()) => {
133
211
  // Either from registerChain or memoized remote lookup()
134
212
  if (chainInfos.has(chainName)) {
135
213
  return /** @type {Vow<ActualChainInfo<K>>} */ (
136
- watch(chainInfos.get(chainName))
214
+ vowTools.asVow(() => chainInfos.get(chainName))
137
215
  );
138
216
  }
139
217
 
140
- return watch(E(agoricNames).lookup(CHAIN_KEY, chainName), {
141
- onFulfilled: chainInfo => {
142
- chainInfos.init(chainName, chainInfo);
143
- return chainInfo;
144
- },
145
- onRejected: _cause => {
146
- throw makeError(`chain not found:${chainName}`);
147
- },
148
- });
218
+ return lookupChainInfo(chainName);
149
219
  },
150
220
  /**
151
221
  * @param {string} chainId1
@@ -167,18 +237,10 @@ export const makeChainHub = (agoricNames, zone = makeHeapZone()) => {
167
237
  const chainId2 = typeof chain2 === 'string' ? chain2 : chain2.chainId;
168
238
  const key = connectionKey(chainId1, chainId2);
169
239
  if (connectionInfos.has(key)) {
170
- return watch(connectionInfos.get(key));
240
+ return vowTools.asVow(() => connectionInfos.get(key));
171
241
  }
172
242
 
173
- return watch(E(agoricNames).lookup(CONNECTIONS_KEY, key), {
174
- onFulfilled: connectionInfo => {
175
- connectionInfos.init(key, connectionInfo);
176
- return connectionInfo;
177
- },
178
- onRejected: _cause => {
179
- throw makeError(`connection not found: ${chainId1}<->${chainId2}`);
180
- },
181
- });
243
+ return lookupConnectionInfo(chainId1, chainId2);
182
244
  },
183
245
 
184
246
  /**
@@ -191,21 +253,8 @@ export const makeChainHub = (agoricNames, zone = makeHeapZone()) => {
191
253
  * >}
192
254
  */
193
255
  getChainsAndConnection(chainName1, chainName2) {
194
- return watch(
195
- allVows([
196
- chainHub.getChainInfo(chainName1),
197
- chainHub.getChainInfo(chainName2),
198
- ]),
199
- {
200
- onFulfilled: ([chain1, chain2]) => {
201
- return watch(chainHub.getConnectionInfo(chain2, chain1), {
202
- onFulfilled: connectionInfo => {
203
- return [chain1, chain2, connectionInfo];
204
- },
205
- });
206
- },
207
- },
208
- );
256
+ // @ts-expect-error XXX generic parameter propagation
257
+ return lookupChainsAndConnection(chainName1, chainName2);
209
258
  },
210
259
  });
211
260
 
@@ -1 +1 @@
1
- {"version":3,"file":"start-stakeAtom.d.ts","sourceRoot":"","sources":["start-stakeAtom.js"],"names":[],"mappings":"AAuBO,yOAVI,eAAe,GAAG;IAC5B,YAAgB,EAAE;QAClB,OAAa,EAAE;YACf,QAAgB,EAAE,YAAY,CAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA0D,CACjD,CAAC;SACH,CAAC;KACH,CAAC;CACH,iBAoDH;AAGM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BN;mCAjG4C,+BAA+B"}
1
+ {"version":3,"file":"start-stakeAtom.d.ts","sourceRoot":"","sources":["start-stakeAtom.js"],"names":[],"mappings":"AAyBO,yOAVI,eAAe,GAAG;IAC5B,YAAgB,EAAE;QAClB,OAAa,EAAE;YACf,QAAgB,EAAE,YAAY,CAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA0D,CACjD,CAAC;SACH,CAAC;KACH,CAAC;CACH,iBAqDH;AAGM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BN;mCAlG4C,+BAA+B"}
@@ -1,6 +1,8 @@
1
1
  import { makeTracer } from '@agoric/internal';
2
2
  import { makeStorageNodeChild } from '@agoric/internal/src/lib-chainStorage.js';
3
- import { heapVowE as E } from '@agoric/vow/vat.js';
3
+ import { prepareVowTools } from '@agoric/vow';
4
+ import { makeHeapZone } from '@agoric/zone';
5
+ import { E } from '@endo/far';
4
6
  import { makeChainHub } from '../exos/chain-hub.js';
5
7
 
6
8
  /**
@@ -44,9 +46,10 @@ export const startStakeAtom = async ({
44
46
  const storageNode = await makeStorageNodeChild(chainStorage, VSTORAGE_PATH);
45
47
  const marshaller = await E(board).getPublishingMarshaller();
46
48
 
47
- const chainHub = makeChainHub(await agoricNames);
49
+ const vt = prepareVowTools(makeHeapZone());
50
+ const chainHub = makeChainHub(await agoricNames, vt);
48
51
 
49
- const [_, cosmoshub, connectionInfo] = await E.when(
52
+ const [_, cosmoshub, connectionInfo] = await vt.when(
50
53
  chainHub.getChainsAndConnection('agoric', 'cosmoshub'),
51
54
  );
52
55
 
@@ -1 +1 @@
1
- {"version":3,"file":"start-stakeOsmo.d.ts","sourceRoot":"","sources":["start-stakeOsmo.js"],"names":[],"mappings":"AAuBO,yOAVI,eAAe,GAAG;IAC5B,YAAgB,EAAE;QAClB,OAAa,EAAE;YACf,QAAgB,EAAE,YAAY,CAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA0D,CACjD,CAAC;SACH,CAAC;KACH,CAAC;CACH,iBAqDH;AAGM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BN"}
1
+ {"version":3,"file":"start-stakeOsmo.d.ts","sourceRoot":"","sources":["start-stakeOsmo.js"],"names":[],"mappings":"AAyBO,yOAVI,eAAe,GAAG;IAC5B,YAAgB,EAAE;QAClB,OAAa,EAAE;YACf,QAAgB,EAAE,YAAY,CAC9B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAA0D,CACjD,CAAC;SACH,CAAC;KACH,CAAC;CACH,iBAsDH;AAGM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BN"}
@@ -1,6 +1,8 @@
1
1
  import { makeTracer } from '@agoric/internal';
2
2
  import { makeStorageNodeChild } from '@agoric/internal/src/lib-chainStorage.js';
3
- import { heapVowE as E } from '@agoric/vow/vat.js';
3
+ import { prepareVowTools } from '@agoric/vow';
4
+ import { makeHeapZone } from '@agoric/zone';
5
+ import { E } from '@endo/far';
4
6
  import { makeChainHub } from '../exos/chain-hub.js';
5
7
 
6
8
  /**
@@ -45,9 +47,10 @@ export const startStakeOsmo = async ({
45
47
  const storageNode = await makeStorageNodeChild(chainStorage, VSTORAGE_PATH);
46
48
  const marshaller = await E(board).getPublishingMarshaller();
47
49
 
48
- const chainHub = makeChainHub(await agoricNames);
50
+ const vt = prepareVowTools(makeHeapZone());
51
+ const chainHub = makeChainHub(await agoricNames, vt);
49
52
 
50
- const [_, osmosis, connectionInfo] = await E.when(
53
+ const [_, osmosis, connectionInfo] = await vt.when(
51
54
  chainHub.getChainsAndConnection('agoric', 'osmosis'),
52
55
  );
53
56
 
@@ -17,6 +17,7 @@ export function provideOrchestration(zcf: ZCF, baggage: Baggage, remotePowers: O
17
17
  allVows: (maybeVows: import("@agoric/vow").EVow<unknown>[]) => import("@agoric/vow").Vow<any[]>;
18
18
  asVow: <T extends unknown>(fn: (...args: any[]) => import("@agoric/vow").Vow<Awaited<T>> | Awaited<T> | import("@agoric/vow").PromiseVow<T>) => import("@agoric/vow").Vow<Awaited<T>>;
19
19
  asPromise: import("@agoric/vow").AsPromiseFunction;
20
+ retriable: <T>(fnZone: import("@agoric/base-zone").Zone, name: string, fn: (...args: unknown[]) => import("@agoric/vow").ERef<T>) => (...args: unknown[]) => import("@agoric/vow").Vow<T>;
20
21
  };
21
22
  zone: import("@agoric/base-zone").Zone;
22
23
  orchestrate<GuestReturn, HostReturn, GuestContext, HostContext, GuestArgs extends any[], HostArgs extends any[]>(durableName: string, hostCtx: HostContext, guestFn: (guestOrc: import("../orchestration-api.js").Orchestrator, guestCtx: GuestContext, ...args: GuestArgs) => Promise<GuestReturn>): (...args: HostArgs) => Promise<HostReturn>;
@@ -1 +1 @@
1
- {"version":3,"file":"start-helper.d.ts","sourceRoot":"","sources":["start-helper.js"],"names":[],"mappings":"AAwCO,0CALI,GAAG,WACH,OAAO,gBACP,mBAAmB,cACnB,UAAU;;;;;;;;;;;;;;;;;wCA4Cd,GAAG;;;;4PA4BiB,GAAa,4CAGP,GAAG;;;;;;EAFnC;kCAzFY;IACZ,UAAc,EAAE,OAAO,UAAU,CAAC,CAAC;IACnC,oBAAwB,EAAE,OAAO,oBAAoB,CAAC,CAAC;IACvD,WAAe,EAAE,OAAO,WAAW,CAAC,CAAC;IACrC,YAAgB,EAAE,OAAO,YAAY,CAAC,CAAC;IACvC,WAAe,EAAE,OAAO,OAAO,CAAC,CAAC;CAC9B;6BAbsB,kBAAkB;gCAFf,gCAAgC;4BAIpC,aAAa;0CACC,eAAe;kCAJX,cAAc;6BAE/B,cAAc"}
1
+ {"version":3,"file":"start-helper.d.ts","sourceRoot":"","sources":["start-helper.js"],"names":[],"mappings":"AAwCO,0CALI,GAAG,WACH,OAAO,gBACP,mBAAmB,cACnB,UAAU;;;;;;;;;;;;;;;;;wCA2C8B,GACnD;;oFA/CC,GAAG,uDAEA,GAAG;;;4PAyEU,GAAa,4CAGP,GAAG;;;;;;EAFzB;kCAzFY;IACZ,UAAc,EAAE,OAAO,UAAU,CAAC,CAAC;IACnC,oBAAwB,EAAE,OAAO,oBAAoB,CAAC,CAAC;IACvD,WAAe,EAAE,OAAO,WAAW,CAAC,CAAC;IACrC,YAAgB,EAAE,OAAO,YAAY,CAAC,CAAC;IACvC,WAAe,EAAE,OAAO,OAAO,CAAC,CAAC;CAC9B;6BAbsB,kBAAkB;gCAFf,gCAAgC;4BAIpC,aAAa;0CACC,eAAe;kCAJX,cAAc;6BAE/B,cAAc"}
@@ -51,10 +51,10 @@ export const provideOrchestration = (
51
51
  const zone = makeDurableZone(baggage);
52
52
  const { agoricNames, timerService } = remotePowers;
53
53
 
54
- const chainHub = makeChainHub(agoricNames);
55
-
56
54
  const vowTools = prepareVowTools(zone.subZone('vows'));
57
55
 
56
+ const chainHub = makeChainHub(agoricNames, vowTools);
57
+
58
58
  const { makeRecorderKit } = prepareRecorderKitMakers(baggage, marshaller);
59
59
  const makeLocalOrchestrationAccountKit = prepareLocalOrchestrationAccountKit(
60
60
  zone,