Skip to content

PR-0 S1: parameterize ltc share path on core::CoinParams - #92

Merged
frstrtr merged 1 commit into
masterfrom
dash/pr0-foundation-s1
Jun 14, 2026
Merged

PR-0 S1: parameterize ltc share path on core::CoinParams#92
frstrtr merged 1 commit into
masterfrom
dash/pr0-foundation-s1

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 14, 2026

Copy link
Copy Markdown
Owner

PR-0 Slice S1 — ltc CoinParams parameterization

First of the 5-stage PR-0 foundation slice. Parameterizes the ltc share-validation path on the shared core::CoinParams (the shared CoinParams core already landed on master); this slice is the ltc residual.

Scope / per-coin isolation

Single GPG-signed commit (133ae6bc). Coin-layer changes are ltc-only — no btc/dash/doge/dgb impl touched. Diff surface:

  • src/impl/ltc/{node.cpp,node.hpp,params.hpp,share_check.hpp,share_tracker.hpp} — ltc parameterization
  • src/c2pool/c2pool_refactored.cpp — shared WorkView consumer seam (5 lines)
  • test/{test_hash_link.cpp,test_threading.cpp} — arity follow-ons for the canonical 60%-switch rule in share_check.hpp step 2

8 files, +279/-177.

Verification

Linux x86_64: build clean, full ctest 100% passed, 0 failed out of 590 (live tests requiring testnet daemon skipped — VM202 stopped). Touched suites (HashLink / VerifyShareThreading / ComputeShareTarget) all green.

Notes

  • share_check.hpp intentionally does NOT re-add should_punish_version (removed deliberately upstream); fix is the canonical 60% switch rule.
  • DRAFT — for ltc-doge review. Do NOT merge; operator push-approval required.

S1 slice of the PR-0 foundation rebase: hand-ported the ltc consumer
parameterization onto current master. The dash-spv-embedded source
predates master's share_tracker rename (DensePPLNSRing->Window) and the
WorkView/CoinNode seam, so this is authored onto master, not cherry-picked.

- params.hpp: ltc::make_coin_params factory (new)
- node.hpp/node.cpp: m_coin_params member + ctors + coin_params() accessor;
  rename DensePPLNSRing->DensePPLNSWindow static-member defs to match master
- share_check.hpp: PoolConfig statics -> coin_params lookups; 3-arg
  pubkey_hash_to_address, 2-arg compute_ref_hash_for_work, coin_params-d
  create_local_share
- c2pool_refactored.cpp: pass coin_params() at the 3 ltc call sites;
  master WorkView/CoinNode seam (set_coin_node) left intact
@frstrtr
frstrtr marked this pull request as ready for review June 14, 2026 07:06
@frstrtr
frstrtr merged commit 912a06e into master Jun 14, 2026
16 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