This repository has been archived on 2026-04-03. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
core/packages/bug-report-triage
Jeffrey Smith 446edb8333 Feat v0.9.6 deprecate stage_type, collapse stage_mode
stage_type no longer validated — starlark_hook presence determines
automation. stage_mode collapsed from 4→3 values (form/delegated/
automated); "review" mapped to "form" on input for backward compat.
Migration 018 converts existing rows. Review surface removed (~110
lines). 4 package manifests updated.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-03 17:41:55 +00:00
..
2026-03-28 21:22:39 +00:00

Bug Report Triage

Public bug report submission with severity-based routing and SLA timers.

Features

  • Public entry — anyone with the link can submit a bug report (no auth)
  • Progressive fieldsets — two-step form (Report Details + Reproduction)
  • Branch rules — severity=critical routes to senior queue, otherwise standard queue
  • SLA timer — critical fixes have a 1-hour SLA (fires workflow.sla_breach event)
  • Team assignment — classify, fix, and verify stages are team-scoped

Stage Flow

[submit]  →  [classify]  →  [fix-critical]  →  [verify]
  public       team        ↘ [fix-normal]  ↗     team
                              team

Installation

# Via admin API
curl -X POST $BASE/api/v1/admin/packages/install \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@packages/bug-report-triage"

API Walkthrough

# 1. Start public instance (no auth)
curl -X POST $BASE/api/v1/public/workflows/$WF_ID/start \
  -H 'Content-Type: application/json' \
  -d '{"data": {"reporter_email": "user@example.com", "summary": "Login broken", "component": "ui", "severity": "critical", "steps": "1. Click login", "expected": "Login page", "actual": "500 error"}}'

# 2. Resume (check status)
curl $BASE/api/v1/public/workflows/resume/$ENTRY_TOKEN

# 3. Team claims classify assignment
curl -X POST $BASE/api/v1/teams/$TEAM/assignments/$ASSIGN_ID/claim \
  -H "Authorization: Bearer $TOKEN"

# 4. Advance classify (triggers branch rule)
curl -X POST $BASE/api/v1/teams/$TEAM/instances/$INST/advance \
  -H "Authorization: Bearer $TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"data": {"severity": "critical", "notes": "Confirmed production issue"}}'