@artblocks/abx-cli 0.1.0-alpha.41 → 0.1.0-alpha.42
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/CHANGELOG.md +77 -0
- package/dist/commands/deploy.d.ts +51 -1
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +298 -128
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/project.d.ts.map +1 -1
- package/dist/commands/project.js +28 -4
- package/dist/commands/project.js.map +1 -1
- package/dist/deploy-plan.d.ts +80 -9
- package/dist/deploy-plan.d.ts.map +1 -1
- package/dist/deploy-plan.js +7 -18
- package/dist/deploy-plan.js.map +1 -1
- package/dist/main.js +17 -7
- package/dist/main.js.map +1 -1
- package/dist/ownerops.d.ts +70 -1
- package/dist/ownerops.d.ts.map +1 -1
- package/dist/ownerops.js +166 -7
- package/dist/ownerops.js.map +1 -1
- package/dist/riskgate.d.ts +36 -0
- package/dist/riskgate.d.ts.map +1 -1
- package/dist/riskgate.js +91 -17
- package/dist/riskgate.js.map +1 -1
- package/package.json +6 -6
- package/skill/SKILL.md +1 -1
- package/skill/reference/code.md +14 -0
- package/skill/reference/operate.md +12 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,82 @@
|
|
|
1
1
|
# @artblocks/abx-cli
|
|
2
2
|
|
|
3
|
+
## 0.1.0-alpha.42
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 0fed512: `deploy-code`'s post-deploy setup (script chunks, PostParam schemas, dependency declarations,
|
|
8
|
+
on-chain-URI legs, reserve mints) no longer rides one atomic multicall no matter how large the
|
|
9
|
+
on-chain script is. A 60KB script (3 chunks) produced a setup transaction wanting 17,307,586 gas
|
|
10
|
+
against the ~16,777,216 (2^24) `eth_estimateGas` ceiling — not the block gas limit — and failed with
|
|
11
|
+
a useless "gas limit too high", leaving a verifiably half-configured contract on chain.
|
|
12
|
+
|
|
13
|
+
The setup now splits into gas-bounded transactions when it doesn't fit one: every script-chunk batch,
|
|
14
|
+
then every config (schema/dependency/on-chain-URI) batch, then every mint batch, in that order and
|
|
15
|
+
never mixed. Script-chunk writes and config setters are idempotent, so an interruption at any split
|
|
16
|
+
point is finished by the existing `deploy-code --resume` (which now also gas-batches whatever it
|
|
17
|
+
finds missing); mints ride strictly last because a mint is the one non-idempotent leg. A setup that
|
|
18
|
+
already fit one transaction is unaffected — same single combined multicall as before. There is no new
|
|
19
|
+
size-based refusal; the dry run's `transactions`/`approvals` reports the real transaction count and
|
|
20
|
+
cost for the whole plan.
|
|
21
|
+
|
|
22
|
+
`@artblocks/abx-sdk` exports the reusable pieces: `packCallsByGas` (a generic gas-bounded bin packer,
|
|
23
|
+
the call-level sibling of `planContentTxs`'s own batching), `estimateChunkGasForBytes`, and
|
|
24
|
+
`SETUP_LEG_GAS` (flat gas estimates for a schema/dependency/on-chain-URI/mint call).
|
|
25
|
+
|
|
26
|
+
- 0fed512: Fixed three omissions in the structured deploy `--json` `plan` object (a cold-agent regression sweep
|
|
27
|
+
of issue #123's plan surfaced all three): `plan.custody` now carries the on-chain renderer address
|
|
28
|
+
(the same one the "On-chain renderer" step prints) and, on the single-file image lanes
|
|
29
|
+
(`deploy`/`deploy` `--copies`), file metadata for a staged `--onchain-image` (raw bytes, staged/
|
|
30
|
+
compressed bytes, sniffed MIME type, and a keccak256 of the local file) — both were visible in the
|
|
31
|
+
human dry-run/confirm prose but entirely absent from the JSON payload. `plan.transactions.legs` now
|
|
32
|
+
always ends with `'deploy'` when non-null, naming the deploy transaction itself instead of silently
|
|
33
|
+
omitting it from its own leg list (the `--resume` lane, which never deploys, is unaffected). The
|
|
34
|
+
`estimate` field's `null` on lanes that compute no cost figure was investigated and confirmed
|
|
35
|
+
genuinely absent — not fabricated, no new RPC calls added.
|
|
36
|
+
|
|
37
|
+
`DEPLOY_PLAN_SCHEMA_VERSION` is bumped to `2` for this shape change. The human dry-run/confirm output
|
|
38
|
+
is unchanged, byte for byte; this is additive to the JSON only.
|
|
39
|
+
|
|
40
|
+
### Patch Changes
|
|
41
|
+
|
|
42
|
+
- 0fed512: `--dry-run` used to report `"status": "would-succeed"` from an unconstrained `eth_call` that never
|
|
43
|
+
checked whether the signer could actually PAY for the send — a funded on-chain sweep hit a
|
|
44
|
+
`replace-script --dry-run` that said "would succeed" for a send whose real gas need was 49% higher
|
|
45
|
+
and then failed. The simulation now reuses `pinGas` (the exact gas selection the real send makes),
|
|
46
|
+
prices it against the signer's current balance, and reports one of three honest states — `would-
|
|
47
|
+
succeed` (state check passed AND affordable), `would-revert` (a proven failure, including
|
|
48
|
+
"insufficient funds" with the actual numbers), or `unknown` (neither could be established — never
|
|
49
|
+
collapsed into either of the others). `simulation.estimatedGas`/`estimatedCostWei`/`balanceWei` carry
|
|
50
|
+
the real numbers; `transaction.gasFloor` remains a proven MINIMUM used to detect an implausible
|
|
51
|
+
estimate, never a prediction of total cost.
|
|
52
|
+
|
|
53
|
+
`abx replace-script`'s own `gasFloor` (restated for its batched multicall) was 49% below what a real
|
|
54
|
+
send needed — not wrong about what it claimed, but incomplete: it counted only SSTORE2's 200
|
|
55
|
+
gas/byte code-deposit cost, omitting the CREATE opcode's fixed 32,000 gas per chunk write and the
|
|
56
|
+
transaction's own intrinsic calldata cost (both unconditional, provable physics, unlike a simulated
|
|
57
|
+
estimate). It now includes both, computed from the real encoded calldata rather than approximated —
|
|
58
|
+
still a lower bound, never an invented number.
|
|
59
|
+
|
|
60
|
+
- 0fed512: `abx lock-field` now checks which scope (token or collection) actually serves a field's value before
|
|
61
|
+
locking — a token-scope value wins over collection when both are set, so locking the scope that
|
|
62
|
+
ISN'T serving the value used to report "would succeed" (and would succeed) while freezing an empty
|
|
63
|
+
or overridden slot, not what a viewer sees. It's refused by default, naming the correct command
|
|
64
|
+
(`--collection` or `--token <id>`); `--force-field` proceeds anyway with a loud warning instead of a
|
|
65
|
+
silent no-op, for the legitimate case of deliberately locking an empty slot forever. `--dry-run` and
|
|
66
|
+
a real send see this identically.
|
|
67
|
+
|
|
68
|
+
`abx verify` (no `--remote`) already failed fast when a project wasn't registered on this node, but
|
|
69
|
+
its message didn't say a resolver-served project could skip local registration entirely — an agent
|
|
70
|
+
following it literally (`abx add <addr>`) could walk into a full historical log scan and repeated
|
|
71
|
+
rate limits on a project actually meant to be checked with `abx verify <addr> --remote <name>`. The
|
|
72
|
+
message now names both options.
|
|
73
|
+
|
|
74
|
+
- Updated dependencies [0fed512]
|
|
75
|
+
- @artblocks/abx-sdk@0.1.0-alpha.32
|
|
76
|
+
- @artblocks/abx-indexer@0.1.0-alpha.33
|
|
77
|
+
- @artblocks/abx-storage@0.1.0-alpha.32
|
|
78
|
+
- @artblocks/abx-token-api@0.1.0-alpha.35
|
|
79
|
+
|
|
3
80
|
## 0.1.0-alpha.41
|
|
4
81
|
|
|
5
82
|
### Minor Changes
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SelfHostIndexer } from '@artblocks/abx-indexer';
|
|
2
|
-
import { type Address, type OnChainFieldInput, type OpenSeaAttribute, type ProjectState, type PublicClient, type SeriesTokenFieldInput } from '@artblocks/abx-sdk';
|
|
2
|
+
import { type Address, type OnChainFieldInput, type OpenSeaAttribute, type ProjectState, type PublicClient, type SeriesTokenFieldInput, type SetupLegsCore, type PreparedTx } from '@artblocks/abx-sdk';
|
|
3
3
|
import { type Hex } from 'viem';
|
|
4
4
|
import { type StorageOverrides } from '../config.js';
|
|
5
5
|
import { type Flags } from '../flags.js';
|
|
@@ -190,6 +190,56 @@ export declare const DEPLOY_FLAGS: Set<string>;
|
|
|
190
190
|
export declare const DEPLOY_SERIES_FLAGS: Set<string>;
|
|
191
191
|
export declare const DEPLOY_EDITION_FLAGS: Set<string>;
|
|
192
192
|
export declare const DEPLOY_SERIES_EDITION_FLAGS: Set<string>;
|
|
193
|
+
/** One leg of a code-project setup multicall — enough to (a) estimate its own gas conservatively,
|
|
194
|
+
* (b) label an indivisible-leg refusal, and (c) let a batch rebuild `prepareCodeSetup`'s own
|
|
195
|
+
* labeling args after a leg group gets split. `calls` carries more than one entry only for a leg
|
|
196
|
+
* that must always land in the SAME transaction as its siblings (the dependency group, the
|
|
197
|
+
* on-chain-URI group) — see resume.ts's `planCoreLegs` for why those two ride as one atomic unit
|
|
198
|
+
* apiece; every other leg (a script chunk, a param schema, a reserve mint) is exactly one call. */
|
|
199
|
+
export interface SetupLeg {
|
|
200
|
+
calls: Hex[];
|
|
201
|
+
gas: number;
|
|
202
|
+
label: string;
|
|
203
|
+
kind: 'chunk' | 'schema' | 'deps' | 'uri' | 'mint';
|
|
204
|
+
chunkBytes?: number[];
|
|
205
|
+
schemaKey?: string;
|
|
206
|
+
}
|
|
207
|
+
export declare const chunkSetupLeg: (index: number, hex: Hex, data: Hex) => SetupLeg;
|
|
208
|
+
export declare const schemaSetupLeg: (key: string, data: Hex) => SetupLeg;
|
|
209
|
+
export declare const depsSetupLeg: (calls: Hex[]) => SetupLeg;
|
|
210
|
+
export declare const uriSetupLeg: (calls: Hex[]) => SetupLeg;
|
|
211
|
+
export declare const mintSetupLeg: (data: Hex) => SetupLeg;
|
|
212
|
+
/** `SetupLegsCore` (resume.ts's id-agnostic four leg groups, shared by both 721 and EditionCode) →
|
|
213
|
+
* the gas-batching shape above — schemas individually (resume diffs them per-key too), deps and
|
|
214
|
+
* on-chain-URI as one atomic leg apiece (resume diffs them as one group too — see resume.ts's
|
|
215
|
+
* `planCoreLegs`). Mints are NOT included here: their shape differs by lane (721 whole-total vs
|
|
216
|
+
* EditionCode per-id vs a `--resume` shortfall) — every caller builds its own mint legs. */
|
|
217
|
+
export declare function coreSetupLegs(legs: SetupLegsCore): {
|
|
218
|
+
chunks: SetupLeg[];
|
|
219
|
+
config: SetupLeg[];
|
|
220
|
+
};
|
|
221
|
+
/**
|
|
222
|
+
* Split three ordered leg groups into gas-bounded batches — chunks, then config, then mints, NEVER
|
|
223
|
+
* mixed (see the module note above). Refuses BEFORE building anything if a single leg's own gas
|
|
224
|
+
* estimate alone exceeds the binding `eth_estimateGas` ceiling: batching only helps when the problem
|
|
225
|
+
* is too MANY legs, not one leg too big, and that case must never reach a raw "gas limit too high".
|
|
226
|
+
* Deterministic in the legs' `.gas` values alone (never their `.calls`), so calling this once early
|
|
227
|
+
* (to size `approvals`, before an owner is even known) and again later with the real calldata
|
|
228
|
+
* produces the IDENTICAL batch shape both times — no drift between what's previewed and what's sent.
|
|
229
|
+
*/
|
|
230
|
+
export declare function planCodeSetupBatches(groups: {
|
|
231
|
+
chunks: SetupLeg[];
|
|
232
|
+
config: SetupLeg[];
|
|
233
|
+
mints: SetupLeg[];
|
|
234
|
+
}): SetupLeg[][];
|
|
235
|
+
/** Turn ordered setup-leg batches into the actual `prepareCodeSetup` transactions — rebuilding each
|
|
236
|
+
* batch's chunk/schema/dependency/on-chain-URI labeling from its OWN legs, since a batch born from
|
|
237
|
+
* the split may carry only part of a group (see {@link planCodeSetupBatches}). */
|
|
238
|
+
export declare function codeSetupTxsFromBatches(batches: SetupLeg[][], args: {
|
|
239
|
+
contract: Address;
|
|
240
|
+
chainId: number;
|
|
241
|
+
deps: string[];
|
|
242
|
+
}): PreparedTx[];
|
|
193
243
|
export declare function cmdDeployCode(flags: Flags): Promise<void>;
|
|
194
244
|
export declare function cmdDeployCodeBody(flags: Flags, emit: (p: Record<string, unknown>) => void): Promise<void>;
|
|
195
245
|
export declare const DEPLOY_CODE_EDITION_FLAGS: Set<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACL,KAAK,OAAO,EAMZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,YAAY,EAMjB,KAAK,qBAAqB,
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|