Prisma и данные
Prisma является единственным обычным способом доступа к PostgreSQL. Перед изменением проверьте prisma/schema.prisma, существующие relation и миграции.
Текущая схема использует PostgreSQL schema cassoft, Prisma-модели с полями cs_* и явные @@map/@@schema. Фактическая Prisma-схема является источником истины, а не старый markdown-пример.
Каждый клиент работает в отдельном экземпляре и базе. Не передавайте подключение, tenantId или instance identifier из браузера. Если модель содержит tenant-поле, фильтруйте его серверным контекстом; если не содержит, не добавляйте фиктивный фильтр.
Используйте select, избегайте N+1, ограничивайте списки и выполняйте связанные изменения в $transaction, когда операция должна быть атомарной.
Проверка изменений
pnpm exec prisma format
pnpm exec prisma validate
pnpm exec prisma generate
В production миграции применяются только к базе соответствующего isolated instance. Не запускай destructive reset на production и не подставляй DATABASE_URL из пользовательского запроса.
Для CRM audit trail используй EntityAuditEvent и EntityAuditChange: записывай действие, actor, source, request id и безопасные old/new values.