Add CI automation: benchmarks, AI labeler, path labeler - #5
Conversation
There was a problem hiding this comment.
Pull request overview
This PR adds GitHub Actions automation to reduce CI gaps vs the seed templates by introducing benchmark regression checks and automated PR labeling (path-based and AI-based) to support release tooling.
Changes:
- Add a benchmarks job to the existing test workflow (run on pushes to
main) with baseline caching and benchstat comparison. - Add a path-based PR labeler workflow and label rules.
- Add an AI-driven PR classifier (bug/enhancement/documentation) plus an AI-based breaking-change detector for exported Go API diffs, backed by prompt files.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| .github/workflows/test.yml | Adds a benchmarks job with caching + benchstat comparison/regression detection. |
| .github/workflows/labeler.yml | Adds a workflow to apply labels based on .github/labeler.yml. |
| .github/workflows/ai-labeler.yml | Adds AI PR classification + breaking-change detection workflows. |
| .github/prompts/classify-pr.prompt.yml | Defines the classification prompt used by the AI labeler. |
| .github/prompts/detect-breaking.prompt.yml | Defines the breaking-change detection prompt and JSON schema. |
| .github/labeler.yml | Defines path-to-label mapping rules for the labeler workflow. |
💡 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: b8ba80a6d7
ℹ️ 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".
Runs on push to main when Go files change. Uses benchstat to compare against cached baseline; >20% regression emits ::error:: and fails. Results posted to step summary and uploaded as artifact.
Two-job workflow: classify labels PRs as bug/enhancement/documentation for release note categorization; breaking detects exported Go API surface changes and posts a PR comment when found.
Labels PRs by changed paths: ci, tests, docs, deps, skills, seed, actions, prompts. Feeds into release.yml changelog categories.
b8ba80a to
d8770b0
Compare
d8770b0 to
28330f1
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 11 out of 11 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
check-toolchain detects PATH go vs GOROOT go mismatches (mise environments); wired as prerequisite to build and test. test-coverage generates coverage.out and coverage.html. coverage alias auto-opens the report in a browser. Document all three in MAKEFILE-CONVENTION.md "Optional (recommended)" table.
Open(initialContent) launches $EDITOR (default vi) with a temp file, waits for close, returns the edited text. Supports editors with arguments (e.g. EDITOR="code --wait") via strings.Fields splitting. Guards against whitespace-only $EDITOR and empty results.
28330f1 to
6c2dc3c
Compare
Summary
editor.Open(initialContent)API for$EDITORintegration, used by CLIs that need interactive text compositioncheck-toolchain,test-coverage, andcoveragetargetsCloses the CI gap between the seed templates and this library repo. The labeler workflows will self-exercise on this PR.
Also pushed directly to main (trivial):
CODEQL_EXTRACTOR_GO_BUILD_TRACINGenv on CodeQL build stepTest plan
make checkpasses locallyci,prompts)