feat: add namespace-based multi-user isolation

Implement namespace support across sessions, machines, and users for multi-user server deployments. Add access control with specific error reasons (namespace-missing, access-denied, not-found) and database schema updates with namespace columns and indexes.
This commit is contained in:
weishu
2025-12-31 21:56:01 +08:00
parent 460c393006
commit e821458af8
30 changed files with 737 additions and 124 deletions
+6 -6
View File
@@ -198,9 +198,9 @@ export type SlashCommandsResponse = {
}
export type SyncEvent =
| { type: 'session-added'; sessionId: string; data?: unknown }
| { type: 'session-updated'; sessionId: string; data?: unknown }
| { type: 'session-removed'; sessionId: string }
| { type: 'message-received'; sessionId: string; message: DecryptedMessage }
| { type: 'machine-updated'; machineId: string; data?: unknown }
| { type: 'connection-changed'; data?: { status: string } }
| { type: 'session-added'; sessionId: string; data?: unknown; namespace?: string }
| { type: 'session-updated'; sessionId: string; data?: unknown; namespace?: string }
| { type: 'session-removed'; sessionId: string; namespace?: string }
| { type: 'message-received'; sessionId: string; message: DecryptedMessage; namespace?: string }
| { type: 'machine-updated'; machineId: string; data?: unknown; namespace?: string }
| { type: 'connection-changed'; data?: { status: string }; namespace?: string }