Use when writing acceptance criteria for a task - express each as an observable Given/When/Then that QA can execute, including negative cases
The English summary is being prepared. Showing the original description.
Use when the task has a background job, queue consumer, scheduler or webhook - firing the real trigger, polling for the side effect, and the retry, idempotency and poison-message cases
The English summary is being prepared. Showing the original description.
See how to installReview the instructions the agent will receive before you install.
A worker has no HTTP response to assert on. You verify it the way the product uses it: fire the real trigger, then observe the side effects. Reading the worker's source to convince yourself it works is not testing.
cmd/worker, a queue consumer, a scheduler) and start them alongside the API with logs captured to a file.for i in $(seq 30); do check && break; sleep 1; done) instead of one arbitrary sleep. A job that needs longer than the product's own expectation is a finding.| Scenario | How | PASS looks like |
|---|---|---|
| Happy path | real trigger → poll | expected side effect appears, completion logged |
| Idempotency / duplicate delivery | fire the same trigger twice | effect applied once, no double-charge/double-send |
| Dependency failure | WireMock returns 5xx/timeout | retries with backoff per config, then DLQ/parked state — not an infinite hot loop |
| Poison message | malformed payload | job fails contained: logged, quarantined, worker keeps processing others |
| Restart mid-work | kill the worker during a job, restart | job resumes or reruns safely; nothing half-applied |
Skip a row only if the task's scope genuinely excludes it — say so in the scenario plan rather than silently.
Per scenario: the trigger command, the poll/check command, and the observed side effect (query output, WireMock request log, log lines). "The worker probably picked it up" is not evidence.
No reviews yet. Tell others what you thought.
No login needed. Share how it worked for you, ask a question, or note where it did not run.
No comments yet. Be the first to write one.
Use when writing acceptance criteria for a task - express each as an observable Given/When/Then that QA can execute, including negative cases
The English summary is being prepared. Showing the original description.
Use when the diff adds or changes an endpoint, resolver, RPC, job or query that takes an object id, a role check, a request binding or a tenant filter - BOLA/IDOR, function-level authorization, mass assignment and tenant scoping
The English summary is being prepared. Showing the original description.
Use on every UI change - semantic HTML, labels for controls, keyboard-navigable dialogs/menus, visible focus, and never color as the only signal
The English summary is being prepared. Showing the original description.
Use when a task changes any screen, form, dialog, menu or control - Lighthouse/axe scan of the changed screens, a keyboard walk, and the thresholds that fail a task
The English summary is being prepared. Showing the original description.
How to work a task returned with review, QA or UAT findings. Use when a task is in need_revision or PR review comments are in your context.
The English summary is being prepared. Showing the original description.
Use when the repository keeps its alerting in code, or a person asks for alerts outside TaskTrooper - PrometheusRule YAML, a Cloud Monitoring alert policy in Terraform, a Datadog monitor, each routed to TaskTrooper's alert ingest URL so it opens an incident here
The English summary is being prepared. Showing the original description.