Skip to content

Add recommend-only pull request Review runs - #1713

Merged
JacobStephens2 merged 4 commits into
issue-706from
issue-1702
Nov 4, 2026
Merged

JacobStephens2 merged 4 commits into
issue-706from
issue-1702

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

Summary

Review an existing pull request without changing its branch.

review <PR URL> --recommend-only
  validate eligibility and Trusted author
  check out captured PR head on its branch
  review-and-address → delivery (one findings comment + reviewed-head marker)
  Review run → Command record, notification, Ready for review

Linked closing issues supply the Spec; a body-only review says so. PR discussion, inline and review comments are filtered to Trusted accounts. The Built-in Process can be inspected, checked and copied into a Custom pull-request Process. Manual, site and generated prompt documentation are updated.

Closes #1702

Evidence

  • Before: the CLI rejected review; recommendation cleanup could delete an existing local head branch.
    After: cargo test --test review_run passes all 8 tests, covering eligibility, filtered input, comments, records, notification, Inbox, changed PRs, retained unexpected edits and local branch preservation.
  • Before: the Standards reproduction showed retained Step result: false; later session received result path: false.
    After: cargo test --test review_run custom_pr_steps_keep_results_and_pass_their_paths_to_later_sessions -- --exact --nocapture passes. The regression is kept, and both executors share result retention, Step completion and prior-result prompt construction.
  • Generated prompt tests: 13 passed. Command-surface tests: 20 passed. cargo clippy --all-targets -- -D warnings passed during implementation; cargo fmt --check passes after this repair.
  • Before: CI run 41746698506 and cargo test --test process process_lists_custom_processes_with_their_descriptions -- --exact failed because both exact listing expectations omitted the new review-run Built-in process.
    After: both expectations include its name and description in sorted order, retaining exact equality. The same test passes; cargo nextest run --test process --test review_run --test-threads 3 passes all 244 tests (276.97s). All 61 site tests pass (94.93s).

CI notes

Local full Rust validation is blocked by this host's exhausted inotify watches: three unchanged Console account-revocation tests also fail single-threaded on issue-706 (84135240) with identical OS file watch limit reached warnings and assertions, because the 60-second polling fallback exceeds their deadlines. The failures are accounts::an_open_inbox_stream_closes_when_its_session_is_revoked, accounts::an_open_log_stream_closes_when_its_session_is_revoked and accounts::cli_and_allowlist_changes_revoke_http_sessions_without_deleting_the_account.

Evidence: NEXTEST_TEST_THREADS=3 scripts/affected-tests issue-706 passed all 61 site tests, then stopped with 260 Rust tests passed and these 3 failures (332.88s including compilation). Each failure was reproduced on the base in an isolated checkout using cargo nextest run --test console --test-threads 1 with filters for those tests. git diff issue-706...HEAD -- src/console.rs src/console tests/console.rs tests/console is empty; no Console code or tests were changed.

Test seams

  • The real CLI and Git repositories, with fake GitHub and Harness processes at their external interfaces.
  • Retained Command records, Run notifications and status/Inbox output.

Unaddressed findings

Standards

None. The one finding was reproduced and fixed.

Spec

None. No findings were raised.

Security

None. The review input symlink was reproduced and fixed before a session could start.

Security review outcome

No unaddressed introduced findings.

Review coverage

Both independent axes reviewed the implementation, including generated output; follow-up review accepted the finding's corrections. This CI repair updates only the exact Process-listing expectations in tests/process.rs, verified by all 244 Process and Review tests. Reports and {"standards":1,"spec":0} are retained with the Session review artifacts.

Merge Danger

Door: two-way

Blast Radius: Processes

Adds a CLI workflow and shared Process result handling. Worktree cleanup preserves pre-existing local PR branches; a recommendation never pushes branch changes.

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

A pull request can commit .thirdshift-review-input.md as a symlink. Writing the review packet followed that link and replaced a file outside the worktree, then continued the review. Refuse the symlink before a session starts.
The new review-run Built-in process is included in the compiled catalog, but the listing test still expected only the previous four built-ins. Include its name and description in both exact sorted-output assertions.
@JacobStephens2
JacobStephens2 merged commit ac93a57 into issue-706 Nov 4, 2026
16 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-1702 branch November 4, 2026 01:17
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