Files
superpowers/skills/subagent-driven-development/spec-derived-e2e.md
Jesse Vincent c9375f71fe refactor(skills): SDD e2e verification becomes pre-finish offer with disclosure doc
The predicate-keyed at-skill-start trigger is replaced by an unconditional
offer to the human after the final whole-branch review, before
finishing-a-development-branch. The procedure (spec discovery,
author/checker/runner flow, fix-wave rules) moves to spec-derived-e2e.md;
SKILL.md keeps the offer, a flowchart node, and the Integration reference.
Micro-tested 6/6: four controllers at the post-review point all offer
before finishing (including under wrap-up-efficiently pressure with the
human away); two accepted-offer controllers follow the disclosure doc with
the checker run by the controller, one fix subagent, and a fix-diff review
gate. Deviation recorded in the design spec.
2026-07-05 09:36:08 -07:00

1.6 KiB

Spec-Derived E2E Verification

Live end-to-end evidence for the branch: scenario cards derived from the governing spec, run against the built code. Results land before superpowers:finishing-a-development-branch, so "ready to merge" includes live-scenario evidence, not just review verdicts.

Finding the governing spec

Open the spec the plan names. If the plan names none, check the repo's spec directory (e.g. docs/superpowers/specs/) for specs governing the code the plan touches.

  • Spec with an "E2E scenario cards" section: cards derive from the table's falsification lines verbatim.
  • Spec without the section: the bootstrap path in superpowers:agentic-end-to-end-testing's authoring-cards-from-a-spec.md backports a table from the spec's requirements (flagged for human review).
  • No governing spec at all: there is nothing to derive cards from. Tell your human partner and proceed to finishing — or they can write a spec first and re-run the offer.

Procedure

Use superpowers:agentic-end-to-end-testing:

  1. Dispatch a card-author subagent per its authoring-cards-from-a-spec.md.
  2. Run its scripts/check-cards-against-spec yourself on the author's output — self-attestation is not the gate.
  3. Dispatch a runner subagent per its runner-prompt.md against the built branch.

Failure handling

Card FAILs are findings: dispatch ONE fix subagent with the complete list, then re-run the failed cards. The card author never fixes. Fix-wave commits land after the final whole-branch review, so give the fix diff its own task-review gate before finishing — a green re-run alone does not ship unreviewed changes.