olympus-ai 3.3.0 → 3.4.0
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/.claude-plugin/marketplace.json +1 -1
- package/README.md +2 -0
- package/dist/__tests__/learning/aggregation.test.d.ts +2 -0
- package/dist/__tests__/learning/aggregation.test.d.ts.map +1 -0
- package/dist/__tests__/learning/aggregation.test.js +282 -0
- package/dist/__tests__/learning/aggregation.test.js.map +1 -0
- package/dist/__tests__/learning/anomaly.test.d.ts +2 -0
- package/dist/__tests__/learning/anomaly.test.d.ts.map +1 -0
- package/dist/__tests__/learning/anomaly.test.js +107 -0
- package/dist/__tests__/learning/anomaly.test.js.map +1 -0
- package/dist/__tests__/learning/baselines.test.d.ts +2 -0
- package/dist/__tests__/learning/baselines.test.d.ts.map +1 -0
- package/dist/__tests__/learning/baselines.test.js +155 -0
- package/dist/__tests__/learning/baselines.test.js.map +1 -0
- package/dist/__tests__/learning/efficiency.test.d.ts +2 -0
- package/dist/__tests__/learning/efficiency.test.d.ts.map +1 -0
- package/dist/__tests__/learning/efficiency.test.js +94 -0
- package/dist/__tests__/learning/efficiency.test.js.map +1 -0
- package/dist/__tests__/learning/feedback-loop-injection.test.d.ts +6 -0
- package/dist/__tests__/learning/feedback-loop-injection.test.d.ts.map +1 -0
- package/dist/__tests__/learning/feedback-loop-injection.test.js +288 -0
- package/dist/__tests__/learning/feedback-loop-injection.test.js.map +1 -0
- package/dist/__tests__/learning/learning-capture-integration.test.d.ts +6 -0
- package/dist/__tests__/learning/learning-capture-integration.test.d.ts.map +1 -0
- package/dist/__tests__/learning/learning-capture-integration.test.js +151 -0
- package/dist/__tests__/learning/learning-capture-integration.test.js.map +1 -0
- package/dist/__tests__/learning/token-metrics.test.d.ts +2 -0
- package/dist/__tests__/learning/token-metrics.test.d.ts.map +1 -0
- package/dist/__tests__/learning/token-metrics.test.js +308 -0
- package/dist/__tests__/learning/token-metrics.test.js.map +1 -0
- package/dist/__tests__/token-tracking-integration.test.d.ts +8 -0
- package/dist/__tests__/token-tracking-integration.test.d.ts.map +1 -0
- package/dist/__tests__/token-tracking-integration.test.js +669 -0
- package/dist/__tests__/token-tracking-integration.test.js.map +1 -0
- package/dist/cli/commands/metrics.d.ts +10 -2
- package/dist/cli/commands/metrics.d.ts.map +1 -1
- package/dist/cli/commands/metrics.js +25 -239
- package/dist/cli/commands/metrics.js.map +1 -1
- package/dist/cli/index.js +196 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +14 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/hooks/registrations/budget-warning.d.ts +8 -0
- package/dist/hooks/registrations/budget-warning.d.ts.map +1 -0
- package/dist/hooks/registrations/budget-warning.js +63 -0
- package/dist/hooks/registrations/budget-warning.js.map +1 -0
- package/dist/hooks/registrations/index.d.ts +3 -2
- package/dist/hooks/registrations/index.d.ts.map +1 -1
- package/dist/hooks/registrations/index.js +5 -3
- package/dist/hooks/registrations/index.js.map +1 -1
- package/dist/hooks/registrations/learning-capture.d.ts +19 -0
- package/dist/hooks/registrations/learning-capture.d.ts.map +1 -0
- package/dist/hooks/registrations/learning-capture.js +220 -0
- package/dist/hooks/registrations/learning-capture.js.map +1 -0
- package/dist/hooks/registrations/session-start.d.ts.map +1 -1
- package/dist/hooks/registrations/session-start.js +13 -0
- package/dist/hooks/registrations/session-start.js.map +1 -1
- package/dist/hooks/registrations/token-metrics.d.ts +10 -2
- package/dist/hooks/registrations/token-metrics.d.ts.map +1 -1
- package/dist/hooks/registrations/token-metrics.js +18 -4
- package/dist/hooks/registrations/token-metrics.js.map +1 -1
- package/dist/installer/index.d.ts +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +56 -0
- package/dist/installer/index.js.map +1 -1
- package/dist/learning/aggregation.d.ts +39 -0
- package/dist/learning/aggregation.d.ts.map +1 -0
- package/dist/learning/aggregation.js +101 -0
- package/dist/learning/aggregation.js.map +1 -0
- package/dist/learning/anomaly.d.ts +30 -0
- package/dist/learning/anomaly.d.ts.map +1 -0
- package/dist/learning/anomaly.js +102 -0
- package/dist/learning/anomaly.js.map +1 -0
- package/dist/learning/baselines.d.ts +44 -0
- package/dist/learning/baselines.d.ts.map +1 -0
- package/dist/learning/baselines.js +126 -0
- package/dist/learning/baselines.js.map +1 -0
- package/dist/learning/efficiency.d.ts +23 -0
- package/dist/learning/efficiency.d.ts.map +1 -0
- package/dist/learning/efficiency.js +67 -0
- package/dist/learning/efficiency.js.map +1 -0
- package/dist/learning/hooks/learned-context.d.ts.map +1 -1
- package/dist/learning/hooks/learned-context.js +46 -0
- package/dist/learning/hooks/learned-context.js.map +1 -1
- package/dist/learning/pricing.d.ts +30 -0
- package/dist/learning/pricing.d.ts.map +1 -0
- package/dist/learning/pricing.js +98 -0
- package/dist/learning/pricing.js.map +1 -0
- package/dist/learning/session-state.d.ts +12 -2
- package/dist/learning/session-state.d.ts.map +1 -1
- package/dist/learning/session-state.js +72 -3
- package/dist/learning/session-state.js.map +1 -1
- package/dist/learning/storage.d.ts +21 -1
- package/dist/learning/storage.d.ts.map +1 -1
- package/dist/learning/storage.js +84 -0
- package/dist/learning/storage.js.map +1 -1
- package/dist/learning/token-estimator.d.ts +41 -0
- package/dist/learning/token-estimator.d.ts.map +1 -0
- package/dist/learning/token-estimator.js +111 -0
- package/dist/learning/token-estimator.js.map +1 -0
- package/dist/learning/types.d.ts +32 -0
- package/dist/learning/types.d.ts.map +1 -1
- package/dist/learning/utils.d.ts +42 -0
- package/dist/learning/utils.d.ts.map +1 -0
- package/dist/learning/utils.js +76 -0
- package/dist/learning/utils.js.map +1 -0
- package/dist/shared/types.d.ts +29 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/scripts/dist/hooks/olympus-hooks.cjs +86 -84
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token estimation utilities for Olympus learning system
|
|
3
|
+
*
|
|
4
|
+
* Uses gpt-tokenizer for accurate token counting with fallback to character-based estimation.
|
|
5
|
+
* Token counts are approximations for tracking trends, not exact billing calculations.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Main token estimation function
|
|
9
|
+
*
|
|
10
|
+
* @param text - Text to estimate tokens for
|
|
11
|
+
* @returns Estimated token count
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* const tokens = await estimateTokens("Hello, world!");
|
|
16
|
+
* console.log(tokens); // ~4 tokens
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare function estimateTokens(text: string): Promise<number>;
|
|
20
|
+
/**
|
|
21
|
+
* Estimate tokens from tool output (handles various result formats)
|
|
22
|
+
*
|
|
23
|
+
* @param output - Tool output object (from Claude Code SDK)
|
|
24
|
+
* @returns Estimated token count
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```ts
|
|
28
|
+
* const readResult = { content: "file contents..." };
|
|
29
|
+
* const tokens = await estimateTokensFromToolOutput(readResult);
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare function estimateTokensFromToolOutput(output: unknown): Promise<number>;
|
|
33
|
+
/**
|
|
34
|
+
* Synchronous version of estimateTokens using only character-based estimation
|
|
35
|
+
* Useful when async operations aren't possible
|
|
36
|
+
*
|
|
37
|
+
* @param text - Text to estimate tokens for
|
|
38
|
+
* @returns Estimated token count (character-based)
|
|
39
|
+
*/
|
|
40
|
+
export declare function estimateTokensSync(text: string): number;
|
|
41
|
+
//# sourceMappingURL=token-estimator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/learning/token-estimator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA8BH;;;;;;;;;;;GAWG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAiBlE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,4BAA4B,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CA8BnF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvD"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Token estimation utilities for Olympus learning system
|
|
3
|
+
*
|
|
4
|
+
* Uses gpt-tokenizer for accurate token counting with fallback to character-based estimation.
|
|
5
|
+
* Token counts are approximations for tracking trends, not exact billing calculations.
|
|
6
|
+
*/
|
|
7
|
+
let encode = null;
|
|
8
|
+
let tokenizerInitialized = false;
|
|
9
|
+
/**
|
|
10
|
+
* Initialize the GPT tokenizer (lazy-loaded)
|
|
11
|
+
*/
|
|
12
|
+
async function initTokenizer() {
|
|
13
|
+
if (tokenizerInitialized)
|
|
14
|
+
return;
|
|
15
|
+
try {
|
|
16
|
+
// Dynamic import for gpt-tokenizer
|
|
17
|
+
const { encode: gptEncode } = await import('gpt-tokenizer');
|
|
18
|
+
encode = gptEncode;
|
|
19
|
+
tokenizerInitialized = true;
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
// Tokenizer unavailable, will fall back to character counting
|
|
23
|
+
tokenizerInitialized = true;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Estimate token count using character-based heuristic
|
|
28
|
+
* Claude/GPT-4 average: ~1 token per 4 characters
|
|
29
|
+
*/
|
|
30
|
+
function estimateTokensByCharacters(text) {
|
|
31
|
+
return Math.ceil(text.length / 4);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Main token estimation function
|
|
35
|
+
*
|
|
36
|
+
* @param text - Text to estimate tokens for
|
|
37
|
+
* @returns Estimated token count
|
|
38
|
+
*
|
|
39
|
+
* @example
|
|
40
|
+
* ```ts
|
|
41
|
+
* const tokens = await estimateTokens("Hello, world!");
|
|
42
|
+
* console.log(tokens); // ~4 tokens
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export async function estimateTokens(text) {
|
|
46
|
+
if (!text || text.length === 0) {
|
|
47
|
+
return 0;
|
|
48
|
+
}
|
|
49
|
+
await initTokenizer();
|
|
50
|
+
try {
|
|
51
|
+
if (encode) {
|
|
52
|
+
const tokens = encode(text);
|
|
53
|
+
return tokens.length;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
catch (error) {
|
|
57
|
+
// Fall through to character-based estimation
|
|
58
|
+
}
|
|
59
|
+
return estimateTokensByCharacters(text);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Estimate tokens from tool output (handles various result formats)
|
|
63
|
+
*
|
|
64
|
+
* @param output - Tool output object (from Claude Code SDK)
|
|
65
|
+
* @returns Estimated token count
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```ts
|
|
69
|
+
* const readResult = { content: "file contents..." };
|
|
70
|
+
* const tokens = await estimateTokensFromToolOutput(readResult);
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
export async function estimateTokensFromToolOutput(output) {
|
|
74
|
+
if (!output) {
|
|
75
|
+
return 0;
|
|
76
|
+
}
|
|
77
|
+
// Handle common tool output formats
|
|
78
|
+
if (typeof output === 'object' && output !== null) {
|
|
79
|
+
// Check for common content fields
|
|
80
|
+
const obj = output;
|
|
81
|
+
if ('content' in obj && typeof obj.content === 'string') {
|
|
82
|
+
return estimateTokens(obj.content);
|
|
83
|
+
}
|
|
84
|
+
if ('output' in obj && typeof obj.output === 'string') {
|
|
85
|
+
return estimateTokens(obj.output);
|
|
86
|
+
}
|
|
87
|
+
if ('text' in obj && typeof obj.text === 'string') {
|
|
88
|
+
return estimateTokens(obj.text);
|
|
89
|
+
}
|
|
90
|
+
if ('result' in obj && typeof obj.result === 'string') {
|
|
91
|
+
return estimateTokens(obj.result);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
// Fallback: stringify entire object
|
|
95
|
+
const text = typeof output === 'string' ? output : JSON.stringify(output);
|
|
96
|
+
return estimateTokens(text);
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Synchronous version of estimateTokens using only character-based estimation
|
|
100
|
+
* Useful when async operations aren't possible
|
|
101
|
+
*
|
|
102
|
+
* @param text - Text to estimate tokens for
|
|
103
|
+
* @returns Estimated token count (character-based)
|
|
104
|
+
*/
|
|
105
|
+
export function estimateTokensSync(text) {
|
|
106
|
+
if (!text || text.length === 0) {
|
|
107
|
+
return 0;
|
|
108
|
+
}
|
|
109
|
+
return estimateTokensByCharacters(text);
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=token-estimator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/learning/token-estimator.ts"],"names":[],"mappings":"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"}
|
package/dist/learning/types.d.ts
CHANGED
|
@@ -15,6 +15,13 @@ export interface HookInput {
|
|
|
15
15
|
* Session state maintained across hook invocations
|
|
16
16
|
* Stored in .olympus/session-state.json
|
|
17
17
|
*/
|
|
18
|
+
export interface TokenBudget {
|
|
19
|
+
session_baseline: number;
|
|
20
|
+
current_usage: number;
|
|
21
|
+
warning_threshold: number;
|
|
22
|
+
warning_issued: boolean;
|
|
23
|
+
started_at: string;
|
|
24
|
+
}
|
|
18
25
|
export interface SessionState {
|
|
19
26
|
session_id: string;
|
|
20
27
|
started_at: string;
|
|
@@ -34,8 +41,22 @@ export interface SessionState {
|
|
|
34
41
|
completed: number;
|
|
35
42
|
pending: number;
|
|
36
43
|
} | null;
|
|
44
|
+
token_budget?: TokenBudget;
|
|
37
45
|
}
|
|
38
46
|
export type FeedbackCategory = 'correction' | 'rejection' | 'clarification' | 'enhancement' | 'praise' | 'explicit_preference';
|
|
47
|
+
export interface TokenUsage {
|
|
48
|
+
input_tokens: number;
|
|
49
|
+
output_tokens: number;
|
|
50
|
+
total_tokens: number;
|
|
51
|
+
estimated: boolean;
|
|
52
|
+
model?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface CostEstimate {
|
|
55
|
+
input_cost: number;
|
|
56
|
+
output_cost: number;
|
|
57
|
+
total_cost: number;
|
|
58
|
+
pricing_version: string;
|
|
59
|
+
}
|
|
39
60
|
export interface FeedbackEntry {
|
|
40
61
|
id: string;
|
|
41
62
|
timestamp: string;
|
|
@@ -49,6 +70,8 @@ export interface FeedbackEntry {
|
|
|
49
70
|
feedback_category: FeedbackCategory;
|
|
50
71
|
extracted_lesson?: string;
|
|
51
72
|
confidence: number;
|
|
73
|
+
token_usage?: TokenUsage;
|
|
74
|
+
cost_estimate?: CostEstimate;
|
|
52
75
|
}
|
|
53
76
|
export interface UserPreferences {
|
|
54
77
|
verbosity: 'concise' | 'detailed' | 'unknown';
|
|
@@ -64,6 +87,14 @@ export interface UserPreferences {
|
|
|
64
87
|
}>;
|
|
65
88
|
last_updated: string;
|
|
66
89
|
}
|
|
90
|
+
export interface TokenEfficiency {
|
|
91
|
+
avg_tokens_per_success: number;
|
|
92
|
+
avg_tokens_per_failure: number;
|
|
93
|
+
total_tokens: number;
|
|
94
|
+
invocation_count: number;
|
|
95
|
+
efficiency_score: number;
|
|
96
|
+
trend: 'improving' | 'declining' | 'stable' | 'insufficient_data';
|
|
97
|
+
}
|
|
67
98
|
export interface AgentPerformance {
|
|
68
99
|
agent_name: string;
|
|
69
100
|
total_invocations: number;
|
|
@@ -79,6 +110,7 @@ export interface AgentPerformance {
|
|
|
79
110
|
strong_areas: string[];
|
|
80
111
|
weak_areas: string[];
|
|
81
112
|
last_updated: string;
|
|
113
|
+
token_efficiency?: TokenEfficiency;
|
|
82
114
|
}
|
|
83
115
|
export interface ProjectPatterns {
|
|
84
116
|
project_hash: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/learning/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IAGrB,cAAc,EAAE,KAAK,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,iBAAiB,CAAC,EAAE,gBAAgB,CAAC;KACtC,CAAC,CAAC;IAGH,kBAAkB,EAAE;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,IAAI,CAAC;IAGT,aAAa,EAAE;QACb,KAAK,EAAE,MAAM,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;KACjB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/learning/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guards and safe accessor utilities for learning system
|
|
3
|
+
* No external dependencies - using Node.js built-ins only
|
|
4
|
+
*/
|
|
5
|
+
import type { FeedbackEntry, AgentPerformance, TokenUsage } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* Safely extract token usage from feedback entry
|
|
8
|
+
* Returns null if token_usage is undefined or invalid
|
|
9
|
+
*/
|
|
10
|
+
export declare function getTokenUsage(entry: FeedbackEntry): TokenUsage | null;
|
|
11
|
+
/**
|
|
12
|
+
* Safely extract efficiency score from agent performance
|
|
13
|
+
* Returns 0 if token_efficiency is undefined
|
|
14
|
+
*/
|
|
15
|
+
export declare function getEfficiencyScore(perf: AgentPerformance): number;
|
|
16
|
+
/**
|
|
17
|
+
* Check if agent performance has minimum sample size for reliable metrics
|
|
18
|
+
* Default minimum is 5 invocations
|
|
19
|
+
*/
|
|
20
|
+
export declare function hasMinimumSamples(perf: AgentPerformance, minimum?: number): boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Safely get total tokens from feedback entry
|
|
23
|
+
* Returns 0 if token_usage is undefined or invalid
|
|
24
|
+
*/
|
|
25
|
+
export declare function safeTokenTotal(entry: FeedbackEntry): number;
|
|
26
|
+
/**
|
|
27
|
+
* Type guard: check if value is a valid TokenUsage object
|
|
28
|
+
*/
|
|
29
|
+
export declare function isTokenUsage(value: unknown): value is TokenUsage;
|
|
30
|
+
/**
|
|
31
|
+
* Type guard: check if feedback entry has token metrics
|
|
32
|
+
*/
|
|
33
|
+
export declare function hasTokenMetrics(entry: FeedbackEntry): entry is FeedbackEntry & {
|
|
34
|
+
token_usage: TokenUsage;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Type guard: check if agent performance has efficiency metrics
|
|
38
|
+
*/
|
|
39
|
+
export declare function hasEfficiencyMetrics(perf: AgentPerformance): perf is AgentPerformance & {
|
|
40
|
+
token_efficiency: NonNullable<AgentPerformance['token_efficiency']>;
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/learning/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE9E;;;GAGG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,GAAG,IAAI,CAkBrE;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,CAMjE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,EAAE,OAAO,GAAE,MAAU,GAAG,OAAO,CAMtF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAG3D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,UAAU,CAYhE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,KAAK,IAAI,aAAa,GAAG;IAC9E,WAAW,EAAE,UAAU,CAAC;CACzB,CAEA;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,IAAI,gBAAgB,GAAG;IACvF,gBAAgB,EAAE,WAAW,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAAC;CACrE,CAEA"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guards and safe accessor utilities for learning system
|
|
3
|
+
* No external dependencies - using Node.js built-ins only
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Safely extract token usage from feedback entry
|
|
7
|
+
* Returns null if token_usage is undefined or invalid
|
|
8
|
+
*/
|
|
9
|
+
export function getTokenUsage(entry) {
|
|
10
|
+
if (!entry.token_usage) {
|
|
11
|
+
return null;
|
|
12
|
+
}
|
|
13
|
+
const { token_usage } = entry;
|
|
14
|
+
// Validate structure
|
|
15
|
+
if (typeof token_usage.input_tokens !== 'number' ||
|
|
16
|
+
typeof token_usage.output_tokens !== 'number' ||
|
|
17
|
+
typeof token_usage.total_tokens !== 'number' ||
|
|
18
|
+
typeof token_usage.estimated !== 'boolean') {
|
|
19
|
+
return null;
|
|
20
|
+
}
|
|
21
|
+
return token_usage;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Safely extract efficiency score from agent performance
|
|
25
|
+
* Returns 0 if token_efficiency is undefined
|
|
26
|
+
*/
|
|
27
|
+
export function getEfficiencyScore(perf) {
|
|
28
|
+
if (!perf.token_efficiency) {
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
return perf.token_efficiency.efficiency_score || 0;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Check if agent performance has minimum sample size for reliable metrics
|
|
35
|
+
* Default minimum is 5 invocations
|
|
36
|
+
*/
|
|
37
|
+
export function hasMinimumSamples(perf, minimum = 5) {
|
|
38
|
+
if (!perf.token_efficiency) {
|
|
39
|
+
return false;
|
|
40
|
+
}
|
|
41
|
+
return perf.token_efficiency.invocation_count >= minimum;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Safely get total tokens from feedback entry
|
|
45
|
+
* Returns 0 if token_usage is undefined or invalid
|
|
46
|
+
*/
|
|
47
|
+
export function safeTokenTotal(entry) {
|
|
48
|
+
const tokenUsage = getTokenUsage(entry);
|
|
49
|
+
return tokenUsage?.total_tokens || 0;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Type guard: check if value is a valid TokenUsage object
|
|
53
|
+
*/
|
|
54
|
+
export function isTokenUsage(value) {
|
|
55
|
+
if (typeof value !== 'object' || value === null) {
|
|
56
|
+
return false;
|
|
57
|
+
}
|
|
58
|
+
const obj = value;
|
|
59
|
+
return (typeof obj.input_tokens === 'number' &&
|
|
60
|
+
typeof obj.output_tokens === 'number' &&
|
|
61
|
+
typeof obj.total_tokens === 'number' &&
|
|
62
|
+
typeof obj.estimated === 'boolean');
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Type guard: check if feedback entry has token metrics
|
|
66
|
+
*/
|
|
67
|
+
export function hasTokenMetrics(entry) {
|
|
68
|
+
return entry.token_usage !== undefined && isTokenUsage(entry.token_usage);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Type guard: check if agent performance has efficiency metrics
|
|
72
|
+
*/
|
|
73
|
+
export function hasEfficiencyMetrics(perf) {
|
|
74
|
+
return perf.token_efficiency !== undefined;
|
|
75
|
+
}
|
|
76
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/learning/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,KAAoB;IAChD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,CAAC;IAE9B,qBAAqB;IACrB,IACE,OAAO,WAAW,CAAC,YAAY,KAAK,QAAQ;QAC5C,OAAO,WAAW,CAAC,aAAa,KAAK,QAAQ;QAC7C,OAAO,WAAW,CAAC,YAAY,KAAK,QAAQ;QAC5C,OAAO,WAAW,CAAC,SAAS,KAAK,SAAS,EAC1C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAAsB;IACvD,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAsB,EAAE,UAAkB,CAAC;IAC3E,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,IAAI,OAAO,CAAC;AAC3D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,KAAoB;IACjD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IACxC,OAAO,UAAU,EAAE,YAAY,IAAI,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,GAAG,GAAG,KAAgC,CAAC;IAC7C,OAAO,CACL,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ;QACrC,OAAO,GAAG,CAAC,YAAY,KAAK,QAAQ;QACpC,OAAO,GAAG,CAAC,SAAS,KAAK,SAAS,CACnC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAoB;IAGlD,OAAO,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;AAC5E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAsB;IAGzD,OAAO,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC;AAC7C,CAAC"}
|
package/dist/shared/types.d.ts
CHANGED
|
@@ -187,6 +187,35 @@ export interface PluginConfig {
|
|
|
187
187
|
minPatternOccurrences?: number;
|
|
188
188
|
/** Days before preferences decay (default: 30) */
|
|
189
189
|
preferenceDecayDays?: number;
|
|
190
|
+
/** Token metrics configuration */
|
|
191
|
+
tokenMetrics?: {
|
|
192
|
+
/** Enable token usage tracking (default: true) */
|
|
193
|
+
enabled?: boolean;
|
|
194
|
+
/** Warning threshold multiplier for session baseline (default: 1.5) */
|
|
195
|
+
warningThreshold?: number;
|
|
196
|
+
/** Minimum samples needed for efficiency metrics (default: 5) */
|
|
197
|
+
minimumSamples?: number;
|
|
198
|
+
/** Max tokens for injected learning context (default: 150) */
|
|
199
|
+
injectionTokenBudget?: number;
|
|
200
|
+
/** Expected baseline tokens per session (default: 10000) */
|
|
201
|
+
sessionBaseline?: number;
|
|
202
|
+
};
|
|
203
|
+
};
|
|
204
|
+
pricing?: {
|
|
205
|
+
/** Default model pricing */
|
|
206
|
+
models?: Array<{
|
|
207
|
+
model_pattern: string;
|
|
208
|
+
input_per_million: number;
|
|
209
|
+
output_per_million: number;
|
|
210
|
+
effective_date: string;
|
|
211
|
+
}>;
|
|
212
|
+
/** Custom pricing overrides */
|
|
213
|
+
customPricing?: Array<{
|
|
214
|
+
model_pattern: string;
|
|
215
|
+
input_per_million: number;
|
|
216
|
+
output_per_million: number;
|
|
217
|
+
effective_date: string;
|
|
218
|
+
}>;
|
|
190
219
|
};
|
|
191
220
|
ascent?: {
|
|
192
221
|
/** Maximum number of iterations before checkpoint (default: 100, min: 10, max: 1000) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/shared/types.ts"],"names":[],"mappings":"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"}
|