Repository navigation
fix(init-bedrock): validate node type and survive the decommissioned snapshot indexes - #93
Open
Alicepoltora wants to merge 2 commits into
Open
Alicepoltora wants to merge 2 commits into
Alicepoltora wants to merge 2 commits into
Conversation
- Reject unknown NODE_TYPE values early. Previously a typo such as NODE_TYPE=ful silently fell through and synced from genesis as a full node instead of failing. - Require BEDROCK_DATADIR to be set with a clear error instead of failing later inside extract with an empty datadir. - Remove the unused TORRENTS_DIR and BEDROCK_TMP_PATH variables and initialize BEDROCK_TAR_DOWNLOAD so the download block never reads an unset variable.
The hosted Gelato snapshot indexes no longer resolve, so NODE_TYPE=archive died with a curl resolver error and no guidance (inkonchain#68, inkonchain#87). - split index-fetch failures from "no matching file" so the message says what actually happened, and point at NODE_TYPE=full or a custom snapshot - honour an operator-provided BEDROCK_TAR_DOWNLOAD in archive mode instead of overwriting it, and document it in .env.example - fail clearly when <url>.sha256 is missing, and verify the checksum against the archive basename so an override URL verifies the same way
This was referenced Oct 5, 2026
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.
Three problems in
scripts/init-bedrock.sh, all reachable from a normal first run:1. A typo in
NODE_TYPEsilently became afullnode.NODE_TYPE=fulfell through both branches and synced from genesis without telling anyone. Now it fails fast:2.
NODE_TYPE=archivedies with a curl resolver error. The hosted indexes (ink.snapshots.gelato.cloud,ink.t.snapshots.gelato.cloud) no longer resolve — reported in #68 and #87. The failure was also misattributed (curl's NXDOMAIN was swallowed intoNo matching snapshot files found in index). Fetch and parse failures are now separated, and the message tells the operator what to do:3. There was no way to supply your own snapshot.
BEDROCK_TAR_DOWNLOADfrom.envwas unconditionally overwritten in archive mode. It is now honoured, documented in.env.example, and still fully verified: a missing<url>.sha256fails with a clear message, andverify_sha256_checksumis given the archive basename so an override URL verifies exactly like the default one.Testing (run locally against the real script):
bash -nclean.NODE_TYPE=ful-> exits 1 with the unsupported-node-type message.BEDROCK_TAR_DOWNLOADserved overpython3 -m http.server-> fetch, checksum verify, extract, JWT and initialized flag all succeed (exit 0)..sha256->SHA256 verification failed, exit 1.NODE_TYPE=fullwith no snapshot URL -> skips the download as before.Pairs with #94 (README marks the indexes decommissioned). Doc-only, so they can merge in either order.