Files
goplt/docs/content/adr
0x1d a38a08ca17
All checks were successful
CI / Test (push) Successful in 11s
CI / Format Check (push) Successful in 3s
CI / Lint (push) Successful in 9s
CI / Build (push) Successful in 6s
docs: add ADR-0031 for service repository structure decision
Create ADR documenting the decision to use a monorepo structure with
service directories for organizing microservices (Option 1).

The ADR covers:
- Decision to use monorepo with service directories
- Rationale for monorepo vs separate repositories
- Proposed directory structure with cmd/ and services/
- Implementation strategy across epics
- Consequences and mitigations
- Migration path if needed in the future

This clarifies how services (Auth, Identity, Authz, Audit) should be
organized in the codebase while maintaining service independence and
microservices architecture principles.
2025-11-05 15:13:34 +01:00
..
2025-11-05 11:00:36 +01:00
2025-11-05 11:00:36 +01:00
2025-11-05 11:00:36 +01:00

Architecture Decision Records (ADRs)

This directory contains Architecture Decision Records (ADRs) for the Go Platform project.

What are ADRs?

ADRs document important architectural decisions made during the project. They help:

  • Track why decisions were made
  • Understand the context and constraints
  • Review decisions when requirements change
  • Onboard new team members

ADR Format

Each ADR follows this structure:

  • Status: Proposed | Accepted | Rejected | Superseded
  • Context: The situation that led to the decision
  • Decision: What was decided
  • Consequences: Positive and negative impacts

ADR Index

Epic 0: Project Setup & Foundation

Epic 1: Core Kernel & Infrastructure

Epic 2: Authentication & Authorization

Epic 3: Module Framework

Epic 5: Infrastructure Adapters

Epic 6: Observability & Production Readiness

Epic 7: Testing, Documentation & CI/CD

Architecture & Scaling

Adding New ADRs

When making a new architectural decision:

  1. Create a new file: XXXX-short-title.md (next sequential number)
  2. Follow the ADR template
  3. Update this README with the new entry
  4. Set status to "Proposed" initially
  5. Update to "Accepted" after review/approval

References