This directory contains Architecture Decision Records (ADRs) for the Kaset project.
An ADR is a document that captures an important architectural decision made along with its context and consequences. ADRs help:
- Preserve context for why decisions were made
- Onboard new team members faster
- Avoid repeating discussions about past decisions
- Document trade-offs considered during design
Each ADR follows this format:
# ADR-NNNN: Title
## Status
[Proposed | Accepted | Deprecated | Superseded by ADR-XXXX]
## Context
What is the issue that we're seeing that is motivating this decision?
## Decision
What is the change that we're proposing and/or doing?
## Consequences
What becomes easier or more difficult because of this change?
| ADR | Title | Status |
|---|---|---|
| 0001 | WebView-Based Playback | Accepted |
| 0002 | Protocol-Based Service Design | Accepted |
| 0003 | Modular API Response Parsers | Accepted |
| 0004 | Streaming Responses for Foundation Models | Accepted |
| 0005 | Foundation Models Architecture | Accepted |
| 0006 | Swift Testing Migration | Accepted |
| 0007 | Sparkle Auto-Updates | Accepted |
| 0008 | Nonisolated Network Helpers for MainActor Classes | Accepted |