ds4-context-core 0.3.8 → 0.3.10
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/compaction/input-budget.js +1 -1
- package/dist/config/config-catalog.d.ts.map +1 -1
- package/dist/config/config-catalog.js +5 -3
- package/dist/config/config-catalog.js.map +1 -1
- package/dist/config/config-loader.d.ts.map +1 -1
- package/dist/config/config-loader.js +25 -0
- package/dist/config/config-loader.js.map +1 -1
- package/dist/config/config.d.ts +14 -3
- package/dist/config/config.d.ts.map +1 -1
- package/dist/config/config.js +6 -2
- package/dist/config/config.js.map +1 -1
- package/dist/core/bpe-token-estimator.d.ts +4 -0
- package/dist/core/bpe-token-estimator.d.ts.map +1 -0
- package/dist/core/bpe-token-estimator.js +6 -0
- package/dist/core/bpe-token-estimator.js.map +1 -0
- package/dist/core/budget-manager.d.ts.map +1 -1
- package/dist/core/budget-manager.js +7 -3
- package/dist/core/budget-manager.js.map +1 -1
- package/dist/core/model-awareness.d.ts +22 -3
- package/dist/core/model-awareness.d.ts.map +1 -1
- package/dist/core/model-awareness.js +70 -6
- package/dist/core/model-awareness.js.map +1 -1
- package/dist/core/token-estimator.d.ts +9 -0
- package/dist/core/token-estimator.d.ts.map +1 -1
- package/dist/core/token-estimator.js +32 -18
- package/dist/core/token-estimator.js.map +1 -1
- package/dist/manifest/context-manifest.d.ts +3 -1
- package/dist/manifest/context-manifest.d.ts.map +1 -1
- package/dist/manifest/observer.d.ts +3 -1
- package/dist/manifest/observer.d.ts.map +1 -1
- package/dist/manifest/observer.js +7 -6
- package/dist/manifest/observer.js.map +1 -1
- package/dist/planner/atomic-groups.d.ts +2 -1
- package/dist/planner/atomic-groups.d.ts.map +1 -1
- package/dist/planner/atomic-groups.js +3 -3
- package/dist/planner/atomic-groups.js.map +1 -1
- package/dist/planner/context-planner.d.ts +2 -0
- package/dist/planner/context-planner.d.ts.map +1 -1
- package/dist/planner/context-planner.js +11 -11
- package/dist/planner/context-planner.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { calculateContextBudget } from "./budget-manager.js";
|
|
1
2
|
import { createModelProfile, } from "./model-profile.js";
|
|
2
3
|
function rounded(value) {
|
|
3
4
|
return Math.round(value * 1_000_000) / 1_000_000;
|
|
@@ -44,7 +45,7 @@ function cacheMetrics(samples) {
|
|
|
44
45
|
cacheWriteShare: totalInputTokens > 0 ? rounded(cacheWriteTokens / totalInputTokens) : 0,
|
|
45
46
|
};
|
|
46
47
|
}
|
|
47
|
-
export function analyzeModelCalibration(samples, config) {
|
|
48
|
+
export function analyzeModelCalibration(samples, config, estimator = "chars-v1") {
|
|
48
49
|
const window = samples.slice(0, config.calibrationWindow);
|
|
49
50
|
const valid = window.filter(validSample);
|
|
50
51
|
const ratios = valid.map((sample) => ({
|
|
@@ -74,13 +75,14 @@ export function analyzeModelCalibration(samples, config) {
|
|
|
74
75
|
: 1;
|
|
75
76
|
return {
|
|
76
77
|
enabled: config.enabled,
|
|
77
|
-
estimator
|
|
78
|
+
estimator,
|
|
78
79
|
windowSize: config.calibrationWindow,
|
|
79
80
|
observedSamples: window.length,
|
|
80
81
|
boundedSamples: bounded.length,
|
|
81
82
|
acceptedSamples: accepted.length,
|
|
82
83
|
rejectedSamples: window.length - accepted.length,
|
|
83
84
|
outlierSamples: bounded.length - accepted.length,
|
|
85
|
+
...(valid.length > bounded.length ? { hardBoundSamples: valid.length - bounded.length } : {}),
|
|
84
86
|
minimumSamples: config.minimumCalibrationSamples,
|
|
85
87
|
lowerRatioBound: config.calibrationRatioLowerBound,
|
|
86
88
|
upperRatioBound: config.calibrationRatioUpperBound,
|
|
@@ -126,6 +128,59 @@ export function automaticProjectRetrievalCeiling(contextWindow) {
|
|
|
126
128
|
? 20_000
|
|
127
129
|
: 32_000;
|
|
128
130
|
}
|
|
131
|
+
export function tokenEstimatorVersion(model, config) {
|
|
132
|
+
if (!config.enabled)
|
|
133
|
+
return "chars-v1";
|
|
134
|
+
return matchingOverrides(model.provider, model.id, config.overrides).override.tokenEstimator ?? "chars-v1";
|
|
135
|
+
}
|
|
136
|
+
/** Warn only on persistent evidence; never flag a single noisy provider response. */
|
|
137
|
+
export function detectTokenDrift(calibration) {
|
|
138
|
+
if (!calibration.enabled)
|
|
139
|
+
return undefined;
|
|
140
|
+
const outlierCount = calibration.outlierSamples + (calibration.hardBoundSamples ?? 0);
|
|
141
|
+
if (calibration.calibrated && calibration.medianRatio !== undefined) {
|
|
142
|
+
const ratio = calibration.medianRatio;
|
|
143
|
+
if (ratio >= 1.25)
|
|
144
|
+
return {
|
|
145
|
+
code: "persistent-underestimate",
|
|
146
|
+
severity: ratio >= 1.6 ? "critical" : "warning",
|
|
147
|
+
sampleCount: calibration.acceptedSamples,
|
|
148
|
+
medianRatio: ratio,
|
|
149
|
+
};
|
|
150
|
+
if (ratio <= 0.8)
|
|
151
|
+
return {
|
|
152
|
+
code: "persistent-overestimate",
|
|
153
|
+
severity: ratio <= 0.625 ? "critical" : "warning",
|
|
154
|
+
sampleCount: calibration.acceptedSamples,
|
|
155
|
+
medianRatio: ratio,
|
|
156
|
+
};
|
|
157
|
+
}
|
|
158
|
+
return outlierCount >= calibration.minimumSamples
|
|
159
|
+
? { code: "calibration-outliers", severity: "warning", sampleCount: outlierCount }
|
|
160
|
+
: undefined;
|
|
161
|
+
}
|
|
162
|
+
function decideAutoTune(samples, calibration, config, profile, context) {
|
|
163
|
+
if (!config.enabled || config.autoTune !== true)
|
|
164
|
+
return { status: "disabled", acceptedSamples: 0, boostFactor: 1 };
|
|
165
|
+
// Ratio outliers are excluded from calibration, but their provider-reported
|
|
166
|
+
// occupancy still matters: ignoring a near-limit call would make an expansion unsafe.
|
|
167
|
+
const observed = samples.slice(0, config.calibrationWindow).filter(validSample);
|
|
168
|
+
const count = calibration.acceptedSamples;
|
|
169
|
+
if (!calibration.calibrated || count < 8) {
|
|
170
|
+
return { status: "insufficient-samples", acceptedSamples: count, boostFactor: 1 };
|
|
171
|
+
}
|
|
172
|
+
const budget = calculateContextBudget(profile, context);
|
|
173
|
+
const target = Math.min(budget.preferredInputTarget, budget.hardInputLimit);
|
|
174
|
+
const highWatermark = Math.max(...observed.map((sample) => sample.actualInputTokens));
|
|
175
|
+
const rawRatio = target > 0 ? highWatermark / target : Number.POSITIVE_INFINITY;
|
|
176
|
+
const expanded = rawRatio <= 0.6;
|
|
177
|
+
return {
|
|
178
|
+
status: expanded ? "expanded" : "no-headroom",
|
|
179
|
+
acceptedSamples: count,
|
|
180
|
+
...(Number.isFinite(rawRatio) ? { highWatermarkRatio: rounded(rawRatio) } : {}),
|
|
181
|
+
boostFactor: expanded ? 1.125 : 1,
|
|
182
|
+
};
|
|
183
|
+
}
|
|
129
184
|
function calibratedLimit(value, calibrationRatio) {
|
|
130
185
|
if (value <= 0)
|
|
131
186
|
return 0;
|
|
@@ -138,7 +193,12 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
138
193
|
...(override.maxOutputTokens !== undefined ? { maxOutputTokens: override.maxOutputTokens } : {}),
|
|
139
194
|
...(override.safetyMarginTokens !== undefined ? { safetyMarginTokens: override.safetyMarginTokens } : {}),
|
|
140
195
|
});
|
|
141
|
-
const calibration = analyzeModelCalibration(samples, config);
|
|
196
|
+
const calibration = analyzeModelCalibration(samples, config, tokenEstimatorVersion(model, config));
|
|
197
|
+
const drift = detectTokenDrift(calibration);
|
|
198
|
+
const autoTune = decideAutoTune(samples, calibration, config, profile, context);
|
|
199
|
+
const boosted = (nominal, cap, explicit) => explicit === undefined && autoTune.status === "expanded"
|
|
200
|
+
? Math.min(cap, Math.floor(nominal * autoTune.boostFactor))
|
|
201
|
+
: nominal;
|
|
142
202
|
const nominalRecentTailTokens = override.recentTailTokens
|
|
143
203
|
?? Math.min(context.recentTailTokens, automaticRecentTailCeiling(profile.contextWindow));
|
|
144
204
|
const nominalRetrievedHistoryTokens = override.maxRetrievedHistoryTokens
|
|
@@ -149,9 +209,11 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
149
209
|
?? (config.enabled
|
|
150
210
|
? Math.min(context.maxProjectTokens, automaticProjectRetrievalCeiling(profile.contextWindow))
|
|
151
211
|
: context.maxProjectTokens);
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
const
|
|
212
|
+
// Calibration can expand estimator-unit ceilings on overestimation, but
|
|
213
|
+
// configured context maxima remain hard caps after that conversion.
|
|
214
|
+
const recentTailTokens = Math.min(context.recentTailTokens, calibratedLimit(boosted(nominalRecentTailTokens, context.recentTailTokens, override.recentTailTokens), calibration.appliedRatio));
|
|
215
|
+
const maxRetrievedHistoryTokens = Math.min(context.maxRetrievedHistoryTokens, calibratedLimit(boosted(nominalRetrievedHistoryTokens, context.maxRetrievedHistoryTokens, override.maxRetrievedHistoryTokens), calibration.appliedRatio));
|
|
216
|
+
const maxProjectTokens = Math.min(context.maxProjectTokens, calibratedLimit(boosted(nominalProjectTokens, context.maxProjectTokens, override.maxProjectTokens), calibration.appliedRatio));
|
|
155
217
|
const contextConfig = {
|
|
156
218
|
...context,
|
|
157
219
|
recentTailTokens,
|
|
@@ -163,6 +225,8 @@ export function resolveModelAwareness(model, context, config, samples = []) {
|
|
|
163
225
|
profile,
|
|
164
226
|
overrideKeys: keys,
|
|
165
227
|
calibration,
|
|
228
|
+
...(drift ? { drift } : {}),
|
|
229
|
+
...(config.autoTune === true ? { autoTune } : {}),
|
|
166
230
|
limits: {
|
|
167
231
|
nominalRecentTailTokens,
|
|
168
232
|
nominalRetrievedHistoryTokens,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-awareness.js","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-awareness.js","sourceRoot":"","sources":["../../src/core/model-awareness.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,12 @@
|
|
|
1
|
+
/** Counts text only; message/block and image overhead remains a heuristic. */
|
|
2
|
+
export interface TokenEstimator {
|
|
3
|
+
readonly version: string;
|
|
4
|
+
estimateTextTokens(text: string): number;
|
|
5
|
+
estimateMessageTokens(message: unknown): number;
|
|
6
|
+
estimateMessagesTokens(messages: readonly unknown[]): number;
|
|
7
|
+
}
|
|
8
|
+
export declare function createTokenEstimator(version: string, countText: (text: string) => number): TokenEstimator;
|
|
9
|
+
export declare const CHARS_ESTIMATOR: TokenEstimator;
|
|
1
10
|
export declare function estimateTextTokens(text: string): number;
|
|
2
11
|
export declare function estimateMessageTokens(message: unknown): number;
|
|
3
12
|
export declare function estimateMessagesTokens(messages: readonly unknown[]): number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"token-estimator.d.ts","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"AAKA,8EAA8E;AAC9E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACzC,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC;IAChD,sBAAsB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAAC;CAC9D;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,cAAc,CASzG;AAED,eAAO,MAAM,eAAe,EAAE,cAE7B,CAAC;AAcF,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAyCD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAE9D;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,GAAG,MAAM,CAE3E"}
|
|
@@ -2,6 +2,17 @@ const CHARS_PER_TOKEN = 4;
|
|
|
2
2
|
const MESSAGE_WRAPPER_TOKENS = 8;
|
|
3
3
|
const CONTENT_BLOCK_WRAPPER_TOKENS = 4;
|
|
4
4
|
const IMAGE_TOKEN_ESTIMATE = 1024;
|
|
5
|
+
export function createTokenEstimator(version, countText) {
|
|
6
|
+
const text = (value) => value.length === 0 ? 0 : countText(value);
|
|
7
|
+
const message = (value) => estimateMessage(value, text);
|
|
8
|
+
return {
|
|
9
|
+
version,
|
|
10
|
+
estimateTextTokens: text,
|
|
11
|
+
estimateMessageTokens: message,
|
|
12
|
+
estimateMessagesTokens: (messages) => messages.reduce((total, value) => total + message(value), 0),
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
export const CHARS_ESTIMATOR = createTokenEstimator("chars-v1", (text) => Math.ceil(text.length / CHARS_PER_TOKEN));
|
|
5
16
|
function isRecord(value) {
|
|
6
17
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
7
18
|
}
|
|
@@ -14,51 +25,54 @@ function safeJson(value) {
|
|
|
14
25
|
}
|
|
15
26
|
}
|
|
16
27
|
export function estimateTextTokens(text) {
|
|
17
|
-
return
|
|
28
|
+
return CHARS_ESTIMATOR.estimateTextTokens(text);
|
|
18
29
|
}
|
|
19
|
-
function estimateContent(content) {
|
|
30
|
+
function estimateContent(content, countText) {
|
|
20
31
|
if (typeof content === "string")
|
|
21
|
-
return
|
|
32
|
+
return countText(content);
|
|
22
33
|
if (!Array.isArray(content))
|
|
23
|
-
return
|
|
34
|
+
return countText(safeJson(content));
|
|
24
35
|
return content.reduce((tokens, block) => {
|
|
25
36
|
if (!isRecord(block))
|
|
26
|
-
return tokens +
|
|
37
|
+
return tokens + countText(safeJson(block));
|
|
27
38
|
const type = block.type;
|
|
28
39
|
if (type === "image")
|
|
29
40
|
return tokens + IMAGE_TOKEN_ESTIMATE + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
30
41
|
if (type === "text" && typeof block.text === "string") {
|
|
31
|
-
return tokens +
|
|
42
|
+
return tokens + countText(block.text) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
32
43
|
}
|
|
33
44
|
if (type === "thinking" && typeof block.thinking === "string") {
|
|
34
|
-
return tokens +
|
|
45
|
+
return tokens + countText(block.thinking) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
35
46
|
}
|
|
36
47
|
if (type === "toolCall") {
|
|
37
48
|
const name = typeof block.name === "string" ? block.name : "";
|
|
38
|
-
return tokens +
|
|
49
|
+
return tokens + countText(name + safeJson(block.arguments)) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
39
50
|
}
|
|
40
|
-
return tokens +
|
|
51
|
+
return tokens + countText(safeJson(block)) + CONTENT_BLOCK_WRAPPER_TOKENS;
|
|
41
52
|
}, 0);
|
|
42
53
|
}
|
|
43
|
-
|
|
54
|
+
function estimateMessage(message, countText) {
|
|
44
55
|
if (!isRecord(message))
|
|
45
|
-
return
|
|
56
|
+
return countText(safeJson(message)) + MESSAGE_WRAPPER_TOKENS;
|
|
46
57
|
let tokens = MESSAGE_WRAPPER_TOKENS;
|
|
47
58
|
if (typeof message.role === "string")
|
|
48
|
-
tokens +=
|
|
59
|
+
tokens += countText(message.role);
|
|
49
60
|
if ("content" in message)
|
|
50
|
-
tokens += estimateContent(message.content);
|
|
61
|
+
tokens += estimateContent(message.content, countText);
|
|
51
62
|
if (typeof message.summary === "string")
|
|
52
|
-
tokens +=
|
|
63
|
+
tokens += countText(message.summary);
|
|
53
64
|
if (typeof message.command === "string")
|
|
54
|
-
tokens +=
|
|
65
|
+
tokens += countText(message.command);
|
|
55
66
|
if (typeof message.output === "string")
|
|
56
|
-
tokens +=
|
|
67
|
+
tokens += countText(message.output);
|
|
57
68
|
if (typeof message.toolName === "string")
|
|
58
|
-
tokens +=
|
|
69
|
+
tokens += countText(message.toolName);
|
|
59
70
|
return tokens;
|
|
60
71
|
}
|
|
72
|
+
export function estimateMessageTokens(message) {
|
|
73
|
+
return CHARS_ESTIMATOR.estimateMessageTokens(message);
|
|
74
|
+
}
|
|
61
75
|
export function estimateMessagesTokens(messages) {
|
|
62
|
-
return
|
|
76
|
+
return CHARS_ESTIMATOR.estimateMessagesTokens(messages);
|
|
63
77
|
}
|
|
64
78
|
//# sourceMappingURL=token-estimator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"AAAA,MAAM,eAAe,GAAG,CAAC,CAAC;AAC1B,MAAM,sBAAsB,GAAG,CAAC,CAAC;AACjC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AACvC,MAAM,oBAAoB,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"token-estimator.js","sourceRoot":"","sources":["../../src/core/token-estimator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { NativeContinuationManifest } from "../continuation/native-continuation.ts";
|
|
2
2
|
import type { PersistedManifestInventory } from "./context-manifest-storage.ts";
|
|
3
|
-
import type { AdaptiveModelLimits, ModelCalibrationAnalysis } from "../core/model-awareness.ts";
|
|
3
|
+
import type { AdaptiveModelLimits, AutoTuneDecision, ModelCalibrationAnalysis, TokenDriftWarning } from "../core/model-awareness.ts";
|
|
4
4
|
import type { PrivacyClassification, ProviderDestination } from "../privacy/privacy-policy.ts";
|
|
5
5
|
import type { RankingDiagnostics } from "../ranking/learned-ranker.ts";
|
|
6
6
|
export type ContextManifestItemKind = "system" | "tool" | "pin" | "recent" | "summary" | "retrieval" | "history" | "project" | "memory" | "current";
|
|
@@ -106,6 +106,8 @@ export interface ModelAwarenessManifest {
|
|
|
106
106
|
maxOutputTokens?: number;
|
|
107
107
|
safetyMarginTokens: number;
|
|
108
108
|
calibration: ModelCalibrationAnalysis;
|
|
109
|
+
drift?: TokenDriftWarning;
|
|
110
|
+
autoTune?: AutoTuneDecision;
|
|
109
111
|
adaptive: AdaptiveModelLimits;
|
|
110
112
|
switch?: ModelSwitchManifest;
|
|
111
113
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-manifest.d.ts","sourceRoot":"","sources":["../../src/manifest/context-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,wCAAwC,CAAC;AACzF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,KAAK,EACV,mBAAmB,EACnB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"context-manifest.d.ts","sourceRoot":"","sources":["../../src/manifest/context-manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ContextBudget } from "../core/budget-manager.ts";
|
|
2
2
|
import type { ModelProfile } from "../core/model-profile.ts";
|
|
3
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
3
4
|
import type { ArtifactManifestRef, ContextManifest, ContextManifestItem, ContextManifestItemKind, ContextManifestPlanning, MemoryManifestRef, ModelAwarenessManifest, PinManifestRef, PrivacyManifest, ProjectRevision, ProjectSnippetRef } from "./context-manifest.ts";
|
|
4
5
|
export interface ObservedTool {
|
|
5
6
|
name: string;
|
|
@@ -37,6 +38,7 @@ export interface ObserverManifestInput {
|
|
|
37
38
|
profile: ModelProfile;
|
|
38
39
|
budget: ContextBudget;
|
|
39
40
|
systemPrompt: string;
|
|
41
|
+
tokenEstimator?: TokenEstimator;
|
|
40
42
|
systemClassification?: ContextManifestItem["classification"];
|
|
41
43
|
systemPrivacyReason?: string;
|
|
42
44
|
tools: readonly ObservedTool[];
|
|
@@ -58,6 +60,6 @@ export interface ObserverManifestInput {
|
|
|
58
60
|
plannerVersion: string;
|
|
59
61
|
createdAt: number;
|
|
60
62
|
}
|
|
61
|
-
export declare function estimateObservedToolTokens(tool: ObservedTool): number;
|
|
63
|
+
export declare function estimateObservedToolTokens(tool: ObservedTool, estimator?: TokenEstimator): number;
|
|
62
64
|
export declare function buildObserverManifest(input: ObserverManifestInput): ContextManifest;
|
|
63
65
|
//# sourceMappingURL=observer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"observer.d.ts","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CHARS_ESTIMATOR } from "../core/token-estimator.js";
|
|
2
2
|
import { sha256 } from "../shared/hash.js";
|
|
3
3
|
import { stableStringify } from "../shared/stable-json.js";
|
|
4
4
|
function messageRole(message) {
|
|
@@ -13,8 +13,8 @@ function messageKind(role, isCurrentUser) {
|
|
|
13
13
|
return "summary";
|
|
14
14
|
return "recent";
|
|
15
15
|
}
|
|
16
|
-
export function estimateObservedToolTokens(tool) {
|
|
17
|
-
return estimateTextTokens(stableStringify({
|
|
16
|
+
export function estimateObservedToolTokens(tool, estimator = CHARS_ESTIMATOR) {
|
|
17
|
+
return estimator.estimateTextTokens(stableStringify({
|
|
18
18
|
name: tool.name,
|
|
19
19
|
description: tool.description,
|
|
20
20
|
parameters: tool.parameters,
|
|
@@ -22,7 +22,8 @@ export function estimateObservedToolTokens(tool) {
|
|
|
22
22
|
}
|
|
23
23
|
export function buildObserverManifest(input) {
|
|
24
24
|
const included = [];
|
|
25
|
-
const
|
|
25
|
+
const estimator = input.tokenEstimator ?? CHARS_ESTIMATOR;
|
|
26
|
+
const systemTokens = estimator.estimateTextTokens(input.systemPrompt) + (input.systemPrompt ? 8 : 0);
|
|
26
27
|
if (input.systemPrompt) {
|
|
27
28
|
included.push({
|
|
28
29
|
kind: "system",
|
|
@@ -36,7 +37,7 @@ export function buildObserverManifest(input) {
|
|
|
36
37
|
}
|
|
37
38
|
let toolsTotal = 0;
|
|
38
39
|
for (const tool of input.tools) {
|
|
39
|
-
const tokens = estimateObservedToolTokens(tool);
|
|
40
|
+
const tokens = estimateObservedToolTokens(tool, estimator);
|
|
40
41
|
toolsTotal += tokens;
|
|
41
42
|
included.push({
|
|
42
43
|
kind: "tool",
|
|
@@ -59,7 +60,7 @@ export function buildObserverManifest(input) {
|
|
|
59
60
|
const message = input.messages[index];
|
|
60
61
|
const source = input.messageSources[index];
|
|
61
62
|
const role = messageRole(message) ?? source?.role;
|
|
62
|
-
const tokens = estimateMessageTokens(message);
|
|
63
|
+
const tokens = estimator.estimateMessageTokens(message);
|
|
63
64
|
messageTokens += tokens;
|
|
64
65
|
included.push({
|
|
65
66
|
kind: source?.kind ?? messageKind(role, index === lastUserIndex),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/manifest/observer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
1
2
|
export type AtomicGroupKind = "turn" | "summary" | "prefix";
|
|
2
3
|
export interface AtomicMessageGroup {
|
|
3
4
|
id: string;
|
|
@@ -10,6 +11,6 @@ export interface AtomicMessageGroup {
|
|
|
10
11
|
reason: string;
|
|
11
12
|
}
|
|
12
13
|
export declare function messageRole(message: unknown): string | undefined;
|
|
13
|
-
export declare function buildAtomicGroups(messages: readonly unknown[]): AtomicMessageGroup[];
|
|
14
|
+
export declare function buildAtomicGroups(messages: readonly unknown[], estimator?: TokenEstimator): AtomicMessageGroup[];
|
|
14
15
|
export declare function validateAtomicSelection(messages: readonly unknown[], selectedIndices: ReadonlySet<number>): string[];
|
|
15
16
|
//# sourceMappingURL=atomic-groups.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-groups.d.ts","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"atomic-groups.d.ts","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAElF,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,eAAe,CAAC;IACtB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;CAChB;AAgBD,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAGhE;AA0ED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,SAAS,OAAO,EAAE,EAAE,SAAS,GAAE,cAAgC,GACxE,kBAAkB,EAAE,CA+EtB;AAED,wBAAgB,uBAAuB,CACrC,QAAQ,EAAE,SAAS,OAAO,EAAE,EAC5B,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,GACnC,MAAM,EAAE,CAyBV"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CHARS_ESTIMATOR } from "../core/token-estimator.js";
|
|
2
2
|
function isRecord(value) {
|
|
3
3
|
return value !== null && typeof value === "object" && !Array.isArray(value);
|
|
4
4
|
}
|
|
@@ -70,7 +70,7 @@ function mergedKind(groups, members) {
|
|
|
70
70
|
return "summary";
|
|
71
71
|
return "prefix";
|
|
72
72
|
}
|
|
73
|
-
export function buildAtomicGroups(messages) {
|
|
73
|
+
export function buildAtomicGroups(messages, estimator = CHARS_ESTIMATOR) {
|
|
74
74
|
const drafts = initialGroups(messages);
|
|
75
75
|
if (drafts.length === 0)
|
|
76
76
|
return [];
|
|
@@ -136,7 +136,7 @@ export function buildAtomicGroups(messages) {
|
|
|
136
136
|
messageIndices,
|
|
137
137
|
startIndex,
|
|
138
138
|
endIndex,
|
|
139
|
-
estimatedTokens: messageIndices.reduce((total, index) => total + estimateMessageTokens(messages[index]), 0),
|
|
139
|
+
estimatedTokens: messageIndices.reduce((total, index) => total + estimator.estimateMessageTokens(messages[index]), 0),
|
|
140
140
|
containsToolExchange,
|
|
141
141
|
reason: containsToolExchange
|
|
142
142
|
? "Atomic conversation turn containing a complete tool call/result batch"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"atomic-groups.js","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"atomic-groups.js","sourceRoot":"","sources":["../../src/planner/atomic-groups.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ContextConfig } from "../config/config.ts";
|
|
2
2
|
import type { ContextBudget } from "../core/budget-manager.ts";
|
|
3
|
+
import { type TokenEstimator } from "../core/token-estimator.ts";
|
|
3
4
|
import type { ContextManifestItemKind, ContextManifestPlanning, ProjectSnippetRef } from "../manifest/context-manifest.ts";
|
|
4
5
|
import type { PrivacyClassification } from "../privacy/privacy-policy.ts";
|
|
5
6
|
import type { RankingFeatureVector } from "../ranking/learned-ranker.ts";
|
|
@@ -42,6 +43,7 @@ export interface PlanContextInput<T> {
|
|
|
42
43
|
fixedTokens: number;
|
|
43
44
|
budget: ContextBudget;
|
|
44
45
|
config: ContextConfig;
|
|
46
|
+
tokenEstimator?: TokenEstimator;
|
|
45
47
|
pinnedMessageIndices?: readonly number[];
|
|
46
48
|
supplementalMessages?: readonly SupplementalContextMessage<T>[];
|
|
47
49
|
/** Optional promoted learned order for non-mandatory supplements. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-planner.d.ts","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"context-planner.d.ts","sourceRoot":"","sources":["../../src/planner/context-planner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAClF,OAAO,KAAK,EACV,uBAAuB,EACvB,uBAAuB,EACvB,iBAAiB,EAClB,MAAM,iCAAiC,CAAC;AACzC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAQzE,MAAM,WAAW,sBAAsB;IACrC,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,IAAI,EAAE,SAAS,GAAG,UAAU,CAAC;IAC7B,gBAAgB,EAAE,CAAC,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,EAAE,CAAC;IACd,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,MAAM,WAAW,0BAA0B,CAAC,CAAC;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,CAAC,CAAC;IACX,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,WAAW,GAAG,SAAS,CAAC;IACjD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,iBAAiB,CAAC;IACnC,cAAc,CAAC,EAAE,qBAAqB,CAAC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC;IACjC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,aAAa,CAAC;IACtB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,oBAAoB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,oBAAoB,CAAC,EAAE,SAAS,0BAA0B,CAAC,CAAC,CAAC,EAAE,CAAC;IAChE,qEAAqE;IACrE,0BAA0B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,sBAAsB,CAAC,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC1D,qBAAqB,CAAC,EAAE,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,EAAE,CAAC;IACxD;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAYD,wBAAgB,uBAAuB,CAAC,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CAE9F;AAoGD,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CA6V7F"}
|