@agoric/orchestration 0.1.1-dev-19f1d8d.0 → 0.1.1-dev-be74a2b.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-19f1d8d.0+19f1d8d",
3
+ "version": "0.1.1-dev-be74a2b.0+be74a2b",
4
4
  "description": "Chain abstraction for Agoric's orchestration clients",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -100,5 +100,5 @@
100
100
  "typeCoverage": {
101
101
  "atLeast": 97.7
102
102
  },
103
- "gitHead": "19f1d8dfc117f4be02f648a7474ebd147e5dd154"
103
+ "gitHead": "be74a2bc3be6c03203f4fe76e9e287f49271ef76"
104
104
  }
@@ -14,7 +14,7 @@ export function contract(zcf: ZCF, privateArgs: OrchestrationPowers & {
14
14
  storageNode: Remote<StorageNode>;
15
15
  }, zone: Zone, { chainHub, orchestrate, vowTools, zoeTools }: OrchestrationTools): Promise<{
16
16
  publicFacet: import("@endo/exo").Guarded<{
17
- makeSwapInvitation(): Promise<globalThis.Invitation<Vow<undefined>, import("./swap-anything.flows.js").SwapInfo>>;
17
+ makeSwapInvitation(): Promise<globalThis.Invitation<Vow<string>, import("./swap-anything.flows.js").SwapInfo>>;
18
18
  }>;
19
19
  creatorFacet: import("@endo/exo").Guarded<{
20
20
  registerChain(chainName: string, chainInfo: import("@agoric/orchestration").ChainInfo, ibcConnectionInfo?: import("@agoric/orchestration").IBCConnectionInfo): Promise<void>;
@@ -30,7 +30,7 @@ export const start: (zcf: globalThis.ZCF<Record<string, unknown>>, privateArgs:
30
30
  storageNode: Remote<StorageNode>;
31
31
  }, baggage: Baggage) => Promise<{
32
32
  publicFacet: import("@endo/exo").Guarded<{
33
- makeSwapInvitation(): Promise<globalThis.Invitation<Vow<undefined>, import("./swap-anything.flows.js").SwapInfo>>;
33
+ makeSwapInvitation(): Promise<globalThis.Invitation<Vow<string>, import("./swap-anything.flows.js").SwapInfo>>;
34
34
  }>;
35
35
  creatorFacet: import("@endo/exo").Guarded<{
36
36
  registerChain(chainName: string, chainInfo: import("@agoric/orchestration").ChainInfo, ibcConnectionInfo?: import("@agoric/orchestration").IBCConnectionInfo): Promise<void>;
@@ -3,7 +3,7 @@ export function swapIt(orch: Orchestrator, { chainHub, sharedLocalAccountP, log,
3
3
  sharedLocalAccountP: Promise<GuestInterface<LocalOrchestrationAccountKit["holder"]>>;
4
4
  zoeTools: GuestInterface<ZoeTools>;
5
5
  log: GuestOf<(msg: string, level?: string) => Vow<void>>;
6
- }, seat: ZCFSeat, offerArgs: SwapInfo): Promise<undefined>;
6
+ }, seat: ZCFSeat, offerArgs: SwapInfo): Promise<string>;
7
7
  export function swapAnythingViaHook(_orch: Orchestrator, { chainHub, sharedLocalAccountP }: {
8
8
  chainHub: GuestInterface<ChainHub>;
9
9
  sharedLocalAccountP: Promise<GuestInterface<LocalOrchestrationAccountKit["holder"]>>;
@@ -1 +1 @@
1
- {"version":3,"file":"swap-anything.flows.d.ts","sourceRoot":"","sources":["swap-anything.flows.js"],"names":[],"mappings":"AA8EO,6BAXI,YAAY,wFAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IACiC,GAAG,EAA5D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;CAC3D,QAAQ,OAAO,aACP,QAAQ,sBAwFlB;AAYM,2CAPI,YAAY,qCAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;CACvE,oBAAQ,WAAW,YACX,QAAQ,iBAgDlB;uBAnNY;IACR,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE;QAAE,kBAAkB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;kCAQsF,aAAa;8BAAb,aAAa;oCAN7D,oBAAoB;kDAIf,wCAAwC;8BAC5D,uBAAuB;yBAF5B,aAAa;6BAHO,oBAAoB;6BAEpC,aAAa;iCAImD,aAAa;2BAL/E,uBAAuB"}
1
+ {"version":3,"file":"swap-anything.flows.d.ts","sourceRoot":"","sources":["swap-anything.flows.js"],"names":[],"mappings":"AA8EO,6BAXI,YAAY,wFAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IACiC,GAAG,EAA5D,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,IAAI,IAAI,CAAC,CAAC;CAC3D,QAAQ,OAAO,aACP,QAAQ,mBAwFlB;AAYM,2CAPI,YAAY,qCAEpB;IAAsC,QAAQ,EAAtC,eAAe,QAAQ,CAAC;IAC6C,mBAAmB,EAAxF,OAAO,CAAC,eAAe,4BAA4B,CAAC,QAAQ,CAAC,CAAC,CAAC;CACvE,oBAAQ,WAAW,YACX,QAAQ,iBAgDlB;uBAnNY;IACR,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE;QAAE,kBAAkB,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAChE,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;kCAQsF,aAAa;8BAAb,aAAa;oCAN7D,oBAAoB;kDAIf,wCAAwC;8BAC5D,uBAAuB;yBAF5B,aAAa;6BAHO,oBAAoB;6BAEpC,aAAa;iCAImD,aAAa;2BAL/E,uBAAuB"}
@@ -159,7 +159,7 @@ export const swapIt = async (
159
159
  }
160
160
 
161
161
  seat.exit();
162
- trace(`transfer complete, seat exited`);
162
+ return 'transfer complete, seat exited';
163
163
  };
164
164
  harden(swapIt);
165
165
 
@@ -1 +1 @@
1
- {"version":3,"file":"ibc-packet.d.ts","sourceRoot":"","sources":["ibc-packet.js"],"names":[],"mappings":"AAMA,4CAA6C,MAAM,CAAC;AAsB7C,gDAHI,GAAG,GACD,OAAO,CAgCnB;AAOM,+CAHI,OAAO,mBAAmB,EAAE,IAAI,8BAChC,QAAQ,GAAG;IAAE,eAAe,EAAE,eAAe,CAAA;CAAE,IA0GhD,GAAG,MAFA,UAAU;eAtFH,iBAAiB,CAAC,WAAW,CAAC;;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;;QAYxB;;;;;;;;;;;;;;;;WAgBG;oCAbQ,CACV,SACA,WACA,UAAkB,2CAA2C,CAAC,CACvD,CACF,CACF,OACO;YACN,IAAI,EAAE,aAAa,CAAC;YACpB,KAAK,EAAE,IACX,SAAe,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,CAAC;SACH;;;;;;;;GA+CK;IA9ET;;;;;OAKG;sBAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;GA2E/B;AAaM,yCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ,IAqC6D,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;EAmBzB;AAQM,sCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ;;mBArKC,iBAAiB,CAAC,WAAW,CAAC;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;sBA2HgD,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;;EAkCzB;8BAba,UAAU,CAAC,OAAO,kBAAkB,CAAC;6BAvOpB,gBAAgB;8BAEf,aAAa;8BACP,cAAc;yBADpB,aAAa;mCAGb,mBAAmB;uCADf,gCAAgC;+BAHlB,sBAAsB;gCAAtB,sBAAsB;8BAAtB,sBAAsB"}
1
+ {"version":3,"file":"ibc-packet.d.ts","sourceRoot":"","sources":["ibc-packet.js"],"names":[],"mappings":"AAMA,4CAA6C,MAAM,CAAC;AAsB7C,gDAHI,GAAG,GACD,OAAO,CAgCnB;AAOM,+CAHI,OAAO,mBAAmB,EAAE,IAAI,8BAChC,QAAQ,GAAG;IAAE,eAAe,EAAE,eAAe,CAAA;CAAE,IA2HhD,GAAG,MAFA,UAAU;eAvGH,iBAAiB,CAAC,WAAW,CAAC;;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;;QAYxB;;;;;;;;;;;;;;;;WAgBG;oCAbQ,CACV,SACA,WACA,UAAkB,2CAA2C,CAAC,CACvD,CACF,CACF,OACO;YACN,IAAI,EAAE,aAAa,CAAC;YACpB,KAAK,EAAE,IACX,SAAe,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,CAAC;SACH;;;;;;;;GAgEK;IA/FT;;;;;OAKG;sBAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;GA4F/B;AAaM,yCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ,IAqC6D,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;EAmBzB;AAQM,sCAHI,OAAO,mBAAmB,EAAE,IAAI,YAChC,QAAQ;;mBAtLC,iBAAiB,CAAC,WAAW,CAAC;;;;QAU1C;;;;;WAKG;0BAJQ,IACV,SAAa,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAC,CAC9D,QACO,aAAa;;;;;sBA4IgD,CAAC,SAAjE,SAAS,uBAAuB,CAAC,GAAG,SAAS,eAAe,CAAE,sFACjE,OAAO,UACP,IAAI,CAAC,CAAC,QACN,aAAa;;;;EAkCzB;8BAba,UAAU,CAAC,OAAO,kBAAkB,CAAC;6BAxPpB,gBAAgB;8BAEf,aAAa;8BACP,cAAc;yBADpB,aAAa;mCAGb,mBAAmB;uCADf,gCAAgC;+BAHlB,sBAAsB;gCAAtB,sBAAsB;8BAAtB,sBAAsB"}
@@ -157,8 +157,25 @@ export const prepareIBCTransferSender = (zone, { watch, makeIBCReplyKit }) => {
157
157
  const { result, error } = obj;
158
158
  error === undefined || Fail`ICS20-1 transfer error ${error}`;
159
159
  result ?? Fail`Missing result in ICS20-1 transfer ack ${obj}`;
160
- result === ICS20_TRANSFER_SUCCESS_RESULT ||
161
- Fail`ICS20-1 transfer unsuccessful with ack result ${result}`;
160
+ if (result === ICS20_TRANSFER_SUCCESS_RESULT) {
161
+ return; // OK, transfer was successful, nothing to do
162
+ }
163
+
164
+ // Function to safely base64-decode and parse JSON
165
+ const decodeAndParse = b64 => {
166
+ try {
167
+ return JSON.parse(atob(b64));
168
+ } catch {
169
+ Fail`Decoding of base64-encoded ack obj object failed: ${JSON.stringify(b64)}`;
170
+ }
171
+ };
172
+
173
+ const outerDecoded = decodeAndParse(result);
174
+ const ibcAck =
175
+ outerDecoded?.ibc_ack && decodeAndParse(outerDecoded.ibc_ack);
176
+
177
+ ibcAck?.result === ICS20_TRANSFER_SUCCESS_RESULT ||
178
+ Fail`ICS20-1 transfer unsuccessful with ack result: ${outerDecoded}`;
162
179
  },
163
180
  },
164
181
  },