Repository navigation
Monitor and repair Base branch CI in unscoped Fix Passes - #1807
Merged
Merged
Conversation
Preserve Base branch CI repair documentation alongside Inbox pull-request hand-off and Copy fix command. Regenerate the user manual from the merged source. Validation: scripts/affected-tests origin/issue-1784 passed (site, Console, full Rust suite). Rust suite: 2360.94s including compilation. cargo clippy --all-targets -- -D warnings and cargo fmt --check passed.
This was referenced Nov 6, 2026
Merged
Closed
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
Merge and email flags/config apply to Base branch repairs. Self-merge closes matching CI-red reports and Base fix issues. Author-scoped Passes retain PR-only selection.
Closes #1796
Evidence
Execution evidence
Before:
cargo test --test fix_base_ci first_failed_base_attempt -- --nocapturefailed: expected one re-run, observed zero; stderr saidno eligible pull request targeting main on acme/widgets.After: same command passed (
1 passed; 0 failed).Before:
cargo test --test spec_1796 failed_push_with_no_jobs_is_repaired_despite_an_unrelated_green_status -- --exact --nocapturefailed: expected one repair session, observed zero when an unrelated status was green.After: same command passed (
1 passed; 0 failed); regression test retained.cargo test --test fix_base_ci --test fix_pass --test fix_run --test spec_1796: 30 passed, 4 fixture entries ignored. Covers re-run/skip, persistent and non-rerunnable failures, selected Base branch, duplicate PR states, all-red ownership, merge/email flags and config, and issue cleanup.UPDATE_PROMPTS=1 cargo test --bin thirdshift prompts_page, thencargo test --bin thirdshift prompts_page: 14 passed; existing generated prompts unchanged.cargo fmt --checkandcargo clippy --all-targets -- -D warnings: passed.CARGO_BUILD_JOBS=3 NEXTEST_TEST_THREADS=3 RUST_TEST_THREADS=3 /usr/bin/time -p scripts/affected-tests origin/issue-1784: site checks passed (62 tests, 62.01s). The older local Rust run was intentionally stopped with SIGTERM after 1924.38s, compilation included, once successful CI covered the final head; it was not a completed local full-suite pass.The full Rust suite (
cargo nextest run) passed in CI on final head2c73015f. All applicable PR checks are green; the successful final-head CI was reused instead of repeating the full suite locally.Visual evidence
Paired documentation captures use the same page state and viewport: desktop 1440×900, mobile 390×844. Commit-pinned images are hosted in a secret Gist.
Home desktop (1440×900)
Home mobile (390×844)
How it works desktop (1440×900)
How it works mobile (390×844)
Architecture desktop (1440×900)
Architecture mobile (390×844)
Manual desktop (1440×900)
Manual mobile (390×844)
Test seams
thirdshift fixCLI, real Git repositories, and fake GitHub, Harness and email adapters: Base branch re-run/repair selection, Delivery, duplicate suppression, merge/email policy and issue cleanup.Review
Independent Standards and Spec reviewers used the fetched
issue-1784origin tip,af2cc4c5df97d26785a17a21e9186d8291e59a66, as the fixed point. The localissue-1784ref is stale and checked out in another Worktree, so it was left untouched.Standards raised 3 design judgement calls: consolidated Delivery scaffolding and latest-push reads; retained the scoped repository anchor described below. Spec raised 1 behavioral finding: reproduced with its exact command, fixed, and kept its test.
Both reviewers completed their one coverage follow-up against
2c73015f. All 18 changed files were read on each axis. Unread changed files: none. Generated-output exclusions: none; generated manual HTML was inspected directly. Reports and{"standards":3,"spec":1}summary are retained in.thirdshift-review-CpZ8qB/beside the Session trace.Unaddressed findings
Standards
IssueUrl.number = 0(src/fix/base_ci.rs:29–36). Plan decision: retain the existing Delivery, PullRequest and CI transport contracts for this ticket rather than broaden their issue-based interfaces. This anchor supplies repository fields only. The explicitRepairContext::BaseBrancharm insrc/delivery.rsbypasses issue handover, and Base branch completion closes real issues returned byclose_base_ci_issues, never the anchor. The publicdelivery_repairs_checks_also_red_on_base_and_self_merges_with_issue_cleanuptest exercises CI Repair, Self-merge and real issue cleanup. This is a scoped compatibility choice, not a request for a Spec or Day shift decision.Spec
None.
Security
None.
Security review outcome
No unaddressed introduced findings.
Merge Danger
Door: two-way
Reverting restores PR-only selection for unscoped Fix Passes.
Blast Radius: repository
Unscoped scheduled Fix Passes can now author Base branch repair PRs; configured Self-merge and email policy determine delivery.
Built with codex codex-cli 0.164.0 · gpt-6.1-sol · xhigh