mirror of
https://github.com/makeplane/plane.git
synced 2026-07-09 20:10:06 +02:00
Add react-doctor for React lint/a11y/perf/architecture diagnostics: - Add react-doctor devDependency and "doctor" npm script - Add .claude/skills/react-doctor skill for local triage workflow - Add GitHub Actions workflow to scan PRs and track health score
63 lines
2.9 KiB
YAML
63 lines
2.9 KiB
YAML
# React Doctor — finds security, performance, correctness, accessibility,
|
|
# bundle-size, and architecture issues in React codebases.
|
|
#
|
|
# Docs: https://www.react.doctor/ci
|
|
# Source: https://github.com/millionco/react-doctor
|
|
|
|
name: React Doctor
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened, ready_for_review]
|
|
# Scans `main` on every push so you get a health-score trend on the
|
|
# default branch — useful for tracking the overall number commit-by-commit
|
|
# and catching regressions that slipped past PR review. PR-specific steps
|
|
# (the sticky summary comment) are skipped automatically on `push` events.
|
|
# Comment this block out if you only want PR-time scans.
|
|
push:
|
|
branches: [main]
|
|
|
|
permissions:
|
|
# `actions/checkout` needs this to read the repo source.
|
|
contents: read
|
|
# Two uses: (1) reads the PR's changed-file list so the scan only checks
|
|
# what the PR touched (faster, scoped to the diff), and (2) posts/updates
|
|
# the sticky React Doctor summary comment on the PR. Downgrade `write` to
|
|
# `read` to keep the changed-file scan but disable comment posting.
|
|
pull-requests: write
|
|
# The sticky-comment step uses GitHub's `issues.createComment` /
|
|
# `issues.updateComment` endpoints — those are the same APIs that back PR
|
|
# comments (PRs are issues under the hood). Not exercised on `push`
|
|
# events, so safe to drop if you only run on `main`.
|
|
issues: write
|
|
# Lets the action publish a commit status with the score + error/warning
|
|
# counts (links to the run). This is how a `push` to `main` surfaces its
|
|
# result, since the PR comment is skipped off pull requests. Drop it to
|
|
# disable the status (or set `commit-status: false` below).
|
|
statuses: write
|
|
|
|
# Cancels any in-flight scan for the same PR (or branch, on push) the moment
|
|
# a new commit arrives, so reviewers only ever see the latest run.
|
|
concurrency:
|
|
group: react-doctor-${{ github.event.pull_request.number || github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
react-doctor:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
|
|
- uses: millionco/react-doctor@v2
|
|
# Common configuration knobs — uncomment any to override the default.
|
|
# Full reference: https://www.react.doctor/ci
|
|
# with:
|
|
# blocking: warning # Gate level: "error" (default) | "warning" | "none" (advisory)
|
|
# scope: full # On PRs, scan the whole project instead of just changed files
|
|
# comment: false # Disable the sticky PR summary comment
|
|
# review-comments: false # Disable inline review comments on changed lines
|
|
# commit-status: false # Disable the commit status (score + counts, links to the run)
|
|
# version: "0.4.0" # Pin to a specific react-doctor version instead of "latest"
|
|
# directory: apps/web # Scan a sub-directory (default: ".")
|
|
# project: "web,admin" # In a monorepo, scan specific workspace project(s)
|