Issue report type
Label a new issue as a bug, a feature request, a usage question or a documentation problem.
F@fProblem
Issue templates are skipped or filled in wrongly, so maintainers relabel every issue by hand before they can triage it.
Goal
Put each issue on the right track: bug triage, feature discussion, Q&A, or documentation.
Input / state
Issue title, body and the template chosen, if any.
- title
- Issue title.
- body
- Issue body.
- template
- The template the reporter picked, which may be wrong.
Decision question
issue_typeWhat kind of issue is this?
Options
bugReports behaviour that differs from what the software is supposed to do.feature_requestAsks for new behaviour or a change to how something works.usage_questionAsks how to do something with the software as it is.documentationReports missing, wrong or confusing documentation.
Allowed outcomes
Decided in your code from the answer and its confidence. Thresholds are yours to set and test.
- BugChoice is bug and confidence meets your threshold.
- Feature requestChoice is feature_request and confidence meets your threshold.
- Usage questionChoice is usage_question and confidence meets your threshold.
- DocumentationChoice is documentation and confidence meets your threshold.
- Maintainer triageConfidence is below your threshold: probability is spread across options.
Example scenarios
Predefined demonstrations. No model is called; the outcome shown is an illustrative judgment.
Example state
{
"body": "Stack trace attached. Expected the file to save.",
"title": "Crash when saving a file with emoji in the name",
"template": "bug"
}Outcome
IllustrativeChoice is bug and confidence meets your threshold.
Why
Unexpected crash in documented behaviour.
Using it well
- Pass the chosen template as context, not as the answer; reporters often pick "bug" for questions.
- "It doesn't do X" can be a bug or a feature request depending on the docs. Spread probability is a fair answer there.
Request definition
POST https://api.typesafe.ai/v1/systemone{
"model": "jev-latest",
"state": {
"title": "<title>",
"body": "<body>",
"template": "<template>"
},
"questions": {
"issue_type": {
"type": "choice",
"instructions": "What kind of issue is this?",
"criteria": {
"bug": "Reports behaviour that differs from what the software is supposed to do.",
"feature_request": "Asks for new behaviour or a change to how something works.",
"usage_question": "Asks how to do something with the software as it is.",
"documentation": "Reports missing, wrong or confusing documentation."
}
}
}
}Request shape from the System One API reference; a Kev server accepts the same body. Replace the placeholder state with your data. Requests need your own API key or server.
Version History
Initial version