Skip to content

Commit 634e695

Browse files
committed
feat: add GitHub issue templates for bug reports and questions
Added comprehensive issue templates to improve bug reporting and support: - bug_report.yml: Detailed template for bug reports with priority, environment details - question.yml: Support template for questions, feature discussions, and help requests Both templates include validation rules and structured fields to help maintainers triage issues effectively.
1 parent cadaa07 commit 634e695

File tree

2 files changed

+296
-0
lines changed

2 files changed

+296
-0
lines changed
Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
name: Bug Report
2+
description: Report a bug in PJS (Protocol for JSON Streaming Protocol)
3+
title: "[Bug]: "
4+
labels: ["bug", "triage"]
5+
assignees: []
6+
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Thank you for taking the time to report a bug! Please fill out the information below to help us diagnose and fix the issue.
12+
13+
- type: input
14+
id: version
15+
attributes:
16+
label: SJSP Version
17+
description: What version of SJSP are you using?
18+
placeholder: "e.g., 0.3.0"
19+
validations:
20+
required: true
21+
22+
- type: dropdown
23+
id: component
24+
attributes:
25+
label: Component
26+
description: Which component is affected?
27+
options:
28+
- pjs-core (Core library)
29+
- pjs-js-client (JavaScript client)
30+
- pjs-demo (Demo applications)
31+
- pjs-bench (Benchmarking)
32+
- Documentation
33+
- Other
34+
validations:
35+
required: true
36+
37+
- type: textarea
38+
id: description
39+
attributes:
40+
label: Bug Description
41+
description: A clear and concise description of the bug
42+
placeholder: "Describe what happened and what you expected to happen"
43+
validations:
44+
required: true
45+
46+
- type: textarea
47+
id: reproduction
48+
attributes:
49+
label: Steps to Reproduce
50+
description: Minimal steps to reproduce the issue
51+
placeholder: |
52+
1. Create a stream with...
53+
2. Send data...
54+
3. Observe error...
55+
value: |
56+
1.
57+
2.
58+
3.
59+
validations:
60+
required: true
61+
62+
- type: textarea
63+
id: expected
64+
attributes:
65+
label: Expected Behavior
66+
description: What should have happened?
67+
placeholder: "Describe the expected behavior"
68+
validations:
69+
required: true
70+
71+
- type: textarea
72+
id: actual
73+
attributes:
74+
label: Actual Behavior
75+
description: What actually happened?
76+
placeholder: "Describe what actually happened"
77+
validations:
78+
required: true
79+
80+
- type: textarea
81+
id: code
82+
attributes:
83+
label: Code Sample
84+
description: Minimal code sample that reproduces the issue
85+
render: rust
86+
placeholder: |
87+
```rust
88+
// Your minimal reproduction code here
89+
```
90+
91+
- type: textarea
92+
id: logs
93+
attributes:
94+
label: Error Logs/Output
95+
description: Any error messages, stack traces, or relevant output
96+
render: shell
97+
placeholder: "Paste any relevant logs or error messages here"
98+
99+
- type: input
100+
id: os
101+
attributes:
102+
label: Operating System
103+
description: What OS are you running?
104+
placeholder: "e.g., Ubuntu 22.04, macOS 14.0, Windows 11"
105+
validations:
106+
required: true
107+
108+
- type: input
109+
id: rust-version
110+
attributes:
111+
label: Rust Version
112+
description: What version of Rust are you using?
113+
placeholder: "e.g., 1.75.0"
114+
validations:
115+
required: false
116+
117+
- type: dropdown
118+
id: severity
119+
attributes:
120+
label: Severity
121+
description: How severe is this bug?
122+
options:
123+
- Critical (System crash, data loss)
124+
- High (Major functionality broken)
125+
- Medium (Minor functionality affected)
126+
- Low (Cosmetic or enhancement)
127+
validations:
128+
required: true
129+
130+
- type: checkboxes
131+
id: performance
132+
attributes:
133+
label: Performance Impact
134+
description: Does this bug affect performance?
135+
options:
136+
- label: This bug causes significant performance degradation
137+
- label: This bug affects memory usage
138+
- label: This bug affects network efficiency
139+
- label: This bug affects parsing speed
140+
141+
- type: textarea
142+
id: additional
143+
attributes:
144+
label: Additional Context
145+
description: Any additional information that might be helpful
146+
placeholder: "Add any other context about the problem here"
147+
148+
- type: checkboxes
149+
id: terms
150+
attributes:
151+
label: Confirmation
152+
description: Please confirm the following
153+
options:
154+
- label: I have searched existing issues to avoid duplicates
155+
required: true
156+
- label: I have provided a minimal reproduction case
157+
required: true
158+
- label: I am willing to help test a fix for this issue
159+
required: false
Lines changed: 137 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,137 @@
1+
name: Question/Support
2+
description: Ask a question or request support for PJS
3+
title: "[Question]: "
4+
labels: ["question", "support"]
5+
assignees: []
6+
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Thank you for your interest in PJS! Please provide as much detail as possible to help us assist you effectively.
12+
13+
- type: dropdown
14+
id: category
15+
attributes:
16+
label: Question Category
17+
description: What type of question is this?
18+
options:
19+
- Getting Started / Setup
20+
- Implementation Help
21+
- Performance Optimization
22+
- Best Practices
23+
- Architecture / Design
24+
- Integration with Other Tools
25+
- Documentation Clarification
26+
- Feature Request Discussion
27+
- Other
28+
validations:
29+
required: true
30+
31+
- type: input
32+
id: version
33+
attributes:
34+
label: PJS Version
35+
description: What version of PJS are you using or planning to use?
36+
placeholder: "e.g., 0.3.0, latest"
37+
validations:
38+
required: false
39+
40+
- type: textarea
41+
id: question
42+
attributes:
43+
label: Question
44+
description: What would you like to know?
45+
placeholder: "Please describe your question in detail"
46+
validations:
47+
required: true
48+
49+
- type: textarea
50+
id: context
51+
attributes:
52+
label: Context
53+
description: Please provide context about your use case
54+
placeholder: |
55+
- What are you trying to achieve?
56+
- What type of data are you working with?
57+
- What is your performance/latency requirements?
58+
- Are you building a web app, mobile app, or server?
59+
validations:
60+
required: false
61+
62+
- type: textarea
63+
id: current-approach
64+
attributes:
65+
label: Current Approach
66+
description: What have you tried so far?
67+
placeholder: "Describe what you've already attempted or researched"
68+
validations:
69+
required: false
70+
71+
- type: textarea
72+
id: code-sample
73+
attributes:
74+
label: Code Sample (if applicable)
75+
description: Share any relevant code you're working with
76+
render: rust
77+
placeholder: |
78+
```rust
79+
// Your code here (if relevant)
80+
```
81+
82+
- type: dropdown
83+
id: urgency
84+
attributes:
85+
label: Urgency
86+
description: How urgent is this question?
87+
options:
88+
- Low (General curiosity)
89+
- Medium (Planning/researching)
90+
- High (Actively implementing)
91+
- Critical (Blocking production issue)
92+
validations:
93+
required: false
94+
95+
- type: textarea
96+
id: environment
97+
attributes:
98+
label: Environment Details
99+
description: Information about your development environment (if relevant)
100+
placeholder: |
101+
- Operating System:
102+
- Rust version:
103+
- Target platform:
104+
- Data size range:
105+
- Network conditions:
106+
validations:
107+
required: false
108+
109+
- type: checkboxes
110+
id: research
111+
attributes:
112+
label: Research Done
113+
description: Please check what you've already looked at
114+
options:
115+
- label: I have read the README and documentation
116+
- label: I have checked existing issues and discussions
117+
- label: I have looked at the examples in the repository
118+
- label: I have reviewed the specification (SPECIFICATION.md)
119+
- label: I have tried the demo applications
120+
121+
- type: textarea
122+
id: additional
123+
attributes:
124+
label: Additional Information
125+
description: Any other details that might be helpful
126+
placeholder: "Add any other context or information here"
127+
128+
- type: checkboxes
129+
id: contribution
130+
attributes:
131+
label: Contribution Interest
132+
description: Are you interested in contributing to SJSP?
133+
options:
134+
- label: I'm interested in contributing code
135+
- label: I'm interested in contributing documentation
136+
- label: I'm interested in providing feedback
137+
- label: I might be interested in sponsoring development

0 commit comments

Comments
 (0)