grouptranscript

package
v0.68.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 5, 2026 License: AGPL-3.0 Imports: 4 Imported by: 0

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

Constants

This section is empty.

Variables

This section is empty.

Functions

func EscapeGroupTranscriptContent

func EscapeGroupTranscriptContent(content string) string

EscapeGroupTranscriptContent returns the normalized content value in JSON string escaping semantics, without its surrounding quotes.

func RenderGroupSystemLine

func RenderGroupSystemLine(content string) string

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

func RenderGroupToolActivityNote(seq int64, toolNames []string) string

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

func SanitizeGroupParticipantName(name string) string

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL