Amended by 0154: the sandboxed code
step (QuickJS-WASM and Pyodide, no filesystem, allow-listed fetch) is the only place tenant code
may run. It is listed as an allowed form in the row below.
The “runtime schema engine” row was rewritten by
0110, which supersedes the old row (“A runtime
schema engine, server-driven UI, JSONB-for-everything”, Rejected). It now allows data that only
references registered code.
Context
Assistants and new contributors helpfully add well-known tools. Each one adds a second way to do something that already has one, and each costs a migration to remove. The decisions against them are scattered across earlier repositories as prose. This page is the one table. Each row says what is not introduced, what to use instead, and what event reopens it.Decision
Do not introduce anything in the Not introduced column. If a task seems to need one, stop and route to thearchitecture-guardian agent. Rejected means no for the foreseeable future. Deferred means not yet, and the trigger
names when. A row changes only by a new ADR that supersedes this page.
Consequences
- A proposal that touches one of these rows starts with a new ADR, not a pull request.
- Product-specific rejections (billing vendors, wallet design and similar) are not carried here; a product repository records its own.
Enforcement
FORBIDDEN_DEPENDENCIESintools/scripts/validate-repository.mjsfails a member that listseslint,prettier,jest,@nestjs/core,@nestjs/common,reflect-metadata,prisma,@prisma/client,drizzle-orm,express,fastify,typeormorknex.packages/tooling/oxlint/src/boundaries.jsoncbansencore.devin packages.- Planned: extend the list with
encore.devfor members other than a future service runtime, and with the other rows that name a package, after this table is reviewed. - The
architecture-guardianagent reads this page.
Supersedes and sources
Supersedes: none. Sources: user rulesnot-built-yet.md; academorix .agents/rules/not-built-yet.md; figentra docs/adr/0001-technology-stack-and-toolchain, 0036 to 0039; platform docs/adr/0013. Every row was re-checked against Stackra’s layout.