tasktrace

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Sep 21, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	StatusRunning   = "running"
	StatusCompleted = "completed"
	StatusFailed    = "failed"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type ArtifactTrace

type ArtifactTrace struct {
	Name      string    `json:"name,omitempty"`
	Status    string    `json:"status"`
	Seq       int64     `json:"seq"`
	Summary   string    `json:"summary,omitempty"`
	CreatedAt time.Time `json:"createdAt"`
}

type ChildTaskMetadata

type ChildTaskMetadata struct {
	Name   string `json:"name"`
	Agent  string `json:"agent,omitempty"`
	Phase  string `json:"phase,omitempty"`
	Result string `json:"result,omitempty"`
}

type ChildTaskTrace

type ChildTaskTrace struct {
	Name      string     `json:"name"`
	Agent     string     `json:"agent,omitempty"`
	Status    string     `json:"status,omitempty"`
	StartSeq  int64      `json:"startSeq,omitempty"`
	EndSeq    int64      `json:"endSeq,omitempty"`
	StartedAt *time.Time `json:"startedAt,omitempty"`
	EndedAt   *time.Time `json:"endedAt,omitempty"`
	Summary   string     `json:"summary,omitempty"`
	Result    string     `json:"result,omitempty"`
}

type ModelRequestTrace

type ModelRequestTrace struct {
	ID        string     `json:"id"`
	Status    string     `json:"status"`
	StartSeq  int64      `json:"startSeq,omitempty"`
	EndSeq    int64      `json:"endSeq,omitempty"`
	StartedAt *time.Time `json:"startedAt,omitempty"`
	EndedAt   *time.Time `json:"endedAt,omitempty"`
	Summary   string     `json:"summary,omitempty"`
	Error     string     `json:"error,omitempty"`
}

type TaskMetadata

type TaskMetadata struct {
	Namespace       string
	Name            string
	Type            string
	Phase           string
	AgentName       string
	SessionName     string
	ResultAvailable bool
	ChildTasks      []ChildTaskMetadata
}

TaskMetadata supplies task summary state that is not part of the event stream.

func MetadataFromTask

func MetadataFromTask(task *corev1alpha1.Task) TaskMetadata

MetadataFromTask builds trace metadata from a Task CR without exposing secrets.

type TaskSummary

type TaskSummary struct {
	Namespace       string `json:"namespace"`
	Name            string `json:"name"`
	Type            string `json:"type,omitempty"`
	Phase           string `json:"phase,omitempty"`
	AgentName       string `json:"agentName,omitempty"`
	SessionName     string `json:"sessionName,omitempty"`
	ResultAvailable bool   `json:"resultAvailable"`
}

type TaskTrace

type TaskTrace struct {
	Task          TaskSummary         `json:"task"`
	LatestSeq     int64               `json:"latestSeq"`
	GeneratedAt   time.Time           `json:"generatedAt"`
	Timeline      []TraceEvent        `json:"timeline"`
	ModelRequests []ModelRequestTrace `json:"modelRequests"`
	ToolCalls     []ToolCallTrace     `json:"toolCalls"`
	ChildTasks    []ChildTaskTrace    `json:"childTasks"`
	Workspace     []WorkspaceTrace    `json:"workspace"`
	Artifacts     []ArtifactTrace     `json:"artifacts"`
	Errors        []TraceIssue        `json:"errors"`
	Warnings      []TraceIssue        `json:"warnings"`
	TerminalEvent *TraceEvent         `json:"terminalEvent,omitempty"`
	RawUnpaired   []TraceEvent        `json:"rawUnpaired,omitempty"`
}

func BuildTaskTrace

func BuildTaskTrace(meta TaskMetadata, input []store.ExecutionEvent, generatedAt time.Time) TaskTrace

BuildTaskTrace creates a deterministic trace read model from task events.

type ToolCallTrace

type ToolCallTrace struct {
	ID        string     `json:"id"`
	Name      string     `json:"name,omitempty"`
	Status    string     `json:"status"`
	StartSeq  int64      `json:"startSeq,omitempty"`
	EndSeq    int64      `json:"endSeq,omitempty"`
	StartedAt *time.Time `json:"startedAt,omitempty"`
	EndedAt   *time.Time `json:"endedAt,omitempty"`
	Summary   string     `json:"summary,omitempty"`
	Error     string     `json:"error,omitempty"`
}

type TraceEvent

type TraceEvent struct {
	Seq         int64                            `json:"seq"`
	Type        string                           `json:"type"`
	Severity    string                           `json:"severity"`
	Summary     string                           `json:"summary,omitempty"`
	TaskName    string                           `json:"taskName,omitempty"`
	AgentName   string                           `json:"agentName,omitempty"`
	ToolName    string                           `json:"toolName,omitempty"`
	ToolCallID  string                           `json:"toolCallID,omitempty"`
	Content     json.RawMessage                  `json:"content,omitempty"`
	ContentText string                           `json:"contentText,omitempty"`
	Truncation  *events.ExecutionEventTruncation `json:"truncation,omitempty"`
	CreatedAt   time.Time                        `json:"createdAt"`
}

type TraceIssue

type TraceIssue struct {
	Seq      int64  `json:"seq,omitempty"`
	Type     string `json:"type,omitempty"`
	Severity string `json:"severity,omitempty"`
	Message  string `json:"message"`
}

type WorkspaceTrace

type WorkspaceTrace struct {
	Status    string    `json:"status"`
	Seq       int64     `json:"seq"`
	Summary   string    `json:"summary,omitempty"`
	CreatedAt time.Time `json:"createdAt"`
}

Jump to

Keyboard shortcuts

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