* docs: add Architecture Decision Records (ADRs) Established a system for documenting architectural decisions. - Created docs/adr directory - Added ADR template (0000-template.md) - Established ADR process in docs/adr/README.md - Documented 4 key existing decisions (0001-0004) - Integrated ADRs into mkdocs.yml and docs/index.md * docs: add Architecture Decision Records (ADRs) Established a system for documenting architectural decisions. - Created docs/adr directory - Added ADR template (0000-template.md) - Established ADR process in docs/adr/README.md - Documented 4 key existing decisions (0001-0004) - Integrated ADRs into mkdocs.yml and docs/index.md - Fixed formatting in pkg/io/local/client.go * docs: add ADRs and fix auto-merge CI - Added Architecture Decision Records (ADRs) to docs/adr/ - Integrated ADRs into mkdocs.yml and docs/index.md - Localized .github/workflows/auto-merge.yml to fix "fatal: not a git repository" error in the reusable workflow by adding explicit --repo context. |
||
|---|---|---|
| .. | ||
| 0000-template.md | ||
| 0001-use-wails-v3.md | ||
| 0002-ipc-bridge-pattern.md | ||
| 0003-soa-dual-constructor-di.md | ||
| 0004-storage-abstraction-medium.md | ||
| README.md | ||
Architecture Decision Records (ADR)
This directory contains the Architecture Decision Records for the Core project.
What is an ADR?
An Architecture Decision Record (ADR) is a document that captures an important architectural decision made along with its context and consequences.
Why use ADRs?
- Context: Helps new contributors understand why certain decisions were made.
- History: Provides a historical record of the evolution of the project's architecture.
- Transparency: Makes the decision-making process transparent and open for discussion.
ADR Process
- Identify a Decision: When an architectural decision needs to be made, start a new ADR.
- Use the Template: Copy
0000-template.mdto a new file namedNNNN-short-title.md(e.g.,0001-use-wails-v3.md). - Draft the ADR: Fill in the context, drivers, and considered options.
- Propose: Set the status to
proposedand open a Pull Request for discussion. - Accept/Reject: Once a consensus is reached, update the status to
acceptedorrejectedand merge. - Supersede: If a later decision changes an existing one, update the status of the old ADR to
supersededand point to the new one.
ADR Index
| ID | Title | Status | Date |
|---|---|---|---|
| 0000 | ADR Template | N/A | 2025-05-15 |
| 0001 | Use Wails v3 for GUI | accepted | 2025-05-15 |
| 0002 | IPC Bridge Pattern | accepted | 2025-05-15 |
| 0003 | Service-Oriented Architecture with Dual-Constructor DI | accepted | 2025-05-15 |
| 0004 | Storage Abstraction via Medium Interface | accepted | 2025-05-15 |