@artblocks/abx-cli 0.1.0-alpha.61 → 0.1.0-alpha.62

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/skill/SKILL.md CHANGED
@@ -9,7 +9,7 @@ description: >-
9
9
  change an ABX collection, or to determine whether ABX supports a mechanic.
10
10
  compatibility: Drives @artblocks/abx-cli on Node 22.13+. Co-versioned with the CLI; install or refresh with `abx skill install`.
11
11
  metadata:
12
- version: "0.1.0-alpha.61"
12
+ version: "0.1.0-alpha.62"
13
13
  ---
14
14
 
15
15
  # ABX
@@ -122,9 +122,11 @@ Important boundaries:
122
122
  renderers, `--image-base` (a deterministic per-id off-chain still, mutually exclusive with
123
123
  `--image-renderer`), and `--resume` (a per-id mint diff — pass the same content flags plus
124
124
  `--mint-amount` if the original deploy premint ids).
125
- - `--onchain-image` works for static 721s and editions in hot or wallet-signing lanes. It cannot be
126
- prepared as one cold `--unsigned` bundle because staged transactions depend on prior receipts;
127
- the `--sponsor` beta also excludes this staged-content lane.
125
+ - `--onchain-image` works for static 721s and editions in hot, wallet, or sponsored lanes. It cannot
126
+ be prepared as one cold `--unsigned` bundle because staged transactions depend on prior receipts.
127
+ - Deploy tested custom hooks/renderers from exact compiled initcode with `abx deploy-contract`.
128
+ ABX sends the bytes; it does not compile, link, audit, or infer constructor types. Test on the
129
+ paired testnet and source-verify before wiring a production address.
128
130
  - A code project may need no public host when its image/traits are computed by Solidity renderers.
129
131
  A JavaScript program still needs a deliberate marketplace-image plan even when its animation is
130
132
  chain-complete.
@@ -180,8 +182,9 @@ Classify an unusual request as exactly one of:
180
182
  4. **Unknown** — no route has been proven. Inspect code/help/contracts and report uncertainty; do not
181
183
  turn absence from a no-list into a promise.
182
184
 
183
- Custom Solidity is built and deployed outside `abx`; `abx scaffold-renderer` supplies a Foundry
184
- starting point. Read [capabilities.md](reference/capabilities.md) before designing a custom mechanic.
185
+ Custom Solidity is built and tested outside `abx`; `abx scaffold-renderer` supplies a Foundry
186
+ starting point, and `abx deploy-contract` can send its exact compiled initcode through any signing
187
+ lane. Read [capabilities.md](reference/capabilities.md) before designing a custom mechanic.
185
188
 
186
189
  ## Load only the reference needed
187
190
 
@@ -64,8 +64,9 @@ A custom mechanic normally lives beside a canonical token rather than replacing
64
64
  One external contract may implement several hook/minter roles. Test it against a real deployed clone,
65
65
  not a mock that approximates ABX callbacks.
66
66
 
67
- ABX scaffolds a Foundry renderer project but does not compile or deploy custom Solidity. The creator
68
- or their contract engineer owns code review, deployment, verification, upgrade policy, and audits.
67
+ ABX scaffolds a Foundry renderer project but does not compile, link, or audit custom Solidity.
68
+ `abx deploy-contract` can send exact compiled creation bytecode through any signing lane. The creator
69
+ or their contract engineer owns code review, verification, upgrade policy, and audits.
69
70
 
70
71
  ### Custom minter
71
72
 
@@ -167,8 +168,7 @@ The toolkit currently does not provide:
167
168
 
168
169
  - operation on a chain whose capability entry is `disabled`;
169
170
  - a secondary-market listing/order-book feature;
170
- - Solidity compilation/deployment through `abx`;
171
- - CLI replacement of a deployed code project's script;
171
+ - Solidity compilation through `abx`;
172
172
  - retrofitting a deploy-time contract type, burnability, token standard, or creator-token enrollment.
173
173
 
174
174
  Do not recommend another protocol automatically when one of these applies. State the boundary and
@@ -176,7 +176,7 @@ stop unless the creator asks for alternatives.
176
176
 
177
177
  Also distinguish unsupported tooling from possible external engineering. For example, ABX does not
178
178
  compile a custom hook, but a hook is an intentional supported seam once independently built and
179
- deployed. Conversely, “arbitrary Solidity exists” is not proof that every behavior is safe or
179
+ deployed (including from exact initcode via `abx deploy-contract`). Conversely, “arbitrary Solidity exists” is not proof that every behavior is safe or
180
180
  compatible: analyze callback timing, authority, reverts, reentrancy, shared edition state, gas, and
181
181
  upgradeability.
182
182
 
@@ -146,8 +146,9 @@ exclusive on both lanes.
146
146
  metadata renderer calls them on-chain. A renderer-only project needs no JavaScript program and no
147
147
  effects runner.
148
148
 
149
- Start with `abx scaffold-renderer`, then build, test, and deploy the Solidity project using Foundry.
150
- ABX does not compile or deploy custom Solidity. A real deploy refuses a renderer address with no
149
+ Start with `abx scaffold-renderer`, then build and test the Solidity project using Foundry. Deploy
150
+ with Foundry or send the exact compiled initcode through `abx deploy-contract`; ABX does not compile,
151
+ link, audit, or infer constructor types. A real collection deploy refuses a renderer address with no
151
152
  code.
152
153
 
153
154
  Enforce these invariants in renderer tests:
@@ -38,7 +38,7 @@ Treat custody, resolution, and mutability as separate decisions.
38
38
 
39
39
  Use `--onchain-image [--compress fastlz]` for static media bytes behind the on-chain metadata
40
40
  renderer. It implies on-chain resolution and requires no host or storage provider. It works for 721
41
- static projects and their editions in hot or wallet lanes. It stages bytes before deployment, so the
41
+ static projects and their editions in hot, wallet, or sponsored lanes. It stages bytes before deployment, so the
42
42
  plan has at least two transactions (more when content needs multiple chunks). Cold `--unsigned`
43
43
  staging is refused.
44
44
 
@@ -149,8 +149,8 @@ a substitute for confirming the actual sale configuration.
149
149
  For any edition, say “N ids × M copies per id” and the maximum aggregate supply before spending.
150
150
 
151
151
  Static edition custody is symmetric with the 721 lanes: on-chain bytes, on-chain JSON with external
152
- media, inline SVG, and hosted resolution are available. `--onchain-image` uses hot or wallet signing,
153
- not cold unsigned staging.
152
+ media, inline SVG, and hosted resolution are available. `--onchain-image` uses hot, wallet, or
153
+ sponsored signing, not cold unsigned staging.
154
154
 
155
155
  Do not import code-edition limits into static editions or vice versa. Use the capability output.
156
156
 
@@ -100,11 +100,12 @@ production-network warning before confirmation. Before using it:
100
100
  and beta status;
101
101
  5. after approval, repeat with `--sponsor`.
102
102
 
103
- The initial lane accepts zero-value factory/contract calls up to the live network and provider
104
- policy. ABX does not impose an additional per-transaction gas ceiling. It does not support direct
105
- CREATE or staged `--onchain-image` writes. Never add retries around a sponsored write. An `unknown`
106
- outcome means the provider may have submitted it: preserve the operation ID and reconcile status
107
- before any new send.
103
+ The lane accepts zero-value factory calls, direct contract creation, and receipt-dependent staged
104
+ content groups up to the live network and provider policy. ABX does not impose an additional
105
+ per-transaction gas ceiling. Use `abx deploy-contract` for exact already-compiled creation bytecode;
106
+ ABX does not compile or audit it. Never add retries around a sponsored write. An `unknown` outcome
107
+ means the provider may have submitted it: preserve the operation ID and reconcile status before any
108
+ new send.
108
109
 
109
110
  Sponsorship is optional service policy, not protocol support. `--send`, `--sign`, and `--unsigned`
110
111
  remain first-class bring-your-own alternatives. Honor an explicit choice of any of them. If the
@@ -124,8 +124,8 @@ human the locally generated signing page; never request or handle their key. On
124
124
  chain, sender, target, calldata, value, and ordering before handing transactions over.
125
125
 
126
126
  `--onchain-image` staging cannot use the cold lane because each chunk transaction depends on the
127
- receipt of the preceding transaction. Use hot or wallet signing. Do not split staging into a homemade
128
- offline sequence.
127
+ receipt of the preceding transaction. Use hot, wallet, or sponsored signing. Do not split staging
128
+ into a homemade offline sequence.
129
129
 
130
130
  `ABX_DEPLOYER_PK` may be written with or without a `0x` prefix — the CLI and SDK normalize it. Foundry's
131
131
  `vm.envUint` does not: a custom forge script that reads the same `.env` needs the `0x` form.