@wrongstack/core 0.77.0 → 0.84.1
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/{agent-bridge-EWdqs8v6.d.ts → agent-bridge-C9P_HPez.d.ts} +2 -2
- package/dist/{agent-subagent-runner-D8qW8OSC.d.ts → agent-subagent-runner-2Aq0jOSj.d.ts} +107 -102
- package/dist/{compactor-D_ExJajC.d.ts → compactor-CJq7LQev.d.ts} +3 -3
- package/dist/{config-Dy0CK_o6.d.ts → config-_DZ7dN-T.d.ts} +77 -75
- package/dist/{context-y87Jc5ei.d.ts → context-ToHAp4-U.d.ts} +119 -90
- package/dist/coordination/index.d.ts +16 -16
- package/dist/coordination/index.js +318 -37
- package/dist/coordination/index.js.map +1 -1
- package/dist/defaults/index.d.ts +32 -32
- package/dist/defaults/index.js +433 -81
- package/dist/defaults/index.js.map +1 -1
- package/dist/{director-state-BmYi3DGA.d.ts → director-state-CgIc30qi.d.ts} +19 -19
- package/dist/{events-CYaoLN5_.d.ts → events-DnRqXaZ3.d.ts} +43 -42
- package/dist/execution/index.d.ts +53 -53
- package/dist/execution/index.js +72 -29
- package/dist/execution/index.js.map +1 -1
- package/dist/extension/index.d.ts +9 -9
- package/dist/extension/index.js +8 -1
- package/dist/extension/index.js.map +1 -1
- package/dist/{goal-store-C7jcumEh.d.ts → goal-store-DvWLNu52.d.ts} +4 -4
- package/dist/{index-DIxjTOga.d.ts → index-BNOLadHw.d.ts} +28 -28
- package/dist/{index-Dsda0uCn.d.ts → index-N0_c4bHQ.d.ts} +45 -45
- package/dist/index.d.ts +167 -167
- package/dist/index.js +617 -155
- package/dist/index.js.map +1 -1
- package/dist/infrastructure/index.d.ts +9 -9
- package/dist/infrastructure/index.js +13 -5
- package/dist/infrastructure/index.js.map +1 -1
- package/dist/kernel/index.d.ts +14 -14
- package/dist/kernel/index.js +7 -0
- package/dist/kernel/index.js.map +1 -1
- package/dist/logger-B72yyPc6.d.ts +12 -0
- package/dist/{logger-BppKxDqZ.d.ts → logger-C_27pj9i.d.ts} +6 -7
- package/dist/{mcp-servers-T0O6UN_w.d.ts → mcp-servers-Dck3T85_.d.ts} +20 -20
- package/dist/{mode-BO4SEUIv.d.ts → mode-CHo2XtHs.d.ts} +4 -4
- package/dist/models/index.d.ts +10 -10
- package/dist/models/index.js +8 -2
- package/dist/models/index.js.map +1 -1
- package/dist/{models-registry-BcYJDKLm.d.ts → models-registry-Be3osGt5.d.ts} +28 -28
- package/dist/{models-registry-Cuq1C8V9.d.ts → models-registry-Boz639EI.d.ts} +12 -12
- package/dist/{multi-agent-coordinator-DpbG3wiy.d.ts → multi-agent-coordinator-DllpCVkF.d.ts} +12 -12
- package/dist/{null-fleet-bus-u5ys3lW_.d.ts → null-fleet-bus-BY0AN-sr.d.ts} +121 -121
- package/dist/observability/index.d.ts +41 -41
- package/dist/observability/index.js.map +1 -1
- package/dist/{observability-BhnVLBLS.d.ts → observability-CoSNZdhX.d.ts} +4 -4
- package/dist/{parallel-eternal-engine-Dn0P8Pbj.d.ts → parallel-eternal-engine-D402RASp.d.ts} +49 -49
- package/dist/{path-resolver-B32v2JIq.d.ts → path-resolver-UPFTsDyD.d.ts} +6 -6
- package/dist/{permission-V5BLOrY6.d.ts → permission-14CChMmO.d.ts} +10 -8
- package/dist/{permission-policy-CBVx-d-8.d.ts → permission-policy-gW5htOo1.d.ts} +7 -7
- package/dist/{plan-templates-BcUwLlMQ.d.ts → plan-templates-DRvPgkfZ.d.ts} +65 -32
- package/dist/{provider-runner-CSi_7l0h.d.ts → provider-runner-COAJM8tC.d.ts} +6 -6
- package/dist/{retry-policy-CG3qvH_e.d.ts → retry-policy-DSu6O6rD.d.ts} +4 -4
- package/dist/sdd/index.d.ts +47 -47
- package/dist/sdd/index.js +47 -22
- package/dist/sdd/index.js.map +1 -1
- package/dist/{secret-scrubber-7rSC_emZ.d.ts → secret-scrubber-yGBFQYju.d.ts} +10 -2
- package/dist/security/index.d.ts +7 -7
- package/dist/security/index.js +15 -8
- package/dist/security/index.js.map +1 -1
- package/dist/{selector-RvBR_YRW.d.ts → selector-11-fm95U.d.ts} +2 -2
- package/dist/{session-event-bridge-CDHxcmQU.d.ts → session-event-bridge-D0u-x576.d.ts} +7 -7
- package/dist/{session-reader-BIpwM60D.d.ts → session-reader-BQU-toaN.d.ts} +23 -23
- package/dist/{skill-CxuWrsKK.d.ts → skill-BJeF2DwY.d.ts} +1 -1
- package/dist/skills/index.d.ts +9 -9
- package/dist/skills/index.js +15 -3
- package/dist/skills/index.js.map +1 -1
- package/dist/storage/index.d.ts +15 -15
- package/dist/storage/index.js +378 -76
- package/dist/storage/index.js.map +1 -1
- package/dist/{system-prompt-CA11g6Jo.d.ts → system-prompt-C0rLCeyn.d.ts} +16 -11
- package/dist/{task-graph-D1YQbpxF.d.ts → task-graph-CikNdRTG.d.ts} +22 -22
- package/dist/types/index.d.ts +26 -26
- package/dist/types/index.js +53 -17
- package/dist/types/index.js.map +1 -1
- package/dist/utils/index.d.ts +57 -45
- package/dist/utils/index.js +66 -12
- package/dist/utils/index.js.map +1 -1
- package/dist/{wstack-paths-D7evAFWM.d.ts → wstack-paths-BQMvEllz.d.ts} +2 -2
- package/package.json +1 -1
- package/dist/logger-DDd5C--Z.d.ts +0 -12
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { c as AgentPhase, b as AgentDefinition, d as DefaultMultiAgentCoordinator, f as DispatchClassifier } from './multi-agent-coordinator-
|
|
2
|
-
import { F as FleetBus, r as FleetUsage, L as SubagentConfig, s as FleetUsageAggregator, X as TaskResult, o as CoordinatorStatus, Y as TaskSpec, u as MultiAgentConfig, U as SubagentRunner } from './agent-subagent-runner-
|
|
3
|
-
import { B as SessionWriter, Q as Tool, y as SessionStore } from './context-
|
|
4
|
-
import { B as BrainArbiter, E as EventBus } from './events-
|
|
1
|
+
import { c as AgentPhase, b as AgentDefinition, d as DefaultMultiAgentCoordinator, f as DispatchClassifier } from './multi-agent-coordinator-DllpCVkF.js';
|
|
2
|
+
import { F as FleetBus, r as FleetUsage, L as SubagentConfig, s as FleetUsageAggregator, X as TaskResult, o as CoordinatorStatus, Y as TaskSpec, u as MultiAgentConfig, U as SubagentRunner } from './agent-subagent-runner-2Aq0jOSj.js';
|
|
3
|
+
import { B as SessionWriter, Q as Tool, y as SessionStore } from './context-ToHAp4-U.js';
|
|
4
|
+
import { B as BrainArbiter, E as EventBus } from './events-DnRqXaZ3.js';
|
|
5
5
|
import { EventEmitter } from 'node:events';
|
|
6
|
-
import { a as DirectorStateSnapshot } from './director-state-
|
|
7
|
-
import { r as ModelMatrixEntry } from './config-
|
|
8
|
-
import { I as InMemoryAgentBridge } from './agent-bridge-
|
|
6
|
+
import { a as DirectorStateSnapshot } from './director-state-CgIc30qi.js';
|
|
7
|
+
import { r as ModelMatrixEntry } from './config-_DZ7dN-T.js';
|
|
8
|
+
import { I as InMemoryAgentBridge } from './agent-bridge-C9P_HPez.js';
|
|
9
9
|
|
|
10
10
|
/**
|
|
11
11
|
* Agent catalog aggregator.
|
|
@@ -51,13 +51,13 @@ interface DirectorAlert {
|
|
|
51
51
|
/** Human-readable message for UI/logs */
|
|
52
52
|
message: string;
|
|
53
53
|
/** Budget kind that triggered this alert, if any */
|
|
54
|
-
budgetKind?: 'timeout' | 'idle_timeout' | 'iterations' | 'tool_calls' | 'tokens' | 'cost';
|
|
54
|
+
budgetKind?: 'timeout' | 'idle_timeout' | 'iterations' | 'tool_calls' | 'tokens' | 'cost' | undefined;
|
|
55
55
|
/** Elapsed ms at time of alert */
|
|
56
|
-
elapsedMs?: number;
|
|
56
|
+
elapsedMs?: number | undefined;
|
|
57
57
|
/** Limit that was hit */
|
|
58
|
-
limit?: number;
|
|
58
|
+
limit?: number | undefined;
|
|
59
59
|
/** /btw notes the director has collected (may be empty) */
|
|
60
|
-
btwNotes?: string[];
|
|
60
|
+
btwNotes?: string[] | undefined;
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
63
63
|
* Immutable snapshot of target files at the start of a collab session.
|
|
@@ -71,7 +71,7 @@ interface SharedFileSnapshot {
|
|
|
71
71
|
interface SharedFileEntry {
|
|
72
72
|
path: string;
|
|
73
73
|
content: string;
|
|
74
|
-
language?: string;
|
|
74
|
+
language?: string | undefined;
|
|
75
75
|
}
|
|
76
76
|
/**
|
|
77
77
|
* Bug finding emitted by BugHunter and consumed by RefactorPlanner + Critic.
|
|
@@ -85,7 +85,7 @@ interface BugFinding {
|
|
|
85
85
|
line: number;
|
|
86
86
|
};
|
|
87
87
|
description: string;
|
|
88
|
-
suggestedFix?: string;
|
|
88
|
+
suggestedFix?: string | undefined;
|
|
89
89
|
}
|
|
90
90
|
/**
|
|
91
91
|
* Refactoring plan emitted by RefactorPlanner, consuming BugFinding(s).
|
|
@@ -121,7 +121,7 @@ interface CriticEvaluation {
|
|
|
121
121
|
interface CriticConcern {
|
|
122
122
|
description: string;
|
|
123
123
|
location?: {
|
|
124
|
-
file: string;
|
|
124
|
+
file: string | undefined;
|
|
125
125
|
line: number;
|
|
126
126
|
};
|
|
127
127
|
severity: 'blocking' | 'advisory';
|
|
@@ -175,7 +175,7 @@ interface CollabBudgetWarningPayload {
|
|
|
175
175
|
kind: 'timeout' | 'idle_timeout' | 'iterations' | 'tool_calls' | 'tokens' | 'cost';
|
|
176
176
|
used: number;
|
|
177
177
|
limit: number;
|
|
178
|
-
timeoutMs?: number;
|
|
178
|
+
timeoutMs?: number | undefined;
|
|
179
179
|
elapsedMs: number;
|
|
180
180
|
}
|
|
181
181
|
/**
|
|
@@ -191,29 +191,29 @@ interface CollabSessionOptions {
|
|
|
191
191
|
/** Paths to scan — used to build the SharedFileSnapshot. */
|
|
192
192
|
targetPaths: string[];
|
|
193
193
|
/** Files already read and snapshot. When provided, snapshot is skipped. */
|
|
194
|
-
prebuiltSnapshot?: SharedFileSnapshot;
|
|
194
|
+
prebuiltSnapshot?: SharedFileSnapshot | undefined;
|
|
195
195
|
/** Max time to wait for the session to resolve (ms). Default: 10 min. */
|
|
196
|
-
timeoutMs?: number;
|
|
196
|
+
timeoutMs?: number | undefined;
|
|
197
197
|
/**
|
|
198
198
|
* Maximum number of files to include in the snapshot.
|
|
199
199
|
* - If set explicitly: use this value (hard override).
|
|
200
200
|
* - If `contextWindow` is set: calculate dynamically from estimated token budget.
|
|
201
201
|
* - If neither: use `DEFAULT_MAX_TARGET_FILES` (30).
|
|
202
202
|
*/
|
|
203
|
-
maxTargetFiles?: number;
|
|
203
|
+
maxTargetFiles?: number | undefined;
|
|
204
204
|
/**
|
|
205
205
|
* Context window size (in tokens) of the model running the subagents.
|
|
206
206
|
* When provided and `maxTargetFiles` is not set, the limit is computed
|
|
207
207
|
* dynamically: `floor((contextWindow * 0.4) / AVG_TOKENS_PER_FILE)`.
|
|
208
208
|
* If not provided, `DEFAULT_MAX_TARGET_FILES` is used as the fallback.
|
|
209
209
|
*/
|
|
210
|
-
contextWindow?: number;
|
|
210
|
+
contextWindow?: number | undefined;
|
|
211
211
|
/**
|
|
212
212
|
* Budget overrides per role. When provided, these override the hard-coded
|
|
213
213
|
* defaults so the Director can enforce fleet-wide budget policy.
|
|
214
214
|
* Keys must match role names: 'bug-hunter', 'refactor-planner', 'critic'.
|
|
215
215
|
*/
|
|
216
|
-
budgetOverrides?: CollabBudgetOverrides;
|
|
216
|
+
budgetOverrides?: CollabBudgetOverrides | undefined;
|
|
217
217
|
/**
|
|
218
218
|
* Called by the Director when a collab agent hits a soft budget limit.
|
|
219
219
|
* The Director uses this to decide whether to cancel the session or extend.
|
|
@@ -221,7 +221,7 @@ interface CollabSessionOptions {
|
|
|
221
221
|
* with the agent's proposed new limits; 'ignore' to let the default
|
|
222
222
|
* auto-extend logic handle it.
|
|
223
223
|
*/
|
|
224
|
-
onBudgetWarning?: (alert: DirectorAlert) => 'cancel' | 'extend' | 'ignore';
|
|
224
|
+
onBudgetWarning?: (((alert: DirectorAlert) => 'cancel' | 'extend' | 'ignore')) | undefined;
|
|
225
225
|
}
|
|
226
226
|
declare class CollabSession extends EventEmitter {
|
|
227
227
|
readonly sessionId: string;
|
|
@@ -306,9 +306,9 @@ interface IFleetManager {
|
|
|
306
306
|
* Returns undefined if the subagent is not known to this manager.
|
|
307
307
|
*/
|
|
308
308
|
getSubagentMeta(id: string): {
|
|
309
|
-
provider?: string;
|
|
310
|
-
model?: string;
|
|
311
|
-
name?: string;
|
|
309
|
+
provider?: string | undefined;
|
|
310
|
+
model?: string | undefined;
|
|
311
|
+
name?: string | undefined;
|
|
312
312
|
} | undefined;
|
|
313
313
|
/**
|
|
314
314
|
* Called before a spawn is recorded. Returns a reason string if the
|
|
@@ -376,7 +376,7 @@ interface IFleetManager {
|
|
|
376
376
|
live: {
|
|
377
377
|
subagentId: string;
|
|
378
378
|
status: string;
|
|
379
|
-
task?: string;
|
|
379
|
+
task?: string | undefined;
|
|
380
380
|
}[];
|
|
381
381
|
};
|
|
382
382
|
/**
|
|
@@ -443,18 +443,18 @@ interface IFleetManager {
|
|
|
443
443
|
|
|
444
444
|
/** Options for constructing a FleetManager. */
|
|
445
445
|
interface FleetManagerOptions {
|
|
446
|
-
manifestPath?: string;
|
|
447
|
-
sessionsRoot?: string;
|
|
448
|
-
directorRunId?: string;
|
|
449
|
-
maxSpawns?: number;
|
|
450
|
-
maxSpawnDepth?: number;
|
|
451
|
-
spawnDepth?: number;
|
|
452
|
-
stateCheckpointPath?: string;
|
|
453
|
-
sessionWriter?: SessionWriter;
|
|
454
|
-
manifestDebounceMs?: number;
|
|
455
|
-
checkpointDebounceMs?: number;
|
|
446
|
+
manifestPath?: string | undefined;
|
|
447
|
+
sessionsRoot?: string | undefined;
|
|
448
|
+
directorRunId?: string | undefined;
|
|
449
|
+
maxSpawns?: number | undefined;
|
|
450
|
+
maxSpawnDepth?: number | undefined;
|
|
451
|
+
spawnDepth?: number | undefined;
|
|
452
|
+
stateCheckpointPath?: string | undefined;
|
|
453
|
+
sessionWriter?: SessionWriter | undefined;
|
|
454
|
+
manifestDebounceMs?: number | undefined;
|
|
455
|
+
checkpointDebounceMs?: number | undefined;
|
|
456
456
|
directorBudget?: {
|
|
457
|
-
maxCostUsd?: number;
|
|
457
|
+
maxCostUsd?: number | undefined;
|
|
458
458
|
};
|
|
459
459
|
/**
|
|
460
460
|
* Maximum context load (as a fraction of maxContext) the leader agent
|
|
@@ -463,7 +463,7 @@ interface FleetManagerOptions {
|
|
|
463
463
|
* a new subagent is refused — the leader must compact first.
|
|
464
464
|
* Set to 1.0 to disable this check.
|
|
465
465
|
*/
|
|
466
|
-
maxLeaderContextLoad?: number;
|
|
466
|
+
maxLeaderContextLoad?: number | undefined;
|
|
467
467
|
/**
|
|
468
468
|
* Provider's max context window in tokens. Used with `maxLeaderContextLoad`
|
|
469
469
|
* to compute the absolute token threshold. Default: 128_000.
|
|
@@ -541,9 +541,9 @@ declare class FleetManager implements IFleetManager {
|
|
|
541
541
|
setCoordinator(coordinator: DefaultMultiAgentCoordinator): void;
|
|
542
542
|
snapshot(): FleetUsage;
|
|
543
543
|
getSubagentMeta(id: string): {
|
|
544
|
-
provider?: string;
|
|
545
|
-
model?: string;
|
|
546
|
-
name?: string;
|
|
544
|
+
provider?: string | undefined;
|
|
545
|
+
model?: string | undefined;
|
|
546
|
+
name?: string | undefined;
|
|
547
547
|
} | undefined;
|
|
548
548
|
/**
|
|
549
549
|
* Returns null if the spawn is allowed, or an object describing
|
|
@@ -586,10 +586,10 @@ declare class FleetManager implements IFleetManager {
|
|
|
586
586
|
* @param priceLookup Optional per-subagent pricing data
|
|
587
587
|
*/
|
|
588
588
|
recordSpawn(subagentId: string, config: SubagentConfig, priceLookup?: {
|
|
589
|
-
input?: number;
|
|
590
|
-
output?: number;
|
|
591
|
-
cacheRead?: number;
|
|
592
|
-
cacheWrite?: number;
|
|
589
|
+
input?: number | undefined;
|
|
590
|
+
output?: number | undefined;
|
|
591
|
+
cacheRead?: number | undefined;
|
|
592
|
+
cacheWrite?: number | undefined;
|
|
593
593
|
}): void;
|
|
594
594
|
writeManifest(): Promise<string | null>;
|
|
595
595
|
/**
|
|
@@ -636,7 +636,7 @@ declare class FleetManager implements IFleetManager {
|
|
|
636
636
|
live: {
|
|
637
637
|
subagentId: string;
|
|
638
638
|
status: string;
|
|
639
|
-
task?: string;
|
|
639
|
+
task?: string | undefined;
|
|
640
640
|
}[];
|
|
641
641
|
};
|
|
642
642
|
/**
|
|
@@ -688,7 +688,7 @@ interface ICoordinator {
|
|
|
688
688
|
assign(task: {
|
|
689
689
|
id: string;
|
|
690
690
|
description: string;
|
|
691
|
-
subagentId?: string;
|
|
691
|
+
subagentId?: string | undefined;
|
|
692
692
|
}): Promise<string>;
|
|
693
693
|
/**
|
|
694
694
|
* Synchronously ask a subagent something via the in-memory bridge.
|
|
@@ -697,7 +697,7 @@ interface ICoordinator {
|
|
|
697
697
|
*
|
|
698
698
|
* Only available in director mode — raw coordinator has no bridge.
|
|
699
699
|
*/
|
|
700
|
-
ask<T = unknown>(subagentId: string, payload: unknown, timeoutMs?: number): Promise<T
|
|
700
|
+
ask<T = unknown>(subagentId: string, payload: unknown, timeoutMs?: number): Promise<T> | undefined;
|
|
701
701
|
/**
|
|
702
702
|
* Wait for one or more tasks to complete and return their results.
|
|
703
703
|
* If a task is already done when called, returns immediately.
|
|
@@ -757,7 +757,7 @@ declare class LargeAnswerStore {
|
|
|
757
757
|
* If the value is below sizeThreshold, returns it as-is (no store entry).
|
|
758
758
|
*/
|
|
759
759
|
storeAnswer(value: unknown): {
|
|
760
|
-
key?: string;
|
|
760
|
+
key?: string | undefined;
|
|
761
761
|
summary: string;
|
|
762
762
|
inline: boolean;
|
|
763
763
|
};
|
|
@@ -786,7 +786,7 @@ declare class FleetSpawnBudgetError extends Error {
|
|
|
786
786
|
readonly kind: 'max_spawns' | 'max_spawn_depth';
|
|
787
787
|
readonly limit: number;
|
|
788
788
|
readonly observed: number;
|
|
789
|
-
constructor(kind: 'max_spawns' | 'max_spawn_depth', limit: number, observed: number, message?: string);
|
|
789
|
+
constructor(kind: 'max_spawns' | 'max_spawn_depth', limit: number, observed: number, message?: string | undefined);
|
|
790
790
|
}
|
|
791
791
|
declare class FleetCostCapError extends Error {
|
|
792
792
|
readonly kind: 'max_cost_usd';
|
|
@@ -810,9 +810,9 @@ declare class FleetCostCapError extends Error {
|
|
|
810
810
|
*/
|
|
811
811
|
interface DirectorOptions {
|
|
812
812
|
config: MultiAgentConfig;
|
|
813
|
-
runner?: SubagentRunner;
|
|
813
|
+
runner?: SubagentRunner | undefined;
|
|
814
814
|
/** Optional Brain arbiter above the director for policy/decision escalation. */
|
|
815
|
-
brain?: BrainArbiter;
|
|
815
|
+
brain?: BrainArbiter | undefined;
|
|
816
816
|
/**
|
|
817
817
|
* When set, the director writes a `fleet.json` manifest to this path
|
|
818
818
|
* recording every spawned subagent (id, provider, model, role, task
|
|
@@ -820,7 +820,7 @@ interface DirectorOptions {
|
|
|
820
820
|
* absolute file path — the directory must already exist (the
|
|
821
821
|
* director-session factory creates it when used together).
|
|
822
822
|
*/
|
|
823
|
-
manifestPath?: string;
|
|
823
|
+
manifestPath?: string | undefined;
|
|
824
824
|
/**
|
|
825
825
|
* Optional roster used by `leaderSystemPrompt()` to render a roles
|
|
826
826
|
* summary into the leader's preamble. Same shape as the roster passed
|
|
@@ -831,12 +831,12 @@ interface DirectorOptions {
|
|
|
831
831
|
* Override the built-in fleet preamble (see `DEFAULT_DIRECTOR_PREAMBLE`).
|
|
832
832
|
* Pass an empty string to suppress the preamble entirely.
|
|
833
833
|
*/
|
|
834
|
-
directorPreamble?: string;
|
|
834
|
+
directorPreamble?: string | undefined;
|
|
835
835
|
/**
|
|
836
836
|
* Override the built-in subagent baseline (see
|
|
837
837
|
* `DEFAULT_SUBAGENT_BASELINE`). Pass an empty string to suppress.
|
|
838
838
|
*/
|
|
839
|
-
subagentBaseline?: string;
|
|
839
|
+
subagentBaseline?: string | undefined;
|
|
840
840
|
/**
|
|
841
841
|
* Absolute path to a directory the fleet can use as a shared scratchpad
|
|
842
842
|
* (read + write by every subagent). When set, the director creates it on
|
|
@@ -848,7 +848,7 @@ interface DirectorOptions {
|
|
|
848
848
|
* Convention: under a fleet run rooted at `<sessionsRoot>/<runId>/`,
|
|
849
849
|
* pass `<sessionsRoot>/<runId>/shared/` here.
|
|
850
850
|
*/
|
|
851
|
-
sharedScratchpadPath?: string;
|
|
851
|
+
sharedScratchpadPath?: string | undefined;
|
|
852
852
|
/**
|
|
853
853
|
* Maximum number of spawns this director can perform across its
|
|
854
854
|
* lifetime. Default: unlimited. Acts as a hard fleet-wide cost cap —
|
|
@@ -856,7 +856,7 @@ interface DirectorOptions {
|
|
|
856
856
|
* instead of burning provider tokens until the user kills the
|
|
857
857
|
* process. The N+1-th spawn call rejects with a `FleetSpawnBudgetError`.
|
|
858
858
|
*/
|
|
859
|
-
maxSpawns?: number;
|
|
859
|
+
maxSpawns?: number | undefined;
|
|
860
860
|
/**
|
|
861
861
|
* Maximum nesting depth for spawns. The director constructed by the
|
|
862
862
|
* user is at depth `spawnDepth` (default 0); any subagent that itself
|
|
@@ -867,13 +867,13 @@ interface DirectorOptions {
|
|
|
867
867
|
* This stops infinite recursive director chains from a hostile or
|
|
868
868
|
* confused prompt.
|
|
869
869
|
*/
|
|
870
|
-
maxSpawnDepth?: number;
|
|
870
|
+
maxSpawnDepth?: number | undefined;
|
|
871
871
|
/**
|
|
872
872
|
* Current spawn-chain depth for this director instance. Defaults to 0.
|
|
873
873
|
* A nested director should pass `parent.spawnDepth + 1`. Together with
|
|
874
874
|
* `maxSpawnDepth` this bounds the chain.
|
|
875
875
|
*/
|
|
876
|
-
spawnDepth?: number;
|
|
876
|
+
spawnDepth?: number | undefined;
|
|
877
877
|
/**
|
|
878
878
|
* Absolute path to a director-state checkpoint file. When set, the
|
|
879
879
|
* director writes an incremental snapshot of pending/running/completed
|
|
@@ -882,7 +882,7 @@ interface DirectorOptions {
|
|
|
882
882
|
* the checkpoint is a live mirror useful for crash recovery and the
|
|
883
883
|
* `wstack resume` "you had N tasks in flight" banner.
|
|
884
884
|
*/
|
|
885
|
-
stateCheckpointPath?: string;
|
|
885
|
+
stateCheckpointPath?: string | undefined;
|
|
886
886
|
/**
|
|
887
887
|
* Session writer the director should forward task lifecycle events to
|
|
888
888
|
* (`agent_spawned`, `task_created`, `task_completed`, `task_failed`).
|
|
@@ -890,13 +890,13 @@ interface DirectorOptions {
|
|
|
890
890
|
* lossy in production. Production callers (the CLI) pass the same
|
|
891
891
|
* writer the host Agent uses so all events land in a single JSONL.
|
|
892
892
|
*/
|
|
893
|
-
sessionWriter?: SessionWriter;
|
|
893
|
+
sessionWriter?: SessionWriter | undefined;
|
|
894
894
|
/**
|
|
895
895
|
* Debounce window for periodic manifest writes triggered by spawn/
|
|
896
896
|
* assign/complete events. Default: 2000ms. Pass 0 to disable periodic
|
|
897
897
|
* writes (the manifest will then only be written on `shutdown()`).
|
|
898
898
|
*/
|
|
899
|
-
manifestDebounceMs?: number;
|
|
899
|
+
manifestDebounceMs?: number | undefined;
|
|
900
900
|
/**
|
|
901
901
|
* Fleet-wide cost ceiling. When set, `spawn()` refuses any new subagent
|
|
902
902
|
* that would push the fleet's total cost above this limit. The cap
|
|
@@ -913,8 +913,8 @@ interface DirectorOptions {
|
|
|
913
913
|
* Maximum total USD the fleet may spend across all subagents.
|
|
914
914
|
* Default: Infinity (no cap).
|
|
915
915
|
*/
|
|
916
|
-
maxCostUsd?: number;
|
|
917
|
-
};
|
|
916
|
+
maxCostUsd?: number | undefined;
|
|
917
|
+
} | undefined;
|
|
918
918
|
/**
|
|
919
919
|
* Maximum auto-extensions per subagent per budget kind before the
|
|
920
920
|
* director denies further extensions. A subagent hitting the same
|
|
@@ -924,7 +924,7 @@ interface DirectorOptions {
|
|
|
924
924
|
* disable the cap (use with caution — a misconfigured subagent
|
|
925
925
|
* could burn unlimited budget).
|
|
926
926
|
*/
|
|
927
|
-
maxBudgetExtensions?: number;
|
|
927
|
+
maxBudgetExtensions?: number | undefined;
|
|
928
928
|
/**
|
|
929
929
|
* Debounce window for state-checkpoint writes. Default: 250ms.
|
|
930
930
|
* Bursts of spawn/assign/complete events collapse into one disk
|
|
@@ -932,19 +932,19 @@ interface DirectorOptions {
|
|
|
932
932
|
* lower values improve crash-recovery fidelity (less state lost
|
|
933
933
|
* on sudden process exit).
|
|
934
934
|
*/
|
|
935
|
-
checkpointDebounceMs?: number;
|
|
935
|
+
checkpointDebounceMs?: number | undefined;
|
|
936
936
|
/**
|
|
937
937
|
* Sessions root directory for per-subagent JSONL transcripts.
|
|
938
938
|
* When set, the director can read subagent transcripts directly for
|
|
939
939
|
* `fleet_session` tool — no bridge round-trip needed. Path convention:
|
|
940
940
|
* `<sessionsRoot>/<directorRunId>/<subagentId>.jsonl`.
|
|
941
941
|
*/
|
|
942
|
-
sessionsRoot?: string;
|
|
942
|
+
sessionsRoot?: string | undefined;
|
|
943
943
|
/**
|
|
944
944
|
* Director run id — namespaced under `sessionsRoot` to locate per-subagent
|
|
945
945
|
* JSONLs. Defaults to the director's own `id` when omitted.
|
|
946
946
|
*/
|
|
947
|
-
directorRunId?: string;
|
|
947
|
+
directorRunId?: string | undefined;
|
|
948
948
|
/**
|
|
949
949
|
* Pre-built fleet manager. When provided the Director delegates all
|
|
950
950
|
* fleet-level policy (spawn budgets, manifest assembly, checkpointing)
|
|
@@ -955,7 +955,7 @@ interface DirectorOptions {
|
|
|
955
955
|
* When omitted the Director creates its own fleet infrastructure
|
|
956
956
|
* (same behavior as before this field was added).
|
|
957
957
|
*/
|
|
958
|
-
fleetManager?: FleetManager;
|
|
958
|
+
fleetManager?: FleetManager | undefined;
|
|
959
959
|
/**
|
|
960
960
|
* Optional LLM classifier for the smart dispatcher. When set, the
|
|
961
961
|
* `spawn_subagent` tool can accept a free-form `description` field
|
|
@@ -966,7 +966,7 @@ interface DirectorOptions {
|
|
|
966
966
|
* Build from a `complete(prompt) => string` function using
|
|
967
967
|
* `makeLLMClassifier(complete)` from the dispatcher module.
|
|
968
968
|
*/
|
|
969
|
-
dispatchClassifier?: DispatchClassifier;
|
|
969
|
+
dispatchClassifier?: DispatchClassifier | undefined;
|
|
970
970
|
/**
|
|
971
971
|
* Maximum context load (as a fraction of maxContext) the leader agent
|
|
972
972
|
* is allowed to reach before a new spawn is rejected. Default: 0.85.
|
|
@@ -975,7 +975,7 @@ interface DirectorOptions {
|
|
|
975
975
|
* Only used when no `fleetManager` is provided (inline mode).
|
|
976
976
|
* Set to 1.0 to disable this check.
|
|
977
977
|
*/
|
|
978
|
-
maxLeaderContextLoad?: number;
|
|
978
|
+
maxLeaderContextLoad?: number | undefined;
|
|
979
979
|
/**
|
|
980
980
|
* Provider's max context window in tokens. Used with `maxLeaderContextLoad`
|
|
981
981
|
* to compute the absolute token threshold. Default: 128_000.
|
|
@@ -997,7 +997,7 @@ interface DirectorOptions {
|
|
|
997
997
|
* mid-session `/setmodel` takes effect on the next spawn. A static record
|
|
998
998
|
* is also accepted for tests and one-shot runs.
|
|
999
999
|
*/
|
|
1000
|
-
modelMatrix?: ModelMatrixSource;
|
|
1000
|
+
modelMatrix?: ModelMatrixSource | undefined;
|
|
1001
1001
|
}
|
|
1002
1002
|
/** Either a static matrix or a live getter (re-read on every spawn). */
|
|
1003
1003
|
type ModelMatrixSource = Record<string, ModelMatrixEntry> | (() => Record<string, ModelMatrixEntry> | undefined);
|
|
@@ -1119,7 +1119,7 @@ declare class Director implements ICoordinator {
|
|
|
1119
1119
|
*/
|
|
1120
1120
|
private taskCompletedListener;
|
|
1121
1121
|
/** Optional LLM classifier for smart dispatch. Passed from options. */
|
|
1122
|
-
readonly dispatchClassifier?: DispatchClassifier;
|
|
1122
|
+
readonly dispatchClassifier?: DispatchClassifier | undefined;
|
|
1123
1123
|
/** Leader agent's current context pressure (full request tokens). */
|
|
1124
1124
|
private leaderContextPressure;
|
|
1125
1125
|
/** Maximum context load fraction before spawn is refused. */
|
|
@@ -1237,10 +1237,10 @@ declare class Director implements ICoordinator {
|
|
|
1237
1237
|
* it the `cost` column in `usage.snapshot()` stays at 0.
|
|
1238
1238
|
*/
|
|
1239
1239
|
spawn(config: SubagentConfig, priceLookup?: {
|
|
1240
|
-
input?: number;
|
|
1241
|
-
output?: number;
|
|
1242
|
-
cacheRead?: number;
|
|
1243
|
-
cacheWrite?: number;
|
|
1240
|
+
input?: number | undefined;
|
|
1241
|
+
output?: number | undefined;
|
|
1242
|
+
cacheRead?: number | undefined;
|
|
1243
|
+
cacheWrite?: number | undefined;
|
|
1244
1244
|
}): Promise<string>;
|
|
1245
1245
|
/**
|
|
1246
1246
|
* Synchronously ask a subagent something via the bridge. Sends a
|
|
@@ -1342,12 +1342,12 @@ declare class Director implements ICoordinator {
|
|
|
1342
1342
|
* tool-use count, and line count — or null if the file is unavailable.
|
|
1343
1343
|
* Requires `sessionsRoot` to be set on construction.
|
|
1344
1344
|
*/
|
|
1345
|
-
readSession(subagentId: string, tail?: number): Promise<{
|
|
1346
|
-
lastAssistantText?: string;
|
|
1347
|
-
lastStopReason?: string;
|
|
1345
|
+
readSession(subagentId: string, tail?: number | undefined): Promise<{
|
|
1346
|
+
lastAssistantText?: string | undefined;
|
|
1347
|
+
lastStopReason?: string | undefined;
|
|
1348
1348
|
toolUsesObserved: number;
|
|
1349
1349
|
events: number;
|
|
1350
|
-
path?: string;
|
|
1350
|
+
path?: string | undefined;
|
|
1351
1351
|
} | null>;
|
|
1352
1352
|
snapshot(): FleetUsage;
|
|
1353
1353
|
/**
|
|
@@ -1358,9 +1358,9 @@ declare class Director implements ICoordinator {
|
|
|
1358
1358
|
* subagent row without reaching into private state.
|
|
1359
1359
|
*/
|
|
1360
1360
|
getSubagentMeta(id: string): {
|
|
1361
|
-
provider?: string;
|
|
1362
|
-
model?: string;
|
|
1363
|
-
name?: string;
|
|
1361
|
+
provider?: string | undefined;
|
|
1362
|
+
model?: string | undefined;
|
|
1363
|
+
name?: string | undefined;
|
|
1364
1364
|
} | undefined;
|
|
1365
1365
|
/**
|
|
1366
1366
|
* Compose the leader/director-agent system prompt: fleet preamble +
|
|
@@ -1524,7 +1524,7 @@ interface CreateDelegateToolOptions {
|
|
|
1524
1524
|
* without being killed for being slow — the orchestrator must
|
|
1525
1525
|
* decide per-call when a task needs to be cut short.
|
|
1526
1526
|
*/
|
|
1527
|
-
defaultTimeoutMs?: number;
|
|
1527
|
+
defaultTimeoutMs?: number | undefined;
|
|
1528
1528
|
/**
|
|
1529
1529
|
* Absolute directory under which per-subagent JSONL transcripts live —
|
|
1530
1530
|
* matches `MultiAgentHostOptions.sessionsRoot`. When set, the delegate
|
|
@@ -1532,13 +1532,13 @@ interface CreateDelegateToolOptions {
|
|
|
1532
1532
|
* to extract partial output, so the host LLM gets *something* useful
|
|
1533
1533
|
* back instead of just an error.
|
|
1534
1534
|
*/
|
|
1535
|
-
sessionsRoot?: string;
|
|
1535
|
+
sessionsRoot?: string | undefined;
|
|
1536
1536
|
/**
|
|
1537
1537
|
* The directorRunId used to namespace transcripts (typically the host
|
|
1538
1538
|
* session id). Combined with `sessionsRoot` to locate per-subagent
|
|
1539
1539
|
* JSONLs at `<sessionsRoot>/<runId>/<subagentId>.jsonl`.
|
|
1540
1540
|
*/
|
|
1541
|
-
directorRunId?: string;
|
|
1541
|
+
directorRunId?: string | undefined;
|
|
1542
1542
|
/**
|
|
1543
1543
|
* Buffer subtracted from the caller's `timeoutMs` before passing it
|
|
1544
1544
|
* to the subagent. Gives the host a window to detect a subagent that
|
|
@@ -1546,7 +1546,7 @@ interface CreateDelegateToolOptions {
|
|
|
1546
1546
|
* timeout. Default: 60_000 ms (raised from 30s to give subagents
|
|
1547
1547
|
* more headroom before the host kills them).
|
|
1548
1548
|
*/
|
|
1549
|
-
subagentTimeoutBufferMs?: number;
|
|
1549
|
+
subagentTimeoutBufferMs?: number | undefined;
|
|
1550
1550
|
/**
|
|
1551
1551
|
* Host EventBus. When supplied, `delegate` emits `delegate.started`
|
|
1552
1552
|
* (before it blocks on the subagent) and `delegate.completed` (once the
|
|
@@ -1555,7 +1555,7 @@ interface CreateDelegateToolOptions {
|
|
|
1555
1555
|
* `tool.executed` JSON preview. Optional — emits are best-effort and a
|
|
1556
1556
|
* missing bus never affects delegation behaviour.
|
|
1557
1557
|
*/
|
|
1558
|
-
events?: EventBus;
|
|
1558
|
+
events?: EventBus | undefined;
|
|
1559
1559
|
}
|
|
1560
1560
|
/**
|
|
1561
1561
|
* `delegate` — the only multi-agent tool a regular (non-director) agent
|
|
@@ -1600,14 +1600,14 @@ interface DirectorSessionFactoryOptions {
|
|
|
1600
1600
|
* director run directory. Tests pass an in-memory store for isolation;
|
|
1601
1601
|
* production code passes the path under `~/.wrongstack/sessions/`.
|
|
1602
1602
|
*/
|
|
1603
|
-
store?: SessionStore;
|
|
1604
|
-
sessionsRoot?: string;
|
|
1603
|
+
store?: SessionStore | undefined;
|
|
1604
|
+
sessionsRoot?: string | undefined;
|
|
1605
1605
|
/**
|
|
1606
1606
|
* Director run id — namespaces all subagent JSONLs under one folder.
|
|
1607
1607
|
* Defaults to a timestamped id; supplied explicitly when resuming a
|
|
1608
1608
|
* prior fleet manifest.
|
|
1609
1609
|
*/
|
|
1610
|
-
directorRunId?: string;
|
|
1610
|
+
directorRunId?: string | undefined;
|
|
1611
1611
|
}
|
|
1612
1612
|
interface DirectorSessionFactory {
|
|
1613
1613
|
/** Absolute directory where this director run's transcripts live. */
|
|
@@ -1621,9 +1621,9 @@ interface DirectorSessionFactory {
|
|
|
1621
1621
|
*/
|
|
1622
1622
|
createSubagentSession(args: {
|
|
1623
1623
|
subagentId: string;
|
|
1624
|
-
provider?: string;
|
|
1625
|
-
model?: string;
|
|
1626
|
-
title?: string;
|
|
1624
|
+
provider?: string | undefined;
|
|
1625
|
+
model?: string | undefined;
|
|
1626
|
+
title?: string | undefined;
|
|
1627
1627
|
}): Promise<SessionWriter>;
|
|
1628
1628
|
}
|
|
1629
1629
|
/**
|
|
@@ -1676,13 +1676,13 @@ declare const DEFAULT_SUBAGENT_BASELINE = "You are a subagent operating under a
|
|
|
1676
1676
|
interface DirectorPromptParts {
|
|
1677
1677
|
/** The user's existing leader system prompt — typically what was passed
|
|
1678
1678
|
* via `MultiAgentConfig.leaderSystemPrompt`. */
|
|
1679
|
-
basePrompt?: string;
|
|
1679
|
+
basePrompt?: string | undefined;
|
|
1680
1680
|
/** Override the built-in fleet preamble. Pass empty string to suppress. */
|
|
1681
|
-
directorPreamble?: string;
|
|
1681
|
+
directorPreamble?: string | undefined;
|
|
1682
1682
|
/** Optional roster summary block — a short list of pre-configured roles
|
|
1683
1683
|
* the director can spawn (e.g. "researcher, coder, reviewer"). Helps
|
|
1684
1684
|
* small models discover the available shapes without scanning tools. */
|
|
1685
|
-
rosterSummary?: string;
|
|
1685
|
+
rosterSummary?: string | undefined;
|
|
1686
1686
|
}
|
|
1687
1687
|
/**
|
|
1688
1688
|
* Compose the leader/director's system prompt. Order:
|
|
@@ -1699,13 +1699,13 @@ declare function composeDirectorPrompt(parts?: DirectorPromptParts): string;
|
|
|
1699
1699
|
interface SubagentPromptParts {
|
|
1700
1700
|
/** Base persona/identity for *every* subagent. Defaults to the bridge
|
|
1701
1701
|
* contract baseline. Pass empty string to suppress. */
|
|
1702
|
-
baseline?: string;
|
|
1702
|
+
baseline?: string | undefined;
|
|
1703
1703
|
/** Role-specific block, e.g. "You are a code reviewer. Focus on…". */
|
|
1704
|
-
role?: string;
|
|
1704
|
+
role?: string | undefined;
|
|
1705
1705
|
/** Task brief — usually the same string the runner passes as user input,
|
|
1706
1706
|
* but exposed here in case the factory wants it duplicated in the
|
|
1707
1707
|
* system prompt for reinforcement. */
|
|
1708
|
-
task?: string;
|
|
1708
|
+
task?: string | undefined;
|
|
1709
1709
|
/**
|
|
1710
1710
|
* Absolute path to a shared scratchpad directory the whole fleet can
|
|
1711
1711
|
* read/write. When set, the composer adds a "Shared notes" block that
|
|
@@ -1715,18 +1715,18 @@ interface SubagentPromptParts {
|
|
|
1715
1715
|
* conclusions. Falls between `task` and `override` so the override
|
|
1716
1716
|
* can still narrow or replace it.
|
|
1717
1717
|
*/
|
|
1718
|
-
sharedScratchpad?: string;
|
|
1718
|
+
sharedScratchpad?: string | undefined;
|
|
1719
1719
|
/**
|
|
1720
1720
|
* Optional skill body content injected into the subagent's system prompt.
|
|
1721
1721
|
* Use this to provide domain-specific knowledge (SKILL.md bodies) to
|
|
1722
1722
|
* subagents that need it. Placed after `sharedScratchpad` and before
|
|
1723
1723
|
* `override` so the override can still narrow or replace it.
|
|
1724
1724
|
*/
|
|
1725
|
-
skills?: string;
|
|
1725
|
+
skills?: string | undefined;
|
|
1726
1726
|
/** Final per-spawn override from `SubagentConfig.systemPromptOverride`.
|
|
1727
1727
|
* Added last so it wins on conflict — that's by design: the spawn site
|
|
1728
1728
|
* knows the most about what this specific subagent should do. */
|
|
1729
|
-
override?: string;
|
|
1729
|
+
override?: string | undefined;
|
|
1730
1730
|
}
|
|
1731
1731
|
/**
|
|
1732
1732
|
* Compose a subagent's system prompt. Order:
|
|
@@ -1758,10 +1758,10 @@ declare function composeSubagentPrompt(parts?: SubagentPromptParts): string;
|
|
|
1758
1758
|
*/
|
|
1759
1759
|
declare function rosterSummaryFromConfigs(roster: Record<string, {
|
|
1760
1760
|
name: string;
|
|
1761
|
-
provider?: string;
|
|
1762
|
-
model?: string;
|
|
1763
|
-
prompt?: string;
|
|
1764
|
-
role?: string;
|
|
1761
|
+
provider?: string | undefined;
|
|
1762
|
+
model?: string | undefined;
|
|
1763
|
+
prompt?: string | undefined;
|
|
1764
|
+
role?: string | undefined;
|
|
1765
1765
|
}>): string;
|
|
1766
1766
|
|
|
1767
1767
|
/**
|
|
@@ -1798,13 +1798,13 @@ declare const SECURITY_SCANNER_AGENT: SubagentConfig;
|
|
|
1798
1798
|
*/
|
|
1799
1799
|
declare const FLEET_ROSTER: Record<string, SubagentConfig>;
|
|
1800
1800
|
interface FleetRosterBudget {
|
|
1801
|
-
timeoutMs?: number;
|
|
1801
|
+
timeoutMs?: number | undefined;
|
|
1802
1802
|
/** Idle reap window (ms). Resets on activity — see `applyRosterBudget`. */
|
|
1803
|
-
idleTimeoutMs?: number;
|
|
1804
|
-
maxIterations?: number;
|
|
1805
|
-
maxToolCalls?: number;
|
|
1806
|
-
maxTokens?: number;
|
|
1807
|
-
maxCostUsd?: number;
|
|
1803
|
+
idleTimeoutMs?: number | undefined;
|
|
1804
|
+
maxIterations?: number | undefined;
|
|
1805
|
+
maxToolCalls?: number | undefined;
|
|
1806
|
+
maxTokens?: number | undefined;
|
|
1807
|
+
maxCostUsd?: number | undefined;
|
|
1808
1808
|
}
|
|
1809
1809
|
declare const FLEET_ROSTER_BUDGETS: Record<string, FleetRosterBudget>;
|
|
1810
1810
|
declare function applyRosterBudget(cfg: SubagentConfig): SubagentConfig;
|
|
@@ -1837,23 +1837,23 @@ declare const FLEET_ROSTER_WITHACP: Record<string, SubagentConfig>;
|
|
|
1837
1837
|
*/
|
|
1838
1838
|
|
|
1839
1839
|
interface AutoExtendCeiling {
|
|
1840
|
-
maxIterations?: number;
|
|
1841
|
-
maxToolCalls?: number;
|
|
1842
|
-
maxTokens?: number;
|
|
1843
|
-
maxCostUsd?: number;
|
|
1844
|
-
timeoutMs?: number;
|
|
1840
|
+
maxIterations?: number | undefined;
|
|
1841
|
+
maxToolCalls?: number | undefined;
|
|
1842
|
+
maxTokens?: number | undefined;
|
|
1843
|
+
maxCostUsd?: number | undefined;
|
|
1844
|
+
timeoutMs?: number | undefined;
|
|
1845
1845
|
}
|
|
1846
1846
|
interface AutoExtendPolicy {
|
|
1847
1847
|
/** Multiplier applied to the tripped limit when extending. Default 0.5 (+50%). */
|
|
1848
|
-
factor?: number;
|
|
1848
|
+
factor?: number | undefined;
|
|
1849
1849
|
/**
|
|
1850
1850
|
* Max extensions per NON-timeout kind before denying. Timeout is governed by
|
|
1851
1851
|
* the heartbeat check, not this cap, so it can extend indefinitely while the
|
|
1852
1852
|
* agent makes progress. Default 8.
|
|
1853
1853
|
*/
|
|
1854
|
-
maxExtensionsPerKind?: number;
|
|
1854
|
+
maxExtensionsPerKind?: number | undefined;
|
|
1855
1855
|
/** Absolute ceilings — an extension never pushes a limit past these. */
|
|
1856
|
-
ceiling?: AutoExtendCeiling;
|
|
1856
|
+
ceiling?: AutoExtendCeiling | undefined;
|
|
1857
1857
|
}
|
|
1858
1858
|
/**
|
|
1859
1859
|
* Attach an auto-extend policy to a subagent's EventBus. Returns an unsubscribe
|