Skip to content

chore: add issue forms, CODEOWNERS, labels and release notes categories - #110

Open
aryanjasala wants to merge 5 commits into
mainfrom
chore/community-files
Open

aryanjasala wants to merge 5 commits into
mainfrom
chore/community-files

Conversation

@aryanjasala

Copy link
Copy Markdown
Member

What this PR does

Gets the repository ready for outside contributors, as the Q3 plan asks for all five public framework repositories: issue forms instead of blank issues, code owners, one shared label set and grouped release notes. SECURITY.md already exists here and is unchanged; the other four repositories now follow it.

Closes

N/A

Changes

  • Issue forms. bug.yml asks for the package version, PHP and WordPress versions, the affected class or area, what happened, what was expected, steps and logs. feature.yml asks for the area, the problem, the proposal, alternatives and compatibility with 2.x. config.yml turns off blank issues and points security reports to private vulnerability reporting. The internal task.md template stays.
  • .github/CODEOWNERS: * @aryanjasala @AnuragVasanwala @Adi-ty.
  • .github/labels.yml: 31 labels, the shared set (Type: * including a new Type: Feature, Priority: P0-P3, Status: *, BC: *, dependencies, good first issue, help wanted) plus this repository's Scope: * labels, with the live colours and descriptions.
  • .github/release.yml keeps excluding Dependabot and now groups generated release notes as Breaking changes, Features (Type: Feature, BC: Additive), Fixes, Docs, Dependencies and Other.
  • CHANGELOG entry under [Unreleased].
  • Label descriptions use colons instead of dashes (for example Critical: blocks milestone). The live labels still have dashes, so the next label sync updates their descriptions.
  • If wp-primitives later moves to release-please (round 2, PR 12), .github/release.yml becomes dead weight there too and should go, as it does in the three repos that already use release-please.

How I verified

Every new YAML file parses with yq and passes yamllint; the issue forms were checked against GitHub's form schema by hand. Private vulnerability reporting is on, and every CODEOWNERS handle has write access.

Acceptance criteria

Runtime behavior

  • New issues offer the two forms and no blank issue
  • Security reports go to private vulnerability reporting
  • Labels synced to the repository (after merge)

Code quality

  • Lint: zero errors
  • Static analysis: n/a
  • Tests pass (no code changed)

Housekeeping

  • CHANGELOG.md entry under ## [Unreleased]

Reviewer notes

  • labels.yml is data, not settings. Merging it changes no label; I'll apply it with gh label create --force after merge.
  • labels.yml keeps every label the repository has today, including four from its wp-devtools days (Scope: Dev Monitor, Scope: AI Privacy, Scope: Collector Interfaces, Status: Needs Privacy Check). Pruning those is a separate decision; the sync never deletes a label.

Bug report and feature request forms replace blank issues for outside contributors; config.yml sends security reports to private vulnerability reporting. The internal task template stays, and SECURITY.md is unchanged: it is the model the other framework repositories now follow.
labels.yml records the label set shared across the rtCamp framework repositories plus this repository's Scope labels, with live colours and descriptions. release.yml keeps excluding Dependabot and now groups generated release notes by those labels.
Feature requests set the org issue type but carried no label, and release notes filed features under BC: Additive only. Add Type: Feature to the shared label set, apply it from the feature form, and list it first under Features in release.yml.
Copilot AI balanced review requested due to automatic review settings November 5, 2026 23:47

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The template’s additive option presents potentially breaking interface or abstract-method changes as safe for 2.x and needs to classify new contract requirements as breaking.

1 open issue
What changed in this PR

Prepares wp-primitives for outside contributors with repository-level issue intake, review ownership, and release-note configuration. No runtime code changes.

Changes:

  • Adds bug and feature forms, disables blank issues, and links private security reporting.
  • Defines code owners and a 31-label set for manual synchronization after merge.
  • Groups generated release notes by label and documents the changes.
File Description
CHANGELOG.md Records contributor-support additions under Unreleased.
.github/​release.yml Adds release-note categories and retains Dependabot exclusions.
.github/​labels.yml Defines shared and repository-specific labels.
.github/​ISSUE_TEMPLATE/​feature.yml Collects proposals, alternatives, and compatibility information.
.github/​ISSUE_TEMPLATE/​config.yml Disables blank issues and links private vulnerability reporting.
.github/​ISSUE_TEMPLATE/​bug.yml Collects environment details, reproduction steps, and logs.
.github/​CODEOWNERS Assigns repository-wide review owners.

Review effort: Balanced

Comment thread .github/ISSUE_TEMPLATE/feature.yml Resolved
@aryanjasala aryanjasala mentioned this pull request Nov 6, 2026
4 of 6 tasks
… labels

The Additive option listed "a new method or optional parameter", but a
new abstract or interface method, or a new parameter on a method that
subclasses override, breaks existing implementations (PHP 8.2 fatals on
the incompatible declaration). The options now say so, matching
docs/upgrading.md.

The scope labels now match the forms' Area dropdown (Contracts, Loaders,
Utilities, AI Sync). The three wp-devtools scopes and the privacy-check
status move to a legacy section: they are still on closed issues.
Copilot AI balanced review requested due to automatic review settings November 6, 2026 00:24

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues are recorded for these contributor-facing repository configuration and documentation changes.

No open issues 🎉

1 resolved since last review

Review effort: Balanced

@Adi-ty Adi-ty left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Before merging, please run the labels.yml sync: Type: Feature, Scope: Contracts, Scope: Loaders, Scope: AI Sync, good first issue and help wanted don't exist on the repo yet, so the feature form's label would be dropped.

This branch has not been deployed

No deployments
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.

3 participants