Preserve a shared record-activity trail
Purpose
Keep bounded descriptions of record activity for shared history and downstream queries.
How It Works
Owning modules append short activity entries through shared writers. Event types determine the metadata vocabulary that each entry may carry. The database protects workspace isolation and prevents the application role from rewriting existing entries. Mutation writers can join the caller’s transaction so a change and its event commit together. That guarantee still depends on the owning module using the shared writer within its change transaction. Reads for view history select only visits, while other event types remain available as stored activity. Workspace retirement removes entries through a restricted batched purge. The product should settle retention before event volume makes indefinite storage a practical constraint.
Relationships
Record owners establish the activity, and authorized queries use visits to support recent work without replacing raw history.