Skip to content

Commit 4303bb9

Browse files
committed
Inline classification instructions and disable staged mode
1 parent 13ead9a commit 4303bb9

3 files changed

Lines changed: 88 additions & 82 deletions

File tree

.github/workflows/issue-classification.lock.yml

Lines changed: 19 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.github/workflows/issue-classification.md

Lines changed: 69 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@ tools:
1919
toolsets: [default]
2020
min-integrity: none
2121
safe-outputs:
22-
staged: true
2322
add-labels:
2423
allowed: [bug, enhancement, question, documentation, ai-triaged]
2524
max: 2
@@ -47,7 +46,75 @@ Your **only** job is to apply labels and, when necessary, leave a brief comment.
4746

4847
You must always apply the `ai-triaged` label.
4948

50-
{{#import shared/triage-classification.md}}
49+
## Issue Classification Instructions
50+
51+
You are classifying issues for the **copilot-sdk** repository — a multi-language SDK (Node.js/TypeScript, Python, Go, .NET) that communicates with the Copilot CLI via JSON-RPC.
52+
53+
### Classification Labels
54+
55+
Apply **exactly one** of these routing labels to each issue. If none fit, see "Unclassifiable Issues" below.
56+
57+
#### `bug`
58+
Something isn't working correctly. The issue describes unexpected behavior, errors, crashes, or regressions in existing functionality.
59+
60+
Examples:
61+
- "Session creation fails with timeout error"
62+
- "Python SDK throws TypeError when streaming is enabled"
63+
- "Go client panics on malformed JSON-RPC response"
64+
65+
#### `enhancement`
66+
A request for new functionality or improvement to existing behavior. The issue proposes something that doesn't exist yet or asks for a change in how something works.
67+
68+
Examples:
69+
- "Add retry logic to the Node.js client"
70+
- "Support custom headers in the .NET SDK"
71+
- "Allow configuring connection timeout per-session"
72+
73+
#### `question`
74+
A general question about SDK usage, behavior, or capabilities. The author is seeking help or clarification, not reporting a problem or requesting a feature.
75+
76+
Examples:
77+
- "How do I use streaming with the Python SDK?"
78+
- "What's the difference between create and resume session?"
79+
- "Is there a way to set custom tool permissions?"
80+
81+
#### `documentation`
82+
The issue relates to documentation — missing docs, incorrect docs, unclear explanations, or requests for new documentation.
83+
84+
Examples:
85+
- "README is missing Go SDK installation steps"
86+
- "API reference for session.ui is outdated"
87+
- "Add migration guide from v1 to v2"
88+
89+
### Unclassifiable Issues
90+
91+
If the issue doesn't clearly fit any of the above categories (e.g., meta discussions, process questions, infrastructure issues, license questions), do **not** apply a classification label. Instead, leave a brief comment explaining why the issue couldn't be automatically classified and that a human will review it.
92+
93+
### Classification Guidelines
94+
95+
1. **Read the full issue** — title, body, and any initial comments from the author.
96+
2. **Focus on the author's intent** — what are they trying to communicate? A bug report, a feature request, a question, or a documentation issue?
97+
3. **When in doubt between `bug` and `question`** — if the author is unsure whether something is a bug or they're using the SDK incorrectly, classify as `bug`. It's easier to reclassify later.
98+
4. **When in doubt between `enhancement` and `bug`** — if the author describes behavior they find undesirable but the SDK is working as designed, classify as `enhancement`.
99+
5. **Apply exactly one classification label** — never apply two classification labels to the same issue.
100+
6. **Do not assess validity** — your role is to route the issue, not to judge whether it's valid, reproducible, or a duplicate. Downstream agents handle those determinations.
101+
102+
### Repository Context
103+
104+
The copilot-sdk is a monorepo with four SDK implementations:
105+
106+
- **Node.js/TypeScript** (`nodejs/src/`): The primary/reference implementation
107+
- **Python** (`python/copilot/`): Python SDK with async support
108+
- **Go** (`go/`): Go SDK with OpenTelemetry integration
109+
- **.NET** (`dotnet/src/`): .NET SDK targeting net8.0
110+
111+
Common areas of issues:
112+
- **JSON-RPC client**: Session creation, resumption, event handling
113+
- **Streaming**: Delta events, message completion, reasoning events
114+
- **Tools**: Tool definition, execution, permissions
115+
- **Type generation**: Generated types from `@github/copilot` schema
116+
- **E2E testing**: Test harness, replay proxy, snapshot fixtures
117+
- **UI elicitation**: Confirm, select, input dialogs via session.ui
51118

52119
## Context
53120

.github/workflows/shared/triage-classification.md

Lines changed: 0 additions & 69 deletions
This file was deleted.

0 commit comments

Comments
 (0)