feat(review): wire review.auto_merge_summary into the unified comment (#4147) - #4817
Merged
Conversation
…#4147) buildAutoMergeSummaryCollapsible (#2051) was a pure, unit-tested render primitive with zero real callers -- setting review.auto_merge_summary in .gittensory.yml had no visible effect, unlike every other opt-in render toggle (changed_files_summary, effort_score, ...), which all flow through resolveReviewPromptOverrides into a real queue/processors.ts call site. Adds autoMergeSummary to resolveReviewPromptOverrides (deterministic, no-AI, same shape as changedFilesSummary/effortScore), threads the flag through processors.ts the same way, and wires the collapsible into unified-comment-bridge.ts's extraCollapsibles chain. The four signals (ciGreen/gatePassing/mergeableClean/linkedIssueValid) reuse facts this pass already resolves for the readiness chip and gate verdict -- no extra fetch. Rendered right after manifest validation, ahead of the structural/visual collapsibles, since it's decision-relevant.
Contributor
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #4817 +/- ##
=======================================
Coverage 94.22% 94.22%
=======================================
Files 441 441
Lines 38745 38750 +5
Branches 14106 14109 +3
=======================================
+ Hits 36508 36513 +5
Misses 1577 1577
Partials 660 660
🚀 New features to boost your workflow:
|
This was referenced Jul 11, 2026
Closed
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.
Closes #4147.
Summary
buildAutoMergeSummaryCollapsible(src/review/unified-comment.ts:229, #2051) was a pure, unit-tested render primitive with zero real callers — settingreview.auto_merge_summaryin.gittensory.ymlhad no visible effect, unlike every other opt-in render toggle (review.changed_files_summary,review.effort_score, ...), which all flow throughresolveReviewPromptOverridesinto a realsrc/queue/processors.tscall site.autoMergeSummarytoresolveReviewPromptOverrides(src/signals/focus-manifest.ts) — deterministic, no-AI, exact same shape aschangedFilesSummary/effortScore.autoMergeSummaryEnabledForReviewthroughsrc/queue/processors.tsthe same way its siblings are threaded, resolved unconditionally (must render even when the AI review pass itself is skipped).unified-comment-bridge.ts'sUnifiedCommentBridgeArgs/buildUnifiedCommentBodyextraCollapsibleschain — rendered right after manifest validation, ahead of the structural/visual collapsibles, since it's decision-relevant content.ciGreen/gatePassing/mergeableClean/linkedIssueValid) reuse the SAMEciState/mergeStateLabel/gate-conclusion/pr.linkedIssuesfacts this pass already resolves for the readiness chip and gate verdict — no extra fetch.gatePassingmirrors the gate's own "no hard blocker" definition (conclusion === "success");linkedIssueValidmirrorsmissing_linked_issue's own "has at least one linked issue reference" check.Test plan
npx tsc --noEmit— cleannpm run docs:drift-check,npm run manifest:drift-check,npm run engine-parity:drift-check— all passnpm audit --audit-level=moderate— 0 vulnerabilitiesresolveReviewPromptOverrides'sautoMergeSummaryfield (parse + default-off),buildUnifiedCommentBodyrenders/omits the collapsible correctly, and a full webhook →processJob→ posted-comment e2e test asserting all four condition marks render correctly from a real fixture (CI passed, gate success,mergeable_state: clean, a linked issue in the PR body)