chore: add Copilot prompt for PR interface review [no-ci]#329
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a GitHub Copilot prompt file intended to standardize “public interface / contract impact” reviews for pull requests that modify exported APIs, schemas, wire formats, or CLI/config flags.
Changes:
- Added a new prompt at
.github/prompts/pr-interface-review.mddescribing a step-by-step interface/contract review process. - Introduced a 6-tier classification rubric for interface changes (breaking → brand-new) plus a reporting/output template.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| - Files under `types/`, `models/`, `schemas/`, `requests/`, `responses/`, `dto/`, `api/`, `proto/`, `openapi/`, `*.d.ts`. | ||
| - Generated SDK files (Fern, OpenAPI Generator, protoc, etc.) — these are public surface even when auto-generated. | ||
| - Any file whose path or name suggests it defines a contract (`*_request.py`, `*Params`, `*Response`, `I*.ts`, `*.proto`). | ||
| 3. **Ignore** lockfiles, vendored code, fixtures, internal helpers, and tests — except note when a test was *deleted* (see Step 5). |
|
|
||
| Use this template per interface: | ||
|
|
||
| ``` |
GregHolmes
approved these changes
May 6, 2026
This was referenced May 6, 2026
lukeocodes
added a commit
to deepgram/deepgram-python-sdk
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
lukeocodes
added a commit
to deepgram/mcp
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
lukeocodes
added a commit
to deepgram/cli
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
lukeocodes
added a commit
to deepgram/agent
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
lukeocodes
added a commit
to deepgram/deepgram-java-sdk
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
lukeocodes
added a commit
to deepgram/deepgram-rust-sdk
that referenced
this pull request
May 6, 2026
Refines `.github/prompts/pr-interface-review.md` based on Copilot review feedback raised during the [original rollout](deepgram/dx-stack#3): 1. **Step 1 / Step 5 consistency** — Step 1 said *"ignore tests except deleted"* but Step 5 also requires reviewing **added** tests that prove compat shims. Broadened Step 1 to cover added, deleted, and modified-to-remove tests. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) 2. **Tier 6 broadened** — original wording only mentioned same-named local symbols as collision vectors. Now also covers glob/namespace imports (Python `from X import *`, Rust `use X::*`, Go dot-imports, TypeScript `import * as` destructuring). (raised on [`deepgram/deepgram-js-sdk#495`](deepgram/deepgram-js-sdk#495)) 3. **Fence language** — the template fenced block now declares `markdown` to satisfy markdownlint MD040. (raised on [`deepgram/deepgram-go-sdk#329`](deepgram/deepgram-go-sdk#329)) Canonical source: [`deepgram/dx-stack`](https://github.com/deepgram/dx-stack/blob/main/.github/prompts/pr-interface-review.md). Rollout context: [`docs/copilot-prompts.md`](https://github.com/deepgram/dx-stack/blob/main/docs/copilot-prompts.md). `[no-ci]` — docs-only refinement to a previously-merged file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds
.github/prompts/pr-interface-review.md— a Copilot prompt file for systematic per-interface review of PRs that touch the public surface (types, schemas, exported symbols, wire formats, CLI flags).The prompt classifies every signature change into one of six tiers (🚨 breaking through 🆕 brand-new), flags compat measures already taken, and calls out gaps that remain. Specifically catches subtle failure modes — class→alias collapse, read-side vs write-side compat, default-value flips, enum widening, async/sync flips, generic variance changes.
Canonical source and rollout context:
deepgram/dx-stack.[no-ci]— docs-only addition.