@animalabs/membrane 0.5.81 → 0.5.82
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-wire-receipt.d.ts +13 -0
- package/dist/cache-wire-receipt.d.ts.map +1 -0
- package/dist/cache-wire-receipt.js +108 -0
- package/dist/cache-wire-receipt.js.map +1 -0
- package/dist/formatters/anthropic-xml.d.ts.map +1 -1
- package/dist/formatters/anthropic-xml.js +9 -6
- package/dist/formatters/anthropic-xml.js.map +1 -1
- package/dist/formatters/native.d.ts.map +1 -1
- package/dist/formatters/native.js +16 -3
- package/dist/formatters/native.js.map +1 -1
- package/dist/formatters/types.d.ts +2 -0
- package/dist/formatters/types.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/membrane.d.ts.map +1 -1
- package/dist/membrane.js +15 -4
- package/dist/membrane.js.map +1 -1
- package/dist/providers/anthropic.d.ts +12 -1
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +4 -4
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/types/request.d.ts +6 -0
- package/dist/types/request.d.ts.map +1 -1
- package/dist/utils/cache-marker-budget.d.ts +9 -0
- package/dist/utils/cache-marker-budget.d.ts.map +1 -1
- package/dist/utils/cache-marker-budget.js +19 -0
- package/dist/utils/cache-marker-budget.js.map +1 -1
- package/package.json +1 -1
- package/src/cache-wire-receipt.ts +125 -0
- package/src/formatters/anthropic-xml.ts +9 -8
- package/src/formatters/native.ts +23 -2
- package/src/formatters/types.ts +3 -0
- package/src/index.ts +6 -0
- package/src/membrane.ts +14 -3
- package/src/providers/anthropic.ts +18 -6
- package/src/providers/index.ts +1 -0
- package/src/types/request.ts +7 -0
- package/src/utils/cache-marker-budget.ts +29 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../src/providers/anthropic.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Provider exports
|
|
3
3
|
*/
|
|
4
|
-
export { AnthropicAdapter, toAnthropicContent, fromAnthropicContent, type AnthropicAdapterConfig, } from './anthropic.js';
|
|
4
|
+
export { AnthropicAdapter, toAnthropicContent, fromAnthropicContent, type AnthropicAdapterConfig, type DynamicHeadersContext, } from './anthropic.js';
|
|
5
5
|
export { flattenRootSchemaUnion } from './anthropic-tool-schema.js';
|
|
6
6
|
export { OpenRouterAdapter, toOpenRouterMessages, fromOpenRouterMessage, type OpenRouterAdapterConfig, } from './openrouter.js';
|
|
7
7
|
export { OpenAIAdapter, toOpenAIContent, fromOpenAIContent, type OpenAIAdapterConfig, } from './openai.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,EACpB,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,GAC3B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,EACjB,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,EACjB,KAAK,6BAA6B,GACnC,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,wBAAwB,EACxB,KAAK,8BAA8B,GACpC,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,iBAAiB,GACvB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,cAAc,EACd,KAAK,oBAAoB,GAC1B,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,EACf,KAAK,mBAAmB,GACzB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,sBAAsB,EACtB,KAAK,4BAA4B,GAClC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,yBAAyB,EACzB,KAAK,+BAA+B,EACpC,KAAK,8BAA8B,EACnC,KAAK,kCAAkC,EACvC,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,GAC/B,MAAM,2BAA2B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,oBAAoB,GAGrB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEpE,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,GAEtB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,aAAa,EACb,eAAe,EACf,iBAAiB,GAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,uBAAuB,EACvB,gBAAgB,EAChB,iBAAiB,GAElB,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EACL,wBAAwB,GAEzB,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,mBAAmB,GAEpB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,cAAc,GAEf,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,aAAa,EACb,aAAa,EACb,eAAe,GAEhB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,sBAAsB,GAEvB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,yBAAyB,GAQ1B,MAAM,2BAA2B,CAAC"}
|
package/dist/types/request.d.ts
CHANGED
|
@@ -64,6 +64,9 @@ export interface RequestOptions {
|
|
|
64
64
|
}
|
|
65
65
|
export type ToolMode = 'xml' | 'native' | 'auto';
|
|
66
66
|
export interface NormalizedRequest {
|
|
67
|
+
/** Receives the exact post-format/post-hook cache receipt immediately before
|
|
68
|
+
* network submission. Observability only; never forwarded to providers. */
|
|
69
|
+
onCacheWireReceipt?: (receipt: import('../cache-wire-receipt.js').CacheWireReceipt) => void;
|
|
67
70
|
/**
|
|
68
71
|
* Explicitly own the loss of old inline images when the serialized request
|
|
69
72
|
* exceeds the API byte cap: oldest images are replaced with loud
|
|
@@ -96,6 +99,9 @@ export interface NormalizedRequest {
|
|
|
96
99
|
* Set to false to disable cache_control markers in requests.
|
|
97
100
|
*/
|
|
98
101
|
promptCaching?: boolean;
|
|
102
|
+
/** Marker ownership policy. `cm-owned` disables every formatter-generated
|
|
103
|
+
* system/context-prefix marker; only normalized message breakpoints survive. */
|
|
104
|
+
cacheMarkers?: 'membrane-system' | 'cm-owned';
|
|
99
105
|
/**
|
|
100
106
|
* Cache TTL for Anthropic prompt caching.
|
|
101
107
|
* '5m' (default) = 5 minute TTL
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/types/request.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,6 +58,15 @@ export interface WireCacheSurfaces {
|
|
|
58
58
|
export declare function ownSystemBlocks(system: unknown): unknown;
|
|
59
59
|
/** How many cache_control markers this request would actually put on the wire. */
|
|
60
60
|
export declare function countWireCacheMarkers(surfaces: WireCacheSurfaces): number;
|
|
61
|
+
/**
|
|
62
|
+
* Validate a caller-owned marker layout without changing it.
|
|
63
|
+
*
|
|
64
|
+
* In `cm-owned` mode the caller has deliberately allocated the complete
|
|
65
|
+
* breakpoint set. Silently stripping or reordering those markers would make
|
|
66
|
+
* the cache receipt describe a request that was never sent, so invalid
|
|
67
|
+
* layouts fail before submission instead of using the legacy repair clamp.
|
|
68
|
+
*/
|
|
69
|
+
export declare function assertCacheMarkersWithinLimit(surfaces: WireCacheSurfaces, site: string): number;
|
|
61
70
|
/**
|
|
62
71
|
* Bring a request inside the breakpoint budget, in place, at the last exit
|
|
63
72
|
* before the adapter call. Two repairs, both loud:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-marker-budget.d.ts","sourceRoot":"","sources":["../../src/utils/cache-marker-budget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAiC1C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAuCD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAGxD;AAcD,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAEzE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,MAAM,GACX;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAqClE"}
|
|
1
|
+
{"version":3,"file":"cache-marker-budget.d.ts","sourceRoot":"","sources":["../../src/utils/cache-marker-budget.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,uEAAuE;AACvE,eAAO,MAAM,qBAAqB,IAAI,CAAC;AAEvC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAiC1C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAuCD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAGxD;AAcD,kFAAkF;AAClF,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,MAAM,CAEzE;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,MAAM,GACX,MAAM,CAgBR;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,EAAE,MAAM,GACX;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,CAqClE"}
|
|
@@ -140,6 +140,25 @@ function copyBlockTree(candidate, depth) {
|
|
|
140
140
|
export function countWireCacheMarkers(surfaces) {
|
|
141
141
|
return collectMarkedBlocks(surfaces).length;
|
|
142
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* Validate a caller-owned marker layout without changing it.
|
|
145
|
+
*
|
|
146
|
+
* In `cm-owned` mode the caller has deliberately allocated the complete
|
|
147
|
+
* breakpoint set. Silently stripping or reordering those markers would make
|
|
148
|
+
* the cache receipt describe a request that was never sent, so invalid
|
|
149
|
+
* layouts fail before submission instead of using the legacy repair clamp.
|
|
150
|
+
*/
|
|
151
|
+
export function assertCacheMarkersWithinLimit(surfaces, site) {
|
|
152
|
+
const marked = collectMarkedBlocks(surfaces);
|
|
153
|
+
const invalidThinking = marked.filter((block) => block.type === 'thinking' || block.type === 'redacted_thinking').length;
|
|
154
|
+
if (invalidThinking > 0) {
|
|
155
|
+
throw new Error(`${site}: caller-owned cache_control cannot be attached to thinking/redacted_thinking blocks`);
|
|
156
|
+
}
|
|
157
|
+
if (marked.length > MAX_CACHE_BREAKPOINTS) {
|
|
158
|
+
throw new Error(`${site}: cache_control limit exceeded: ${marked.length} markers (maximum ${MAX_CACHE_BREAKPOINTS})`);
|
|
159
|
+
}
|
|
160
|
+
return marked.length;
|
|
161
|
+
}
|
|
143
162
|
/**
|
|
144
163
|
* Bring a request inside the breakpoint budget, in place, at the last exit
|
|
145
164
|
* before the adapter call. Two repairs, both loud:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache-marker-budget.js","sourceRoot":"","sources":["../../src/utils/cache-marker-budget.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cache-marker-budget.js","sourceRoot":"","sources":["../../src/utils/cache-marker-budget.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { createHash } from 'node:crypto';
|
|
2
|
+
|
|
3
|
+
export interface CacheWireMarkerReceipt {
|
|
4
|
+
ordinal: number;
|
|
5
|
+
prefixHash: string;
|
|
6
|
+
estimatedOffset: number;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
export interface CacheWireReceipt {
|
|
10
|
+
requestHash: string;
|
|
11
|
+
markers: CacheWireMarkerReceipt[];
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/** Hash the exact post-format/post-hook provider request and every marked
|
|
15
|
+
* prefix. Token offsets are estimates; provider usage reconciles them later. */
|
|
16
|
+
export function computeCacheWireReceipt(rawRequest: unknown): CacheWireReceipt {
|
|
17
|
+
const requestHash = sha(stableStringify(rawRequest));
|
|
18
|
+
const blocks = flattenWireBlocks(rawRequest);
|
|
19
|
+
const prefix: unknown[] = [];
|
|
20
|
+
const markers: CacheWireMarkerReceipt[] = [];
|
|
21
|
+
let chars = 0;
|
|
22
|
+
for (const unit of blocks) {
|
|
23
|
+
prefix.push(unit.identity);
|
|
24
|
+
chars += unit.estimatedChars;
|
|
25
|
+
if (unit.marked) {
|
|
26
|
+
markers.push({
|
|
27
|
+
ordinal: markers.length,
|
|
28
|
+
prefixHash: sha(stableStringify(prefix)),
|
|
29
|
+
estimatedOffset: Math.ceil(chars / 4),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
return { requestHash, markers };
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
interface ReceiptUnit {
|
|
37
|
+
identity: unknown;
|
|
38
|
+
marked: boolean;
|
|
39
|
+
estimatedChars: number;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
function flattenWireBlocks(rawRequest: unknown): ReceiptUnit[] {
|
|
43
|
+
if (!rawRequest || typeof rawRequest !== 'object') {
|
|
44
|
+
return [{ identity: rawRequest, marked: false, estimatedChars: stableStringify(rawRequest).length }];
|
|
45
|
+
}
|
|
46
|
+
const request = rawRequest as Record<string, unknown>;
|
|
47
|
+
const out: ReceiptUnit[] = [];
|
|
48
|
+
if (Array.isArray(request.tools)) {
|
|
49
|
+
request.tools.forEach((tool, index) => out.push({
|
|
50
|
+
identity: { surface: 'tool', index, tool },
|
|
51
|
+
marked: hasCacheControl(tool),
|
|
52
|
+
estimatedChars: stableStringify(tool).length,
|
|
53
|
+
}));
|
|
54
|
+
} else if (request.tools !== undefined) {
|
|
55
|
+
out.push({
|
|
56
|
+
identity: { surface: 'tools', value: request.tools },
|
|
57
|
+
marked: hasCacheControl(request.tools),
|
|
58
|
+
estimatedChars: stableStringify(request.tools).length,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
if (request.system !== undefined) {
|
|
62
|
+
const system = request.system;
|
|
63
|
+
if (Array.isArray(system)) {
|
|
64
|
+
system.forEach((block, index) => out.push({
|
|
65
|
+
identity: { surface: 'system', index, block },
|
|
66
|
+
marked: hasCacheControl(block),
|
|
67
|
+
estimatedChars: stableStringify(block).length,
|
|
68
|
+
}));
|
|
69
|
+
} else {
|
|
70
|
+
out.push({
|
|
71
|
+
identity: { surface: 'system', value: system },
|
|
72
|
+
marked: hasCacheControl(system),
|
|
73
|
+
estimatedChars: stableStringify(system).length,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
if (Array.isArray(request.messages)) {
|
|
78
|
+
request.messages.forEach((message, messageIndex) => {
|
|
79
|
+
if (!message || typeof message !== 'object') {
|
|
80
|
+
out.push({
|
|
81
|
+
identity: { surface: 'message', messageIndex, value: message },
|
|
82
|
+
marked: false,
|
|
83
|
+
estimatedChars: stableStringify(message).length,
|
|
84
|
+
});
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
const record = message as Record<string, unknown>;
|
|
88
|
+
const content = (message as Record<string, unknown>).content;
|
|
89
|
+
if (Array.isArray(content)) {
|
|
90
|
+
content.forEach((block, blockIndex) => out.push({
|
|
91
|
+
identity: {
|
|
92
|
+
surface: 'message-block', messageIndex, blockIndex,
|
|
93
|
+
role: record.role, block,
|
|
94
|
+
},
|
|
95
|
+
marked: hasCacheControl(block),
|
|
96
|
+
estimatedChars: stableStringify({ role: record.role, content: [block] }).length,
|
|
97
|
+
}));
|
|
98
|
+
} else {
|
|
99
|
+
out.push({
|
|
100
|
+
identity: { surface: 'message', messageIndex, role: record.role, content },
|
|
101
|
+
marked: hasCacheControl(message),
|
|
102
|
+
estimatedChars: stableStringify(message).length,
|
|
103
|
+
});
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
return out;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function hasCacheControl(value: unknown): boolean {
|
|
111
|
+
return Boolean(value && typeof value === 'object' && (value as Record<string, unknown>).cache_control);
|
|
112
|
+
}
|
|
113
|
+
|
|
114
|
+
function stableStringify(value: unknown): string {
|
|
115
|
+
if (Array.isArray(value)) return `[${value.map(stableStringify).join(',')}]`;
|
|
116
|
+
if (value && typeof value === 'object') {
|
|
117
|
+
const record = value as Record<string, unknown>;
|
|
118
|
+
return `{${Object.keys(record).sort().map((key) => `${JSON.stringify(key)}:${stableStringify(record[key])}`).join(',')}}`;
|
|
119
|
+
}
|
|
120
|
+
return JSON.stringify(value) ?? 'null';
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
function sha(value: string): string {
|
|
124
|
+
return createHash('sha256').update(value).digest('hex');
|
|
125
|
+
}
|
|
@@ -34,7 +34,7 @@ import {
|
|
|
34
34
|
type ToolDefinitionForPrompt,
|
|
35
35
|
} from '../utils/tool-parser.js';
|
|
36
36
|
import { IncrementalXmlParser } from '../utils/stream-parser.js';
|
|
37
|
-
import { clampCacheMarkers } from '../utils/cache-marker-budget.js';
|
|
37
|
+
import { assertCacheMarkersWithinLimit, clampCacheMarkers } from '../utils/cache-marker-budget.js';
|
|
38
38
|
import { lastCacheableBlockIndex } from './native.js';
|
|
39
39
|
import { isAcceptedImageMediaType, strippedImagePlaceholder } from '../utils/image-media.js';
|
|
40
40
|
|
|
@@ -149,6 +149,7 @@ export class AnthropicXmlFormatter implements PrefillFormatter {
|
|
|
149
149
|
thinking,
|
|
150
150
|
systemPrompt,
|
|
151
151
|
promptCaching = false,
|
|
152
|
+
cacheMarkers = 'membrane-system',
|
|
152
153
|
cacheTtl,
|
|
153
154
|
contextPrefix,
|
|
154
155
|
prefillUserMessage,
|
|
@@ -233,7 +234,7 @@ export class AnthropicXmlFormatter implements PrefillFormatter {
|
|
|
233
234
|
systemContent = systemBlocks;
|
|
234
235
|
} else if (systemText) {
|
|
235
236
|
const systemBlock: Record<string, unknown> = { type: 'text', text: systemText };
|
|
236
|
-
if (promptCaching) {
|
|
237
|
+
if (promptCaching && cacheMarkers === 'membrane-system') {
|
|
237
238
|
systemBlock.cache_control = cacheControl;
|
|
238
239
|
}
|
|
239
240
|
systemContent = [systemBlock];
|
|
@@ -242,7 +243,7 @@ export class AnthropicXmlFormatter implements PrefillFormatter {
|
|
|
242
243
|
// Add context prefix as first cached assistant message (for simulacrum seeding)
|
|
243
244
|
if (contextPrefix) {
|
|
244
245
|
const prefixBlock: Record<string, unknown> = { type: 'text', text: contextPrefix };
|
|
245
|
-
if (promptCaching) {
|
|
246
|
+
if (promptCaching && cacheMarkers === 'membrane-system') {
|
|
246
247
|
prefixBlock.cache_control = cacheControl;
|
|
247
248
|
}
|
|
248
249
|
providerMessages.push({
|
|
@@ -425,7 +426,7 @@ export class AnthropicXmlFormatter implements PrefillFormatter {
|
|
|
425
426
|
type: 'text',
|
|
426
427
|
text: 'The assistant is in CLI simulation mode, and responds to the user\'s CLI commands only with the output of the command.',
|
|
427
428
|
};
|
|
428
|
-
if (promptCaching) {
|
|
429
|
+
if (promptCaching && cacheMarkers === 'membrane-system') {
|
|
429
430
|
cliSystemBlock.cache_control = cacheControl;
|
|
430
431
|
}
|
|
431
432
|
systemContent = [cliSystemBlock];
|
|
@@ -457,10 +458,10 @@ export class AnthropicXmlFormatter implements PrefillFormatter {
|
|
|
457
458
|
// limit, which rejects the request outright. Clamping here, once, on the
|
|
458
459
|
// finished artifacts is the only count that can see all five sites; the
|
|
459
460
|
// reported tally is that same recount, so it can never drift from the wire.
|
|
460
|
-
const
|
|
461
|
-
|
|
462
|
-
'anthropic-xml'
|
|
463
|
-
|
|
461
|
+
const cacheSurfaces = { messages: providerMessages, system: systemContent, tools: nativeTools };
|
|
462
|
+
const budget = cacheMarkers === 'cm-owned'
|
|
463
|
+
? { total: assertCacheMarkersWithinLimit(cacheSurfaces, 'anthropic-xml') }
|
|
464
|
+
: clampCacheMarkers(cacheSurfaces, 'anthropic-xml');
|
|
464
465
|
|
|
465
466
|
return {
|
|
466
467
|
messages: providerMessages,
|
package/src/formatters/native.ts
CHANGED
|
@@ -30,6 +30,7 @@ import type {
|
|
|
30
30
|
} from './types.js';
|
|
31
31
|
import { normalizeToolPairs, mergeConsecutiveRoles } from './normalize-tool-pairs.js';
|
|
32
32
|
import { isAcceptedImageMediaType, strippedImagePlaceholder } from '../utils/image-media.js';
|
|
33
|
+
import { assertCacheMarkersWithinLimit } from '../utils/cache-marker-budget.js';
|
|
33
34
|
|
|
34
35
|
/** Index of the last content block that can carry cache_control. Anthropic
|
|
35
36
|
* rejects cache_control on thinking / redacted_thinking blocks, so a cache
|
|
@@ -184,6 +185,7 @@ export class NativeFormatter implements PrefillFormatter {
|
|
|
184
185
|
tools,
|
|
185
186
|
systemPrompt,
|
|
186
187
|
promptCaching = false,
|
|
188
|
+
cacheMarkers = 'membrane-system',
|
|
187
189
|
cacheTtl,
|
|
188
190
|
hasCacheMarker,
|
|
189
191
|
contextPrefix,
|
|
@@ -209,7 +211,7 @@ export class NativeFormatter implements PrefillFormatter {
|
|
|
209
211
|
// Add context prefix as first assistant message (for simulacrum seeding)
|
|
210
212
|
if (contextPrefix) {
|
|
211
213
|
const prefixBlock: Record<string, unknown> = { type: 'text', text: contextPrefix };
|
|
212
|
-
if (promptCaching && cacheControl) {
|
|
214
|
+
if (promptCaching && cacheControl && cacheMarkers === 'membrane-system') {
|
|
213
215
|
prefixBlock.cache_control = cacheControl;
|
|
214
216
|
markedBreakpoints++;
|
|
215
217
|
}
|
|
@@ -248,6 +250,13 @@ export class NativeFormatter implements PrefillFormatter {
|
|
|
248
250
|
includeNames: participantMode === 'multiuser' && !isAssistant,
|
|
249
251
|
});
|
|
250
252
|
|
|
253
|
+
if (
|
|
254
|
+
cacheMarkers === 'cm-owned' &&
|
|
255
|
+
content.some((block) => Boolean((block as Record<string, unknown>).cache_control))
|
|
256
|
+
) {
|
|
257
|
+
throw new Error('cm-owned cache markers reject imported block-level cache_control');
|
|
258
|
+
}
|
|
259
|
+
|
|
251
260
|
if (content.length === 0) {
|
|
252
261
|
continue; // Skip empty messages
|
|
253
262
|
}
|
|
@@ -302,7 +311,13 @@ export class NativeFormatter implements PrefillFormatter {
|
|
|
302
311
|
// Build system content. Cache the system block only as a fallback — when no
|
|
303
312
|
// message breakpoint was marked (see note above; otherwise a message
|
|
304
313
|
// breakpoint already caches tools+system as part of its prefix).
|
|
305
|
-
|
|
314
|
+
if (markedBreakpoints > 4) {
|
|
315
|
+
throw new Error(`cache_control limit exceeded: ${markedBreakpoints} markers (maximum 4)`);
|
|
316
|
+
}
|
|
317
|
+
const cacheSystem =
|
|
318
|
+
cacheMarkers === 'membrane-system' && cacheControl && markedBreakpoints === 0
|
|
319
|
+
? cacheControl
|
|
320
|
+
: undefined;
|
|
306
321
|
let systemContent: unknown;
|
|
307
322
|
if (typeof systemPrompt === 'string') {
|
|
308
323
|
if (cacheSystem) {
|
|
@@ -327,6 +342,12 @@ export class NativeFormatter implements PrefillFormatter {
|
|
|
327
342
|
|
|
328
343
|
// Native tools
|
|
329
344
|
const nativeTools = tools?.length ? this.convertToNativeTools(tools) : undefined;
|
|
345
|
+
if (cacheMarkers === 'cm-owned') {
|
|
346
|
+
assertCacheMarkersWithinLimit(
|
|
347
|
+
{ messages: mergedMessages, system: systemContent, tools: nativeTools },
|
|
348
|
+
'native'
|
|
349
|
+
);
|
|
350
|
+
}
|
|
330
351
|
|
|
331
352
|
return {
|
|
332
353
|
messages: mergedMessages,
|
package/src/formatters/types.ts
CHANGED
|
@@ -68,6 +68,9 @@ export interface BuildOptions {
|
|
|
68
68
|
/** Enable prompt caching (Anthropic-specific) */
|
|
69
69
|
promptCaching?: boolean;
|
|
70
70
|
|
|
71
|
+
/** See NormalizedRequest.cacheMarkers. */
|
|
72
|
+
cacheMarkers?: 'membrane-system' | 'cm-owned';
|
|
73
|
+
|
|
71
74
|
/** Cache TTL for Anthropic prompt caching - '5m' (default) or '1h' for extended */
|
|
72
75
|
cacheTtl?: '5m' | '1h';
|
|
73
76
|
|
package/src/index.ts
CHANGED
package/src/membrane.ts
CHANGED
|
@@ -35,6 +35,7 @@ import {
|
|
|
35
35
|
stripThinkingForPrefill,
|
|
36
36
|
} from './utils/thinking-carriers.js';
|
|
37
37
|
import {
|
|
38
|
+
assertCacheMarkersWithinLimit,
|
|
38
39
|
countWireCacheMarkers,
|
|
39
40
|
clampCacheMarkers,
|
|
40
41
|
ownSystemBlocks,
|
|
@@ -51,6 +52,7 @@ import {
|
|
|
51
52
|
unsupportedError,
|
|
52
53
|
} from './types/index.js';
|
|
53
54
|
import type { BuildResult } from './formatters/types.js';
|
|
55
|
+
import { computeCacheWireReceipt } from './cache-wire-receipt.js';
|
|
54
56
|
import {
|
|
55
57
|
parseToolCalls,
|
|
56
58
|
formatToolResults,
|
|
@@ -247,7 +249,12 @@ export class Membrane {
|
|
|
247
249
|
|
|
248
250
|
// Last exit before the adapter: the only place that sees EVERY
|
|
249
251
|
// contribution (builder, formatter, passthrough, float, hook).
|
|
250
|
-
|
|
252
|
+
if (request.cacheMarkers === 'cm-owned') {
|
|
253
|
+
assertCacheMarkersWithinLimit(finalRequest, 'complete');
|
|
254
|
+
} else {
|
|
255
|
+
clampCacheMarkers(finalRequest, 'complete');
|
|
256
|
+
}
|
|
257
|
+
request.onCacheWireReceipt?.(computeCacheWireReceipt(finalRequest));
|
|
251
258
|
|
|
252
259
|
const rawProviderResponse = await this.adapter.complete(finalRequest, {
|
|
253
260
|
signal: options.signal,
|
|
@@ -2153,6 +2160,7 @@ export class Membrane {
|
|
|
2153
2160
|
thinking: request.config.thinking,
|
|
2154
2161
|
systemPrompt: request.system,
|
|
2155
2162
|
promptCaching: request.promptCaching ?? this.config.defaultPromptCaching ?? true, // Default true for backward compat
|
|
2163
|
+
cacheMarkers: request.cacheMarkers ?? 'membrane-system',
|
|
2156
2164
|
cacheTtl: request.cacheTtl,
|
|
2157
2165
|
additionalStopSequences,
|
|
2158
2166
|
maxParticipantsForStop,
|
|
@@ -2266,8 +2274,11 @@ export class Membrane {
|
|
|
2266
2274
|
// streaming path — stream(), streamYielding(), both tool loops — funnels
|
|
2267
2275
|
// through here, so this is the one clamp they all get, and its tally is
|
|
2268
2276
|
// therefore the only count that describes the wire.
|
|
2269
|
-
const
|
|
2270
|
-
|
|
2277
|
+
const markerCount = normalizedRequest.cacheMarkers === 'cm-owned'
|
|
2278
|
+
? assertCacheMarkersWithinLimit(finalRequest, 'streamOnce')
|
|
2279
|
+
: clampCacheMarkers(finalRequest, 'streamOnce').total;
|
|
2280
|
+
normalizedRequest.onCacheWireReceipt?.(computeCacheWireReceipt(finalRequest));
|
|
2281
|
+
onWireCacheMarkers?.(markerCount);
|
|
2271
2282
|
|
|
2272
2283
|
// Retries are only safe when the caller can discard the abandoned
|
|
2273
2284
|
// attempt, so they require BOTH a budget and an onRetrying hook.
|