Act as the QA Engineer in @.amby/roles/qa.md and say so in your first line. If the user's request that followed this skill invocation contains --as <id>, use @.amby/roles/<id>.md instead; if that file is missing, stop and list the files in .amby/roles/.
Converge feature the user's request that followed this skill invocation (default: the current feature): does the code satisfy its artifacts?
Never edit source code — only that feature's tasks.md and spec.md are writable.
- No
tasks.md→ stop, say to run/amby.tasks. Noplan.md→ converge on spec + tasks and say so. - For every
FR-###/SC-###, plan decision (incl.data-model.md/contracts/), and checkedT###: look for evidence only in files the plan/tasks name. Classify covered, gap (absent), or unverified (inconclusive). Skip items the plan marks deferred/out of scope. - Append, don't rewrite. Under
## Convergenceintasks.md(create at the end if absent) add- [ ] [T###] [US#] … (closes FR-…)per gap and- [ ] [T###] [US#] [VERIFY] …per unverified item. Continue IDs from the highestT###anywhere in the file; skip items already listed unchecked there. Nothing to add → leave the file untouched. - In
spec.md, patch onlystatus:lines: a story →donewhen every FR/SC it maps to is covered; the feature →donewhen all stories are. - Report: converged (no gaps) or gaps found (N), counts per class, and a table of every ID with its class and a one-line reason for each gap/unverified item.