sf-community
Purpose
The forum, as three separate tabs: sections, the topics of one section, and one
topic's discussion. Opening a row opens a tab beside the current one — there is
no screen that shows a section tree, a topic table and a thread at once.
Responsibility boundary
Owns forum navigation and the topic screen. Messages themselves belong to, which the browser reads directly; attachments belong to rp-threadsrp-files
through a message. Membership, roles and tickets are not here.link
How a topic is created
on createTopic mints the topic id and the thread id and stampsrp-community
the author from the token; this surface then registers the thread and writes the
opening post against . The split is deliberate: ids a client canrp-threads
choose are ids it can steal, and a repository calling another repository is what
the architecture forbids.
Live updates
Replies arrive over Fujin's business channel () through thepushrouter library, not by polling. A push carries identifiers only; thethreads-state
text is re-read from , where the read predicate applies.rp-threads
Direct module dependencies
,front-core,g-community,g-threads,signal-channelthreads-state
Solution membership
communications
Source
modules/surfaces/communications/sf-community