◐ Shell
reader mode source ↗
Skip to content

Add Copilot instructions for PR labeling#2310

Open
andyleejordan wants to merge 1 commit into
mainfrom
andyleejordan/copilot-pr-label-instructions
Open

Add Copilot instructions for PR labeling#2310
andyleejordan wants to merge 1 commit into
mainfrom
andyleejordan/copilot-pr-label-instructions

Conversation

@andyleejordan

Copy link
Copy Markdown
Member

Why

PowerShellEditorServices has no .github/copilot-instructions.md, so Copilot agents (and humans) opening PRs get no guidance on labeling. This matters for the changelog: GitHub's auto-generated release notes categorize merged PRs by their Issue-* label, per .github/release.yml:

  • Issue-EnhancementEnhancements & Features ✨
  • Issue-BugSquashed Bugs 🐛
  • everything else → the "*" catch-all → Other Changes 🙏

So a PR with no Issue-* label is silently miscategorized into "Other Changes". Ignore excludes a PR from the changelog, and dependabot PRs are excluded by author.

What

Adds a focused "Pull Request Labels" policy stating every PR must carry at least one Area-* label and exactly one Issue-* label (Issue-Bug / Issue-Enhancement / Issue-Performance), with OS-* for platform-specific changes and Ignore to exclude from release notes.

It references .github/release.yml as the source of truth for the changelog mapping and tells readers to run gh label list for the authoritative Area-* set rather than hard-coding a list that will drift — so it does not duplicate existing config or CONTRIBUTING.

@andyleejordan andyleejordan requested a review from a team as a code owner June 16, 2026 01:35
Copilot AI review requested due to automatic review settings June 16, 2026 01:35
@andyleejordan andyleejordan added Area-Documentation Issue-Enhancement A feature request (enhancement). labels Jun 16, 2026

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Hide comment

Pull request overview

This PR adds a new .github/copilot-instructions.md file to provide Copilot agents (and human contributors) with guidance on how to label pull requests. The labels drive GitHub's auto-generated release notes via .github/release.yml, so correct labeling is important for changelog accuracy.

Changes:

  • Introduces a labeling policy requiring at least one Area-* label, exactly one Issue-* label, and optionally OS-* or Ignore labels.
  • Documents the connection between Issue-* labels and the changelog categories defined in .github/release.yml.
  • Points readers to gh label list and the repo's Labels page for the current label set, avoiding hard-coded lists that could drift.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@andyleejordan andyleejordan left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Hide comment

Bah why can't I approve this myself it's just instructions I asked it to add. Please approve @SeeminglyScience or @JustinGrote

We had no `.github/copilot-instructions.md`, so agents working in this repo had
to rediscover how to build and test, how the projects fit together, and how we
label pull requests. This adds a single instructions file covering all of it:

- **Build & Test** — `dotnet` directly for the fast inner loop versus
  `Invoke-Build` (which needs `InvokeBuild`/`platyPS`) for assembling the full
  module and running the complete CI suite.
- **Architecture** — the project layout, key services, the LSP/DAP handler
  pattern, and how the server is wired up.
- **Conventions** — C# style enforced by `.editorconfig`, the xUnit testing
  setup, and the multi-targeting story.
- **Pull Request Labels** — every PR needs at least one `Area-*` label and
  exactly one `Issue-*` label (plus `OS-*` and `Ignore` when relevant). The
  `Issue-*` label is what GitHub's auto-generated release notes key off of (see
  `.github/release.yml`); a PR without one silently falls through to "Other
  Changes 🙏".

The build, architecture, and conventions content previously rode along in #2298;
consolidating it here keeps that PR focused on its LSP changes and gives us a
single source of truth for the instructions.

Drafted by Copilot (Claude Opus 4.8).

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@andyleejordan andyleejordan force-pushed the andyleejordan/copilot-pr-label-instructions branch from 86e06dc to 696233c Compare June 16, 2026 15:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area-Documentation Issue-Enhancement A feature request (enhancement).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants