From 538f46e459adad480bd5cd6ad11a442495ff8c38 Mon Sep 17 00:00:00 2001 From: Claude Date: Sat, 16 May 2026 14:07:12 +0000 Subject: [PATCH] require explicit release:* label on every PR in AGENTS.md The release workflow defaults to a patch bump when a merged PR has no release:* label. Docs-only PR #45 and test-only PR #50 were both opened unlabeled because AGENTS.md only mentioned the labels exist without instructing agents to apply one. #45 likely cut an empty patch release; #50 needed retroactive labeling before merge. Replace the passing mention with a short rubric covering when to use skip / patch / minor / major, and an explicit "before merge" deadline so future agents pick exactly one. https://claude.ai/code/session_01WjHPSobuzrRkjwUgjAJWMk --- AGENTS.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/AGENTS.md b/AGENTS.md index 64770d6..2096961 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -56,7 +56,12 @@ Don't go through the motions. A test that calls the function and `t.Fatal`s on a - Branches: `claude/` for AI-generated work (e.g. `claude/fix-issue-13-toolchain`). Reference the issue number when the change closes one. - Commits: imperative mood, lowercase first word, no trailing period. Keep the subject under 72 characters. -- PRs: include a Summary and Test Plan. Use `Fixes #N` / `Refs #N`. The release workflow reads labels (`release:patch` / `release:minor` / `release:major` / `release:skip`) — default is `patch`. +- PRs: include a Summary and Test Plan. Use `Fixes #N` / `Refs #N`. +- Every PR must carry exactly one `release:*` label. The release workflow reads it at merge time and defaults to `patch` when unlabeled, which means an unlabeled docs/test/CI PR cuts an empty patch release. Apply the label *before* merge: + - `release:skip` — no user-visible behavior change (tests-only, docs-only, CI/tooling, internal refactor) + - `release:patch` — bug fix, security patch, or dependency bump with no API / CLI / config-schema change + - `release:minor` — additive change: new flag, new subcommand, new optional config key + - `release:major` — breaking change to CLI surface, config schema, exit codes, or emitted metric names - Don't merge your own PRs. Don't push to `main`. Don't commit generated artifacts (the `connectivity` binary is gitignored). ## Issue triage