Documentation
¶
Overview ¶
Package grouptranscript renders public group events into the model-facing transcript. Rendering lives here so every surface that shows a group conversation produces the same text.
Index ¶
- func EscapeGroupTranscriptContent(content string) string
- func RenderGroupSystemLine(content string) string
- func RenderGroupToolActivityNote(seq int64, toolNames []string) string
- func RenderGroupTranscriptLine(event GroupTranscriptEvent) string
- func SanitizeGroupParticipantName(name string) string
- type GroupTranscriptEvent
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EscapeGroupTranscriptContent ¶
EscapeGroupTranscriptContent returns the normalized content value in JSON string escaping semantics, without its surrounding quotes.
func RenderGroupSystemLine ¶
RenderGroupSystemLine renders trusted assembler metadata through the same content normalization as member events. This keeps the omitted-history marker structurally impossible for a member message to forge.
func RenderGroupToolActivityNote ¶
RenderGroupToolActivityNote is a private prompt annotation for a stopped turn. Tool names are escaped as content, never replayed as tool calls or results.
func RenderGroupTranscriptLine ¶
func RenderGroupTranscriptLine(event GroupTranscriptEvent) string
RenderGroupTranscriptLine produces one physical transcript line. Content is normalized before JSON-string escaping, so an event cannot create another transcript row through a newline or an invisible formatting code point.
func SanitizeGroupParticipantName ¶
SanitizeGroupParticipantName makes an attacker-controlled display name safe for the transcript label while keeping ordinary Unicode names readable.
Types ¶
type GroupTranscriptEvent ¶
type GroupTranscriptEvent struct {
Seq int64
ActorType string
DisplayName string
Content string
You bool
DeliveryState string
}
GroupTranscriptEvent is the model-facing projection of one public group event. Rendering is deliberately centralized because every surface that puts group text into a prompt must preserve its one-event, one-physical-line boundary.