bulletin-deploy 0.7.20 → 0.7.21
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/README.md +0 -2
- package/assets/environments.json +2 -7
- package/bin/bulletin-deploy +0 -6
- package/dist/bug-report.js +4 -5
- package/dist/{chunk-GGHSZZZ3.js → chunk-2VNGK2MU.js} +13 -19
- package/dist/{chunk-UVIG5UAV.js → chunk-BFXHVC23.js} +72 -38
- package/dist/{chunk-HUT7ZGRQ.js → chunk-F36C363Y.js} +3 -11
- package/dist/{chunk-CD27FW4F.js → chunk-G2P5UIPX.js} +3 -3
- package/dist/{chunk-6LODTEG3.js → chunk-RJAFD4LO.js} +1 -1
- package/dist/{chunk-EZUICRCA.js → chunk-SA37SLYF.js} +2 -2
- package/dist/{chunk-BR2EQ2X3.js → chunk-VTTN4BX7.js} +209 -483
- package/dist/{chunk-GNVDLLZI.js → chunk-ZY6QLNKQ.js} +1 -1
- package/dist/chunk-probe.js +3 -4
- package/dist/chunker.js +0 -1
- package/dist/deploy.d.ts +1 -9
- package/dist/deploy.js +8 -9
- package/dist/dotns.d.ts +9 -33
- package/dist/dotns.js +3 -12
- package/dist/environments.d.ts +0 -4
- package/dist/environments.js +1 -2
- package/dist/errors.js +0 -1
- package/dist/gh-pages-mirror.js +0 -1
- package/dist/incremental-stats.js +0 -1
- package/dist/index.js +8 -9
- package/dist/manifest-embed.js +0 -1
- package/dist/manifest-fetch.js +0 -1
- package/dist/manifest-roundtrip.js +0 -1
- package/dist/manifest.js +0 -1
- package/dist/memory-report.js +2 -3
- package/dist/merkle.js +8 -9
- package/dist/mirror.js +0 -1
- package/dist/pool.js +0 -1
- package/dist/run-state.js +1 -2
- package/dist/telemetry.js +2 -3
- package/dist/version-check.js +3 -4
- package/docs/e2e-bootstrap.md +9 -15
- package/package.json +3 -3
- package/dist/chunk-QGM4M3NI.js +0 -37
- package/dist/wrapper-IFSKR7DG.js +0 -3651
package/dist/chunk-probe.js
CHANGED
|
@@ -5,10 +5,9 @@ import {
|
|
|
5
5
|
_decodeStorageValue,
|
|
6
6
|
_resetProbeSession,
|
|
7
7
|
probeChunks
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-
|
|
11
|
-
import "./chunk-QGM4M3NI.js";
|
|
8
|
+
} from "./chunk-ZY6QLNKQ.js";
|
|
9
|
+
import "./chunk-2VNGK2MU.js";
|
|
10
|
+
import "./chunk-G2P5UIPX.js";
|
|
12
11
|
export {
|
|
13
12
|
ChainProbeCrossValidationError,
|
|
14
13
|
ChainProbeMetadataError,
|
package/dist/chunker.js
CHANGED
package/dist/deploy.d.ts
CHANGED
|
@@ -201,24 +201,16 @@ interface DeployOptions {
|
|
|
201
201
|
assetHubEndpoints?: string[];
|
|
202
202
|
/** When true, marks this as an automated mirror deploy in telemetry. */
|
|
203
203
|
automatedMirror?: boolean;
|
|
204
|
-
/**
|
|
205
|
-
* Use direct contract calls for all DotNS operations instead of dotns-cli.
|
|
206
|
-
* Required for environments with custom contract addresses (e.g. paseo-next-v2).
|
|
207
|
-
* When the env has `skipDotnsCli: true` in environments.json this is auto-set.
|
|
208
|
-
*/
|
|
209
|
-
skipDotnsCli?: boolean;
|
|
210
204
|
}
|
|
211
|
-
declare function resolveDotnsConnectOptions(options: Pick<DeployOptions, "mnemonic" | "derivationPath" | "signer" | "signerAddress"
|
|
205
|
+
declare function resolveDotnsConnectOptions(options: Pick<DeployOptions, "mnemonic" | "derivationPath" | "signer" | "signerAddress">, assetHubEndpoints?: string[], autoAccountMapping?: boolean, contracts?: Record<string, string>, nativeToEthRatio?: bigint): {
|
|
212
206
|
signer?: PolkadotSigner;
|
|
213
207
|
signerAddress?: string;
|
|
214
208
|
mnemonic?: string;
|
|
215
209
|
derivationPath?: string;
|
|
216
210
|
assetHubEndpoints?: string[];
|
|
217
211
|
autoAccountMapping?: boolean;
|
|
218
|
-
skipDotnsCli?: boolean;
|
|
219
212
|
contracts?: Record<string, string>;
|
|
220
213
|
nativeToEthRatio?: bigint;
|
|
221
|
-
dotnsSelfAttest?: boolean;
|
|
222
214
|
};
|
|
223
215
|
declare function estimateUploadBytes(content: DeployContent): Promise<number | null>;
|
|
224
216
|
declare function deploy(content: DeployContent, domainName?: string | null, options?: DeployOptions): Promise<DeployResult>;
|
package/dist/deploy.js
CHANGED
|
@@ -32,26 +32,25 @@ import {
|
|
|
32
32
|
storeDirectory,
|
|
33
33
|
storeDirectoryV2,
|
|
34
34
|
storeFile
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-BFXHVC23.js";
|
|
36
36
|
import "./chunk-MJTQOXBC.js";
|
|
37
37
|
import "./chunk-KOSF5FDO.js";
|
|
38
38
|
import "./chunk-5MRZ3V4A.js";
|
|
39
39
|
import "./chunk-S7EM5VMW.js";
|
|
40
|
-
import "./chunk-
|
|
41
|
-
import "./chunk-
|
|
42
|
-
import "./chunk-
|
|
40
|
+
import "./chunk-SA37SLYF.js";
|
|
41
|
+
import "./chunk-RJAFD4LO.js";
|
|
42
|
+
import "./chunk-ZY6QLNKQ.js";
|
|
43
43
|
import "./chunk-C2TS5MER.js";
|
|
44
|
-
import "./chunk-
|
|
44
|
+
import "./chunk-VTTN4BX7.js";
|
|
45
45
|
import "./chunk-4TS6R26J.js";
|
|
46
|
-
import "./chunk-
|
|
47
|
-
import "./chunk-
|
|
48
|
-
import "./chunk-
|
|
46
|
+
import "./chunk-2VNGK2MU.js";
|
|
47
|
+
import "./chunk-G2P5UIPX.js";
|
|
48
|
+
import "./chunk-F36C363Y.js";
|
|
49
49
|
import {
|
|
50
50
|
EXIT_CODE_NO_RETRY,
|
|
51
51
|
NonRetryableError
|
|
52
52
|
} from "./chunk-ZOC4GITL.js";
|
|
53
53
|
import "./chunk-HOTQDYHD.js";
|
|
54
|
-
import "./chunk-QGM4M3NI.js";
|
|
55
54
|
export {
|
|
56
55
|
CHUNK_MORTALITY_PERIOD,
|
|
57
56
|
DEFAULT_BULLETIN_RPC,
|
package/dist/dotns.d.ts
CHANGED
|
@@ -1,18 +1,5 @@
|
|
|
1
1
|
import { PolkadotSigner } from 'polkadot-api';
|
|
2
2
|
|
|
3
|
-
type DotnsCliInvocationSource = "package" | "host-dispatch" | "host-dispatch-fallback" | "command-override";
|
|
4
|
-
interface DotnsCliInvocation {
|
|
5
|
-
command: string;
|
|
6
|
-
argsPrefix: string[];
|
|
7
|
-
version: string;
|
|
8
|
-
source: DotnsCliInvocationSource;
|
|
9
|
-
resolutionError?: string;
|
|
10
|
-
}
|
|
11
|
-
interface DotnsCliPackageResolution {
|
|
12
|
-
path: string;
|
|
13
|
-
version: string;
|
|
14
|
-
}
|
|
15
|
-
declare function resolveDotnsCliInvocation(env?: NodeJS.ProcessEnv | Record<string, string | undefined>, packageResolver?: () => DotnsCliPackageResolution): DotnsCliInvocation;
|
|
16
3
|
interface DotNSConnectOptions {
|
|
17
4
|
rpc?: string;
|
|
18
5
|
keyUri?: string;
|
|
@@ -26,16 +13,11 @@ interface DotNSConnectOptions {
|
|
|
26
13
|
* preserves backwards-compatibility for external library consumers. The
|
|
27
14
|
* bulletin-deploy CLI passes the list resolved from environments.json so
|
|
28
15
|
* `--env <id>` drives both bulletin and asset-hub endpoints.
|
|
29
|
-
|
|
16
|
+
*/
|
|
30
17
|
assetHubEndpoints?: string[];
|
|
31
18
|
autoAccountMapping?: boolean;
|
|
32
|
-
dotnsSelfAttest?: boolean;
|
|
33
19
|
nativeToEthRatio?: bigint;
|
|
34
20
|
contracts?: Record<string, string>;
|
|
35
|
-
/** Use direct contract calls for all DotNS operations instead of dotns-cli.
|
|
36
|
-
* Required for environments with custom contract addresses that dotns-cli
|
|
37
|
-
* does not support. Pass --skip-dotns-cli on the CLI to enable. */
|
|
38
|
-
skipDotnsCli?: boolean;
|
|
39
21
|
}
|
|
40
22
|
interface OwnershipResult {
|
|
41
23
|
owned: boolean;
|
|
@@ -130,8 +112,6 @@ declare function stripTrailingDigits(label: string): string;
|
|
|
130
112
|
declare function sanitizeDomainLabel(label: string): string;
|
|
131
113
|
declare function validateDomainLabel(label: string): string;
|
|
132
114
|
declare function isCommitmentMature(chainNowSeconds: number, commitTimestampSeconds: number, minimumAgeSeconds: number): boolean;
|
|
133
|
-
declare function isExplicitCommitmentBuffer(envValue: string | undefined): boolean;
|
|
134
|
-
declare function isLikelyCommitmentRace(msg: string): boolean;
|
|
135
115
|
declare function classifyDotnsLabel(label: string): {
|
|
136
116
|
status: number;
|
|
137
117
|
message: string;
|
|
@@ -173,14 +153,14 @@ declare class ReviveClientWrapper {
|
|
|
173
153
|
expectedNonce: number;
|
|
174
154
|
};
|
|
175
155
|
}): Promise<string>;
|
|
176
|
-
submitTransaction(contractAddress: string, value: bigint, encodedData: string, signerSubstrateAddress: string, signer: PolkadotSigner, statusCallback: (status: string) => void, { rpcs, useNoncePolling, functionName, args }: {
|
|
156
|
+
submitTransaction(contractAddress: string, value: bigint, encodedData: string, signerSubstrateAddress: string, signer: PolkadotSigner, statusCallback: (status: string) => void, { rpcs, useNoncePolling, functionName, args, contracts }: {
|
|
177
157
|
rpcs: string[];
|
|
178
158
|
useNoncePolling?: boolean;
|
|
179
159
|
functionName?: string;
|
|
180
160
|
args?: unknown[];
|
|
161
|
+
contracts?: Record<string, string>;
|
|
181
162
|
}): Promise<string>;
|
|
182
163
|
}
|
|
183
|
-
declare function runDotnsCli(argv: string[], env?: Record<string, string>): Promise<unknown>;
|
|
184
164
|
declare class DotNS {
|
|
185
165
|
client: any | null;
|
|
186
166
|
clientWrapper: ReviveClientWrapper | null;
|
|
@@ -190,16 +170,12 @@ declare class DotNS {
|
|
|
190
170
|
signer: PolkadotSigner | null;
|
|
191
171
|
connected: boolean;
|
|
192
172
|
assetHubEndpoints: string[];
|
|
193
|
-
private _mnemonic;
|
|
194
|
-
private _keyUri;
|
|
195
173
|
private _usesExternalSigner;
|
|
196
|
-
private _skipDotnsCli;
|
|
197
174
|
private _contracts;
|
|
198
175
|
private _nativeToEthRatio;
|
|
199
|
-
private _dotnsSelfAttest;
|
|
200
|
-
private get _useContractPath();
|
|
201
176
|
constructor();
|
|
202
177
|
connect(options?: DotNSConnectOptions): Promise<this>;
|
|
178
|
+
ensureMappedAccountReady(autoAccountMapping?: boolean): Promise<void>;
|
|
203
179
|
ensureAutoMappedAccountReady(): Promise<void>;
|
|
204
180
|
ensureConnected(): void;
|
|
205
181
|
private _testnetCache;
|
|
@@ -216,7 +192,7 @@ declare class DotNS {
|
|
|
216
192
|
}): Promise<string>;
|
|
217
193
|
checkOwnership(label: string, ownerAddress?: string | null): Promise<OwnershipResult>;
|
|
218
194
|
getUserPopStatus(ownerAddress?: string | null): Promise<number>;
|
|
219
|
-
setUserPopStatus(
|
|
195
|
+
setUserPopStatus(_status: number): Promise<void>;
|
|
220
196
|
checkSubdomainOwnership(sublabel: string, parentLabel: string): Promise<OwnershipResult>;
|
|
221
197
|
registerSubdomain(sublabel: string, parentLabel: string): Promise<{
|
|
222
198
|
sublabel: string;
|
|
@@ -226,7 +202,7 @@ declare class DotNS {
|
|
|
226
202
|
setContenthash(domainName: string, contenthashHex: string): Promise<{
|
|
227
203
|
node: string;
|
|
228
204
|
}>;
|
|
229
|
-
setTextRecord(domainName: string, key: string, value: string
|
|
205
|
+
setTextRecord(domainName: string, key: string, value: string): Promise<{
|
|
230
206
|
value: string;
|
|
231
207
|
txHash: string;
|
|
232
208
|
}>;
|
|
@@ -245,12 +221,12 @@ declare class DotNS {
|
|
|
245
221
|
getPriceAndValidate(label: string): Promise<PriceValidationResult>;
|
|
246
222
|
finalizeRegistration(registration: any, priceWei: bigint): Promise<void>;
|
|
247
223
|
verifyOwnership(label: string): Promise<void>;
|
|
248
|
-
preflight(label: string
|
|
224
|
+
preflight(label: string): Promise<DotnsPreflightResult>;
|
|
249
225
|
private gateOnFeeBalance;
|
|
250
226
|
register(label: string, options?: DotNSConnectOptions & {
|
|
251
227
|
status?: string;
|
|
252
228
|
reverse?: boolean;
|
|
253
|
-
}
|
|
229
|
+
}): Promise<{
|
|
254
230
|
label: string;
|
|
255
231
|
owner: string;
|
|
256
232
|
}>;
|
|
@@ -258,4 +234,4 @@ declare class DotNS {
|
|
|
258
234
|
}
|
|
259
235
|
declare const dotns: DotNS;
|
|
260
236
|
|
|
261
|
-
export { CONNECTION_TIMEOUT_MS, CONTRACTS, DECIMALS, DEFAULT_MNEMONIC, DOTNS_TX_MAX_ATTEMPTS, DOT_NODE, DotNS, type DotNSConnectOptions, type
|
|
237
|
+
export { CONNECTION_TIMEOUT_MS, CONTRACTS, DECIMALS, DEFAULT_MNEMONIC, DOTNS_TX_MAX_ATTEMPTS, DOT_NODE, DotNS, type DotNSConnectOptions, type DotnsPreflightResult, type DotnsSuccessAction, 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, convertToHexString, convertWeiToNative, countTrailingDigits, dotns, feeFloorFor, fetchNonce, fmtPas, isCommitmentMature, parseDomainName, parseProofOfPersonhoodStatus, popStatusName, sanitizeDomainLabel, simulateUserStatus, stripTrailingDigits, validateDomainLabel, verifyNonceAdvanced };
|
package/dist/dotns.js
CHANGED
|
@@ -26,23 +26,18 @@ import {
|
|
|
26
26
|
fetchNonce,
|
|
27
27
|
fmtPas,
|
|
28
28
|
isCommitmentMature,
|
|
29
|
-
isExplicitCommitmentBuffer,
|
|
30
|
-
isLikelyCommitmentRace,
|
|
31
29
|
parseDomainName,
|
|
32
30
|
parseProofOfPersonhoodStatus,
|
|
33
31
|
popStatusName,
|
|
34
|
-
resolveDotnsCliInvocation,
|
|
35
|
-
runDotnsCli,
|
|
36
32
|
sanitizeDomainLabel,
|
|
37
33
|
simulateUserStatus,
|
|
38
34
|
stripTrailingDigits,
|
|
39
35
|
validateDomainLabel,
|
|
40
36
|
verifyNonceAdvanced
|
|
41
|
-
} from "./chunk-
|
|
37
|
+
} from "./chunk-VTTN4BX7.js";
|
|
42
38
|
import "./chunk-4TS6R26J.js";
|
|
43
|
-
import "./chunk-
|
|
44
|
-
import "./chunk-
|
|
45
|
-
import "./chunk-QGM4M3NI.js";
|
|
39
|
+
import "./chunk-2VNGK2MU.js";
|
|
40
|
+
import "./chunk-G2P5UIPX.js";
|
|
46
41
|
export {
|
|
47
42
|
CONNECTION_TIMEOUT_MS,
|
|
48
43
|
CONTRACTS,
|
|
@@ -71,13 +66,9 @@ export {
|
|
|
71
66
|
fetchNonce,
|
|
72
67
|
fmtPas,
|
|
73
68
|
isCommitmentMature,
|
|
74
|
-
isExplicitCommitmentBuffer,
|
|
75
|
-
isLikelyCommitmentRace,
|
|
76
69
|
parseDomainName,
|
|
77
70
|
parseProofOfPersonhoodStatus,
|
|
78
71
|
popStatusName,
|
|
79
|
-
resolveDotnsCliInvocation,
|
|
80
|
-
runDotnsCli,
|
|
81
72
|
sanitizeDomainLabel,
|
|
82
73
|
simulateUserStatus,
|
|
83
74
|
stripTrailingDigits,
|
package/dist/environments.d.ts
CHANGED
|
@@ -10,8 +10,6 @@ interface Environment {
|
|
|
10
10
|
uptimeUrl?: string;
|
|
11
11
|
autoAccountMapping?: boolean;
|
|
12
12
|
bulletinAuthorizeV2?: boolean;
|
|
13
|
-
dotnsSelfAttest?: boolean;
|
|
14
|
-
skipDotnsCli?: boolean;
|
|
15
13
|
nativeToEthRatio?: number;
|
|
16
14
|
contracts?: Record<string, string>;
|
|
17
15
|
}
|
|
@@ -46,8 +44,6 @@ interface ResolvedEndpoints {
|
|
|
46
44
|
envName: string;
|
|
47
45
|
autoAccountMapping: boolean;
|
|
48
46
|
bulletinAuthorizeV2: boolean;
|
|
49
|
-
dotnsSelfAttest: boolean;
|
|
50
|
-
skipDotnsCli: boolean;
|
|
51
47
|
contracts: Record<string, string>;
|
|
52
48
|
nativeToEthRatio: bigint;
|
|
53
49
|
}
|
package/dist/environments.js
CHANGED
package/dist/errors.js
CHANGED
package/dist/gh-pages-mirror.js
CHANGED
package/dist/index.js
CHANGED
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
deploy,
|
|
6
6
|
merkleizeJS,
|
|
7
7
|
merkleizeWithStableOrder
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-BFXHVC23.js";
|
|
9
9
|
import {
|
|
10
10
|
computeStats,
|
|
11
11
|
renderSummary,
|
|
@@ -27,16 +27,16 @@ import {
|
|
|
27
27
|
isVolatilePath,
|
|
28
28
|
parseManifest
|
|
29
29
|
} from "./chunk-S7EM5VMW.js";
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
30
|
+
import "./chunk-SA37SLYF.js";
|
|
31
|
+
import "./chunk-RJAFD4LO.js";
|
|
32
32
|
import {
|
|
33
33
|
probeChunks
|
|
34
|
-
} from "./chunk-
|
|
34
|
+
} from "./chunk-ZY6QLNKQ.js";
|
|
35
35
|
import "./chunk-C2TS5MER.js";
|
|
36
36
|
import {
|
|
37
37
|
DotNS,
|
|
38
38
|
parseDomainName
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-VTTN4BX7.js";
|
|
40
40
|
import {
|
|
41
41
|
bootstrapPool,
|
|
42
42
|
derivePoolAccounts,
|
|
@@ -44,7 +44,7 @@ import {
|
|
|
44
44
|
fetchPoolAuthorizations,
|
|
45
45
|
selectAccount
|
|
46
46
|
} from "./chunk-4TS6R26J.js";
|
|
47
|
-
import "./chunk-
|
|
47
|
+
import "./chunk-2VNGK2MU.js";
|
|
48
48
|
import {
|
|
49
49
|
VERSION,
|
|
50
50
|
loadRunState,
|
|
@@ -54,7 +54,7 @@ import {
|
|
|
54
54
|
shouldSkipStaleWarning,
|
|
55
55
|
stateFilePath,
|
|
56
56
|
writeRunState
|
|
57
|
-
} from "./chunk-
|
|
57
|
+
} from "./chunk-G2P5UIPX.js";
|
|
58
58
|
import {
|
|
59
59
|
DEFAULT_ENV_ID,
|
|
60
60
|
defaultBundledPath,
|
|
@@ -62,10 +62,9 @@ import {
|
|
|
62
62
|
listEnvironments,
|
|
63
63
|
loadEnvironments,
|
|
64
64
|
resolveEndpoints
|
|
65
|
-
} from "./chunk-
|
|
65
|
+
} from "./chunk-F36C363Y.js";
|
|
66
66
|
import "./chunk-ZOC4GITL.js";
|
|
67
67
|
import "./chunk-HOTQDYHD.js";
|
|
68
|
-
import "./chunk-QGM4M3NI.js";
|
|
69
68
|
export {
|
|
70
69
|
DEFAULT_ENV_ID,
|
|
71
70
|
DotNS,
|
package/dist/manifest-embed.js
CHANGED
package/dist/manifest-fetch.js
CHANGED
package/dist/manifest.js
CHANGED
package/dist/memory-report.js
CHANGED
|
@@ -5,9 +5,8 @@ import {
|
|
|
5
5
|
maybeWriteMemoryReport,
|
|
6
6
|
safeHeap,
|
|
7
7
|
sampleFromBytes
|
|
8
|
-
} from "./chunk-
|
|
9
|
-
import "./chunk-
|
|
10
|
-
import "./chunk-QGM4M3NI.js";
|
|
8
|
+
} from "./chunk-2VNGK2MU.js";
|
|
9
|
+
import "./chunk-G2P5UIPX.js";
|
|
11
10
|
export {
|
|
12
11
|
DEFAULT_THRESHOLD_MB,
|
|
13
12
|
buildMemoryReport,
|
package/dist/merkle.js
CHANGED
|
@@ -6,23 +6,22 @@ import {
|
|
|
6
6
|
merkleizeKuboBackend,
|
|
7
7
|
merkleizeWithStableOrder,
|
|
8
8
|
rebuildOrderedCarFromBytes
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-BFXHVC23.js";
|
|
10
10
|
import "./chunk-MJTQOXBC.js";
|
|
11
11
|
import "./chunk-KOSF5FDO.js";
|
|
12
12
|
import "./chunk-5MRZ3V4A.js";
|
|
13
13
|
import "./chunk-S7EM5VMW.js";
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-SA37SLYF.js";
|
|
15
|
+
import "./chunk-RJAFD4LO.js";
|
|
16
|
+
import "./chunk-ZY6QLNKQ.js";
|
|
17
17
|
import "./chunk-C2TS5MER.js";
|
|
18
|
-
import "./chunk-
|
|
18
|
+
import "./chunk-VTTN4BX7.js";
|
|
19
19
|
import "./chunk-4TS6R26J.js";
|
|
20
|
-
import "./chunk-
|
|
21
|
-
import "./chunk-
|
|
22
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-2VNGK2MU.js";
|
|
21
|
+
import "./chunk-G2P5UIPX.js";
|
|
22
|
+
import "./chunk-F36C363Y.js";
|
|
23
23
|
import "./chunk-ZOC4GITL.js";
|
|
24
24
|
import "./chunk-HOTQDYHD.js";
|
|
25
|
-
import "./chunk-QGM4M3NI.js";
|
|
26
25
|
export {
|
|
27
26
|
buildOrderedCar,
|
|
28
27
|
merkleizeBackend,
|
package/dist/mirror.js
CHANGED
package/dist/pool.js
CHANGED
package/dist/run-state.js
CHANGED
package/dist/telemetry.js
CHANGED
|
@@ -28,9 +28,8 @@ import {
|
|
|
28
28
|
truncateAddress,
|
|
29
29
|
withDeploySpan,
|
|
30
30
|
withSpan
|
|
31
|
-
} from "./chunk-
|
|
32
|
-
import "./chunk-
|
|
33
|
-
import "./chunk-QGM4M3NI.js";
|
|
31
|
+
} from "./chunk-2VNGK2MU.js";
|
|
32
|
+
import "./chunk-G2P5UIPX.js";
|
|
34
33
|
export {
|
|
35
34
|
VERSION,
|
|
36
35
|
__setDeployRootSpanForTest,
|
package/dist/version-check.js
CHANGED
|
@@ -9,10 +9,9 @@ import {
|
|
|
9
9
|
isPreReleaseVersion,
|
|
10
10
|
preReleaseWarning,
|
|
11
11
|
promptYesNo
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
14
|
-
import "./chunk-
|
|
15
|
-
import "./chunk-QGM4M3NI.js";
|
|
12
|
+
} from "./chunk-RJAFD4LO.js";
|
|
13
|
+
import "./chunk-2VNGK2MU.js";
|
|
14
|
+
import "./chunk-G2P5UIPX.js";
|
|
16
15
|
export {
|
|
17
16
|
assessVersion,
|
|
18
17
|
checkNodeVersion,
|
package/docs/e2e-bootstrap.md
CHANGED
|
@@ -11,26 +11,25 @@ Three one-time setup items are needed before the workflow can pass. Do them once
|
|
|
11
11
|
### Prerequisites
|
|
12
12
|
|
|
13
13
|
- `bulletin-deploy` built locally (`npm run build`).
|
|
14
|
-
- `@parity/dotns-cli` on `$PATH` (for the Bob registration in item 3). Install with `npm i -g @parity/dotns-cli`.
|
|
15
14
|
- Network access to Paseo Bulletin RPC (`wss://paseo-bulletin-rpc.polkadot.io`) and Asset Hub Paseo (DotNS).
|
|
16
15
|
- Alice's dev mnemonic: `bottom drive obey lake curtain smoke basket hold race lonely fit walk`.
|
|
17
16
|
|
|
18
|
-
### 1.
|
|
17
|
+
### 1. Verify Alice Personhood status
|
|
19
18
|
|
|
20
|
-
Both happy-path scenarios (S1, S2) deploy as Alice via DotNS. Registering a new un-reserved base name requires
|
|
19
|
+
Both happy-path scenarios (S1, S2) deploy as Alice via DotNS. Registering a new un-reserved base name requires Personhood status from the chain's Personhood precompile:
|
|
21
20
|
|
|
22
21
|
```bash
|
|
23
|
-
node tools/check-pop-status.mjs
|
|
22
|
+
node tools/check-pop-status.mjs
|
|
24
23
|
```
|
|
25
24
|
|
|
26
|
-
|
|
25
|
+
Re-run if the check cannot read Alice's status. Self-attestation is no longer available; ask the DotNS team to whitelist the signer if Alice needs a higher status for a label class.
|
|
27
26
|
|
|
28
27
|
### 2. Fund and map Bob on Asset Hub Paseo
|
|
29
28
|
|
|
30
29
|
Bob (`//Bob` from the dev phrase) is the owner of `e2eowned.dot` (see item 3). He needs:
|
|
31
30
|
|
|
32
31
|
- **Balance** on Asset Hub Paseo for his on-chain fees. Request ~1 PAS from the Paseo faucet at [https://faucet.polkadot.io/](https://faucet.polkadot.io/) sending to Bob's SS58 address `5FHneW46xGXgs5mUiveU4sbTyGBzmstUspZC92UhjJM694ty`.
|
|
33
|
-
- **Revive mapping** so he can sign EVM transactions.
|
|
32
|
+
- **Revive mapping** so he can sign EVM transactions. `check-pop-status` reports Bob's deterministic H160 and Personhood status without submitting transactions. A later Bob-signed registration or transfer triggers mapping when the chain supports automatic mapping.
|
|
34
33
|
|
|
35
34
|
```bash
|
|
36
35
|
node tools/check-pop-status.mjs "bottom drive obey lake curtain smoke basket hold race lonely fit walk//Bob"
|
|
@@ -40,14 +39,9 @@ Expected output: Bob's SS58, his H160 (`0x41dccbd49b26c50d34355ed86ff0fa9e489d1e
|
|
|
40
39
|
|
|
41
40
|
### 3. Register `e2eowned.dot` directly as Bob
|
|
42
41
|
|
|
43
|
-
The S3 negative scenario asserts that `bulletin-deploy` refuses to deploy to a domain owned by a different account (exit 78 with transfer guidance). Have Bob register the label
|
|
42
|
+
The S3 negative scenario asserts that `bulletin-deploy` refuses to deploy to a domain owned by a different account (exit 78 with transfer guidance). Have Bob register the label with a DotNS registration tool outside `bulletin-deploy` — no Alice intermediary, no Bulletin content needed (S3 never reads content).
|
|
44
43
|
|
|
45
|
-
|
|
46
|
-
dotns register domain -n e2eowned -s full --cb 30 \
|
|
47
|
-
-k "bottom drive obey lake curtain smoke basket hold race lonely fit walk//Bob"
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
Expected: exit 0, stdout ends with "Operation Complete" and `Domain: e2eowned.dot`. After this, `e2eowned.dot` is owned by Bob's H160 `0x41dccbd49b26c50d34355ed86ff0fa9e489d1e01`. PoP Full is auto-granted on testnet as part of the registration (an 8-char base name requires Full per `classifyDotnsLabel`). The `--cb 30` sets a 30s commitment buffer — the default 6s sometimes misses the 12s `minCommitmentAge` on Asset Hub Paseo.
|
|
44
|
+
Expected: `e2eowned.dot` is owned by Bob's H160 `0x41dccbd49b26c50d34355ed86ff0fa9e489d1e01`. If you use an upstream/manual DotNS tool for comparison, it is a bootstrap convenience only; `bulletin-deploy` itself does not require `@parity/dotns-cli`.
|
|
51
45
|
|
|
52
46
|
If S3 ever fails because `e2eowned.dot` was transferred back to Alice by mistake, re-run this step to restore Bob's ownership.
|
|
53
47
|
|
|
@@ -57,7 +51,7 @@ If S3 ever fails because `e2eowned.dot` was transferred back to Alice by mistake
|
|
|
57
51
|
|
|
58
52
|
Paseo Next v2 uses a separate Asset Hub (`wss://paseo-asset-hub-next-rpc.polkadot.io`) and Bulletin chain (`wss://paseo-bulletin-next-rpc.polkadot.io`) with different contract addresses. The `map_account` extrinsic does not exist on this chain — account mapping is triggered automatically when an account submits its first on-chain transaction.
|
|
59
53
|
|
|
60
|
-
> **Note on PoP grants:** The paseo-next-v2 `POP_RULES` contract (`0x2002C1c15b88632Ad01c7770f6EbE1Ca05c8472E`) is **not permissionless** — `setUserPopStatus` can only be called by the contract owner (`0x4a519c30da0ec16aa9a73c26ea6ca6f701cce099`).
|
|
54
|
+
> **Note on PoP grants:** The paseo-next-v2 `POP_RULES` contract (`0x2002C1c15b88632Ad01c7770f6EbE1Ca05c8472E`) is **not permissionless** — `setUserPopStatus` can only be called by the contract owner (`0x4a519c30da0ec16aa9a73c26ea6ca6f701cce099`). CI uses NoStatus-compatible labels instead of expecting `bulletin-deploy` to upgrade the signer.
|
|
61
55
|
|
|
62
56
|
### Prerequisites
|
|
63
57
|
|
|
@@ -114,7 +108,7 @@ The `e2eownedns02.dot` helper is idempotent: it leaves Bob-owned state alone and
|
|
|
114
108
|
|
|
115
109
|
## No pre-registration needed for `e2epoolns01.dot` / direct NoStatus labels
|
|
116
110
|
|
|
117
|
-
The stable happy-path labels auto-register to the selected test signer on first deploy. Subsequent runs exercise the update path (new contenthash under existing ownership). On paseo-next-v2 these labels must remain NoStatus-compatible because
|
|
111
|
+
The stable happy-path labels auto-register to the selected test signer on first deploy. Subsequent runs exercise the update path (new contenthash under existing ownership). On paseo-next-v2 these labels must remain NoStatus-compatible because DotNS self-attestation is no longer available.
|
|
118
112
|
|
|
119
113
|
## Verifying locally
|
|
120
114
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bulletin-deploy",
|
|
3
|
-
"version": "0.7.
|
|
3
|
+
"version": "0.7.21",
|
|
4
4
|
"private": false,
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -32,8 +32,9 @@
|
|
|
32
32
|
"scripts": {
|
|
33
33
|
"build": "tsup src/index.ts src/deploy.ts src/dotns.ts src/pool.ts src/telemetry.ts src/memory-report.ts src/merkle.ts src/gh-pages-mirror.ts src/version-check.ts src/bug-report.ts src/run-state.ts src/environments.ts src/errors.ts src/manifest.ts src/chunk-probe.ts src/manifest-embed.ts src/manifest-fetch.ts src/manifest-roundtrip.ts src/incremental-stats.ts src/chunker.ts src/mirror.ts --format esm --dts --clean --target node22",
|
|
34
34
|
"refresh-environments": "node scripts/refresh-environments.mjs",
|
|
35
|
+
"check:watched-dependencies": "node tools/check-watched-dependencies.mjs",
|
|
35
36
|
"prepare": "npm run build",
|
|
36
|
-
"test": "npm run build && node --test test/test.js test/cli-help.test.js test/helpers/e2e-helpers.test.js test/environments.test.js test/refresh-environments.test.js",
|
|
37
|
+
"test": "npm run build && node --test test/test.js test/cli-help.test.js test/helpers/e2e-helpers.test.js test/environments.test.js test/refresh-environments.test.js test/watched-dependencies.test.js",
|
|
37
38
|
"test:e2e": "npm run build && node --test test/e2e.test.js",
|
|
38
39
|
"test:e2e:smoke": "bash scripts/e2e-pass.sh smoke",
|
|
39
40
|
"test:e2e:pr": "bash scripts/e2e-pass.sh pr",
|
|
@@ -44,7 +45,6 @@
|
|
|
44
45
|
"@ipld/car": "^5.4.3",
|
|
45
46
|
"@ipld/dag-pb": "^4.1.3",
|
|
46
47
|
"@noble/hashes": "^1.7.2",
|
|
47
|
-
"@parity/dotns-cli": "^0.6.1",
|
|
48
48
|
"@polkadot-api/metadata-builders": "^0.14.2",
|
|
49
49
|
"@polkadot-api/substrate-bindings": "^0.20.2",
|
|
50
50
|
"@polkadot-labs/hdkd": "^0.0.28",
|
package/dist/chunk-QGM4M3NI.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
|
-
var __defProp = Object.defineProperty;
|
|
3
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
-
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
-
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
8
|
-
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
9
|
-
}) : x)(function(x) {
|
|
10
|
-
if (typeof require !== "undefined") return require.apply(this, arguments);
|
|
11
|
-
throw Error('Dynamic require of "' + x + '" is not supported');
|
|
12
|
-
});
|
|
13
|
-
var __commonJS = (cb, mod) => function __require2() {
|
|
14
|
-
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
15
|
-
};
|
|
16
|
-
var __copyProps = (to, from, except, desc) => {
|
|
17
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
18
|
-
for (let key of __getOwnPropNames(from))
|
|
19
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
20
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
21
|
-
}
|
|
22
|
-
return to;
|
|
23
|
-
};
|
|
24
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
25
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
26
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
27
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
28
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
29
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
30
|
-
mod
|
|
31
|
-
));
|
|
32
|
-
|
|
33
|
-
export {
|
|
34
|
-
__require,
|
|
35
|
-
__commonJS,
|
|
36
|
-
__toESM
|
|
37
|
-
};
|