cbea60b3ad7b0650f26bb8c7d9cdb2c7995f4ab6
ConversationsRepo: add userId parameter to findById, update, remove, findMessages, and addMessage so every query filters by conversations.userId in the WHERE clause. This prevents cross-user data access even if the controller layer were bypassed. AgentsRepo: add optional ownerId parameter to update (enforced for user-owned agents, omitted for admin system-agent path) and required ownerId to remove so the DELETE WHERE clause always scopes to the requesting user's agents. Controller call sites updated to pass userId/ownerId to the repo methods. The resource-ownership unit test updated to reflect that findById now returns undefined (not a foreign-user object) when ownership is checked at the DB layer. Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Merge pull request 'feat(gateway): add Anthropic, OpenAI, Z.ai LLM providers (P8-002)' (#212) from feat/p8-002-llm-providers into main
Description
Self-hosted multi-user AI agent platform — web dashboard, TUI, remote control, shared memory, mission orchestration
29 MiB
Releases
15
mosaic v0.0.31
Latest
Languages
TypeScript
63.7%
Shell
24.8%
Python
9.1%
JavaScript
1.2%
PowerShell
0.8%
Other
0.2%