📝 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:
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user