Commit 7e798ba
authored
d-miner5(kat): pin throttle re-fire after window elapses (#567)
* d-miner5(fix): gate back_online on a reported outage
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.
* d-miner5(kat): pin hashrate_drop honesty (no fabricated drop without 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.
* d-miner5(kat): pin undelivered-no-throttle (a failed alert must retry, never masquerade as handled)
* d-miner5(kat): pin throttle re-fire after window elapses (stale alert 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.
---------
Co-authored-by: frstrtr <frstrtr@users.noreply.github.com>1 parent d290f75 commit 7e798ba
1 file changed
Lines changed: 17 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
455 | 455 | | |
456 | 456 | | |
457 | 457 | | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
458 | 474 | | |
459 | 475 | | |
460 | 476 | | |
| |||
465 | 481 | | |
466 | 482 | | |
467 | 483 | | |
468 | | - | |
| 484 | + | |
469 | 485 | | |
470 | 486 | | |
471 | 487 | | |
| |||
0 commit comments