@animalabs/membrane 0.5.78 → 0.5.80

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.
Files changed (58) hide show
  1. package/dist/cache-keepalive.d.ts +115 -0
  2. package/dist/cache-keepalive.d.ts.map +1 -0
  3. package/dist/cache-keepalive.js +0 -0
  4. package/dist/cache-keepalive.js.map +1 -0
  5. package/dist/cache-keepalive.test.d.ts +2 -0
  6. package/dist/cache-keepalive.test.d.ts.map +1 -0
  7. package/dist/cache-keepalive.test.js +206 -0
  8. package/dist/cache-keepalive.test.js.map +1 -0
  9. package/dist/floating-cache-marker.test.d.ts +2 -0
  10. package/dist/floating-cache-marker.test.d.ts.map +1 -0
  11. package/dist/floating-cache-marker.test.js +242 -0
  12. package/dist/floating-cache-marker.test.js.map +1 -0
  13. package/dist/formatters/anthropic-xml.d.ts.map +1 -1
  14. package/dist/formatters/anthropic-xml.js +30 -2
  15. package/dist/formatters/anthropic-xml.js.map +1 -1
  16. package/dist/index.d.ts +2 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +2 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/membrane.d.ts +7 -1
  21. package/dist/membrane.d.ts.map +1 -1
  22. package/dist/membrane.js +148 -5
  23. package/dist/membrane.js.map +1 -1
  24. package/dist/providers/anthropic.d.ts +20 -0
  25. package/dist/providers/anthropic.d.ts.map +1 -1
  26. package/dist/providers/anthropic.js +23 -3
  27. package/dist/providers/anthropic.js.map +1 -1
  28. package/dist/providers/bedrock.d.ts.map +1 -1
  29. package/dist/providers/bedrock.js +31 -2
  30. package/dist/providers/bedrock.js.map +1 -1
  31. package/dist/types/config.d.ts +5 -0
  32. package/dist/types/config.d.ts.map +1 -1
  33. package/dist/types/config.js.map +1 -1
  34. package/dist/types/content.d.ts +5 -0
  35. package/dist/types/content.d.ts.map +1 -1
  36. package/dist/types/content.js.map +1 -1
  37. package/dist/types/request.d.ts +13 -0
  38. package/dist/types/request.d.ts.map +1 -1
  39. package/dist/types/tools.d.ts +19 -0
  40. package/dist/types/tools.d.ts.map +1 -1
  41. package/dist/utils/tool-parser.d.ts +16 -2
  42. package/dist/utils/tool-parser.d.ts.map +1 -1
  43. package/dist/utils/tool-parser.js +143 -35
  44. package/dist/utils/tool-parser.js.map +1 -1
  45. package/package.json +3 -2
  46. package/src/cache-keepalive.test.ts +244 -0
  47. package/src/cache-keepalive.ts +385 -0
  48. package/src/floating-cache-marker.test.ts +261 -0
  49. package/src/formatters/anthropic-xml.ts +30 -2
  50. package/src/index.ts +13 -0
  51. package/src/membrane.ts +143 -5
  52. package/src/providers/anthropic.ts +46 -3
  53. package/src/providers/bedrock.ts +32 -1
  54. package/src/types/config.ts +6 -0
  55. package/src/types/content.ts +5 -0
  56. package/src/types/request.ts +14 -0
  57. package/src/types/tools.ts +20 -0
  58. package/src/utils/tool-parser.ts +147 -36
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floating-cache-marker.test.js","sourceRoot":"","sources":["../src/floating-cache-marker.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-xml.d.ts","sourceRoot":"","sources":["../../src/formatters/anthropic-xml.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EAEZ,QAAQ,EACR,UAAU,EAIX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EAEhB,MAAM,YAAY,CAAC;AAepB,MAAM,WAAW,2BAA4B,SAAQ,eAAe;IAClE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAE5B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAC;IAE9C;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAuCD,qBAAa,qBAAsB,YAAW,gBAAgB;IAC5D,QAAQ,CAAC,IAAI,mBAAmB;IAChC,QAAQ,CAAC,WAAW,QAAQ;IAE5B,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,GAAE,2BAAgC;IAgBpD,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,YAAY,GAAG,WAAW;IA6QhF,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM;IAYlF,kBAAkB,IAAI,YAAY;IAIlC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE;IAK3C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIpC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE;IASnD,OAAO,CAAC,cAAc;IAqDtB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,gBAAgB;IA4BxB,qEAAqE;IACrE,OAAO,CAAC,mBAAmB;IA4B3B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,kBAAkB;IAmC1B,OAAO,CAAC,oBAAoB;CAO7B"}
1
+ {"version":3,"file":"anthropic-xml.d.ts","sourceRoot":"","sources":["../../src/formatters/anthropic-xml.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EAEZ,QAAQ,EACR,UAAU,EAIX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,eAAe,EAEhB,MAAM,YAAY,CAAC;AAepB,MAAM,WAAW,2BAA4B,SAAQ,eAAe;IAClE;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC;IAE5B;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,cAAc,GAAG,QAAQ,CAAC;IAE9C;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACjC;AAwCD,qBAAa,qBAAsB,YAAW,gBAAgB;IAC5D,QAAQ,CAAC,IAAI,mBAAmB;IAChC,QAAQ,CAAC,WAAW,QAAQ;IAE5B,OAAO,CAAC,MAAM,CAAwC;gBAE1C,MAAM,GAAE,2BAAgC;IAgBpD,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,YAAY,GAAG,WAAW;IAwShF,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,MAAM;IAYlF,kBAAkB,IAAI,YAAY;IAIlC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE;IAK3C,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIpC,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,EAAE;IASnD,OAAO,CAAC,cAAc;IAqDtB;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,gBAAgB;IA4BxB,qEAAqE;IACrE,OAAO,CAAC,mBAAmB;IA4B3B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAc9B,OAAO,CAAC,wBAAwB;IAsBhC,OAAO,CAAC,uBAAuB;IAwB/B,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,kBAAkB;IAmC1B,OAAO,CAAC,oBAAoB;CAO7B"}
@@ -39,6 +39,7 @@ function toToolResult(block) {
39
39
  }
40
40
  return {
41
41
  toolUseId: block.toolUseId,
42
+ toolName: block.toolName,
42
43
  content,
43
44
  isError: block.isError ?? false,
44
45
  };
@@ -76,6 +77,9 @@ export class AnthropicXmlFormatter {
76
77
  // Track conversation state
77
78
  let currentConversation = [];
78
79
  let lastNonEmptyParticipant = null;
80
+ // True right after an unlabeled tool-results glue — the next assistant
81
+ // message continues the same turn, so it must not get a fresh label.
82
+ let lastWasToolResults = false;
79
83
  // Track cache markers applied
80
84
  let cacheMarkersApplied = 0;
81
85
  // Calculate tool injection point
@@ -197,6 +201,7 @@ export class AnthropicXmlFormatter {
197
201
  // Check bot continuation
198
202
  const isBotMessage = message.participant === assistantParticipant;
199
203
  const isContinuation = isBotMessage && lastNonEmptyParticipant === assistantParticipant && !hasToolResult;
204
+ const isPureToolResults = hasToolResult && message.content.every((c) => c.type === 'tool_result');
200
205
  if (isContinuation && isLastMessage) {
201
206
  // Bot continuation - don't add prefix
202
207
  continue;
@@ -205,10 +210,33 @@ export class AnthropicXmlFormatter {
205
210
  // Completion target - prefix added below
206
211
  }
207
212
  else if (text) {
208
- currentConversation.push(`${message.participant}: ${text}${this.config.messageDelimiter}`);
209
- if (!hasToolResult) {
213
+ if (isPureToolResults) {
214
+ // Tool results are not speech: replay them exactly as they were
215
+ // injected live — inside the assistant flow, unlabeled (legacy
216
+ // convention). A participant prefix here re-attributes the
217
+ // harness's injection as someone's utterance, and the model then
218
+ // reads the same result in two attributions across compiles
219
+ // (D2 of the Evander 2026-08-08 scaffold-leak analysis).
220
+ currentConversation.push(`${text}${this.config.messageDelimiter}`);
221
+ lastWasToolResults = true;
222
+ }
223
+ else if (isBotMessage && lastWasToolResults) {
224
+ // The round after injected results continues the same assistant
225
+ // turn — no fresh label mid-turn, matching what the model lived.
226
+ // (If a turn ended exactly on a results injection, the next
227
+ // assistant turn glues here unlabeled — a minor cost the message
228
+ // model can't distinguish; a turn id would be needed.)
229
+ currentConversation.push(`${text}${this.config.messageDelimiter}`);
230
+ lastWasToolResults = false;
210
231
  lastNonEmptyParticipant = message.participant;
211
232
  }
233
+ else {
234
+ currentConversation.push(`${message.participant}: ${text}${this.config.messageDelimiter}`);
235
+ lastWasToolResults = false;
236
+ if (!hasToolResult) {
237
+ lastNonEmptyParticipant = message.participant;
238
+ }
239
+ }
212
240
  }
213
241
  // Check cacheBreakpoint - flush INCLUDING this message with cache_control
214
242
  // (explicit user control: this message is the last thing to be cached)
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic-xml.js","sourceRoot":"","sources":["../../src/formatters/anthropic-xml.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"anthropic-xml.js","sourceRoot":"","sources":["../../src/formatters/anthropic-xml.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,4 +10,6 @@ export * from './providers/index.js';
10
10
  export * from './utils/index.js';
11
11
  export * from './formatters/index.js';
12
12
  export * from './context/index.js';
13
+ export { CacheKeepalive, ineligibleReason as cacheKeepaliveIneligibleReason, lineageKey as cacheLineageKey, } from './cache-keepalive.js';
14
+ export type { CacheKeepaliveConfig, KeepaliveEvent, KeepaliveLane, KeepaliveSend, } from './cache-keepalive.js';
13
15
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAGzC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,uBAAuB,CAAC;AAGtC,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EACL,cAAc,EACd,gBAAgB,IAAI,8BAA8B,EAClD,UAAU,IAAI,eAAe,GAC9B,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,oBAAoB,EACpB,cAAc,EACd,aAAa,EACb,aAAa,GACd,MAAM,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -17,4 +17,6 @@ export * from './utils/index.js';
17
17
  export * from './formatters/index.js';
18
18
  // Context management
19
19
  export * from './context/index.js';
20
+ // Prompt-cache keepalive (Anthropic 1h cache)
21
+ export { CacheKeepalive, ineligibleReason as cacheKeepaliveIneligibleReason, lineageKey as cacheLineageKey, } from './cache-keepalive.js';
20
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,aAAa;AACb,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,uBAAuB,CAAC;AAEtC,YAAY;AACZ,cAAc,sBAAsB,CAAC;AAErC,YAAY;AACZ,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,uBAAuB,CAAC;AAEtC,qBAAqB;AACrB,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,aAAa;AACb,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,QAAQ;AACR,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,uBAAuB,CAAC;AAEtC,YAAY;AACZ,cAAc,sBAAsB,CAAC;AAErC,YAAY;AACZ,cAAc,kBAAkB,CAAC;AAEjC,aAAa;AACb,cAAc,uBAAuB,CAAC;AAEtC,qBAAqB;AACrB,cAAc,oBAAoB,CAAC;AAEnC,8CAA8C;AAC9C,OAAO,EACL,cAAc,EACd,gBAAgB,IAAI,8BAA8B,EAClD,UAAU,IAAI,eAAe,GAC9B,MAAM,sBAAsB,CAAC"}
@@ -51,8 +51,14 @@ export declare class Membrane {
51
51
  * Stream with native API tool execution
52
52
  */
53
53
  private streamWithNativeTools;
54
+ /** See the floating-cache-marker block in buildNativeToolRequest. */
55
+ private floatBudgetWarned;
54
56
  /**
55
- * Build a provider request with native tool support
57
+ * Build a provider request with native tool support.
58
+ *
59
+ * `toolLoopRebuild` is true when this build is a tool-loop continuation
60
+ * (toolDepth > 0) rather than the turn's first request — the only case
61
+ * where the floating cache marker applies.
56
62
  */
57
63
  private buildNativeToolRequest;
58
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"membrane.d.ts","sourceRoot":"","sources":["../src/membrane.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EAEf,eAAe,EAEf,cAAc,EACd,aAAa,EACb,eAAe,EAYhB,MAAM,kBAAkB,CAAC;AAqB1B,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAGtB,MAAM,4BAA4B,CAAC;AAiBpC,qBAAa,QAAQ;IACnB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAmB;gBAGlC,OAAO,EAAE,eAAe,EACxB,MAAM,GAAE,cAAmB;IAkB7B;;OAEG;IACG,QAAQ,CACZ,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,kBAAkB,CAAC;IAyG9B;;;;;;;;;;;;;;;;;OAiBG;IACG,MAAM,CACV,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,kBAAkB,GAAG,eAAe,CAAC;IA8FhD;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;;;;;OAMG;YACW,kBAAkB;IA8kBhC;;OAEG;YACW,qBAAqB;IAwOnC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAwN9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuD5B;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAkBrC;;;;;;;;;OASG;IACH,OAAO,CAAC,2BAA2B;IA+BnC;;;;;;;OAOG;YACW,sBAAsB;IASpC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAIpC;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;YA4EV,UAAU;IA4DxB,OAAO,CAAC,wBAAwB;IA8ChC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,kCAAkC;IAoD1C,OAAO,CAAC,iBAAiB;IAqIzB,OAAO,CAAC,kBAAkB;IAkF1B,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,cAAc;IAItB,qFAAqF;IACrF,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,KAAK;IAcb;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,cAAc,CACZ,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,qBAA0B,GAClC,cAAc;IAuBjB;;OAEG;YACW,mBAAmB;IAokBjC;;OAEG;YACW,sBAAsB;CA2UrC"}
1
+ {"version":3,"file":"membrane.d.ts","sourceRoot":"","sources":["../src/membrane.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EAEf,eAAe,EAEf,cAAc,EACd,aAAa,EACb,eAAe,EAYhB,MAAM,kBAAkB,CAAC;AAqB1B,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EAGtB,MAAM,4BAA4B,CAAC;AAiBpC,qBAAa,QAAQ;IACnB,OAAO,CAAC,OAAO,CAAkB;IACjC,OAAO,CAAC,QAAQ,CAAC,CAAgB;IACjC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,SAAS,CAAmB;gBAGlC,OAAO,EAAE,eAAe,EACxB,MAAM,GAAE,cAAmB;IAkB7B;;OAEG;IACG,QAAQ,CACZ,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,kBAAkB,CAAC;IAyG9B;;;;;;;;;;;;;;;;;OAiBG;IACG,MAAM,CACV,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,aAAkB,GAC1B,OAAO,CAAC,kBAAkB,GAAG,eAAe,CAAC;IA8FhD;;OAEG;IACH,OAAO,CAAC,eAAe;IAsBvB;;;;;;OAMG;YACW,kBAAkB;IAimBhC;;OAEG;YACW,qBAAqB;IAwOnC,qEAAqE;IACrE,OAAO,CAAC,iBAAiB,CAAS;IAElC;;;;;;OAMG;IACH,OAAO,CAAC,sBAAsB;IAuT9B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuD5B;;;;;OAKG;IACH,OAAO,CAAC,6BAA6B;IAkBrC;;;;;;;;;OASG;IACH,OAAO,CAAC,2BAA2B;IA+BnC;;;;;;;OAOG;YACW,sBAAsB;IASpC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAIpC;;;;;;;;OAQG;IACH,OAAO,CAAC,kBAAkB;IAqB1B;;OAEG;IACH,OAAO,CAAC,gBAAgB;YA4EV,UAAU;IA4DxB,OAAO,CAAC,wBAAwB;IA8ChC;;;;;;;;;;;;;;;;OAgBG;IACH,OAAO,CAAC,kCAAkC;IAoD1C,OAAO,CAAC,iBAAiB;IAqIzB,OAAO,CAAC,kBAAkB;IAkF1B,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,cAAc;IAItB,qFAAqF;IACrF,OAAO,CAAC,YAAY;IAKpB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,KAAK;IAcb;;OAEG;IACH,OAAO,CAAC,YAAY;IAcpB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA4B5B;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACH,cAAc,CACZ,OAAO,EAAE,iBAAiB,EAC1B,OAAO,GAAE,qBAA0B,GAClC,cAAc;IAuBjB;;OAEG;YACW,mBAAmB;IAqlBjC;;OAEG;YACW,sBAAsB;CA2UrC"}
package/dist/membrane.js CHANGED
@@ -286,10 +286,16 @@ export class Membrane {
286
286
  // Track the initial prefill length so we can extract only NEW content for response
287
287
  // Also track what block type we're inside at the end of prefill
288
288
  let initialPrefillLength = 0;
289
+ // Watermark for per-round delta text (ToolContext.roundPreamble): start of
290
+ // the CURRENT round's model text in parser-accumulated coordinates.
291
+ // Advanced past each round's injected results push, so injected
292
+ // <function_results> XML never enters a round's delta.
293
+ let roundStartLen = 0;
289
294
  let initialBlockType = null;
290
295
  if (prefillResult.assistantPrefill) {
291
296
  parser.push(prefillResult.assistantPrefill);
292
297
  initialPrefillLength = prefillResult.assistantPrefill.length;
298
+ roundStartLen = initialPrefillLength;
293
299
  // Capture what block type we're inside after prefill (if any)
294
300
  if (parser.isInsideBlock()) {
295
301
  const blockType = parser.getCurrentBlockType();
@@ -541,6 +547,7 @@ export class Membrane {
541
547
  const context = {
542
548
  rawText: parsed.fullMatch,
543
549
  preamble: parsed.beforeText.slice(initialPrefillLength),
550
+ roundPreamble: parsed.beforeText.slice(roundStartLen),
544
551
  depth: toolDepth,
545
552
  previousResults: executedToolResults,
546
553
  accumulated: parser.getAccumulated().slice(initialPrefillLength),
@@ -549,6 +556,14 @@ export class Membrane {
549
556
  if (!Array.isArray(results)) {
550
557
  throw new Error(`onToolCalls must return an array of ToolResult, got ${typeof results}`);
551
558
  }
559
+ // Backfill tool names for the legacy XML result rendering
560
+ // (<result><tool_name>…</tool_name><stdout>…) when the executor
561
+ // didn't supply them.
562
+ const callNames = new Map(parsed.calls.map((c) => [c.id, c.name]));
563
+ for (const r of results) {
564
+ if (!r.toolName)
565
+ r.toolName = callNames.get(r.toolUseId);
566
+ }
552
567
  // Track the tool results
553
568
  executedToolResults.push(...results);
554
569
  // Check if results contain images (requires split-turn injection)
@@ -647,6 +662,9 @@ export class Membrane {
647
662
  prefillResult.assistantPrefill = parser.getAccumulated();
648
663
  providerRequest = this.buildContinuationRequest(request, prefillResult, parser.getAccumulated());
649
664
  }
665
+ // Next round's model text starts after everything injected this
666
+ // round (results XML, image-split tags, thinking opener).
667
+ roundStartLen = parser.getAccumulated().length;
650
668
  // Reset parser state for new streaming iteration. Tool rounds
651
669
  // are the caller's work — they count against maxToolDepth only,
652
670
  // never against the resumption guards (issue #39 review).
@@ -747,7 +765,7 @@ export class Membrane {
747
765
  // Tool execution loop
748
766
  while (toolDepth <= maxToolDepth) {
749
767
  // Build provider request with native tools
750
- const providerRequest = this.buildNativeToolRequest(request, messages);
768
+ const providerRequest = this.buildNativeToolRequest(request, messages, toolDepth > 0);
751
769
  // Stream from provider
752
770
  let textAccumulated = '';
753
771
  let blockIndex = 0;
@@ -906,10 +924,16 @@ export class Membrane {
906
924
  throw this.attachRawRequest(error, rawRequest);
907
925
  }
908
926
  }
927
+ /** See the floating-cache-marker block in buildNativeToolRequest. */
928
+ floatBudgetWarned = false;
909
929
  /**
910
- * Build a provider request with native tool support
930
+ * Build a provider request with native tool support.
931
+ *
932
+ * `toolLoopRebuild` is true when this build is a tool-loop continuation
933
+ * (toolDepth > 0) rather than the turn's first request — the only case
934
+ * where the floating cache marker applies.
911
935
  */
912
- buildNativeToolRequest(request, messages) {
936
+ buildNativeToolRequest(request, messages, toolLoopRebuild = false) {
913
937
  // Provider-native formatters own their complete input-item shape. The
914
938
  // legacy implementation below is intentionally Anthropic-specific; using
915
939
  // it for Responses would normalize away item IDs, encrypted reasoning,
@@ -1058,7 +1082,18 @@ export class Membrane {
1058
1082
  // tool_results to `messages`. Any unmatched tool_use that reaches
1059
1083
  // this splice is upstream stranding (the bug class this fix exists
1060
1084
  // to catch) — `[pending]` is exactly the right synthesis.
1061
- const normalized = normalizeToolPairs(providerMessages);
1085
+ // A synthesized [pending] tool_result's bytes are rewritten when the
1086
+ // real result lands — the floating-marker block below must not cache
1087
+ // past one. `synthetic_pending_result` (not the downstream
1088
+ // cache_suppressed_for_synthetic, which only fires when a marker was
1089
+ // actually stripped) is the root condition.
1090
+ let pendingResultSynthesized = false;
1091
+ const normalized = normalizeToolPairs(providerMessages, {
1092
+ onEvent: (e) => {
1093
+ if (e.kind === 'synthetic_pending_result')
1094
+ pendingResultSynthesized = true;
1095
+ },
1096
+ });
1062
1097
  const mergedMessages = mergeConsecutiveRoles(normalized.messages);
1063
1098
  // Convert tools to provider format.
1064
1099
  // Native tool names must match ^[a-zA-Z0-9_-]{1,128}$ — sanitize colons
@@ -1087,6 +1122,98 @@ export class Membrane {
1087
1122
  const blocks = system;
1088
1123
  system = blocks.map((block, idx) => idx === blocks.length - 1 ? { ...block, cache_control: cacheControl } : block);
1089
1124
  }
1125
+ // ------------------------------------------------------------------
1126
+ // Floating cache marker: incremental prompt caching inside the native
1127
+ // tool loop. Message breakpoints are placed by the context strategy at
1128
+ // compile time — once per turn — but this builder re-runs on every
1129
+ // tool round with that round's messages appended, so the deepest
1130
+ // upstream marker stays glued to the turn-start snapshot and each
1131
+ // rebuild re-pays the entire appended suffix at full input price
1132
+ // (qa-ops incident, 2026-08-20: two subagents re-sent a suffix growing
1133
+ // to ~118k tokens ~30 times each — ~5.3M uncached tokens in 18 min —
1134
+ // with their one marker sitting on message 2 of 61).
1135
+ //
1136
+ // The tool loop only ever appends, so a marker riding the newest
1137
+ // message yields the intended incremental pattern: each round writes
1138
+ // its delta and cache-reads everything before it.
1139
+ //
1140
+ // Authority contract: the float spends only the RESIDUAL breakpoint
1141
+ // budget (Anthropic allows 4 cache_control including tools/system).
1142
+ // Upstream markers are never displaced or stripped — if they fill all
1143
+ // 4 slots the float is withheld (with a warning) and behavior is
1144
+ // exactly pre-float. With 2+ slots free, the previous round's
1145
+ // endpoint is marked too: a wide parallel-tool round can append more
1146
+ // blocks than the provider's ~20-block backward search covers, which
1147
+ // would orphan the previous round's cache entry behind an unmarked
1148
+ // boundary.
1149
+ //
1150
+ // Skipped when the normalizer synthesized a [pending] tool_result:
1151
+ // those bytes are rewritten when the real result lands, and caching
1152
+ // past them poisons the prefix — the same rationale as the
1153
+ // normalizer's phase 5.5 cache suppression.
1154
+ // ------------------------------------------------------------------
1155
+ const floatingEnabled = request.floatingCacheMarker ?? this.config.defaultFloatingCacheMarker ?? true;
1156
+ if (toolLoopRebuild && floatingEnabled && cacheControl && !pendingResultSynthesized) {
1157
+ // Residuum from a RECOUNT of the constructed wire artifacts, not the
1158
+ // running messageBreakpoints tally — the tally diverges from the wire
1159
+ // in both directions (mirrors NativeFormatter's recount, same bug
1160
+ // class as the Sill 2026-07-25 wedge): a message-level breakpoint
1161
+ // landing on a block already carrying stale cache_control is one
1162
+ // physical marker counted twice, and a pre-marked system block is a
1163
+ // real wire marker the tally never sees. Counted post-fallback and
1164
+ // post-normalize, so fallback spend and phase-5.5 suppression are
1165
+ // both reflected.
1166
+ let wireMarkers = 0;
1167
+ for (const m of mergedMessages) {
1168
+ if (!Array.isArray(m.content))
1169
+ continue;
1170
+ for (const b of m.content) {
1171
+ if (b.cache_control)
1172
+ wireMarkers++;
1173
+ }
1174
+ }
1175
+ if (tools)
1176
+ for (const t of tools) {
1177
+ if (t.cache_control)
1178
+ wireMarkers++;
1179
+ }
1180
+ if (Array.isArray(system)) {
1181
+ for (const b of system) {
1182
+ if (b.cache_control)
1183
+ wireMarkers++;
1184
+ }
1185
+ }
1186
+ let residuum = 4 - wireMarkers;
1187
+ if (residuum <= 0) {
1188
+ if (!this.floatBudgetWarned) {
1189
+ this.floatBudgetWarned = true;
1190
+ console.warn(`[membrane] floating cache marker withheld: upstream markers already ` +
1191
+ `occupy all 4 cache_control slots (${wireMarkers} on the wire). ` +
1192
+ `Tool-round suffixes will not cache incrementally.`);
1193
+ }
1194
+ }
1195
+ else {
1196
+ // Newest message first; then the previous round's endpoint (two
1197
+ // wire messages back: [..., prevResults, assistant, results]).
1198
+ const targets = [mergedMessages.length - 1, mergedMessages.length - 3];
1199
+ for (const mi of targets) {
1200
+ if (residuum <= 0 || mi < 0)
1201
+ continue;
1202
+ const content = mergedMessages[mi]?.content;
1203
+ if (!Array.isArray(content) || content.length === 0)
1204
+ continue;
1205
+ const bpIdx = lastCacheableBlockIndex(content);
1206
+ if (bpIdx < 0)
1207
+ continue;
1208
+ // Already a breakpoint here (e.g. the strategy's own end marker
1209
+ // on the turn's first rebuild) — nothing to add.
1210
+ if (content[bpIdx].cache_control)
1211
+ continue;
1212
+ content[bpIdx].cache_control = cacheControl;
1213
+ residuum--;
1214
+ }
1215
+ }
1216
+ }
1090
1217
  // Build thinking config for native extended thinking (budget clamped to max_tokens)
1091
1218
  // Fable/Mythos models: thinking is always on and unconfigurable; sampling params are removed.
1092
1219
  // Sending thinking config or temperature returns a 400 — omit both entirely.
@@ -1869,10 +1996,14 @@ export class Membrane {
1869
1996
  let { providerRequest, prefillResult } = this.transformRequest(request, formatter);
1870
1997
  // Initialize parser with prefill content
1871
1998
  let initialPrefillLength = 0;
1999
+ // Watermark for per-round delta text (ToolContext.roundPreamble) — see
2000
+ // streamWithXmlTools for rationale. Advanced past each results push.
2001
+ let roundStartLen = 0;
1872
2002
  let initialBlockType = null;
1873
2003
  if (prefillResult.assistantPrefill) {
1874
2004
  parser.push(prefillResult.assistantPrefill);
1875
2005
  initialPrefillLength = prefillResult.assistantPrefill.length;
2006
+ roundStartLen = initialPrefillLength;
1876
2007
  if (parser.isInsideBlock()) {
1877
2008
  const blockType = parser.getCurrentBlockType();
1878
2009
  if (blockType === 'thinking' || blockType === 'tool_call' || blockType === 'tool_result') {
@@ -2089,6 +2220,7 @@ export class Membrane {
2089
2220
  const context = {
2090
2221
  rawText: parsed.fullMatch,
2091
2222
  preamble: parsed.beforeText.slice(initialPrefillLength),
2223
+ roundPreamble: parsed.beforeText.slice(roundStartLen),
2092
2224
  depth: toolDepth,
2093
2225
  previousResults: executedToolResults,
2094
2226
  accumulated: parser.getAccumulated().slice(initialPrefillLength),
@@ -2100,6 +2232,14 @@ export class Membrane {
2100
2232
  context,
2101
2233
  };
2102
2234
  const { results, injectedMessages } = await stream.requestToolExecution(toolCallsEvent);
2235
+ // Backfill tool names for the legacy XML result rendering
2236
+ // (<result><tool_name>…</tool_name><stdout>…) when the executor
2237
+ // didn't supply them.
2238
+ const yieldCallNames = new Map(parsed.calls.map((c) => [c.id, c.name]));
2239
+ for (const r of results) {
2240
+ if (!r.toolName)
2241
+ r.toolName = yieldCallNames.get(r.toolUseId);
2242
+ }
2103
2243
  // Mid-turn injected messages are not supported on the XML prefill
2104
2244
  // path: the continuation is an assistant prefill over an XML
2105
2245
  // transcript, not a message array, so there is no user envelope
@@ -2218,6 +2358,9 @@ export class Membrane {
2218
2358
  prefillResult.assistantPrefill = parser.getAccumulated();
2219
2359
  providerRequest = this.buildContinuationRequest(request, prefillResult, parser.getAccumulated());
2220
2360
  }
2361
+ // Next round's model text starts after everything injected this
2362
+ // round (results XML, image-split tags, thinking opener).
2363
+ roundStartLen = parser.getAccumulated().length;
2221
2364
  // Tool rounds are the caller's work — they count against
2222
2365
  // maxToolDepth only, never against the resumption guards
2223
2366
  // (issue #39 review: the uncapped tool-loop contract stands).
@@ -2328,7 +2471,7 @@ export class Membrane {
2328
2471
  return;
2329
2472
  }
2330
2473
  // Build provider request with native tools
2331
- const providerRequest = this.buildNativeToolRequest(request, messages);
2474
+ const providerRequest = this.buildNativeToolRequest(request, messages, toolDepth > 0);
2332
2475
  // Stream from provider
2333
2476
  let textAccumulated = '';
2334
2477
  let blockIndex = 0;