@agoric/orchestration 0.1.1-dev-20db966.0 → 0.1.1-dev-7a15f90.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-20db966.0+20db966",
3
+ "version": "0.1.1-dev-7a15f90.0+7a15f90",
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-20db966.0+20db966",
37
- "@agoric/cosmic-proto": "0.4.1-dev-20db966.0+20db966",
38
- "@agoric/ertp": "0.16.3-dev-20db966.0+20db966",
39
- "@agoric/internal": "0.3.3-dev-20db966.0+20db966",
40
- "@agoric/network": "0.1.1-dev-20db966.0+20db966",
41
- "@agoric/notifier": "0.6.3-dev-20db966.0+20db966",
42
- "@agoric/store": "0.9.3-dev-20db966.0+20db966",
43
- "@agoric/time": "0.3.3-dev-20db966.0+20db966",
44
- "@agoric/vat-data": "0.5.3-dev-20db966.0+20db966",
45
- "@agoric/vats": "0.15.2-dev-20db966.0+20db966",
46
- "@agoric/vow": "0.1.1-dev-20db966.0+20db966",
47
- "@agoric/zoe": "0.26.3-dev-20db966.0+20db966",
48
- "@agoric/zone": "0.2.3-dev-20db966.0+20db966",
36
+ "@agoric/async-flow": "0.1.1-dev-7a15f90.0+7a15f90",
37
+ "@agoric/cosmic-proto": "0.4.1-dev-7a15f90.0+7a15f90",
38
+ "@agoric/ertp": "0.16.3-dev-7a15f90.0+7a15f90",
39
+ "@agoric/internal": "0.3.3-dev-7a15f90.0+7a15f90",
40
+ "@agoric/network": "0.1.1-dev-7a15f90.0+7a15f90",
41
+ "@agoric/notifier": "0.6.3-dev-7a15f90.0+7a15f90",
42
+ "@agoric/store": "0.9.3-dev-7a15f90.0+7a15f90",
43
+ "@agoric/time": "0.3.3-dev-7a15f90.0+7a15f90",
44
+ "@agoric/vat-data": "0.5.3-dev-7a15f90.0+7a15f90",
45
+ "@agoric/vats": "0.15.2-dev-7a15f90.0+7a15f90",
46
+ "@agoric/vow": "0.1.1-dev-7a15f90.0+7a15f90",
47
+ "@agoric/zoe": "0.26.3-dev-7a15f90.0+7a15f90",
48
+ "@agoric/zone": "0.2.3-dev-7a15f90.0+7a15f90",
49
49
  "@cosmjs/encoding": "^0.32.4",
50
50
  "@endo/base64": "^1.0.9",
51
51
  "@endo/errors": "^1.2.10",
@@ -57,7 +57,7 @@
57
57
  "bs58": "^6.0.0"
58
58
  },
59
59
  "devDependencies": {
60
- "@agoric/swingset-liveslots": "0.10.3-dev-20db966.0+20db966",
60
+ "@agoric/swingset-liveslots": "0.10.3-dev-7a15f90.0+7a15f90",
61
61
  "@chain-registry/client": "^1.47.4",
62
62
  "@cosmjs/amino": "^0.33.0",
63
63
  "@cosmjs/proto-signing": "^0.33.0",
@@ -100,5 +100,5 @@
100
100
  "typeCoverage": {
101
101
  "atLeast": 97.7
102
102
  },
103
- "gitHead": "20db966fd47f925ec353be0a79efcc24278a7539"
103
+ "gitHead": "7a15f9056f9659d77c4f489b14b37409cde7052e"
104
104
  }
@@ -285,6 +285,15 @@ export interface LocalAccountMethods extends StakingAccountActions {
285
285
  * @param tap
286
286
  */
287
287
  monitorTransfers: (tap: TargetApp) => Promise<TargetRegistration>;
288
+ /**
289
+ * Parse an incoming transfer message and return its details.
290
+ */
291
+ parseInboundTransfer: (packet: Record<string, any>) => Promise<{
292
+ amount: DenomAmount;
293
+ fromAccount: AccountId;
294
+ toAccount: AccountId;
295
+ extra: Record<string, any>;
296
+ }>;
288
297
  }
289
298
  /**
290
299
  * Options for {@link OrchestrationAccountI} `transfer` method.
@@ -1 +1 @@
1
- {"version":3,"file":"cosmos-api.d.ts","sourceRoot":"","sources":["cosmos-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cosmos-api.d.ts","sourceRoot":"","sources":["cosmos-api.ts"],"names":[],"mappings":"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"}
package/src/cosmos-api.ts CHANGED
@@ -357,6 +357,15 @@ export interface LocalAccountMethods extends StakingAccountActions {
357
357
  * @param tap
358
358
  */
359
359
  monitorTransfers: (tap: TargetApp) => Promise<TargetRegistration>;
360
+ /**
361
+ * Parse an incoming transfer message and return its details.
362
+ */
363
+ parseInboundTransfer: (packet: Record<string, any>) => Promise<{
364
+ amount: DenomAmount;
365
+ fromAccount: AccountId;
366
+ toAccount: AccountId;
367
+ extra: Record<string, any>;
368
+ }>;
360
369
  }
361
370
 
362
371
  /**
@@ -28,6 +28,12 @@ export function start(zcf: ZCF, privateArgs: {
28
28
  send(toAccount: import("../orchestration-api.js").AccountIdArg, amount: import("../orchestration-api.js").AmountArg): import("@agoric/vow").Vow<void>;
29
29
  sendAll(toAccount: import("../orchestration-api.js").CosmosChainAddress, amounts: import("../orchestration-api.js").AmountArg[]): import("@agoric/vow").Vow<void>;
30
30
  transfer(destination: import("../orchestration-api.js").AccountIdArg, amount: import("../orchestration-api.js").AmountArg, opts?: import("../cosmos-api.js").IBCMsgTransferOptions): import("@agoric/vow").Vow<any>;
31
+ parseInboundTransfer(packet: Record<string, any>): import("@agoric/vow").Vow<{
32
+ amount: import("../orchestration-api.js").DenomAmount;
33
+ fromAccount: import("../orchestration-api.js").AccountId;
34
+ toAccount: import("../orchestration-api.js").AccountId;
35
+ extra: Record<string, any>;
36
+ }>;
31
37
  transferSteps(amount: import("../orchestration-api.js").AmountArg, msg: import("../orchestration-api.js").TransferMsg): import("@agoric/vow").Vow<void>;
32
38
  sendThenWaitForAck(packetSender: Remote<import("../exos/packet-tools.js").PacketSender>, opts?: import("../exos/packet-tools.js").PacketOptions | undefined): import("@agoric/async-flow").HostInterface<import("@agoric/vow").Vow<any>>;
33
39
  matchFirstPacket(args_0?: import("@agoric/vow").EVow<Pattern>): import("@agoric/async-flow").HostInterface<import("@agoric/vow").Vow<{
@@ -1 +1 @@
1
- {"version":3,"file":"stake-bld.contract.d.ts","sourceRoot":"","sources":["stake-bld.contract.js"],"names":[],"mappings":"AAqCO,2BAVI,GAAG,eACH;IACN,WAAW,EAAE,OAAO,OAAO,CAAC,CAAC;IAC7B,UAAU,EAAE,OAAO,UAAU,CAAC,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;CAC5B,WACO,OAAO,kBAAkB,EAAE,OAAO;;QAsEvC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA6BH;;WAEG;;;GAaR;yBAlIqB,aAAa;6BAJT,cAAc;4BACf,kBAAkB;gCAEd,gCAAgC;kCAD9B,cAAc"}
1
+ {"version":3,"file":"stake-bld.contract.d.ts","sourceRoot":"","sources":["stake-bld.contract.js"],"names":[],"mappings":"AAqCO,2BAVI,GAAG,eACH;IACN,WAAW,EAAE,OAAO,OAAO,CAAC,CAAC;IAC7B,UAAU,EAAE,OAAO,UAAU,CAAC,CAAC;IAC/B,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;CAC5B,WACO,OAAO,kBAAkB,EAAE,OAAO;;QAsEvC;;WAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QA6BH;;WAEG;;;GAaR;yBAlIqB,aAAa;6BAJT,cAAc;4BACf,kBAAkB;gCAEd,gCAAgC;kCAD9B,cAAc"}
@@ -23,28 +23,28 @@ export function prepareLocalOrchestrationAccountKit(zone: Zone, { makeRecorderKi
23
23
  * @param {string} validatorAddress
24
24
  * @param {Amount<'nat'>} ertpAmount
25
25
  */
26
- Delegate(validatorAddress: string, ertpAmount: Amount<"nat">): Promise<Invitation<Vow<Record<unknown, unknown>>, undefined>>;
27
- Deposit(): Promise<Invitation<Vow<void>, undefined>>;
26
+ Delegate(validatorAddress: string, ertpAmount: Amount<"nat">): Promise<globalThis.Invitation<Vow<Record<unknown, unknown>>, undefined>>;
27
+ Deposit(): Promise<globalThis.Invitation<Vow<void>, undefined>>;
28
28
  /**
29
29
  * @param {string} validatorAddress
30
30
  * @param {Amount<'nat'>} ertpAmount
31
31
  */
32
- Undelegate(validatorAddress: string, ertpAmount: Amount<"nat">): Promise<Invitation<Vow<TimestampRecord>, undefined>>;
32
+ Undelegate(validatorAddress: string, ertpAmount: Amount<"nat">): Promise<globalThis.Invitation<Vow<TimestampRecord>, undefined>>;
33
33
  CloseAccount(): never;
34
- Send(): Promise<Invitation<Vow<void>, {
34
+ Send(): Promise<globalThis.Invitation<Vow<void>, {
35
35
  toAccount: AccountIdArg;
36
36
  amount: AmountArg;
37
37
  }>>;
38
- SendAll(): Promise<Invitation<Vow<void>, {
38
+ SendAll(): Promise<globalThis.Invitation<Vow<void>, {
39
39
  toAccount: CosmosChainAddress;
40
40
  amounts: AmountArg[];
41
41
  }>>;
42
- Transfer(): Promise<Invitation<Vow<void>, {
42
+ Transfer(): Promise<globalThis.Invitation<Vow<void>, {
43
43
  amount: AmountArg;
44
44
  destination: AccountIdArg;
45
45
  opts?: IBCMsgTransferOptions;
46
46
  }>>;
47
- Withdraw(): Promise<Invitation<Vow<void>, undefined>>;
47
+ Withdraw(): Promise<globalThis.Invitation<Vow<void>, undefined>>;
48
48
  };
49
49
  undelegateWatcher: {
50
50
  /**
@@ -133,6 +133,35 @@ export function prepareLocalOrchestrationAccountKit(zone: Zone, { makeRecorderKi
133
133
  */
134
134
  onFulfilled(result: JsonSafe<ResponseTo<TypedJson<"/cosmos.bank.v1beta1.QueryAllBalancesRequest">>>): DenomAmount[];
135
135
  };
136
+ parseInboundTransferWatcher: {
137
+ /**
138
+ * @param {QueryDenomHashResponse} localDenomHash
139
+ * @param {Awaited<
140
+ * ReturnType<LocalAccountMethods['parseInboundTransfer']>
141
+ * >} naiveResult
142
+ */
143
+ onFulfilled(localDenomHash: QueryDenomHashResponse, naiveResult: Awaited<ReturnType<LocalAccountMethods["parseInboundTransfer"]>>): {
144
+ amount: {
145
+ denom: string;
146
+ value: bigint;
147
+ };
148
+ fromAccount: import("@agoric/orchestration").AccountId;
149
+ toAccount: import("@agoric/orchestration").AccountId;
150
+ extra: Record<string, any>;
151
+ };
152
+ /**
153
+ * @param {unknown} reason
154
+ * @param {Awaited<
155
+ * ReturnType<LocalAccountMethods['parseInboundTransfer']>
156
+ * >} naiveResult
157
+ */
158
+ onRejected(reason: unknown, naiveResult: Awaited<ReturnType<LocalAccountMethods["parseInboundTransfer"]>>): {
159
+ amount: DenomAmount;
160
+ fromAccount: import("@agoric/orchestration").AccountId;
161
+ toAccount: import("@agoric/orchestration").AccountId;
162
+ extra: Record<string, any>;
163
+ };
164
+ };
136
165
  holder: {
137
166
  asContinuingOffer(): Vow<import("@agoric/async-flow").HostInterface<import("../utils/zoe-tools.js").ResolvedContinuingOfferResult>>;
138
167
  getBalance(denom: import("@agoric/orchestration").DenomArg): Vow<DenomAmount>;
@@ -172,6 +201,12 @@ export function prepareLocalOrchestrationAccountKit(zone: Zone, { makeRecorderKi
172
201
  * timeout)
173
202
  */
174
203
  transfer(destination: AccountIdArg, amount: AmountArg, opts?: IBCMsgTransferOptions): Vow<any>;
204
+ parseInboundTransfer(packet: Record<string, any>): Vow<{
205
+ amount: DenomAmount;
206
+ fromAccount: import("@agoric/orchestration").AccountId;
207
+ toAccount: import("@agoric/orchestration").AccountId;
208
+ extra: Record<string, any>;
209
+ }>;
175
210
  transferSteps(amount: AmountArg, msg: import("@agoric/orchestration").TransferMsg): Vow<void>;
176
211
  sendThenWaitForAck(packetSender: Remote<import("./packet-tools.js").PacketSender>, opts?: import("./packet-tools.js").PacketOptions | undefined): import("@agoric/async-flow").HostInterface<Vow<any>>;
177
212
  matchFirstPacket(args_0?: import("@agoric/vow").EVow<Pattern>): import("@agoric/async-flow").HostInterface<Vow<{
@@ -209,7 +244,6 @@ import type { CosmosChainAddress } from '@agoric/orchestration';
209
244
  import type { AmountArg } from '@agoric/orchestration';
210
245
  import type { Coin } from '@agoric/cosmic-proto/cosmos/base/v1beta1/coin.js';
211
246
  import type { Vow } from '@agoric/vow';
212
- import type { Invitation } from '@agoric/zoe';
213
247
  import type { TimestampRecord } from '@agoric/time';
214
248
  import type { AccountIdArg } from '@agoric/orchestration';
215
249
  import type { IBCMsgTransferOptions } from '@agoric/orchestration';
@@ -219,6 +253,8 @@ import type { TransferRoute } from '@agoric/orchestration';
219
253
  import type { DenomAmount } from '@agoric/orchestration';
220
254
  import type { ZCFSeat } from '@agoric/zoe';
221
255
  import type { ResponseTo } from '@agoric/cosmic-proto';
256
+ import type { QueryDenomHashResponse } from '@agoric/cosmic-proto/ibc/applications/transfer/v1/query.js';
257
+ import type { LocalAccountMethods } from '@agoric/orchestration';
222
258
  import type { RecorderKit } from '@agoric/zoe/src/contractSupport/recorder.js';
223
259
  import type { PacketTools } from './packet-tools.js';
224
260
  //# sourceMappingURL=local-orchestration-account.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"local-orchestration-account.d.ts","sourceRoot":"","sources":["local-orchestration-account.js"],"names":[],"mappings":"AAkGO,0DAVI,IAAI,qFAEZ;IAAgC,eAAe,EAAvC,eAAe;IACH,GAAG,EAAf,GAAG;IAC0B,YAAY,EAAzC,OAAO,YAAY,CAAC;IACH,QAAQ,EAAzB,QAAQ;IACS,QAAQ,EAAzB,QAAQ;IACmB,UAAU,EAArC,OAAO,UAAU,CAAC;IACD,QAAQ,EAAzB,QAAQ;CAClB;aAqFc,iBAAiB;aACjB,kBAAkB;;;;QAoBzB;;;WAGG;6BAFQ,SAAS,GACP,IAAI;;;QAOjB;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;QAiCxB;;;WAGG;qCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;;;uBAmBJ,YAAY;oBAAU,SAAS;;;uBAa/B,kBAAkB;qBAAW,SAAS,EAAE;;;oBAc3C,SAAS;yBACJ,YAAY;mBAClB,qBAAqB;;;;;QAmCrC;;;;;;WAMG;8BALQ,CACV,SACA,UAAgB,+CAA+C,CAAC,CAC3D,CACF;;;QAcJ;;;;;;WAMG;sCALQ,MAAM,mBACN;YACN,IAAI,CAAC,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;YAClD,KAAK,EAAE,aAAa,CAAC;SACtB;;IAsCN;;;OAGG;;QAED,kDAAkD;6BAAtC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE;;;;;IAYxC;;;OAGG;;QAED;;;;WAIG;+BAHQ,MAAM,CAAC,KAAK,CAAC,SACb,WAAW,CAAC,OAAO,CAAC,GAClB,WAAW;;IAM1B,kDAAkD;;QAEhD;;;WAGG;uBAFQ,SAAS,QACT,OAAO;QAKlB;;;WAGG;2BAFQ,KAAK,QACL,OAAO;;IAOpB;;;OAGG;;QAED;;;;;WAKG;4BAJQ,WACV,UAAc,0CAA0C,CAAC,CACtD,GACS,WAAW;;IAU1B;;;OAGG;;QAED;;;;;;;WAOG;4BANQ,SACV,WACA,UAAgB,8CAA8C,CAAC,CAC1D,CACF,GACS,WAAW,EAAE;;;;;;;QA8F1B;;;WAGG;mCAFQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC;QAmBxB;;;;WAIG;qCAHQ,MAAM,cACN,MAAM,CAAC,KAAK,CAAC,GACX,IAAI,IAAI,GAAG,eAAe,CAAC;;;;;;;;;;;QAqFxC;;;;;;;;;;;WAWG;8BAVQ,YAAY,UACZ,SAAS,SAET,qBAAqB,GAGnB,IAAI,GAAG,CAAC;;;;;;;;;GA4D5B;;aAjrBa,MAAM;;;;;oBAKP;IACR,QAAQ,EAAE,YAAY,6BAA6B,CAAC,GAAG,SAAS,CAAC;IACjE,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,kBAAkB,CAAC;CAC7B;+CAyqBU,UAAU,CAAC,OAAO,mCAAmC,CAAC;2CACtD,UAAU,CAAC,gCAAgC,CAAC;0BAzsBnC,cAAc;qCADU,6CAA6C;yBADrB,aAAa;kCAKpC,cAAc;4BAFrC,kBAAkB;8BAGX,aAAa;8BAIlB,gBAAgB;gCAZK,gCAAgC;8BAcrD,uBAAuB;uCAdF,gCAAgC;wCACgH,uBAAuB;+BAAvB,uBAAuB;0BAShM,kDAAkD;yBAFzC,aAAa;gCAN0B,aAAa;qCAKpC,cAAc;kCANkI,uBAAuB;2CAAvB,uBAAuB;+BAQrK,sBAAsB;8BAAtB,sBAAsB;mCARwH,uBAAuB;iCAAvB,uBAAuB;6BAChJ,aAAa;gCAOlC,sBAAsB;iCANzB,6CAA6C;iCAU9D,mBAAmB"}
1
+ {"version":3,"file":"local-orchestration-account.d.ts","sourceRoot":"","sources":["local-orchestration-account.js"],"names":[],"mappings":"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"}
@@ -28,8 +28,11 @@ import { TransferRouteShape } from './chain-hub.js';
28
28
  /**
29
29
  * @import {HostOf} from '@agoric/async-flow';
30
30
  * @import {LocalChain, LocalChainAccount} from '@agoric/vats/src/localchain.js';
31
- * @import {AmountArg, CosmosChainAddress, DenomAmount, IBCMsgTransferOptions, IBCConnectionInfo, OrchestrationAccountCommon, LocalAccountMethods, TransferRoute, AccountId, AccountIdArg} from '@agoric/orchestration';
32
- * @import {ContractMeta, Invitation, OfferHandler, ZCF, ZCFSeat} from '@agoric/zoe';
31
+ * @import {AmountArg, CosmosChainAddress, DenomAmount, IBCMsgTransferOptions, OrchestrationAccountCommon, LocalAccountMethods, TransferRoute, AccountIdArg, Denom, Bech32Address} from '@agoric/orchestration';
32
+ * @import {OfferHandler, ZCF, ZCFSeat} from '@agoric/zoe';
33
+ * @import {IBCEvent} from '@agoric/vats';
34
+ * @import {QueryDenomHashResponse} from '@agoric/cosmic-proto/ibc/applications/transfer/v1/query.js';
35
+ * @import {FungibleTokenPacketData} from '@agoric/cosmic-proto/ibc/applications/transfer/v2/packet.js';
33
36
  * @import {RecorderKit, MakeRecorderKit} from '@agoric/zoe/src/contractSupport/recorder.js'.
34
37
  * @import {Zone} from '@agoric/zone';
35
38
  * @import {Remote} from '@agoric/internal';
@@ -78,6 +81,14 @@ const HolderI = M.interface('holder', {
78
81
  .returns(EVow$(M.string())),
79
82
  matchFirstPacket: M.call(M.any()).returns(EVow$(M.any())),
80
83
  monitorTransfers: M.call(M.remotable('TargetApp')).returns(EVow$(M.any())),
84
+ parseInboundTransfer: M.call(M.recordOf(M.string(), M.any())).returns(
85
+ Vow$({
86
+ amount: DenomAmountShape,
87
+ fromAccount: M.string(),
88
+ toAccount: M.string(),
89
+ extra: M.recordOf(M.string(), M.any()),
90
+ }),
91
+ ),
81
92
  });
82
93
 
83
94
  /** @type {{ [name: string]: [description: string, valueShape: Matcher] }} */
@@ -167,6 +178,10 @@ export const prepareLocalOrchestrationAccountKit = (
167
178
  M.arrayOf(DenomAmountShape),
168
179
  ),
169
180
  }),
181
+ parseInboundTransferWatcher: M.interface('parseInboundTransferWatcher', {
182
+ onFulfilled: M.call(M.record(), M.record()).returns(M.record()),
183
+ onRejected: M.call(M.any(), M.record()).returns(M.record()),
184
+ }),
170
185
  invitationMakers: M.interface('invitationMakers', {
171
186
  CloseAccount: M.call().returns(M.promise()),
172
187
  Delegate: M.call(M.string(), AmountShape).returns(M.promise()),
@@ -481,6 +496,40 @@ export const prepareLocalOrchestrationAccountKit = (
481
496
  return harden(balances.map(toDenomAmount));
482
497
  },
483
498
  },
499
+ parseInboundTransferWatcher: {
500
+ /**
501
+ * @param {QueryDenomHashResponse} localDenomHash
502
+ * @param {Awaited<
503
+ * ReturnType<LocalAccountMethods['parseInboundTransfer']>
504
+ * >} naiveResult
505
+ */
506
+ onFulfilled(localDenomHash, naiveResult) {
507
+ const localDenom = `ibc/${localDenomHash.hash}`;
508
+ const { amount, ...rest } = naiveResult;
509
+ const { denom: _, ...amountRest } = amount;
510
+ return harden({
511
+ ...rest,
512
+ amount: { ...amountRest, denom: localDenom },
513
+ });
514
+ },
515
+ /**
516
+ * @param {unknown} reason
517
+ * @param {Awaited<
518
+ * ReturnType<LocalAccountMethods['parseInboundTransfer']>
519
+ * >} naiveResult
520
+ */
521
+ onRejected(reason, naiveResult) {
522
+ if (
523
+ reason instanceof Error &&
524
+ String(reason.message).includes('denomination trace not found')
525
+ ) {
526
+ // Looks like the trace was not found; The naive result is good enough.
527
+ return naiveResult;
528
+ }
529
+ // Propagate other errors upwards.
530
+ throw reason;
531
+ },
532
+ },
484
533
  holder: {
485
534
  /** @type {HostOf<OrchestrationAccountCommon['asContinuingOffer']>} */
486
535
  asContinuingOffer() {
@@ -716,6 +765,76 @@ export const prepareLocalOrchestrationAccountKit = (
716
765
  return resultV;
717
766
  });
718
767
  },
768
+ /**
769
+ * @type {HostOf<LocalAccountMethods['parseInboundTransfer']>}
770
+ */
771
+ parseInboundTransfer(record) {
772
+ trace('parseInboundTransfer', record);
773
+ return asVow(() => {
774
+ const packet =
775
+ /** @type {IBCEvent<'writeAcknowledgement'>['packet']} */ (
776
+ record
777
+ );
778
+
779
+ /** @type {FungibleTokenPacketData} */
780
+ const ftPacketData = JSON.parse(atob(packet.data));
781
+ const {
782
+ denom: transferDenom,
783
+ sender,
784
+ receiver,
785
+ amount,
786
+ } = ftPacketData;
787
+
788
+ /**
789
+ * @param {string} address
790
+ */
791
+ const resolveBech32Address = address =>
792
+ chainHub.resolveAccountId(/** @type {Bech32Address} */ (address));
793
+
794
+ /**
795
+ * @param {Denom} localDenom
796
+ */
797
+ const buildReturnValue = localDenom =>
798
+ harden({
799
+ amount: /** @type {DenomAmount} */ ({
800
+ value: BigInt(amount),
801
+ denom: localDenom,
802
+ }),
803
+ fromAccount: resolveBech32Address(sender),
804
+ toAccount: resolveBech32Address(receiver),
805
+ extra: {
806
+ ...ftPacketData,
807
+ },
808
+ });
809
+
810
+ /**
811
+ * @type {Denom}
812
+ */
813
+ let denomOrTrace;
814
+
815
+ const prefix = `${packet.source_port}/${packet.source_channel}/`;
816
+ trace({ transferDenom, prefix });
817
+ if (transferDenom.startsWith(prefix)) {
818
+ // Unwind, which may end up as a local denom.
819
+ denomOrTrace = transferDenom.slice(prefix.length);
820
+ } else {
821
+ // If the denom is not local, attach its source.
822
+ denomOrTrace = `${packet.destination_port}/${packet.destination_channel}/${transferDenom}`;
823
+ }
824
+
825
+ // Find the local denom hash for the transferDenom, if there is one.
826
+ return watch(
827
+ E(localchain).query(
828
+ typedJson(
829
+ '/ibc.applications.transfer.v1.QueryDenomHashRequest',
830
+ { trace: denomOrTrace },
831
+ ),
832
+ ),
833
+ this.facets.parseInboundTransferWatcher,
834
+ buildReturnValue(denomOrTrace),
835
+ );
836
+ });
837
+ },
719
838
  /** @type {HostOf<OrchestrationAccountCommon['transferSteps']>} */
720
839
  transferSteps(amount, msg) {
721
840
  return asVow(() => {
@@ -3,6 +3,7 @@ export const DEFAULT_ICQ_VERSION: "icq-1";
3
3
  export function makeICQChannelAddress(controllerConnectionId: IBCConnectionID, version?: string): RemoteIbcAddress;
4
4
  export function findAddressField(remoteAddressString: RemoteIbcAddress): CosmosChainAddress["value"] | undefined;
5
5
  export function getBech32Prefix(address: Bech32Address | string): string;
6
+ export function coerceAccountId(idArg: AccountIdArg): AccountId;
6
7
  export function parseAccountIdArg(idArg: AccountIdArg): Caip10Record;
7
8
  export function parseAccountId(accountId: AccountId): Caip10Record;
8
9
  export function chainOfAccount(accountIdArg: AccountIdArg): CaipChainId;
@@ -33,7 +34,7 @@ import type { RemoteIbcAddress } from '@agoric/vats/tools/ibc-utils.js';
33
34
  import type { CosmosChainAddress } from '../types.js';
34
35
  import type { Bech32Address } from '../types.js';
35
36
  import type { AccountIdArg } from '../orchestration-api.js';
36
- import type { Caip10Record } from '../orchestration-api.js';
37
37
  import type { AccountId } from '../orchestration-api.js';
38
+ import type { Caip10Record } from '../orchestration-api.js';
38
39
  import type { CaipChainId } from '../types.js';
39
40
  //# sourceMappingURL=address.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["address.js"],"names":[],"mappings":"AA2BO,wDALI,eAAe,0BACf,eAAe,6CACf,qBAAqB,GACnB,gBAAgB,CAuB5B;AAGD,kCAAmC,OAAO,CAAC;AAOpC,8DAJI,eAAe,YACf,MAAM,GACJ,gBAAgB,CAQ5B;AAaM,sDAJI,gBAAgB,GAEd,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAYnD;AAaM,yCAHI,aAAa,GAAG,MAAM,GACpB,MAAM,CAQlB;AASM,yCAJI,YAAY,GAEV,YAAY,CAaxB;AASM,0CAHI,SAAS,GACP,YAAY,CAaxB;AAUM,6CAJI,YAAY,GAEV,WAAW,CAKvB;AASM,uDAFI,MAAM,+BAOhB;AAWM,8CAJI,SAAS,GACP,UAAU,CAatB;;;;;;;;;;;;;;;;;;;;;qCA7LiC,cAAc;sCAGb,iCAAiC;wCAFH,aAAa;mCAAb,aAAa;kCACtB,yBAAyB;kCAAzB,yBAAyB;+BAAzB,yBAAyB;iCADhB,aAAa"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["address.js"],"names":[],"mappings":"AA2BO,wDALI,eAAe,0BACf,eAAe,6CACf,qBAAqB,GACnB,gBAAgB,CAuB5B;AAGD,kCAAmC,OAAO,CAAC;AAOpC,8DAJI,eAAe,YACf,MAAM,GACJ,gBAAgB,CAQ5B;AAaM,sDAJI,gBAAgB,GAEd,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAYnD;AAaM,yCAHI,aAAa,GAAG,MAAM,GACpB,MAAM,CAQlB;AAWM,uCAJI,YAAY,GAEV,SAAS,CAQrB;AAUM,yCAJI,YAAY,GAEV,YAAY,CAaxB;AASM,0CAHI,SAAS,GACP,YAAY,CAaxB;AAUM,6CAJI,YAAY,GAEV,WAAW,CAKvB;AASM,uDAFI,MAAM,+BAOhB;AAWM,8CAJI,SAAS,GACP,UAAU,CAatB;;;;;;;;;;;;;;;;;;;;;qCA/MiC,cAAc;sCAGb,iCAAiC;wCAFH,aAAa;mCAAb,aAAa;kCACtB,yBAAyB;+BAAzB,yBAAyB;kCAAzB,yBAAyB;iCADhB,aAAa"}
@@ -106,6 +106,24 @@ export const getBech32Prefix = address => {
106
106
  return address.slice(0, split);
107
107
  };
108
108
 
109
+ /**
110
+ * Coerce an AccountIdArg into a plain AccountId. The latter is now preferred so
111
+ * this utility can be used to adapt legacy calls, in particular from vows
112
+ * outstanding from previous incarnations.
113
+ *
114
+ * @param {AccountIdArg} idArg CAIP-10 account ID or an unscoped on-chain
115
+ * address
116
+ * @returns {AccountId} - The parsed account details.
117
+ */
118
+ export const coerceAccountId = idArg => {
119
+ if (typeof idArg === 'string') {
120
+ return idArg;
121
+ }
122
+
123
+ return `cosmos:${idArg.chainId}:${idArg.value}`;
124
+ };
125
+ harden(coerceAccountId);
126
+
109
127
  /**
110
128
  * Parse an account ID into a structured format following CAIP-10 standards.
111
129
  *