Documentation
¶
Index ¶
- func FilterByTimeRange(sessions []conv.SessionMeta, tr TimeRange) []conv.SessionMeta
- func FormatNumber(n int) string
- func FormatValue(id string, value float64) string
- type Activity
- type DailyCount
- type HistogramBucket
- type ModelTokens
- type Overview
- type Performance
- type PerformanceDiagnostic
- type PerformanceLane
- type PerformanceMetric
- type PerformanceMetricStatus
- type PerformancePoint
- type PerformanceScope
- type PerformanceScore
- type PerformanceSequenceSession
- type PositionTokenMetrics
- type ProjectTokens
- type SessionSummary
- type SessionToolMetrics
- type SessionTurnMetrics
- type Sessions
- type Snapshot
- type TimeRange
- type TokenTotals
- type TokenTrend
- type ToolCategoryShare
- type ToolRateStat
- type ToolStat
- type Tools
- type TrendDirection
- type TurnTokens
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FilterByTimeRange ¶
func FilterByTimeRange(sessions []conv.SessionMeta, tr TimeRange) []conv.SessionMeta
func FormatNumber ¶
func FormatValue ¶
FormatValue renders a performance metric value using the metric's display convention.
Types ¶
type Activity ¶
type Activity struct {
ActiveDays int
TotalDays int
CurrentStreak int
LongestStreak int
DailySessions []DailyCount
DailyMessages []DailyCount
DailyTokens []DailyCount
Heatmap [7][24]int
}
func ComputeActivity ¶
func ComputeActivity(sessions []conv.SessionMeta, timeRange TimeRange) Activity
type DailyCount ¶
type HistogramBucket ¶
type ModelTokens ¶
type Overview ¶
type Overview struct {
SessionCount int
MessageCount int
Tokens TokenTotals
TokenTrend TokenTrend
ByModel []ModelTokens
ByProject []ProjectTokens
TopSessions []SessionSummary
}
func ComputeOverview ¶
func ComputeOverview(sessions []conv.SessionMeta) Overview
type Performance ¶
type Performance struct {
Scope PerformanceScope
Overall PerformanceScore
Outcome PerformanceLane
Discipline PerformanceLane
Efficiency PerformanceLane
Robustness PerformanceLane
Diagnostics []PerformanceDiagnostic
}
func ComputePerformance ¶
func ComputePerformance( conversations []conv.Conversation, timeRange TimeRange, sequence []PerformanceSequenceSession, ) Performance
type PerformanceDiagnostic ¶
type PerformanceDiagnostic struct {
Group string
Label string
Value string
Detail string
Current float64
Baseline float64
HasBaseline bool
Trend TrendDirection
Series []PerformancePoint
}
type PerformanceLane ¶
type PerformanceLane struct {
Label string
Detail string
Score int
HasScore bool
Trend TrendDirection
Metrics []PerformanceMetric
}
type PerformanceMetric ¶
type PerformanceMetric struct {
ID string
Label string
Value string
Detail string
Question string
Formula string
Current float64
Baseline float64
DeltaText string
HasBaseline bool
Score int
ScoreWeight float64
HasScore bool
Trend TrendDirection
Status PerformanceMetricStatus
SampleCount int
HigherIsBetter bool
Series []PerformancePoint
}
type PerformanceMetricStatus ¶
type PerformanceMetricStatus int
const ( PerformanceMetricStatusNone PerformanceMetricStatus = iota PerformanceMetricStatusBetter PerformanceMetricStatusWorse PerformanceMetricStatusFlat PerformanceMetricStatusLowSample )
type PerformancePoint ¶
type PerformanceScope ¶
type PerformanceScore ¶
type PerformanceScore struct {
Score int
HasScore bool
Trend TrendDirection
}
type PerformanceSequenceSession ¶
type PerformanceSequenceSession struct {
Timestamp time.Time
Mutated bool
MutationCount int
RewriteCount int
TargetedMutationCount int
BlindMutationCount int
DistinctMutationTargets int
PatchHunkCount int
VerificationPassed bool
FirstPassResolved bool
CorrectionFollowups int
ReasoningLoopCount int
ActionCount int
ActionsBeforeFirstMutation int
TokensBeforeFirstMutation int
UserTurnsBeforeFirstMutation int
AssistantTurns int
VisibleReasoningChars int
HiddenThinkingTurns int
}
func CollectPerformanceSequenceSessions ¶
func CollectPerformanceSequenceSessions(sessions []conv.Session) []PerformanceSequenceSession
type PositionTokenMetrics ¶
type PositionTokenMetrics struct {
Position int
AverageInputTokens float64
AverageTurnTokens float64
SampleCount int
}
func ComputeTurnTokenMetrics ¶
func ComputeTurnTokenMetrics(sessions []conv.Session) []PositionTokenMetrics
func ComputeTurnTokenMetricsForRange ¶
func ComputeTurnTokenMetricsForRange( sessions []SessionTurnMetrics, timeRange TimeRange, ) []PositionTokenMetrics
type ProjectTokens ¶
type SessionSummary ¶
type SessionToolMetrics ¶
type SessionToolMetrics struct {
Timestamp time.Time
ToolCounts map[string]int
ActionCounts map[string]int
ToolErrorCounts map[string]int
ToolRejectCounts map[string]int
}
func CollectSessionToolMetrics ¶
func CollectSessionToolMetrics(sessions []conv.Session) []SessionToolMetrics
type SessionTurnMetrics ¶
type SessionTurnMetrics struct {
Timestamp time.Time
Turns []TurnTokens
}
func CollectSessionTurnMetrics ¶
func CollectSessionTurnMetrics(sessions []conv.Session) []SessionTurnMetrics
type Sessions ¶
type Sessions struct {
AverageDuration time.Duration
AverageMessages float64
UserMessageCount int
AssistantMessageCount int
UserAssistantRatio float64
AbandonedCount int
AbandonedRate float64
DurationHistogram []HistogramBucket
MessageHistogram []HistogramBucket
ClaudeTurnMetrics []PositionTokenMetrics
}
func ComputeSessions ¶
func ComputeSessions(sessions []conv.SessionMeta) Sessions
type Snapshot ¶
type Snapshot struct {
Overview Overview
Activity Activity
Sessions Sessions
Tools Tools
Performance Performance
}
func ComputeSnapshot ¶
func ComputeSnapshot( conversations []conv.Conversation, timeRange TimeRange, sequence []PerformanceSequenceSession, ) Snapshot
type TokenTotals ¶
type TokenTrend ¶
type TokenTrend struct {
Direction TrendDirection
PercentChange int
}
func ComputeTokenTrend ¶
func ComputeTokenTrend(sessions []conv.SessionMeta, timeRange TimeRange) TokenTrend
type ToolCategoryShare ¶
type ToolCategoryShare struct {
}
type ToolRateStat ¶
func ComputeToolErrorRates ¶
func ComputeToolErrorRates(sessions []conv.SessionMeta) []ToolRateStat
func ComputeToolRejectRates ¶
func ComputeToolRejectRates(sessions []SessionToolMetrics, timeRange TimeRange) []ToolRateStat
type Tools ¶
type Tools struct {
TotalCalls int
AverageCallsPerSession float64
ErrorRate float64
RejectionRate float64
TopTools []ToolStat
CallsPerSession []HistogramBucket
ToolErrorRates []ToolRateStat
ToolRejectRates []ToolRateStat
}
func ComputeTools ¶
func ComputeTools(sessions []conv.SessionMeta) Tools
func ComputeToolsFromSessionMetrics ¶
func ComputeToolsFromSessionMetrics(sessions []SessionToolMetrics, timeRange TimeRange) Tools
type TrendDirection ¶
type TrendDirection int
const ( TrendDirectionNone TrendDirection = iota TrendDirectionUp TrendDirectionDown TrendDirectionFlat )
type TurnTokens ¶
Source Files
¶
- activity.go
- filter.go
- format.go
- overview.go
- overview_trend.go
- performance.go
- performance_context.go
- performance_format.go
- performance_lane.go
- performance_messages.go
- performance_messages_collect.go
- performance_messages_metric.go
- performance_messages_reduce.go
- performance_metric.go
- performance_session.go
- performance_tokens.go
- performance_trend.go
- sessions.go
- snapshot.go
- tools.go
- types.go
Click to show internal directories.
Click to hide internal directories.