SmartTest

Architecture Decision Records

We record significant decisions as lightweight ADRs (context → decision → consequences). An ADR is Proposed until it is accepted at a sprint review. Superseded ADRs stay in place and link to the ADR that replaces them.

ADRTitleStatus
0001TypeScript pnpm monorepo, Node 22+/24 LTSAccepted
0002TypeScript analysis engine (TS 6 API, syntactic + resolveModuleName)Accepted
0003Local intelligence store (JSON store, SQLite deferred)Accepted (amended)
0004Deterministic, local-first core; AI optionalAccepted
0005Capability-declared adapters, never emulateAccepted
0006Contracts first, in shared during Sprint 0Accepted
0007Name, license and distributionAccepted (1.0.0)
0008Observed execution may rule out tests, except in SAFE modeAccepted (0.5.0)
0009Validated result cache, reported as cachedAccepted (0.8.0)
0010Plugin SDK v1 and edge providersAccepted (1.0.0)

Boundaries from ADR-0004 are enforced by pnpm check:boundaries (scripts/check-boundaries.mjs).

Template: copy template.md.

Edit this page on GitHub