Skip to content

dash(S8): main_dash --stratum run-path caller — StratumServer <-> DASHWorkSource standup#715

Merged
frstrtr merged 1 commit into
masterfrom
dash/s8-main-stratum-standup
Jul 16, 2026
Merged

dash(S8): main_dash --stratum run-path caller — StratumServer <-> DASHWorkSource standup#715
frstrtr merged 1 commit into
masterfrom
dash/s8-main-stratum-standup

Conversation

@frstrtr

@frstrtr frstrtr commented Jul 15, 2026

Copy link
Copy Markdown
Owner

What

The production run-path caller for the DASHWorkSource IWorkSource seam. #706 (4a skeleton + 4b bodies) and the subscribe->notify->submit KATs (#630-634) built the work source and its binding but had no caller — a real main that constructs it and binds a core::StratumServer. Closes the S8 "no run-path caller" gap.

Change (2 files, +110)

  • main_dash.cpp: --stratum [HOST:]PORT argv (SSOT parse_listen) threaded into run_node; node_coin_state -> DASHWorkSource -> StratumServer standup; won-block dispatch via the existing dashd-RPC submitblock arm (embedded P2P relay leg stays S8; UNARMED path logs loudly, never a silent drop); safe destruction ordering.
  • src/c2pool/CMakeLists.txt: link dash_stratum into c2pool-dash — without it the exe failed to link (undefined DASHWorkSource ctor).

Verified (Linux x86_64)

c2pool-dash links clean; --run --testnet --stratum 127.0.0.1:13333 stands up the acceptor (DASHWorkSource constructed, StratumServer bound, clean stop on shutdown). subscribe->notify->submit is KAT-covered at the work_source seam (#630-634).

Posture

@frstrtr
frstrtr deleted the branch master July 16, 2026 10:45
@frstrtr frstrtr closed this Jul 16, 2026
…HWorkSource standup

Closes the S8 "no run-path caller" gap: the DASHWorkSource IWorkSource
seam (#706, 4a skeleton + 4b bodies) and the subscribe->notify->submit
KATs (#630-634) had no production caller — a real main that constructs
the work source and binds a core::StratumServer to it. This is that
caller.

- main_dash.cpp: --stratum [HOST:]PORT argv (SSOT parse_listen); threaded
  into run_node; node_coin_state -> DASHWorkSource -> StratumServer
  standup; won-block dispatch via the EXISTING dashd-RPC submitblock arm
  (rpc->submit_block_hex) — embedded P2P relay leg stays S8; UNARMED path
  logs loudly, never a silent drop. Destruction order: stratum_server
  declared before the work source it references; explicit reset() after
  ioc.run(). dashd-RPC fallback RETAINED (never removed).
- src/c2pool/CMakeLists.txt: link dash_stratum into c2pool-dash (the 4b
  work_source.cpp bodies) — without it the executable failed to link
  (undefined DASHWorkSource ctor). Build-glue for the caller.

Verified Linux x86_64: c2pool-dash links clean; --run --stratum
127.0.0.1:13333 stands up the acceptor (DASHWorkSource constructed,
StratumServer bound, clean stop). subscribe->notify->submit binding is
KAT-covered at the work_source seam (#630-634). No other-coin / shared-
base edit; per-coin isolation held.
@frstrtr frstrtr reopened this Jul 16, 2026
@frstrtr
frstrtr changed the base branch from dash/s8-stratum-work-source to master July 16, 2026 11:39
@frstrtr
frstrtr force-pushed the dash/s8-main-stratum-standup branch from 86020b7 to f67ef1b Compare July 16, 2026 11:39
@frstrtr
frstrtr marked this pull request as ready for review July 16, 2026 16:34
@frstrtr
frstrtr merged commit 4c4815f into master Jul 16, 2026
37 of 38 checks passed
@frstrtr
frstrtr deleted the dash/s8-main-stratum-standup branch July 16, 2026 16:35
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