feat: first-class PR comment markdown via --pr-comment-output#289
Open
aidenybai wants to merge 1 commit into
Open
feat: first-class PR comment markdown via --pr-comment-output#289aidenybai wants to merge 1 commit into
--pr-comment-output#289aidenybai wants to merge 1 commit into
Conversation
|
🔴 No new issues 0/100 (unchanged) Reviewed by react-review for commit 18de41d. Configure here. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
d702581 to
53c60c5
Compare
71b2e54 to
18bdcc6
Compare
53c60c5 to
4db24e7
Compare
18bdcc6 to
7d8b50a
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 7d8b50a. Configure here.
4db24e7 to
a9c3e64
Compare
7d8b50a to
c8736b1
Compare
a9c3e64 to
62eba8e
Compare
c8736b1 to
56c2ac3
Compare
62eba8e to
dd93a69
Compare
Third and final PR of the #286 split. Stacked on cursor/baseline-and-touched-lines-675b (#288). - New `--pr-comment-output <path>` CLI flag writes a sticky-PR-comment- ready markdown document to a side file. Compose with --pr-comment so one scan produces both the build-log plaintext (stdout) and the structured markdown (file) without re-invoking the scanner. - buildPrCommentMarkdown: `<!-- react-doctor -->` marker, per-rule `<details>` groups with severity icons + file:line refs + suppression snippets, per-package summary block for monorepos (worst-scored project drives the headline), baseline-aware framing ("no new violations introduced by this PR"), touched-lines footnote when filtering removed diagnostics. - action.yml: single-scan dual-output integration. The github-script step now prefers the markdown file when available and falls back to the legacy plaintext-in-fence layout when running against older react-doctor versions. - 6 new tests in build-pr-comment-markdown plus updated github-action contract tests for the single-scan + PIPESTATUS preservation. 1223 tests passing. Co-authored-by: Aiden Bai <aidenybai@users.noreply.github.com>
56c2ac3 to
18de41d
Compare
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.

Third and final PR of the #286 split. Stacked on #288 (
cursor/baseline-and-touched-lines-675b), which is itself stacked on #287. Merge order: #287 → #288 → this PR.What's new
--pr-comment-output <path>One scan, two outputs:
--pr-commentplaintext for the build log.The action.yml previously had to invoke
npx react-doctor@latesttwice (once for plaintext, once for markdown). Now it's a single invocation.buildPrCommentMarkdown(report)— structured rendering<!-- react-doctor -->marker so a GitHub Action comment-updater can idempotently replace its previous post.<details>groups with severity icons, file:line references, and copy-pasteable// eslint-disable-next-line …suppression snippets."no new violations introduced by this PR"when only baseline issues remain, taken from feat: baseline mode + touched-line enforcement #288'sJsonReportSummary.baselineDiagnosticCount.diagnosticsHiddenByTouchedLines).action.ymlintegrationThe github-script step prefers the markdown file when available; it falls back to the legacy plaintext-in-fence layout when running against older
react-doctorversions that don't ship--pr-comment-output.Stats
build-pr-comment-markdown.github-actioncontract tests for the single-scan +PIPESTATUSpreservation.Originally landed as part of #286.