LumiBaseDocs

Architecture Decision Records (ADR)

LumiBase follows the ADR pattern to document significant architectural decisions. Each ADR captures the context, decision, and consequences in a lightweight format.

Index

ADRTitleStatus
ADR-001Use NanoID / UUIDv7 over auto-incrementAccepted
ADR-002Runtime Abstraction Layer for Dual DeploymentAccepted
ADR-003Human-in-the-Loop for Dangerous AI SkillsAccepted
ADR-004Tag-based Cache InvalidationAccepted
ADR-005Hono.js over Express/ElysiaAccepted
ADR-006Drizzle ORM over PrismaAccepted
ADR-007Logto for AuthenticationAccepted
ADR-008JSON Policy DSL for PermissionsAccepted
ADR-009GraphQL Yoga with Dynamic Schema over ItemServiceAccepted
ADR-010lumibase_ prefix for all system tablesAccepted
ADR-011User Management Realms (single store, role-scoped realms, token audiences)Accepted

Template

When adding a new ADR, use this template:

markdown
# ADR-NNN: Title

**Date:** YYYY-MM-DD
**Status:** Proposed | Accepted | Deprecated | Superseded by ADR-NNN

## Context
...

## Decision
...

## Consequences
...
Last modified: 23/07/2026