@0xmaxma/claude-gateway 2.0.4 → 2.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -1
- package/dist/agent/builtin-commands.d.ts +1 -1
- package/dist/agent/builtin-commands.d.ts.map +1 -1
- package/dist/agent/builtin-commands.js +3 -2
- package/dist/agent/builtin-commands.js.map +1 -1
- package/dist/agent/runner.d.ts +123 -9
- package/dist/agent/runner.d.ts.map +1 -1
- package/dist/agent/runner.js +215 -182
- package/dist/agent/runner.js.map +1 -1
- package/dist/agent/session-compaction-scheduler.d.ts +22 -0
- package/dist/agent/session-compaction-scheduler.d.ts.map +1 -0
- package/dist/agent/session-compaction-scheduler.js +40 -0
- package/dist/agent/session-compaction-scheduler.js.map +1 -0
- package/dist/agent/skill-learning/index.d.ts.map +1 -1
- package/dist/agent/skill-learning/index.js +27 -8
- package/dist/agent/skill-learning/index.js.map +1 -1
- package/dist/agent/skill-learning/reviewer.d.ts +3 -1
- package/dist/agent/skill-learning/reviewer.d.ts.map +1 -1
- package/dist/agent/skill-learning/reviewer.js +6 -2
- package/dist/agent/skill-learning/reviewer.js.map +1 -1
- package/dist/agent/turn-stream.d.ts +3 -1
- package/dist/agent/turn-stream.d.ts.map +1 -1
- package/dist/agent/turn-stream.js +8 -4
- package/dist/agent/turn-stream.js.map +1 -1
- package/dist/api/gateway-router.d.ts +2 -0
- package/dist/api/gateway-router.d.ts.map +1 -1
- package/dist/api/gateway-router.js +323 -16
- package/dist/api/gateway-router.js.map +1 -1
- package/dist/api/memory-activity.d.ts +18 -0
- package/dist/api/memory-activity.d.ts.map +1 -0
- package/dist/api/memory-activity.js +97 -0
- package/dist/api/memory-activity.js.map +1 -0
- package/dist/api/router.js +11 -11
- package/dist/api/router.js.map +1 -1
- package/dist/api/slack-webhook-router.js +1 -1
- package/dist/api/slack-webhook-router.js.map +1 -1
- package/dist/api/voice-router.d.ts +1 -0
- package/dist/api/voice-router.d.ts.map +1 -1
- package/dist/api/voice-router.js +129 -7
- package/dist/api/voice-router.js.map +1 -1
- package/dist/config/claude-settings.d.ts +14 -0
- package/dist/config/claude-settings.d.ts.map +1 -1
- package/dist/config/claude-settings.js +20 -0
- package/dist/config/claude-settings.js.map +1 -1
- package/dist/orchestration/agent-cli-session.d.ts +46 -0
- package/dist/orchestration/agent-cli-session.d.ts.map +1 -0
- package/dist/orchestration/agent-cli-session.js +121 -0
- package/dist/orchestration/agent-cli-session.js.map +1 -0
- package/dist/orchestration/agent-tool-schemas.d.ts +6 -0
- package/dist/orchestration/agent-tool-schemas.d.ts.map +1 -0
- package/dist/orchestration/agent-tool-schemas.js +23 -0
- package/dist/orchestration/agent-tool-schemas.js.map +1 -0
- package/dist/orchestration/bridge.d.ts +6 -3
- package/dist/orchestration/bridge.d.ts.map +1 -1
- package/dist/orchestration/bridge.js +31 -14
- package/dist/orchestration/bridge.js.map +1 -1
- package/dist/orchestration/browser-voice.d.ts +14 -0
- package/dist/orchestration/browser-voice.d.ts.map +1 -0
- package/dist/orchestration/browser-voice.js +30 -0
- package/dist/orchestration/browser-voice.js.map +1 -0
- package/dist/orchestration/compact-measurements.d.ts +21 -0
- package/dist/orchestration/compact-measurements.d.ts.map +1 -0
- package/dist/orchestration/compact-measurements.js +62 -0
- package/dist/orchestration/compact-measurements.js.map +1 -0
- package/dist/orchestration/config.d.ts +4 -0
- package/dist/orchestration/config.d.ts.map +1 -1
- package/dist/orchestration/config.js +1 -1
- package/dist/orchestration/config.js.map +1 -1
- package/dist/orchestration/context-delivery.d.ts +32 -0
- package/dist/orchestration/context-delivery.d.ts.map +1 -0
- package/dist/orchestration/context-delivery.js +101 -0
- package/dist/orchestration/context-delivery.js.map +1 -0
- package/dist/orchestration/context-footprint.d.ts +14 -0
- package/dist/orchestration/context-footprint.d.ts.map +1 -0
- package/dist/orchestration/context-footprint.js +57 -0
- package/dist/orchestration/context-footprint.js.map +1 -0
- package/dist/orchestration/conversation-intake.d.ts +10 -6
- package/dist/orchestration/conversation-intake.d.ts.map +1 -1
- package/dist/orchestration/conversation-intake.js +22 -8
- package/dist/orchestration/conversation-intake.js.map +1 -1
- package/dist/orchestration/dashboard-charts.d.ts +32 -0
- package/dist/orchestration/dashboard-charts.d.ts.map +1 -0
- package/dist/orchestration/dashboard-charts.js +77 -0
- package/dist/orchestration/dashboard-charts.js.map +1 -0
- package/dist/orchestration/dashboard-reader-worker.d.ts +2 -0
- package/dist/orchestration/dashboard-reader-worker.d.ts.map +1 -0
- package/dist/orchestration/dashboard-reader-worker.js +173 -0
- package/dist/orchestration/dashboard-reader-worker.js.map +1 -0
- package/dist/orchestration/dashboard-reader.d.ts +15 -0
- package/dist/orchestration/dashboard-reader.d.ts.map +1 -0
- package/dist/orchestration/dashboard-reader.js +87 -0
- package/dist/orchestration/dashboard-reader.js.map +1 -0
- package/dist/orchestration/decision-context.d.ts +15 -0
- package/dist/orchestration/decision-context.d.ts.map +1 -0
- package/dist/orchestration/decision-context.js +57 -0
- package/dist/orchestration/decision-context.js.map +1 -0
- package/dist/orchestration/display-stream.d.ts +21 -2
- package/dist/orchestration/display-stream.d.ts.map +1 -1
- package/dist/orchestration/display-stream.js +61 -8
- package/dist/orchestration/display-stream.js.map +1 -1
- package/dist/orchestration/inference-errors.d.ts.map +1 -1
- package/dist/orchestration/inference-errors.js +19 -21
- package/dist/orchestration/inference-errors.js.map +1 -1
- package/dist/orchestration/mutation-recovery.d.ts +13 -0
- package/dist/orchestration/mutation-recovery.d.ts.map +1 -0
- package/dist/orchestration/mutation-recovery.js +49 -0
- package/dist/orchestration/mutation-recovery.js.map +1 -0
- package/dist/orchestration/native-compact.d.ts +8 -0
- package/dist/orchestration/native-compact.d.ts.map +1 -0
- package/dist/orchestration/native-compact.js +33 -0
- package/dist/orchestration/native-compact.js.map +1 -0
- package/dist/orchestration/notification-mailbox.d.ts +3 -1
- package/dist/orchestration/notification-mailbox.d.ts.map +1 -1
- package/dist/orchestration/notification-mailbox.js +4 -2
- package/dist/orchestration/notification-mailbox.js.map +1 -1
- package/dist/orchestration/process-turn.d.ts +16 -2
- package/dist/orchestration/process-turn.d.ts.map +1 -1
- package/dist/orchestration/process-turn.js +78 -14
- package/dist/orchestration/process-turn.js.map +1 -1
- package/dist/orchestration/progress-review.d.ts +8 -18
- package/dist/orchestration/progress-review.d.ts.map +1 -1
- package/dist/orchestration/progress-review.js +12 -14
- package/dist/orchestration/progress-review.js.map +1 -1
- package/dist/orchestration/provider-message.d.ts +7 -0
- package/dist/orchestration/provider-message.d.ts.map +1 -0
- package/dist/orchestration/provider-message.js +63 -0
- package/dist/orchestration/provider-message.js.map +1 -0
- package/dist/orchestration/response-errors.d.ts +6 -0
- package/dist/orchestration/response-errors.d.ts.map +1 -0
- package/dist/orchestration/response-errors.js +88 -0
- package/dist/orchestration/response-errors.js.map +1 -0
- package/dist/orchestration/response-schema.d.ts +33 -0
- package/dist/orchestration/response-schema.d.ts.map +1 -0
- package/dist/orchestration/response-schema.js +61 -0
- package/dist/orchestration/response-schema.js.map +1 -0
- package/dist/orchestration/runtime.d.ts +79 -0
- package/dist/orchestration/runtime.d.ts.map +1 -1
- package/dist/orchestration/runtime.js +415 -68
- package/dist/orchestration/runtime.js.map +1 -1
- package/dist/orchestration/session-compaction.d.ts +59 -0
- package/dist/orchestration/session-compaction.d.ts.map +1 -0
- package/dist/orchestration/session-compaction.js +212 -0
- package/dist/orchestration/session-compaction.js.map +1 -0
- package/dist/orchestration/skills.d.ts.map +1 -1
- package/dist/orchestration/skills.js +3 -2
- package/dist/orchestration/skills.js.map +1 -1
- package/dist/orchestration/source-policy.d.ts +1 -1
- package/dist/orchestration/source-policy.d.ts.map +1 -1
- package/dist/orchestration/source-policy.js +1 -1
- package/dist/orchestration/speech.d.ts +15 -17
- package/dist/orchestration/speech.d.ts.map +1 -1
- package/dist/orchestration/speech.js +90 -30
- package/dist/orchestration/speech.js.map +1 -1
- package/dist/orchestration/store.d.ts +2 -0
- package/dist/orchestration/store.d.ts.map +1 -1
- package/dist/orchestration/store.js +16 -1
- package/dist/orchestration/store.js.map +1 -1
- package/dist/orchestration/tasks/driver.d.ts.map +1 -1
- package/dist/orchestration/tasks/driver.js +8 -3
- package/dist/orchestration/tasks/driver.js.map +1 -1
- package/dist/orchestration/tasks/pool.d.ts.map +1 -1
- package/dist/orchestration/tasks/pool.js +8 -4
- package/dist/orchestration/tasks/pool.js.map +1 -1
- package/dist/orchestration/tasks/service.d.ts +48 -1
- package/dist/orchestration/tasks/service.d.ts.map +1 -1
- package/dist/orchestration/tasks/service.js +41 -17
- package/dist/orchestration/tasks/service.js.map +1 -1
- package/dist/orchestration/token-ledger.d.ts +132 -0
- package/dist/orchestration/token-ledger.d.ts.map +1 -0
- package/dist/orchestration/token-ledger.js +233 -0
- package/dist/orchestration/token-ledger.js.map +1 -0
- package/dist/orchestration/token-usage.d.ts +46 -0
- package/dist/orchestration/token-usage.d.ts.map +1 -0
- package/dist/orchestration/token-usage.js +102 -0
- package/dist/orchestration/token-usage.js.map +1 -0
- package/dist/orchestration/tool-activity.d.ts.map +1 -1
- package/dist/orchestration/tool-activity.js +5 -3
- package/dist/orchestration/tool-activity.js.map +1 -1
- package/dist/orchestration/tool-name.d.ts +10 -0
- package/dist/orchestration/tool-name.d.ts.map +1 -0
- package/dist/orchestration/tool-name.js +14 -0
- package/dist/orchestration/tool-name.js.map +1 -0
- package/dist/orchestration/transcript-checkpoint.d.ts +14 -0
- package/dist/orchestration/transcript-checkpoint.d.ts.map +1 -0
- package/dist/orchestration/transcript-checkpoint.js +83 -0
- package/dist/orchestration/transcript-checkpoint.js.map +1 -0
- package/dist/orchestration/unanswered-inputs.d.ts +6 -0
- package/dist/orchestration/unanswered-inputs.d.ts.map +1 -0
- package/dist/orchestration/unanswered-inputs.js +18 -0
- package/dist/orchestration/unanswered-inputs.js.map +1 -0
- package/dist/session/process.d.ts +10 -0
- package/dist/session/process.d.ts.map +1 -1
- package/dist/session/process.js +91 -9
- package/dist/session/process.js.map +1 -1
- package/dist/session/request-tool-capture.d.ts +31 -0
- package/dist/session/request-tool-capture.d.ts.map +1 -0
- package/dist/session/request-tool-capture.js +194 -0
- package/dist/session/request-tool-capture.js.map +1 -0
- package/dist/session/runtime-profile.d.ts +7 -3
- package/dist/session/runtime-profile.d.ts.map +1 -1
- package/dist/session/runtime-profile.js +3 -1
- package/dist/session/runtime-profile.js.map +1 -1
- package/dist/session/store.d.ts +7 -0
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +27 -0
- package/dist/session/store.js.map +1 -1
- package/dist/shell/tailer.d.ts +7 -5
- package/dist/shell/tailer.d.ts.map +1 -1
- package/dist/shell/tailer.js +6 -17
- package/dist/shell/tailer.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/ui/cli-viewer-ui.js +1 -1
- package/dist/ui/dashboard-charts.d.ts +3 -0
- package/dist/ui/dashboard-charts.d.ts.map +1 -0
- package/dist/ui/dashboard-charts.js +130 -0
- package/dist/ui/dashboard-charts.js.map +1 -0
- package/dist/ui/dashboard-client.d.ts +3 -0
- package/dist/ui/dashboard-client.d.ts.map +1 -0
- package/dist/ui/dashboard-client.js +184 -0
- package/dist/ui/dashboard-client.js.map +1 -0
- package/dist/ui/dashboard-controls.d.ts +4 -0
- package/dist/ui/dashboard-controls.d.ts.map +1 -0
- package/dist/ui/dashboard-controls.js +27 -0
- package/dist/ui/dashboard-controls.js.map +1 -0
- package/dist/ui/dashboard-presentation.d.ts +12 -0
- package/dist/ui/dashboard-presentation.d.ts.map +1 -0
- package/dist/ui/dashboard-presentation.js +62 -0
- package/dist/ui/dashboard-presentation.js.map +1 -0
- package/dist/ui/dashboard-range.d.ts +5 -0
- package/dist/ui/dashboard-range.d.ts.map +1 -0
- package/dist/ui/dashboard-range.js +36 -0
- package/dist/ui/dashboard-range.js.map +1 -0
- package/dist/ui/dashboard-theme.d.ts +6 -0
- package/dist/ui/dashboard-theme.d.ts.map +1 -0
- package/dist/ui/dashboard-theme.js +562 -0
- package/dist/ui/dashboard-theme.js.map +1 -0
- package/dist/ui/memory-activity.d.ts +4 -0
- package/dist/ui/memory-activity.d.ts.map +1 -0
- package/dist/ui/memory-activity.js +115 -0
- package/dist/ui/memory-activity.js.map +1 -0
- package/dist/ui/token-report-client.d.ts +3 -0
- package/dist/ui/token-report-client.d.ts.map +1 -0
- package/dist/ui/token-report-client.js +34 -0
- package/dist/ui/token-report-client.js.map +1 -0
- package/dist/ui/token-report.d.ts +90 -0
- package/dist/ui/token-report.d.ts.map +1 -0
- package/dist/ui/token-report.js +203 -0
- package/dist/ui/token-report.js.map +1 -0
- package/dist/ui/web-ui.d.ts +1 -1
- package/dist/ui/web-ui.d.ts.map +1 -1
- package/dist/ui/web-ui.js +129 -409
- package/dist/ui/web-ui.js.map +1 -1
- package/dist/voice/replay.d.ts +8 -0
- package/dist/voice/replay.d.ts.map +1 -0
- package/dist/voice/replay.js +48 -0
- package/dist/voice/replay.js.map +1 -0
- package/dist/voice/session.d.ts +9 -0
- package/dist/voice/session.d.ts.map +1 -1
- package/dist/voice/session.js +72 -14
- package/dist/voice/session.js.map +1 -1
- package/mcp/lazy-connector.test.ts +58 -0
- package/mcp/lazy-connector.ts +67 -0
- package/mcp/lazy-tools.test.ts +152 -0
- package/mcp/lazy-tools.ts +41 -0
- package/mcp/server.ts +53 -34
- package/mcp/tools/discord/commands.ts +2 -0
- package/mcp/tools/tasks/module.ts +1 -12
- package/mcp/tools/telegram/receiver-server.ts +45 -31
- package/mcp/tools/telegram/session-browser.ts +10 -0
- package/package.json +2 -1
- package/resource/dashboard/OFL.txt +93 -0
- package/resource/dashboard/poppins-300.woff2 +0 -0
- package/resource/dashboard/poppins-400.woff2 +0 -0
- package/resource/dashboard/poppins-500.woff2 +0 -0
- package/resource/dashboard/poppins-600.woff2 +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/orchestration/tasks/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/orchestration/tasks/service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import type { ManagedTurnMetrics } from './process-turn';
|
|
2
|
+
import { OrchestrationStore } from './store';
|
|
3
|
+
export interface TokenTurn extends ManagedTurnMetrics {
|
|
4
|
+
id: string;
|
|
5
|
+
sessionId: string;
|
|
6
|
+
role: 'agent' | 'worker';
|
|
7
|
+
category: 'input' | 'report' | 'worker';
|
|
8
|
+
taskId?: string;
|
|
9
|
+
taskRevision?: number;
|
|
10
|
+
inputTexts?: string[];
|
|
11
|
+
inputModalities?: string[];
|
|
12
|
+
inputSequences?: number[];
|
|
13
|
+
responseText?: string;
|
|
14
|
+
taskTitle?: string;
|
|
15
|
+
state?: string;
|
|
16
|
+
failureCode?: string;
|
|
17
|
+
/** Stored attempt number for a worker turn; the stable label for a row that has
|
|
18
|
+
* no input_seq of its own. */
|
|
19
|
+
attemptGeneration?: number;
|
|
20
|
+
/** This row is an accepted input that has no measured turn yet. Never real usage:
|
|
21
|
+
* it is derived on read and is absent from token_turns, so no aggregate sees it. */
|
|
22
|
+
pending?: true;
|
|
23
|
+
/** How long the input waited between acceptance and its turn starting — or, on a
|
|
24
|
+
* pending row, how long it has been waiting so far. */
|
|
25
|
+
queuedMs?: number;
|
|
26
|
+
}
|
|
27
|
+
/** Latest observed request in the most recent agent turn, including its output.
|
|
28
|
+
* A peak earlier in the turn may predate compaction and is not current context. */
|
|
29
|
+
export declare function latestAgentContextWindow(store: Pick<OrchestrationStore, 'get'>, sessionId: string): {
|
|
30
|
+
used: number;
|
|
31
|
+
total: number | null;
|
|
32
|
+
model: string | null;
|
|
33
|
+
} | null;
|
|
34
|
+
export declare function measuredTurns(store: OrchestrationStore, sessionId: string): TokenTurn[];
|
|
35
|
+
export declare function recordTokenTurn(store: OrchestrationStore, turn: TokenTurn): void;
|
|
36
|
+
export declare function tokenReport(store: OrchestrationStore, sessionId: string, includeDetails?: boolean): {
|
|
37
|
+
sessionId: string;
|
|
38
|
+
turns: TokenTurn[];
|
|
39
|
+
usageByRole: {
|
|
40
|
+
role: string;
|
|
41
|
+
inputTokens: number;
|
|
42
|
+
cacheCreationTokens: number;
|
|
43
|
+
cacheReadTokens: number;
|
|
44
|
+
outputTokens: number;
|
|
45
|
+
}[];
|
|
46
|
+
contextWindow: {
|
|
47
|
+
used: number;
|
|
48
|
+
total: number | null;
|
|
49
|
+
model: string | null;
|
|
50
|
+
} | null;
|
|
51
|
+
totals: {
|
|
52
|
+
agentTokens: number | null;
|
|
53
|
+
workerTokens: number | null;
|
|
54
|
+
totalTokens: number | null;
|
|
55
|
+
};
|
|
56
|
+
distribution: {
|
|
57
|
+
category: string;
|
|
58
|
+
tokens: number;
|
|
59
|
+
}[];
|
|
60
|
+
pagination: {
|
|
61
|
+
total: number;
|
|
62
|
+
offset: number;
|
|
63
|
+
limit: number;
|
|
64
|
+
since?: number;
|
|
65
|
+
newestFirst?: boolean;
|
|
66
|
+
} | undefined;
|
|
67
|
+
coverage: "recorded-turns-only";
|
|
68
|
+
};
|
|
69
|
+
/** Accepted inputs that have no measured ledger turn yet.
|
|
70
|
+
*
|
|
71
|
+
* Turns are serialised per session on purpose (runtime.ts skips a session that already
|
|
72
|
+
* has a decision in flight), so a message sent while the previous turn is still running
|
|
73
|
+
* waits — occasionally minutes — before its own decision starts, and the token_turns row
|
|
74
|
+
* only appears with that turn's first usage event. Until then the report had no row for
|
|
75
|
+
* the message at all, which is why a queued message looked lost.
|
|
76
|
+
*
|
|
77
|
+
* These rows are DERIVED ON EVERY READ from conversation_inputs rather than written into
|
|
78
|
+
* token_turns, which is what the rest of this read path already does for decisions,
|
|
79
|
+
* responses, tasks and attempts. Two properties fall out of that choice for free:
|
|
80
|
+
* - the ledger stays purely measured usage, so no total, average, distribution or
|
|
81
|
+
* %cached query can ever see a pending row (they all sum token_turns);
|
|
82
|
+
* - a pending row cannot get stuck. It exists only while the input is genuinely still
|
|
83
|
+
* 'accepted'/'assigned' with no measured turn, so a handled, interrupted or replaced
|
|
84
|
+
* input drops out immediately, and a gateway restart (recovery.ts resets 'assigned'
|
|
85
|
+
* back to 'accepted') leaves it truthfully queued rather than permanently "running".
|
|
86
|
+
*/
|
|
87
|
+
export declare function pendingInputTurns(store: Pick<OrchestrationStore, 'all'>, sessionId: string, since?: number, hasLedger?: boolean, now?: number): TokenTurn[];
|
|
88
|
+
export declare function readTokenReport(store: Pick<OrchestrationStore, 'all' | 'get' | 'attempt'>, sessionId: string, includeDetails?: boolean, page?: {
|
|
89
|
+
offset: number;
|
|
90
|
+
limit: number;
|
|
91
|
+
since?: number;
|
|
92
|
+
newestFirst?: boolean;
|
|
93
|
+
}): {
|
|
94
|
+
sessionId: string;
|
|
95
|
+
turns: TokenTurn[];
|
|
96
|
+
usageByRole: {
|
|
97
|
+
role: string;
|
|
98
|
+
inputTokens: number;
|
|
99
|
+
cacheCreationTokens: number;
|
|
100
|
+
cacheReadTokens: number;
|
|
101
|
+
outputTokens: number;
|
|
102
|
+
}[];
|
|
103
|
+
contextWindow: {
|
|
104
|
+
used: number;
|
|
105
|
+
total: number | null;
|
|
106
|
+
model: string | null;
|
|
107
|
+
} | null;
|
|
108
|
+
totals: {
|
|
109
|
+
agentTokens: number | null;
|
|
110
|
+
workerTokens: number | null;
|
|
111
|
+
totalTokens: number | null;
|
|
112
|
+
};
|
|
113
|
+
distribution: {
|
|
114
|
+
category: string;
|
|
115
|
+
tokens: number;
|
|
116
|
+
}[];
|
|
117
|
+
pagination: {
|
|
118
|
+
total: number;
|
|
119
|
+
offset: number;
|
|
120
|
+
limit: number;
|
|
121
|
+
since?: number;
|
|
122
|
+
newestFirst?: boolean;
|
|
123
|
+
} | undefined;
|
|
124
|
+
coverage: "recorded-turns-only";
|
|
125
|
+
};
|
|
126
|
+
export declare function summarizeTokenTurns(turns: TokenTurn[]): {
|
|
127
|
+
totalTokens: number | null;
|
|
128
|
+
contextTools: string[] | null;
|
|
129
|
+
loadedTools: string[] | null;
|
|
130
|
+
usedTools: string[];
|
|
131
|
+
};
|
|
132
|
+
//# sourceMappingURL=token-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-ledger.d.ts","sourceRoot":"","sources":["../../src/orchestration/token-ledger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAG7C,MAAM,WAAW,SAAU,SAAQ,kBAAkB;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,OAAO,GAAG,QAAQ,CAAC;IACzB,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;mCAC+B;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;yFACqF;IACrF,OAAO,CAAC,EAAE,IAAI,CAAC;IACf;4DACwD;IACxD,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;mFACmF;AACnF,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAevK;AAID,wBAAgB,aAAa,CAAC,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,EAAE,CAqBvF;AAWD,wBAAgB,eAAe,CAAC,KAAK,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAchF;AACD,wBAAgB,WAAW,CAAC,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,UAAO;;;;;;;;;;;cAlEc,MAAM;eAAS,MAAM,GAAG,IAAI;eAAS,MAAM,GAAG,IAAI;;;;;;;;;;;;;gBA6GT,MAAM;eAAS,MAAM;gBAAU,MAAM;sBAAgB,OAAO;;;EAxCjN;AACD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,MAAM,EACzF,KAAK,SAAI,EAAE,SAAS,UAAO,EAAE,GAAG,SAAa,GAAG,SAAS,EAAE,CAmB5D;AACD,wBAAgB,eAAe,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,UAAO,EAAE,IAAI,CAAC,EAAE;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,CAAA;CAAC;;;;;;;;;;;cA7GtG,MAAM;eAAS,MAAM,GAAG,IAAI;eAAS,MAAM,GAAG,IAAI;;;;;;;;;;;;;gBA6GT,MAAM;eAAS,MAAM;gBAAU,MAAM;sBAAgB,OAAO;;;EA+EjN;AAAA,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE;;;;;EAOtD"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.latestAgentContextWindow = latestAgentContextWindow;
|
|
4
|
+
exports.measuredTurns = measuredTurns;
|
|
5
|
+
exports.recordTokenTurn = recordTokenTurn;
|
|
6
|
+
exports.tokenReport = tokenReport;
|
|
7
|
+
exports.pendingInputTurns = pendingInputTurns;
|
|
8
|
+
exports.readTokenReport = readTokenReport;
|
|
9
|
+
exports.summarizeTokenTurns = summarizeTokenTurns;
|
|
10
|
+
const token_usage_1 = require("./token-usage");
|
|
11
|
+
const initialized = new WeakSet();
|
|
12
|
+
/** Latest observed request in the most recent agent turn, including its output.
|
|
13
|
+
* A peak earlier in the turn may predate compaction and is not current context. */
|
|
14
|
+
function latestAgentContextWindow(store, sessionId) {
|
|
15
|
+
const row = store.get(`SELECT payload_json FROM token_turns WHERE session_id=? AND role='agent' AND EXISTS (SELECT 1 FROM json_each(token_turns.payload_json,'$.requests') r WHERE json_type(r.value,'$.usage')='object') ORDER BY started_at DESC,id DESC LIMIT 1`, sessionId);
|
|
16
|
+
if (!row)
|
|
17
|
+
return null;
|
|
18
|
+
let turn;
|
|
19
|
+
try {
|
|
20
|
+
turn = JSON.parse(String(row.payload_json));
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
const requests = Array.isArray(turn.requests) ? turn.requests : [];
|
|
26
|
+
let best = null;
|
|
27
|
+
for (const request of requests) {
|
|
28
|
+
const usage = request?.usage;
|
|
29
|
+
if (!usage)
|
|
30
|
+
continue;
|
|
31
|
+
const context = Number(usage.inputTokens ?? 0) + Number(usage.cacheReadTokens ?? 0) + Number(usage.cacheCreationTokens ?? 0);
|
|
32
|
+
best = { context, total: Number(usage.totalTokens ?? 0) };
|
|
33
|
+
}
|
|
34
|
+
if (!best)
|
|
35
|
+
return null;
|
|
36
|
+
return { used: best.total, total: null, model: typeof turn.model === 'string' ? turn.model : null };
|
|
37
|
+
}
|
|
38
|
+
// Dashboard polling never reloads full request arrays or conversation text.
|
|
39
|
+
// Cache only projected measurements, invalidate the affected session on writes.
|
|
40
|
+
const summaries = new WeakMap();
|
|
41
|
+
function measuredTurns(store, sessionId) {
|
|
42
|
+
ensure(store);
|
|
43
|
+
let cache = summaries.get(store);
|
|
44
|
+
if (!cache) {
|
|
45
|
+
cache = new Map();
|
|
46
|
+
summaries.set(store, cache);
|
|
47
|
+
}
|
|
48
|
+
const found = cache.get(sessionId);
|
|
49
|
+
if (found)
|
|
50
|
+
return found;
|
|
51
|
+
const turns = store.all(`SELECT id, role, task_id, started_at,
|
|
52
|
+
json_extract(payload_json,'$.usage') AS usage,
|
|
53
|
+
json_extract(payload_json,'$.loadedTools') AS loaded_tools,
|
|
54
|
+
json_extract(payload_json,'$.contextTools') AS context_tools,
|
|
55
|
+
json_extract(payload_json,'$.usedTools') AS used_tools
|
|
56
|
+
FROM token_turns WHERE session_id=? ORDER BY started_at,id`, sessionId).map(row => ({
|
|
57
|
+
id: String(row.id), sessionId, role: String(row.role), category: String(row.role) === 'worker' ? 'worker' : 'input',
|
|
58
|
+
taskId: row.task_id == null ? undefined : String(row.task_id), startedAt: Number(row.started_at), toolIds: [], inputTokens: 0, totalTokens: 0,
|
|
59
|
+
contextTools: row.context_tools == null ? null : JSON.parse(String(row.context_tools)),
|
|
60
|
+
usage: row.usage == null ? null : JSON.parse(String(row.usage)), loadedTools: row.loaded_tools == null ? null : JSON.parse(String(row.loaded_tools)),
|
|
61
|
+
usedTools: row.used_tools == null ? [] : JSON.parse(String(row.used_tools)),
|
|
62
|
+
}));
|
|
63
|
+
if (cache.size >= 64)
|
|
64
|
+
cache.delete(cache.keys().next().value);
|
|
65
|
+
cache.set(sessionId, turns);
|
|
66
|
+
return turns;
|
|
67
|
+
}
|
|
68
|
+
function ensure(store) {
|
|
69
|
+
if (initialized.has(store))
|
|
70
|
+
return;
|
|
71
|
+
store.run(`CREATE TABLE IF NOT EXISTS token_turns(id TEXT PRIMARY KEY, session_id TEXT NOT NULL,
|
|
72
|
+
role TEXT NOT NULL, task_id TEXT, started_at INTEGER NOT NULL, payload_json TEXT NOT NULL)`);
|
|
73
|
+
store.run('CREATE INDEX IF NOT EXISTS token_turns_session ON token_turns(session_id,started_at)');
|
|
74
|
+
store.run(`CREATE TABLE IF NOT EXISTS token_turn_metrics(id TEXT PRIMARY KEY, session_id TEXT NOT NULL, started_at INTEGER NOT NULL, payload_json TEXT NOT NULL)`);
|
|
75
|
+
store.run('CREATE INDEX IF NOT EXISTS token_turn_metrics_session ON token_turn_metrics(session_id,started_at)');
|
|
76
|
+
store.run('CREATE INDEX IF NOT EXISTS token_turns_started ON token_turns(started_at)');
|
|
77
|
+
initialized.add(store);
|
|
78
|
+
}
|
|
79
|
+
function recordTokenTurn(store, turn) {
|
|
80
|
+
ensure(store);
|
|
81
|
+
store.compose(() => {
|
|
82
|
+
store.run(`INSERT INTO token_turns VALUES(?,?,?,?,?,?) ON CONFLICT(id) DO UPDATE SET payload_json=excluded.payload_json`, turn.id, turn.sessionId, turn.role, turn.taskId ?? null, turn.startedAt, JSON.stringify(turn));
|
|
83
|
+
store.run(`INSERT INTO token_turn_metrics VALUES(?,?,?,?) ON CONFLICT(id) DO UPDATE SET payload_json=excluded.payload_json`, turn.id, turn.sessionId, turn.startedAt, JSON.stringify({ ...turn, requests: undefined, inputTexts: undefined, responseText: undefined }));
|
|
84
|
+
});
|
|
85
|
+
const cached = summaries.get(store)?.get(turn.sessionId);
|
|
86
|
+
if (cached) {
|
|
87
|
+
const projection = { ...turn, requests: undefined, inputTexts: undefined, responseText: undefined };
|
|
88
|
+
const index = cached.findIndex(previous => previous.id === turn.id);
|
|
89
|
+
if (index < 0)
|
|
90
|
+
cached.push(projection);
|
|
91
|
+
else
|
|
92
|
+
cached[index] = projection;
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
function tokenReport(store, sessionId, includeDetails = true) {
|
|
96
|
+
ensure(store);
|
|
97
|
+
return readTokenReport(store, sessionId, includeDetails);
|
|
98
|
+
}
|
|
99
|
+
/** Accepted inputs that have no measured ledger turn yet.
|
|
100
|
+
*
|
|
101
|
+
* Turns are serialised per session on purpose (runtime.ts skips a session that already
|
|
102
|
+
* has a decision in flight), so a message sent while the previous turn is still running
|
|
103
|
+
* waits — occasionally minutes — before its own decision starts, and the token_turns row
|
|
104
|
+
* only appears with that turn's first usage event. Until then the report had no row for
|
|
105
|
+
* the message at all, which is why a queued message looked lost.
|
|
106
|
+
*
|
|
107
|
+
* These rows are DERIVED ON EVERY READ from conversation_inputs rather than written into
|
|
108
|
+
* token_turns, which is what the rest of this read path already does for decisions,
|
|
109
|
+
* responses, tasks and attempts. Two properties fall out of that choice for free:
|
|
110
|
+
* - the ledger stays purely measured usage, so no total, average, distribution or
|
|
111
|
+
* %cached query can ever see a pending row (they all sum token_turns);
|
|
112
|
+
* - a pending row cannot get stuck. It exists only while the input is genuinely still
|
|
113
|
+
* 'accepted'/'assigned' with no measured turn, so a handled, interrupted or replaced
|
|
114
|
+
* input drops out immediately, and a gateway restart (recovery.ts resets 'assigned'
|
|
115
|
+
* back to 'accepted') leaves it truthfully queued rather than permanently "running".
|
|
116
|
+
*/
|
|
117
|
+
function pendingInputTurns(store, sessionId, since = 0, hasLedger = true, now = Date.now()) {
|
|
118
|
+
// An input whose decision already recorded usage is represented by that real turn.
|
|
119
|
+
const measured = hasLedger ? `AND NOT EXISTS (SELECT 1 FROM conversation_decisions d JOIN token_turns t ON t.id=d.id
|
|
120
|
+
WHERE d.conversation_id=i.conversation_id
|
|
121
|
+
AND EXISTS (SELECT 1 FROM json_each(d.input_ids_json) j WHERE j.value=i.id))` : '';
|
|
122
|
+
return store.all(`SELECT i.id,i.input_seq,i.text,i.modality,i.created_at,i.status,i.store_user_message
|
|
123
|
+
FROM conversation_inputs i JOIN conversations c ON c.id=i.conversation_id
|
|
124
|
+
WHERE c.agent_session_id=? AND i.status IN ('accepted','assigned') AND i.created_at>=? ${measured}
|
|
125
|
+
ORDER BY i.created_at DESC,i.input_seq DESC LIMIT 50`, sessionId, since).map(row => ({
|
|
126
|
+
id: String(row.id), sessionId, role: 'agent',
|
|
127
|
+
// store_user_message=0 is an orchestration report request, not a user message.
|
|
128
|
+
category: row.store_user_message ? 'input' : 'report',
|
|
129
|
+
pending: true, startedAt: Number(row.created_at),
|
|
130
|
+
queuedMs: Math.max(0, now - Number(row.created_at)),
|
|
131
|
+
toolIds: [], inputTokens: 0, totalTokens: 0, usage: null,
|
|
132
|
+
inputTexts: [String(row.text)], inputModalities: [String(row.modality)], inputSequences: [Number(row.input_seq)],
|
|
133
|
+
// 'assigned' means its decision has begun but no usage has been reported yet.
|
|
134
|
+
state: String(row.status) === 'assigned' ? 'starting' : 'queued',
|
|
135
|
+
}));
|
|
136
|
+
}
|
|
137
|
+
function readTokenReport(store, sessionId, includeDetails = true, page) {
|
|
138
|
+
const since = page?.since ?? 0;
|
|
139
|
+
const order = page?.newestFirst ? 'DESC' : 'ASC';
|
|
140
|
+
const turns = store.all(`SELECT payload_json FROM token_turns WHERE session_id=? AND started_at>=? ORDER BY started_at ${order},id ${order} LIMIT ? OFFSET ?`, sessionId, since, page?.limit ?? -1, page?.offset ?? 0)
|
|
141
|
+
.map(row => {
|
|
142
|
+
const turn = JSON.parse(String(row.payload_json));
|
|
143
|
+
if (!includeDetails)
|
|
144
|
+
return turn;
|
|
145
|
+
if (turn.role === 'agent') {
|
|
146
|
+
const decision = store.get('SELECT d.* FROM conversation_decisions d JOIN conversations c ON c.id=d.conversation_id WHERE d.id=? AND c.agent_session_id=?', turn.id, sessionId);
|
|
147
|
+
if (decision) {
|
|
148
|
+
const inputs = store.all('SELECT text,modality,input_seq,created_at FROM conversation_inputs WHERE conversation_id=? AND id IN (SELECT value FROM json_each(?)) ORDER BY input_seq', decision.conversation_id, decision.input_ids_json);
|
|
149
|
+
turn.inputTexts = inputs.map(input => String(input.text));
|
|
150
|
+
turn.inputModalities = inputs.map(input => String(input.modality));
|
|
151
|
+
turn.inputSequences = inputs.map(input => Number(input.input_seq));
|
|
152
|
+
// How long the earliest input waited for this turn to start. Serialised turns
|
|
153
|
+
// mean a short message can sit queued for minutes; without this the turn just
|
|
154
|
+
// looks slow instead of "queued behind the previous turn".
|
|
155
|
+
const accepted = inputs.map(input => Number(input.created_at)).filter(value => Number.isFinite(value) && value > 0);
|
|
156
|
+
if (accepted.length && Number.isFinite(Number(decision.started_at)))
|
|
157
|
+
turn.queuedMs = Math.max(0, Number(decision.started_at) - Math.min(...accepted));
|
|
158
|
+
turn.responseText = store.all('SELECT generated_text FROM assistant_responses WHERE decision_id=? ORDER BY created_at,id', turn.id).map(response => String(response.generated_text)).join('\n\n');
|
|
159
|
+
turn.state = String(decision.state);
|
|
160
|
+
if (turn.state === 'failed') {
|
|
161
|
+
const failure = store.get("SELECT json_extract(payload_json,'$.payload.code') code FROM conversation_events WHERE conversation_id=? AND type='response.error' AND json_extract(payload_json,'$.payload.responseId') IN (SELECT id FROM assistant_responses WHERE decision_id=?) ORDER BY seq DESC LIMIT 1", decision.conversation_id, turn.id);
|
|
162
|
+
if (typeof failure?.code === 'string' && /^[A-Z][A-Z0-9_]{0,79}$/.test(failure.code))
|
|
163
|
+
turn.failureCode = failure.code;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
else if (turn.taskId) {
|
|
168
|
+
const task = store.get('SELECT t.snapshot_json FROM tasks t JOIN conversations c ON c.id=t.conversation_id WHERE t.id=? AND c.agent_session_id=?', turn.taskId, sessionId);
|
|
169
|
+
const attempt = store.attempt(turn.id);
|
|
170
|
+
if (task && attempt) {
|
|
171
|
+
const snapshot = JSON.parse(String(task.snapshot_json));
|
|
172
|
+
const revision = store.get('SELECT payload_json FROM task_revisions WHERE task_id=? AND revision=?', turn.taskId, attempt.revision);
|
|
173
|
+
turn.taskTitle = snapshot.title;
|
|
174
|
+
if (revision) {
|
|
175
|
+
const applied = JSON.parse(String(revision.payload_json));
|
|
176
|
+
turn.inputTexts = [`Current applied task revision ${attempt.revision}:\n${applied.instructions}`,
|
|
177
|
+
...(applied.answers?.length ? ['Answers applied to the assignment (orchestrator interpretation):\n' + JSON.stringify(applied.answers, null, 2)] : []),
|
|
178
|
+
...(applied.guidance ? ['Recorded supervision advice (may have been superseded by newer evidence):\n' + applied.guidance] : [])];
|
|
179
|
+
if (turn.taskRevision != null && turn.taskRevision !== attempt.revision) {
|
|
180
|
+
const initial = store.get('SELECT payload_json FROM task_revisions WHERE task_id=? AND revision=?', turn.taskId, turn.taskRevision);
|
|
181
|
+
if (initial)
|
|
182
|
+
turn.inputTexts.unshift(`Assignment at attempt start, revision ${turn.taskRevision}:\n${String(initial.payload_json)}`);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
const latestAttempt = snapshot.activeAttemptId === turn.id || store.get('SELECT id FROM task_attempts WHERE task_id=? ORDER BY generation DESC LIMIT 1', turn.taskId)?.id === turn.id;
|
|
186
|
+
turn.state = attempt.state === 'ended'
|
|
187
|
+
? latestAttempt && snapshot.state === 'cancelled' ? 'cancelled'
|
|
188
|
+
: attempt.result ? 'completed'
|
|
189
|
+
: attempt.failure ? (attempt.failure.code === 'WORKER_STOPPED' ? 'interrupted' : 'failed') : 'ended'
|
|
190
|
+
: attempt.state;
|
|
191
|
+
if (attempt.failure && turn.state !== 'cancelled')
|
|
192
|
+
turn.failureCode = attempt.failure.code;
|
|
193
|
+
if (attempt.result)
|
|
194
|
+
turn.responseText = attempt.result.summary;
|
|
195
|
+
// Stored, stable label for a worker row: it has no input_seq of its own.
|
|
196
|
+
turn.attemptGeneration = Number(attempt.generation);
|
|
197
|
+
// A task's newest result must not be attributed to an older retry.
|
|
198
|
+
if (!attempt.result && latestAttempt)
|
|
199
|
+
turn.responseText = snapshot.result?.summary;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
return turn;
|
|
203
|
+
});
|
|
204
|
+
// Newest page only: a queued input is by definition newer than every recorded turn, so
|
|
205
|
+
// repeating it while paging back through history would be noise. Pending rows are
|
|
206
|
+
// appended to the view, never to token_turns, so every aggregate below ignores them.
|
|
207
|
+
if (includeDetails && !(page?.offset ?? 0))
|
|
208
|
+
turns.push(...pendingInputTurns(store, sessionId, since));
|
|
209
|
+
const totalsByRole = store.all(`SELECT role, SUM(json_extract(payload_json,'$.usage.totalTokens')) total FROM token_turns WHERE session_id=? AND started_at>=? GROUP BY role`, sessionId, since);
|
|
210
|
+
const agentTokens = totalsByRole.find(row => row.role === 'agent')?.total ?? null;
|
|
211
|
+
const workerTokens = totalsByRole.find(row => row.role === 'worker')?.total ?? null;
|
|
212
|
+
const totalTokens = agentTokens === null && workerTokens === null ? null : Number(agentTokens ?? 0) + Number(workerTokens ?? 0);
|
|
213
|
+
const distribution = store.all(`SELECT json_extract(payload_json,'$.category') category, SUM(json_extract(payload_json,'$.usage.totalTokens')) tokens FROM token_turns WHERE session_id=? AND started_at>=? AND json_type(payload_json,'$.usage')='object' GROUP BY category`, sessionId, since).map(r => ({ category: String(r.category), tokens: Number(r.tokens ?? 0) }));
|
|
214
|
+
const usageByRole = store.all(`SELECT role,
|
|
215
|
+
SUM(json_extract(payload_json,'$.usage.inputTokens')) inputTokens,
|
|
216
|
+
SUM(json_extract(payload_json,'$.usage.cacheCreationTokens')) cacheCreationTokens,
|
|
217
|
+
SUM(json_extract(payload_json,'$.usage.cacheReadTokens')) cacheReadTokens,
|
|
218
|
+
SUM(json_extract(payload_json,'$.usage.outputTokens')) outputTokens
|
|
219
|
+
FROM token_turns WHERE session_id=? AND started_at>=? AND json_type(payload_json,'$.usage')='object' GROUP BY role`, sessionId, since)
|
|
220
|
+
.map(row => ({ role: String(row.role), inputTokens: Number(row.inputTokens ?? 0), cacheCreationTokens: Number(row.cacheCreationTokens ?? 0), cacheReadTokens: Number(row.cacheReadTokens ?? 0), outputTokens: Number(row.outputTokens ?? 0) }));
|
|
221
|
+
return { sessionId, turns, usageByRole, contextWindow: latestAgentContextWindow(store, sessionId), totals: { agentTokens: agentTokens === null ? null : Number(agentTokens), workerTokens: workerTokens === null ? null : Number(workerTokens), totalTokens }, distribution,
|
|
222
|
+
pagination: page ? { ...page, total: Number(store.get('SELECT COUNT(*) n FROM token_turns WHERE session_id=? AND started_at>=?', sessionId, since).n) } : undefined,
|
|
223
|
+
coverage: 'recorded-turns-only' };
|
|
224
|
+
}
|
|
225
|
+
function summarizeTokenTurns(turns) {
|
|
226
|
+
const measured = turns.filter(turn => turn.usage);
|
|
227
|
+
const usage = measured.length ? (0, token_usage_1.sumUsage)(measured.map(turn => turn.usage)) : null;
|
|
228
|
+
return { totalTokens: usage?.totalTokens ?? null,
|
|
229
|
+
contextTools: turns.some(turn => turn.contextTools != null) ? [...new Set(turns.flatMap(turn => turn.contextTools ?? []))].sort() : null,
|
|
230
|
+
loadedTools: turns.some(turn => turn.loadedTools != null) ? [...new Set(turns.flatMap(turn => turn.loadedTools ?? []))].sort() : null,
|
|
231
|
+
usedTools: [...new Set(turns.flatMap(turn => turn.usedTools ?? []))].sort() };
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=token-ledger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-ledger.js","sourceRoot":"","sources":["../../src/orchestration/token-ledger.ts"],"names":[],"mappings":"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"}
|