From 05abb3b6a5bd49fcfddd49927d2cb9d4b477e7dd Mon Sep 17 00:00:00 2001 From: sjat Date: Fri, 5 Jun 2026 13:15:13 +0200 Subject: [PATCH] Add VERIFY.md template for service-UI acceptance (ADR-017) --- docs/testing/service-verify-template.md | 43 +++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 docs/testing/service-verify-template.md diff --git a/docs/testing/service-verify-template.md b/docs/testing/service-verify-template.md new file mode 100644 index 0000000..2245e3d --- /dev/null +++ b/docs/testing/service-verify-template.md @@ -0,0 +1,43 @@ +# Per-service verification record — template + +Copy this file to `roles//VERIFY.md` and fill it in when building a service +role (ADR-008 Level 4 / ADR-017). It is the per-service **acceptance spec**: the +critical user journeys that define "working" for this service. `/verify-service ` +reads it, drives a browser through them against the staging deploy, and explores beyond +them. + +Delete this preamble in the copy and start from the heading below. + +--- + +# Verify — <service> + +## Critical user journeys + +The acceptance criteria — what "working" means for this service. Numbered; each is an +action and its expected result. Example shape (replace with this service's flows): + +1. SSO login via Authentik succeeds and lands on the service's home/dashboard. +2. <core action> — e.g. "upload a test image" → <expected> — "a thumbnail renders". +3. <core action> → <expected>. + +## What good looks like + +Key states/screens Claude should confirm (and screenshot) — the visual/textual signals +that the journeys above actually succeeded. + +- <e.g. "the uploaded image appears in the library grid within ~10s"> + +## Not browser-verifiable + +Items to route to the manual-test handoff — things a headless browser can't or +shouldn't judge. + +- <e.g. hardware passthrough, a paid/external integration, subjective media quality> + +## Test data + +What the journeys need, provisioned in the **staging** Authentik `test` group +(ephemeral, torn down by staging rebuild). + +- <e.g. "one test user; no pre-seeded content">