@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 +16 -15
- package/src/examples/stakeBld.contract.js +1 -1
- package/src/exos/chain-hub.d.ts +3 -3
- package/src/exos/chain-hub.d.ts.map +1 -1
- package/src/exos/chain-hub.js +93 -44
- package/src/proposals/start-stakeAtom.d.ts.map +1 -1
- package/src/proposals/start-stakeAtom.js +6 -3
- package/src/proposals/start-stakeOsmo.d.ts.map +1 -1
- package/src/proposals/start-stakeOsmo.js +6 -3
- package/src/utils/start-helper.d.ts +1 -0
- package/src/utils/start-helper.d.ts.map +1 -1
- package/src/utils/start-helper.js +2 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agoric/orchestration",
|
|
3
|
-
"version": "0.1.1-dev-
|
|
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-
|
|
37
|
-
"@agoric/cosmic-proto": "0.4.1-dev-
|
|
38
|
-
"@agoric/ertp": "0.16.3-dev-
|
|
39
|
-
"@agoric/internal": "0.3.3-dev-
|
|
40
|
-
"@agoric/network": "0.1.1-dev-
|
|
41
|
-
"@agoric/notifier": "0.6.3-dev-
|
|
42
|
-
"@agoric/store": "0.9.3-dev-
|
|
43
|
-
"@agoric/time": "0.3.3-dev-
|
|
44
|
-
"@agoric/vat-data": "0.5.3-dev-
|
|
45
|
-
"@agoric/vats": "0.15.2-dev-
|
|
46
|
-
"@agoric/vow": "0.1.1-dev-
|
|
47
|
-
"@agoric/zoe": "0.26.3-dev-
|
|
48
|
-
"@agoric/zone": "0.2.3-dev-
|
|
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": "
|
|
94
|
+
"gitHead": "023e19f0ed07c5ee83801d8619f4b507f07abdaf"
|
|
94
95
|
}
|
package/src/exos/chain-hub.d.ts
CHANGED
|
@@ -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>,
|
|
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 {
|
|
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":"
|
|
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"}
|
package/src/exos/chain-hub.js
CHANGED
|
@@ -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 {
|
|
91
|
+
* @param {VowTools} vowTools
|
|
98
92
|
*/
|
|
99
|
-
export const makeChainHub = (agoricNames,
|
|
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
|
-
|
|
214
|
+
vowTools.asVow(() => chainInfos.get(chainName))
|
|
137
215
|
);
|
|
138
216
|
}
|
|
139
217
|
|
|
140
|
-
return
|
|
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
|
|
240
|
+
return vowTools.asVow(() => connectionInfos.get(key));
|
|
171
241
|
}
|
|
172
242
|
|
|
173
|
-
return
|
|
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
|
-
|
|
195
|
-
|
|
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":"
|
|
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 {
|
|
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
|
|
49
|
+
const vt = prepareVowTools(makeHeapZone());
|
|
50
|
+
const chainHub = makeChainHub(await agoricNames, vt);
|
|
48
51
|
|
|
49
|
-
const [_, cosmoshub, connectionInfo] = await
|
|
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":"
|
|
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 {
|
|
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
|
|
50
|
+
const vt = prepareVowTools(makeHeapZone());
|
|
51
|
+
const chainHub = makeChainHub(await agoricNames, vt);
|
|
49
52
|
|
|
50
|
-
const [_, osmosis, connectionInfo] = await
|
|
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;;;;;;;;;;;;;;;;;
|
|
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,
|