Issue report type

Label a new issue as a bug, a feature request, a usage question or a documentation problem.

F@f

Problem

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

ChoiceQuestion key issue_type

What 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

Illustrative
Bug

Choice 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

v1Current Versionabout 8 hours ago@f

Initial version

Comments (0)