Repository navigation
Include session Models in Run notifications - #620
Merged
Merged
Conversation
2026-10-10T03:20:52Z, host thirdshift. Uncommitted work at the time of failure is included in this commit.
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
Run notifications now name each session's Harness, observed Models and configured Effort, including delegated Claude answers, Resumes and child Runs. Missing model evidence is labelled as requested or not reported. An unreadable attribution record warns while preserving readable records.
Closes #606
Evidence
a_notification_keeps_current_models_when_an_unrelated_record_is_corruptfailed: an unrelated truncated record removed both current Models from the email.After: the exact reproduction passed; the retained test checks both Models, the warning and successful Run outcome.
cargo check --all-targets,cargo fmt --checkandcargo clippy --all-targets -- -D warningspassed.cargo testand the remaining-binary run below after an unrelated host unit causedsystemd-analyzeto warn. Both repository units verify against the vendor unit directory; no host service was changed.SYSTEMD_UNIT_PATH=/usr/lib/systemd/system RUST_TEST_THREADS=8 cargo test \ --test site_deploy --test spec_run --test toolchain \ --test update --test user_config --no-fail-fastTest seams
Review
Reviewed against
main: Standards found no findings; Spec found one corrupt-record defect, reproduced with its exact command and fixed with the regression retained. Both axes read all ten changed files. Changed files left unread: none.Unaddressed findings
src/process.rsrejects interrupted stream recovery before the second model write insrc/session.rs. Its exact reproduction passed:cargo test --test run_notification an_interrupted_notification_keeps_models_observed_before_the_signal -- --exact --nocapture.CI notes
ENOTFOUNDreaching GitHub blob storage after a successful build; transient runner DNS/network failure unrelated to this branch; rerun passed on unchanged commitc5b6e92, so no code changes.Merge Danger
Door: two-way
Reverting restores the previous notification body; no migration is required.
Blast Radius: notifications
Adds model metadata records beside Session logs. Attribution failures warn without changing the Run outcome or preventing notification delivery.
Built with codex · gpt-6.1-sol · high