2c08c778a9
REQ-221: skills/ directory with 9 Atelier-derived skill files mapped to the BA.A citizen-developer catalog: api, security, data, testing, observability, errors, devops, infrastructure-as-code, compliance. Each names the Atelier source path, distills first-principles to the citizen-dev-relevant subset, links to agent-checklist triggers, maps to BA.A 5-skill catalog. REQ-222: docs/skills.md index (9-skill table, Atelier provenance, 8 core principles C1-C8, consumption instructions, reference-only domains, excluded domains). PROJECT.md BA.A decision extended with the Atelier-derived skill catalog reference. ---ci--- project: acdl phase: 4 milestone: v1.18 status: execute requirements: covered: [REQ-221, REQ-222] partial: [] ---/ci---
37 lines
1.6 KiB
Markdown
37 lines
1.6 KiB
Markdown
# Skill: Testing
|
|
|
|
> **Atelier source:** `domains/testing/` (first-principles + pyramid,
|
|
> fixtures)
|
|
> **Core principles:** C1 Correctness, C5 Reversibility
|
|
> **BA.A mapping:** UAT is the citizen developer's RACI responsibility
|
|
> **Consumer:** read this before submitting for UAT.
|
|
|
|
## First Principles (citizen-developer-relevant subset)
|
|
|
|
- **Tests are independent.** Order doesn't matter; one test's setup
|
|
doesn't break another's.
|
|
- **Tests are deterministic.** No `Date.now()`, no `random()`, no
|
|
network calls in unit tests.
|
|
- **Edge cases are covered.** Empty, single, max, invalid — not just
|
|
the happy path.
|
|
- **A failing test names the problem.** The assertion message explains
|
|
what failed and why, not just "assertion failed".
|
|
- **The pyramid: unit → integration → e2e.** Most tests are unit; few
|
|
are e2e; the middle is integration. Don't invert the pyramid.
|
|
|
|
## Agent-Checklist Triggers (§ Testing)
|
|
|
|
- Tests are independent (order doesn't matter)
|
|
- Tests are deterministic (no `Date.now()`, no `random()`)
|
|
- Edge cases are covered (empty, single, max, invalid)
|
|
- A failing test names the problem specifically
|
|
|
|
## How Nova Uses This
|
|
|
|
Per the RACI matrix (`docs/raci.md`), the **Citizen Developer is
|
|
Responsible for User Acceptance Testing (UAT)**. The platform provides
|
|
the QA checks (policy, confidence, schema); you provide the UAT. The
|
|
testing skill ensures your UAT meets production-grade standards. The
|
|
W3.E per-env mandatory table requires `validation.e2eSuite` +
|
|
`validation.loadTest` for `qa` environment submissions — the
|
|
submission-readiness gate enforces this. |