Architektur: Craftvia-Domänenmodell, Verträge und Team-Schnitte
- Migration 0002_craftvia_domain: 27 Fachtabellen inkl. RLS (enable_tenant_rls) - TENANT_MODELS (db.ts, backup/topology.ts) um alle Fachmodelle ergänzt - moduleGuard liefert DB-autoritative Rechte; ServiceCtx für Domänen-Services - Verträge: Statusmaschine, Events, Nummernkreise, Sichtbarkeits-Scopes, Job-Queues + Worker, KI-Provider-Interfaces, Sync-Envelope - docs/craftvia/ARCHITEKTUR.md mit Lanes, Ownership und DoD Gate: tsc, lint, build, 22/22 Tests grün. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -94,6 +94,34 @@ const TENANT_MODELS = new Set<string>([
|
||||
"AuthToken",
|
||||
"TenantSettings",
|
||||
"TenantModule",
|
||||
// Craftvia domain (0002_craftvia_domain)
|
||||
"NumberSequence",
|
||||
"OrderType",
|
||||
"ChecklistTemplate",
|
||||
"Customer",
|
||||
"Contact",
|
||||
"Site",
|
||||
"Team",
|
||||
"TeamMember",
|
||||
"WorkOrder",
|
||||
"WorkOrderAssignee",
|
||||
"WorkOrderStatusChange",
|
||||
"ChecklistItem",
|
||||
"PhotoRequirement",
|
||||
"MaterialPlan",
|
||||
"MaterialUsage",
|
||||
"WorkSession",
|
||||
"TimeEntry",
|
||||
"ActivityNote",
|
||||
"Document",
|
||||
"Photo",
|
||||
"VoiceNote",
|
||||
"Report",
|
||||
"Signature",
|
||||
"ImportJob",
|
||||
"Notification",
|
||||
"SyncOperation",
|
||||
"AiGeneration",
|
||||
// WebAuthnCredential/Identity sind identitäts-global (kein tenant_id) → NICHT hier.
|
||||
// Craftvia-Fachmodelle hier ergänzen — UND in src/server/backup/topology.ts
|
||||
// (TENANT_MODELS) sowie per `SELECT enable_tenant_rls('<table>')` in der Migration
|
||||
|
||||
Reference in New Issue
Block a user