Skip to content

Exclude Suspended time from Slow and Silent - #2060

Merged
JacobStephens2 merged 4 commits into
issue-2026from
issue-2033
Nov 11, 2026
Merged

JacobStephens2 merged 4 commits into
issue-2026from
issue-2033

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Nov 11, 2026 •

Copy link
Copy Markdown
Owner

Summary

- Slow: wall-clock stage age
+ Slow: stage age − Suspended time (including step 2 and its multiple)
- Silent: wall-clock quiet time
+ Silent: quiet time − suspensions since the logs last grew
+ Wake annotations preserve previous log activity time, including relays

Keep pre-suspension work counted in status, the Console's Inbox and Needs you. Suspension alone adds no row or Dismissal target. Older records without Suspended time retain their behavior.

Closes #2033

Evidence

Execution evidence

Seams under test: binary status/show, Console HTTP Inbox with live fixture Commands, Snapshot health and transition deadlines through filesystem activity, and recording through scripted clocks and the native file adapter.

  • Before: cargo test --test run_health slow_leaves_out_suspended_time_without_resetting_work_before_wake failed: left: String("slow"), right: "ok"; a 65-minute stage with 60 suspended minutes showed step 2, 6× usual.
    After: the same command passed: 1 passed; 0 failed.

  • Before: cargo test --test run_health silent_leaves_out_only_suspensions_since_the_logs_last_grew failed: left: String("silent"), right: "ok", reporting 3900 quiet seconds.
    After: the same command passed: 1 passed; 0 failed.

  • Before: cargo test --bin thirdshift wake_annotation_keeps_silent_work_and_real_output_clears_it failed after the wake line: left: false, right: true.
    After: the same regression passed: 1 passed; 0 failed. It retains 840 quiet working seconds across own and nested relayed annotations; genuine output clears Silent.

  • cargo test --test console suspended_time_health_agrees_in_status_and_the_console_inbox: 1 passed; 0 failed, covering eight healthy/Slow/Silent/CI-watch cases, row groups and Dismiss controls.

  • cargo clippy --all-targets -- -D warnings and cargo fmt --all -- --check: passed.

  • CI cargo nextest run on pushed head 77444aa2: 4,243 passed, 97 skipped. Compilation took 1 min 41 sec; test execution took 1,498.266 sec. Site and Console CI passed; all applicable PR checks are green.

  • Local final selection: NEXTEST_TEST_THREADS=3 CARGO_BUILD_JOBS=2 /usr/bin/time -p scripts/affected-tests refs/remotes/origin/issue-2026 passed all 68 site tests (221.56 sec). The duplicate local cargo nextest run was intentionally interrupted at 2,261.98 sec, including compilation, after CI passed the exact head; its result is reused as docs/testing.md permits. Focused regressions above also passed locally.

Visual evidence

Architecture documentation, 1440×900:

Before
After

Architecture documentation, 390×844:

Before
After

Generated manual, 1440×900:

Before
After

Generated manual, 390×844:

Before
After

Review coverage

Independent Standards and Spec reviews used git diff refs/remotes/origin/issue-2026...HEAD, including one follow-up per axis. Standards raised 2 findings; Spec raised 1. All addressed. Both axes read all 13 changed files, including the generated manual; no generated exclusions and no unread changed files. Reports and counts are retained in the session's .thirdshift-review-sgaQT0/ artifacts.

Unaddressed findings

Standards

None.

Spec

None.

Security

None.

Security review outcome

No unaddressed introduced findings.

Merge Danger

Door: two-way

Revert the change to restore the previous health calculation. Suspension interval fields are optional.

Blast Radius: health

Affects live Slow/Silent state, escalation and wake deadlines across status and Console views. Stage display times remain wall-clock times.

Built with codex codex-cli 0.167.1 · gpt-6.1-sol · xhigh

@JacobStephens2
JacobStephens2 merged commit 0056ac9 into issue-2026 Nov 11, 2026
16 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-2033 branch November 11, 2026 21:01
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