@artblocks/abx-cli 0.8.3 → 0.8.4
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 +11 -0
- package/dist/commands/deploy.d.ts.map +1 -1
- package/dist/commands/deploy.js +11 -10
- package/dist/commands/deploy.js.map +1 -1
- package/dist/commands/service.d.ts.map +1 -1
- package/dist/commands/service.js +7 -4
- package/dist/commands/service.js.map +1 -1
- package/dist/image-template.d.ts +9 -0
- package/dist/image-template.d.ts.map +1 -0
- package/dist/image-template.js +25 -0
- package/dist/image-template.js.map +1 -0
- package/dist/preview.d.ts.map +1 -1
- package/dist/preview.js +34 -9
- package/dist/preview.js.map +1 -1
- package/dist/provision.d.ts +2 -0
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +12 -7
- package/dist/provision.js.map +1 -1
- package/dist/signer.d.ts +9 -0
- package/dist/signer.d.ts.map +1 -1
- package/dist/signer.js +55 -11
- package/dist/signer.js.map +1 -1
- package/package.json +6 -6
- package/skill/SKILL.md +2 -1
- package/skill/reference/hosting.md +14 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,16 @@
|
|
|
1
1
|
# @artblocks/abx-cli
|
|
2
2
|
|
|
3
|
+
## 0.8.4
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- d74b1eb: Keep transport configuration out of public project state; bound project-content fetching to public network destinations and limited decoded bodies. Authenticate local signing sessions, verify completed transaction intent, contain preview file reads, preserve queued indexer deltas, and require authentication for public effects listeners. Scope deterministic image writes to their collection and document reference hosting limits and migrations.
|
|
8
|
+
- Updated dependencies [d74b1eb]
|
|
9
|
+
- @artblocks/abx-sdk@0.10.1
|
|
10
|
+
- @artblocks/abx-indexer@0.2.1
|
|
11
|
+
- @artblocks/abx-token-api@0.3.1
|
|
12
|
+
- @artblocks/abx-storage@0.1.13
|
|
13
|
+
|
|
3
14
|
## 0.8.3
|
|
4
15
|
|
|
5
16
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/deploy.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { collectionImageTemplate, resolveImageNamespace } from '../image-template.js';
|
|
1
2
|
/**
|
|
2
3
|
* Deploy commands — the biggest domain, kept as ONE module (they share the salt/dry-run/staging
|
|
3
4
|
* machinery too tightly to split further without duplicating it):
|
|
@@ -3879,10 +3880,10 @@ export async function cmdDeployCodeBody(flags, emit) {
|
|
|
3879
3880
|
else if (/(^|\/\/)s3[.-][^/]*amazonaws\.com/i.test(base) || /\.s3[.-][^/]*amazonaws\.com/i.test(base)) {
|
|
3880
3881
|
warn(`--image-base ${base} looks like the S3 API host — marketplaces can read it ONLY if the bucket has public-read (or you front it with CloudFront/a domain). If it's not public, use that URL in ${bold('ABX_S3_ENDPOINT')} and pass a public URL here instead.`);
|
|
3881
3882
|
}
|
|
3882
|
-
const imageTemplate =
|
|
3883
|
+
const imageTemplate = collectionImageTemplate(base, resolveChain(CHAIN).id, process.env.ABX_S3_PUBLIC_BASE);
|
|
3883
3884
|
contractFields.push({ field: encodeTag(F.image), representation: encodeTag(R.urlTemplate), value: toHex(imageTemplate) });
|
|
3884
3885
|
identityFields.push('image');
|
|
3885
|
-
info(`collection image → on-chain url-template ${bold(imageTemplate)} ${dim('(off-chain thumbnail at a deterministic per-token URL; the effect runner overwrites each key)')}`);
|
|
3886
|
+
info(`collection image → on-chain url-template ${bold(imageTemplate)} (collection address resolved before signing) ${dim('(off-chain thumbnail at a deterministic per-token URL; the effect runner overwrites each key)')}`);
|
|
3886
3887
|
// Name the EXACT upload vars the runner needs (an agent guessed R2_* names that abx never reads,
|
|
3887
3888
|
// breaking the upload). --image-base is the public READ base; these are the write side.
|
|
3888
3889
|
info(` ${dim('the runner uploads stills here via')} ${bold('ABX_S3_ENDPOINT · ABX_S3_BUCKET · ABX_S3_ACCESS_KEY_ID · ABX_S3_SECRET_ACCESS_KEY')} ${dim('(set ABX_S3_PUBLIC_BASE to this same --image-base; `abx storage show` checks them; details → reference/hosting.md)')}`);
|
|
@@ -4436,7 +4437,7 @@ export async function cmdDeployCodeBody(flags, emit) {
|
|
|
4436
4437
|
// baking a misleading localhost (the renderer is authoritative while set) — the same rule as
|
|
4437
4438
|
// the 1/1's on-chain lane. The renderers themselves are set as setup-multicall legs, so the
|
|
4438
4439
|
// on-chain lane flips on atomically WITH the content/params it resolves from.
|
|
4439
|
-
const initParamsFor = (owner) => ({
|
|
4440
|
+
const initParamsFor = (owner, clone) => ({
|
|
4440
4441
|
owner,
|
|
4441
4442
|
name,
|
|
4442
4443
|
symbol,
|
|
@@ -4463,7 +4464,7 @@ export async function cmdDeployCodeBody(flags, emit) {
|
|
|
4463
4464
|
mintTo: foldIntoInit && mintCount > 0 ? owner : zeroAddress,
|
|
4464
4465
|
mintCount: foldIntoInit ? BigInt(mintCount) : 0n,
|
|
4465
4466
|
tokenFields: [],
|
|
4466
|
-
contractFields,
|
|
4467
|
+
contractFields: resolveImageNamespace(contractFields, clone),
|
|
4467
4468
|
});
|
|
4468
4469
|
// `setupLegGroups` (the shared, resume-compatible builder) and the fresh-deploy batch shape
|
|
4469
4470
|
// (`freshDeployBatches`) are hoisted above — see the comment there for why. Build the REAL
|
|
@@ -4482,7 +4483,7 @@ export async function cmdDeployCodeBody(flags, emit) {
|
|
|
4482
4483
|
mints: Array.from({ length: setupMintCount }, () => mintSetupLeg(g.mints.data)),
|
|
4483
4484
|
});
|
|
4484
4485
|
const setupTxs = codeSetupTxsFromBatches(batches, { contract: clone, chainId: cid, deps: deps.map((d) => d.display) });
|
|
4485
|
-
const txs = [prepareDeploySeriesCode({ factory, params: initParamsFor(owner), salt, chainId: cid, clone }), ...setupTxs];
|
|
4486
|
+
const txs = [prepareDeploySeriesCode({ factory, params: initParamsFor(owner, clone), salt, chainId: cid, clone }), ...setupTxs];
|
|
4486
4487
|
return { clone, txs };
|
|
4487
4488
|
};
|
|
4488
4489
|
// ── --resume: finish an EXISTING contract, deploy nothing ──────────────────────────────────
|
|
@@ -5323,9 +5324,9 @@ export async function cmdDeployEditionCodeBody(flags, emit) {
|
|
|
5323
5324
|
else if (/(^|\/\/)s3[.-][^/]*amazonaws\.com/i.test(base) || /\.s3[.-][^/]*amazonaws\.com/i.test(base)) {
|
|
5324
5325
|
warn(`--image-base ${base} looks like the S3 API host — marketplaces can read it ONLY if the bucket has public-read (or you front it with CloudFront/a domain). If it's not public, use that URL in ${bold('ABX_S3_ENDPOINT')} and pass a public URL here instead.`);
|
|
5325
5326
|
}
|
|
5326
|
-
const imageTemplate =
|
|
5327
|
+
const imageTemplate = collectionImageTemplate(base, resolveChain(CHAIN).id, process.env.ABX_S3_PUBLIC_BASE);
|
|
5327
5328
|
contractFields.push({ field: encodeTag(F.image), representation: encodeTag(R.urlTemplate), value: toHex(imageTemplate) });
|
|
5328
|
-
info(`collection image → on-chain url-template ${bold(imageTemplate)} ${dim('(off-chain thumbnail at a deterministic per-id URL; the effect runner overwrites each key once a copy is minted)')}`);
|
|
5329
|
+
info(`collection image → on-chain url-template ${bold(imageTemplate)} (collection address resolved before signing) ${dim('(off-chain thumbnail at a deterministic per-id URL; the effect runner overwrites each key once a copy is minted)')}`);
|
|
5329
5330
|
info(` ${dim('the runner uploads stills here via')} ${bold('ABX_S3_ENDPOINT · ABX_S3_BUCKET · ABX_S3_ACCESS_KEY_ID · ABX_S3_SECRET_ACCESS_KEY')} ${dim('(set ABX_S3_PUBLIC_BASE to this same --image-base; `abx storage show` checks them; details → reference/hosting.md)')}`);
|
|
5330
5331
|
const s3Base = process.env.ABX_S3_PUBLIC_BASE?.replace(/\/+$/, '');
|
|
5331
5332
|
if (s3Base && !imageTemplate.startsWith(`${s3Base}/`)) {
|
|
@@ -5342,7 +5343,7 @@ export async function cmdDeployEditionCodeBody(flags, emit) {
|
|
|
5342
5343
|
// there for a renderer-only, no-program drop, which this function refuses anyway — every
|
|
5343
5344
|
// edition-code deploy has a program). A setup large enough to miss the `eth_estimateGas` ceiling
|
|
5344
5345
|
// (a big script) splits into MORE than one setup transaction — see `planCodeSetupBatches`.
|
|
5345
|
-
const initParamsFor = (owner) => ({
|
|
5346
|
+
const initParamsFor = (owner, clone) => ({
|
|
5346
5347
|
owner,
|
|
5347
5348
|
name,
|
|
5348
5349
|
symbol,
|
|
@@ -5365,7 +5366,7 @@ export async function cmdDeployEditionCodeBody(flags, emit) {
|
|
|
5365
5366
|
mintCount: 0n,
|
|
5366
5367
|
mintAmount: 0n,
|
|
5367
5368
|
tokenFields: [],
|
|
5368
|
-
contractFields,
|
|
5369
|
+
contractFields: resolveImageNamespace(contractFields, clone),
|
|
5369
5370
|
});
|
|
5370
5371
|
// Gas-bounded setup-transaction legs — script chunks, schemas, deps, on-chain-URI wiring are all
|
|
5371
5372
|
// OWNER-INDEPENDENT (only a mint call's calldata embeds the owner+id+amount; its gas is a flat
|
|
@@ -5392,7 +5393,7 @@ export async function cmdDeployEditionCodeBody(flags, emit) {
|
|
|
5392
5393
|
assertSaltGuardForDeployer(explicitSalt, owner);
|
|
5393
5394
|
const clone = await predictClone(publicClient, { factory, salt });
|
|
5394
5395
|
const setupTxs = codeSetupTxsFromBatches(planCodeSetupBatches({ chunks: chunkLegs, config: configLegs, mints: mintLegsFor(owner) }), { contract: clone, chainId, deps: deps.map((d) => d.display) });
|
|
5395
|
-
const txs = [prepareDeployEditionCode({ factory, params: initParamsFor(owner), salt, chainId, clone }), ...setupTxs];
|
|
5396
|
+
const txs = [prepareDeployEditionCode({ factory, params: initParamsFor(owner, clone), salt, chainId, clone }), ...setupTxs];
|
|
5396
5397
|
return { clone, txs };
|
|
5397
5398
|
};
|
|
5398
5399
|
// deps ride the same setup batch as chunks/schemas/mints when everything fits one transaction, so
|