test(e2e-real): close release-gate gaps — live auto-tune engine, autotune timer, verb aliases#110
Merged
Conversation
…and verb aliases The release gate drove the offline `tune --bench` search but never the LIVE auto-tune engine (autotune() — sampling the running miner over the HTTP API and live-sweeping prefetch modes), even though that's the code the monthly systemd timer runs unattended on users' rigs and the gate header claimed "EVERY verb". Three coverage gaps, now closed: - Live engine: a new verify phase runs the `autotune` verb against the running, mining worker (gated on a real pool, like the connect/share round-trip; the offline placeholder is an explicit skip) and asserts the live sweep reaches a keep/switch verdict. Bounded fast via AUTOTUNE_* knobs. This also exercises the `tune --now/--short/--long` engine path on real silicon. - Timer install/teardown: the placeholder config now enables `autotune`, so setup installs rigforge-autotune.timer (newly asserted in provision), the #reown check actually fires instead of skipping, and teardown's timer-removal check is real. - Aliases: up/down (=start/stop), -v/--version (=version), -h/--help (=help). Lint + syntax clean; runs on a real Linux rig (see RELEASING.md). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
A pre-release audit of the real-hardware release gate (
tests/e2e-real.sh, per RELEASING.md step 2) against the actual command dispatch found that the gate — despite its header claiming it drives "EVERY verb" — never exercised the live auto-tune engine, the path the monthly systemd timer runs unattended on users' rigs.autotune()is a distinct code path from the offlinetune --benchsearch the gate already runs: it samples the running miner over the HTTP API and live-sweeps prefetch modes against it. The stubbed suites can't read a live API hashrate, so this is exactly what the real-hardware gate exists to prove — and it had zero coverage.Gaps closed
autotuneverb /tune --now/--short/--long) never invokedverifyphase runsautotuneagainst the running, mining worker and asserts the live sweep reaches a keep/switch verdictautotune, so setup installsrigforge-autotune.timer(newly asserted inprovision), the#reowncheck actually fires, and teardown's removal check becomes meaningfulup/down,-v/--version,-h/--helpnot exercisedNotes
203.0.113.xplaceholder is an explicit skip. Runtime is bounded byAUTOTUNE_*knobs (2 short modes, brief warmup).make lint(shellcheck + shfmt) andbash -nare clean. The gate itself is Linux-/root-/real-hardware-only by design, so the new assertions are validated by runningtests/e2e-real.sh verifyon the release rig (the intended review step before merge).🤖 Generated with Claude Code