Files
tolaria/docs/adr
2026-03-28 10:55:40 +01:00
..

Architecture Decision Records

This folder contains Architecture Decision Records (ADRs) for the Laputa app.

Format

Each ADR is a markdown note with YAML frontmatter. Template:

---
type: ADR
id: "0001"
title: "Short decision title"
status: proposed        # proposed | active | superseded | retired
date: YYYY-MM-DD
superseded_by: "0007"  # only if status: superseded
---

## Context
What situation led to this decision? What forces and constraints are at play?

## Decision
**What was decided.** State it clearly in one or two sentences — bold so it stands out.

## Options considered
- **Option A** (chosen): brief description — pros / cons
- **Option B**: brief description — pros / cons
- **Option C**: brief description — pros / cons

## Consequences
What becomes easier or harder as a result?
What are the positive and negative ramifications?
What would trigger re-evaluation of this decision?

## Advice
*(optional)* Input received before making this decision — who was consulted, what they said, when.
Omit if the decision was made unilaterally with no external input.

Status lifecycle

proposed → active → superseded
                 ↘ retired      (decision no longer relevant, not replaced)

Rules

  • One decision per file
  • Files named NNNN-short-title.md (monotonic numbering)
  • Once active, never edit — supersede instead
  • When superseded: update status: superseded and add superseded_by: "NNNN"
  • ARCHITECTURE.md reflects the current state (active decisions only)

Index

ID Title Status
0001 Tauri v2 + React as application stack active
0002 Filesystem as the single source of truth active
0003 Single note open at a time (no tabs) active
0004 Vault vs app settings for state storage active
0005 Tauri v2 iOS for iPad support (vs SwiftUI rewrite) active
0006 Flat vault structure (no type-based folders) active
0007 Opt-in telemetry via Sentry and PostHog active
0008 Canary release channel for early testing active
0009 Local feature flags (no remote dependency) active
0010 CodeScene code health gates in CI and git hooks active
0011 Keyword search only (remove QMD semantic indexing) active
0012 Underscore convention for system properties active
0013 BlockNote as the rich text editor active
0014 Wikilink-based relationship model active
0015 Note type system (types as files) active