📝 docs(adr): close 5 partial ADRs with code-confirmed status updates

Verifier Dim B (homogeneity + code↔docs confrontation) flagged 5 ADRs
stuck at "Partially Implemented" while the corresponding code is live.
Audit + status update:

- ADR-0009 (Hybrid testing) → Implemented; SDK gen explicitly out of scope
- ADR-0013 (OpenAPI toolchain) → Implemented; SDK gen explicitly out of
  scope, cross-refs ADR-0009
- ADR-0018 (User auth) → Implemented; user model, JWT auth, password
  reset, admin endpoints, greet personalization, BDD coverage all live
  (verified in pkg/user/, pkg/auth/, features/auth/)
- ADR-0019 (Postgres) → Implemented (core); per-item next-steps audit:
  CI integration , performance tuning + monitoring tracked separately
- ADR-0024 (BDD test org) → Implemented Phase 1+2+3; PR #35 closed
  Phase 3 parallel testing with 2.85x speedup, strategy in ADR-0025

No code changes — pure status reconciliation. The Status field is now
the single source of truth for what's done vs deferred, removing the
"forever Partial" doc drift the verifier flagged.
This commit is contained in:
2026-05-05 08:06:33 +02:00
parent 7c5f11779e
commit 035e49ae80
5 changed files with 28 additions and 28 deletions

View File

@@ -1,6 +1,6 @@
# ADR 0024: BDD Test Organization and Isolation Strategy
**Status:** Partially Implemented
**Status:** Implemented (Phase 1 + Phase 2 + Phase 3 — parallel testing via [PR #35](https://gitea.arcodange.lab/arcodange/dance-lessons-coach/pulls/35), isolation strategy detailed in [ADR-0025](0025-bdd-scenario-isolation-strategies.md))
## Context
@@ -284,20 +284,22 @@ func CleanupFeatureData(featureName string) {
## Implementation Plan
### Phase 1: Refactor Current Tests (1-2 weeks)
1. Split monolithic feature files into feature directories
2. Create feature-specific test scripts
3. Implement basic isolation (config files, database names)
### Phase 1: Refactor Current Tests — ✅ Implemented
1. Split monolithic feature files into feature directories — done (see `features/<domain>/` layout)
2. Create feature-specific test scripts — done
3. Implement basic isolation (config files, database names) — done
### Phase 2: Enhance Test Infrastructure (2-3 weeks)
1. Add synchronization helpers to test framework
2. Implement server lifecycle management
3. Create comprehensive cleanup routines
### Phase 2: Enhance Test Infrastructure — ✅ Implemented
1. Add synchronization helpers to test framework — done
2. Implement server lifecycle management — done (`pkg/bdd/testserver/server.go`)
3. Create comprehensive cleanup routines — done
### Phase 3: Parallel Testing (Optional)
1. Add parallel test execution capability
2. Implement port management for parallel runs
3. Add resource monitoring
### Phase 3: Parallel Testing — ✅ Implemented (PR #35, 2026-05-03)
1. Add parallel test execution capability — done (schema-per-package isolation, **2.85x speedup**)
2. Implement port management for parallel runs — done (`pkg/bdd/parallel/port_manager.go`)
3. Add resource monitoring — deferred (not blocking; can be reopened as separate ADR if/when CI flakiness re-emerges)
The strategy choice between alternatives (TRUNCATE vs schema isolation vs container-per-test) is documented in [ADR-0025](0025-bdd-scenario-isolation-strategies.md). Default behavior in CI is `BDD_SCHEMA_ISOLATION=true` (cf. `documentation/BDD_TEST_ENV.md`).
## Alternatives Considered