Replace runtime Sjors template-provider with SRI sv2-tp #2
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
vnprc/hashpool#2
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upgrade the runtime Stratum V2 template provider — the
sv2-tpprocess thatdevenv upruns for local dev and thehashpool-sv2-tpsystemd unit runs in production (testnet4) — from the pinnedv1.0.6to the current maintainedstratum-mining/sv2-tprelease (v1.1.1).Coupled requirement: Bitcoin Core 30.2 -> 31.1
sv2-tp
v1.1.xrequires Bitcoin Core v31.0 or later;v1.0.6is the last sv2-tp release that supports Corev30.2. (Core 31.0's IPC mining interface adopted a newmining.capnpschema — an old client on a new node, or a new client on an old node, fails atInit.makeMining.) The runtime pinsbitcoin-node.nixat Core30.2, so this is a coupled bump:bitcoin-node.nixmust move30.2 -> 31.1in the same change, or template production hard-fails. Do not land the two pins separately.Scope
In scope:
sv2-tp.nix:version1.0.6 -> 1.1.1+ recompute thex86_64-linux-gnuhash.bitcoin-node.nix:version30.2 -> 31.1+ recompute thex86_64-linux-gnuhash (mandatory, coupled).devenv.nix,config/sv2-tp.conf, and the systemd units need no invocation or config-key change — thesv2-tp -datadir -chain -confandbitcoin -m node -ipcbind=unixcommand lines and thesv2-tp.confkeys (sv2bind,ipcconnect,debug,loglevel) are unchanged in v1.1.x. Production carries an operational testnet4 datadir migration (Core 30 -> 31), which is human-gated.Out of scope:
test/integration-tests,roles/tests-integration) — this issue is only about the runtime template provider.aarch64-linux-gnu, darwin staysha256-TODO); dev and prod arex86_64-linux.Note: sv2-tp v1.1.0 renamed
-sv2intervalto-templateinterval, but this has no runtime effect — the runtime never sets that flag (it appears only in the out-of-scope test harness).Validation
nix build .#sv2-tp .#bitcoin-nodewith the new pins/hashes; assert the built versions (sv2-tpv1.1.1,bitcoin-nodev31.1) and that the Core multiprocess layout (bin/bitcoin,bin/bitcoin-cli,libexec/bitcoin-node) is intact.devenv upregtest smoke test:sv2-tplogsConnected to bitcoin-node via IPCwith noInit.makeMining/interfaces.cpperrors, and the pool receives templates through a full mining flow.Dev plan:
hashpool/dev-plans/upgrade-devenv-sv2-tp.mdin thevnprc/notesrepo. Residual risk: R3 (coupled major-version runtime dependency bump affecting the live template provider on both dev and production).Replace remaining Sjors template-provider path with SRI sv2-tpto Replace runtime Sjors template-provider with SRI sv2-tpvnprc-agent referenced this issue2026-08-12 18:07:45 +01:00