The wire / plugin shape of a message part before persistence: a type
plus its typed content. Chat Engine assigns id and number on persist
and returns a full MessagePart.
Mid-stream citations/references attached to a part
(StreamingEvent::Citation). Unlike the batch set carried on Complete,
these arrive incrementally; they target the part at part_number.
Emits a complete typed message part mid-stream (StreamingEvent::Part):
images, videos, links, code, or an additional text part. The part is
appended to the message document and persisted on finalize.
Tenant identifier. Opaque string from the auth token, used to scope all
queries. Newtype distinguishes it from UserId at compile time so call
sites cannot accidentally swap tenant and user arguments.
Per-marker source-location anchor, parallel to one entry in a citation’s
text_positions. Forwarded verbatim from the plugin (see DESIGN
cpt-cf-chat-engine-design-entity-citations).