@sentry/junior-github 0.20.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skills/github/SKILL.md +6 -1
- package/skills/github/references/issue-examples.md +31 -11
- package/skills/github/references/issue-quality-checklist.md +8 -2
- package/skills/github/references/issue-template-bug.md +19 -11
- package/skills/github/references/issue-template-feature.md +18 -10
- package/skills/github/references/issue-template-task.md +17 -10
- package/skills/github/references/issue-type-bug.md +9 -30
- package/skills/github/references/issue-type-feature.md +7 -21
- package/skills/github/references/issue-type-task.md +6 -15
- package/skills/github/references/research-rules.md +6 -3
package/package.json
CHANGED
package/skills/github/SKILL.md
CHANGED
|
@@ -73,7 +73,12 @@ Load the type-specific template and rules:
|
|
|
73
73
|
|
|
74
74
|
Follow [references/research-rules.md](references/research-rules.md) for cross-type research standards.
|
|
75
75
|
|
|
76
|
-
-
|
|
76
|
+
- Use a short descriptive title for bugs, short imperative title for tasks and features.
|
|
77
|
+
- Mention who raised the issue when clear from the thread.
|
|
78
|
+
- Attach screenshots from the thread as image links when present.
|
|
79
|
+
- Prefer flat bullet lists over headed sections for simple issues.
|
|
80
|
+
- Do not add desired outcome or expected behavior unless the thread explicitly states one.
|
|
81
|
+
- Generalize conversation context: replace channel references, slash-command invocations, and session-specific fragments with the underlying technical problem.
|
|
77
82
|
- Use [references/issue-examples.md](references/issue-examples.md) to calibrate structure and depth.
|
|
78
83
|
- Include code snippets, related issues, and related PRs only when they materially improve the issue.
|
|
79
84
|
|
|
@@ -8,32 +8,42 @@ Bad title: "Error in auth"
|
|
|
8
8
|
Good title: "OAuth token refresh fails during long-running operations"
|
|
9
9
|
|
|
10
10
|
Bad summary:
|
|
11
|
+
|
|
11
12
|
> Something is broken with auth tokens. Users are seeing errors.
|
|
12
13
|
|
|
13
14
|
Good summary:
|
|
15
|
+
|
|
14
16
|
> The SDK sets a dedup key before acquiring the per-thread lock. When the lock is contended, the message is permanently lost because the dedup slot is already consumed.
|
|
15
17
|
|
|
16
18
|
Bad structure — generic catch-all:
|
|
19
|
+
|
|
17
20
|
> ## Analysis
|
|
21
|
+
>
|
|
18
22
|
> - There's an auth error
|
|
19
23
|
> - It happens sometimes
|
|
20
24
|
> - We should fix it
|
|
21
25
|
|
|
22
26
|
Good structure — problem-specific sections:
|
|
27
|
+
|
|
23
28
|
> ## Root cause
|
|
24
|
-
>
|
|
29
|
+
>
|
|
30
|
+
> The dedup key is set _before_ the lock is attempted. When a second message arrives...
|
|
25
31
|
>
|
|
26
32
|
> ## Reproduction
|
|
33
|
+
>
|
|
27
34
|
> 1. Two users @-mention the bot in the same thread while processing
|
|
28
35
|
> 2. First message acquires the lock
|
|
29
36
|
> 3. Second message sets its dedup key, fails lock acquisition
|
|
30
37
|
>
|
|
31
38
|
> ## Expected behavior
|
|
39
|
+
>
|
|
32
40
|
> Either:
|
|
41
|
+
>
|
|
33
42
|
> - **Option A**: Acquire lock before setting dedup key
|
|
34
43
|
> - **Option B**: Clear dedup key on lock failure
|
|
35
44
|
>
|
|
36
45
|
> ## Workaround
|
|
46
|
+
>
|
|
37
47
|
> Retry wrapper that catches LockError and clears the dedup key (PR #32).
|
|
38
48
|
>
|
|
39
49
|
> Action taken on behalf of Jane Doe.
|
|
@@ -44,36 +54,43 @@ Bad title: "Clean up some code"
|
|
|
44
54
|
Good title: "Remove 7 monkey-patches made unnecessary by SDK v2.1"
|
|
45
55
|
|
|
46
56
|
Bad scope:
|
|
57
|
+
|
|
47
58
|
> We have some patches we should clean up.
|
|
48
59
|
|
|
49
60
|
Good scope — quantified and specific:
|
|
61
|
+
|
|
50
62
|
> We maintain patches on **8 of 9 `process*` methods**. 7 exist solely to keep `waitUntil` offload behavior consistent while `processMessage` is customized for durable workflow routing. The 8th has two additional behavioral fixes.
|
|
51
63
|
>
|
|
52
|
-
> | Method
|
|
53
|
-
>
|
|
54
|
-
> | `processReaction` | scheduling only
|
|
55
|
-
> | `processAction`
|
|
56
|
-
> | `processMessage`
|
|
64
|
+
> | Method | Patch reason |
|
|
65
|
+
> | ----------------- | ------------------------------------------------- |
|
|
66
|
+
> | `processReaction` | scheduling only |
|
|
67
|
+
> | `processAction` | scheduling only |
|
|
68
|
+
> | `processMessage` | scheduling + thread ID normalization + lock retry |
|
|
57
69
|
>
|
|
58
70
|
> Action taken on behalf of Jane Doe.
|
|
59
71
|
|
|
60
72
|
## Feature example
|
|
61
73
|
|
|
62
74
|
Bad framing:
|
|
75
|
+
|
|
63
76
|
> It would be nice to have better config reloading.
|
|
64
77
|
|
|
65
78
|
Good framing — current state, gap, options:
|
|
79
|
+
|
|
66
80
|
> ## Current behavior
|
|
81
|
+
>
|
|
67
82
|
> Workers read config at startup. Changes require a full restart.
|
|
68
83
|
>
|
|
69
84
|
> ## Gap
|
|
85
|
+
>
|
|
70
86
|
> Config changes during incidents require redeploying, adding 2-3 minutes to mitigation.
|
|
71
87
|
>
|
|
72
88
|
> ## Options
|
|
73
|
-
>
|
|
74
|
-
>
|
|
75
|
-
> |
|
|
76
|
-
> |
|
|
89
|
+
>
|
|
90
|
+
> | Approach | Tradeoff |
|
|
91
|
+
> | --------------------------- | ---------------------------------- |
|
|
92
|
+
> | File watch + hot reload | Simple, but no atomicity guarantee |
|
|
93
|
+
> | Config service with polling | Consistent, but adds a dependency |
|
|
77
94
|
>
|
|
78
95
|
> Action taken on behalf of Jane Doe.
|
|
79
96
|
|
|
@@ -88,8 +105,11 @@ Good framing — current state, gap, options:
|
|
|
88
105
|
|
|
89
106
|
## Anti-patterns
|
|
90
107
|
|
|
91
|
-
-
|
|
108
|
+
- Over-structured issues: using ## Summary, ## Impact, ## Root Cause headings for a 3-line bug
|
|
109
|
+
- Adding "Expected behavior" or "Desired outcome" when the thread didn't state one
|
|
110
|
+
- Restating the title as the first sentence of the body
|
|
92
111
|
- Confident fix claims without root-cause evidence
|
|
93
112
|
- Speculative detail mixed into verified facts
|
|
113
|
+
- Dumping a list of URLs without inline context
|
|
94
114
|
- Session-specific content (user names, slash commands, channel references)
|
|
95
115
|
- Missing delegated attribution footer on user-requested issue creation
|
|
@@ -4,12 +4,13 @@ Run this checklist before create/update mutation.
|
|
|
4
4
|
|
|
5
5
|
## External Quality Signals
|
|
6
6
|
|
|
7
|
-
- Does the issue contain
|
|
7
|
+
- Does the issue contain slash commands, channel references, or user names that are not relevant to the issue itself? If so, generalize.
|
|
8
8
|
- Is the issue concise and still actionable?
|
|
9
9
|
- Are unknowns called out instead of guessed?
|
|
10
10
|
- Are concerns included only when material?
|
|
11
11
|
|
|
12
12
|
Useful external guidance:
|
|
13
|
+
|
|
13
14
|
- GitHub docs, creating and structuring issues: https://docs.github.com/en/issues/tracking-your-work-with-issues/using-issues/creating-an-issue
|
|
14
15
|
- GitHub docs, issue templates: https://docs.github.com/en/communities/using-templates-to-encourage-useful-issues-and-pull-requests/about-issue-and-pull-request-templates
|
|
15
16
|
- Stack Overflow, minimal reproducible example standard: https://stackoverflow.com/help/minimal-reproducible-example
|
|
@@ -18,17 +19,22 @@ Useful external guidance:
|
|
|
18
19
|
## Internal Quality Bar
|
|
19
20
|
|
|
20
21
|
- Issue type chosen and stated (`bug`, `feature`, or `task`).
|
|
21
|
-
- Title is specific and <= 60 characters.
|
|
22
|
+
- Title is specific and <= 60 characters. Descriptive for bugs, imperative for tasks/features.
|
|
22
23
|
- Summary is short and clear.
|
|
23
24
|
- Analysis depth matches the issue type.
|
|
24
25
|
- Verified claims have sources.
|
|
25
26
|
- Timeline statements use exact dates when known.
|
|
26
27
|
- Confidence is explicit when certainty is low.
|
|
27
28
|
- Concerns are included only when meaningful.
|
|
29
|
+
- Reporter is mentioned when clear from the originating conversation.
|
|
30
|
+
- Screenshots from the thread are attached as image links when present.
|
|
31
|
+
- No headed sections that could be flat bullets instead.
|
|
32
|
+
- No desired outcome or expected behavior section unless the thread explicitly stated one.
|
|
28
33
|
|
|
29
34
|
## Negative Calibration
|
|
30
35
|
|
|
31
36
|
Avoid these anti-patterns:
|
|
37
|
+
|
|
32
38
|
- Overlong, sprawling issue bodies with no clear sections
|
|
33
39
|
- Confident solution claims that are weakly evidenced
|
|
34
40
|
- Speculative detail mixed into verified sections
|
|
@@ -1,29 +1,37 @@
|
|
|
1
1
|
# Bug Issue Template
|
|
2
2
|
|
|
3
|
-
Use as a starting structure.
|
|
3
|
+
Use as a starting structure. A few bullets often suffice — use headed sections only when complexity demands them.
|
|
4
4
|
|
|
5
5
|
## Summary
|
|
6
|
-
Up to 3 sentences describing the failure and its impact.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
Up to 3 sentences describing the failure and its impact. Use a short descriptive title (e.g. "OAuth token refresh fails in long-running operations").
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
## Suggested sections (use only what fits)
|
|
10
|
+
|
|
11
|
+
- **Root cause** — technical explanation with code snippets if relevant
|
|
11
12
|
- **Reproduction** — numbered steps any developer can follow independently
|
|
12
|
-
- **Expected behavior** —
|
|
13
|
-
- **Workaround** — current mitigation if one exists
|
|
14
|
-
|
|
13
|
+
- **Expected behavior** — include only when the thread explicitly states what should happen
|
|
14
|
+
- **Workaround** — current mitigation if one exists
|
|
15
|
+
|
|
16
|
+
For simple bugs, skip sections entirely and use flat bullet lists.
|
|
17
|
+
|
|
18
|
+
## Attribution
|
|
15
19
|
|
|
16
|
-
|
|
20
|
+
- Mention who reported the issue when clear from the originating conversation.
|
|
21
|
+
- Attach screenshots from the thread as image links when present.
|
|
17
22
|
|
|
18
23
|
## Delegated action footer
|
|
24
|
+
|
|
19
25
|
When creating a new issue on behalf of a user, append a final line:
|
|
20
26
|
|
|
21
27
|
`Action taken on behalf of <name>.`
|
|
22
28
|
|
|
23
29
|
## Constraints
|
|
30
|
+
|
|
24
31
|
- Title hard max: 60 characters (target 40-60).
|
|
25
32
|
- Summary max 3 sentences.
|
|
26
|
-
- Remove empty sections.
|
|
27
|
-
-
|
|
33
|
+
- Remove empty sections. Prefer flat bullets over headed sections for simple bugs.
|
|
34
|
+
- Do not add expected behavior or desired outcome unless the thread explicitly states one.
|
|
28
35
|
- Do not include acceptance criteria unless explicitly requested.
|
|
29
|
-
-
|
|
36
|
+
- Use terse, specific language — no filler, no restating the title in the body.
|
|
37
|
+
- Keep the delegated action footer as the last line in the body when applicable.
|
|
@@ -1,28 +1,36 @@
|
|
|
1
1
|
# Feature Issue Template
|
|
2
2
|
|
|
3
|
-
Use as a starting structure.
|
|
3
|
+
Use as a starting structure. A flat bullet list is fine for simple features — use headed sections only when tradeoffs need detailed framing.
|
|
4
4
|
|
|
5
5
|
## Summary
|
|
6
|
-
Up to 3 sentences describing the desired improvement and user outcome.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
Up to 3 sentences describing the improvement. Use a short imperative title (e.g. "Support SAML SSO for enterprise orgs").
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
## Suggested sections (use only what fits)
|
|
10
|
+
|
|
11
|
+
- **Current behavior** — how the system works today
|
|
11
12
|
- **Gap** — why current behavior is insufficient, with concrete impact
|
|
12
|
-
- **Options** — viable approaches with tradeoffs
|
|
13
|
-
|
|
13
|
+
- **Options** — viable approaches with tradeoffs (include only when the thread discusses alternatives)
|
|
14
|
+
|
|
15
|
+
For simple features, skip sections and use flat bullets describing the gap and desired capability.
|
|
16
|
+
|
|
17
|
+
## Attribution
|
|
14
18
|
|
|
15
|
-
|
|
19
|
+
- Mention who raised the request when clear from the originating conversation.
|
|
20
|
+
- Attach screenshots from the thread as image links when present.
|
|
16
21
|
|
|
17
22
|
## Delegated action footer
|
|
23
|
+
|
|
18
24
|
When creating a new issue on behalf of a user, append a final line:
|
|
19
25
|
|
|
20
26
|
`Action taken on behalf of <name>.`
|
|
21
27
|
|
|
22
28
|
## Constraints
|
|
29
|
+
|
|
23
30
|
- Title hard max: 60 characters (target 40-60).
|
|
24
31
|
- Summary max 3 sentences.
|
|
25
|
-
- Remove empty sections.
|
|
26
|
-
-
|
|
32
|
+
- Remove empty sections. Prefer flat bullets for simple features.
|
|
33
|
+
- Do not add desired outcome unless the thread explicitly states one.
|
|
27
34
|
- Do not include acceptance criteria unless explicitly requested.
|
|
28
|
-
-
|
|
35
|
+
- Use terse, specific language — no filler, no restating the title in the body.
|
|
36
|
+
- Keep the delegated action footer as the last line in the body when applicable.
|
|
@@ -1,28 +1,35 @@
|
|
|
1
1
|
# Task Issue Template
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A task can be just a title + 2-3 bullets. Use headed sections only when scope is complex.
|
|
4
4
|
|
|
5
5
|
## Summary
|
|
6
|
-
Up to 3 sentences describing the task and intended result.
|
|
7
6
|
|
|
8
|
-
|
|
7
|
+
Up to 3 sentences describing the task. Use a short imperative title (e.g. "Remove deprecated legacyAuth middleware").
|
|
9
8
|
|
|
10
|
-
|
|
9
|
+
## Suggested sections (use only when complexity warrants)
|
|
10
|
+
|
|
11
|
+
- **Background** — why this task exists, with code snippets if relevant
|
|
11
12
|
- **Scope** — what's included and excluded, quantify when possible
|
|
12
|
-
- **Implementation** — concrete steps or approach
|
|
13
|
-
- **Dependencies** — related issues, PRs, or external blockers
|
|
14
13
|
|
|
15
|
-
|
|
14
|
+
For simple tasks, skip sections and use flat bullets for scope and next step.
|
|
15
|
+
|
|
16
|
+
## Attribution
|
|
17
|
+
|
|
18
|
+
- Mention who raised the task when clear from the originating conversation.
|
|
19
|
+
- Attach screenshots from the thread as image links when present.
|
|
16
20
|
|
|
17
21
|
## Delegated action footer
|
|
22
|
+
|
|
18
23
|
When creating a new issue on behalf of a user, append a final line:
|
|
19
24
|
|
|
20
25
|
`Action taken on behalf of <name>.`
|
|
21
26
|
|
|
22
27
|
## Constraints
|
|
28
|
+
|
|
23
29
|
- Title hard max: 60 characters (target 40-60).
|
|
24
30
|
- Summary max 3 sentences.
|
|
25
|
-
- Remove empty sections.
|
|
26
|
-
-
|
|
31
|
+
- Remove empty sections. Prefer flat bullets for simple tasks.
|
|
32
|
+
- Do not add desired outcome unless the thread explicitly states one.
|
|
27
33
|
- Do not include acceptance criteria unless explicitly requested.
|
|
28
|
-
-
|
|
34
|
+
- Use terse, specific language — no filler, no restating the title in the body.
|
|
35
|
+
- Keep the delegated action footer as the last line in the body when applicable.
|
|
@@ -6,46 +6,25 @@ Use this file only when issue type is `bug`.
|
|
|
6
6
|
|
|
7
7
|
Produce a high-signal bug issue that drives root-cause discovery, not premature solutioning.
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Research Guidance
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
- reproducible steps or explicit non-repro statement
|
|
13
|
-
- exact error or symptom
|
|
14
|
-
- impacted surface and scope
|
|
11
|
+
Use these steps to investigate — they inform what goes into the issue, but do not dictate issue structure. The issue should be terse; research justifies what's included.
|
|
15
12
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
13
|
+
1. Capture concrete evidence: reproducible steps or explicit non-repro statement, exact error or symptom, impacted surface and scope.
|
|
14
|
+
2. Build a timeline with exact dates when known.
|
|
15
|
+
3. Separate verified facts from unknowns — label each explicitly.
|
|
16
|
+
4. Form root-cause hypotheses linked to evidence, with confidence (`high`, `medium`, `low`).
|
|
19
17
|
|
|
20
|
-
|
|
21
|
-
- verified facts contain only directly supported claims
|
|
22
|
-
- unknown details stay explicit
|
|
23
|
-
|
|
24
|
-
4. Form root-cause hypotheses:
|
|
25
|
-
- each hypothesis must link back to evidence
|
|
26
|
-
- include confidence (`high`, `medium`, `low`)
|
|
27
|
-
|
|
28
|
-
## Fix Guidance
|
|
29
|
-
|
|
30
|
-
- You may include tentative fix options.
|
|
31
|
-
- Label options as tentative unless root cause is directly evidenced.
|
|
32
|
-
- If root cause is not verified, include next RCA steps before or alongside fix options.
|
|
33
|
-
- Do not present one fix as certain without explicit evidence.
|
|
18
|
+
Include fix suggestions only when the thread discusses fixes. Do not present a fix as certain without explicit evidence.
|
|
34
19
|
|
|
35
20
|
## Context Generalization
|
|
36
21
|
|
|
37
22
|
When deriving bug content from conversation, generalize to the technical problem.
|
|
38
23
|
|
|
39
24
|
Before (session-specific):
|
|
25
|
+
|
|
40
26
|
> @alice ran `/github create` in #ops-alerts and saw "token refresh failed" when the OAuth token expired mid-thread
|
|
41
27
|
|
|
42
28
|
After (generalized):
|
|
43
|
-
> OAuth token refresh fails during long-running operations, producing "token refresh failed" errors
|
|
44
|
-
|
|
45
|
-
## Completion Bar
|
|
46
29
|
|
|
47
|
-
|
|
48
|
-
- clear symptom and scope
|
|
49
|
-
- evidence-backed facts
|
|
50
|
-
- explicit unknowns
|
|
51
|
-
- root-cause hypotheses with confidence
|
|
30
|
+
> OAuth token refresh fails during long-running operations, producing "token refresh failed" errors
|
|
@@ -6,36 +6,22 @@ Use this file only when issue type is `feature`.
|
|
|
6
6
|
|
|
7
7
|
Propose an intentional improvement with clear current-state analysis and practical options.
|
|
8
8
|
|
|
9
|
-
##
|
|
9
|
+
## Research Guidance
|
|
10
10
|
|
|
11
|
-
|
|
12
|
-
- current behavior
|
|
13
|
-
- known constraints
|
|
14
|
-
- why current behavior is insufficient
|
|
11
|
+
Use these steps to investigate — they inform what goes into the issue, but do not dictate issue structure.
|
|
15
12
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
- if none found, explicitly say no strong prior art was found
|
|
20
|
-
|
|
21
|
-
3. Frame options:
|
|
22
|
-
- at least one viable path, preferably multiple when tradeoffs are meaningful
|
|
23
|
-
- include implementation and operational tradeoffs
|
|
13
|
+
1. Analyze current behavior and why it's insufficient.
|
|
14
|
+
2. Gather prior art when available — include links and what each proves. If none found, omit rather than stating "none found."
|
|
15
|
+
3. Frame options with tradeoffs when the thread discusses alternatives.
|
|
24
16
|
|
|
25
17
|
## Context Generalization
|
|
26
18
|
|
|
27
19
|
When deriving feature content from conversation, generalize to the capability gap.
|
|
28
20
|
|
|
29
21
|
Before (session-specific):
|
|
22
|
+
|
|
30
23
|
> @carol mentioned in the standup thread that she has to manually restart the worker every time the config changes
|
|
31
24
|
|
|
32
25
|
After (generalized):
|
|
33
|
-
> Workers do not pick up config changes without a restart, requiring manual intervention
|
|
34
26
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
A `feature` issue is ready when it has:
|
|
38
|
-
- clear problem framing and objective
|
|
39
|
-
- current-state analysis
|
|
40
|
-
- prior-art section (or explicit none found)
|
|
41
|
-
- concise option tradeoffs
|
|
27
|
+
> Workers do not pick up config changes without a restart, requiring manual intervention
|
|
@@ -6,29 +6,20 @@ Use this file only when issue type is `task`.
|
|
|
6
6
|
|
|
7
7
|
Create a concise execution ticket for maintenance, cleanup, docs, refactors, or operational chores.
|
|
8
8
|
|
|
9
|
-
## Research
|
|
9
|
+
## Research Guidance
|
|
10
10
|
|
|
11
|
-
- Minimal research by default.
|
|
12
|
-
-
|
|
13
|
-
-
|
|
14
|
-
|
|
15
|
-
## Required Content
|
|
16
|
-
|
|
17
|
-
- explicit goal
|
|
18
|
-
- scope boundaries
|
|
19
|
-
- concrete implementation steps
|
|
20
|
-
- dependencies or risks only when material
|
|
11
|
+
- Minimal research by default. Prefer first-party repository context when available.
|
|
12
|
+
- Include implementation steps only when the thread discusses approach. Otherwise, state the goal and scope.
|
|
13
|
+
- Include dependencies or risks only when material.
|
|
21
14
|
|
|
22
15
|
## Context Generalization
|
|
23
16
|
|
|
24
17
|
When deriving task content from conversation, generalize to the goal and scope.
|
|
25
18
|
|
|
26
19
|
Before (session-specific):
|
|
20
|
+
|
|
27
21
|
> @bob asked in #eng-chat to clean up the unused `legacyAuth` middleware that he noticed while reviewing PR #312
|
|
28
22
|
|
|
29
23
|
After (generalized):
|
|
30
|
-
> Remove unused `legacyAuth` middleware to reduce maintenance surface
|
|
31
|
-
|
|
32
|
-
## Completion Bar
|
|
33
24
|
|
|
34
|
-
|
|
25
|
+
> Remove unused `legacyAuth` middleware to reduce maintenance surface
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# Research and Verification Rules
|
|
2
2
|
|
|
3
3
|
Use this file for cross-type rules. Then apply the matching type-specific file:
|
|
4
|
+
|
|
4
5
|
- `bug`: [issue-type-bug.md](issue-type-bug.md)
|
|
5
6
|
- `feature`: [issue-type-feature.md](issue-type-feature.md)
|
|
6
7
|
- `task`: [issue-type-task.md](issue-type-task.md)
|
|
@@ -8,6 +9,7 @@ Use this file for cross-type rules. Then apply the matching type-specific file:
|
|
|
8
9
|
## Source Priority
|
|
9
10
|
|
|
10
11
|
1. First-party repository evidence:
|
|
12
|
+
|
|
11
13
|
- Source code and tests
|
|
12
14
|
- Existing issues and PRs
|
|
13
15
|
- Release notes/changelog
|
|
@@ -26,8 +28,9 @@ Use this file for cross-type rules. Then apply the matching type-specific file:
|
|
|
26
28
|
|
|
27
29
|
## Output Expectations
|
|
28
30
|
|
|
29
|
-
-
|
|
30
|
-
-
|
|
31
|
+
- Research depth should not translate into verbose issue output. The issue should be terse; research justifies what goes in, not how much.
|
|
32
|
+
- Clearly distinguish verified facts from unknowns. Weave evidence naturally into the issue rather than forcing separate sections.
|
|
33
|
+
- Include source links/paths inline for verified facts.
|
|
31
34
|
- Use exact dates for timeline claims.
|
|
32
35
|
- Avoid absolute language when confidence is low.
|
|
33
|
-
- For `feature` issues,
|
|
36
|
+
- For `feature` issues, include prior-art examples when found and relevant; omit the section entirely if none exist.
|