Repository navigation
Report merges completed during Delivery as merged - #810
Merged
Merged
Conversation
This was referenced Oct 20, 2026
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
An externally merged PR was rejected as
merged, not openwhen its implementation session ended. Delivery now recognizes a completed merge and reports the actual outcome, including for a Run originally asking for ready for review.Closes #806
Evidence
cargo test --test merge_run a_pr_merged_while_the_opening_session_runs_is_reported_as_merged -- --exactfailed with exit 1 andPR … is merged, not open, matching the original run log. PR Deepen the Command reader around selection and ownership #800 merged at 11:05:09 UTC while the implementation session continued until 11:06:21 UTC.After: the regression passes for both ordinary Runs and Merge runs. A second regression covers a merge during CI. Both confirm the deleted Issue branch stays deleted.
bash /tmp/thirdshift-806-spec-repro.sh, failed: an edit hidden byassume-unchangedwas discarded after reporting success.After: the same reproduction passes for both
assume-unchangedandskip-worktree; the permanentexternally_merged_pr_retains_tracked_changes_hidden_by_index_flagsregression retains those edits. Staged, unstaged, untracked and newer committed work also remain retained on failure.cargo test --test merge_run: all 36 tests pass.cargo test --test pr_lifecycle: all 4 tests pass. Updated the pending-CI lifecycle regression to accept a completed merge while retaining closed/draft failures and branch-deletion checks.cargo test --test spec_push_race: all 3 tests pass. A merge observed before the push comparison reports completion and still leaves the deleted branch absent.cargo check --all-targets,cargo fmt --check, andcargo clippy --all-targets -- -D warningspass.cargo test --no-run --message-format=json, then ran every reported test executable with--test-threads=4under a four-worker runner that waits for every child and checks every exit code (python3 /tmp/issue-806-full-suite.py).Test seams
Unaddressed findings
Standards
None. No Standards findings.
Spec
None. The one P1 finding about hidden tracked edits was reproduced as written, fixed, and retained as a regression test. The Spec reviewer verified the correction.
Security
No introduced Security finding was confirmed. This guidance review is incomplete because the skill's required execution sandbox could not start:
bwrap: Creating new namespace failed: Resource temporarily unavailable(exit 1). Repository code and proof-of-concept tests were not executed, and no source fix was made.Source inspection covered all eight changed files in
git diff fbdde945c44a045591d2d59daef01b5cc85f9064...HEADand supporting PR identity, Delivery, GitHub snapshot, worktree ownership, cleanup and failure-preservation code. Relevant attack-class guidance and the repository's trust and Self-merge ADRs were read; no SECURITY.md or standalone threat model was found.To complete validation, use a host supporting the skill's required no-network, read-only-source sandbox with an allowlisted environment and resource limits. Run the focused merge, PR lifecycle and push-race regressions with local fakes; run any candidate proof-of-concept on both HEAD and the untouched pinned merge base before classifying or fixing it. This blocker is a validation gap, not a confirmed Security finding.
Security review outcome
Review coverage
Independent Standards and Spec reviews used
mainas the fixed point. Both reviewed all eight changed files, including the correction insrc/worktree/acquisition.rsand the updated lifecycle and push-comparison regressions. Changed files left unread: none on either axis. Generated-output exclusions: none.Final reports and each axis's combined files-read list are saved in
.thirdshift-review-7h4Xy7/standards.mdand.thirdshift-review-7h4Xy7/spec.mdin the implementation workspace.Merge Danger
Door: two-way
No persisted format or configuration changes.
Blast Radius: Delivery
Changes terminal merge classification for Runs and Spec PRs. Closed, retargeted or mismatched PRs still fail; local work omitted from the merge remains retained. Self-merge authorization remains with thirdshift.
Built with codex · gpt-6.1-sol · high