Protocol versus reporting
Treat mining-job transport and account-facing reporting as separate interfaces.
Worker mapping
Keep the relationship between internal workers and pool-side identities explicit.
Submission context
Document counter definitions, time windows, resets, and acknowledgment freshness.
Start by identifying the interface
The Stratum V2 mining specification describes channels, jobs, and share submission messages. A pool reporting API has a different role and must be verified separately for the provider you use. Read the Stratum V2 mining protocol specification.
Keep connection observations, worker telemetry, and account information in separate resources. A connected socket is not the same observation as recently accepted work, and an operational worker view is not a financial settlement record. Your labels should preserve those distinctions without requiring a reader to know the implementation details.
Give submissions and identities a history
Record which pool-side name corresponds to each internal worker, including any deliberate grouping. Preserve mapping changes so old observations remain interpretable. For submission counters, document the source's definitions and whether the counter is cumulative, windowed, or reset during reconnection.
Make endpoint transitions and collector delays visible. A mismatch between local and pool observations may reflect different windows or reporting lag. Align those conditions before interpreting the discrepancy, and retain enough detail to investigate rather than reducing everything to a single unexplained health score.
A public sample, not a pool account
The website's JSON fixtures are intentionally detached from private provider accounts. They contain fictional labels and deterministic observations for testing. A real adapter belongs behind your own authorized access boundary, with source-specific limits, protected credentials, and a clear caching policy.
Use the full guide for a practical pool-observation schema and incident rehearsal. The analytics guide explains how to turn those observations into notifications without implying more certainty than the data supports.


