@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":"limit-guard.test.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,UAAU,CAAA;AAC/C,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"limit-guard.test.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limit-guard.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,15 @@ import { describe, expect, it } from 'bun:test';
|
|
|
2
2
|
import { AgentId } from '../../core/agents/schema.js';
|
|
3
3
|
import { agentEvents } from '../../core/agents/state.js';
|
|
4
4
|
import { MockLLMProvider } from '../../core/llm/mock.js';
|
|
5
|
+
import { ModelId } from '../../core/llm/schema.js';
|
|
6
|
+
import { llmEvents } from '../../core/llm/state.js';
|
|
5
7
|
import { selectPluginState } from '../../core/sessions/reducer.js';
|
|
6
8
|
import { ToolCallId } from '../../core/tools/schema.js';
|
|
9
|
+
import { contextCompactPlugin } from '../../plugins/context-compact/index.js';
|
|
10
|
+
import { getAgentMailbox, selectMailboxState } from '../../plugins/mailbox/query.js';
|
|
11
|
+
import { mailboxEvents } from '../../plugins/mailbox/state.js';
|
|
7
12
|
import { createMultiAgentPreset, createTestPreset, TestHarness } from '../../testing/index.js';
|
|
8
|
-
import { limitsGuardPlugin } from './plugin.js';
|
|
13
|
+
import { limitsEvents, limitsGuardPlugin } from './plugin.js';
|
|
9
14
|
function createLimitsHarness(options) {
|
|
10
15
|
return new TestHarness({ ...options, systemPlugins: [limitsGuardPlugin] });
|
|
11
16
|
}
|
|
@@ -374,5 +379,294 @@ describe('limits-guard plugin', () => {
|
|
|
374
379
|
await harness.shutdown();
|
|
375
380
|
});
|
|
376
381
|
});
|
|
382
|
+
// =========================================================================
|
|
383
|
+
// budgets (cost / tokens)
|
|
384
|
+
// =========================================================================
|
|
385
|
+
describe('budgets', () => {
|
|
386
|
+
it('agent exceeding cost budget → paused with budget_exceeded event', async () => {
|
|
387
|
+
let n = 0;
|
|
388
|
+
const harness = createLimitsHarness({
|
|
389
|
+
presets: [createTestPreset({
|
|
390
|
+
orchestratorSystem: 'Test agent.',
|
|
391
|
+
// $0.50 per call, $1.00 budget → pauses before the 3rd call.
|
|
392
|
+
orchestratorPlugins: [limitsGuardPlugin.configureAgent({ limits: { maxCost: 1.0, maxTurns: 100 } })],
|
|
393
|
+
})],
|
|
394
|
+
mockHandler: () => {
|
|
395
|
+
n++;
|
|
396
|
+
return {
|
|
397
|
+
content: null,
|
|
398
|
+
toolCalls: [{ id: ToolCallId(`tc${n}`), name: 'tell_user', input: { message: `Turn ${n}` } }],
|
|
399
|
+
finishReason: 'stop',
|
|
400
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(0.5),
|
|
401
|
+
};
|
|
402
|
+
},
|
|
403
|
+
});
|
|
404
|
+
const session = await harness.createSession('test');
|
|
405
|
+
const entryAgentId = session.getEntryAgentId();
|
|
406
|
+
await session.sendMessage('Start');
|
|
407
|
+
await waitForAgentPaused(session, entryAgentId);
|
|
408
|
+
expect(session.state.agents.get(entryAgentId).status).toBe('paused');
|
|
409
|
+
const counters = selectPluginState(session.state, 'agentLimits')?.get(entryAgentId);
|
|
410
|
+
expect(counters.costSpent).toBeGreaterThanOrEqual(1.0);
|
|
411
|
+
const budgetEvents = await session.getEventsByType(limitsEvents, 'budget_exceeded');
|
|
412
|
+
const evt = budgetEvents.find(e => e.agentId === entryAgentId);
|
|
413
|
+
expect(evt).toBeDefined();
|
|
414
|
+
expect(evt.scope).toBe('agent');
|
|
415
|
+
expect(evt.limitName).toBe('maxCost');
|
|
416
|
+
await harness.shutdown();
|
|
417
|
+
});
|
|
418
|
+
it('costSpent is preserved across resume — budget cannot be bypassed by pausing', async () => {
|
|
419
|
+
let n = 0;
|
|
420
|
+
const harness = createLimitsHarness({
|
|
421
|
+
presets: [createTestPreset({
|
|
422
|
+
orchestratorSystem: 'Test agent.',
|
|
423
|
+
orchestratorPlugins: [limitsGuardPlugin.configureAgent({ limits: { maxCost: 1.0, maxTurns: 100 } })],
|
|
424
|
+
})],
|
|
425
|
+
mockHandler: () => {
|
|
426
|
+
n++;
|
|
427
|
+
return {
|
|
428
|
+
content: null,
|
|
429
|
+
toolCalls: [{ id: ToolCallId(`tc${n}`), name: 'tell_user', input: { message: `Turn ${n}` } }],
|
|
430
|
+
finishReason: 'stop',
|
|
431
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(0.5),
|
|
432
|
+
};
|
|
433
|
+
},
|
|
434
|
+
});
|
|
435
|
+
const session = await harness.createSession('test');
|
|
436
|
+
const entryAgentId = session.getEntryAgentId();
|
|
437
|
+
await session.sendMessage('Start');
|
|
438
|
+
await waitForAgentPaused(session, entryAgentId);
|
|
439
|
+
const before = selectPluginState(session.state, 'agentLimits')?.get(entryAgentId);
|
|
440
|
+
expect(before).toBeDefined();
|
|
441
|
+
expect(before.costSpent).toBeGreaterThanOrEqual(1.0);
|
|
442
|
+
await session.callPluginMethod('agents.resume', { agentId: String(entryAgentId) });
|
|
443
|
+
// Budget is still exhausted → agent pauses again immediately without inferring.
|
|
444
|
+
await waitForAgentPaused(session, entryAgentId);
|
|
445
|
+
const after = selectPluginState(session.state, 'agentLimits')?.get(entryAgentId);
|
|
446
|
+
expect(after).toBeDefined();
|
|
447
|
+
// Anti-looping counter reset…
|
|
448
|
+
expect(after.inferenceCount).toBe(0);
|
|
449
|
+
// …but spend preserved, so the cap is not bypassable.
|
|
450
|
+
expect(after.costSpent).toBeGreaterThanOrEqual(before.costSpent);
|
|
451
|
+
await harness.shutdown();
|
|
452
|
+
});
|
|
453
|
+
it('child pausing on budget → parent is notified via a child-paused message', async () => {
|
|
454
|
+
let orchestratorCalls = 0;
|
|
455
|
+
let workerCalls = 0;
|
|
456
|
+
const harness = createLimitsHarness({
|
|
457
|
+
presets: [createTestPreset({
|
|
458
|
+
orchestratorSystem: 'Orchestrator agent.',
|
|
459
|
+
agents: [{
|
|
460
|
+
name: 'worker',
|
|
461
|
+
system: 'Worker agent.',
|
|
462
|
+
tools: [],
|
|
463
|
+
agents: [],
|
|
464
|
+
// $0.50 per call, $0.50 budget → pauses at the 2nd inference's
|
|
465
|
+
// beforeInference (after one completed call spent the budget).
|
|
466
|
+
plugins: [limitsGuardPlugin.configureAgent({ limits: { maxCost: 0.5, maxTurns: 100 } })],
|
|
467
|
+
}],
|
|
468
|
+
})],
|
|
469
|
+
mockHandler: (request) => {
|
|
470
|
+
// Worker: keep spending until the budget pauses it.
|
|
471
|
+
if (request.systemPrompt.includes('Worker agent.')) {
|
|
472
|
+
workerCalls++;
|
|
473
|
+
return {
|
|
474
|
+
content: null,
|
|
475
|
+
toolCalls: [{ id: ToolCallId(`w${workerCalls}`), name: 'tell_user', input: { message: `Work ${workerCalls}` } }],
|
|
476
|
+
finishReason: 'stop',
|
|
477
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(0.5),
|
|
478
|
+
};
|
|
479
|
+
}
|
|
480
|
+
// Orchestrator: spawn the worker exactly once, then idle.
|
|
481
|
+
orchestratorCalls++;
|
|
482
|
+
if (orchestratorCalls === 1) {
|
|
483
|
+
return {
|
|
484
|
+
content: null,
|
|
485
|
+
toolCalls: [{ id: ToolCallId('spawn'), name: 'start_worker', input: { message: 'Do work' } }],
|
|
486
|
+
finishReason: 'stop',
|
|
487
|
+
metrics: MockLLMProvider.defaultMetrics(),
|
|
488
|
+
};
|
|
489
|
+
}
|
|
490
|
+
return { content: 'Waiting', toolCalls: [], finishReason: 'stop', metrics: MockLLMProvider.defaultMetrics() };
|
|
491
|
+
},
|
|
492
|
+
});
|
|
493
|
+
const session = await harness.createSession('test');
|
|
494
|
+
await session.sendMessage('Start');
|
|
495
|
+
await waitForAgentPaused(session, AgentId('worker_1'));
|
|
496
|
+
const orchestratorId = session.getEntryAgentId();
|
|
497
|
+
// The mailbox plugin's onPause hook reports the pause to the parent.
|
|
498
|
+
// onPause runs *after* the agent_paused event (which flips status to
|
|
499
|
+
// 'paused'), so poll for the notification.
|
|
500
|
+
const findNotice = async () => (await session.getEventsByType(mailboxEvents, 'mailbox_message')).find(m => m.toAgentId === orchestratorId
|
|
501
|
+
&& m.message.from === AgentId('worker_1')
|
|
502
|
+
&& m.message.content.includes('<child-paused')
|
|
503
|
+
&& m.message.content.includes('worker_1'));
|
|
504
|
+
let notice = await findNotice();
|
|
505
|
+
const deadline = Date.now() + 5000;
|
|
506
|
+
while (!notice && Date.now() < deadline) {
|
|
507
|
+
await new Promise(r => setTimeout(r, 20));
|
|
508
|
+
notice = await findNotice();
|
|
509
|
+
}
|
|
510
|
+
expect(notice).toBeDefined();
|
|
511
|
+
await harness.shutdown();
|
|
512
|
+
});
|
|
513
|
+
it('child-paused notice is actually consumed by a parent that already went idle', async () => {
|
|
514
|
+
// Regression guard for the lifecycle: a parent that finished its work is
|
|
515
|
+
// NOT in a terminal "complete" state — it's persisted as `pending` with an
|
|
516
|
+
// empty mailbox. When the child pauses and delivers <child-paused>, the
|
|
517
|
+
// dequeue check flips the parent's decide() from "complete" back to "infer",
|
|
518
|
+
// so the parent wakes and reads the message rather than leaving it unconsumed.
|
|
519
|
+
let workerCalls = 0;
|
|
520
|
+
let orchestratorSawChildPaused = false;
|
|
521
|
+
const requestHasChildPaused = (request) => request.messages.some((m) => {
|
|
522
|
+
const c = typeof m.content === 'string' ? m.content : JSON.stringify(m.content);
|
|
523
|
+
return c.includes('<child-paused');
|
|
524
|
+
});
|
|
525
|
+
const harness = createLimitsHarness({
|
|
526
|
+
presets: [createTestPreset({
|
|
527
|
+
orchestratorSystem: 'Orchestrator agent.',
|
|
528
|
+
agents: [{
|
|
529
|
+
name: 'worker',
|
|
530
|
+
system: 'Worker agent.',
|
|
531
|
+
tools: [],
|
|
532
|
+
agents: [],
|
|
533
|
+
plugins: [limitsGuardPlugin.configureAgent({ limits: { maxCost: 0.5, maxTurns: 100 } })],
|
|
534
|
+
}],
|
|
535
|
+
})],
|
|
536
|
+
mockHandler: (request) => {
|
|
537
|
+
if (request.systemPrompt.includes('Worker agent.')) {
|
|
538
|
+
workerCalls++;
|
|
539
|
+
return {
|
|
540
|
+
content: null,
|
|
541
|
+
toolCalls: [{ id: ToolCallId(`w${workerCalls}`), name: 'tell_user', input: { message: `Work ${workerCalls}` } }],
|
|
542
|
+
finishReason: 'stop',
|
|
543
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(0.5),
|
|
544
|
+
};
|
|
545
|
+
}
|
|
546
|
+
// Orchestrator: spawn the worker once, then go idle. Any later wake-up
|
|
547
|
+
// is driven by an incoming message — record if it carried the notice.
|
|
548
|
+
if (requestHasChildPaused(request))
|
|
549
|
+
orchestratorSawChildPaused = true;
|
|
550
|
+
if (workerCalls === 0) {
|
|
551
|
+
return {
|
|
552
|
+
content: null,
|
|
553
|
+
toolCalls: [{ id: ToolCallId('spawn'), name: 'start_worker', input: { message: 'Do work' } }],
|
|
554
|
+
finishReason: 'stop',
|
|
555
|
+
metrics: MockLLMProvider.defaultMetrics(),
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
return { content: 'Acknowledged', toolCalls: [], finishReason: 'stop', metrics: MockLLMProvider.defaultMetrics() };
|
|
559
|
+
},
|
|
560
|
+
});
|
|
561
|
+
const session = await harness.createSession('test');
|
|
562
|
+
await session.sendMessage('Start');
|
|
563
|
+
await waitForAgentPaused(session, AgentId('worker_1'));
|
|
564
|
+
// The parent should wake from idle and run an inference that includes the
|
|
565
|
+
// <child-paused> message — proving the notice is consumed, not orphaned.
|
|
566
|
+
const deadline = Date.now() + 5000;
|
|
567
|
+
while (!orchestratorSawChildPaused && Date.now() < deadline) {
|
|
568
|
+
await new Promise(r => setTimeout(r, 20));
|
|
569
|
+
}
|
|
570
|
+
expect(orchestratorSawChildPaused).toBe(true);
|
|
571
|
+
// And the message is marked consumed in the parent's mailbox.
|
|
572
|
+
const orchestratorId = session.getEntryAgentId();
|
|
573
|
+
const mailbox = getAgentMailbox(selectMailboxState(session.state), orchestratorId);
|
|
574
|
+
const childPausedMsg = mailbox.find((m) => m.content.includes('<child-paused'));
|
|
575
|
+
expect(childPausedMsg).toBeDefined();
|
|
576
|
+
expect(childPausedMsg.consumed).toBe(true);
|
|
577
|
+
await harness.shutdown();
|
|
578
|
+
});
|
|
579
|
+
it('compaction (auxiliary inference) cost counts toward the budget', async () => {
|
|
580
|
+
// The compaction summarization is a real, billed LLM call routed through
|
|
581
|
+
// runAuxiliaryInference → auxiliary_inference_completed. It must be charged
|
|
582
|
+
// against the cost budget, otherwise an agent could spend unboundedly on
|
|
583
|
+
// compaction without ever tripping its cap.
|
|
584
|
+
const REGULAR_COST = 0.1;
|
|
585
|
+
const SUMMARY_COST = 5.0;
|
|
586
|
+
// Compaction request detection: inline compaction appends a trailing user
|
|
587
|
+
// message containing the summarization marker.
|
|
588
|
+
const isSummarizationRequest = (request) => {
|
|
589
|
+
const last = request.messages[request.messages.length - 1];
|
|
590
|
+
if (!last || last.role !== 'user')
|
|
591
|
+
return false;
|
|
592
|
+
const content = typeof last.content === 'string' ? last.content : JSON.stringify(last.content);
|
|
593
|
+
return content.includes('[CONTEXT COMPACTION REQUEST]');
|
|
594
|
+
};
|
|
595
|
+
const harness = new TestHarness({
|
|
596
|
+
systemPlugins: [contextCompactPlugin, limitsGuardPlugin],
|
|
597
|
+
presets: [createTestPreset({
|
|
598
|
+
orchestratorSystem: 'Test agent.',
|
|
599
|
+
plugins: [
|
|
600
|
+
contextCompactPlugin.configure({
|
|
601
|
+
compaction: { model: ModelId('mock'), maxTokens: 10, keepRecentMessages: 2 },
|
|
602
|
+
}),
|
|
603
|
+
],
|
|
604
|
+
// Budget large enough to survive the cheap regular turns but small
|
|
605
|
+
// enough that one expensive summarization call blows past it.
|
|
606
|
+
orchestratorPlugins: [
|
|
607
|
+
limitsGuardPlugin.configureAgent({ limits: { maxCost: 2.0, maxTurns: 100 } }),
|
|
608
|
+
],
|
|
609
|
+
})],
|
|
610
|
+
mockHandler: (request) => {
|
|
611
|
+
if (isSummarizationRequest(request)) {
|
|
612
|
+
return {
|
|
613
|
+
content: 'Summary of conversation so far.',
|
|
614
|
+
toolCalls: [],
|
|
615
|
+
finishReason: 'stop',
|
|
616
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(SUMMARY_COST),
|
|
617
|
+
};
|
|
618
|
+
}
|
|
619
|
+
return {
|
|
620
|
+
content: 'Agent response with some content to increase token count.',
|
|
621
|
+
toolCalls: [],
|
|
622
|
+
finishReason: 'stop',
|
|
623
|
+
metrics: MockLLMProvider.defaultMetricsWithCost(REGULAR_COST),
|
|
624
|
+
};
|
|
625
|
+
},
|
|
626
|
+
});
|
|
627
|
+
const session = await harness.createSession('test');
|
|
628
|
+
const entryAgentId = session.getEntryAgentId();
|
|
629
|
+
// Returns once the agent is either idle or paused — used because we don't
|
|
630
|
+
// know up front whether the compaction cost trips the budget on the same
|
|
631
|
+
// turn (depends on beforeInference hook ordering) or on the next one.
|
|
632
|
+
const waitForIdleOrPaused = async (timeoutMs = 10000) => {
|
|
633
|
+
const deadline = Date.now() + timeoutMs;
|
|
634
|
+
while (Date.now() < deadline) {
|
|
635
|
+
const st = session.state.agents.get(entryAgentId);
|
|
636
|
+
if (st?.status === 'paused')
|
|
637
|
+
return 'paused';
|
|
638
|
+
if (st?.status === 'pending' && st.pendingToolCalls.length === 0 && st.pendingToolResults.length === 0) {
|
|
639
|
+
return 'idle';
|
|
640
|
+
}
|
|
641
|
+
await new Promise(r => setTimeout(r, 10));
|
|
642
|
+
}
|
|
643
|
+
throw new Error('waitForIdleOrPaused timed out');
|
|
644
|
+
};
|
|
645
|
+
await session.sendAndWaitForIdle('First message');
|
|
646
|
+
await session.sendAndWaitForIdle('Second message');
|
|
647
|
+
// Third message triggers compaction (the expensive summarization call).
|
|
648
|
+
// It may pause on this turn or settle idle and pause on the next one.
|
|
649
|
+
await session.sendMessage('Third message to trigger compaction');
|
|
650
|
+
if (await waitForIdleOrPaused() === 'idle') {
|
|
651
|
+
await session.sendMessage('Fourth message');
|
|
652
|
+
}
|
|
653
|
+
await waitForAgentPaused(session, entryAgentId);
|
|
654
|
+
// Compaction genuinely ran and was billed.
|
|
655
|
+
const auxEvents = await session.getEventsByType(llmEvents, 'auxiliary_inference_completed');
|
|
656
|
+
expect(auxEvents.some((e) => e.metrics.cost === SUMMARY_COST)).toBe(true);
|
|
657
|
+
// The summarization cost is reflected in the agent's tracked spend…
|
|
658
|
+
const counters = selectPluginState(session.state, 'agentLimits')?.get(entryAgentId);
|
|
659
|
+
expect(counters).toBeDefined();
|
|
660
|
+
expect(counters.costSpent).toBeGreaterThanOrEqual(SUMMARY_COST);
|
|
661
|
+
// …and it tripped the cost budget (the regular turns alone, at 0.1 each,
|
|
662
|
+
// could never reach the 2.0 cap on their own here).
|
|
663
|
+
const budgetEvents = await session.getEventsByType(limitsEvents, 'budget_exceeded');
|
|
664
|
+
const evt = budgetEvents.find((e) => e.agentId === entryAgentId);
|
|
665
|
+
expect(evt).toBeDefined();
|
|
666
|
+
expect(evt.scope).toBe('agent');
|
|
667
|
+
expect(evt.limitName).toBe('maxCost');
|
|
668
|
+
await harness.shutdown();
|
|
669
|
+
});
|
|
670
|
+
});
|
|
377
671
|
});
|
|
378
672
|
//# sourceMappingURL=limits-guard.integration.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"limits-guard.integration.test.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limits-guard.integration.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"limits-guard.integration.test.js","sourceRoot":"","sources":["../../../src/plugins/limits-guard/limits-guard.integration.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import type { AgentId } from '../../core/agents/schema.js';
|
|
2
2
|
import type { SessionState } from '../../core/sessions/state.js';
|
|
3
|
-
import type { AgentLimits } from './config.js';
|
|
3
|
+
import type { AgentLimits, LimitsSessionConfig } from './config.js';
|
|
4
|
+
import { type BudgetSpend } from './limit-guard.js';
|
|
4
5
|
export interface AgentCounters {
|
|
5
6
|
inferenceCount: number;
|
|
6
7
|
toolCallCount: number;
|
|
7
8
|
spawnedAgentCount: number;
|
|
8
9
|
messagesSentCount: number;
|
|
10
|
+
/** Number of context compaction events for this agent. */
|
|
11
|
+
compactionCount: number;
|
|
12
|
+
/** Cumulative LLM cost (USD) summed from inference metrics. NOT reset on resume. */
|
|
13
|
+
costSpent: number;
|
|
14
|
+
/** Cumulative total tokens (prompt + completion). NOT reset on resume. */
|
|
15
|
+
tokensUsed: number;
|
|
9
16
|
/** Tool name → consecutive failure count + last error message. Reset on success. */
|
|
10
17
|
consecutiveToolFailures: Record<string, {
|
|
11
18
|
count: number;
|
|
@@ -17,6 +24,8 @@ export interface AgentCounters {
|
|
|
17
24
|
recentResponseHashes: string[];
|
|
18
25
|
}
|
|
19
26
|
export declare const createAgentCounters: () => AgentCounters;
|
|
27
|
+
/** Sum cost + tokens across all agents in the session (for the session-wide budget). */
|
|
28
|
+
export declare function sumSessionSpend(limits: Map<AgentId, AgentCounters>): BudgetSpend;
|
|
20
29
|
/**
|
|
21
30
|
* Extract agent counters from session state (for external consumers).
|
|
22
31
|
*/
|
|
@@ -30,10 +39,22 @@ export declare const limitsEvents: import("../../core/events/types.js").EventsFa
|
|
|
30
39
|
hardLimit: z.ZodNumber;
|
|
31
40
|
message: z.ZodString;
|
|
32
41
|
}, z.core.$strip>;
|
|
42
|
+
budget_exceeded: z.ZodObject<{
|
|
43
|
+
agentId: z.core.$ZodBranded<z.ZodString, "AgentId", "out">;
|
|
44
|
+
scope: z.ZodEnum<{
|
|
45
|
+
agent: "agent";
|
|
46
|
+
session: "session";
|
|
47
|
+
}>;
|
|
48
|
+
limitName: z.ZodString;
|
|
49
|
+
spent: z.ZodNumber;
|
|
50
|
+
limit: z.ZodNumber;
|
|
51
|
+
message: z.ZodString;
|
|
52
|
+
}, z.core.$strip>;
|
|
33
53
|
}>;
|
|
34
54
|
export type LimitWarningEvent = (typeof limitsEvents)['Events']['limit_warning'];
|
|
55
|
+
export type BudgetExceededEvent = (typeof limitsEvents)['Events']['budget_exceeded'];
|
|
35
56
|
export interface LimitsAgentConfig {
|
|
36
57
|
limits?: AgentLimits;
|
|
37
58
|
}
|
|
38
|
-
export declare const limitsGuardPlugin: import("../../core/plugins/plugin-builder.js").PluginDefinition<"limits-guard",
|
|
59
|
+
export declare const limitsGuardPlugin: import("../../core/plugins/plugin-builder.js").PluginDefinition<"limits-guard", LimitsSessionConfig, LimitsAgentConfig, {}, {}>;
|
|
39
60
|
//# sourceMappingURL=plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/plugins/limits-guard/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAA;AAMtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAI5D,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AACnE,OAAO,EACN,KAAK,WAAW,EAMhB,MAAM,kBAAkB,CAAA;AAMzB,MAAM,WAAW,aAAa;IAC7B,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,iBAAiB,EAAE,MAAM,CAAA;IACzB,iBAAiB,EAAE,MAAM,CAAA;IACzB,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAA;IACvB,oFAAoF;IACpF,SAAS,EAAE,MAAM,CAAA;IACjB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAA;IAClB,oFAAoF;IACpF,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC7E,2EAA2E;IAC3E,oBAAoB,EAAE,MAAM,EAAE,CAAA;IAC9B,8FAA8F;IAC9F,oBAAoB,EAAE,MAAM,EAAE,CAAA;CAC9B;AAED,eAAO,MAAM,mBAAmB,QAAO,aAWrC,CAAA;AAEF,wFAAwF;AACxF,wBAAgB,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,GAAG,WAAW,CAQhF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,aAAa,CAE/F;AAMD,OAAO,CAAC,MAAM,QAAQ,CAAA;AAItB,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;EAoBvB,CAAA;AAEF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,eAAe,CAAC,CAAA;AAChF,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC,iBAAiB,CAAC,CAAA;AA0BpF,MAAM,WAAW,iBAAiB;IACjC,MAAM,CAAC,EAAE,WAAW,CAAA;CACpB;AAED,eAAO,MAAM,iBAAiB,6HAgUrB,CAAA"}
|