Database boundaries
Empat schema Prisma memakai MongoDB dan client terpisah. Setiap domain hanya menulis database miliknya.
| Client | Environment | Ownership |
|---|---|---|
| runner | DATABASE_RUNNER_URL | identity, tenancy, access |
| catalog | DATABASE_CATALOG_URL | product, service, pricing |
| commerce | DATABASE_COMMERCE_URL | transaction lifecycle |
| inventory | DATABASE_INVENTORY_URL | stock ledger and warehouse |
Referential integrity
Cross-database ID seperti organizationId, productId, dan memberId adalah scalar. Service harus melakukan lookup ke owner database sebelum write dan menolak reference yang tidak valid.
Tidak ada transaksi ACID lintas client. Untuk workflow multi-database, gunakan idempotency key, ordered writes, retry yang aman, dan compensation. Jangan menampilkan generated Prisma client pada client bundle.