Add best share analysis page, miner column, and UI improvements

- Best share page: hex + binary hash comparison against network target,
  per-bit coloring showing exactly which bits prevented a valid block,
  toggle between network diff at time of finding vs current diff
- Capture best share hash from ckpool logs with one-time backfill
- Persist network difficulty at time of best share for historical accuracy
- Add miner (worker) column to blocks table via coinbase address matching
- Truncate block hashes in table with full hash on hover
- Increase hashrate chart Y-axis to 7 ticks for better readability
This commit is contained in:
satoshi
2026-05-18 17:19:35 +03:00
parent f1dc0a8a79
commit 1157f3501a
17 changed files with 1499 additions and 81 deletions
+2
View File
@@ -65,6 +65,7 @@ func main() {
agg := state.New(ck, rpc, cfg.PollInterval, log)
agg.Store = blockStore
agg.MempoolBaseURL = cfg.MempoolBaseURL
agg.LogFilePath = cfg.CKPoolLogFile
// Transaction accelerator (prioritisetransaction).
var accSvc *accelerator.Service
@@ -136,6 +137,7 @@ func main() {
go agg.IngestBlockEvents(ctx, tailer.Events)
go agg.IngestAttemptEvents(ctx, tailer.Attempts)
go agg.IngestLatencyEvents(ctx, tailer.Latencies)
go agg.IngestShareEvents(ctx, tailer.Shares)
if accSvc != nil {
go accSvc.Cleanup(ctx)