Skip to content

d-miner5(kat): pin throttle re-fire after window elapses - #567

Merged
frstrtr merged 4 commits into
masterfrom
dashboard/d-miner5-throttle-refire-kat
Jun 27, 2026
Merged

d-miner5(kat): pin throttle re-fire after window elapses#567
frstrtr merged 4 commits into
masterfrom
dashboard/d-miner5-throttle-refire-kat

Conversation

@frstrtr

@frstrtr frstrtr commented Jun 27, 2026

Copy link
Copy Markdown
Owner

Safe-additive KAT. Completes the throttle-honesty triad:

Without #8c, a single stale alert could masquerade as permanent coverage of an ongoing outage: the miner is warned once and never again though the rig is still down. Guards the < window bound in recently_sent() against a >=/off-by-one regression.

selftest 15/15 green. Web-only / scripts-only, non-consensus.

frstrtr and others added 4 commits June 26, 2026 23:53
evaluate() emitted a back_online event whenever the prior sample was
offline, regardless of whether an OFFLINE alert had actually fired. A
sub-threshold blip (dark < offline_min) never fires OFFLINE, so the
recovery edge would tell the miner they are back from an outage they
were never told about and that never met the alert threshold -- a
false-positive notification.

Gate the back_online edge on offline_fired so a recovery is only
reported when the outage itself was reported. Add KAT scenario 6b
(blip-then-recover stays silent); selftest 10/10.
…observed peak)

Extends the D-MINER.5 notify-engine selftest to regression-lock the
HASHRATE_DROP edge cases, completing the per-kind honesty sweep
(offline/back_online/daily-summary already pinned):

  6c first-online (peak==0 guard) must NEVER fire a drop -- a drop with
     no observed prior peak is a fabricated alert.
  6d a real halving vs the observed peak fires exactly one drop.
  6e a dark (hashrate==0) sample is an OFFLINE concern, never a -100%
     drop -- drop is evaluated in the online branch only.

Test-only / SAFE-ADDITIVE: pins existing honest behavior, no engine
logic change. Selftest 13/13.
… must never masquerade as permanent coverage)

Completes the throttle-honesty triad with #8 (within-window suppress) and
#8b/#563 (undelivered retries): once the throttle window has ELAPSED, a
still-true condition (e.g. an ongoing outage) must re-fire. Guards the
`< window` bound in recently_sent() against a >=/off-by-one regression that
would swallow every later real alert and warn the miner only once though
the rig is still down. selftest 15/15.
@frstrtr
frstrtr merged commit 7e798ba into master Jun 27, 2026
21 checks passed
@frstrtr
frstrtr deleted the dashboard/d-miner5-throttle-refire-kat branch June 27, 2026 10:34
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