deps: bulletin-deploy 0.15.0, and stop hardcoding the .dot TLD - #3
Merged
Conversation
paseo-next-v2 was re-genesised and the pinned POP_RULES contract address (0x4909bFb3...) no longer has code at it, so every deploy failed in preflight. 0.15.0 carries the refreshed address (0x747B456b...). Verified on the bump, per e2e/BOOTSTRAP.md: both public manifest exports the e2e suite depends on (fetchManifestRoundtrip, parseManifest) still resolve.
bulletin-deploy 0.15.0 made the DotNS TLD per-environment in assets/environments.json (paseo-next-v2, the default, now registers under .paseo; only preview still uses .dot), so every deploy was failing with `Domain "…" ends in ".dot", but this environment uses ".paseo" names.` normaliseDomain no longer appends a suffix: it strips a trailing .dot typed by the caller (backward compatible with every existing invocation), and otherwise forwards the label unchanged, letting bulletin-deploy apply whichever TLD the target --env actually uses. PopRules validation is unchanged. Verified live: a bare decentralize-ci against paseo-next-v2 resolved to decentralize-ci.paseo and registered successfully. Updates every place that assumed .dot: index.ts/cli.ts docs and error text, README's Naming/usage sections, package.json's description, the e2e suite's decentralize-ci.dot -> decentralize-ci.paseo references, and e2e/bootstrap.sh's direct bulletin-deploy invocation (which had the identical hardcoded-suffix bug outside decentralize's own code path). Also updates e2e/BOOTSTRAP.md with facts established during this work: the pool-fallback worker lost ProofOfPersonhoodFull after a Paseo Next v2 re-genesis (now NoStatus, ~11 PAS per deploy instead of free), was refunded to ~5005 PAS via the public faucet, and decentralize-ci.paseo is registered to the worker's EVM-mapped address. Old claims are kept and marked as history rather than deleted.
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
The suffix is no longer ours to choose — bulletin-deploy applies the target environment's TLD. Saying 'with or without .dot' implied .dot was still the outcome, which is wrong on every environment except preview.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two commits. The first is the version bump you'd expect; the second is the breaking change it exposed.
Why the bump was forced
paseo-next-v2was re-genesised. The POP_RULES contract address pinned in 0.14.2 no longer has code at it, so every deploy died in preflight:0.15.0 carries the refreshed address (
0x747B456b…). Both public manifest exports the e2e suite depends on —fetchManifestRoundtripandparseManifest— still resolve, which is the checke2e/BOOTSTRAP.mdrequires on any bump.The breaking change: TLD is now per-environment
0.15.0 added a
tldfield to each environment.paseo-next-v2is nowpaseo; onlypreviewis stilldot. We appended.dotunconditionally, so:normaliseDomainno longer appends anything. It strips a trailing.dotif you typed one — so every existing invocation and every documented example still works — and otherwise forwards the label untouched, letting bulletin-deploy apply whichever TLD the target env uses. We stay TLD-agnostic rather than duplicating their table, which matters because--envis a passthrough flag this tool deliberately doesn't parse.The PopRules rule (exactly 0 or 2 trailing digits) is unchanged.
Also fixed the identical hardcoded suffix in
e2e/bootstrap.sh --register, which calls bulletin-deploy directly rather than through the CLI.Chain state changed under us — BOOTSTRAP.md updated
The re-genesis invalidated three things the runbook asserted. Old claims are kept and marked as history rather than deleted:
NoStatus. BOOTSTRAP.md predicted this exact failure mode as "the single most likely way this design silently stops working". It happened.Oracle price: 10 PAS / Paying: 11 PAS. The211.1 PASin the error is a balance floor the signer must hold, not the price.//Alice(5GrwvaEF…) does nothing.decentralize-ci.paseois registered and owned by0x35Cdb23fF7fc86E8DCcd577CA309bFEA9c978D20.Verified
npm test54 passed (51 + 3 additive, none removed or weakened, including cases proving--dot my-app.dotand--dot my-appconverge); build clean.npm run test:e2erun for real: 2 passed, two live Paseo deploys, no unhandled errors.Upstream chunking bug paritytech/bulletin-deploy#1233 is not fixed in 0.15.0 — re-verified and noted on the issue.