acp-kernel 0.0.74-pr.308.173 → 0.0.74-pr.313.177
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/cache-report.d.ts +194 -0
- package/dist/cache-report.d.ts.map +1 -0
- package/dist/compress-tools.d.ts +65 -2
- package/dist/compress-tools.d.ts.map +1 -1
- package/dist/index.d.ts +5 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +366 -26
- package/dist/index.js.map +1 -1
- package/dist/recommend.d.ts +5 -2
- package/dist/recommend.d.ts.map +1 -1
- package/package.json +66 -66
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Prompt-cache reconciliation (billion-context#800).
|
|
3
|
+
*
|
|
4
|
+
* The provider-reported per-request usage IS the grand ledger (总账) — this
|
|
5
|
+
* module never invents numbers; it splits every request's cache miss into
|
|
6
|
+
* three additive buckets so the totals reconcile exactly by construction:
|
|
7
|
+
*
|
|
8
|
+
* missed_i = input_i − cached_i
|
|
9
|
+
* = newContent_i content newly appended since the previous request
|
|
10
|
+
* (legit fresh — not an invalidation at all)
|
|
11
|
+
* + compRepay_i re-payment forced by compression folds (the
|
|
12
|
+
* prefix diverged at the fold's first start point)
|
|
13
|
+
* + ttlRepay_i residual: misses inside the stable prefix →
|
|
14
|
+
* TTL expiry / provider-side eviction
|
|
15
|
+
*
|
|
16
|
+
* No estimate participates in the closure: newContent is clamped to observed
|
|
17
|
+
* growth, compRepay is clamped to BOTH the remaining miss and the structural
|
|
18
|
+
* excess implied by the fold divergence point, ttlRepay is whatever remains.
|
|
19
|
+
* Hence, for ANY inputs:
|
|
20
|
+
*
|
|
21
|
+
* Σ input = Σ cached + Σ newContent + Σ compRepay + Σ ttlRepay (exact)
|
|
22
|
+
*
|
|
23
|
+
* `decomposeSample` is the single implementation used both by
|
|
24
|
+
* `buildCacheReport` (batch) and by hosts that stream-record aggregates
|
|
25
|
+
* incrementally — one code path, one accounting semantics.
|
|
26
|
+
*/
|
|
27
|
+
export interface CacheSample {
|
|
28
|
+
/** Epoch ms when the usage report was observed. */
|
|
29
|
+
at: number;
|
|
30
|
+
/** Total prompt tokens billed for this request — NORMALIZED so cached is
|
|
31
|
+
* INCLUDED (Anthropic input_tokens excludes cached; OpenAI includes it). */
|
|
32
|
+
input: number;
|
|
33
|
+
/** Provider-reported cache-hit tokens (0 when the provider reports none). */
|
|
34
|
+
cached: number;
|
|
35
|
+
output?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface FoldEvent {
|
|
38
|
+
/** Epoch ms when the fold was applied (between two requests). */
|
|
39
|
+
at: number;
|
|
40
|
+
/** S: tokens removed from the view by this fold. */
|
|
41
|
+
tokensCompressed: number;
|
|
42
|
+
/** σ: rendered summary size in tokens (or actual summary output tokens). */
|
|
43
|
+
summaryTokens?: number;
|
|
44
|
+
/** X: token offset of the earliest divergence point inside the post-fold
|
|
45
|
+
* view ≈ expected post-fold hit prefix. Host-computed estimate — used
|
|
46
|
+
* only as a clamp bound, never in the closure. */
|
|
47
|
+
firstFoldStartTokens?: number;
|
|
48
|
+
/** V: pre-fold view size. */
|
|
49
|
+
viewBefore?: number;
|
|
50
|
+
/** V′: post-fold view size. */
|
|
51
|
+
viewAfter?: number;
|
|
52
|
+
}
|
|
53
|
+
/** Normalized price multipliers over the input-token unit (p_in = 1).
|
|
54
|
+
* w = cacheWrite/input, r = cacheRead/input, q = output/input. */
|
|
55
|
+
export interface PriceProfile {
|
|
56
|
+
w?: number;
|
|
57
|
+
r?: number;
|
|
58
|
+
q?: number;
|
|
59
|
+
}
|
|
60
|
+
export interface SampleDecomposition {
|
|
61
|
+
missed: number;
|
|
62
|
+
newContent: number;
|
|
63
|
+
compRepay: number;
|
|
64
|
+
ttlRepay: number;
|
|
65
|
+
/** Index into `pendingFolds` of the fold credited with compRepay, or null. */
|
|
66
|
+
foldIndex: number | null;
|
|
67
|
+
}
|
|
68
|
+
/** Split one request's miss into the three buckets.
|
|
69
|
+
*
|
|
70
|
+
* @param prev previous sample (null for the first observed request)
|
|
71
|
+
* @param cur current sample
|
|
72
|
+
* @param pendingFolds folds applied after `prev` and no later than `cur`
|
|
73
|
+
*/
|
|
74
|
+
export declare function decomposeSample(prev: CacheSample | null, cur: CacheSample, pendingFolds: readonly FoldEvent[]): SampleDecomposition;
|
|
75
|
+
export interface CacheTotals {
|
|
76
|
+
requests: number;
|
|
77
|
+
input: number;
|
|
78
|
+
cached: number;
|
|
79
|
+
output: number;
|
|
80
|
+
/** cached / input × 100 (0 when input = 0). */
|
|
81
|
+
hitPct: number;
|
|
82
|
+
newContent: number;
|
|
83
|
+
compRepay: number;
|
|
84
|
+
ttlRepay: number;
|
|
85
|
+
/** input − cached − (newContent + compRepay + ttlRepay); 0 by construction. */
|
|
86
|
+
residual: number;
|
|
87
|
+
balanced: boolean;
|
|
88
|
+
}
|
|
89
|
+
export interface FoldEconomics {
|
|
90
|
+
/** 1-based chronological fold sequence. */
|
|
91
|
+
seq: number;
|
|
92
|
+
at: number;
|
|
93
|
+
/** S: tokens compressed. */
|
|
94
|
+
S: number;
|
|
95
|
+
/** σ: summary tokens (0 when unknown). */
|
|
96
|
+
sigma: number;
|
|
97
|
+
/** V′: post-fold view size (null when unknown). */
|
|
98
|
+
Vprime: number | null;
|
|
99
|
+
/** Measured hit rate (0–100) of the first post-fold request, else null. */
|
|
100
|
+
hPct: number | null;
|
|
101
|
+
/** Measured compression re-pay (tokens) attributed to this fold. */
|
|
102
|
+
T: number;
|
|
103
|
+
/** Requests observed after this fold. */
|
|
104
|
+
requestsAfter: number;
|
|
105
|
+
/** (S−σ) × requestsAfter — tokens not billed because of this fold
|
|
106
|
+
* (regrowth eats back into it; estimate, not part of the closure). */
|
|
107
|
+
savedSoFar: number;
|
|
108
|
+
/** Sample count until the next fold, null for the last fold. */
|
|
109
|
+
turnsToNextFold: number | null;
|
|
110
|
+
/** Pure token delta (price-independent): T + σ − S. <0 means the fold
|
|
111
|
+
* removed more raw tokens than it forced us to send back. */
|
|
112
|
+
netTokenDelta: number;
|
|
113
|
+
/** One-time cost in input-token-equivalent units (billion-context#359):
|
|
114
|
+
* (w−r)·T + q·σ − r·S, using the effective price profile. */
|
|
115
|
+
oneTimeCostUnits: number;
|
|
116
|
+
/** Per-turn saving in input-token-equivalent units: (S−σ)·r. */
|
|
117
|
+
perTurnSavingUnits: number;
|
|
118
|
+
/** Breakeven turns n* = max(0,oneTimeCost)/perTurnSaving; null when S ≤ σ. */
|
|
119
|
+
breakevenTurns: number | null;
|
|
120
|
+
/** paidBack: measured cadence reached the breakeven point.
|
|
121
|
+
* null while unobservable (no post-fold request yet / S ≤ σ). */
|
|
122
|
+
paidBack: boolean | null;
|
|
123
|
+
}
|
|
124
|
+
export interface EconomicsSummary {
|
|
125
|
+
folds: number;
|
|
126
|
+
/** Σ (S−σ)×requestsAfter across folds (additive: each fold removes its own
|
|
127
|
+
* tokens from every later view). */
|
|
128
|
+
grossSaved: number;
|
|
129
|
+
/** Σ T — measured compression re-pay. */
|
|
130
|
+
repayCost: number;
|
|
131
|
+
/** Σ σ — summary generation cost (output tokens). */
|
|
132
|
+
summaryCost: number;
|
|
133
|
+
/** grossSaved − repayCost − summaryCost. */
|
|
134
|
+
netTokens: number;
|
|
135
|
+
paidBackCount: number;
|
|
136
|
+
notPaidBackCount: number;
|
|
137
|
+
unobservedCount: number;
|
|
138
|
+
}
|
|
139
|
+
export interface CacheReportLine {
|
|
140
|
+
/** 1-based request sequence. */
|
|
141
|
+
seq: number;
|
|
142
|
+
at: number;
|
|
143
|
+
input: number;
|
|
144
|
+
cached: number;
|
|
145
|
+
output: number;
|
|
146
|
+
hitPct: number;
|
|
147
|
+
missed: number;
|
|
148
|
+
newContent: number;
|
|
149
|
+
compRepay: number;
|
|
150
|
+
ttlRepay: number;
|
|
151
|
+
/** Global fold seq credited with compRepay, or null. */
|
|
152
|
+
foldSeq: number | null;
|
|
153
|
+
}
|
|
154
|
+
export interface CacheReportOptions {
|
|
155
|
+
priceProfile?: PriceProfile;
|
|
156
|
+
/** Max line items kept in `lines` (newest retained). Default 512. */
|
|
157
|
+
maxLines?: number;
|
|
158
|
+
}
|
|
159
|
+
export interface CacheReport {
|
|
160
|
+
generatedAt: number;
|
|
161
|
+
/** Effective price profile used for the weighted economics fields. */
|
|
162
|
+
profile: Required<PriceProfile>;
|
|
163
|
+
totals: CacheTotals;
|
|
164
|
+
economics: EconomicsSummary;
|
|
165
|
+
folds: FoldEconomics[];
|
|
166
|
+
lines: CacheReportLine[];
|
|
167
|
+
/** Older lines excluded from `lines` (totals still cover them). */
|
|
168
|
+
linesOmitted: number;
|
|
169
|
+
}
|
|
170
|
+
/** Measured counters for one fold. Streaming hosts accumulate these
|
|
171
|
+
* incrementally; buildCacheReport derives them from raw samples. */
|
|
172
|
+
export interface FoldEconomicsInput {
|
|
173
|
+
seq: number;
|
|
174
|
+
at: number;
|
|
175
|
+
/** S — tokens removed from the view by the fold. */
|
|
176
|
+
S: number;
|
|
177
|
+
/** σ — summary tokens that replaced them (0 when unknown). */
|
|
178
|
+
sigma: number;
|
|
179
|
+
Vprime?: number | null;
|
|
180
|
+
/** Measured hit rate (0-100) of the first post-fold sample. */
|
|
181
|
+
hPct: number | null;
|
|
182
|
+
/** T — measured compRepay attributed to this fold. */
|
|
183
|
+
T: number;
|
|
184
|
+
requestsAfter: number;
|
|
185
|
+
/** Measured turns until the next fold; null while still running. */
|
|
186
|
+
turnsToNextFold: number | null;
|
|
187
|
+
}
|
|
188
|
+
export declare function computeFoldEconomics(f: FoldEconomicsInput, price?: PriceProfile): FoldEconomics;
|
|
189
|
+
export declare function summarizeFoldEconomics(foldEcon: readonly FoldEconomics[]): EconomicsSummary;
|
|
190
|
+
export declare function buildCacheReport(samplesIn: readonly CacheSample[], foldsIn: readonly FoldEvent[], opts?: CacheReportOptions): CacheReport;
|
|
191
|
+
/** Render the report as compact, model- and human-readable text.
|
|
192
|
+
* The identity line is always printed so a broken implementation cannot hide. */
|
|
193
|
+
export declare function formatCacheReport(report: CacheReport, sessionLabel?: string): string;
|
|
194
|
+
//# sourceMappingURL=cache-report.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cache-report.d.ts","sourceRoot":"","sources":["../src/cache-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX;iFAC6E;IAC7E,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,iEAAiE;IACjE,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,gBAAgB,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;uDAEmD;IACnD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+BAA+B;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;mEACmE;AACnE,MAAM,WAAW,YAAY;IAC3B,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,WAAW,GAAG,IAAI,EACxB,GAAG,EAAE,WAAW,EAChB,YAAY,EAAE,SAAS,SAAS,EAAE,GACjC,mBAAmB,CAgCrB;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,+CAA+C;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,2CAA2C;IAC3C,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,4BAA4B;IAC5B,CAAC,EAAE,MAAM,CAAC;IACV,0CAA0C;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,mDAAmD;IACnD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,2EAA2E;IAC3E,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,oEAAoE;IACpE,CAAC,EAAE,MAAM,CAAC;IACV,yCAAyC;IACzC,aAAa,EAAE,MAAM,CAAC;IACtB;2EACuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;kEAC8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB;kEAC8D;IAC9D,gBAAgB,EAAE,MAAM,CAAC;IACzB,gEAAgE;IAChE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,8EAA8E;IAC9E,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B;sEACkE;IAClE,QAAQ,EAAE,OAAO,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd;yCACqC;IACrC,UAAU,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,gCAAgC;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,wDAAwD;IACxD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,sEAAsE;IACtE,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC;IAChC,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,mEAAmE;IACnE,YAAY,EAAE,MAAM,CAAC;CACtB;AAMD;oEACoE;AACpE,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,MAAM,CAAC;IACX,oDAAoD;IACpD,CAAC,EAAE,MAAM,CAAC;IACV,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,+DAA+D;IAC/D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,sDAAsD;IACtD,CAAC,EAAE,MAAM,CAAC;IACV,aAAa,EAAE,MAAM,CAAC;IACtB,oEAAoE;IACpE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,kBAAkB,EACrB,KAAK,CAAC,EAAE,YAAY,GACnB,aAAa,CAiCf;AAED,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,SAAS,aAAa,EAAE,GACjC,gBAAgB,CAkBlB;AAED,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,SAAS,WAAW,EAAE,EACjC,OAAO,EAAE,SAAS,SAAS,EAAE,EAC7B,IAAI,GAAE,kBAAuB,GAC5B,WAAW,CA6Hb;AAqBD;kFACkF;AAClF,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,WAAW,EACnB,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAmER"}
|
package/dist/compress-tools.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export declare const COMPRESS_TOOL_NAME = "compress";
|
|
|
14
14
|
export declare const DECOMPRESS_TOOL_NAME = "decompress";
|
|
15
15
|
export declare const SEARCH_CONTEXT_TOOL_NAME = "search_context";
|
|
16
16
|
export declare const ACP_STATUS_TOOL_NAME = "acp_status";
|
|
17
|
+
export declare const ACP_CACHE_TOOL_NAME = "acp_cache";
|
|
17
18
|
export declare const ABSORB_TOOL_NAME = "absorb";
|
|
18
19
|
/** Text-protocol trigger tags. The model emits these in its text output to
|
|
19
20
|
* request compression (used when host client tools cannot coexist with a
|
|
@@ -198,6 +199,18 @@ export declare const ACP_STATUS_TOOL_OPENAI: {
|
|
|
198
199
|
};
|
|
199
200
|
};
|
|
200
201
|
};
|
|
202
|
+
export declare const ACP_CACHE_TOOL_DESCRIPTION = "Prompt-cache reconciliation: grand ledger (total input/cached/output, overall hit rate) with every request's miss split into new content / compression re-pay / TTL expiry, plus per-fold economics (breakeven turns vs measured cadence). Read-only. Call when asked about cache hits, cache invalidation, or what compression costs.";
|
|
203
|
+
export declare const ACP_CACHE_TOOL_OPENAI: {
|
|
204
|
+
type: "function";
|
|
205
|
+
function: {
|
|
206
|
+
name: string;
|
|
207
|
+
description: string;
|
|
208
|
+
parameters: {
|
|
209
|
+
type: string;
|
|
210
|
+
properties: {};
|
|
211
|
+
};
|
|
212
|
+
};
|
|
213
|
+
};
|
|
201
214
|
export declare const ACP_TOOLS_OPENAI: readonly [{
|
|
202
215
|
type: "function";
|
|
203
216
|
function: {
|
|
@@ -301,6 +314,16 @@ export declare const ACP_TOOLS_OPENAI: readonly [{
|
|
|
301
314
|
properties: {};
|
|
302
315
|
};
|
|
303
316
|
};
|
|
317
|
+
}, {
|
|
318
|
+
type: "function";
|
|
319
|
+
function: {
|
|
320
|
+
name: string;
|
|
321
|
+
description: string;
|
|
322
|
+
parameters: {
|
|
323
|
+
type: string;
|
|
324
|
+
properties: {};
|
|
325
|
+
};
|
|
326
|
+
};
|
|
304
327
|
}];
|
|
305
328
|
/** Anthropic-format tools (name + description + input_schema). The Anthropic
|
|
306
329
|
* request path (ZCode, Claude Code) injects all four so the model can
|
|
@@ -355,6 +378,14 @@ export declare const ACP_STATUS_TOOL: {
|
|
|
355
378
|
properties: {};
|
|
356
379
|
};
|
|
357
380
|
};
|
|
381
|
+
export declare const ACP_CACHE_TOOL: {
|
|
382
|
+
name: string;
|
|
383
|
+
description: string;
|
|
384
|
+
input_schema: {
|
|
385
|
+
type: string;
|
|
386
|
+
properties: {};
|
|
387
|
+
};
|
|
388
|
+
};
|
|
358
389
|
export declare const ACP_TOOLS_ANTHROPIC: readonly [{
|
|
359
390
|
name: string;
|
|
360
391
|
description: string;
|
|
@@ -446,6 +477,13 @@ export declare const ACP_TOOLS_ANTHROPIC: readonly [{
|
|
|
446
477
|
type: string;
|
|
447
478
|
properties: {};
|
|
448
479
|
};
|
|
480
|
+
}, {
|
|
481
|
+
name: string;
|
|
482
|
+
description: string;
|
|
483
|
+
input_schema: {
|
|
484
|
+
type: string;
|
|
485
|
+
properties: {};
|
|
486
|
+
};
|
|
449
487
|
}];
|
|
450
488
|
export declare const COMPRESS_TOOL_RESPONSES: {
|
|
451
489
|
type: "function";
|
|
@@ -546,6 +584,15 @@ export declare const ACP_STATUS_TOOL_RESPONSES: {
|
|
|
546
584
|
properties: {};
|
|
547
585
|
};
|
|
548
586
|
};
|
|
587
|
+
export declare const ACP_CACHE_TOOL_RESPONSES: {
|
|
588
|
+
type: "function";
|
|
589
|
+
name: string;
|
|
590
|
+
description: string;
|
|
591
|
+
parameters: {
|
|
592
|
+
type: string;
|
|
593
|
+
properties: {};
|
|
594
|
+
};
|
|
595
|
+
};
|
|
549
596
|
/** All ACP tools in Responses API flat format, matching ACP_TOOL_NAMES. */
|
|
550
597
|
export declare const ACP_TOOLS_RESPONSES: readonly [{
|
|
551
598
|
type: "function";
|
|
@@ -642,6 +689,14 @@ export declare const ACP_TOOLS_RESPONSES: readonly [{
|
|
|
642
689
|
type: string;
|
|
643
690
|
properties: {};
|
|
644
691
|
};
|
|
692
|
+
}, {
|
|
693
|
+
type: "function";
|
|
694
|
+
name: string;
|
|
695
|
+
description: string;
|
|
696
|
+
parameters: {
|
|
697
|
+
type: string;
|
|
698
|
+
properties: {};
|
|
699
|
+
};
|
|
645
700
|
}];
|
|
646
701
|
/** Read-only ACP tools (no compress) in Responses flat format. Used for the
|
|
647
702
|
* hybrid protocol (codex): compress stays a text marker (batch + STOP), while
|
|
@@ -697,6 +752,14 @@ export declare const ACP_READONLY_TOOLS_RESPONSES: readonly [{
|
|
|
697
752
|
type: string;
|
|
698
753
|
properties: {};
|
|
699
754
|
};
|
|
755
|
+
}, {
|
|
756
|
+
type: "function";
|
|
757
|
+
name: string;
|
|
758
|
+
description: string;
|
|
759
|
+
parameters: {
|
|
760
|
+
type: string;
|
|
761
|
+
properties: {};
|
|
762
|
+
};
|
|
700
763
|
}];
|
|
701
764
|
/** All ACP tool names (dynamic membership — Set, not a static record). Does
|
|
702
765
|
* NOT include absorb: it is opt-in (config.absorb.enabled) and hosts only
|
|
@@ -705,8 +768,8 @@ export declare const ACP_TOOL_NAMES: ReadonlySet<string>;
|
|
|
705
768
|
/** compress/decompress: mutate history → must drive the compress loop (their
|
|
706
769
|
* result is folded into the request before the model continues). */
|
|
707
770
|
export declare const ACP_MUTATING_TOOLS: ReadonlySet<string>;
|
|
708
|
-
/** acp_status/search_context: read-only → must NOT loop. Looping them
|
|
709
|
-
* model re-call until the 5× limit and discarded the whole turn. */
|
|
771
|
+
/** acp_status/search_context/acp_cache: read-only → must NOT loop. Looping them
|
|
772
|
+
* made the model re-call until the 5× limit and discarded the whole turn. */
|
|
710
773
|
export declare const ACP_READONLY_TOOLS: ReadonlySet<string>;
|
|
711
774
|
/** Opt-in absorb tool (instant tool-result absorption). Inject/register only
|
|
712
775
|
* when config.absorb.enabled — NOT part of ACP_TOOLS_* arrays. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress-tools.d.ts","sourceRoot":"","sources":["../src/compress-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,OAAO,
|
|
1
|
+
{"version":3,"file":"compress-tools.d.ts","sourceRoot":"","sources":["../src/compress-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAkB,KAAK,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5D,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,qBAAqB,CAAC;AAE7B,eAAO,MAAM,kBAAkB,aAAa,CAAC;AAC7C,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,wBAAwB,mBAAmB,CAAC;AACzD,eAAO,MAAM,oBAAoB,eAAe,CAAC;AACjD,eAAO,MAAM,mBAAmB,cAAc,CAAC;AAC/C,eAAO,MAAM,gBAAgB,WAAW,CAAC;AAEzC;;;6DAG6D;AAC7D,eAAO,MAAM,aAAa,mBAAmB,CAAC;AAC9C,eAAO,MAAM,cAAc,oBAAoB,CAAC;AAChD,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAC9C,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAChD,eAAO,MAAM,eAAe,iBAAiB,CAAC;AAC9C,eAAO,MAAM,gBAAgB,kBAAkB,CAAC;AAChD,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AACtD,eAAO,MAAM,oBAAoB,sBAAsB,CAAC;AAExD,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF;;;;;qDAKqD;AACrD,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,OAAO,EACd,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GACjC,WAAW,EAAE,CAgCf;AAwBD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDhC,CAAC;AAkCF,wBAAgB,yBAAyB,CACvC,OAAO,GAAE,OAAwB,EACjC,QAAQ,CAAC,EAAE,sBAAsB,GAChC,MAAM,CAMR;AAyDD,wBAAgB,6BAA6B,CAC3C,OAAO,GAAE,OAAwB,EACjC,QAAQ,CAAC,EAAE,sBAAsB,GAChC,MAAM,CAMR;AA6CD,wBAAgB,+BAA+B,CAC7C,OAAO,GAAE,OAAwB,EACjC,QAAQ,CAAC,EAAE,sBAAsB,GAChC,MAAM,CAMR;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;CAyBlC,CAAC;AAEF,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;CAetC,CAAC;AAEF,eAAO,MAAM,sBAAsB;;;;;;;;;;CAWlC,CAAC;AAEF,eAAO,MAAM,0BAA0B,2UACmS,CAAC;AAE3U,eAAO,MAAM,qBAAqB;;;;;;;;;;CAUjC,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMnB,CAAC;AAEX;;;;wDAIwD;AACxD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;CAI3B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;CAI/B,CAAC;AAEF,eAAO,MAAM,eAAe;;;;;;;CAI3B,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;CAI1B,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMtB,CAAC;AAGX,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKnC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;CAKrC,CAAC;AAEF,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;CAKzC,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;CAKrC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;;;;;;;CAKpC,CAAC;AAEF,2EAA2E;AAC3E,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAMtB,CAAC;AAEX;;;;;gFAKgF;AAChF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK/B,CAAC;AAEX;;iDAEiD;AACjD,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,CAM7C,CAAC;AAEH;qEACqE;AACrE,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAGjD,CAAC;AAEH;8EAC8E;AAC9E,eAAO,MAAM,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAIjD,CAAC;AAEH;mEACmE;AACnE,eAAO,MAAM,uBAAuB,mUAC8R,CAAC;AAmBnU,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;CAIvB,CAAC;AAEF,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;CAO9B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -11,8 +11,8 @@ export { resolveBoundaries, parseBoundary, BoundaryNotFoundError, visibleBlockAn
|
|
|
11
11
|
export { defaultCountTokens, estimateTokensFast, createBpeTokenizer, countMessageTokens, } from "./tokenize.js";
|
|
12
12
|
export type { TokenCountFn } from "./tokenize.js";
|
|
13
13
|
export { renderNudgeText, formatRanges } from "./nudge-text.js";
|
|
14
|
-
export type { NudgeVoice, RenderedNudge, NudgePromptSections } from "./nudge-text.js";
|
|
15
|
-
export { resolveBlockSpan, activeBlockSpans, formatCreatedBlocks } from "./block-map.js";
|
|
14
|
+
export type { NudgeVoice, RenderedNudge, NudgePromptSections, } from "./nudge-text.js";
|
|
15
|
+
export { resolveBlockSpan, activeBlockSpans, formatCreatedBlocks, } from "./block-map.js";
|
|
16
16
|
export { COMPRESS_PHILOSOPHY, HOW_TO_COMPRESS_RULES, TIER2_DISTILL_RULES, TIER3_CONDENSE_RULES, } from "./compression-rules.js";
|
|
17
17
|
export { defaultPrompts, resolvePrompts } from "./prompts.js";
|
|
18
18
|
export type { Prompts, ResolvePromptsOptions } from "./prompts.js";
|
|
@@ -26,6 +26,8 @@ export { parseBlockIdArg, findBlocksOverlappingMessages, findActiveAncestor, dea
|
|
|
26
26
|
export type { DeactivateOptions, CollectedContentResult, CollectContentOptions, } from "./decompress.js";
|
|
27
27
|
export { buildStatusReport, buildRecap } from "./report.js";
|
|
28
28
|
export type { StatusReportOptions, StatusReportMeta } from "./report.js";
|
|
29
|
+
export { buildCacheReport, computeFoldEconomics, decomposeSample, formatCacheReport, summarizeFoldEconomics, } from "./cache-report.js";
|
|
30
|
+
export type { CacheSample, FoldEvent, FoldEconomicsInput, PriceProfile, SampleDecomposition, CacheTotals, FoldEconomics, EconomicsSummary, CacheReportLine, CacheReportOptions, CacheReport, } from "./cache-report.js";
|
|
29
31
|
export { renderHandoff, renderMessage, matchSession } from "./handoff.js";
|
|
30
32
|
export type { HandoffInput, HandoffMeta, HandoffBlockFull } from "./handoff.js";
|
|
31
33
|
export { hideConsumedCompressCalls } from "./hide-consumed.js";
|
|
@@ -36,7 +38,7 @@ export type { AbsorbInput, AbsorbOutcome, ParsedAbsorb, AppendAbsorbPromptsResul
|
|
|
36
38
|
export { rebuildCompressionState } from "./rebuild.js";
|
|
37
39
|
export type { RebuildResult, RebuildPorts } from "./rebuild.js";
|
|
38
40
|
export { parseCompressArgs } from "./parse-compress-input.js";
|
|
39
|
-
export type { CompressParseDiagnostics, CompressParseKind, ParsedCompressInput } from "./parse-compress-input.js";
|
|
41
|
+
export type { CompressParseDiagnostics, CompressParseKind, ParsedCompressInput, } from "./parse-compress-input.js";
|
|
40
42
|
export { renderVisibleRefs, renderRefsNode, createRenderRefsNode, } from "./render-refs.js";
|
|
41
43
|
export type { RenderStrategy } from "./render-refs.js";
|
|
42
44
|
export { resolveTransformChannel } from "./transform-channel.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,YAAY,EACV,KAAK,EACL,eAAe,EACf,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,aAAa,EACb,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,GAChB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC5D,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,KAAK,EACL,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,GACzB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AACvB,YAAY,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAChE,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|