@roj-ai/sdk 0.1.19 → 0.1.21
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/dist/core/agents/agent.d.ts.map +1 -1
- package/dist/core/agents/agent.js +13 -3
- package/dist/core/agents/agent.js.map +1 -1
- package/dist/core/context/state.d.ts +8 -0
- package/dist/core/context/state.d.ts.map +1 -1
- package/dist/core/context/state.js +10 -0
- package/dist/core/context/state.js.map +1 -1
- package/dist/core/events/base-event-store.d.ts.map +1 -1
- package/dist/core/events/base-event-store.js +2 -0
- package/dist/core/events/base-event-store.js.map +1 -1
- package/dist/core/events/metadata-utils.d.ts.map +1 -1
- package/dist/core/events/metadata-utils.js +2 -0
- package/dist/core/events/metadata-utils.js.map +1 -1
- package/dist/core/llm/anthropic.test.js +27 -0
- package/dist/core/llm/anthropic.test.js.map +1 -1
- package/dist/core/llm/cache-breakpoints.d.ts +19 -5
- package/dist/core/llm/cache-breakpoints.d.ts.map +1 -1
- package/dist/core/llm/cache-breakpoints.js +40 -23
- package/dist/core/llm/cache-breakpoints.js.map +1 -1
- package/dist/core/llm/cache-breakpoints.test.d.ts +2 -0
- package/dist/core/llm/cache-breakpoints.test.d.ts.map +1 -0
- package/dist/core/llm/cache-breakpoints.test.js +45 -0
- package/dist/core/llm/cache-breakpoints.test.js.map +1 -0
- package/dist/core/llm/state.d.ts +22 -0
- package/dist/core/llm/state.d.ts.map +1 -1
- package/dist/core/llm/state.js +23 -11
- package/dist/core/llm/state.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/mime.d.ts +1 -1
- package/dist/lib/mime.d.ts.map +1 -1
- package/dist/lib/mime.js +7 -4
- package/dist/lib/mime.js.map +1 -1
- package/dist/plugins/agents/plugin.d.ts.map +1 -1
- package/dist/plugins/agents/plugin.js +7 -1
- package/dist/plugins/agents/plugin.js.map +1 -1
- package/dist/plugins/context-compact/context-compact.integration.test.js +54 -0
- package/dist/plugins/context-compact/context-compact.integration.test.js.map +1 -1
- package/dist/plugins/context-compact/context-compactor.d.ts +2 -0
- package/dist/plugins/context-compact/context-compactor.d.ts.map +1 -1
- package/dist/plugins/context-compact/context-compactor.js +29 -0
- package/dist/plugins/context-compact/context-compactor.js.map +1 -1
- package/dist/plugins/context-compact/context-compactor.test.js +6 -0
- package/dist/plugins/context-compact/context-compactor.test.js.map +1 -1
- package/dist/plugins/limits-guard/config.d.ts +30 -0
- package/dist/plugins/limits-guard/config.d.ts.map +1 -1
- package/dist/plugins/limits-guard/index.d.ts +3 -3
- package/dist/plugins/limits-guard/index.d.ts.map +1 -1
- package/dist/plugins/limits-guard/index.js +1 -1
- package/dist/plugins/limits-guard/index.js.map +1 -1
- package/dist/plugins/limits-guard/limit-guard.d.ts +27 -1
- package/dist/plugins/limits-guard/limit-guard.d.ts.map +1 -1
- package/dist/plugins/limits-guard/limit-guard.js +67 -0
- package/dist/plugins/limits-guard/limit-guard.js.map +1 -1
- package/dist/plugins/limits-guard/limit-guard.test.js +65 -1
- package/dist/plugins/limits-guard/limit-guard.test.js.map +1 -1
- package/dist/plugins/limits-guard/limits-guard.integration.test.js +295 -1
- package/dist/plugins/limits-guard/limits-guard.integration.test.js.map +1 -1
- package/dist/plugins/limits-guard/plugin.d.ts +23 -2
- package/dist/plugins/limits-guard/plugin.d.ts.map +1 -1
- package/dist/plugins/limits-guard/plugin.js +107 -2
- package/dist/plugins/limits-guard/plugin.js.map +1 -1
- package/dist/plugins/mailbox/plugin.d.ts.map +1 -1
- package/dist/plugins/mailbox/plugin.js +18 -0
- package/dist/plugins/mailbox/plugin.js.map +1 -1
- package/dist/plugins/session-stats/plugin.d.ts.map +1 -1
- package/dist/plugins/session-stats/plugin.js +5 -1
- package/dist/plugins/session-stats/plugin.js.map +1 -1
- package/package.json +2 -2
- package/src/core/agents/agent.ts +18 -2
- package/src/core/context/state.ts +10 -0
- package/src/core/events/base-event-store.ts +2 -0
- package/src/core/events/metadata-utils.ts +2 -0
- package/src/core/llm/anthropic.test.ts +34 -0
- package/src/core/llm/cache-breakpoints.test.ts +55 -0
- package/src/core/llm/cache-breakpoints.ts +39 -21
- package/src/core/llm/state.ts +25 -11
- package/src/index.ts +3 -3
- package/src/lib/mime.ts +7 -4
- package/src/plugins/agents/plugin.ts +7 -1
- package/src/plugins/context-compact/context-compact.integration.test.ts +62 -0
- package/src/plugins/context-compact/context-compactor.test.ts +6 -0
- package/src/plugins/context-compact/context-compactor.ts +31 -0
- package/src/plugins/limits-guard/config.ts +35 -0
- package/src/plugins/limits-guard/index.ts +3 -3
- package/src/plugins/limits-guard/limit-guard.test.ts +80 -1
- package/src/plugins/limits-guard/limit-guard.ts +98 -1
- package/src/plugins/limits-guard/limits-guard.integration.test.ts +331 -1
- package/src/plugins/limits-guard/plugin.ts +153 -3
- package/src/plugins/mailbox/plugin.ts +18 -0
- package/src/plugins/session-stats/plugin.ts +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compactor.d.ts","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"context-compactor.d.ts","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.ts"],"names":[],"mappings":"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"}
|
|
@@ -165,6 +165,7 @@ export class ContextCompactor {
|
|
|
165
165
|
this.logger.warn('No messages to compact', { sessionId, agentId });
|
|
166
166
|
return Ok({
|
|
167
167
|
compactedMessages: messages,
|
|
168
|
+
originalMessages: [],
|
|
168
169
|
summary: '',
|
|
169
170
|
originalTokens,
|
|
170
171
|
compactedTokens: originalTokens,
|
|
@@ -232,6 +233,7 @@ export class ContextCompactor {
|
|
|
232
233
|
});
|
|
233
234
|
return Ok({
|
|
234
235
|
compactedMessages,
|
|
236
|
+
originalMessages: toCompact,
|
|
235
237
|
summary,
|
|
236
238
|
originalTokens,
|
|
237
239
|
compactedTokens,
|
|
@@ -252,6 +254,7 @@ export function createContextCompactedEvent(sessionId, agentId, result) {
|
|
|
252
254
|
return withSessionId(sessionId, contextEvents.create('context_compacted', {
|
|
253
255
|
agentId,
|
|
254
256
|
compactedContent: result.summary,
|
|
257
|
+
originalMessages: result.originalMessages.map(toDisplayMessage),
|
|
255
258
|
newConversationHistory,
|
|
256
259
|
originalTokens: result.originalTokens,
|
|
257
260
|
compactedTokens: result.compactedTokens,
|
|
@@ -259,4 +262,30 @@ export function createContextCompactedEvent(sessionId, agentId, result) {
|
|
|
259
262
|
historyPath: result.historyPath,
|
|
260
263
|
}));
|
|
261
264
|
}
|
|
265
|
+
/**
|
|
266
|
+
* Convert an LLM message into a display-only conversation message, preserving
|
|
267
|
+
* tool-call and tool-result detail in the rendered content. Used for the
|
|
268
|
+
* compaction "input" snapshot shown in the debug UI — not for reconstruction.
|
|
269
|
+
*/
|
|
270
|
+
function toDisplayMessage(msg) {
|
|
271
|
+
if (msg.role === 'assistant') {
|
|
272
|
+
const parts = [];
|
|
273
|
+
if (msg.content)
|
|
274
|
+
parts.push(msg.content);
|
|
275
|
+
if (msg.toolCalls?.length) {
|
|
276
|
+
for (const tc of msg.toolCalls) {
|
|
277
|
+
parts.push(`[tool call: ${tc.name}(${JSON.stringify(tc.input)})]`);
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
return { role: 'assistant', content: parts.join('\n') };
|
|
281
|
+
}
|
|
282
|
+
if (msg.role === 'tool') {
|
|
283
|
+
const content = typeof msg.content === 'string' ? msg.content : JSON.stringify(msg.content);
|
|
284
|
+
return { role: 'system', content: `[tool result${msg.toolName ? `: ${msg.toolName}` : ''}]\n${content}` };
|
|
285
|
+
}
|
|
286
|
+
return {
|
|
287
|
+
role: msg.role,
|
|
288
|
+
content: typeof msg.content === 'string' ? msg.content : JSON.stringify(msg.content),
|
|
289
|
+
};
|
|
290
|
+
}
|
|
262
291
|
//# sourceMappingURL=context-compactor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compactor.js","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"context-compactor.js","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.ts"],"names":[],"mappings":"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"}
|
|
@@ -238,6 +238,7 @@ describe('createContextCompactedEvent', () => {
|
|
|
238
238
|
{ role: 'system', content: 'summary' },
|
|
239
239
|
{ role: 'user', content: 'recent' },
|
|
240
240
|
],
|
|
241
|
+
originalMessages: [{ role: 'user', content: 'old message' }],
|
|
241
242
|
summary: 'The summary',
|
|
242
243
|
originalTokens: 1000,
|
|
243
244
|
compactedTokens: 200,
|
|
@@ -254,6 +255,8 @@ describe('createContextCompactedEvent', () => {
|
|
|
254
255
|
expect(event.newConversationHistory.length).toBe(2);
|
|
255
256
|
expect(event.newConversationHistory[0].role).toBe('system');
|
|
256
257
|
expect(event.newConversationHistory[0].content).toBe('summary');
|
|
258
|
+
expect(event.originalMessages?.length).toBe(1);
|
|
259
|
+
expect(event.originalMessages?.[0].content).toBe('old message');
|
|
257
260
|
expect(event.timestamp).toBeDefined();
|
|
258
261
|
});
|
|
259
262
|
it('converts tool role to system in history', () => {
|
|
@@ -262,6 +265,7 @@ describe('createContextCompactedEvent', () => {
|
|
|
262
265
|
const toolCallId = generateToolCallId();
|
|
263
266
|
const result = {
|
|
264
267
|
compactedMessages: [{ role: 'tool', content: 'tool result', toolCallId }],
|
|
268
|
+
originalMessages: [],
|
|
265
269
|
summary: '',
|
|
266
270
|
originalTokens: 100,
|
|
267
271
|
compactedTokens: 50,
|
|
@@ -701,6 +705,7 @@ describe('createContextCompactedEvent with historyPath', () => {
|
|
|
701
705
|
compactedMessages: [
|
|
702
706
|
{ role: 'system', content: 'summary' },
|
|
703
707
|
],
|
|
708
|
+
originalMessages: [],
|
|
704
709
|
summary: 'The summary',
|
|
705
710
|
originalTokens: 1000,
|
|
706
711
|
compactedTokens: 200,
|
|
@@ -717,6 +722,7 @@ describe('createContextCompactedEvent with historyPath', () => {
|
|
|
717
722
|
compactedMessages: [
|
|
718
723
|
{ role: 'system', content: 'summary' },
|
|
719
724
|
],
|
|
725
|
+
originalMessages: [],
|
|
720
726
|
summary: 'The summary',
|
|
721
727
|
originalTokens: 1000,
|
|
722
728
|
compactedTokens: 200,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-compactor.test.js","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"context-compactor.test.js","sourceRoot":"","sources":["../../../src/plugins/context-compact/context-compactor.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,5 +19,35 @@ export interface AgentLimits {
|
|
|
19
19
|
maxRepeatedToolCalls?: number;
|
|
20
20
|
/** Maximum consecutive identical text-only responses. Default: 3 */
|
|
21
21
|
maxRepeatedResponses?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Maximum cumulative LLM cost (USD) this agent may spend before it is paused.
|
|
24
|
+
* Spend is summed from `inference_completed` metrics and, unlike the counter
|
|
25
|
+
* limits, is NOT reset on resume. Default: unlimited.
|
|
26
|
+
*/
|
|
27
|
+
maxCost?: number;
|
|
28
|
+
/**
|
|
29
|
+
* Maximum cumulative total tokens (prompt + completion) this agent may consume
|
|
30
|
+
* before it is paused. Useful as a fallback when providers don't report cost.
|
|
31
|
+
* Not reset on resume. Default: unlimited.
|
|
32
|
+
*/
|
|
33
|
+
maxTokens?: number;
|
|
34
|
+
/**
|
|
35
|
+
* Maximum number of context compaction events for this agent before it is paused.
|
|
36
|
+
* Guards against pathological compaction loops. Reset on resume. Default: unlimited.
|
|
37
|
+
*/
|
|
38
|
+
maxCompactions?: number;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Session-wide budget, summed across every agent in the session. Configured via
|
|
42
|
+
* the plugin's session-level config (`pluginConfig`), independent of per-agent
|
|
43
|
+
* limits. All fields optional - defaults applied via resolveSessionLimits().
|
|
44
|
+
*/
|
|
45
|
+
export interface LimitsSessionConfig {
|
|
46
|
+
/** Maximum cumulative LLM cost (USD) across all agents. Default: unlimited */
|
|
47
|
+
maxSessionCost?: number;
|
|
48
|
+
/** Maximum cumulative total tokens across all agents. Default: unlimited */
|
|
49
|
+
maxSessionTokens?: number;
|
|
50
|
+
/** Ratio of the session budget at which a soft warning is emitted. Default: 0.8 */
|
|
51
|
+
softLimitRatio?: number;
|
|
22
52
|
}
|
|
23
53
|
//# sourceMappingURL=config.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/config.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iFAAiF;IACjF,0BAA0B,CAAC,EAAE,MAAM,CAAA;IACnC,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,0DAA0D;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/config.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,iFAAiF;IACjF,0BAA0B,CAAC,EAAE,MAAM,CAAA;IACnC,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,0DAA0D;IAC1D,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,yEAAyE;IACzE,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,kFAAkF;IAClF,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,oEAAoE;IACpE,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB;AAMD;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IACnC,8EAA8E;IAC9E,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,4EAA4E;IAC5E,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,mFAAmF;IACnF,cAAc,CAAC,EAAE,MAAM,CAAA;CACvB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type { AgentLimits } from './config.js';
|
|
1
|
+
export type { AgentLimits, LimitsSessionConfig } from './config.js';
|
|
2
2
|
export { limitsGuardPlugin } from './plugin.js';
|
|
3
|
-
export type { AgentCounters, LimitsAgentConfig, LimitWarningEvent } from './plugin.js';
|
|
4
|
-
export { createAgentCounters, limitsEvents } from './plugin.js';
|
|
3
|
+
export type { AgentCounters, BudgetExceededEvent, LimitsAgentConfig, LimitWarningEvent } from './plugin.js';
|
|
4
|
+
export { createAgentCounters, limitsEvents, sumSessionSpend } from './plugin.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC/C,YAAY,EAAE,aAAa,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC3G,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAE/C,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Returns the worst result: hard_limit > soft_warning > ok.
|
|
5
5
|
*/
|
|
6
|
-
import type { AgentLimits } from '../../plugins/limits-guard/config.js';
|
|
6
|
+
import type { AgentLimits, LimitsSessionConfig } from '../../plugins/limits-guard/config.js';
|
|
7
7
|
import type { AgentCounters } from './plugin.js';
|
|
8
8
|
export interface ResolvedAgentLimits {
|
|
9
9
|
maxTurns: number;
|
|
@@ -14,8 +14,34 @@ export interface ResolvedAgentLimits {
|
|
|
14
14
|
softLimitRatio: number;
|
|
15
15
|
maxRepeatedToolCalls: number;
|
|
16
16
|
maxRepeatedResponses: number;
|
|
17
|
+
maxCost: number;
|
|
18
|
+
maxTokens: number;
|
|
19
|
+
maxCompactions: number;
|
|
17
20
|
}
|
|
18
21
|
export declare function resolveAgentLimits(config?: AgentLimits): ResolvedAgentLimits;
|
|
22
|
+
export interface ResolvedSessionLimits {
|
|
23
|
+
maxSessionCost: number;
|
|
24
|
+
maxSessionTokens: number;
|
|
25
|
+
softLimitRatio: number;
|
|
26
|
+
}
|
|
27
|
+
export declare function resolveSessionLimits(config?: LimitsSessionConfig): ResolvedSessionLimits;
|
|
28
|
+
/** Cumulative spend, either for a single agent or summed across the session. */
|
|
29
|
+
export interface BudgetSpend {
|
|
30
|
+
costSpent: number;
|
|
31
|
+
tokensUsed: number;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Budget check (cost + tokens) shared by per-agent and session-wide budgets.
|
|
35
|
+
*
|
|
36
|
+
* Kept separate from {@link checkLimits} so it can run in `beforeInference` —
|
|
37
|
+
* blocking the *next* call once the budget is exhausted — without also tripping
|
|
38
|
+
* the counter/pattern limits (those are enforced in `afterInference`). Uses
|
|
39
|
+
* float-aware comparisons (no flooring) so sub-dollar budgets behave correctly.
|
|
40
|
+
*/
|
|
41
|
+
export declare function checkBudget(spend: BudgetSpend, costLimit: number, tokenLimit: number, softLimitRatio: number, names: {
|
|
42
|
+
cost: string;
|
|
43
|
+
tokens: string;
|
|
44
|
+
}): LimitCheckResult;
|
|
19
45
|
export type LimitCheckResult = {
|
|
20
46
|
status: 'ok';
|
|
21
47
|
} | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limit-guard.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;
|
|
1
|
+
{"version":3,"file":"limit-guard.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,kCAAkC,CAAA;AACxF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAMhD,MAAM,WAAW,mBAAmB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,0BAA0B,EAAE,MAAM,CAAA;IAClC,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;CACtB;AAiBD,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,mBAAmB,CAe5E;AAMD,MAAM,WAAW,qBAAqB;IACrC,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;CACtB;AAQD,wBAAgB,oBAAoB,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,qBAAqB,CAOxF;AAED,gFAAgF;AAChF,MAAM,WAAW,WAAW;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,WAAW,CAC1B,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACrC,gBAAgB,CAiClB;AAYD,MAAM,MAAM,gBAAgB,GACzB;IAAE,MAAM,EAAE,IAAI,CAAA;CAAE,GAChB;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACvG;IAAE,MAAM,EAAE,YAAY,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAMvG,wBAAgB,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,mBAAmB,GAAG,gBAAgB,CAgFlG;AAMD;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,MAAM,CAYpE"}
|
|
@@ -12,6 +12,10 @@ const DEFAULTS = {
|
|
|
12
12
|
softLimitRatio: 0.8,
|
|
13
13
|
maxRepeatedToolCalls: 3,
|
|
14
14
|
maxRepeatedResponses: 3,
|
|
15
|
+
// Budgets and the compaction cap are opt-in: unset means unlimited.
|
|
16
|
+
maxCost: Number.POSITIVE_INFINITY,
|
|
17
|
+
maxTokens: Number.POSITIVE_INFINITY,
|
|
18
|
+
maxCompactions: Number.POSITIVE_INFINITY,
|
|
15
19
|
};
|
|
16
20
|
export function resolveAgentLimits(config) {
|
|
17
21
|
if (!config)
|
|
@@ -25,8 +29,70 @@ export function resolveAgentLimits(config) {
|
|
|
25
29
|
softLimitRatio: config.softLimitRatio ?? DEFAULTS.softLimitRatio,
|
|
26
30
|
maxRepeatedToolCalls: config.maxRepeatedToolCalls ?? DEFAULTS.maxRepeatedToolCalls,
|
|
27
31
|
maxRepeatedResponses: config.maxRepeatedResponses ?? DEFAULTS.maxRepeatedResponses,
|
|
32
|
+
maxCost: config.maxCost ?? DEFAULTS.maxCost,
|
|
33
|
+
maxTokens: config.maxTokens ?? DEFAULTS.maxTokens,
|
|
34
|
+
maxCompactions: config.maxCompactions ?? DEFAULTS.maxCompactions,
|
|
28
35
|
};
|
|
29
36
|
}
|
|
37
|
+
const SESSION_DEFAULTS = {
|
|
38
|
+
maxSessionCost: Number.POSITIVE_INFINITY,
|
|
39
|
+
maxSessionTokens: Number.POSITIVE_INFINITY,
|
|
40
|
+
softLimitRatio: 0.8,
|
|
41
|
+
};
|
|
42
|
+
export function resolveSessionLimits(config) {
|
|
43
|
+
if (!config)
|
|
44
|
+
return SESSION_DEFAULTS;
|
|
45
|
+
return {
|
|
46
|
+
maxSessionCost: config.maxSessionCost ?? SESSION_DEFAULTS.maxSessionCost,
|
|
47
|
+
maxSessionTokens: config.maxSessionTokens ?? SESSION_DEFAULTS.maxSessionTokens,
|
|
48
|
+
softLimitRatio: config.softLimitRatio ?? SESSION_DEFAULTS.softLimitRatio,
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Budget check (cost + tokens) shared by per-agent and session-wide budgets.
|
|
53
|
+
*
|
|
54
|
+
* Kept separate from {@link checkLimits} so it can run in `beforeInference` —
|
|
55
|
+
* blocking the *next* call once the budget is exhausted — without also tripping
|
|
56
|
+
* the counter/pattern limits (those are enforced in `afterInference`). Uses
|
|
57
|
+
* float-aware comparisons (no flooring) so sub-dollar budgets behave correctly.
|
|
58
|
+
*/
|
|
59
|
+
export function checkBudget(spend, costLimit, tokenLimit, softLimitRatio, names) {
|
|
60
|
+
const checks = [
|
|
61
|
+
{ name: names.cost, current: spend.costSpent, max: costLimit },
|
|
62
|
+
{ name: names.tokens, current: spend.tokensUsed, max: tokenLimit },
|
|
63
|
+
];
|
|
64
|
+
// Hard limits
|
|
65
|
+
for (const check of checks) {
|
|
66
|
+
if (check.current >= check.max) {
|
|
67
|
+
return {
|
|
68
|
+
status: 'hard_limit',
|
|
69
|
+
limitName: check.name,
|
|
70
|
+
currentValue: check.current,
|
|
71
|
+
hardLimit: check.max,
|
|
72
|
+
reason: `${check.name} reached: ${formatBudget(check.current)}/${formatBudget(check.max)}`,
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// Soft warnings
|
|
77
|
+
for (const check of checks) {
|
|
78
|
+
if (check.max !== Number.POSITIVE_INFINITY && check.current >= check.max * softLimitRatio) {
|
|
79
|
+
return {
|
|
80
|
+
status: 'soft_warning',
|
|
81
|
+
limitName: check.name,
|
|
82
|
+
currentValue: check.current,
|
|
83
|
+
hardLimit: check.max,
|
|
84
|
+
message: `Approaching ${check.name} limit: ${formatBudget(check.current)}/${formatBudget(check.max)}`,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return { status: 'ok' };
|
|
89
|
+
}
|
|
90
|
+
/** Format a budget value compactly — 4 decimals for fractional (cost), integer otherwise. */
|
|
91
|
+
function formatBudget(value) {
|
|
92
|
+
if (value === Number.POSITIVE_INFINITY)
|
|
93
|
+
return '∞';
|
|
94
|
+
return Number.isInteger(value) ? String(value) : value.toFixed(4);
|
|
95
|
+
}
|
|
30
96
|
// ============================================================================
|
|
31
97
|
// Check logic
|
|
32
98
|
// ============================================================================
|
|
@@ -37,6 +103,7 @@ export function checkLimits(counters, limits) {
|
|
|
37
103
|
{ name: 'maxToolCalls', current: counters.toolCallCount, max: limits.maxToolCalls },
|
|
38
104
|
{ name: 'maxSpawnedAgents', current: counters.spawnedAgentCount, max: limits.maxSpawnedAgents },
|
|
39
105
|
{ name: 'maxMessagesSent', current: counters.messagesSentCount, max: limits.maxMessagesSent },
|
|
106
|
+
{ name: 'maxCompactions', current: counters.compactionCount, max: limits.maxCompactions },
|
|
40
107
|
];
|
|
41
108
|
for (const check of hardChecks) {
|
|
42
109
|
if (check.current >= check.max) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limit-guard.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"limit-guard.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAuBH,MAAM,QAAQ,GAAwB;IACrC,QAAQ,EAAE,GAAG;IACb,YAAY,EAAE,GAAG;IACjB,0BAA0B,EAAE,CAAC;IAC7B,gBAAgB,EAAE,EAAE;IACpB,eAAe,EAAE,GAAG;IACpB,cAAc,EAAE,GAAG;IACnB,oBAAoB,EAAE,CAAC;IACvB,oBAAoB,EAAE,CAAC;IACvB,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC,iBAAiB;IACjC,SAAS,EAAE,MAAM,CAAC,iBAAiB;IACnC,cAAc,EAAE,MAAM,CAAC,iBAAiB;CACxC,CAAA;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAoB;IACtD,IAAI,CAAC,MAAM;QAAE,OAAO,QAAQ,CAAA;IAC5B,OAAO;QACN,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ;QAC9C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,QAAQ,CAAC,YAAY;QAC1D,0BAA0B,EAAE,MAAM,CAAC,0BAA0B,IAAI,QAAQ,CAAC,0BAA0B;QACpG,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,QAAQ,CAAC,gBAAgB;QACtE,eAAe,EAAE,MAAM,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe;QACnE,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc;QAChE,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,IAAI,QAAQ,CAAC,oBAAoB;QAClF,oBAAoB,EAAE,MAAM,CAAC,oBAAoB,IAAI,QAAQ,CAAC,oBAAoB;QAClF,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,OAAO;QAC3C,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,QAAQ,CAAC,SAAS;QACjD,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,QAAQ,CAAC,cAAc;KAChE,CAAA;AACF,CAAC;AAYD,MAAM,gBAAgB,GAA0B;IAC/C,cAAc,EAAE,MAAM,CAAC,iBAAiB;IACxC,gBAAgB,EAAE,MAAM,CAAC,iBAAiB;IAC1C,cAAc,EAAE,GAAG;CACnB,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,MAA4B;IAChE,IAAI,CAAC,MAAM;QAAE,OAAO,gBAAgB,CAAA;IACpC,OAAO;QACN,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC,cAAc;QACxE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,gBAAgB;QAC9E,cAAc,EAAE,MAAM,CAAC,cAAc,IAAI,gBAAgB,CAAC,cAAc;KACxE,CAAA;AACF,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAC1B,KAAkB,EAClB,SAAiB,EACjB,UAAkB,EAClB,cAAsB,EACtB,KAAuC;IAEvC,MAAM,MAAM,GAA0D;QACrE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE;QAC9D,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE;KAClE,CAAA;IAED,cAAc;IACd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YAChC,OAAO;gBACN,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,YAAY,EAAE,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,aAAa,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;aAC1F,CAAA;QACF,CAAC;IACF,CAAC;IAED,gBAAgB;IAChB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC5B,IAAI,KAAK,CAAC,GAAG,KAAK,MAAM,CAAC,iBAAiB,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,GAAG,cAAc,EAAE,CAAC;YAC3F,OAAO;gBACN,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,YAAY,EAAE,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,OAAO,EAAE,eAAe,KAAK,CAAC,IAAI,WAAW,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;aACrG,CAAA;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,6FAA6F;AAC7F,SAAS,YAAY,CAAC,KAAa;IAClC,IAAI,KAAK,KAAK,MAAM,CAAC,iBAAiB;QAAE,OAAO,GAAG,CAAA;IAClD,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;AAClE,CAAC;AAWD,+EAA+E;AAC/E,cAAc;AACd,+EAA+E;AAE/E,MAAM,UAAU,WAAW,CAAC,QAAuB,EAAE,MAA2B;IAC/E,sCAAsC;IAEtC,MAAM,UAAU,GAA0D;QACzE,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,cAAc,EAAE,GAAG,EAAE,MAAM,CAAC,QAAQ,EAAE;QAC5E,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE,MAAM,CAAC,YAAY,EAAE;QACnF,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE,MAAM,CAAC,gBAAgB,EAAE;QAC/F,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE,MAAM,CAAC,eAAe,EAAE;QAC7F,EAAE,IAAI,EAAE,gBAAgB,EAAE,OAAO,EAAE,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE,MAAM,CAAC,cAAc,EAAE;KACzF,CAAA;IAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YAChC,OAAO;gBACN,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,YAAY,EAAE,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE;aAC9D,CAAA;QACF,CAAC;IACF,CAAC;IAED,sCAAsC;IAEtC,mCAAmC;IACnC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;IACvF,IAAI,iBAAiB,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACtD,OAAO;YACN,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,sBAAsB;YACjC,YAAY,EAAE,iBAAiB;YAC/B,SAAS,EAAE,MAAM,CAAC,oBAAoB;YACtC,MAAM,EAAE,0CAA0C,iBAAiB,SAAS;SAC5E,CAAA;IACF,CAAC;IAED,kCAAkC;IAClC,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;IACvF,IAAI,iBAAiB,IAAI,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACtD,OAAO;YACN,MAAM,EAAE,YAAY;YACpB,SAAS,EAAE,sBAAsB;YACjC,YAAY,EAAE,iBAAiB;YAC/B,SAAS,EAAE,MAAM,CAAC,oBAAoB;YACtC,MAAM,EAAE,yCAAyC,iBAAiB,SAAS;SAC3E,CAAA;IACF,CAAC;IAED,uCAAuC;IACvC,KAAK,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAClF,IAAI,KAAK,CAAC,KAAK,IAAI,MAAM,CAAC,0BAA0B,EAAE,CAAC;YACtD,OAAO;gBACN,MAAM,EAAE,YAAY;gBACpB,SAAS,EAAE,4BAA4B;gBACvC,YAAY,EAAE,KAAK,CAAC,KAAK;gBACzB,SAAS,EAAE,MAAM,CAAC,0BAA0B;gBAC5C,MAAM,EAAE,SAAS,QAAQ,YAAY,KAAK,CAAC,KAAK,mCAAmC,KAAK,CAAC,SAAS,EAAE;aACpG,CAAA;QACF,CAAC;IACF,CAAC;IAED,sCAAsC;IAEtC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAA;IAE3C,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,GAAG,aAAa,CAAC,CAAA;QACvD,IAAI,KAAK,CAAC,OAAO,IAAI,SAAS,EAAE,CAAC;YAChC,OAAO;gBACN,MAAM,EAAE,cAAc;gBACtB,SAAS,EAAE,KAAK,CAAC,IAAI;gBACrB,YAAY,EAAE,KAAK,CAAC,OAAO;gBAC3B,SAAS,EAAE,KAAK,CAAC,GAAG;gBACpB,OAAO,EAAE,eAAe,KAAK,CAAC,IAAI,WAAW,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,GAAG,EAAE;aACzE,CAAA;QACF,CAAC;IACF,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;AACxB,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;;GAGG;AACH,MAAM,UAAU,8BAA8B,CAAC,GAAa;IAC3D,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAA;IAC9B,MAAM,IAAI,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IAChC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrB,KAAK,EAAE,CAAA;QACR,CAAC;aAAM,CAAC;YACP,MAAK;QACN,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAA;AACb,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { describe, expect, it } from 'bun:test';
|
|
2
|
-
import { checkLimits, resolveAgentLimits } from './limit-guard.js';
|
|
2
|
+
import { checkBudget, checkLimits, resolveAgentLimits, resolveSessionLimits } from './limit-guard.js';
|
|
3
3
|
import { createAgentCounters } from './plugin.js';
|
|
4
4
|
describe('resolveAgentLimits', () => {
|
|
5
5
|
it('returns defaults when no config', () => {
|
|
@@ -12,6 +12,10 @@ describe('resolveAgentLimits', () => {
|
|
|
12
12
|
expect(limits.softLimitRatio).toBe(0.8);
|
|
13
13
|
expect(limits.maxRepeatedToolCalls).toBe(3);
|
|
14
14
|
expect(limits.maxRepeatedResponses).toBe(3);
|
|
15
|
+
// Budgets and compaction cap are opt-in (unlimited by default)
|
|
16
|
+
expect(limits.maxCost).toBe(Number.POSITIVE_INFINITY);
|
|
17
|
+
expect(limits.maxTokens).toBe(Number.POSITIVE_INFINITY);
|
|
18
|
+
expect(limits.maxCompactions).toBe(Number.POSITIVE_INFINITY);
|
|
15
19
|
});
|
|
16
20
|
it('returns defaults when empty config', () => {
|
|
17
21
|
const limits = resolveAgentLimits({});
|
|
@@ -117,5 +121,65 @@ describe('checkLimits', () => {
|
|
|
117
121
|
}), defaultLimits);
|
|
118
122
|
expect(result.status).toBe('hard_limit');
|
|
119
123
|
});
|
|
124
|
+
// --- Compaction limit ---
|
|
125
|
+
it('detects maxCompactions hard limit', () => {
|
|
126
|
+
const limits = resolveAgentLimits({ maxCompactions: 5 });
|
|
127
|
+
const result = checkLimits(makeCounters({ compactionCount: 5 }), limits);
|
|
128
|
+
expect(result.status).toBe('hard_limit');
|
|
129
|
+
if (result.status === 'hard_limit') {
|
|
130
|
+
expect(result.limitName).toBe('maxCompactions');
|
|
131
|
+
}
|
|
132
|
+
});
|
|
133
|
+
it('does not cap compactions by default (unlimited)', () => {
|
|
134
|
+
const result = checkLimits(makeCounters({ compactionCount: 9999 }), defaultLimits);
|
|
135
|
+
expect(result.status).toBe('ok');
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
describe('checkBudget', () => {
|
|
139
|
+
const names = { cost: 'maxCost', tokens: 'maxTokens' };
|
|
140
|
+
it('returns ok when under budget', () => {
|
|
141
|
+
const result = checkBudget({ costSpent: 1, tokensUsed: 100 }, 5, 1000, 0.8, names);
|
|
142
|
+
expect(result.status).toBe('ok');
|
|
143
|
+
});
|
|
144
|
+
it('returns ok when unlimited (Infinity)', () => {
|
|
145
|
+
const result = checkBudget({ costSpent: 1_000_000, tokensUsed: 1_000_000 }, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY, 0.8, names);
|
|
146
|
+
expect(result.status).toBe('ok');
|
|
147
|
+
});
|
|
148
|
+
it('detects cost hard limit', () => {
|
|
149
|
+
const result = checkBudget({ costSpent: 5.01, tokensUsed: 0 }, 5, Number.POSITIVE_INFINITY, 0.8, names);
|
|
150
|
+
expect(result.status).toBe('hard_limit');
|
|
151
|
+
if (result.status === 'hard_limit')
|
|
152
|
+
expect(result.limitName).toBe('maxCost');
|
|
153
|
+
});
|
|
154
|
+
it('detects token hard limit', () => {
|
|
155
|
+
const result = checkBudget({ costSpent: 0, tokensUsed: 1000 }, Number.POSITIVE_INFINITY, 1000, 0.8, names);
|
|
156
|
+
expect(result.status).toBe('hard_limit');
|
|
157
|
+
if (result.status === 'hard_limit')
|
|
158
|
+
expect(result.limitName).toBe('maxTokens');
|
|
159
|
+
});
|
|
160
|
+
it('emits soft warning approaching cost budget', () => {
|
|
161
|
+
const result = checkBudget({ costSpent: 4.2, tokensUsed: 0 }, 5, Number.POSITIVE_INFINITY, 0.8, names);
|
|
162
|
+
expect(result.status).toBe('soft_warning');
|
|
163
|
+
if (result.status === 'soft_warning')
|
|
164
|
+
expect(result.limitName).toBe('maxCost');
|
|
165
|
+
});
|
|
166
|
+
it('handles sub-dollar budgets without spurious warnings', () => {
|
|
167
|
+
// floor-based logic would warn at $0 for a $0.50 budget — float-aware must not.
|
|
168
|
+
const result = checkBudget({ costSpent: 0.1, tokensUsed: 0 }, 0.5, Number.POSITIVE_INFINITY, 0.8, names);
|
|
169
|
+
expect(result.status).toBe('ok');
|
|
170
|
+
});
|
|
171
|
+
});
|
|
172
|
+
describe('resolveSessionLimits', () => {
|
|
173
|
+
it('defaults to unlimited', () => {
|
|
174
|
+
const limits = resolveSessionLimits();
|
|
175
|
+
expect(limits.maxSessionCost).toBe(Number.POSITIVE_INFINITY);
|
|
176
|
+
expect(limits.maxSessionTokens).toBe(Number.POSITIVE_INFINITY);
|
|
177
|
+
expect(limits.softLimitRatio).toBe(0.8);
|
|
178
|
+
});
|
|
179
|
+
it('overrides specific values', () => {
|
|
180
|
+
const limits = resolveSessionLimits({ maxSessionCost: 10 });
|
|
181
|
+
expect(limits.maxSessionCost).toBe(10);
|
|
182
|
+
expect(limits.maxSessionTokens).toBe(Number.POSITIVE_INFINITY);
|
|
183
|
+
});
|
|
120
184
|
});
|
|
121
185
|
//# sourceMappingURL=limit-guard.test.js.map
|