Architecture Decision Records
Decisions that shape the platform, with the evidence that led to them. Format: context → decision → consequences. Superseded ADRs stay in place, marked as such. The history is the point.
Naming: ADRs 0001–0007 predate the rename to designIQ (ADR 0008) and keep the names of their time: product, packages, image, repository and VS Code extension appear there under their old names. ADR 0008 lists the new ones.
| ADR | Title | Status |
|---|---|---|
| 0001 | Zero stored user tokens: authorization via installation token | accepted |
| 0002 | Multi-tenant SaaS: cell per tenant + thin control plane | accepted |
| 0003 | Module architecture: hexagonal backends, shared packages | accepted |
| 0004 | Open-source split: public platform monorepo, private SaaS overlay | accepted |
| 0005 | AI write access in-process: /mcp + content REST, OIDC RS, no self-built AS | accepted |
| 0006 | Notation plugins: capability slots, reference meta-model, structured doc shape | accepted |
| 0007 | One login: IdP everywhere, explicit no-auth mode, GitHub OAuth login and dev token retired | accepted |
| 0008 | Rename to designIQ: readers before writers, stored identifiers frozen | accepted |
| 0009 | Semantic BPMN editing through bpmn-cli: outline, operations, layout on /mcp | accepted |
Operational: the SaaS activation runbook lives with the control plane (apps/control-plane/docs/saas-activation.md). It turns ADR 0002 from code-complete into a running SaaS.