Paste a link. Get a real review.

Full diff context, line-anchored findings, saved to your history — one paste, not a chat window.

Start reviewing a PR

src/review/runReview.ts

+1 -1

1212 const { files } = await fetchDiff(prUrl);
13 const findings = await runReview(files);
13 const findings = await runReview(files, { crossFile: true });
1414 return {
1515 summary: summarize(findings),
1616 findings,
1717 };
Warningcross-file

New crossFile option isn't threaded through every runReview call site — check other callers.

src/webhooks/pullRequestHandler.ts

+4 -0

1414 const prUrl = payload.pull_request.html_url;
1515 const { findings, summary } = await reviewPullRequest(prUrl);
16 if (findings.some((f) => f.severity === "critical")) {
17 await notifySlackChannel(summary, findings);
18 }
19
1620 await postReviewComment(prUrl, findings);
1721}
Criticalbug

notifySlackChannel is awaited before postReviewComment — if Slack fails, the PR comment never posts.

src/review/runReview.test.ts

+8 -0

2020 expect(findings).toHaveLength(0);
2121 });
22
23 it("flags cross-file signature drift", async () => {
24 const files = [changedSignatureFile, staleCallerFile];
25 const findings = await runReview(files, { crossFile: true });
26 expect(findings.some((f) => f.category === "cross-file")).toBe(true);
27 });
2228});
Suggestionstyle

Assert on the specific finding's filePath too, not just its category.

example/code-review-companion

Add cross-file awareness to runReview

Reviewed

Threads a new crossFile option through the reviewer, but one caller downstream wasn't updated to match.

CriticalWarningSuggestion