Skip to content

node: Jarek confirms chain snapshots, as an operator and not a pin - #218

Merged
MendeMatthias merged 2 commits into
mainfrom
claude/snapshot-operator-jarek
Oct 17, 2026
Merged

MendeMatthias merged 2 commits into
mainfrom
claude/snapshot-operator-jarek

Conversation

@MendeMatthias

Copy link
Copy Markdown
Owner

Adds Jarek (Byron Bay, btxchain/btx#239) to crates/btx-core/snapshot-operators.json with his validator's key 02d12c32…fe030.

What it changes. A statement Jarek and the 3060 both signed now counts as two operators, so it is confirmed and new nodes start from it instead of the compiled pair at 245,300. His cuts land on every multiple of 1,000, so a new node would start at most about a day from the tip.

What it does not change. His key is not added to mirror_pins / BTX_TRUSTED_ATTESTATION_PUBKEYS: it has no authority over blocks, and trim_to_pinned keeps his signature away from the engine. The AuthorityNamespace does not move.

Evidence

  • At 251,000 the two statements are the same 229 bytes, and the two files are the same bytes (sha256 3d539a87…).
  • confirmed_snapshot::tests::mende_and_jarek_confirm_251000_on_mainnet runs on the two real mainnet manifests (new fixtures). Each alone is refused as one operator. Merged, they confirm as ["Mende", "Jarek"], and only the 3060's signature reaches the engine.
  • I rehearsed it with EasyBTX's local stand-in (snapshot-rendezvous-local.mjs) on the real 251,000 manifests and file. After the pickup job ran, latest served 251,000 confirmed by Mende and Jarek. attested_snapshot::prepare_confirmed downloaded the pair, checked it, and handed 1 of 2 signatures. That last check was a temporary test and is not committed.

Tests: cargo test --lib in btx-core: 1203 passed. apps/node vitest: 280 passed. cargo check in src-tauri could not run in this fresh worktree, because the git-ignored resources/node-pkg is not staged there.

The website side, with the same list and an hourly job that picks up his cuts as co-signatures only, is MendeMatthias/EasyBTX (linked below). Per check-snapshot-operators.mjs, it merges after the release that carries this list. The release is stacked on this PR.

🤖 Generated with Claude Code

Adds Jarek (Byron Bay, btxchain/btx#239) to the snapshot operator list with
his validator's key 02d12c32. A statement he and the 3060 both signed counts
as confirmed, so a new node starts from it instead of block 245,300. His key
is not added to the mirrors' pins: it confirms snapshots, has no authority
over blocks, and trim_to_pinned keeps it away from the engine.

The test uses the real mainnet manifests both signed at 251,000 (the same
229-byte statement, the same file): each alone is one operator, merged they
confirm as Mende and Jarek, and only the 3060's signature reaches the engine.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@MendeMatthias
MendeMatthias merged commit cfa2f40 into main Oct 17, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant