Workflow template

Bug Triage Board for Nextcloud Deck as a free board template.

A bug triage board that moves each report from Reported through Reproduced, Prioritized, Fixing, and Verify to Closed. The first card holds a report template.

Last verified

Board preview

Bug Triage

Reported2

Add report template to description

Expected, actual, server version, Deck app version, client version, logs, repro steps.

  • What did you expect to happen
  • What happened instead
  • Server version and app versions
  • Exact steps, numbered, from a known starting point
  • Logs or screenshots if you have them
Needs Info

Ask for the one missing detail

Ask for a single specific thing. A long questionnaire usually gets no reply at all.

Needs Infodue in 2 days

Reproduced1

Confirm repro on clean account

Use a clean board before deciding if this is user data, upstream, or app behavior.

  • Reproduce on a fresh account with no custom data
  • Try the same steps on the previous version
  • Record whether it happens every time or sometimes
  • Decide: our bug, upstream bug, or configuration
Bug

Prioritized1

Decide severity and the release it targets

Severity is about the user's loss, not about how annoying the bug is to fix.

  • Does it lose or corrupt data
  • Does it block a core task with no workaround
  • How many users can hit it
  • Is it new since the last release
Regression

Fixing1

Write the failing test before the fix

A test that fails first is the only proof the fix addresses the reported problem.

Bug

Verify1

Verify on the version the reporter used

A fix confirmed only on your own setup is not yet confirmed.

  • Re-run the original steps exactly as reported
  • Check the fix did not break the neighbouring flow
  • Confirm the regression test now passes
Bugdue in 3 days

Closed1

Close with the version that carries the fix

Tell the reporter which release contains it. That closes the loop and reduces duplicate reports.

Enhancement
BugRegressionNeeds InfoEnhancement
View the portable v1 template JSON
{
  "schema": "deckloud-template-v1",
  "schemaVersion": 1,
  "slug": "bug-triage-nextcloud-deck",
  "locale": "en",
  "title": "Bug Triage Board for Nextcloud Deck",
  "description": "A practical board for incoming bug reports, reproduction, priority decisions, fixing, verification, and closure.",
  "category": "software",
  "tags": [
    "bugs",
    "support",
    "triage"
  ],
  "quickCreateStackKey": "reported",
  "compatibility": {
    "requiresBoardCreate": true,
    "includesAttachments": false,
    "includesComments": false
  },
  "board": {
    "title": "Bug Triage",
    "color": "EF4444"
  },
  "labels": [
    {
      "key": "bug",
      "title": "Bug",
      "color": "EF4444"
    },
    {
      "key": "regression",
      "title": "Regression",
      "color": "B91C1C"
    },
    {
      "key": "needs-info",
      "title": "Needs Info",
      "color": "F59E0B"
    },
    {
      "key": "enhancement",
      "title": "Enhancement",
      "color": "3B82F6"
    }
  ],
  "stacks": [
    {
      "key": "reported",
      "title": "Reported",
      "order": 1
    },
    {
      "key": "reproduced",
      "title": "Reproduced",
      "order": 2
    },
    {
      "key": "prioritized",
      "title": "Prioritized",
      "order": 3
    },
    {
      "key": "fixing",
      "title": "Fixing",
      "order": 4
    },
    {
      "key": "verify",
      "title": "Verify",
      "order": 5
    },
    {
      "key": "closed",
      "title": "Closed",
      "order": 6
    }
  ],
  "cards": [
    {
      "stack": "reported",
      "title": "Add report template to description",
      "description": "Expected, actual, server version, Deck app version, client version, logs, repro steps.\n\n- [ ] What did you expect to happen\n- [ ] What happened instead\n- [ ] Server version and app versions\n- [ ] Exact steps, numbered, from a known starting point\n- [ ] Logs or screenshots if you have them",
      "labels": [
        "needs-info"
      ]
    },
    {
      "stack": "reported",
      "title": "Ask for the one missing detail",
      "description": "Ask for a single specific thing. A long questionnaire usually gets no reply at all.",
      "labels": [
        "needs-info"
      ],
      "dueOffsetDays": 2
    },
    {
      "stack": "reproduced",
      "title": "Confirm repro on clean account",
      "description": "Use a clean board before deciding if this is user data, upstream, or app behavior.\n\n- [ ] Reproduce on a fresh account with no custom data\n- [ ] Try the same steps on the previous version\n- [ ] Record whether it happens every time or sometimes\n- [ ] Decide: our bug, upstream bug, or configuration",
      "labels": [
        "bug"
      ]
    },
    {
      "stack": "prioritized",
      "title": "Decide severity and the release it targets",
      "description": "Severity is about the user's loss, not about how annoying the bug is to fix.\n\n- [ ] Does it lose or corrupt data\n- [ ] Does it block a core task with no workaround\n- [ ] How many users can hit it\n- [ ] Is it new since the last release",
      "labels": [
        "regression"
      ]
    },
    {
      "stack": "fixing",
      "title": "Write the failing test before the fix",
      "description": "A test that fails first is the only proof the fix addresses the reported problem.",
      "labels": [
        "bug"
      ]
    },
    {
      "stack": "verify",
      "title": "Verify on the version the reporter used",
      "description": "A fix confirmed only on your own setup is not yet confirmed.\n\n- [ ] Re-run the original steps exactly as reported\n- [ ] Check the fix did not break the neighbouring flow\n- [ ] Confirm the regression test now passes",
      "labels": [
        "bug"
      ],
      "dueOffsetDays": 3
    },
    {
      "stack": "closed",
      "title": "Close with the version that carries the fix",
      "description": "Tell the reporter which release contains it. That closes the loop and reduces duplicate reports.",
      "labels": [
        "enhancement"
      ]
    }
  ]
}

01

When to use this board

For small teams and solo maintainers who handle incoming bug reports.

02

How to run this board

  • Get one usable report.

    Paste the report template into each new card and ask for the one missing detail.

  • Reproduce on a clean account, then set severity.

    Rule out your own setup first. Then set severity and pick the release that will carry the fix.

  • Verify on the reporter's version, then reply.

    Confirm the fix on the version the reporter used, then tell them which release has it.

03

What this creates

6 stacks, 4 labels, and 7 starter cards with 16 checklist steps.

04

Standard Deck objects only

The result is an ordinary Deck board that you edit like any other. With a Nextcloud account, Deckloud writes it straight to your server, with no relay.

05

Safe import rules

The file holds no server IDs. Due dates count from the day you create the board, and checklists are Markdown task lists in card descriptions.

FAQ

Practical questions

Does the template include comments or attachments?

No. Comments need an author, and attachments differ between servers and Deck versions, so v1 templates hold text only.

Why reproduce on a clean account first?

It separates real defects from configuration or data problems before work starts, and shows whether the bug is yours or upstream.

How should severity be decided?

By the user's loss, not the fix's difficulty. The checklist asks about data loss, blocked core tasks, and how many users it hits.

Get Deckloud

Your Deck boards in a native app

Deckloud runs on iPhone, iPad, Android phones, Mac, Windows, and Linux. It connects to the Nextcloud server you already use.