@agoric/portfolio-api 0.1.1-dev-4aec57f.0.4aec57f → 0.1.1-dev-94f7dd3.0.94f7dd3

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/portfolio-api",
3
- "version": "0.1.1-dev-4aec57f.0.4aec57f",
3
+ "version": "0.1.1-dev-94f7dd3.0.94f7dd3",
4
4
  "description": "API for Portfolio management",
5
5
  "repository": {
6
6
  "type": "git",
@@ -46,8 +46,8 @@
46
46
  "generate:ymax-machine": "npx tsx scripts/gen-ymax-machine.mts"
47
47
  },
48
48
  "dependencies": {
49
- "@agoric/internal": "0.3.3-dev-4aec57f.0.4aec57f",
50
- "@agoric/orchestration": "0.1.1-dev-4aec57f.0.4aec57f",
49
+ "@agoric/internal": "0.3.3-dev-94f7dd3.0.94f7dd3",
50
+ "@agoric/orchestration": "0.1.1-dev-94f7dd3.0.94f7dd3",
51
51
  "@endo/common": "^1.4.0",
52
52
  "@endo/errors": "^1.3.1",
53
53
  "@endo/patterns": "^1.9.1"
@@ -73,5 +73,5 @@
73
73
  "engines": {
74
74
  "node": "^22.11 || ^24.14"
75
75
  },
76
- "gitHead": "4aec57f2517104c883f42c356bce6f51b432eedf"
76
+ "gitHead": "94f7dd333365233251880bd61ef8c803433ecf4d"
77
77
  }
@@ -53,7 +53,7 @@ export const AxelarChain: import("@agoric/internal").KeyMirrorResult<{
53
53
  }>;
54
54
  /**
55
55
  * cf. https://chainlist.org/
56
- * XXX this probably belongs in @agoric/orchestration
56
+ * XXX this probably belongs in '@agoric/orchestration'
57
57
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<AxelarChain, bigint>>>>>}
58
58
  */
59
59
  export const Eip155ChainIds: Readonly<Record<ClusterName, Readonly<Partial<Record<AxelarChain, bigint>>>>>;
@@ -74,14 +74,14 @@ export const SupportedChain: import("@agoric/internal").KeyMirrorResult<{
74
74
  * cf. https://standards.chainagnostic.org/CAIPs/caip-2
75
75
  * Please keep in sync with ../../../services/ymax-planner/src/support.ts `spectrumChainIds`
76
76
  *
77
- * XXX this probably belongs in @agoric/orchestration
77
+ * XXX this probably belongs in '@agoric/orchestration'
78
78
  *
79
79
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, CaipChainId>>>>>}
80
80
  */
81
81
  export const CaipChainIds: Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, CaipChainId>>>>>;
82
82
  /**
83
83
  * cf. https://developers.circle.com/stablecoins/usdc-contract-addresses
84
- * XXX this might belong in @agoric/orchestration
84
+ * XXX this might belong in '@agoric/orchestration'
85
85
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, string>>>>>}
86
86
  */
87
87
  export const UsdcTokenIds: Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, string>>>>>;
package/src/constants.js CHANGED
@@ -70,7 +70,7 @@ harden(AxelarChain);
70
70
 
71
71
  /**
72
72
  * cf. https://chainlist.org/
73
- * XXX this probably belongs in @agoric/orchestration
73
+ * XXX this probably belongs in '@agoric/orchestration'
74
74
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<AxelarChain, bigint>>>>>}
75
75
  */
76
76
  export const Eip155ChainIds = {
@@ -116,7 +116,7 @@ const caipChainIdFromEip155 = chainId => `eip155:${chainId}`;
116
116
  * cf. https://standards.chainagnostic.org/CAIPs/caip-2
117
117
  * Please keep in sync with ../../../services/ymax-planner/src/support.ts `spectrumChainIds`
118
118
  *
119
- * XXX this probably belongs in @agoric/orchestration
119
+ * XXX this probably belongs in '@agoric/orchestration'
120
120
  *
121
121
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, CaipChainId>>>>>}
122
122
  */
@@ -139,7 +139,7 @@ harden(CaipChainIds);
139
139
 
140
140
  /**
141
141
  * cf. https://developers.circle.com/stablecoins/usdc-contract-addresses
142
- * XXX this might belong in @agoric/orchestration
142
+ * XXX this might belong in '@agoric/orchestration'
143
143
  * @type {Readonly<Record<ClusterName, Readonly<Partial<Record<SupportedChain, string>>>>>}
144
144
  */
145
145
  export const UsdcTokenIds = {
@@ -151,7 +151,7 @@ export const UsdcTokenIds = {
151
151
  Optimism: '0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85',
152
152
  agoric:
153
153
  'ibc/FE98AAD68F02F03565E9FA39A5E627946699B2B07115889ED812D8BA639576A9',
154
- noble: 'usdc',
154
+ noble: 'uusdc',
155
155
  },
156
156
  testnet: {
157
157
  Arbitrum: '0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d', // Sepolia
@@ -161,7 +161,7 @@ export const UsdcTokenIds = {
161
161
  Optimism: '0x5fd84259d66Cd46123540766Be93DFE6D43130D7', // Sepolia
162
162
  agoric:
163
163
  'ibc/75F84596DDE9EE93010620701FFED959F3FFA1D0979F6773DE994FFEEA7D32F3',
164
- noble: 'usdc',
164
+ noble: 'uusdc',
165
165
  },
166
166
  local: {},
167
167
  };
package/src/places.d.ts CHANGED
@@ -1,13 +1,30 @@
1
- import type { AxelarChain, SupportedChain, YieldProtocol } from './constants.js';
1
+ import type { TypeTag } from '@agoric/internal/src/tagged.js';
2
+ import type { SupportedChain, YieldProtocol } from './constants.js';
2
3
  import type { InstrumentId } from './instruments.js';
3
4
  import type { AssetPlaceRef } from './types.js';
5
+ export type TokenUsage = 'swapFrom' | 'swapTo';
6
+ export type TokenIdKey = TypeTag<string, 'TokenIdKey'>;
7
+ export declare const makeTokenIdKey: (tokenId: string) => TokenIdKey;
8
+ /**
9
+ * cf. https://github.com/Agoric/ymax-web/blob/main/yds/src/data/tokens.ts:
10
+ * TokenMetadata
11
+ */
12
+ export type TokenMetadata = {
13
+ caipChainId: string;
14
+ chainName: string;
15
+ tokenId: string;
16
+ symbol: string;
17
+ /** Count of fractional decimal digits in the token's base unit. */
18
+ decimals: number;
19
+ usage?: readonly TokenUsage[];
20
+ };
4
21
  export type PoolPlaceInfo = {
5
22
  protocol: 'USDN';
6
23
  vault: null | 1;
7
24
  chainName: 'noble';
8
25
  } | {
9
26
  protocol: YieldProtocol;
10
- chainName: AxelarChain;
27
+ chainName: SupportedChain;
11
28
  };
12
29
  export declare const BeefyPoolPlaces: {
13
30
  readonly Beefy_re7_Avalanche: {
@@ -384,6 +401,12 @@ export declare const PoolPlaces: {
384
401
  };
385
402
  };
386
403
  export type PoolKey = InstrumentId;
404
+ export type ChainTokenMetadataEntry = {
405
+ caipChainId: string;
406
+ chainName: string;
407
+ tokenMetadataById: Record<TokenIdKey, TokenMetadata>;
408
+ };
409
+ export type ChainTokenMetadata = Record<string, ChainTokenMetadataEntry>;
387
410
  /**
388
411
  * Without regard to supported chains, is the input plausibly an InstrumentId
389
412
  * (i.e., does it start with an ASCII letter)?
@@ -1 +1 @@
1
- {"version":3,"file":"places.d.ts","sourceRoot":"","sources":["places.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACd,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAchD,MAAM,MAAM,aAAa,GACrB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACzD;IAAE,QAAQ,EAAE,aAAa,CAAC;IAAC,SAAS,EAAE,WAAW,CAAA;CAAE,CAAC;AAGxD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAyBqC,CAAC;AAGlE,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,eAAe,CAAC;AAE7D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyImC,CAAC;AAGlE,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAEjE,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAciC,CAAC;AAGzD,MAAM,MAAM,OAAO,GAAG,YAAY,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,YAC5B,CAAC;AAIzB,eAAO,MAAM,OAAO,GAAI,IAAI,aAAa,KAAG,cAa3C,CAAC"}
1
+ {"version":3,"file":"places.d.ts","sourceRoot":"","sources":["places.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gCAAgC,CAAC;AAC9D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE/C,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;AAEvD,eAAO,MAAM,cAAc,GAAI,SAAS,MAAM,KAAG,UAC2B,CAAC;AAG7E;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CAC/B,CAAC;AAcF,MAAM,MAAM,aAAa,GACrB;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GACzD;IACE,QAAQ,EAAE,aAAa,CAAC;IACxB,SAAS,EAAE,cAAc,CAAC;CAC3B,CAAC;AAGN,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAyBqC,CAAC;AAGlE,MAAM,MAAM,iBAAiB,GAAG,MAAM,OAAO,eAAe,CAAC;AAE7D,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyImC,CAAC;AAGlE,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAEjE,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAciC,CAAC;AAGzD,MAAM,MAAM,OAAO,GAAG,YAAY,CAAC;AACnC,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAElB,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;CACtD,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;AAEzE;;;GAGG;AACH,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,YAC5B,CAAC;AAIzB,eAAO,MAAM,OAAO,GAAI,IAAI,aAAa,KAAG,cAa3C,CAAC"}
package/src/places.js CHANGED
@@ -1,13 +1,32 @@
1
1
  import { Fail } from '@endo/errors';
2
2
 
3
- ;
4
-
5
-
6
-
7
-
3
+ ;
4
+ ;
8
5
  ;
9
6
  ;
10
7
 
8
+ ;
9
+
10
+ ;
11
+
12
+ export const makeTokenIdKey = (tokenId ) =>
13
+ (tokenId.startsWith('0x') ? tokenId.toLowerCase() : tokenId) ;
14
+ harden(makeTokenIdKey);
15
+
16
+ /**
17
+ * cf. https://github.com/Agoric/ymax-web/blob/main/yds/src/data/tokens.ts:
18
+ * TokenMetadata
19
+ */
20
+ ;
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+
29
+
11
30
  const isPrimitive = (value ) => Object(value) !== value;
12
31
 
13
32
  const deepFreeze = (value ) => {
@@ -22,7 +41,10 @@ const deepFreeze = (value ) => {
22
41
 
23
42
  ;
24
43
 
25
-
44
+
45
+
46
+
47
+
26
48
 
27
49
  // XXX special handling. What's the functional difference from other places?
28
50
  export const BeefyPoolPlaces = {
@@ -215,6 +237,13 @@ export const PoolPlaces = {
215
237
  deepFreeze(PoolPlaces);
216
238
 
217
239
  ;
240
+ ;
241
+
242
+
243
+
244
+
245
+
246
+ ;
218
247
 
219
248
  /**
220
249
  * Without regard to supported chains, is the input plausibly an InstrumentId
@@ -1,7 +1,11 @@
1
1
  import type { TypedPattern } from '@agoric/internal';
2
- import type { BeefyInstrumentId, ERC4626InstrumentId } from './places.js';
2
+ import type { BeefyInstrumentId, ChainTokenMetadata, ERC4626InstrumentId, TokenMetadata } from './places.js';
3
3
  import type { DepositFromChainRef, LocalChainAccountRef, PortfolioAgentKey, InterChainAccountRef, WithdrawToChainRef } from './types.js';
4
- export { isInstrumentId } from './places.js';
4
+ export { isInstrumentId, makeTokenIdKey } from './places.js';
5
+ export type { ChainTokenMetadata, ChainTokenMetadataEntry, TokenIdKey, TokenMetadata, } from './places.js';
6
+ export declare const TokenUsageShape: import("@endo/patterns").MatcherOf<"or", ["swapFrom", "swapTo"]>;
7
+ export declare const TokenMetadataShape: TypedPattern<TokenMetadata>;
8
+ export declare const ChainTokenMetadataShape: TypedPattern<ChainTokenMetadata>;
5
9
  /**
6
10
  * Without regard to supported chains, is the input plausibly a
7
11
  * DepositFromChainRef (i.e., does it start with `+`)?
@@ -1 +1 @@
1
- {"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["type-guards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAC1E,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAE7C;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,GAAG,IAAI,mBAA0C,CAAC;AAGrD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,KAAK,MAAM,KACV,GAAG,IAAI,oBAA2C,CAAC;AAGtD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,KAAK,MAAM,KACV,GAAG,IAAI,oBAA2C,CAAC;AAGtD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,kBACrC,CAAC;AAGtB;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,GAAG,IAAI,mBAAiD,CAAC;AAG5D;;;GAGG;AACH,eAAO,MAAM,2BAA2B,GACtC,KAAK,MAAM,KACV,GAAG,IAAI,mBAAuD,CAAC;AAGlE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,iBAC/B,CAAC;AAG3B,eAAO,MAAM,sBAAsB,EAAE,YAAY,CAAC,iBAAiB,CACvD,CAAC;AAEb,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAE3D,CAAC"}
1
+ {"version":3,"file":"type-guards.d.ts","sourceRoot":"","sources":["type-guards.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,mBAAmB,EACnB,aAAa,EACd,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACpB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7D,YAAY,EACV,kBAAkB,EAClB,uBAAuB,EACvB,UAAU,EACV,aAAa,GACd,MAAM,aAAa,CAAC;AAErB,eAAO,MAAM,eAAe,kEAA6B,CAAC;AAG1D,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,aAAa,CAW1D,CAAC;AAGF,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,kBAAkB,CAWlE,CAAC;AAGJ;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,GAAG,IAAI,mBAA0C,CAAC;AAGrD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,KAAK,MAAM,KACV,GAAG,IAAI,oBAA2C,CAAC;AAGtD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,KAAK,MAAM,KACV,GAAG,IAAI,oBAA2C,CAAC;AAGtD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,kBACrC,CAAC;AAGtB;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAChC,KAAK,MAAM,KACV,GAAG,IAAI,mBAAiD,CAAC;AAG5D;;;GAGG;AACH,eAAO,MAAM,2BAA2B,GACtC,KAAK,MAAM,KACV,GAAG,IAAI,mBAAuD,CAAC;AAGlE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,KAAK,MAAM,KAAG,GAAG,IAAI,iBAC/B,CAAC;AAG3B,eAAO,MAAM,sBAAsB,EAAE,YAAY,CAAC,iBAAiB,CACvD,CAAC;AAEb,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,EAAE,YAAY,CAAC,MAAM,CAE3D,CAAC"}
@@ -1,6 +1,11 @@
1
1
 
2
2
  import { M } from '@endo/patterns';
3
- ;
3
+ ;
4
+
5
+
6
+
7
+
8
+
4
9
  ;
5
10
 
6
11
 
@@ -9,7 +14,44 @@ import { M } from '@endo/patterns';
9
14
 
10
15
 
11
16
 
12
- export { isInstrumentId } from './places.js';
17
+ export { isInstrumentId, makeTokenIdKey } from './places.js';
18
+ ;
19
+
20
+
21
+
22
+
23
+
24
+
25
+ export const TokenUsageShape = M.or('swapFrom', 'swapTo');
26
+ harden(TokenUsageShape);
27
+
28
+ export const TokenMetadataShape = M.splitRecord(
29
+ {
30
+ caipChainId: M.string(),
31
+ chainName: M.string(),
32
+ tokenId: M.string(),
33
+ symbol: M.string(),
34
+ decimals: M.number(),
35
+ },
36
+ {
37
+ usage: M.arrayOf(TokenUsageShape),
38
+ },
39
+ );
40
+ harden(TokenMetadataShape);
41
+
42
+ export const ChainTokenMetadataShape =
43
+ M.recordOf(
44
+ M.string(),
45
+ M.splitRecord(
46
+ {
47
+ caipChainId: M.string(),
48
+ chainName: M.string(),
49
+ tokenMetadataById: M.recordOf(M.string(), TokenMetadataShape),
50
+ },
51
+ {},
52
+ ),
53
+ );
54
+ harden(ChainTokenMetadataShape);
13
55
 
14
56
  /**
15
57
  * Without regard to supported chains, is the input plausibly a
@@ -1,3 +1,4 @@
1
1
  export type * from './network/network-spec.js';
2
2
  export type * from './target-balances.js';
3
3
  export type * from './types.js';
4
+ export type * from './places.js';
package/src/types.d.ts CHANGED
@@ -137,20 +137,30 @@ export type FlowStatus = {
137
137
  state: 'fail';
138
138
  } & FlowErrors);
139
139
  /**
140
- * Decomposed parameters for a same-chain, same-account reward-token -> USDC
140
+ * Decomposed parameters for a same-chain, same-account reward-token -> stable-token
141
141
  * swap (src === dest === `@{chain}`) routed through 1inch.
142
142
  *
143
143
  * Rather than forwarding an opaque calldata blob, the planner supplies the swap
144
144
  * as named fields and the contract reconstructs the call itself, filling the
145
- * fund-safety fields it controls (`dstToken` = USDC, `dstReceiver` = this
146
- * portfolio's own account, `minReturnAmount` = the movement `amount`) and
147
- * pinning the router/selector from `provider`. `executor`, `srcReceiver`, and
148
- * `data` are provider route internals
145
+ * fund-safety fields it controls (`dstToken` = configured stable token,
146
+ * `dstReceiver` = this portfolio's own account, `minReturnAmount` = the
147
+ * movement `amount`) and pinning the router/selector from `provider`.
148
+ * `executor`, `srcReceiver`, and `data` are provider route internals
149
149
  */
150
150
  export type OneInchSwapDesc = {
151
151
  provider: '1inch';
152
- /** reward token; becomes `desc.srcToken` and the approved spend token */
152
+ /**
153
+ * Reward token; becomes `desc.srcToken` and the approved spend token.
154
+ * The contract accepts only tokens listed in configured chain metadata with
155
+ * `swapFrom` usage.
156
+ */
153
157
  tokenIn: `0x${string}`;
158
+ /**
159
+ * Optional stable token; becomes `desc.dstToken`. When omitted, the contract
160
+ * uses its configured stable token for the chain. The effective token must be
161
+ * listed in configured chain metadata with `swapTo` usage.
162
+ */
163
+ tokenOut?: `0x${string}`;
154
164
  /** becomes `desc.amount` and the approved amount */
155
165
  amountIn: bigint;
156
166
  /** provider routing flags (e.g. 1inch `_PARTIAL_FILL`) */
@@ -163,7 +173,7 @@ export type OneInchSwapDesc = {
163
173
  data: `0x${string}`;
164
174
  };
165
175
  /**
166
- * A reward-token -> USDC swap request. Currently only 1inch is supported;
176
+ * A reward-token -> stable-token swap request. Currently only 1inch is supported;
167
177
  * supporting another aggregator widens this to a union of per-provider descs.
168
178
  */
169
179
  export type SwapDesc = OneInchSwapDesc;
@@ -235,7 +245,7 @@ export type FlowStep = {
235
245
  /**
236
246
  * The swap request this step performs, carried through from the plan
237
247
  * `MovementDesc` so it is visible in published flow steps. Present only on
238
- * reward-token -> USDC swap steps.
248
+ * reward-token -> stable-token swap steps.
239
249
  */
240
250
  swap?: SwapDesc;
241
251
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["types.ts"],"names":[],"mappings":"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"}
package/src/types.js CHANGED
@@ -158,20 +158,30 @@ import {
158
158
 
159
159
 
160
160
  /**
161
- * Decomposed parameters for a same-chain, same-account reward-token -> USDC
161
+ * Decomposed parameters for a same-chain, same-account reward-token -> stable-token
162
162
  * swap (src === dest === `@{chain}`) routed through 1inch.
163
163
  *
164
164
  * Rather than forwarding an opaque calldata blob, the planner supplies the swap
165
165
  * as named fields and the contract reconstructs the call itself, filling the
166
- * fund-safety fields it controls (`dstToken` = USDC, `dstReceiver` = this
167
- * portfolio's own account, `minReturnAmount` = the movement `amount`) and
168
- * pinning the router/selector from `provider`. `executor`, `srcReceiver`, and
169
- * `data` are provider route internals
166
+ * fund-safety fields it controls (`dstToken` = configured stable token,
167
+ * `dstReceiver` = this portfolio's own account, `minReturnAmount` = the
168
+ * movement `amount`) and pinning the router/selector from `provider`.
169
+ * `executor`, `srcReceiver`, and `data` are provider route internals
170
170
  */
171
171
  ;
172
172
 
173
-
173
+
174
+
175
+
176
+
177
+
174
178
 
179
+
180
+
181
+
182
+
183
+
184
+
175
185
 
176
186
 
177
187
 
@@ -185,7 +195,7 @@ import {
185
195
 
186
196
 
187
197
  /**
188
- * A reward-token -> USDC swap request. Currently only 1inch is supported;
198
+ * A reward-token -> stable-token swap request. Currently only 1inch is supported;
189
199
  * supporting another aggregator widens this to a union of per-provider descs.
190
200
  */
191
201
  ;
@@ -263,7 +273,7 @@ import {
263
273
 
264
274
 
265
275
 
266
-
276
+
267
277
 
268
278
 
269
279