ci: eliminate duplicate PR runs, add pr-gate#22
Conversation
There was a problem hiding this comment.
Pull request overview
This PR restructures GitHub Actions workflows to avoid duplicate CI runs on PR pushes by moving lightweight PR checks into a dedicated workflow while keeping heavier Docker-related work push-only.
Changes:
- Removed the
pull_requesttrigger fromci.ymland addedpaths-ignoreunderpush. - Added a new
pr-gate.ymlworkflow to run backend flake8 syntax checks and a frontend build on PRs. - Added PR-level concurrency cancellation to reduce redundant in-flight runs.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| .github/workflows/pr-gate.yml | New PR-only “gate” workflow that runs lightweight backend linting and a frontend build, with concurrency cancellation. |
| .github/workflows/ci.yml | Converts CI to push-only and ignores docs/Markdown-only changes to reduce unnecessary runs. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d2102b65df
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
- Generate frontend/package-lock.json so npm ci works in pr-gate - Remove paths-ignore from pr-gate.yml (required status checks must always run) - Fix *.md → **/*.md in ci.yml paths-ignore for recursive matching
Fixes GHSA-4w7w-66w2-5vf9 (vite path traversal) and GHSA-67mh-4wv8-2f99 (esbuild). Bumps @vitejs/plugin-react to 4.7.0 for vite 6 compatibility. Build verified clean.
Summary
Test plan