@artblocks/abx-cli 0.1.0-alpha.12 → 0.1.0-alpha.14
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/dist/config.d.ts.map +1 -1
- package/dist/config.js +8 -8
- package/dist/config.js.map +1 -1
- package/dist/flags.d.ts.map +1 -1
- package/dist/flags.js +1 -1
- package/dist/flags.js.map +1 -1
- package/dist/gas.d.ts +63 -0
- package/dist/gas.d.ts.map +1 -0
- package/dist/gas.js +76 -0
- package/dist/gas.js.map +1 -0
- package/dist/inspect.d.ts.map +1 -1
- package/dist/inspect.js +121 -15
- package/dist/inspect.js.map +1 -1
- package/dist/main.js +418 -75
- package/dist/main.js.map +1 -1
- package/dist/onchain-uri.d.ts +23 -39
- package/dist/onchain-uri.d.ts.map +1 -1
- package/dist/onchain-uri.js +94 -86
- package/dist/onchain-uri.js.map +1 -1
- package/dist/ownerops.d.ts +13 -1
- package/dist/ownerops.d.ts.map +1 -1
- package/dist/ownerops.js +268 -73
- package/dist/ownerops.js.map +1 -1
- package/dist/preview.d.ts +14 -0
- package/dist/preview.d.ts.map +1 -1
- package/dist/preview.js +86 -25
- package/dist/preview.js.map +1 -1
- package/dist/schema.d.ts +12 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +62 -7
- package/dist/schema.js.map +1 -1
- package/dist/signer.d.ts.map +1 -1
- package/dist/signer.js +38 -2
- package/dist/signer.js.map +1 -1
- package/package.json +6 -6
- package/skill/SKILL.md +29 -39
- package/skill/reference/code-projects.md +42 -5
- package/skill/reference/decisions.md +61 -0
- package/skill/reference/operating.md +1 -1
package/dist/onchain-uri.d.ts
CHANGED
|
@@ -1,43 +1,34 @@
|
|
|
1
1
|
import { type Address, type GeneratorReadClient, type GeneratorStatus, type Hex, type ParsedDependencyRef, type ProjectState } from '@artblocks/abx-sdk';
|
|
2
2
|
import type { DepCheck } from './deps.js';
|
|
3
|
-
/** The self-referential key: the CSV lists it too (the resolver's tokenData carries every
|
|
4
|
-
* evented param — including `params.keys` itself — so the generator must list it to stay
|
|
5
|
-
* byte-aligned; inputsHash parity is load-bearing). */
|
|
6
|
-
export declare const PARAMS_KEYS = "params.keys";
|
|
7
|
-
/** ≤ this many chars rides as a literal readable-ASCII bytes32; longer takes the data path. */
|
|
8
|
-
export declare const PARAMS_KEYS_LITERAL_MAX = 31;
|
|
9
|
-
/**
|
|
10
|
-
* Compose the `params.keys` CSV: every param key the deploy writes ∪ the `--schema` keys ∪
|
|
11
|
-
* `params.keys` itself — deduped, sorted lexicographically, comma-joined. Sorted because the
|
|
12
|
-
* canonical tokenData serialization sorts keys; deterministic composition keeps the value
|
|
13
|
-
* reproducible from the same flags.
|
|
14
|
-
*/
|
|
15
|
-
export declare function composeParamsKeys(writtenParamKeys: string[], schemaKeys: string[]): string;
|
|
16
|
-
/** Whether a CSV fits the literal bytes32 lane (printable ASCII, ≤ 31 bytes). */
|
|
17
|
-
export declare function paramsKeysIsLiteral(csv: string): boolean;
|
|
18
|
-
/** The `params.keys` write leg: `setContractParam` (literal bytes32) when the CSV fits,
|
|
19
|
-
* else `setContractParamData` (one blob; hash evented — the generator reads it back whole). */
|
|
20
|
-
export declare function paramsKeysCall(csv: string): {
|
|
21
|
-
call: Hex;
|
|
22
|
-
encoding: 'literal' | 'data';
|
|
23
|
-
};
|
|
24
3
|
/**
|
|
25
4
|
* The `--onchain-uri` legs of the setup multicall, in order:
|
|
26
5
|
* 1. collection-scope `animation_url` field → representation `renderer`,
|
|
27
6
|
* value `abi.encode(generator)` (the canonical generator computes the live view on-chain);
|
|
28
|
-
* 2.
|
|
29
|
-
* 3. `
|
|
30
|
-
* 4. `setContractURIRenderer(metadataRenderer)` — contractURI too (parity with the 1/1 lane).
|
|
7
|
+
* 2. `setTokenURIRenderer(metadataRenderer)` — tokenURI resolves ON-CHAIN from here on;
|
|
8
|
+
* 3. `setContractURIRenderer(metadataRenderer)` — contractURI too (parity with the 1/1 lane).
|
|
31
9
|
* Placed BEFORE the mint legs so every token is born with the on-chain lane fully configured.
|
|
10
|
+
*
|
|
11
|
+
* There is no param leg: the generator enumerates the param surface from the token itself
|
|
12
|
+
* (`contractParamKeys` / `tokenParamKeys`), so there is nothing for a deploy to declare.
|
|
32
13
|
*/
|
|
33
14
|
export declare function onchainUriSetupCalls(args: {
|
|
34
15
|
generator: Address;
|
|
35
16
|
metadataRenderer: Address;
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
17
|
+
}): Hex[];
|
|
18
|
+
/** The SET param keys: `contractParamKeys()`, plus `tokenParamKeys(tokenId)` when a token is named.
|
|
19
|
+
* Null when the getters are absent — a LEGACY project deployed before enumeration shipped (or a
|
|
20
|
+
* token type with no Params extension at all). */
|
|
21
|
+
export declare function readSetParamKeys(client: GeneratorReadClient, contract: Address, tokenId?: bigint): Promise<{
|
|
22
|
+
contract: string[];
|
|
23
|
+
token: string[];
|
|
24
|
+
} | null>;
|
|
25
|
+
/** The DECLARED (governed) keys: `paramSchemaKeys()`, append-only — including keys declared but
|
|
26
|
+
* never yet written, which are otherwise undiscoverable. Null on a legacy project. */
|
|
27
|
+
export declare function readParamSchemaKeys(client: GeneratorReadClient, contract: Address): Promise<string[] | null>;
|
|
28
|
+
/** Does this token expose the enumeration surface at all? The one-call probe behind the repoint
|
|
29
|
+
* guard: the canonical generator reads params from chain, so pointing a token that lacks these
|
|
30
|
+
* getters at it makes every param silently invisible. */
|
|
31
|
+
export declare function hasParamEnumeration(client: GeneratorReadClient, contract: Address): Promise<boolean>;
|
|
41
32
|
/** What the deploy can honestly promise about the generator's template branch, derived from
|
|
42
33
|
* the selection-time dependency report (never a new RPC): chain-complete iff every registry
|
|
43
34
|
* dep has proven ON-CHAIN bytes (OnChain refs read their data contract directly, so they
|
|
@@ -84,14 +75,7 @@ export interface OnChainUriReport {
|
|
|
84
75
|
* minted token — decoded, with the `animation_url` form checked against the branch.
|
|
85
76
|
*/
|
|
86
77
|
export declare function onChainUriReport(client: GeneratorReadClient, state: ProjectState, generatorOverride?: string): Promise<OnChainUriReport>;
|
|
87
|
-
/**
|
|
88
|
-
*
|
|
89
|
-
|
|
90
|
-
* parity with the resolver's). Returns the fixed CSV to suggest, or null when no nudge is
|
|
91
|
-
* warranted (no CSV = not on the on-chain lane; already listed = fine).
|
|
92
|
-
*/
|
|
93
|
-
export declare function paramsKeysNudge(existingCsv: string | null, configuredKey: string): string | null;
|
|
94
|
-
/** Read the project's `params.keys` contract param from chain (literal or data-backed);
|
|
95
|
-
* null when unset. Best-effort — callers must treat a throw as "no nudge". */
|
|
96
|
-
export declare function readParamsKeys(client: GeneratorReadClient, contract: Address): Promise<string | null>;
|
|
78
|
+
/** Read a legacy project's `params.keys` CSV from chain (literal or data-backed); null when unset.
|
|
79
|
+
* Best-effort — callers must treat a throw as "no legacy list". */
|
|
80
|
+
export declare function readLegacyParamsKeys(client: GeneratorReadClient, contract: Address): Promise<string[] | null>;
|
|
97
81
|
//# sourceMappingURL=onchain-uri.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onchain-uri.d.ts","sourceRoot":"","sources":["../src/onchain-uri.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"onchain-uri.d.ts","sourceRoot":"","sources":["../src/onchain-uri.ts"],"names":[],"mappings":"AAkBA,OAAO,EAUL,KAAK,OAAO,EACZ,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACpB,KAAK,GAAG,EACR,KAAK,mBAAmB,EACxB,KAAK,YAAY,EAElB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAC,QAAQ,EAAC,MAAM,WAAW,CAAC;AAExC;;;;;;;;;;GAUG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE;IAAC,SAAS,EAAE,OAAO,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAA;CAAC,GAAG,GAAG,EAAE,CAqBjG;AAQD;;mDAEmD;AACnD,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,mBAAmB,EAC3B,QAAQ,EAAE,OAAO,EACjB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAC,GAAG,IAAI,CAAC,CAqBvD;AAED;uFACuF;AACvF,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAYlH;AAED;;0DAE0D;AAC1D,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAO1G;AAID;;;kFAGkF;AAClF,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,mBAAmB,EAAE,EAC3B,MAAM,EAAE,QAAQ,EAAE,GACjB;IAAC,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAC,CAoB5C;AAID;;sEAEsE;AACtE,wBAAgB,YAAY,CAAC,KAAK,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,IAAI,CAUnF;AAED;mFACmF;AACnF,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAM9D;AAYD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EACL;QAAC,IAAI,EAAE,WAAW,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;KAAC,GACzD;QAAC,IAAI,EAAE,KAAK,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAC,GAC1B;QAAC,IAAI,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,GACpC;QAAC,IAAI,EAAE,SAAS,CAAA;KAAC,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,eAAe,CAAC;IACxB,gEAAgE;IAChE,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC;CAC7B;AAmBD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,mBAAmB,EAC3B,KAAK,EAAE,YAAY,EACnB,iBAAiB,CAAC,EAAE,MAAM,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAgC3B;AAUD;oEACoE;AACpE,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,CAoBnH"}
|
package/dist/onchain-uri.js
CHANGED
|
@@ -5,71 +5,30 @@
|
|
|
5
5
|
* The lane (specs/protocol/code-projects.md → "The canonical generator — AbxGenerator" +
|
|
6
6
|
* specs/protocol/onchain-metadata.md → "URI resolution"): the collection-scope `animation_url`
|
|
7
7
|
* field points at the canonical generator via the `renderer` representation
|
|
8
|
-
* (`abi.encode(address)`), the `
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
8
|
+
* (`abi.encode(address)`), and the token's `tokenURIRenderer` toggles tokenURI to the canonical
|
|
9
|
+
* on-chain metadata renderer (`setContractURIRenderer` does the same for contractURI). Both ride
|
|
10
|
+
* the EXISTING setup multicall, before the mints.
|
|
11
|
+
*
|
|
12
|
+
* The param surface is NOT part of that wiring: params enumerate ON-CHAIN (`contractParamKeys` /
|
|
13
|
+
* `tokenParamKeys`, maintained by the write paths themselves), so the generator reads the key set
|
|
14
|
+
* straight from the token. The old `params.keys` CSV convention is retired — nothing writes it any
|
|
15
|
+
* more; the only thing left here is a read-only lane for LEGACY projects deployed before
|
|
16
|
+
* enumeration shipped.
|
|
12
17
|
*/
|
|
13
|
-
import { encodeFunctionData,
|
|
18
|
+
import { encodeFunctionData, zeroAddress } from 'viem';
|
|
14
19
|
import { decodeFieldRenderer, decodeTag, encodeFieldRenderer, encodeTag, readGeneratorStatus, resolveGenerator, seriesCodeAbi, METADATA_FIELD as F, METADATA_REPRESENTATION as R, DEP_RESOLUTION, } from '@artblocks/abx-sdk';
|
|
15
|
-
/** The self-referential key: the CSV lists it too (the resolver's tokenData carries every
|
|
16
|
-
* evented param — including `params.keys` itself — so the generator must list it to stay
|
|
17
|
-
* byte-aligned; inputsHash parity is load-bearing). */
|
|
18
|
-
export const PARAMS_KEYS = 'params.keys';
|
|
19
|
-
/** ≤ this many chars rides as a literal readable-ASCII bytes32; longer takes the data path. */
|
|
20
|
-
export const PARAMS_KEYS_LITERAL_MAX = 31;
|
|
21
|
-
/**
|
|
22
|
-
* Compose the `params.keys` CSV: every param key the deploy writes ∪ the `--schema` keys ∪
|
|
23
|
-
* `params.keys` itself — deduped, sorted lexicographically, comma-joined. Sorted because the
|
|
24
|
-
* canonical tokenData serialization sorts keys; deterministic composition keeps the value
|
|
25
|
-
* reproducible from the same flags.
|
|
26
|
-
*/
|
|
27
|
-
export function composeParamsKeys(writtenParamKeys, schemaKeys) {
|
|
28
|
-
const keys = new Set([...writtenParamKeys, ...schemaKeys, PARAMS_KEYS]);
|
|
29
|
-
return [...keys]
|
|
30
|
-
.map((k) => k.trim())
|
|
31
|
-
.filter(Boolean)
|
|
32
|
-
.sort()
|
|
33
|
-
.filter((k, i, all) => i === 0 || k !== all[i - 1])
|
|
34
|
-
.join(',');
|
|
35
|
-
}
|
|
36
|
-
/** Whether a CSV fits the literal bytes32 lane (printable ASCII, ≤ 31 bytes). */
|
|
37
|
-
export function paramsKeysIsLiteral(csv) {
|
|
38
|
-
return csv.length <= PARAMS_KEYS_LITERAL_MAX && /^[\x20-\x7e]+$/.test(csv);
|
|
39
|
-
}
|
|
40
|
-
/** The `params.keys` write leg: `setContractParam` (literal bytes32) when the CSV fits,
|
|
41
|
-
* else `setContractParamData` (one blob; hash evented — the generator reads it back whole). */
|
|
42
|
-
export function paramsKeysCall(csv) {
|
|
43
|
-
if (paramsKeysIsLiteral(csv)) {
|
|
44
|
-
return {
|
|
45
|
-
call: encodeFunctionData({
|
|
46
|
-
abi: seriesCodeAbi,
|
|
47
|
-
functionName: 'setContractParam',
|
|
48
|
-
args: [encodeTag(PARAMS_KEYS), encodeTag(csv)],
|
|
49
|
-
}),
|
|
50
|
-
encoding: 'literal',
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
return {
|
|
54
|
-
call: encodeFunctionData({
|
|
55
|
-
abi: seriesCodeAbi,
|
|
56
|
-
functionName: 'setContractParamData',
|
|
57
|
-
args: [encodeTag(PARAMS_KEYS), toHex(csv)],
|
|
58
|
-
}),
|
|
59
|
-
encoding: 'data',
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
20
|
/**
|
|
63
21
|
* The `--onchain-uri` legs of the setup multicall, in order:
|
|
64
22
|
* 1. collection-scope `animation_url` field → representation `renderer`,
|
|
65
23
|
* value `abi.encode(generator)` (the canonical generator computes the live view on-chain);
|
|
66
|
-
* 2.
|
|
67
|
-
* 3. `
|
|
68
|
-
* 4. `setContractURIRenderer(metadataRenderer)` — contractURI too (parity with the 1/1 lane).
|
|
24
|
+
* 2. `setTokenURIRenderer(metadataRenderer)` — tokenURI resolves ON-CHAIN from here on;
|
|
25
|
+
* 3. `setContractURIRenderer(metadataRenderer)` — contractURI too (parity with the 1/1 lane).
|
|
69
26
|
* Placed BEFORE the mint legs so every token is born with the on-chain lane fully configured.
|
|
27
|
+
*
|
|
28
|
+
* There is no param leg: the generator enumerates the param surface from the token itself
|
|
29
|
+
* (`contractParamKeys` / `tokenParamKeys`), so there is nothing for a deploy to declare.
|
|
70
30
|
*/
|
|
71
31
|
export function onchainUriSetupCalls(args) {
|
|
72
|
-
const { call: paramsLeg, encoding } = paramsKeysCall(args.paramsKeys);
|
|
73
32
|
const calls = [];
|
|
74
33
|
// The `animation_url` leg points at the generator (which computes the doc from a PROGRAM). A
|
|
75
34
|
// renderer-only drop (in-chain SVG, no program) has no generator — and baking this leg at a ZERO
|
|
@@ -83,8 +42,66 @@ export function onchainUriSetupCalls(args) {
|
|
|
83
42
|
args: [encodeTag(F.animationUrl), encodeTag(R.renderer), encodeFieldRenderer(args.generator)],
|
|
84
43
|
}));
|
|
85
44
|
}
|
|
86
|
-
calls.push(
|
|
87
|
-
return
|
|
45
|
+
calls.push(encodeFunctionData({ abi: seriesCodeAbi, functionName: 'setTokenURIRenderer', args: [args.metadataRenderer] }), encodeFunctionData({ abi: seriesCodeAbi, functionName: 'setContractURIRenderer', args: [args.metadataRenderer] }));
|
|
46
|
+
return calls;
|
|
47
|
+
}
|
|
48
|
+
// ── the param surface, enumerated FROM CHAIN ──────────────────────────────────
|
|
49
|
+
// `key ∈ list ⟺ the param isSet` — the contract maintains both key lists inside the write paths
|
|
50
|
+
// themselves, so nothing off-chain has to be kept in step. `seed` is deliberately never listed
|
|
51
|
+
// (every consumer reads it as a tokenData coordinate). Enumeration order is unspecified; the
|
|
52
|
+
// canonical serialization sorts.
|
|
53
|
+
/** The SET param keys: `contractParamKeys()`, plus `tokenParamKeys(tokenId)` when a token is named.
|
|
54
|
+
* Null when the getters are absent — a LEGACY project deployed before enumeration shipped (or a
|
|
55
|
+
* token type with no Params extension at all). */
|
|
56
|
+
export async function readSetParamKeys(client, contract, tokenId) {
|
|
57
|
+
try {
|
|
58
|
+
const contractKeys = (await client.readContract({
|
|
59
|
+
address: contract,
|
|
60
|
+
abi: seriesCodeAbi,
|
|
61
|
+
functionName: 'contractParamKeys',
|
|
62
|
+
args: [],
|
|
63
|
+
}));
|
|
64
|
+
const tokenKeys = tokenId === undefined
|
|
65
|
+
? []
|
|
66
|
+
: (await client.readContract({
|
|
67
|
+
address: contract,
|
|
68
|
+
abi: seriesCodeAbi,
|
|
69
|
+
functionName: 'tokenParamKeys',
|
|
70
|
+
args: [tokenId],
|
|
71
|
+
}));
|
|
72
|
+
return { contract: contractKeys.map(decodeTag), token: tokenKeys.map(decodeTag) };
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
/** The DECLARED (governed) keys: `paramSchemaKeys()`, append-only — including keys declared but
|
|
79
|
+
* never yet written, which are otherwise undiscoverable. Null on a legacy project. */
|
|
80
|
+
export async function readParamSchemaKeys(client, contract) {
|
|
81
|
+
try {
|
|
82
|
+
const keys = (await client.readContract({
|
|
83
|
+
address: contract,
|
|
84
|
+
abi: seriesCodeAbi,
|
|
85
|
+
functionName: 'paramSchemaKeys',
|
|
86
|
+
args: [],
|
|
87
|
+
}));
|
|
88
|
+
return keys.map(decodeTag);
|
|
89
|
+
}
|
|
90
|
+
catch {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/** Does this token expose the enumeration surface at all? The one-call probe behind the repoint
|
|
95
|
+
* guard: the canonical generator reads params from chain, so pointing a token that lacks these
|
|
96
|
+
* getters at it makes every param silently invisible. */
|
|
97
|
+
export async function hasParamEnumeration(client, contract) {
|
|
98
|
+
try {
|
|
99
|
+
await client.readContract({ address: contract, abi: seriesCodeAbi, functionName: 'tokenParamKeys', args: [0n] });
|
|
100
|
+
return true;
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
return false;
|
|
104
|
+
}
|
|
88
105
|
}
|
|
89
106
|
// ── the chain-complete expectation (deploy-time, from the P1 dependency report) ──
|
|
90
107
|
/** What the deploy can honestly promise about the generator's template branch, derived from
|
|
@@ -204,40 +221,31 @@ export async function onChainUriReport(client, state, generatorOverride) {
|
|
|
204
221
|
}
|
|
205
222
|
return { generator, status, probe };
|
|
206
223
|
}
|
|
207
|
-
// ── the
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
return null;
|
|
217
|
-
const listed = existingCsv.split(',').map((k) => k.trim()).filter(Boolean);
|
|
218
|
-
if (listed.includes(configuredKey))
|
|
219
|
-
return null;
|
|
220
|
-
return composeParamsKeys([...listed, configuredKey], []);
|
|
221
|
-
}
|
|
222
|
-
/** Read the project's `params.keys` contract param from chain (literal or data-backed);
|
|
223
|
-
* null when unset. Best-effort — callers must treat a throw as "no nudge". */
|
|
224
|
-
export async function readParamsKeys(client, contract) {
|
|
224
|
+
// ── LEGACY: the retired `params.keys` convention, READ-ONLY ───────────────────
|
|
225
|
+
// Projects deployed before on-chain enumeration declared their param surface in a `params.keys`
|
|
226
|
+
// contract param, and their (old) generator read that CSV. Nothing writes it any more — this reader
|
|
227
|
+
// exists purely so `abx state` still describes those live testnet projects. A `params.keys` value
|
|
228
|
+
// written on a NEW project is just an ordinary param: enumerated and emitted like any other.
|
|
229
|
+
const LEGACY_PARAMS_KEYS = 'params.keys';
|
|
230
|
+
/** Read a legacy project's `params.keys` CSV from chain (literal or data-backed); null when unset.
|
|
231
|
+
* Best-effort — callers must treat a throw as "no legacy list". */
|
|
232
|
+
export async function readLegacyParamsKeys(client, contract) {
|
|
225
233
|
const [value, valueIsHash, isSet] = (await client.readContract({
|
|
226
234
|
address: contract,
|
|
227
235
|
abi: seriesCodeAbi,
|
|
228
236
|
functionName: 'contractParam',
|
|
229
|
-
args: [encodeTag(
|
|
237
|
+
args: [encodeTag(LEGACY_PARAMS_KEYS)],
|
|
230
238
|
}));
|
|
231
239
|
if (!isSet)
|
|
232
240
|
return null;
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
return
|
|
241
|
+
const csv = valueIsHash
|
|
242
|
+
? Buffer.from((await client.readContract({
|
|
243
|
+
address: contract,
|
|
244
|
+
abi: seriesCodeAbi,
|
|
245
|
+
functionName: 'contractParamData',
|
|
246
|
+
args: [encodeTag(LEGACY_PARAMS_KEYS)],
|
|
247
|
+
})).slice(2), 'hex').toString('utf8')
|
|
248
|
+
: decodeTag(value);
|
|
249
|
+
return csv.split(',').map((k) => k.trim()).filter((k) => k && k !== LEGACY_PARAMS_KEYS);
|
|
242
250
|
}
|
|
243
251
|
//# sourceMappingURL=onchain-uri.js.map
|
package/dist/onchain-uri.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onchain-uri.js","sourceRoot":"","sources":["../src/onchain-uri.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"onchain-uri.js","sourceRoot":"","sources":["../src/onchain-uri.ts"],"names":[],"mappings":"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"}
|
package/dist/ownerops.d.ts
CHANGED
|
@@ -6,8 +6,9 @@
|
|
|
6
6
|
* served state reflects the change. The agent picks the lane; the human only
|
|
7
7
|
* approves (wallet lane) or it's the env key (hot lane).
|
|
8
8
|
*/
|
|
9
|
-
import { planContentTxs, type SendStagingTx, type Address, type OnChainFieldInput } from '@artblocks/abx-sdk';
|
|
9
|
+
import { planContentTxs, type OnChainParamSchema, type SendStagingTx, type Address, type OnChainFieldInput } from '@artblocks/abx-sdk';
|
|
10
10
|
import { type Lane, type WalletSession } from './signer.js';
|
|
11
|
+
import { type ParsedSchema } from './schema.js';
|
|
11
12
|
type Flags = Record<string, string | undefined>;
|
|
12
13
|
export declare function assertSettableField(field: string): void;
|
|
13
14
|
/** Auto-detect the on-chain representation for an off-chain locator by its URI scheme. Returns null
|
|
@@ -151,6 +152,9 @@ export declare function stageImageFieldsBatch(imagePaths: string[], compress: Co
|
|
|
151
152
|
fields: OnChainFieldInput[];
|
|
152
153
|
store: Address;
|
|
153
154
|
}>;
|
|
155
|
+
export declare function assertGeneratorRepointable(contract: Address, field: string, flags: Flags,
|
|
156
|
+
/** Injected for tests; the real probe is one eth_call. */
|
|
157
|
+
probe?: (c: Address) => Promise<boolean>): Promise<void>;
|
|
154
158
|
export declare function cmdSetField(address: string | undefined, flags: Flags): Promise<void>;
|
|
155
159
|
/**
|
|
156
160
|
* `abx attach <address> <key> <uri>` — attach a named, typed file to a token (or the collection),
|
|
@@ -191,5 +195,13 @@ export declare function cmdMinterShow(address: string | undefined, flags: Flags)
|
|
|
191
195
|
/** `abx minter buy <token> [--to 0x…]` — buy one token through the shared minter (public; any
|
|
192
196
|
* funded signer). ETH sales attach the price; ERC-20 sales need a prior approval to the minter. */
|
|
193
197
|
export declare function cmdMinterBuy(address: string | undefined, flags: Flags): Promise<void>;
|
|
198
|
+
/** Values already stored under a key can be stranded by a schema change — the contract does NOT
|
|
199
|
+
* re-validate them. Compare old vs new and name what would break, so the guard can refuse. */
|
|
200
|
+
export declare function strandingRisks(before: OnChainParamSchema, after: ParsedSchema): string[];
|
|
201
|
+
/** `abx set-schema <address> --schema key:Type:Auth[:lock=<when>]` — attach or replace ONE key's
|
|
202
|
+
* on-chain schema, any time in a project's life. Owner-only. */
|
|
203
|
+
export declare function cmdSetSchema(address: string | undefined, flags: Flags): Promise<void>;
|
|
204
|
+
/** `abx retire-param <address> <key>` — permanently stop further writes to a PostParam. */
|
|
205
|
+
export declare function cmdRetireParam(address: string | undefined, rest: string[], flags: Flags): Promise<void>;
|
|
194
206
|
export {};
|
|
195
207
|
//# sourceMappingURL=ownerops.d.ts.map
|
package/dist/ownerops.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ownerops.d.ts","sourceRoot":"","sources":["../src/ownerops.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAeL,cAAc,
|
|
1
|
+
{"version":3,"file":"ownerops.d.ts","sourceRoot":"","sources":["../src/ownerops.ts"],"names":[],"mappings":"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"}
|