@agoric/orchestration 0.1.1-dev-25249e1.0.25249e1 → 0.1.1-dev-e12ff62.0.e12ff62

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-25249e1.0.25249e1",
3
+ "version": "0.1.1-dev-e12ff62.0.e12ff62",
4
4
  "description": "Chain abstraction for Agoric's orchestration clients",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -35,19 +35,19 @@
35
35
  },
36
36
  "homepage": "https://github.com/Agoric/agoric-sdk#readme",
37
37
  "dependencies": {
38
- "@agoric/async-flow": "0.1.1-dev-25249e1.0.25249e1",
39
- "@agoric/cosmic-proto": "0.4.1-dev-25249e1.0.25249e1",
40
- "@agoric/ertp": "0.16.3-dev-25249e1.0.25249e1",
41
- "@agoric/internal": "0.3.3-dev-25249e1.0.25249e1",
42
- "@agoric/network": "0.1.1-dev-25249e1.0.25249e1",
43
- "@agoric/notifier": "0.6.3-dev-25249e1.0.25249e1",
44
- "@agoric/store": "0.9.3-dev-25249e1.0.25249e1",
45
- "@agoric/time": "0.3.3-dev-25249e1.0.25249e1",
46
- "@agoric/vat-data": "0.5.3-dev-25249e1.0.25249e1",
47
- "@agoric/vats": "0.15.2-dev-25249e1.0.25249e1",
48
- "@agoric/vow": "0.1.1-dev-25249e1.0.25249e1",
49
- "@agoric/zoe": "0.26.3-dev-25249e1.0.25249e1",
50
- "@agoric/zone": "0.2.3-dev-25249e1.0.25249e1",
38
+ "@agoric/async-flow": "0.1.1-dev-e12ff62.0.e12ff62",
39
+ "@agoric/cosmic-proto": "0.4.1-dev-e12ff62.0.e12ff62",
40
+ "@agoric/ertp": "0.16.3-dev-e12ff62.0.e12ff62",
41
+ "@agoric/internal": "0.3.3-dev-e12ff62.0.e12ff62",
42
+ "@agoric/network": "0.1.1-dev-e12ff62.0.e12ff62",
43
+ "@agoric/notifier": "0.6.3-dev-e12ff62.0.e12ff62",
44
+ "@agoric/store": "0.9.3-dev-e12ff62.0.e12ff62",
45
+ "@agoric/time": "0.3.3-dev-e12ff62.0.e12ff62",
46
+ "@agoric/vat-data": "0.5.3-dev-e12ff62.0.e12ff62",
47
+ "@agoric/vats": "0.15.2-dev-e12ff62.0.e12ff62",
48
+ "@agoric/vow": "0.1.1-dev-e12ff62.0.e12ff62",
49
+ "@agoric/zoe": "0.26.3-dev-e12ff62.0.e12ff62",
50
+ "@agoric/zone": "0.2.3-dev-e12ff62.0.e12ff62",
51
51
  "@cosmjs/encoding": "^0.36.0",
52
52
  "@endo/base64": "^1.0.12",
53
53
  "@endo/errors": "^1.2.13",
@@ -60,7 +60,7 @@
60
60
  "bs58": "^6.0.0"
61
61
  },
62
62
  "devDependencies": {
63
- "@agoric/swingset-liveslots": "0.10.3-dev-25249e1.0.25249e1",
63
+ "@agoric/swingset-liveslots": "0.10.3-dev-e12ff62.0.e12ff62",
64
64
  "@chain-registry/client": "^1.53.194",
65
65
  "@cosmjs/amino": "^0.36.0",
66
66
  "@cosmjs/proto-signing": "^0.36.0",
@@ -105,5 +105,5 @@
105
105
  "typeCoverage": {
106
106
  "atLeast": 97.63
107
107
  },
108
- "gitHead": "25249e14aa1e01799bfe4f0abe13c7a9a1a29a1c"
108
+ "gitHead": "e12ff622362aa8c477f9cf7ff0d6fd8c63675c38"
109
109
  }
@@ -36,6 +36,7 @@ export type ContractCall = {
36
36
  target: `0x${string}`;
37
37
  functionSignature: string;
38
38
  args: unknown[];
39
+ abi?: Abi | undefined;
39
40
  };
40
41
  export type AbiEncodedContractCall = {
41
42
  target: `0x${string}`;
@@ -47,5 +48,6 @@ import type { OrchestrationAccount } from '@agoric/orchestration';
47
48
  import type { CosmosChainAddress } from '@agoric/orchestration';
48
49
  import type { IBCChannelID } from '@agoric/vats';
49
50
  import type { Denom } from '@agoric/orchestration';
51
+ import type { Abi } from 'viem';
50
52
  import type { EVM_CHAINS } from './utils/gmp.js';
51
53
  //# sourceMappingURL=axelar-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"axelar-types.d.ts","sourceRoot":"","sources":["axelar-types.js"],"names":[],"mappings":";;;;;6BAwBa,CAAC,OAAO,oBAAoB,EAAE,MAAM,OAAO,oBAAoB,CAAC;;kBAK/D,MAAM;oBACN,MAAM;aACN,MAAM;UACN,cAAc;;;YAKd,MAAM;eACN,aAAa;;;uBAKb,MAAM;yBACN,MAAM;aACN,MAAM,EAAE,GAAG,IAAI;UACf,cAAc;;;;kBAMd,qBAAqB;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE,CAAC;uBAC3C,kBAAkB;mBAClB,YAAY;gBACZ,KAAK;YACL,GAAG;qBACH,GAAG;WACH,MAAM;;;YAKN,KAAK,MAAM,EAAE;uBACb,MAAM;UACN,OAAO,EAAE;;;YAKT,KAAK,MAAM,EAAE;UACb,KAAK,MAAM,EAAE;;iCAId,MAAa,iBAAU;mCAvEV,uBAAuB;0CAAvB,uBAAuB;wCAAvB,uBAAuB;kCAClB,cAAc;2BADnB,uBAAuB;gCAEpB,gBAAgB"}
1
+ {"version":3,"file":"axelar-types.d.ts","sourceRoot":"","sources":["axelar-types.js"],"names":[],"mappings":";;;;;6BAyBa,CAAC,OAAO,oBAAoB,EAAE,MAAM,OAAO,oBAAoB,CAAC;;kBAK/D,MAAM;oBACN,MAAM;aACN,MAAM;UACN,cAAc;;;YAKd,MAAM;eACN,aAAa;;;uBAKb,MAAM;yBACN,MAAM;aACN,MAAM,EAAE,GAAG,IAAI;UACf,cAAc;;;;kBAMd,qBAAqB;QAAE,OAAO,EAAE,QAAQ,CAAA;KAAE,CAAC;uBAC3C,kBAAkB;mBAClB,YAAY;gBACZ,KAAK;YACL,GAAG;qBACH,GAAG;WACH,MAAM;;;YAKN,KAAK,MAAM,EAAE;uBACb,MAAM;UACN,OAAO,EAAE;;;;YAMT,KAAK,MAAM,EAAE;UACb,KAAK,MAAM,EAAE;;iCAId,MAAa,iBAAU;mCAzEV,uBAAuB;0CAAvB,uBAAuB;wCAAvB,uBAAuB;kCAClB,cAAc;2BADnB,uBAAuB;yBAG3B,MAAM;gCADC,gBAAgB"}
@@ -5,6 +5,7 @@
5
5
  * Bech32Address,} from '@agoric/orchestration';
6
6
  * @import {IBCChannelID} from '@agoric/vats';
7
7
  * @import {EVM_CHAINS} from './utils/gmp.js';
8
+ * @import {Abi} from 'viem';
8
9
  */
9
10
 
10
11
  // NOTE: The following 3 types are also documented in README.md located at:
@@ -64,6 +65,7 @@ harden(AxelarGMPMessageType);
64
65
  * @property {`0x${string}`} target
65
66
  * @property {string} functionSignature
66
67
  * @property {unknown[]} args
68
+ * @property {Abi} [abi]
67
69
  */
68
70
 
69
71
  /**
@@ -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 sameEvmAddress(a: EvmAddress, b: EvmAddress): boolean;
6
7
  export function coerceAccountId(idArg: AccountIdArg): AccountId;
7
8
  export function parseAccountIdArg(idArg: AccountIdArg): Caip10Record;
8
9
  export function parseAccountId(accountId: AccountId): Caip10Record;
@@ -35,6 +36,7 @@ import type { IBCConnectionID } from '@agoric/vats';
35
36
  import type { RemoteIbcAddress } from '@agoric/vats/tools/ibc-utils.js';
36
37
  import type { CosmosChainAddress } from '../types.js';
37
38
  import type { Bech32Address } from '../types.js';
39
+ import type { Address as EvmAddress } from 'viem';
38
40
  import type { AccountIdArg } from '../orchestration-api.js';
39
41
  import type { AccountId } from '../orchestration-api.js';
40
42
  import type { Caip10Record } from '../orchestration-api.js';
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["address.js"],"names":[],"mappings":"AA4BO,wDALI,eAAe,0BACf,eAAe,6CACf,qBAAqB,GACnB,gBAAgB,CA4B5B;AAGD,kCAAmC,OAAO,CAAC;AAOpC,8DAJI,eAAe,YACf,MAAM,GACJ,gBAAgB,CAa5B;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,yCAJI,MAAM,GACJ,OAAO,CAkBnB;AAUM,6CAHI,MAAM,GACJ,QAAQ,OAAO,IAAI,aAAa,CAM5C;AAUM,uDAFI,MAAM,+BAOhB;AAWM,8CAJI,SAAS,GACP,UAAU,CAatB;;;;;;;;;;;;;;;;;;;;;qCAhQiC,cAAc;sCAGb,iCAAiC;wCAFH,aAAa;mCAAb,aAAa;kCACtB,yBAAyB;+BAAzB,yBAAyB;kCAAzB,yBAAyB;iCADhB,aAAa"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["address.js"],"names":[],"mappings":"AA6BO,wDALI,eAAe,0BACf,eAAe,6CACf,qBAAqB,GACnB,gBAAgB,CA4B5B;AAGD,kCAAmC,OAAO,CAAC;AAOpC,8DAJI,eAAe,YACf,MAAM,GACJ,gBAAgB,CAa5B;AAaM,sDAJI,gBAAgB,GAEd,kBAAkB,CAAC,OAAO,CAAC,GAAG,SAAS,CAYnD;AAaM,yCAHI,aAAa,GAAG,MAAM,GACpB,MAAM,CAQlB;AASM,kCAJI,UAAU,KACV,UAAU,GACR,OAAO,CAEuD;AAYpE,uCAJI,YAAY,GAEV,SAAS,CAQrB;AAUM,yCAJI,YAAY,GAEV,YAAY,CAaxB;AASM,0CAHI,SAAS,GACP,YAAY,CAaxB;AAUM,6CAJI,YAAY,GAEV,WAAW,CAKvB;AASM,yCAJI,MAAM,GACJ,OAAO,CAkBnB;AAUM,6CAHI,MAAM,GACJ,QAAQ,OAAO,IAAI,aAAa,CAM5C;AAUM,uDAFI,MAAM,+BAOhB;AAWM,8CAJI,SAAS,GACP,UAAU,CAatB;;;;;;;;;;;;;;;;;;;;;qCA3QiC,cAAc;sCAIb,iCAAiC;wCAFH,aAAa;mCAAb,aAAa;2CADtC,MAAM;kCAEU,yBAAyB;+BAAzB,yBAAyB;kCAAzB,yBAAyB;iCADhB,aAAa"}
@@ -5,6 +5,7 @@ import bs58 from 'bs58';
5
5
 
6
6
  /**
7
7
  * @import {IBCConnectionID} from '@agoric/vats';
8
+ * @import {Address as EvmAddress} from 'viem';
8
9
  * @import {Bech32Address, CosmosChainAddress, CaipChainId} from '../types.js';
9
10
  * @import {AccountId, AccountIdArg, Caip10Record} from '../orchestration-api.js';
10
11
  * @import {RemoteIbcAddress} from '@agoric/vats/tools/ibc-utils.js';
@@ -117,6 +118,16 @@ export const getBech32Prefix = address => {
117
118
  return address.slice(0, split);
118
119
  };
119
120
 
121
+ /**
122
+ * Compare two EVM addresses for equality, case-insensitive.
123
+ *
124
+ * @param {EvmAddress} a
125
+ * @param {EvmAddress} b
126
+ * @returns {boolean}
127
+ */
128
+ export const sameEvmAddress = (a, b) => a.toLowerCase() === b.toLowerCase();
129
+ harden(sameEvmAddress);
130
+
120
131
  /**
121
132
  * Coerce an AccountIdArg into a plain AccountId. The latter is now preferred so
122
133
  * this utility can be used to adapt legacy calls, in particular from vows
@@ -15,7 +15,7 @@ export const gmpAddresses: {
15
15
  AXELAR_GAS: Bech32Address;
16
16
  OSMOSIS_RECEIVER: Bech32Address;
17
17
  };
18
- export function constructContractCall({ target, functionSignature, args }: ContractCall): AbiEncodedContractCall;
18
+ export function constructContractCall({ target, functionSignature, args, abi, }: ContractCall): AbiEncodedContractCall;
19
19
  export function buildGMPPayload(contractCalls: ContractCall[], id?: string): number[];
20
20
  export function buildNoncePayload(nonce: bigint): number[];
21
21
  export function buildGasPayload(gasAmount: bigint): number[];
@@ -1 +1 @@
1
- {"version":3,"file":"gmp.d.ts","sourceRoot":"","sources":["gmp.js"],"names":[],"mappings":";;;;;AAoBA;;;;;;GAMG;AACH,2BANU;IACL,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,aAAa,CAAC;IAC1B,gBAAgB,EAAE,aAAa,CAAC;CACjC,CAOF;AAQK,2EAHI,YAAY,GACV,sBAAsB,CAoBlC;AASM,+CAJI,YAAY,EAAE,OACd,MAAM,GACJ,MAAM,EAAE,CAiCpB;AAMM,yCAHI,MAAM,GACJ,MAAM,EAAE,CAMpB;AAMM,2CAHI,MAAM,GACJ,MAAM,EAAE,CASpB;;;;;;mCA9G+B,uBAAuB;kCADA,oBAAoB;4CAApB,oBAAoB"}
1
+ {"version":3,"file":"gmp.d.ts","sourceRoot":"","sources":["gmp.js"],"names":[],"mappings":";;;;;AAoBA;;;;;;GAMG;AACH,2BANU;IACL,UAAU,EAAE,aAAa,CAAC;IAC1B,UAAU,EAAE,aAAa,CAAC;IAC1B,gBAAgB,EAAE,aAAa,CAAC;CACjC,CAOF;AAQK,iFAHI,YAAY,GACV,sBAAsB,CA0BlC;AASM,+CAJI,YAAY,EAAE,OACd,MAAM,GACJ,MAAM,EAAE,CAkCpB;AAMM,yCAHI,MAAM,GACJ,MAAM,EAAE,CAMpB;AAMM,2CAHI,MAAM,GACJ,MAAM,EAAE,CASpB;;;;;;mCArH+B,uBAAuB;kCADA,oBAAoB;4CAApB,oBAAoB"}
package/src/utils/gmp.js CHANGED
@@ -38,20 +38,26 @@ export const gmpAddresses = {
38
38
  * @param {ContractCall} data - The data for the contract call.
39
39
  * @returns {AbiEncodedContractCall} The encoded contract call object.
40
40
  */
41
- export const constructContractCall = ({ target, functionSignature, args }) => {
41
+ export const constructContractCall = ({
42
+ target,
43
+ functionSignature,
44
+ args,
45
+ abi,
46
+ }) => {
42
47
  const [name, paramsRaw] = functionSignature.split('(');
43
48
  const params = paramsRaw.replace(')', '').split(',').filter(Boolean);
49
+ const resolvedAbi = abi ?? [
50
+ {
51
+ type: 'function',
52
+ name,
53
+ inputs: params.map((type, i) => ({ type, name: `arg${i}` })),
54
+ },
55
+ ];
44
56
 
45
57
  return {
46
58
  target,
47
59
  data: encodeFunctionData({
48
- abi: [
49
- {
50
- type: 'function',
51
- name,
52
- inputs: params.map((type, i) => ({ type, name: `arg${i}` })),
53
- },
54
- ],
60
+ abi: resolvedAbi,
55
61
  functionName: name,
56
62
  args,
57
63
  }),
@@ -68,9 +74,10 @@ export const constructContractCall = ({ target, functionSignature, args }) => {
68
74
  export const buildGMPPayload = (contractCalls, id = '') => {
69
75
  const abiEncodedContractCalls = [];
70
76
  for (const call of contractCalls) {
71
- const { target, functionSignature, args } = call;
77
+ const { target, functionSignature, args, abi } = call;
78
+
72
79
  abiEncodedContractCalls.push(
73
- constructContractCall({ target, functionSignature, args }),
80
+ constructContractCall({ target, functionSignature, args, abi }),
74
81
  );
75
82
  }
76
83
 
@@ -1,6 +1,6 @@
1
1
  import type { MsgTransfer } from '@agoric/cosmic-proto/ibc/applications/transfer/v1/tx.js';
2
2
  import type { StorageMessage } from '@agoric/internal/src/lib-chainStorage.js';
3
- import { type VTransferIBCEvent } from '@agoric/vats';
3
+ import { type IBCChannelID, type VTransferIBCEvent } from '@agoric/vats';
4
4
  import type { ExecutionContext } from 'ava';
5
5
  import { type ChainInfo } from '../index.js';
6
6
  export declare const ROOT_STORAGE_PATH = "orchtest";
@@ -1814,7 +1814,16 @@ export declare const setupOrchestrationTest: ({ log, chains, }: {
1814
1814
  transmitVTransferEvent: (event: VTransferIBCEvent["event"], query: number | {
1815
1815
  message: MsgTransfer;
1816
1816
  sequence: bigint;
1817
- }, acknowledgementError?: string) => Promise<void>;
1817
+ }, acknowledgementError?: string) => Promise<{
1818
+ receiver: string;
1819
+ sender: string;
1820
+ target: string;
1821
+ sourceChannel: IBCChannelID;
1822
+ sequence: bigint;
1823
+ amount: bigint;
1824
+ denom: string;
1825
+ memo: string;
1826
+ }>;
1818
1827
  vowTools: import("@agoric/vow").VowTools;
1819
1828
  wellKnownSpaces: WellKnownSpaces;
1820
1829
  };
@@ -1 +1 @@
1
- {"version":3,"file":"contract-tests.d.ts","sourceRoot":"","sources":["contract-tests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-tests.d.ts","sourceRoot":"","sources":["contract-tests.ts"],"names":[],"mappings":"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"}
@@ -250,6 +250,8 @@ export const setupOrchestrationTest = async ({
250
250
  );
251
251
  // let the bridge handler finish
252
252
  await eventLoopIteration();
253
+
254
+ return base;
253
255
  };
254
256
 
255
257
  /** A chainHub for Exo tests, distinct from the one a contract makes within `withOrchestration` */