bulletin-deploy 0.7.4 → 0.7.5
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/bug-report.js +4 -4
- package/dist/{chunk-UJP2PZGU.js → chunk-GQFH2NRB.js} +1 -1
- package/dist/{chunk-SVKCVNXD.js → chunk-KQ75CSJJ.js} +21 -55
- package/dist/{chunk-YREZFNCC.js → chunk-SAMH7JFG.js} +49 -22
- package/dist/{chunk-YYULF2JX.js → chunk-UXKC7JAM.js} +2 -2
- package/dist/{chunk-DHQ3JGF4.js → chunk-WOJRQCQV.js} +1 -1
- package/dist/{chunk-CQ753LDA.js → chunk-XOKNNK6E.js} +1 -1
- package/dist/deploy.js +6 -6
- package/dist/dotns.d.ts +2 -1
- package/dist/dotns.js +5 -3
- package/dist/index.js +6 -6
- package/dist/memory-report.js +2 -2
- package/dist/run-state.js +1 -1
- package/dist/telemetry.js +2 -2
- package/dist/version-check.js +3 -3
- package/package.json +1 -1
package/dist/bug-report.js
CHANGED
|
@@ -9,10 +9,10 @@ import {
|
|
|
9
9
|
offerBugReport,
|
|
10
10
|
scrubSecrets,
|
|
11
11
|
setDeployContext
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-UXKC7JAM.js";
|
|
13
|
+
import "./chunk-XOKNNK6E.js";
|
|
14
|
+
import "./chunk-WOJRQCQV.js";
|
|
15
|
+
import "./chunk-GQFH2NRB.js";
|
|
16
16
|
import "./chunk-QGM4M3NI.js";
|
|
17
17
|
export {
|
|
18
18
|
buildCliFlagsSummary,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
setDeployContext
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-UXKC7JAM.js";
|
|
4
4
|
import {
|
|
5
5
|
DotNS,
|
|
6
6
|
TX_TIMEOUT_MS,
|
|
@@ -8,7 +8,7 @@ import {
|
|
|
8
8
|
parseDomainName,
|
|
9
9
|
popStatusName,
|
|
10
10
|
verifyNonceAdvanced
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-SAMH7JFG.js";
|
|
12
12
|
import {
|
|
13
13
|
MirrorSkipped,
|
|
14
14
|
mirrorToGitHubPages,
|
|
@@ -27,7 +27,7 @@ import {
|
|
|
27
27
|
truncateAddress,
|
|
28
28
|
withDeploySpan,
|
|
29
29
|
withSpan
|
|
30
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-WOJRQCQV.js";
|
|
31
31
|
import {
|
|
32
32
|
merkleizeJS
|
|
33
33
|
} from "./chunk-B7GUYYAN.js";
|
|
@@ -214,14 +214,12 @@ async function getDirectProvider(mnemonic, derivationPath = "") {
|
|
|
214
214
|
setDeployAttribute("deploy.signer.address", truncateAddress(ss58));
|
|
215
215
|
return { client, unsafeApi, signer, ss58 };
|
|
216
216
|
}
|
|
217
|
-
var MAX_BEST_CHAIN_DROPS = 5;
|
|
218
217
|
function watchTransaction(tx, signer, txOpts, onSuccess, { label = "transaction", rpc, senderSS58, expectedNonce, timeoutMs, fetchNonce: fetchNonceOverride } = {}) {
|
|
219
218
|
const timeout = timeoutMs ?? TX_TIMEOUT_MS;
|
|
220
219
|
const _fetchNonce = fetchNonceOverride ?? fetchNonce;
|
|
221
220
|
return new Promise((resolve2, reject) => {
|
|
222
221
|
let settled = false;
|
|
223
222
|
let sub;
|
|
224
|
-
let dropCount = 0;
|
|
225
223
|
const settle = (fn) => (...args) => {
|
|
226
224
|
if (settled) return;
|
|
227
225
|
settled = true;
|
|
@@ -232,7 +230,7 @@ function watchTransaction(tx, signer, txOpts, onSuccess, { label = "transaction"
|
|
|
232
230
|
}
|
|
233
231
|
fn(...args);
|
|
234
232
|
};
|
|
235
|
-
const tryNonceFallback = async (
|
|
233
|
+
const tryNonceFallback = async () => {
|
|
236
234
|
if (!rpc || !senderSS58 || expectedNonce == null) return false;
|
|
237
235
|
try {
|
|
238
236
|
const endpoints = Array.isArray(rpc) ? rpc : [rpc];
|
|
@@ -240,7 +238,7 @@ function watchTransaction(tx, signer, txOpts, onSuccess, { label = "transaction"
|
|
|
240
238
|
if (settled) return true;
|
|
241
239
|
if (verified.advanced) {
|
|
242
240
|
console.log(` ${label}: nonce advanced past ${expectedNonce} (witnessed by ${verified.witnessRpc}), tx was included`);
|
|
243
|
-
settle(resolve2)({ value: onSuccess(), viaFallback: true
|
|
241
|
+
settle(resolve2)({ value: onSuccess(), viaFallback: true });
|
|
244
242
|
return true;
|
|
245
243
|
}
|
|
246
244
|
} catch (e) {
|
|
@@ -251,28 +249,21 @@ function watchTransaction(tx, signer, txOpts, onSuccess, { label = "transaction"
|
|
|
251
249
|
};
|
|
252
250
|
const timer = setTimeout(async () => {
|
|
253
251
|
if (settled) return;
|
|
254
|
-
if (await tryNonceFallback(
|
|
252
|
+
if (await tryNonceFallback()) return;
|
|
255
253
|
settle(reject)(new Error(`${label} timed out after ${timeout / 1e3}s waiting for block confirmation`));
|
|
256
254
|
}, timeout);
|
|
257
255
|
sub = tx.signSubmitAndWatch(signer, txOpts).subscribe({
|
|
258
256
|
next: async (event) => {
|
|
259
|
-
if (event.type
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
console.log(` ${label}: tx dropped ${dropCount} times, checking nonce...`);
|
|
270
|
-
if (await tryNonceFallback(true)) return;
|
|
271
|
-
settle(reject)(new Error(`${label} tx dropped from best chain ${dropCount} times`));
|
|
272
|
-
} else {
|
|
273
|
-
console.log(` ${label}: tx dropped from best chain (${dropCount}/${MAX_BEST_CHAIN_DROPS}), waiting...`);
|
|
274
|
-
}
|
|
275
|
-
}
|
|
257
|
+
if (event.type !== "txBestBlocksState") return;
|
|
258
|
+
if (event.found) {
|
|
259
|
+
if (event.ok) settle(resolve2)({ value: onSuccess(event), viaFallback: false });
|
|
260
|
+
else settle(reject)(new Error(`${label} dispatch error`));
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
if (event.isValid === false) {
|
|
264
|
+
console.log(` ${label}: tx rejected by pool (isValid:false), checking nonce fallback...`);
|
|
265
|
+
if (await tryNonceFallback()) return;
|
|
266
|
+
settle(reject)(new Error(`${label} tx rejected by pool (isValid:false)`));
|
|
276
267
|
}
|
|
277
268
|
},
|
|
278
269
|
error: (e) => {
|
|
@@ -287,11 +278,11 @@ async function storeChunk(unsafeApi, signer, chunkBytes, nonce, ss58, opts = {})
|
|
|
287
278
|
const cid = createCID(chunkBytes, CID_CONFIG.codec, hashCode);
|
|
288
279
|
const tx = unsafeApi.tx.TransactionStorage.store_with_cid_config({ cid: { codec: BigInt(CID_CONFIG.codec), hashing: toHashingEnum(hashCode) }, data: Binary.fromBytes(chunkBytes) });
|
|
289
280
|
const txOpts = { mortality: { mortal: true, period: CHUNK_MORTALITY_PERIOD }, nonce };
|
|
290
|
-
const { value, viaFallback
|
|
281
|
+
const { value, viaFallback } = await watchTransaction(tx, signer, txOpts, () => {
|
|
291
282
|
console.log(` CID: ${cid.toString()}`);
|
|
292
283
|
return { cid, len: chunkBytes.length };
|
|
293
284
|
}, { label: `chunk(nonce:${nonce})`, rpc: BULLETIN_ENDPOINTS, senderSS58: ss58, expectedNonce: nonce, timeoutMs: CHUNK_TIMEOUT_MS, fetchNonce: opts.fetchNonce });
|
|
294
|
-
return { ...value, viaFallback
|
|
285
|
+
return { ...value, viaFallback };
|
|
295
286
|
}
|
|
296
287
|
async function storeFile(contentBytes, { client: existingClient, unsafeApi: existingApi, signer: existingSigner } = {}) {
|
|
297
288
|
console.log(`
|
|
@@ -427,8 +418,7 @@ async function storeChunkedContent(chunks, { client: existingClient, unsafeApi:
|
|
|
427
418
|
}
|
|
428
419
|
});
|
|
429
420
|
const failures = results.map((r, j) => r.status === "rejected" ? { index: batchIndices[j], chunkData: batchChunks[j], error: r.reason } : null).filter(Boolean);
|
|
430
|
-
const
|
|
431
|
-
const needsReconnect = failures.some((f) => isConnectionError(f.error)) || subscriptionErrored;
|
|
421
|
+
const needsReconnect = failures.some((f) => isConnectionError(f.error));
|
|
432
422
|
if (needsReconnect && reconnect && reconnectionsUsed < MAX_RECONNECTIONS) {
|
|
433
423
|
await doReconnect();
|
|
434
424
|
const currentNonce = await _fetchNonce(BULLETIN_ENDPOINTS, ss58);
|
|
@@ -529,9 +519,6 @@ async function storeChunkedContent(chunks, { client: existingClient, unsafeApi:
|
|
|
529
519
|
return rootCid.toString();
|
|
530
520
|
}, { label: "root-node", rpc: BULLETIN_ENDPOINTS, senderSS58: ss58, expectedNonce: rootNonce, timeoutMs: CHUNK_TIMEOUT_MS, fetchNonce: fetchNonceOverride });
|
|
531
521
|
result = watchResult.value;
|
|
532
|
-
if (watchResult.subscriptionError && reconnect && reconnectionsUsed < MAX_RECONNECTIONS) {
|
|
533
|
-
await doReconnect();
|
|
534
|
-
}
|
|
535
522
|
break;
|
|
536
523
|
} catch (e) {
|
|
537
524
|
if (reconnect && reconnectionsUsed < MAX_RECONNECTIONS) {
|
|
@@ -723,22 +710,6 @@ async function deploy(content, domainName = null, options = {}) {
|
|
|
723
710
|
await preflight.connect(
|
|
724
711
|
options.signer && options.signerAddress ? { signer: options.signer, signerAddress: options.signerAddress } : options.mnemonic ? { mnemonic: options.mnemonic, derivationPath: options.derivationPath } : {}
|
|
725
712
|
);
|
|
726
|
-
const mappingDeadline = Date.now() + 15e3;
|
|
727
|
-
let mappingConfirmed = false;
|
|
728
|
-
while (Date.now() < mappingDeadline) {
|
|
729
|
-
if (await preflight.clientWrapper.checkIfAccountMapped(preflight.substrateAddress)) {
|
|
730
|
-
mappingConfirmed = true;
|
|
731
|
-
break;
|
|
732
|
-
}
|
|
733
|
-
await new Promise((r) => setTimeout(r, 1500));
|
|
734
|
-
}
|
|
735
|
-
if (!mappingConfirmed) {
|
|
736
|
-
preflight.disconnect();
|
|
737
|
-
throw new NonRetryableError(
|
|
738
|
-
`Account mapping did not take effect on-chain for ${preflight.substrateAddress}. The map_account tx may have been dropped or hit a dispatch error \u2014 check the signer's balance for existential deposit + fees.`
|
|
739
|
-
);
|
|
740
|
-
}
|
|
741
|
-
console.log(` Account: mapped`);
|
|
742
713
|
if (parsed?.isSubdomain) {
|
|
743
714
|
try {
|
|
744
715
|
const { owned: subOwned } = await preflight.checkSubdomainOwnership(parsed.sublabel, parsed.parentLabel);
|
|
@@ -942,16 +913,11 @@ async function deploy(content, domainName = null, options = {}) {
|
|
|
942
913
|
const freshness = await pollMirrorFreshness(mirror.url, cid, { timeoutMs: 3 * 60 * 1e3, intervalMs: 1e4 });
|
|
943
914
|
if (freshness.verified) {
|
|
944
915
|
console.log(`ok (${freshness.attempts} attempt${freshness.attempts === 1 ? "" : "s"}, ${(freshness.durationMs / 1e3).toFixed(0)}s).`);
|
|
916
|
+
setDeployAttribute("deploy.gh_pages_freshness_verified", "true");
|
|
945
917
|
} else {
|
|
946
918
|
console.log(`timed out.`);
|
|
947
919
|
console.log(` GitHub Pages last served cid=${freshness.lastCid ?? "n/a"} (expected ${cid}); it should catch up shortly. Non-fatal.`);
|
|
948
|
-
|
|
949
|
-
url: mirror.url,
|
|
950
|
-
expectedCid: cid,
|
|
951
|
-
lastCid: freshness.lastCid ?? "n/a",
|
|
952
|
-
durationMs: freshness.durationMs,
|
|
953
|
-
attempts: freshness.attempts
|
|
954
|
-
});
|
|
920
|
+
setDeployAttribute("deploy.gh_pages_freshness_verified", "false");
|
|
955
921
|
}
|
|
956
922
|
});
|
|
957
923
|
}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
captureWarning,
|
|
3
3
|
setDeployAttribute,
|
|
4
4
|
withSpan
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-WOJRQCQV.js";
|
|
6
6
|
import {
|
|
7
7
|
isTestnetSpecName
|
|
8
8
|
} from "./chunk-JHNW2EKY.js";
|
|
@@ -227,11 +227,25 @@ function sanitizeDomainLabel(label) {
|
|
|
227
227
|
function validateDomainLabel(label) {
|
|
228
228
|
if (!/^[a-z0-9-]{3,}$/.test(label)) throw new Error("Invalid domain label: must contain only lowercase letters, digits, and hyphens, min 3 chars");
|
|
229
229
|
if (label.startsWith("-") || label.endsWith("-")) throw new Error("Invalid domain label: cannot start or end with hyphen");
|
|
230
|
-
|
|
230
|
+
const sanitized = sanitizeDomainLabel(label);
|
|
231
|
+
if (/-\d+$/.test(sanitized)) {
|
|
232
|
+
const baseWithHyphen = sanitized.replace(/\d+$/, "");
|
|
233
|
+
const dropHyphen = sanitized.replace(/-(\d+)$/, "$1");
|
|
234
|
+
const insertSegment = sanitized.replace(/-(\d+)$/, "-pr$1");
|
|
235
|
+
throw new Error(
|
|
236
|
+
`Invalid domain label: "${sanitized}" \u2014 dotns base-name extraction leaves a trailing hyphen ("${baseWithHyphen}"), which the registry rejects with PopError("Name must be lowercase ASCII DNS label"). Drop the hyphen before the digits (e.g. "${dropHyphen}") or add a non-digit segment between (e.g. "${insertSegment}").`
|
|
237
|
+
);
|
|
238
|
+
}
|
|
239
|
+
return sanitized;
|
|
231
240
|
}
|
|
232
241
|
function isCommitmentMature(chainNowSeconds, commitTimestampSeconds, minimumAgeSeconds) {
|
|
233
242
|
return chainNowSeconds > commitTimestampSeconds + minimumAgeSeconds;
|
|
234
243
|
}
|
|
244
|
+
function isExplicitCommitmentBuffer(envValue) {
|
|
245
|
+
if (envValue === void 0 || envValue === "") return false;
|
|
246
|
+
const parsed = Number(envValue);
|
|
247
|
+
return Number.isFinite(parsed) && parsed > 0;
|
|
248
|
+
}
|
|
235
249
|
function classifyDotnsLabel(label) {
|
|
236
250
|
const totalLength = label.length;
|
|
237
251
|
const trailingDigits = countTrailingDigits(label);
|
|
@@ -435,34 +449,46 @@ var DotNS = class {
|
|
|
435
449
|
this._mnemonic = null;
|
|
436
450
|
}
|
|
437
451
|
const authEnv = buildAuthEnv({ mnemonic: this._mnemonic ?? void 0, keyUri: this._keyUri ?? void 0 });
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
this.substrateAddress = popInfo.substrate;
|
|
444
|
-
this.evmAddress = popInfo.evm;
|
|
452
|
+
await cryptoWaitReady();
|
|
453
|
+
const keyring = new Keyring({ type: "sr25519" });
|
|
454
|
+
const account = this._keyUri ? keyring.addFromUri(this._keyUri) : keyring.addFromMnemonic(source);
|
|
455
|
+
this.signer = getPolkadotSigner(account.publicKey, "Sr25519", async (input) => account.sign(input));
|
|
456
|
+
this.substrateAddress = account.address;
|
|
445
457
|
console.log(` SS58 Address: ${this.substrateAddress}`);
|
|
446
|
-
console.log(` H160 Address: ${this.evmAddress}`);
|
|
447
458
|
try {
|
|
448
|
-
await cryptoWaitReady();
|
|
449
|
-
const keyring = new Keyring({ type: "sr25519" });
|
|
450
|
-
const account = isKeyUri || this._keyUri ? keyring.addFromUri(this._keyUri ?? source) : keyring.addFromMnemonic(source);
|
|
451
|
-
this.signer = getPolkadotSigner(account.publicKey, "Sr25519", async (input) => account.sign(input));
|
|
452
459
|
this.client = createClient(getWsProvider(rpc, { heartbeatTimeout: WS_HEARTBEAT_TIMEOUT_MS }));
|
|
453
460
|
const unsafeApi = this.client.getUnsafeApi();
|
|
454
461
|
this.clientWrapper = new ReviveClientWrapper(unsafeApi);
|
|
462
|
+
this.evmAddress = await withTimeout(
|
|
463
|
+
this.clientWrapper.getEvmAddress(this.substrateAddress),
|
|
464
|
+
CONNECTION_TIMEOUT_MS,
|
|
465
|
+
"ReviveApi.address"
|
|
466
|
+
);
|
|
467
|
+
console.log(` H160 Address: ${this.evmAddress}`);
|
|
455
468
|
} catch (e) {
|
|
456
|
-
|
|
469
|
+
throw new Error(`DotNS connect: failed to resolve EVM address from ${this.substrateAddress} via ReviveApi.address (${e.message?.slice(0, 200)})`);
|
|
457
470
|
}
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
captureWarning("account map failed during connect", { error: e.message?.slice(0, 200) });
|
|
471
|
+
if (!await this.clientWrapper.checkIfAccountMapped(this.substrateAddress)) {
|
|
472
|
+
console.log(` Mapping account on Asset Hub Revive...`);
|
|
473
|
+
try {
|
|
474
|
+
await runDotnsCli(["account", "map", ...rpcFlag(rpc)], authEnv);
|
|
475
|
+
} catch (e) {
|
|
476
|
+
captureWarning("account map failed during connect (will rely on chain confirmation)", { error: e.message?.slice(0, 200) });
|
|
477
|
+
}
|
|
478
|
+
const mappingDeadline = Date.now() + 15e3;
|
|
479
|
+
let mappingConfirmed = false;
|
|
480
|
+
while (Date.now() < mappingDeadline) {
|
|
481
|
+
if (await this.clientWrapper.checkIfAccountMapped(this.substrateAddress)) {
|
|
482
|
+
mappingConfirmed = true;
|
|
483
|
+
break;
|
|
484
|
+
}
|
|
485
|
+
await new Promise((r) => setTimeout(r, 1500));
|
|
486
|
+
}
|
|
487
|
+
if (!mappingConfirmed) {
|
|
488
|
+
throw new Error(`Account mapping did not take effect on-chain for ${this.substrateAddress}. The map_account tx may have been dropped or hit a dispatch error \u2014 check the signer's balance for existential deposit + fees.`);
|
|
464
489
|
}
|
|
465
490
|
}
|
|
491
|
+
console.log(` Account: mapped`);
|
|
466
492
|
try {
|
|
467
493
|
setDeployAttribute("deploy.dotns_cli.version", _dotnsCliVersion);
|
|
468
494
|
} catch {
|
|
@@ -785,7 +811,7 @@ var DotNS = class {
|
|
|
785
811
|
console.log(`
|
|
786
812
|
Registering ${label}.dot via dotns CLI...`);
|
|
787
813
|
const authEnv = buildAuthEnv({ mnemonic: this._mnemonic ?? void 0, keyUri: this._keyUri ?? void 0 });
|
|
788
|
-
const userSetBuffer =
|
|
814
|
+
const userSetBuffer = isExplicitCommitmentBuffer(process.env.DOTNS_COMMITMENT_BUFFER);
|
|
789
815
|
if (!userSetBuffer) {
|
|
790
816
|
authEnv.DOTNS_COMMITMENT_BUFFER = "30";
|
|
791
817
|
}
|
|
@@ -857,6 +883,7 @@ export {
|
|
|
857
883
|
sanitizeDomainLabel,
|
|
858
884
|
validateDomainLabel,
|
|
859
885
|
isCommitmentMature,
|
|
886
|
+
isExplicitCommitmentBuffer,
|
|
860
887
|
classifyDotnsLabel,
|
|
861
888
|
canRegister,
|
|
862
889
|
simulateUserStatus,
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
classifyErrorArea,
|
|
3
3
|
isInteractive,
|
|
4
4
|
promptYesNo
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-XOKNNK6E.js";
|
|
6
6
|
import {
|
|
7
7
|
VERSION,
|
|
8
8
|
getCurrentSentryTraceId
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-WOJRQCQV.js";
|
|
10
10
|
|
|
11
11
|
// src/bug-report.ts
|
|
12
12
|
import { execSync, execFileSync } from "child_process";
|
package/dist/deploy.js
CHANGED
|
@@ -25,13 +25,13 @@ import {
|
|
|
25
25
|
storeChunkedContent,
|
|
26
26
|
storeDirectory,
|
|
27
27
|
storeFile
|
|
28
|
-
} from "./chunk-
|
|
29
|
-
import "./chunk-
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
28
|
+
} from "./chunk-KQ75CSJJ.js";
|
|
29
|
+
import "./chunk-UXKC7JAM.js";
|
|
30
|
+
import "./chunk-XOKNNK6E.js";
|
|
31
|
+
import "./chunk-SAMH7JFG.js";
|
|
32
32
|
import "./chunk-2Q2WSKFD.js";
|
|
33
|
-
import "./chunk-
|
|
34
|
-
import "./chunk-
|
|
33
|
+
import "./chunk-WOJRQCQV.js";
|
|
34
|
+
import "./chunk-GQFH2NRB.js";
|
|
35
35
|
import "./chunk-B7GUYYAN.js";
|
|
36
36
|
import "./chunk-JHNW2EKY.js";
|
|
37
37
|
import "./chunk-QGM4M3NI.js";
|
package/dist/dotns.d.ts
CHANGED
|
@@ -88,6 +88,7 @@ declare function stripTrailingDigits(label: string): string;
|
|
|
88
88
|
declare function sanitizeDomainLabel(label: string): string;
|
|
89
89
|
declare function validateDomainLabel(label: string): string;
|
|
90
90
|
declare function isCommitmentMature(chainNowSeconds: number, commitTimestampSeconds: number, minimumAgeSeconds: number): boolean;
|
|
91
|
+
declare function isExplicitCommitmentBuffer(envValue: string | undefined): boolean;
|
|
91
92
|
declare function classifyDotnsLabel(label: string): {
|
|
92
93
|
status: number;
|
|
93
94
|
message: string;
|
|
@@ -155,4 +156,4 @@ declare class DotNS {
|
|
|
155
156
|
}
|
|
156
157
|
declare const dotns: DotNS;
|
|
157
158
|
|
|
158
|
-
export { CONNECTION_TIMEOUT_MS, CONTRACTS, DECIMALS, DEFAULT_MNEMONIC, DOTNS_TX_MAX_ATTEMPTS, DOT_NODE, DotNS, type DotNSConnectOptions, type DotnsPreflightResult, NATIVE_TO_ETH_RATIO, OPERATION_TIMEOUT_MS, type OwnershipResult, type ParsedDomainName, type PriceValidationResult, ProofOfPersonhoodStatus, RPC_ENDPOINTS, TX_CHAIN_TIME_BUDGET_MS, TX_TIMEOUT_MS, TX_WALL_CLOCK_CEILING_MS, WS_HEARTBEAT_TIMEOUT_MS, canRegister, classifyDotnsLabel, classifyTxRetryDecision, computeDomainTokenId, convertWeiToNative, countTrailingDigits, dotns, fetchNonce, isCommitmentMature, parseDomainName, parseProofOfPersonhoodStatus, popStatusName, runDotnsCli, sanitizeDomainLabel, simulateUserStatus, stripTrailingDigits, validateDomainLabel, verifyNonceAdvanced };
|
|
159
|
+
export { CONNECTION_TIMEOUT_MS, CONTRACTS, DECIMALS, DEFAULT_MNEMONIC, DOTNS_TX_MAX_ATTEMPTS, DOT_NODE, DotNS, type DotNSConnectOptions, type DotnsPreflightResult, NATIVE_TO_ETH_RATIO, OPERATION_TIMEOUT_MS, type OwnershipResult, type ParsedDomainName, type PriceValidationResult, ProofOfPersonhoodStatus, RPC_ENDPOINTS, TX_CHAIN_TIME_BUDGET_MS, TX_TIMEOUT_MS, TX_WALL_CLOCK_CEILING_MS, WS_HEARTBEAT_TIMEOUT_MS, canRegister, classifyDotnsLabel, classifyTxRetryDecision, computeDomainTokenId, convertWeiToNative, countTrailingDigits, dotns, fetchNonce, isCommitmentMature, isExplicitCommitmentBuffer, parseDomainName, parseProofOfPersonhoodStatus, popStatusName, runDotnsCli, sanitizeDomainLabel, simulateUserStatus, stripTrailingDigits, validateDomainLabel, verifyNonceAdvanced };
|
package/dist/dotns.js
CHANGED
|
@@ -23,6 +23,7 @@ import {
|
|
|
23
23
|
dotns,
|
|
24
24
|
fetchNonce,
|
|
25
25
|
isCommitmentMature,
|
|
26
|
+
isExplicitCommitmentBuffer,
|
|
26
27
|
parseDomainName,
|
|
27
28
|
parseProofOfPersonhoodStatus,
|
|
28
29
|
popStatusName,
|
|
@@ -32,9 +33,9 @@ import {
|
|
|
32
33
|
stripTrailingDigits,
|
|
33
34
|
validateDomainLabel,
|
|
34
35
|
verifyNonceAdvanced
|
|
35
|
-
} from "./chunk-
|
|
36
|
-
import "./chunk-
|
|
37
|
-
import "./chunk-
|
|
36
|
+
} from "./chunk-SAMH7JFG.js";
|
|
37
|
+
import "./chunk-WOJRQCQV.js";
|
|
38
|
+
import "./chunk-GQFH2NRB.js";
|
|
38
39
|
import "./chunk-JHNW2EKY.js";
|
|
39
40
|
import "./chunk-QGM4M3NI.js";
|
|
40
41
|
export {
|
|
@@ -62,6 +63,7 @@ export {
|
|
|
62
63
|
dotns,
|
|
63
64
|
fetchNonce,
|
|
64
65
|
isCommitmentMature,
|
|
66
|
+
isExplicitCommitmentBuffer,
|
|
65
67
|
parseDomainName,
|
|
66
68
|
parseProofOfPersonhoodStatus,
|
|
67
69
|
popStatusName,
|
package/dist/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
deploy
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
5
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-KQ75CSJJ.js";
|
|
4
|
+
import "./chunk-UXKC7JAM.js";
|
|
5
|
+
import "./chunk-XOKNNK6E.js";
|
|
6
6
|
import {
|
|
7
7
|
DotNS,
|
|
8
8
|
parseDomainName
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-SAMH7JFG.js";
|
|
10
10
|
import "./chunk-2Q2WSKFD.js";
|
|
11
|
-
import "./chunk-
|
|
11
|
+
import "./chunk-WOJRQCQV.js";
|
|
12
12
|
import {
|
|
13
13
|
VERSION,
|
|
14
14
|
loadRunState,
|
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
shouldSkipStaleWarning,
|
|
19
19
|
stateFilePath,
|
|
20
20
|
writeRunState
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-GQFH2NRB.js";
|
|
22
22
|
import {
|
|
23
23
|
merkleizeJS
|
|
24
24
|
} from "./chunk-B7GUYYAN.js";
|
package/dist/memory-report.js
CHANGED
|
@@ -5,8 +5,8 @@ import {
|
|
|
5
5
|
maybeWriteMemoryReport,
|
|
6
6
|
safeHeap,
|
|
7
7
|
sampleFromBytes
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
8
|
+
} from "./chunk-WOJRQCQV.js";
|
|
9
|
+
import "./chunk-GQFH2NRB.js";
|
|
10
10
|
import "./chunk-QGM4M3NI.js";
|
|
11
11
|
export {
|
|
12
12
|
DEFAULT_THRESHOLD_MB,
|
package/dist/run-state.js
CHANGED
package/dist/telemetry.js
CHANGED
package/dist/version-check.js
CHANGED
|
@@ -8,9 +8,9 @@ import {
|
|
|
8
8
|
isPreReleaseVersion,
|
|
9
9
|
preReleaseWarning,
|
|
10
10
|
promptYesNo
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-
|
|
13
|
-
import "./chunk-
|
|
11
|
+
} from "./chunk-XOKNNK6E.js";
|
|
12
|
+
import "./chunk-WOJRQCQV.js";
|
|
13
|
+
import "./chunk-GQFH2NRB.js";
|
|
14
14
|
import "./chunk-QGM4M3NI.js";
|
|
15
15
|
export {
|
|
16
16
|
assessVersion,
|