Hackorda Docs
Verifier bounty

Tester files a bug on an active cycle

The entry point of the whole bounty flow. Everything downstream depends on this working: triage, verification, payouts, feature scopes — none of them have anything to chew on if testers can't file bugs.

Setup

  • You're signed in as a tester account (not admin).
  • At least one standard test cycle is in active status for a product the tester has access to.
    • If none: switch to your admin account, create one via /app/admin/test-cycles/new, kind=Standard, then sign back in as the tester.
  • Have a screenshot or short note ready as the bug repro material — doesn't have to be a real bug, just realistic enough to file.

Steps

  1. Sign in as the tester. Land on the dashboard.
  2. Navigate into the active test cycle (sidebar → Active cycles → click in, OR /app/test-cycles/<id>).
  3. Click File a bug (or the equivalent affordance on the cycle page).
  4. Fill in:
    • Title — short, specific (e.g. "Submit button stuck spinning on /signup")
    • Description — markdown, a few lines of repro
    • Severity — pick anything except trivial so you can confirm the suggested-payout amount shows up
  5. Attach the screenshot/note if the form has an attachment affordance.
  6. Submit.

Expected

  • ✅ The form closes and you land on the new issue's detail page (or the issues list with the new bug at the top).
  • ✅ The new bug shows:
    • status: open (or draft if the cycle requires admin intake)
    • The severity you picked
    • reportedBy: <your tester handle>
    • A suggested payout amount that matches the severity ladder (trivial 100 / low 250 / medium 500 / high 1000 / critical 2000 KZT — unless the cycle has an override)
  • ✅ The bug appears in:
    • The cycle's All issues tab
    • The cycle's My issues (or equivalent "filed by you") tab
    • The admin Triage queue when viewed as admin
  • ✅ No duplicate row, no console errors in the browser devtools.

Notes

  • Payout amount = suggestedAmountCentsFor(severity, cycle.metadata) — see src/lib/issue-payout.ts. If the cycle has metadata.payout_rates.rates.<severity> set, the override beats the default.
  • If the cycle is in review/closed/cancelled status, the file-bug affordance should be hidden or disabled — that's a separate scenario (VERBO-006 covers cycle lifecycle).
  • The existing Playwright spec (file-issue.spec.ts) covers the happy path; this catalog entry also pins down the cross-tab visibility + suggested-amount rules that the spec doesn't assert today.

Verification log

(empty — first verification will be appended here)

On this page