Repository navigation
Record host Suspended time in Command stages and show - #2038
Merged
Merged
Conversation
This was referenced Nov 11, 2026
Merged
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.
Summary
Closes #2032
Test seams: the Command recorder with its scripted Outside clock/files adapter; persisted Command-record deserialization; the
thirdshift showCLI in text and JSON.Evidence
Execution evidence
cargo test --bin thirdshift logs::recording::testsThe new live-stage regression failed with
left: Null,right: 120(30 passed; 1 failed).After: the same command passed (
33 passed; 0 failed), covering live persistence, one log line per suspension, ignored 30-second clock steps, repeated suspensions, stage transitions, completion and every Command kind. Suspensions are scripted; no test sleeps to produce one.cargo test --test show_logs show_explains_suspended_stage_time_in_text_and_json_and_reads_legacy_stagesFailed because output contained only
implement · 2026-10-03T12:00:00-04:00, without the requested time annotation (0 passed; 1 failed).After: the same command passed (
1 passed; 0 failed), checking10 hr 6 min · 9 hr 40 min suspended, unchanged wall-clock seconds and a legacy stage without an annotation or suspension field. The completeshow_logsfile also passed (17 passed; 1fixture entry ignored).NEXTEST_TEST_THREADS=3 CARGO_BUILD_JOBS=3 scripts/affected-tests refs/remotes/origin/issue-2026passed: 68 site tests and 4,237 Rust tests passed; 97 Rust tests skipped.cargo fmt --checkalso passed.5ad1a81e, including the full Rust suite,cargo fmt --check,cargo clippy --all-targets -- -D warnings, and the Console and site browser checks.Visual evidence
Manual: Show and read one Command, 1440×900 (desktop).
Architecture: Run metrics and Command details, 1440×900 (desktop).
Manual: Show and read one Command, 390×844 (mobile).
Architecture: Run metrics and Command details, 390×844 (mobile).
Unaddressed findings
Standards
None.
Spec
None.
Security
None.
Security review outcome
No unaddressed introduced findings.
Review coverage
thirdshift-code-reviewcompared againstrefs/remotes/origin/issue-2026(acb42c1f). Standards raised one low judgement-call finding about duplicated test setup; commit5ad1a81eaddressed it. Spec raised zero findings. Both reviewers read all 12 changed files, including the generated manual's changed HTML. Changed files left unread: none. Generated-output exclusions: none. Reports and initial finding counts are saved in.thirdshift-review-f56kd4/.Merge Danger
Door: two-way
Rollback restores the previous recorder and display. Existing Command records parse with zero Suspended time; new records omit the field when zero.
Blast Radius: recording
Shared Command recording and
showtext/JSON. Each Command adds one sampler thread; stage times remain wall-clock times.Built with codex codex-cli 0.167.1 · gpt-6.1-sol · xhigh