Skip to content

fix(#2054): synthesize review body when findings contradict summary#67

Closed
guyoron1 wants to merge 10 commits into
mainfrom
mirror/2189-2054-review-summary-consistency
Closed

fix(#2054): synthesize review body when findings contradict summary#67
guyoron1 wants to merge 10 commits into
mainfrom
mirror/2189-2054-review-summary-consistency

Conversation

@guyoron1

Copy link
Copy Markdown
Owner

Mirror of upstream fullsend-ai#2189

When review findings contradict the summary verdict, the review body is now re-synthesized to match the findings, preventing confusing reviews where the summary says "looks good" but findings list critical issues.

…t summary

When the review agent produces a result where the action is
request-changes with critical/high findings but the body omits
those findings (e.g. says "No findings"), the sticky comment
misleads reviewers into thinking the review is clean.

The previous approach (PR fullsend-ai#2055, closed) used regex replacement
to patch "No findings" text in-place. This was fragile: the
regex could match inside longer phrases, ReplaceAllString could
duplicate content, and inserting bullet lists mid-sentence
produced malformed markdown.

This fix takes a different approach. Instead of string surgery,
ensureBodyFindingsConsistency checks whether the body references
any critical/high finding categories (case-insensitive substring
match on hyphenated tokens like "logic-error", "auth-bypass").
If none are referenced, the entire body is replaced with one
synthesized from the structured findings array using the standard
review format from the pr-review skill.

The pr-review skill is also updated with an explicit instruction
that when action is request-changes or reject, the body MUST
list the findings — fixing the issue closer to the source while
the CLI provides a safety net.

Note: pre-commit could not run in the sandbox due to shellcheck
network restrictions (infrastructure issue, not code issue).

Closes fullsend-ai#2054
@guyoron1

Copy link
Copy Markdown
Owner Author

/fs-qf

@fullsend-ai-review

fullsend-ai-review Bot commented Jun 21, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:18 PM UTC · Completed 12:30 PM UTC
Commit: 1cf60b6 · View workflow run →

@fullsend-ai-review

fullsend-ai-review Bot commented Jun 21, 2026

Copy link
Copy Markdown

Review

Reason: stale-head

The review agent reviewed commit 0ddd66d2ecea86fc93dbc465d98575e5437c9885 but the PR HEAD is now f8cbbcd4759a6322e5bdf13747362957da7a5d05. This review was discarded to avoid approving unreviewed code.

Previous run

Review

Reason: stale-head

The review agent reviewed commit b8e5bff461e4fc5e4d5c32cbdc87697b4fb3d4ff but the PR HEAD is now 0ddd66d2ecea86fc93dbc465d98575e5437c9885. This review was discarded to avoid approving unreviewed code.

Previous run (2)

Review

Reason: stale-head

The review agent reviewed commit 6165d022caa4e68388165057c29a1fe2524681d7 but the PR HEAD is now fd2bf11206eb315c1664a8e2b432f1256215d412. This review was discarded to avoid approving unreviewed code.

Previous run (3)

Review

Reason: stale-head

The review agent reviewed commit dad117730ebe1cdc75ee1f1ec7180fe8911c3735 but the PR HEAD is now 6165d022caa4e68388165057c29a1fe2524681d7. This review was discarded to avoid approving unreviewed code.

@fullsend-ai-review

Copy link
Copy Markdown

/fs-review

@fullsend-ai-review

fullsend-ai-review Bot commented Jun 21, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:32 PM UTC · Completed 12:43 PM UTC
Commit: 1cf60b6 · View workflow run →

@fullsend-ai-review

Copy link
Copy Markdown

/fs-review

Resolved all 8 review findings (3 major, 5 minor) in 1 iteration:
- Remove internal function names from Scope and Testing Goals
- Replace code-level Evidence with requirement-level traceability
- Add partial category coverage P0 scenario
- Simplify Testing Tools, add Head SHA risk, fix priorities
- Update Owning SIG to match component/harness label

Add QualityFlow output for fullsend-aiGH-2054 [skip ci]
@fullsend-ai-review

fullsend-ai-review Bot commented Jun 21, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:46 PM UTC · Completed 12:57 PM UTC
Commit: 1cf60b6 · View workflow run →

- STD YAML: 16 scenarios (11 unit tests, 5 functional)
- Go test stubs: 3 files with PSE comments (Phase 1 design)
- Coverage: all 16 STP scenarios mapped to test stubs
@fullsend-ai-review

Copy link
Copy Markdown

/fs-review

@fullsend-ai-review

fullsend-ai-review Bot commented Jun 21, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 12:59 PM UTC · Completed 1:12 PM UTC
Commit: 1cf60b6 · View workflow run →

QualityFlow and others added 2 commits June 21, 2026 13:02
…p ci]

- Standardize tier values to "Tier 1" (was "Unit Tests"/"Functional")
- Add patterns field to all 16 scenarios
- Fix metadata count fields (tier_1_count/tier_2_count)
- Remove related_prs from document_metadata
- Replace PR fullsend-ai#2189 references with fullsend-aiGH-2054 ticket reference
- Update review: APPROVED_WITH_FINDINGS → APPROVED (score 71.85 → 90.95)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@fullsend-ai-review

Copy link
Copy Markdown

/fs-review

QualityFlow and others added 2 commits June 21, 2026 13:18
Replaces intermediate pipeline artifacts with organized test files.

Total: 3 test files → qf-tests/fullsend-aiGH-2054/
Jira: fullsend-aiGH-2054
[skip ci]
@github-actions

Copy link
Copy Markdown

QualityFlow Pipeline Summary

Stage Agent Status
1 STP Builder
2 STP Reviewer
3 STP Refiner
4 STD Builder
5 STD Reviewer
6 STD Refiner
7 Test Generator

Test Output

Language Count Location
Go 3 files qf-tests/GH-2054/go/

Issue: GH-2054


Generated by QualityFlow

@guyoron1 guyoron1 closed this Jun 21, 2026
@guyoron1 guyoron1 deleted the mirror/2189-2054-review-summary-consistency branch June 21, 2026 14:26
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