Architecture Decision Records (ADR)
🇰🇷 한국어 버전
Documentation of architectural decisions made in the Specvital project.
What is an ADR?
An Architecture Decision Record (ADR) captures an important architectural decision made along with its context and consequences. ADRs help maintain decision history across multi-repository microservices.
When to Write an ADR
| Category | Examples |
|---|---|
| Technology Stack | Framework selection, library adoption, version upgrades |
| Architecture | Service boundaries, communication patterns, data flow |
| API Design | Endpoint structure, versioning strategy, error handling |
| Database | Schema design, migration strategy, indexing approach |
| Infrastructure | Deployment platform, scaling strategy, monitoring |
| Cross-cutting | Security, performance optimization, observability |
Templates
| Template | Use Case |
|---|---|
| template.md | Standard ADR for most decisions |
Naming Convention
XX-brief-decision-title.mdXX: Two-digit sequential number (01, 02, ...)- Lowercase with hyphens
- Brief and descriptive titles
Technical Areas
| Area | Affected Repositories |
|---|---|
| Parser | core |
| API | web |
| Worker | worker |
| Database | infra |
| Infrastructure | infra |
| Cross-cutting | multiple |
ADR Index
Cross-cutting (All Repositories)
Core Repository
Worker Repository
| # | Title | Area | Date |
|---|---|---|---|
| 01 | Scheduled Re-analysis Architecture | Architecture | 2024-12-18 |
| 02 | Clean Architecture Layer Introduction | Architecture | 2024-12-18 |
| 03 | Graceful Shutdown and Context-Based Lifecycle Management | Architecture | 2024-12-18 |
| 04 | OAuth Token Graceful Degradation | Reliability | 2024-12-18 |
| 05 | Analyzer-Scheduler Process Separation | Architecture | 2024-12-18 |
| 06 | Semaphore-Based Clone Concurrency Control | Concurrency | 2024-12-18 |
| 07 | Repository Pattern Data Access Abstraction | Architecture | 2024-12-18 |
| 08 | SpecView Worker Binary Separation | Architecture | 2026-01-13 |
| 09 | Phase 1 V1 Quality Enhancement Architecture | AI/ML | 2026-02-04 |
| 10 | Per-User Fairness Middleware | Concurrency | 2026-02-02 |
| 11 | Data Retention-Based Cleanup Service | Scheduling | 2026-02-02 |
| 12 | Phase 2 Behavior Cache | AI/ML | 2026-01-24 |
Web Repository
Process
- Create: Copy template.md →
XX-title.md - Write: Fill in all sections with finalized decision
- Localize: Create Korean version in
kr/adr/ - Review: Submit PR for team review
- Merge: Add to index after approval
Related Repositories
- specvital/core - Parser engine
- specvital/web - Web platform
- specvital/worker - Worker service
- specvital/infra - Infrastructure
