Skip to content

Show Silent and Slow Runs with repository Usual ranges - #844

Merged
JacobStephens2 merged 2 commits into
issue-776from
issue-815
Oct 19, 2026
Merged

JacobStephens2 merged 2 commits into
issue-776from
issue-815

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Oct 19, 2026 •

Copy link
Copy Markdown
Owner

Summary

status and show describe Silent and Slow Runs, with escalation in words and repository-specific Usual ranges.

observe live Run
  both logs quiet for silent_minutes → Silent; escalate at 3×
  otherwise stage past its Usual range → Slow; escalate at 2×
  otherwise → ok

Usual range = interpolated 25th–75th percentiles
  same repository, newest 30 Command records, at least 3 stage times

waiting interval >= silent time → use half the silent time

JSON includes health and escalation steps, plus a usual_ranges map keyed by stage name. inbox.silent_minutes defaults to 10. status warns on unsafe waiting intervals; CI watch and Self-merge use the fallback. Health and ranges belong to the reader; durable Command facts stay independent.

Closes #815

Evidence

  • Before: cargo test --test run_health failed because live Runs had no health. The Slow test failed with ok instead of slow. The warning test found no warning, and cargo test --test ci ci_watch_uses_half found only one waiting line.
    After: binary tests pass with aged log modification times, fixture Command records, repository isolation, the 30-record limit, both escalation thresholds, and a 30-second fallback.
  • Full cargo test passed: 1,063 unit tests passed (two existing tests ignored), plus all 49 integration targets. This run began before the reader-ownership correction; afterward, cargo test --test run_health --test status --test show_logs passed all 37 tests against the final revision.
  • Config, Setup and CI tests passed; cargo check, cargo fmt --check, and cargo clippy --all-targets -- -D warnings passed. All 20 site tests passed, including mobile reading checks; final npm run docs:check passed.

Test seams

  • The thirdshift status and thirdshift show binaries, in text and JSON modes, consuming fixture Command records and log modification times.
  • The Run binary's CI watch against fake GitHub, observing repeated waiting lines under an unsafe configured interval.
  • The existing Setup binary tests, observing the written default User config.

Review

Independent Standards and Spec reviews used issue-776 at d1e8c985ceadfeb1fb039a74790812a07b39f421 as the fixed point. Standards raised one architectural finding, addressed by moving ranges out of durable stages into reader observations. Spec raised no findings. Both reviewers checked the correction.

All 20 changed files in that fixed-point diff were read by both axes, including generated HTML. Changed files left unread: none. Generated-output exclusions: none.

Unaddressed findings

  • Standards: none.
  • Spec: none.

Merge Danger

Door: two-way

Revertible reader/config changes; no stored-record migration.

Blast Radius: observability

Changes status/show wording and adds JSON fields. Unsafe waiting configurations now produce more frequent progress lines.

Built with codex · gpt-6.1-sol · high

@JacobStephens2
JacobStephens2 merged commit 4447009 into issue-776 Oct 19, 2026
18 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-815 branch October 19, 2026 20:53
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