Skip to content

docs(adr): add ADR template and ADR 0001 target architecture#715

Open
osvaldoandrade wants to merge 1 commit into
mainfrom
docs/adr-template-0001
Open

docs(adr): add ADR template and ADR 0001 target architecture#715
osvaldoandrade wants to merge 1 commit into
mainfrom
docs/adr-template-0001

Conversation

@osvaldoandrade

Copy link
Copy Markdown
Owner

Summary

Establishes the Architecture Decision Record process and records the target architecture that all refactor epics (#645#656) build toward.

Files

  • docs/adr/README.md — when to write an ADR, status lifecycle, index.
  • docs/adr/template.md — reusable skeleton (Context / Decision / Consequences / Alternatives / References).
  • docs/adr/0001-target-architecture.md — the target layout.

ADR 0001 in one paragraph

codeq adopts a layered architecture with hexagonal boundaries at storage and transport. Dependency direction is strict and one-way: cmd → bootstrap → server/application/storage → core → pkg/{types,plugin,auth}. Interfaces are consumer-side. Errors are typed structs in internal/core/errors. Composition lives in cmd/, with no DI framework. Rules are enforced by depguard (PR #713) and per-layer coverage floors (PR #714), not by convention.

Test plan

Closes #659
Part of #645

Establish the ADR process and record the target architecture that
anchors the refactor epics (#645-#656):

- docs/adr/README.md: when to write an ADR, status lifecycle, index.
- docs/adr/template.md: reusable skeleton.
- docs/adr/0001-target-architecture.md: layered + hexagonal layout,
  one-way dependency direction, consumer-side interfaces, typed
  errors, composition in cmd/, enforcement via depguard.

Refs #645 #659
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Create ADR template and ADR 0001 (target architecture)

1 participant