Repository navigation
Surface reasons for deliberate incomplete Security reviews - #612
Merged
Merged
Conversation
2026-10-10T03:20:54Z, host thirdshift. Uncommitted work at the time of failure is included in this commit.
JacobStephens2
marked this pull request as draft
October 10, 2026 03:20
JacobStephens2
marked this pull request as ready for review
October 10, 2026 04:55
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
Security review terminal line complete → validated JSON counts + incomplete → nonempty, single-line public reason, capped at 500 characters malformed → existing generic incomplete outcomeDeliberate incompletes carry the session's reason into the Run's Cause, the PR's Security review outcome and the Hold. Private reports are still validated in full and recorded privately before an incomplete reason is published. Safeguard refusals keep their existing wording. Both generated prompt outputs reflect the new contract.
Closes #607
Test seams
Evidence
cargo test --test security_review explicit_incomplete_review_surfaces_its_reason_and_records_old_findings_privately -- --exact, run withmain'ssrc/security/review.rs, failed because the Run returned the generic incomplete message instead of the session's reason.After: the same command passed on this branch, including private recording without disclosure. All 22 Security review integration tests passed, covering Unicode-safe capping, malformed terminal lines, private-report validation, complete reviews and safeguard refusals.
cargo check,cargo fmt --check,cargo clippy --all-targets -- -D warningsandgit diff --checkpassed.UPDATE_PROMPTS=1 cargo test --bin thirdshift prompts_pagepassed all 10 tests and reproduced the committed generated files without changes.cargo testand the continuation below. The full command stopped atsite_deploy::the_systemd_units_verifybecause systemd loaded an unrelated host unit with an invalidRequiredBykey in/etc/systemd/system/career-dashboard-secrets.service. The exact test reproduced that host failure.SYSTEMD_UNIT_PATH=/usr/lib/systemd/system cargo test --test site_deploy --test spec_run --test toolchain --test update --test user_configthen passed, validating the site units and every suite that had not yet run. No host configuration or repository code was changed for this environment issue.Validation used the pinned Rust 1.99 toolchain installed separately for this session because the shared installation was missing
rustc.Unaddressed findings
Standards
None. The Standards reviewer reported zero findings.
Spec
None. The Spec reviewer reported zero findings against #607 and its Agent Brief.
Changed files left unread: none under either axis. Both reviewers read all five changed files. Final reports and each axis's files-read list are saved in
.thirdshift-review-YAKH7C/standards.mdand.thirdshift-review-YAKH7C/spec.mdin the review worktree. Review fixed point:mainatd251d5e0063c338df9e5bcd0c29f83d709d3663b.Merge Danger
Door: two-way
Blast Radius: review
Changes Security review parsing and prompt text. Incomplete Security reviews continue to hold Self-merge; the Security audit protocol is unchanged.
Built with codex · gpt-6.1-sol · high