Skip to content

Run unattended Fix Passes on eligible pull requests - #1805

Merged
JacobStephens2 merged 4 commits into
issue-1784from
issue-1795
Nov 6, 2026
Merged

JacobStephens2 merged 4 commits into
issue-1784from
issue-1795

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Nov 5, 2026 •

Copy link
Copy Markdown
Owner

Summary

thirdshift fix [base <branch>] [--author <login>]
  take a Command-limit slot (UpToTheLimit)
  scan trusted, ready, same-repository PRs in number order
  select current-head CI red or a Merge conflict
  reserve and recheck; pass over competing reservations
  run Delivery and Repairs; failed drafts wait for the Day shift

Pass skips exit 0, record changed Activity log reasons, and send no Run notification. Targeted PRs reject Pass filters. Self-merge holds ready unless recorded agent review covers the head actually acquired; Delivery carries one typed Repair context.

Closes #1795

Test seam: the thirdshift fix CLI with real Git repositories and fake GitHub, Harness and notification services.

Evidence

Execution evidence

  • Before: cargo test --test fix_pass no_eligible_pull_request_skips_once_without_a_notification failed: usage: thirdshift fix <PR URL or number> [options]; exit Some(2) instead of Some(0).
    After: the same test passes; empty Passes exit 0, retain one skip reason and save no notification.
  • Before: cargo test --test standards_1795 fix_self_merge_requires_review_evidence -- --exact failed: ADR-0004: merged a manually authored head without any agent review.
    After: the same command passes; the PR stays ready with Recovery guidance.
  • Before: both reviewers' acquired-head race regressions failed by merging a newer unreviewed head using the older head's marker.
    After: both exact commands pass:
    cargo test --test standards_1795 fix_checks_review_evidence_for_the_fetched_head -- --exact and
    cargo test --test spec_1795_head_race fix_review_evidence_covers_the_head_actually_adopted -- --exact.
  • Focused Fix Pass, targeted Fix, command-surface and review-regression checks passed. cargo test --test review_spec_1794 passed both tests after its Self-merge cleanup fixture gained review evidence; its assertions remain unchanged.
  • Local cargo fmt --check and cargo clippy --all-targets -- -D warnings passed. The scripts/affected-tests issue-1784 site check passed all 62 browser tests in 104.44s.
  • CI on exact head 1c65736f: cargo nextest run passed all 3,777 tests, with 88 intentional skips, in 902.395s after 66s compilation. Site, Console and release checks also passed. Per repository policy, the redundant local full Rust run was stopped once successful CI covered this exact head; no local full-suite pass is claimed. Local Harness/Session execution fixtures used an isolated User config to avoid inheriting host load limits, while sandbox tests ran normally.

Visual evidence

Fix-run manual, desktop 1440×900:

Before desktop
After desktop

Fix-run manual, mobile 390×844:

Before mobile
After mobile

Review

Independent Standards and Spec reviews used the pinned fixed point issue-1784 (31e2e33d), including the prerequisite #1794 changes. Standards raised 3 findings and Spec raised 1; all were addressed. Both behavioral race reproducers are retained, as is the original Standards regression.

Coverage: each axis read 50 changed files, with no generated-output exclusions. Both axes left the subsequently added repository file tests/spec_1795_head_race.rs unread; Spec supplied its full test contents as its reproducer, and the implementing agent inspected and ran the retained copy. Reports and exact counts are saved in .thirdshift-review-hgrrY4/ in the session worktree.

Unaddressed findings

Standards

None.

Spec

None.

Security

None.

Security review outcome

No unaddressed introduced findings.

Merge Danger

Door: two-way

Revert to restore targeted-only Fix invocation. No data migration.

Blast Radius: repairs

Scheduled Fix commands can select and repair one PR. Existing reservations serialize hosts. Self-merge requires a current actor-owned Review-run marker for the adopted head; without it a repaired PR stays ready for review.

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

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