Repository navigation
test: capture timer refresh timings during thermal apply (#546) - #547
Conversation
|
Ready for review PR #547 completes #546's ruled diagnostic harness work on All eight GitHub checks pass. Current-head job The run observed normal short refreshes rather than the historical slowdown. Queue routing does not guarantee the original affected fixture, and unrelated hardware phases and long-duration stress were not exercised because this PR adds bounded control diagnostics. #540 / draft #541 remain open for failure-mechanism attribution and the production fix. This draft is ready for the separate reviewer session; no merge was performed. |
|
{ |
|
adversarial-review: RETURN at 0bbedc7, round 1, by the pithead-reviewer reviewer (a fresh session that did not produce this head; gpt-6.1-sol). Acceptance requires timer-driven diagnostics in the affected workload through the supported queue, with verified baseline and restoration. Current-head checks and bench job 1884 pass, but the candidate/affected-workload pairing remains unresolved, and three linked claim sources are inaccessible to this reviewer. Evidence
Findings
|
|
RETURN follow-up: the operator retained affected-workload acceptance and authorized one discovered The approved private linked-history context has been refreshed for the local reviewer. No branch changes were needed. Readiness remains withdrawn until the paired job's complete evidence is inspected; the subsequent Ready for review comment will answer each RETURN finding. The CLI discovery display omission is filed separately as bench-ci#996 and does not prevent the authorized phases from being accepted. |
|
Ready for review
Since RETURN, the branch adds one docs-only commit, Job 1888 observed 21 completed refreshes at 1.463–1.606 seconds and the changed ceiling in a fresh summary after 15 seconds. No historical slow pass was captured; #540 / draft #541 remain open for root-cause attribution. Unrelated hardware phases and long-duration stress were not run because #546 asks for bounded workload diagnostics. bench-ci job 1879@049f837301edb9f2170a8be2e939c82145b1778f · rigforge · tier4-e2e
bench-ci job 1884@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
bench-ci job 1888@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
|
|
Ready for review
Since RETURN, the branch gained the one-line filter correction plus a merge of The requested diagnostic is covered by native red/green tests, a completed aggregate, green Actions and a restored real-workload run on this head. Historical slow-refresh recurrence/attribution and unrelated hardware phases or long-duration stress were not established; #540 and draft #541 remain open. The PR is ready for the independent head review required before merge. bench-ci job 1879@049f837301edb9f2170a8be2e939c82145b1778f · rigforge · tier4-e2e
bench-ci job 1884@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
bench-ci job 1888@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
bench-ci job 1903@8941031b05d62050acb6d4fd1b4e7369920a504f · rigforge · tier4-e2e
|
|
adversarial-review: RETURN at {
"verdict": "RETURN",
"summary": "RETURN at 8941031b05d62050acb6d4fd1b4e7369920a504f: #546 requires real timer-driven diagnostics during mining and thermal apply, with reservation, baseline verification and restoration; the current-head evidence satisfies that diagnostic scope and closes the earlier findings. The diff still reuses an unlinked privileged response pathname and reports diagnostic success after export failure; both paths were reproduced with hardware-free probes.",
"evidence": [
"pwd \u2014 confirmed the supplied local checkout; local path withheld.",
"git status --short \u2014 clean at start and at final confirmation.",
"git rev-parse HEAD \u2014 8941031b05d62050acb6d4fd1b4e7369920a504f.",
"git branch --show-current \u2014 detached reviewer checkout.",
"cat graphify/SKILL.md \u2014 read the graph-first review workflow; graph output kept in scratch storage.",
"cat ponytail-review/SKILL.md \u2014 applied the requested diff simplification pass; no unnecessary dependency, abstraction, configuration knob or scaffolding found.",
"cat ponytail/SKILL.md \u2014 applied the minimum-change rules.",
"test -f graphify-out/graph.json && graphify query <review-question> \u2014 exit 1: graph absent; no query ran.",
"cat AGENTS.md CONTRIBUTING.md Makefile \u2014 read develop-base, portability, hardware reservation, topology and singular budget rules.",
"gh pr view 547 --repo p2pool-starter-stack/rigforge --json number,title,body,author,comments,url,state,updatedAt,headRefOid,baseRefName,headRefName,files,commits,reviews \u2014 read the complete body, all comments, earlier RETURNs and latest Ready for review; develop base and matching head.",
"gh issue view 546 --repo p2pool-starter-stack/rigforge --json number,title,body,author,comments,url,state,updatedAt \u2014 acceptance is real timer-driven helper timings and service/timer observations during authenticated thermal apply in the approved mining workload, using reservation, baseline verification and restoration. Historical mechanism remains with #540/#541.",
"cat <authorized-private-question> \u2014 read the operator-approved connect/control pairing; no private source text published.",
"python3 detect-topology.py --help \u2014 failed because this detector treats --help as a filename; corrected invocation used below.",
"git diff origin/develop...HEAD --stat \u2014 nine changed files, 365 insertions and six deletions.",
"git diff origin/develop...HEAD --name-only \u2014 only harness, unit-test and test-documentation files; no production, version, changelog, dependency or budget change.",
"command -v graphify \u2014 installed CLI available.",
"graphify --help \u2014 read supported scratch-output and query options.",
"gh issue view 540 --repo p2pool-starter-stack/rigforge --json number,title,body,author,comments,url,state,updatedAt \u2014 read direct linked producer-defect history; cause attribution remains open.",
"gh pr view 541 --repo p2pool-starter-stack/rigforge --json number,title,body,author,comments,url,state,updatedAt,headRefOid,files \u2014 read direct linked production hypothesis and all comments; no companion fix acceptance inferred from #547.",
"gh issue view 549 --repo p2pool-starter-stack/rigforge --json number,title,body,author,comments,url,state,updatedAt \u2014 read the separately filed pre-existing Apple Bash aggregate fixture defect.",
"Python read of authorized linked snapshots and runner-prefetched context \u2014 read bench-ci#760/#867/#979/#996 with provenance, states, timestamps and trusted authorship; no required source UNAVAILABLE, no recursive job tracing or different credential used.",
"gh api repos/p2pool-starter-stack/rigforge/issues/546/comments --paginate \u2014 all claim/ruling comments are pithead-developer or pithead-architect Bot identities.",
"gh api repos/p2pool-starter-stack/rigforge/pulls/547/comments --paginate \u2014 zero inline review comments.",
"gh api repos/p2pool-starter-stack/rigforge/pulls/547/reviews --paginate \u2014 zero review bodies; earlier verdicts were issue comments and were read.",
"graphify extract . --code-only --out <private-scratch> --max-workers 2 \u2014 exit 0; 745 nodes, 1,483 edges, 52 communities. Non-code files excluded; 12 files yielded no nodes. Reviewed checkout untouched.",
"graphify query <control/profile/caller-question> --graph <scratch-graph> --budget 1500 \u2014 exit 0; traced phase_control, lifecycle and suite relationships, then read their source.",
"git diff origin/develop...HEAD -- <all-nine-changed-files> \u2014 reviewed every changed hunk; no relaxed/deleted assertion, hardcoded success, TODO substitute, silent scope reduction or production fix disguised as diagnostics. Two newly reproduced failure paths are findings below.",
"nl -ba <new-regression-modules/control-phase>; sed <harness/production-refresh/source ranges>; cat systemd/rigforge-api-refresh.service.template systemd/rigforge-api-refresh.timer.template \u2014 traced authentication, timer dispatch, helper wrappers, atomic publication, cleanup, test wiring and retained service policy.",
"rg -n <refresh-helper-and-test-wiring-patterns> rigforge.sh tests/run.sh \u2014 confirmed both new modules are wired into the dependency-free suite.",
"rg -n refresh_profile_(start|state|finish)|_control_curl tests \u2014 reviewed 35 caller references, including conditional cleanup contexts.",
"gh pr checks 547 --repo p2pool-starter-stack/rigforge --json name,state,bucket,link,workflow \u2014 eight SUCCESS checks at both initial and final inspection; none pending, failed or skipped.",
"gh run view 36729138088 --repo p2pool-starter-stack/rigforge --json headSha,conclusion,event,jobs \u2014 success on 8941031b05d62050acb6d4fd1b4e7369920a504f; all six CI jobs and every step succeeded, including suite, Docker e2e and coverage.",
"gh run view 36729138053 --repo p2pool-starter-stack/rigforge --json headSha,conclusion,event,jobs \u2014 success on 8941031b05d62050acb6d4fd1b4e7369920a504f; secret scan and workflow audit, including every step, succeeded.",
"source ~/.config/bench-ci/env \u2014 used the authorized environment for read-only runner commands.",
"bench-ci --help \u2014 read evidence/status/log/artifact commands; no tier submitted or run manually.",
"bench-ci evidence 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 exact match to the PR block: completed success, exit 0, 4 pass/0 fail/0 skip, baseline verified and rig restored. Historical evidence; not substituted for current-head proof.",
"bench-ci status 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 quoted commit and all seven lifecycle steps confirmed successful; full private status read.",
"bench-ci log 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 read the complete log (1605 lines); tested checkout, control and restoration confirmed; all failure-word matches were zero-failure summaries.",
"bench-ci artifacts 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 listed the control artifact.",
"bench-ci artifacts 1879@049f837301edb9f2170a8be2e939c82145b1778f \"106125 e2e-pithead-control.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1879@049f837301edb9f2170a8be2e939c82145b1778f e2e-pithead-control.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (106125 bytes).",
"bench-ci evidence 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 exact match to the PR block: completed success, exit 0, 4 pass/0 fail/0 skip, baseline verified and rig restored. Historical evidence; not substituted for current-head proof.",
"bench-ci status 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 quoted commit and all seven lifecycle steps confirmed successful; full private status read.",
"bench-ci log 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 read the complete log (1605 lines); tested checkout, control and restoration confirmed; all failure-word matches were zero-failure summaries.",
"bench-ci artifacts 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 listed the control artifact.",
"bench-ci artifacts 1884@0bbedc773adf073c43d6758032bcff437f57f18d \"106331 e2e-pithead-control.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1884@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-control.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (106331 bytes).",
"bench-ci evidence 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 exact match to the PR block: completed success, exit 0, 7 pass/0 fail/0 skip, baseline verified and rig restored. Historical evidence; not substituted for current-head proof.",
"bench-ci status 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 quoted commit and all seven lifecycle steps confirmed successful; full private status read.",
"bench-ci log 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 read the complete log (1615 lines); tested checkout, control and restoration confirmed; all failure-word matches were zero-failure summaries.",
"bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 listed both connect/control artifacts.",
"bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d \"342 e2e-pithead-connect.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-connect.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (342 bytes).",
"bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d \"106958 e2e-pithead-control.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-control.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (106958 bytes).",
"bench-ci evidence 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 exact match to the PR block: completed success, exit 0, 7 pass/0 fail/0 skip, baseline verified and rig restored. Current-head proof.",
"bench-ci status 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 quoted commit and all seven lifecycle steps confirmed successful; full private status read.",
"bench-ci log 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 read the complete log (1614 lines); tested checkout, control and restoration confirmed; all failure-word matches were zero-failure summaries.",
"bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 listed both connect/control artifacts.",
"bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \"342 e2e-pithead-connect.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f e2e-pithead-connect.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (342 bytes).",
"bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \"105675 e2e-pithead-control.log\" --out <private-file> \u2014 reviewer parser initially included the size column; 404 not_found. Correct named fetch follows; this was not a bench fault.",
"bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f e2e-pithead-control.log --out <private-file> \u2014 exit 0; downloaded and read the complete artifact (105675 bytes).",
"Python full-log/artifact analysis \u2014 each quoted control artifact contains 21 successful refreshes, 714 strict-schema events paired into 357 durations, no unmatched event or nonzero return, and 61 state observations. Jobs 1888 and 1903 establish accepted-share mining before control; control-only jobs do not. Current-head timing/freshness claims match; no historical slow-refresh attribution established.",
"bench-ci tiers --repo rigforge --commit 8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 discovery succeeds but CLI hides phase choices, as reported in linked bench-ci#996. Current-head accepted connect/control options and executed phases independently confirmed in job 1903.",
"export PATH=/usr/bin:/bin:/usr/sbin:/sbin:$PATH; bash tests/test-refresh-profile.sh \u2014 native Apple Bash/sed/date regression PASS, exit 0.",
"export PATH=/usr/bin:/bin:/usr/sbin:/sbin:$PATH; bash tests/test-refresh-window-control.sh \u2014 native Apple Bash/sed/date control regression PASS, exit 0.",
"git worktree add --detach <head-scratch> HEAD \u2014 clean scratch checkout created.",
"git worktree add --detach <without-fix-scratch> HEAD \u2014 independent scratch checkout created.",
"git worktree add --detach <native-red-scratch> HEAD \u2014 independent scratch checkout created.",
"git merge-base origin/develop HEAD \u2014 selected the base for implementation-only removal.",
"git restore --source=<merge-base> -- tests/e2e-pithead.sh tests/e2e-pithead-control.sh tests/README.md in scratch; unlink the two added harness helpers there \u2014 removed non-test implementation while preserving the new tests; reviewed branch untouched.",
"git restore --source=d086161520bbc613f442c72482c406d36d9c3bad -- tests/e2e-refresh-window.sh in native-red scratch \u2014 restored only the broken exporter.",
"Native bash tests/test-refresh-profile.sh in native-red scratch \u2014 expected exit 1 at the exported helper-event assertion. Current-head native execution above passes, closing round-2 portability finding.",
"Native bash tests/test-refresh-profile.sh in without-fix scratch \u2014 expected exit 127; preserved new regression rejects absent implementation.",
"Native bash tests/test-refresh-window-control.sh in without-fix scratch \u2014 expected exit 1; preserved new regression rejects old control behavior.",
"command -v bash sed date shellcheck shfmt timeout gitleaks; bash --version; shellcheck --version; shfmt --version \u2014 initial PATH had GNU sed, Bash 5.3.15, ShellCheck 0.11.0 and shfmt 3.13.1. Explicit native tools and pinned formatter used for completed checks.",
"FILE_BUDGET_REQUIRE_BASE=1 bash scripts/lint-file-budget.sh in clean head scratch \u2014 PASS; every over-target file has a ceiling, no growth beyond it, budget monotonic.",
"make lint in clean head scratch with shfmt 3.13.1 \u2014 exit 2 from formatter-version differences; not PASS. Topology, budget and ShellCheck completed; pinned rerun follows.",
"gh release download v3.14.1 --repo mvdan/sh --pattern shfmt_v3.14.1_darwin_arm64 --dir <private-tool-dir> \u2014 exit 0; obtained repository-pinned formatter without altering the checkout.",
"<downloaded-shfmt> --version \u2014 v3.14.1.",
"make lint in clean head scratch with ShellCheck 0.11.0/shfmt 3.14.1 \u2014 PASS, exit 0; topology controls/gate, file-budget controls/gate, whole-tree ShellCheck and formatting all completed.",
"PATH=<scratch-native-tools>:/usr/bin:/bin:/usr/sbin:/sbin:$PATH timeout 2700 make test-suite in clean head scratch \u2014 completed PASS, exit 0; installed Bash 5.3.15 with native sed/date, final summary 2,305 passed and zero failed.",
"/bin/bash <base-fixture-extraction> \u2014 reproduced #549 on unchanged develop fixture: runtime command-substitution syntax error and unbound variable despite exit 0; explicitly not PASS.",
"/opt/homebrew/bin/bash <same-base-fixture-extraction> \u2014 fixture executes without the native runtime parser error. New modules independently pass under native Bash; #549 is pre-existing and out of this diff.",
"git diff --check \u2014 PASS.",
"gitleaks version \u2014 8.30.1.",
"gitleaks git --log-opts=<merge-base>..HEAD --redact --no-banner --report-path <private-file> \u2014 PASS, exit 0; four PR commits scanned, no leaks.",
"bash <hardware-free-export-failure-probe> \u2014 expected regression exit 1: stubbed sed returns 7, but refresh_profile_finish returns 0 with no exported helper records. Finding at tests/e2e-refresh-window.sh:43.",
"bash <same-export-probe-with-scratch-guard> \u2014 PASS, exit 0: adding || rc=1 makes refresh_profile_finish return 1 while cleanup still runs. Branch not edited.",
"TEST_WINDOW_DIR=<private-case> bash <hardware-free-response-reuse-probe> fresh \u2014 expected regression exit 1: substituting the deleted response pathname overwrites a sentinel through the thermal request. Finding at tests/e2e-pithead-control.sh:51.",
"curl -sS -o <scratch-output-symlink> file://<scratch-input> \u2014 exit 0; native curl follows the output symlink and changes the sentinel, independently confirming the fixture writer behavior. No network or rig involved.",
"TEST_WINDOW_DIR=<private-case> bash <same-response-probe-with-fresh-mktemp> fresh \u2014 PASS, exit 0; fresh allocation before thermal POST preserves the sentinel. Branch not edited.",
"python3 detect-topology.py --self-test \u2014 PASS: 14 positive controls, 11 negatives, 14 scrub round-trips.",
"python3 detect-topology.py <PR-547-body/comments and issue-546-body/comments> \u2014 clean, exit 0; repeated with complete review/inline surfaces after fetching them, also clean.",
"python3 detect-topology.py <direct-linked-540/541 material> \u2014 clean, exit 0.",
"python3 detect-topology.py <direct-linked-549 material> \u2014 clean, exit 0.",
"gh pr view 547 --repo p2pool-starter-stack/rigforge --json headRefOid,updatedAt \u2014 final head remains 8941031b05d62050acb6d4fd1b4e7369920a504f.",
"git status --porcelain on reviewed checkout and clean head scratch \u2014 both empty after verification; no branch edit, local Docker, manual rig work, bench submission or merge."
],
"findings": [
{
"severity": "return",
"where": "tests/e2e-refresh-window.sh:43",
"what": "The exporter failure is swallowed. refresh_profile_finish runs in conditional contexts, so an unchecked sed failure does not abort it; the later success grep reads the unfiltered journal. A hardware-free probe with sed returning 7 produced finish rc=0 and no exported helper records. Propagate export failure (the scratch || rc=1 fix returns failure while preserving cleanup) and add that failure-path regression."
},
{
"severity": "return",
"where": "tests/e2e-pithead-control.sh:51",
"what": "The thermal POST reuses resp after line 32 unlinks its securely allocated file, leaving the pathname available for substitution during the intervening wait. A hardware-free substituted-path probe overwrote a sentinel, and native curl independently followed the same output symlink. This root-run harness must retain its secured response file or allocate a fresh mktemp before the thermal POST; the latter made the probe pass. Add a regression for replacement of the removed pathname."
},
{
"severity": "note",
"where": "tests/test-api-refresh-liveness.sh:44 / rigforge#549",
"what": "The unchanged develop fixture reproduces the native Bash 3.2 runtime parser failure and misleading zero exit. It is already tracked in #549; no native aggregate PASS is inferred. Both new modules pass natively and the completed Bash 5.3/native-sed/date aggregate passes."
}
]
} |
|
adversarial-review: RETURN at 8941031, round 3, by the pithead-reviewer reviewer (a fresh session that did not produce this head; gpt-6.1-sol). RETURN at 8941031: the current-head evidence satisfies #546’s diagnostic scope and closes the earlier findings. Two reproduced failure paths remain: the thermal request reuses a deleted privileged response pathname, and diagnostic export failure still reports success. Evidence
Findings
|
|
Ready for review Current head:
All eight required current-head Actions checks pass ( bench-ci job 1879@049f837301edb9f2170a8be2e939c82145b1778f · rigforge · tier4-e2e
bench-ci job 1884@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
bench-ci job 1888@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
bench-ci job 1903@8941031b05d62050acb6d4fd1b4e7369920a504f · rigforge · tier4-e2e
bench-ci job 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a · rigforge · tier4-e2e
|
|
adversarial-review: PASS at {
"verdict": "PASS",
"summary": "PASS at 541b48f404693e6ada262a1cfebc8809af1e7e5a: #546 requires real timer-driven subsecond helper timings and timer/service state around authenticated thermal apply in the approved connect/control mining workload, with reservation, verified baseline and restoration. The earlier findings now have red/green proof; current-head Actions, the 2,305-assertion local suite and job 1911 hold. This approves the diagnostic harness; historical slow-refresh attribution and the production fix remain open in #540/#541.",
"evidence": [
"pwd \u2014 reviewed the runner checkout locally; absolute path withheld.",
"git status --short --branch (repeated) \u2014 clean detached checkout; reviewed files unchanged.",
"cat graphify/SKILL.md (including its extraction instructions) \u2014 read and applied graphify; source location withheld.",
"cat ponytail/SKILL.md \u2014 read the minimal-change review rules; source location withheld.",
"cat ponytail-review/SKILL.md \u2014 applied the requested diff simplification pass: lean already; no dependency, speculative abstraction, configuration knob or unnecessary machinery to cut.",
"rg --files -g AGENTS.md -g CONTRIBUTING.md -g graph.json -g Makefile \u2014 found repository instructions and targets; no existing code graph.",
"cat AGENTS.md CONTRIBUTING.md \u2014 read portability, develop-base, release boundaries, verification and singular file-budget rules.",
"git rev-parse HEAD \u2014 541b48f404693e6ada262a1cfebc8809af1e7e5a, matching the PR head.",
"git diff --stat origin/develop...HEAD \u2014 nine harness/test/documentation files; 417 additions and six deletions; no production, version, dependency or budget changes.",
"gh pr view 547 --repo p2pool-starter-stack/rigforge --json title,body,author,baseRefName,headRefName,headRefOid,commits,comments,reviews,files,isDraft,state,url (repeated and saved privately) \u2014 read the complete body, all eleven comments and latest Ready for review dated 2026-09-30T16:13:52Z; develop base and matching head. Earlier RETURN findings were read.",
"gh issue view 546 --repo p2pool-starter-stack/rigforge --json title,body,author,comments,state,updatedAt,url (repeated and saved privately) \u2014 read the diagnostic acceptance and subsequent rulings; historical root-cause acceptance remains with #540/#541.",
"cat [authorized private answered question] \u2014 read the approved exact-commit connect/control pairing and linked-history channel; contents withheld.",
"Python read of [authorized linked snapshots] plus runner-prefetched context \u2014 read bench-ci#760/#867/#979/#996 with source URLs, updatedAt, states and trusted authors; none UNAVAILABLE. No recursive job tracing or credential change.",
"gh issue view 540 --repo p2pool-starter-stack/rigforge --json title,body,author,comments,state,updatedAt,url \u2014 read body and all comments; producer defect remains open.",
"gh pr view 541 --repo p2pool-starter-stack/rigforge --json title,body,author,comments,state,updatedAt,url \u2014 read body and all comments; production latency hypothesis and attribution remain open; no companion approval inferred.",
"gh issue view 549 --repo p2pool-starter-stack/rigforge --json title,body,author,comments,state,updatedAt,url \u2014 read body and all comments; pre-existing native Bash aggregate-fixture failure remains separately owned.",
"gh api repos/p2pool-starter-stack/rigforge/issues/546/comments --paginate \u2014 eleven comments; ruling/claim authors are runner pithead-* Bot identities.",
"gh api repos/p2pool-starter-stack/rigforge/pulls/547/comments --paginate \u2014 zero inline review comments.",
"gh api repos/p2pool-starter-stack/rigforge/pulls/547/reviews --paginate \u2014 zero review bodies.",
"gh api repos/p2pool-starter-stack/rigforge/issues/547/comments --paginate \u2014 eleven issue comments; pithead-developer and pithead-reviewer Bot identities.",
"Python extraction of PR bodies, comments and direct references \u2014 retained complete private review sources; inspected each earlier Ready/RETURN and the new responses without accepting unrelated-account claims.",
"python3 detect-topology.py --help \u2014 failed: the detector treats --help as a filename (FileNotFoundError); corrected to its supported file arguments.",
"sed reads of detect-topology.py \u2014 confirmed file/stdin input and --self-test interface.",
"python3 detect-topology.py [PR body, every PR comment, issue #546 body and every issue comment] \u2014 clean, exit 0; private absolute detector/source locations withheld.",
"python3 detect-topology.py [linked #540 body/comments] \u2014 clean, exit 0.",
"python3 detect-topology.py [linked #541 body/comments] \u2014 clean, exit 0.",
"python3 detect-topology.py [linked #549 body/comments] \u2014 clean, exit 0.",
"python3 detect-topology.py --self-test \u2014 fourteen positive, eleven negative and fourteen scrub round-trip controls passed.",
"graphify --help \u2014 read scratch-output and query options.",
"graphify extract . --code-only --out [private scratch] --max-workers 2 \u2014 exit 0; 748 nodes, 1,487 edges, 52 communities; twelve data fixtures produced no nodes. Non-code docs were read directly; checkout unchanged.",
"graphify query \"How do phase_control, refresh_profile_start and refresh_profile_finish collect and restore timer diagnostics?\" --graph [private graph] --budget 1300 \u2014 exit 0; found 81 related nodes, budget-limited output; traced source directly.",
"git diff origin/develop...HEAD -- (whole diff and bounded per-file reads) \u2014 reviewed all nine files. No relaxed/deleted assertions, stub success, TODO replacement, hidden scope reduction or unresolved failure path found; documentation states collection and attribution limits.",
"git diff origin/develop...HEAD --numstat \u2014 confirmed nine-file scope.",
"git diff 8941031b05d62050acb6d4fd1b4e7369920a504f..HEAD --stat \u2014 five correction files, 56 additions/four deletions; export guard, secured response allocation, regressions and documentation.",
"nl/sed reads of tests/e2e-pithead.sh, tests/test-e2e-gate-fail-closed.sh, tests/README.md and Makefile \u2014 traced reservation, dispatch, failure/EXIT cleanup, configuration/runtime restoration and unit-test wiring.",
"rg on refresh helpers, BASH_SOURCE, unit settings and suite wiring; sed on rigforge.sh api_refresh; cat systemd/rigforge-api-refresh.service.template \u2014 real publication path retained, with existing idle priority and timeout; profiler logs fixed names/timestamps only.",
"gh pr checks 547 --repo p2pool-starter-stack/rigforge (repeated) \u2014 all eight checks pass, none skipped or pending.",
"gh run view 36738716370 --repo p2pool-starter-stack/rigforge --json headSha,conclusion,event,jobs \u2014 exact head 541b48f404693e6ada262a1cfebc8809af1e7e5a; suite, Docker e2e, coverage and all three lint jobs and every step succeeded.",
"gh run view 36738716202 --repo p2pool-starter-stack/rigforge --json headSha,conclusion,event,jobs \u2014 exact head 541b48f404693e6ada262a1cfebc8809af1e7e5a; gitleaks and zizmor and every step succeeded.",
"source [local bench environment]; bench-ci evidence 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 exact match to pasted block: completed success, exit 0, 4 pass/zero fail/zero skip, baseline verified and rig restored. Historical only; does not cover later code.",
"source [local bench environment]; bench-ci status 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 completed success on the quoted commit; all seven lifecycle steps succeeded, baseline_verified=true and rig_restored=true.",
"source [local bench environment]; bench-ci log 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 downloaded and inspected all 1605 lines; submitted SHA checked out in the reserved install tree, selected phases executed, checkout and rig restored.",
"source [local bench environment]; bench-ci artifacts 1879@049f837301edb9f2170a8be2e939c82145b1778f \u2014 one control artifact.",
"source [local bench environment]; bench-ci artifacts 1879@049f837301edb9f2170a8be2e939c82145b1778f e2e-pithead-control.log --out [private file] \u2014 exit 0; all 1575 lines inspected: four control passes, real timer/helper records and state observations.",
"source [local bench environment]; bench-ci evidence 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 exact match to pasted block: completed success, exit 0, 4 pass/zero fail/zero skip, baseline verified and rig restored. Historical only; does not cover later code.",
"source [local bench environment]; bench-ci status 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 completed success on the quoted commit; all seven lifecycle steps succeeded, baseline_verified=true and rig_restored=true.",
"source [local bench environment]; bench-ci log 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 downloaded and inspected all 1605 lines; submitted SHA checked out in the reserved install tree, selected phases executed, checkout and rig restored.",
"source [local bench environment]; bench-ci artifacts 1884@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 one control artifact.",
"source [local bench environment]; bench-ci artifacts 1884@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-control.log --out [private file] \u2014 exit 0; all 1575 lines inspected: four control passes, real timer/helper records and state observations.",
"source [local bench environment]; bench-ci evidence 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 exact match to pasted block: completed success, exit 0, 7 pass/zero fail/zero skip, baseline verified and rig restored. Historical only; does not cover later code.",
"source [local bench environment]; bench-ci status 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 completed success on the quoted commit; all seven lifecycle steps succeeded, baseline_verified=true and rig_restored=true.",
"source [local bench environment]; bench-ci log 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 downloaded and inspected all 1615 lines; submitted SHA checked out in the reserved install tree, selected phases executed, checkout and rig restored.",
"source [local bench environment]; bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d \u2014 two artifacts, connect/control.",
"source [local bench environment]; bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-connect.log --out [private file] \u2014 exit 0; all seven lines read: mining connection and accepted share, three passes.",
"source [local bench environment]; bench-ci artifacts 1888@0bbedc773adf073c43d6758032bcff437f57f18d e2e-pithead-control.log --out [private file] \u2014 exit 0; all 1575 lines inspected: four control passes, real timer/helper records and state observations.",
"source [local bench environment]; bench-ci evidence 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 exact match to pasted block: completed success, exit 0, 7 pass/zero fail/zero skip, baseline verified and rig restored. Historical only; does not cover later code.",
"source [local bench environment]; bench-ci status 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 completed success on the quoted commit; all seven lifecycle steps succeeded, baseline_verified=true and rig_restored=true.",
"source [local bench environment]; bench-ci log 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 downloaded and inspected all 1614 lines; submitted SHA checked out in the reserved install tree, selected phases executed, checkout and rig restored.",
"source [local bench environment]; bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f \u2014 two artifacts, connect/control.",
"source [local bench environment]; bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f e2e-pithead-connect.log --out [private file] \u2014 exit 0; all seven lines read: mining connection and accepted share, three passes.",
"source [local bench environment]; bench-ci artifacts 1903@8941031b05d62050acb6d4fd1b4e7369920a504f e2e-pithead-control.log --out [private file] \u2014 exit 0; all 1575 lines inspected: four control passes, real timer/helper records and state observations.",
"source [local bench environment]; bench-ci evidence 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 exact match to pasted block: completed success, exit 0, 7 pass/zero fail/zero skip, baseline verified and rig restored. Current-head gate.",
"source [local bench environment]; bench-ci status 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 completed success on the quoted commit; all seven lifecycle steps succeeded, baseline_verified=true and rig_restored=true.",
"source [local bench environment]; bench-ci log 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 downloaded and inspected all 1624 lines; submitted SHA checked out in the reserved install tree, selected phases executed, checkout and rig restored.",
"source [local bench environment]; bench-ci artifacts 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 two artifacts, connect/control.",
"source [local bench environment]; bench-ci artifacts 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a e2e-pithead-connect.log --out [private file] \u2014 exit 0; all seven lines read: mining connection and accepted share, three passes.",
"source [local bench environment]; bench-ci artifacts 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a e2e-pithead-control.log --out [private file] \u2014 exit 0; all 1584 lines inspected: four control passes, real timer/helper records and state observations.",
"bench-ci artifacts --help \u2014 read supported exact-reference download interface; no job submitted.",
"Initial Python artifact-download wrapper \u2014 failed before downloading anything (TypeError joining a Path and string); corrected wrapper downloaded all eight quoted artifacts successfully.",
"Python analysis of all five complete statuses/logs/artifacts \u2014 evidence blocks match; measurement schemas and begin/end duration arithmetic hold, all completed helper statuses zero. Job 1911 has 21 complete refreshes at 1.441\u20131.959 seconds, three unfinished helper spans retained at cleanup, 61 timer/service snapshots and the thermal value in a newer summary after five seconds. No historical slowdown reproduced.",
"bench-ci tiers --repo rigforge --commit 541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 exit 0; CLI hides selectable phases, the known bench-ci#996 display defect.",
"head/rg/sed on installed bench-ci client \u2014 traced its GET /tiers query and targets-only display; read-only inspection, no runner changes.",
"Python call through bench_ci.client.request GET /tiers for rigforge@541b48f404693e6ada262a1cfebc8809af1e7e5a \u2014 HTTP 200; exact-commit selectable.phases includes connect and control. Raw response retained privately.",
"command -v bash shellcheck shfmt timeout jq; bash --version; shellcheck --version; shfmt --version \u2014 installed Bash 5.3.15, ShellCheck 0.11.0, initial formatter 3.13.1; native focused checks explicitly selected Bash 3.2 and native sed/date.",
"PATH=[native macOS tools]:$PATH bash tests/test-refresh-profile.sh \u2014 PASS, exit 0, including portable filter, export-error cleanup, fresh secured response, substitution and allocation-failure/no-POST assertions as applicable.",
"PATH=[native macOS tools]:$PATH bash tests/test-refresh-window-control.sh \u2014 PASS, exit 0, including portable filter, export-error cleanup, fresh secured response, substitution and allocation-failure/no-POST assertions as applicable.",
"git worktree add --detach [scratch without-correction] HEAD \u2014 clean scratch at the reviewed head; original checkout untouched.",
"git restore --source=8941031b05d62050acb6d4fd1b4e7369920a504f --worktree -- [five non-test harness/docs files], in scratch \u2014 reverted implementation corrections while keeping current tests.",
"Native bash tests/test-refresh-profile.sh in without-correction scratch \u2014 expected RED, exit 1: \"failed exporter unexpectedly reported successful diagnostics\".",
"Native bash tests/test-refresh-window-control.sh in without-correction scratch \u2014 expected RED, exit 1.",
"Native bash tests/test-refresh-window-control.sh substituted in without-correction scratch \u2014 expected RED, exit 1: \"substituted response pathname overwrote sentinel\".",
"git worktree add --detach [scratch without-harness] HEAD \u2014 clean second scratch; original checkout untouched.",
"git restore --source=origin/develop --worktree -- [five non-test harness/docs files], in scratch \u2014 removed the diagnostic implementation while retaining new regression modules.",
"Native bash tests/test-refresh-profile.sh in without-harness scratch \u2014 expected RED, exit 127; required profiler absent.",
"Native bash tests/test-refresh-window-control.sh in without-harness scratch \u2014 expected RED, exit 1; base control lacks required window behavior.",
"make test with Bash 5.3/native sed/date \u2014 exit 2 at lint because installed shfmt 3.13.1 disagrees with repository-pinned formatting; suite not run by this attempt. Not PASS; correct-tool checks below replace it.",
"ls [known native-tool shim directory]; command -v go; ls [candidate local formatter] \u2014 existing Bash/date/sed shims and Go located; candidate formatter absent. Private paths withheld.",
"go run mvdan.cc/sh/v3/cmd/shfmt@v3.14.1 -i 4 -d [all tracked shell files] \u2014 PASS, exit 0; repository-pinned formatter, no repo dependency change.",
"make lint using ShellCheck 0.11.0 and a scratch wrapper for shfmt 3.14.1 \u2014 PASS, exit 0: topology self-test/gate, file-budget self-test/gate, whole-tree ShellCheck and formatter.",
"timeout 2700 make test-suite with installed Bash 5.3.15 and native sed/date \u2014 completed PASS, exit 0; final assertion summary 2,305 passed and zero failed.",
"FILE_BUDGET_REQUIRE_BASE=1 bash scripts/lint-file-budget.sh \u2014 PASS, exit 0; singular freeze check, every ceiling monotonic.",
"git diff --check \u2014 PASS, exit 0; no whitespace errors.",
"make lint-md \u2014 PASS, exit 0; 25 files, zero errors.",
"make lint-yaml \u2014 unavailable locally, exit 2: \"yamllint: No such file or directory\". No YAML changed; exact-head Actions yaml lint succeeded. Not a local PASS.",
"make lint-actions \u2014 PASS, exit 0.",
"Python extraction of #549 bounded fixture; native Bash 3.2 execution \u2014 reproduced syntax error near *NextElapse* and \"n: unbound variable\" while exit was zero; NOT PASS.",
"Installed Bash 5.3 execution of the same #549 bounded fixture \u2014 exit 0, prints n/a; confirms the pre-existing native-runtime distinction.",
"rg on .github/workflows/security.yml \u2014 gitleaks scans full history with fetch-depth=0; current-head security Actions succeeded.",
"command -v gitleaks; command -v yamllint \u2014 gitleaks available; yamllint absent.",
"gitleaks git --log-opts=origin/develop..HEAD --redact --no-banner --report-format json --report-path [private report] \u2014 PASS, five commits scanned, no leaks.",
"Static security pass over new profiler, runtime override and curl wrapper \u2014 fixed-name eval inputs, guarded drop-in creation, measurement whitelist, bearer via stdin and fresh mode-600 response allocation; no introduced secret, listener expansion, injection or unpinned dependency.",
"gh pr view 547 --repo p2pool-starter-stack/rigforge --json headRefOid,body,comments,updatedAt \u2014 head, body and comments unchanged before publication.",
"Not run: local Docker, container/compose integration, manual rig commands or bench tiers. Head Actions and quoted job 1911 supply those gates. Bench-ci make check and Pithead CLI/OpenAPI parity do not apply to this RigForge-only harness diff.",
"python3 detect-topology.py [public review draft] \u2014 clean, exit 0; private_note and raw sources excluded.",
"gh pr checks 547 --repo p2pool-starter-stack/rigforge (final repeat) \u2014 eight passes, no skipped or pending check.",
"gh pr view 547 --repo p2pool-starter-stack/rigforge --json headRefOid,body,comments (final repeat) \u2014 reviewed head/body/comments unchanged.",
"git status --porcelain (final repeat) \u2014 clean; branch files untouched.",
"gh api --method POST repos/p2pool-starter-stack/rigforge/statuses/541b48f404693e6ada262a1cfebc8809af1e7e5a -f state=success -f context=adversarial-review \u2014 refused: gh: refused: sessions do not write commit statuses or check runs (the runner posts the review verdict); runner must record this independent verdict on the reviewed SHA."
],
"findings": [
{
"severity": "note",
"where": "tests/test-api-refresh-liveness.sh:44 / #549",
"what": "The pre-existing Apple Bash 3.2 fixture still emits a runtime parser error while returning zero. This was reproduced separately and never counted as PASS; both new modules pass natively and the completed Bash 5.3/native-sed/date suite passes."
},
{
"severity": "note",
"where": "tests/README.md:47 / #540 / #541",
"what": "The paired current-head run demonstrates diagnostic collection and restoration, with short refreshes. It does not reproduce or identify the historical slow-refresh mechanism; keep production-fix acceptance open."
}
]
} |
|
adversarial-review: PASS at 541b48f, round 4, by the pithead-reviewer reviewer (a fresh session that did not produce this head; gpt-6.1-sol). PASS at 541b48f: #546 requires real timer-driven helper timings and timer/service state around authenticated thermal apply in the approved mining workload, with verified reservation, baseline and restoration. The returned findings have red/green proof; all eight head checks, the 2,305-assertion local suite and exact-head job 1911 pass. The review is posted on the PR; historical slow-refresh attribution and the production fix remain open in #540/#541. Evidence
Findings
|
Closes #546
The control harness captures real timer-driven helper timings and timer/service state around authenticated thermal apply in the mining workload. It retains the service policy and normal feed publication, requires the changed ceiling in a newer direct summary within 90 seconds, and restores the original timer state and configuration through the reserved job’s cleanup.
Current candidate:
541b48f404693e6ada262a1cfebc8809af1e7e5a.Round-3 RETURN corrections:
tests/e2e-refresh-window.sh:43explicitly records measurement-export failure and continues cleanup before returning nonzero. A successful refresh in the unfiltered journal no longer hides failed export.tests/e2e-pithead-control.sh:51allocates a fresh secured response file immediately before thermal POST, fails before POST when allocation fails, and removes the file after reading the change identifier. It no longer writes through the removed DONATION response pathname.tests/README.mdcorrects the documented response-file and export-error behavior.The operator retained the earlier diagnostic scope, supported pairing and private linked-history channel; those findings remain closed. Since RETURN, only these two harness corrections, their regressions and the existing documentation were changed. Production refresh logic, versions, dependencies and budgets are unchanged.
Ponytail review: one export-status guard and one fresh native allocation close the two findings; no extra abstraction or dependency, and no test, validation, error handling or documentation requirement was cut.
Validation on the corrected implementation:
export PATH="/usr/bin:/bin:/usr/sbin:/sbin:$PATH", selecting/bin/bash,/usr/bin/sed,/bin/date,/usr/bin/grepand/usr/bin/awk.8941031b05d62050acb6d4fd1b4e7369920a504f.bash tests/test-refresh-profile.shexited 1: the failed exporter incorrectly reported successful diagnostics.bash tests/test-refresh-window-control.shexited 1; the independently executedsubstitutedcase reported sentinel overwrite. These are expected RED results, not passing checks.bash tests/test-refresh-profile.shandbash tests/test-refresh-window-control.shboth PASS, exit 0, with those native tools. The latter executes the substitution/permissions and allocation-failure/no-POST assertions as well as the existing freshness and bearer-argument checks. The verifier independently reran both modules successfully.export PATH="$TMPDIR/rigforge-546-native-tools:/usr/bin:/bin:/usr/sbin:/sbin:$PATH"(installed Bash 5.3.15 with native sed/date), thentimeout 2700 make test-suite— completed PASS: 2,305 passed, zero failed, exit 0, including the final assertion summary, on the corrected implementation/current head.shellcheck --severity=warning tests/e2e-refresh-window.sh tests/e2e-pithead-control.sh tests/test-refresh-profile.sh tests/test-refresh-window-control.shandshfmt -i 4 -don those same four files (3.14.1) — PASS.FILE_BUDGET_REQUIRE_BASE=1 bash scripts/lint-file-budget.sh,make lint-topology,make lint-md, andgit diff --check— PASS.gh pr checks 547 --repo p2pool-starter-stack/rigforge: all eight current-head Actions checks PASS, including Test suite, Coverage, Docker e2e and the lint/security checks. No older-head result is used as proof of the new corrections.The native Bash 3.2 aggregate defect remains owned by #549. Its runtime parser error and misleading zero exit without final assertions are NOT PASS. Neither earlier reviewer aggregate is counted as PASS: round 1 was incomplete; round 2’s GNU-sed/Darwin run failed and its native rerun was terminated. Previously completed Bash 5.3 aggregates and bench jobs are historical evidence, not proof of this new head’s corrections.
Exact-commit discovery with
bench-ci tiers --repo rigforge --commit 541b48f404693e6ada262a1cfebc8809af1e7e5aconfirmsconnectandcontrolare selectable. The CLI’s hidden phase display remains tracked separately in bench-ci#996; the exact-commit API response supplies the phase list. Fresh priority-10 idempotent job1911@541b48f404693e6ada262a1cfebc8809af1e7e5acompleted successfully withphases=["connect","control"]. I readbench-ci status,bench-ci logandbench-ci artifactsusing that full reference, including the entire log and both connect/control artifacts. Connect established mining and an accepted share; control completed authenticated DONATION and thermal apply on the same reserved worker. The thermal ceiling appeared in a newer direct summary after five seconds. The export contains 21 complete refreshes lasting 1.441–1.959 seconds and three unfinished helper spans retained when collection stopped the service, as documented intests/README.md:40. Timer/service state was captured across the five-minute window. The job verifies its baseline and configuration/service restoration, and all lifecycle steps succeeded. This passes the corrected head’s paired hardware gate; it does not establish recurrence or attribute the historical slow refresh.Historical jobs 1879/1884 validated control-only collection; 1888/1903 supplied the operator-approved mining/control pairing with successful baseline verification and restoration. Their complete status, logs and artifacts were read in prior sessions. They showed short refreshes and normal timer dispatch, not the historical roughly 65-second failure. The approved full linked-history source snapshots remain available privately to the local reviewer; no private source data, raw artifacts or credential transfer is published.
Historical recurrence/slow-operation attribution, unrelated hardware phases and long-duration stress were not established. #540 and draft #541 remain open for the historical mechanism and production fix. No injected delay, local container or manual hardware run is claimed. The current head is ready for a separate adversarial review; earlier Ready comments refer to earlier heads.
bench-ci job 1879@049f837301edb9f2170a8be2e939c82145b1778f · rigforge · tier4-e2e
Generated by
bench-ci evidence 1879@049f837301edb9f2170a8be2e939c82145b1778f; re-run it to check.bench-ci job 1884@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
Generated by
bench-ci evidence 1884@0bbedc773adf073c43d6758032bcff437f57f18d; re-run it to check.bench-ci job 1888@0bbedc773adf073c43d6758032bcff437f57f18d · rigforge · tier4-e2e
Generated by
bench-ci evidence 1888@0bbedc773adf073c43d6758032bcff437f57f18d; re-run it to check.bench-ci job 1903@8941031b05d62050acb6d4fd1b4e7369920a504f · rigforge · tier4-e2e
Generated by
bench-ci evidence 1903@8941031b05d62050acb6d4fd1b4e7369920a504f; re-run it to check.bench-ci job 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a · rigforge · tier4-e2e
Generated by
bench-ci evidence 1911@541b48f404693e6ada262a1cfebc8809af1e7e5a; re-run it to check.