feat: add LLM analytics types and socket events to shared

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
root
2026-03-10 13:14:55 +00:00
parent d11f19e703
commit fb78d8cc9c
+27
View File
@@ -312,6 +312,29 @@ export interface LogEntry {
message: string;
}
export interface LlmCallTypeStats {
templateName: string;
label: string;
count: number;
totalCost: number;
minCost: number;
maxCost: number;
avgCost: number;
retryCount: number;
failCount: number;
retryPct: number;
failPct: number;
}
export interface LlmStatsData {
types: LlmCallTypeStats[];
totalCount: number;
totalCost: number;
totalRetries: number;
totalFailures: number;
trackingEnabled: boolean;
}
// Server -> Client events
export interface ServerEvents {
'world-state': (data: WorldState) => void;
@@ -335,6 +358,8 @@ export interface ServerEvents {
'admin-constants-updated': (data: TunableConstants) => void;
'log-history': (data: LogEntry[]) => void;
'log-entry': (data: LogEntry) => void;
'admin-llm-stats-result': (data: LlmStatsData) => void;
'admin-llm-tracking-toggled': (data: { enabled: boolean }) => void;
}
// Client -> Server events
@@ -349,4 +374,6 @@ export interface ClientEvents {
'admin-reset-defaults': () => void;
'log-subscribe': () => void;
'log-unsubscribe': () => void;
'admin-llm-stats': () => void;
'admin-toggle-llm-tracking': (data: { enabled: boolean }) => void;
}