Skip to content

chore(framework): type issues instead of labelling them#422

Merged
blafourcade merged 1 commit into
nextfrom
chore/issue-templates
Jul 10, 2026
Merged

chore(framework): type issues instead of labelling them#422
blafourcade merged 1 commit into
nextfrom
chore/issue-templates

Conversation

@blafourcade

Copy link
Copy Markdown
Contributor

🎯 What & why

The issue forms applied labels: ["bug"] and labels: ["enhancement"]. Neither label exists on GitHub, so both directives were silently dropped: zero of the repo's 300 issues carries either one. Issue types (Bug, Feature, Task) are defined at the org level, and issue forms support a top-level type: key.

🛠️ How it works

  • Both forms swap labels: for type:. bug_report.yml sets type: Bug, feature_request.yml sets type: Feature.
  • Titles carry a scope. fix(<scope>): and feat(<scope>): , matching the scope commitlint.config.cjs already expects on the commit that closes the issue.
  • New roadmap.yml for maintainer-authored work: Problem, Scope, Acceptance criteria required; Prior art in this repo and Out of scope optional. No Code of Conduct checkbox, no OS dropdown — those belong on a contributor intake form, not on a roadmap item. The two optional sections are the ones that surfaced duplicates during the backlog triage that prompted this PR.
  • labels.yml drops bug, enhancement, documentation, security. Types replace them. What survives is what a bot or a human actually reads: good first issue, dependencies (dependabot), autorelease: * (release-please).

The dependencies label was missing on GitHub too, so dependabot dropped it on every PR (#401, #400, #399, #398, #362 all landed unlabelled). It has been created out-of-band; the GitHub label set now matches labels.yml exactly.

🧪 How to verify

# every template parses, and none applies a label
for f in .github/ISSUE_TEMPLATE/*.yml .github/labels.yml; do yq e '.' "$f" >/dev/null && echo "OK $f"; done
grep -r '^labels:' .github/ISSUE_TEMPLATE/ ; echo "exit=$?  # 1 = no label left"

# live label set equals the canonical list
gh label list --repo ai-driven-dev/framework | cut -f1 | sort
yq e '.[].name' .github/labels.yml | sort

Then open https://github.com/ai-driven-dev/framework/issues/new/choose: three forms, each stamping a type.

✅ I certify

  • I DO CERTIFY I READ EACH LINE OF THE PULL REQUEST BECAUSE I AM A SOFTWARE ENGINEER, NOT A AI PUPPY.

The forms applied `labels: ["bug"]` and `labels: ["enhancement"]`, but neither
label existed on GitHub, so every issue created through them landed unlabelled:
zero of the repo's 300 issues carries one. Issue types (Bug, Feature, Task) are
defined at the org level and the forms can set them directly.

- Both forms swap `labels:` for `type:` and scope their title prefix, matching
  the scope commitlint already expects on the commit.
- New `roadmap.yml` for maintainer-authored work: Problem, Scope, Acceptance
  criteria, and two optional sections that catch duplicates before they ship.
- `labels.yml` keeps only what a bot or a human actually reads.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@blafourcade blafourcade merged commit 86051b7 into next Jul 10, 2026
7 checks passed
@blafourcade blafourcade deleted the chore/issue-templates branch July 10, 2026 10:16
blafourcade added a commit that referenced this pull request Jul 10, 2026
The forms applied `labels: ["bug"]` and `labels: ["enhancement"]`, but neither
label existed on GitHub, so every issue created through them landed unlabelled:
zero of the repo's 300 issues carries one. Issue types (Bug, Feature, Task) are
defined at the org level and the forms can set them directly.

- Both forms swap `labels:` for `type:` and scope their title prefix, matching
  the scope commitlint already expects on the commit.
- New `roadmap.yml` for maintainer-authored work: Problem, Scope, Acceptance
  criteria, and two optional sections that catch duplicates before they ship.
- `labels.yml` keeps only what a bot or a human actually reads.

Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
@aidd-bot aidd-bot Bot mentioned this pull request Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant