rp-chats
Purpose
Chat rooms, their membership and their per-room contexts. The conversation
itself is not here: a room carries a and the messages live inthreadId.rp-threads
Responsibility boundary
Owns rooms, roles and contexts. Calls no other repository — mintscreateRoom
the and returns it, and the caller registers the thread.threadId
Identity and access
The caller comes from the verified token, never from a parameter. Two
consequences worth naming:
is scoped to the caller inside the query, so substituting anotherlistRooms
user's id no longer reads their rooms, andcannot leak the numbertotalCount
of rooms it hid;- anything addressing one room by id checks membership first.
stays even after chart_room_users arrives: a tag expressesaccess_tags
membership but not versus owner versus admin.member
Note on table names
The tables are spelled / chart_rooms. The typo ischart_room_users
consistent across migrations, entities and queries, so the code works; renaming
is a migration, not an edit.
Direct module dependencies
,back-core,nrpcg-chats
Solution membership
communications
Source
modules/repositories/communications/rp-chats