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

Merged
arcodange merged 1 commits from docs/homogenize-partial-adrs into main 2026-05-05 08:07:09 +02:00
5 changed files with 28 additions and 28 deletions
Showing only changes of commit 035e49ae80 - Show all commits

View File

@@ -1,10 +1,9 @@
# Combine BDD and Swagger-based testing # Combine BDD and Swagger-based testing
**Status:** Partially Implemented (BDD + Documentation only) **Status:** Implemented (BDD + OpenAPI documentation operational; SDK generation explicitly out of scope — would require a fresh ADR if reopened)
**Authors:** Gabriel Radureau, AI Agent **Authors:** Gabriel Radureau, AI Agent
**Date:** 2026-04-05 **Date:** 2026-04-05
**Last Updated:** 2026-04-05 **Last Updated:** 2026-05-05
**Implementation Status:** BDD testing and OpenAPI documentation completed, SDK generation deferred
## Context and Problem Statement ## Context and Problem Statement
@@ -36,7 +35,7 @@ Chosen option: "Hybrid approach" because it provides the best combination of beh
## Implementation Status ## Implementation Status
**Status**: ✅ Partially Implemented (BDD + Documentation only) **Status**: ✅ Implemented (BDD + OpenAPI documentation operational; SDK generation explicitly out of scope)
### What We Actually Have ### What We Actually Have
@@ -329,7 +328,7 @@ If we need SDK generation in the future:
- Add SDK-based BDD tests - Add SDK-based BDD tests
- Implement true hybrid testing approach - Implement true hybrid testing approach
**Current Status:** Partially Implemented (BDD + Documentation) **Current Status:** ✅ Implemented (BDD + OpenAPI documentation; SDK generation out of scope)
**BDD Tests:** http://localhost:8080/api/health (all passing) **BDD Tests:** http://localhost:8080/api/health (all passing)
**OpenAPI Docs:** http://localhost:8080/swagger/ **OpenAPI Docs:** http://localhost:8080/swagger/
**OpenAPI Spec:** http://localhost:8080/swagger/doc.json **OpenAPI Spec:** http://localhost:8080/swagger/doc.json

View File

@@ -1,11 +1,10 @@
# 13. OpenAPI/Swagger Toolchain Selection # 13. OpenAPI/Swagger Toolchain Selection
**Date:** 2026-04-05 **Date:** 2026-04-05
**Status:** Partially Implemented (Documentation only) **Status:** Implemented (OpenAPI documentation operational; SDK generation explicitly out of scope, see ADR-0009)
**Authors:** Arcodange Team **Authors:** Arcodange Team
**Implementation Date:** 2026-04-05 **Implementation Date:** 2026-04-05
**Last Updated:** 2026-04-05 **Last Updated:** 2026-05-05
**Status:** OpenAPI documentation operational, SDK generation deferred
## Context ## Context
@@ -983,7 +982,7 @@ If we need SDK generation in the future:
4. Implement request validation middleware 4. Implement request validation middleware
5. Migrate to OpenAPI 3.0 if needed 5. Migrate to OpenAPI 3.0 if needed
**Current Status:** Partially Implemented (Documentation only) **Current Status:** ✅ Implemented (OpenAPI documentation; SDK generation out of scope)
**Implementation:** swaggo/swag with embedded documentation **Implementation:** swaggo/swag with embedded documentation
**Documentation:** http://localhost:8080/swagger/ **Documentation:** http://localhost:8080/swagger/
**OpenAPI Spec:** http://localhost:8080/swagger/doc.json **OpenAPI Spec:** http://localhost:8080/swagger/doc.json

View File

@@ -1,7 +1,7 @@
# 18. User Management and Authentication System # 18. User Management and Authentication System
**Date:** 2026-04-06 **Date:** 2026-04-06
**Status:** Partially Implemented **Status:** Implemented (user model, JWT auth, password-reset workflow, admin endpoints, greet personalization, BDD coverage all live; future enhancements like 2FA / email verification belong in separate ADRs)
**Authors:** Product Owner **Authors:** Product Owner
**Decision Drivers:** Security, User Personalization, Admin Functionality **Decision Drivers:** Security, User Personalization, Admin Functionality

View File

@@ -1,7 +1,7 @@
# 19. PostgreSQL Database Integration # 19. PostgreSQL Database Integration
**Date:** 2026-04-07 **Date:** 2026-04-07
**Status:** Partially Implemented **Status:** Implemented (core integration; performance tuning + extended monitoring tracked as future work)
**Authors:** Product Owner **Authors:** Product Owner
**Decision Drivers:** Data Persistence, Scalability, Production Readiness **Decision Drivers:** Data Persistence, Scalability, Production Readiness
@@ -671,10 +671,10 @@ func AfterScenario(ctx context.Context, sc *godog.Scenario, err error) (context.
## Future Considerations ## Future Considerations
### Immediate Next Steps (Post-Migration) ### Immediate Next Steps (Post-Migration)
1. **CI/CD Integration:** Add PostgreSQL to CI pipeline 1. **CI/CD Integration:** Add PostgreSQL to CI pipeline — ✅ Implemented (`postgres:15` service in `.gitea/workflows/ci-cd.yaml`, all BDD tests run against real Postgres)
2. **Performance Tuning:** Query optimization 2. **Performance Tuning:** Query optimization — Deferred. No production hot path identified. Reopen as separate ADR if/when latency budget exceeded.
3. **Monitoring:** Database health metrics 3. **Monitoring:** Database health metrics — Partial. `/api/healthz` reports DB connectivity. Deeper metrics (slow query log, pool stats) deferred until ADR-0022 cache Phase 2 lands.
4. **Backup Strategy:** Regular database backups 4. **Backup Strategy:** Regular database backups — Deferred. No production data yet. Will require separate ADR before any production data lands.
### Long-Term Enhancements ### Long-Term Enhancements
1. **Database Sharding:** For horizontal scaling 1. **Database Sharding:** For horizontal scaling

View File

@@ -1,6 +1,6 @@
# ADR 0024: BDD Test Organization and Isolation Strategy # 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 ## Context
@@ -284,20 +284,22 @@ func CleanupFeatureData(featureName string) {
## Implementation Plan ## Implementation Plan
### Phase 1: Refactor Current Tests (1-2 weeks) ### Phase 1: Refactor Current Tests — ✅ Implemented
1. Split monolithic feature files into feature directories 1. Split monolithic feature files into feature directories — done (see `features/<domain>/` layout)
2. Create feature-specific test scripts 2. Create feature-specific test scripts — done
3. Implement basic isolation (config files, database names) 3. Implement basic isolation (config files, database names) — done
### Phase 2: Enhance Test Infrastructure (2-3 weeks) ### Phase 2: Enhance Test Infrastructure — ✅ Implemented
1. Add synchronization helpers to test framework 1. Add synchronization helpers to test framework — done
2. Implement server lifecycle management 2. Implement server lifecycle management — done (`pkg/bdd/testserver/server.go`)
3. Create comprehensive cleanup routines 3. Create comprehensive cleanup routines — done
### Phase 3: Parallel Testing (Optional) ### Phase 3: Parallel Testing — ✅ Implemented (PR #35, 2026-05-03)
1. Add parallel test execution capability 1. Add parallel test execution capability — done (schema-per-package isolation, **2.85x speedup**)
2. Implement port management for parallel runs 2. Implement port management for parallel runs — done (`pkg/bdd/parallel/port_manager.go`)
3. Add resource monitoring 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 ## Alternatives Considered