agentfootprint 9.56.0 → 9.58.0

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 (245) hide show
  1. package/AGENTS.md +1 -1
  2. package/CLAUDE.md +10 -2
  3. package/ai-instructions/claude-code/SKILL.md +1 -1
  4. package/dist/adapters/llm/AnthropicProvider.js +33 -4
  5. package/dist/adapters/llm/AnthropicProvider.js.map +1 -1
  6. package/dist/adapters/llm/BrowserAnthropicProvider.js +12 -78
  7. package/dist/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  8. package/dist/adapters/llm/anthropicCacheWire.js +101 -0
  9. package/dist/adapters/llm/anthropicCacheWire.js.map +1 -0
  10. package/dist/cache/CacheDecisionSubflow.js +2 -1
  11. package/dist/cache/CacheDecisionSubflow.js.map +1 -1
  12. package/dist/core/Agent.js +31 -1
  13. package/dist/core/Agent.js.map +1 -1
  14. package/dist/core/agent/AgentBuilder.js +91 -1
  15. package/dist/core/agent/AgentBuilder.js.map +1 -1
  16. package/dist/core/agent/buildAgentChart.js +19 -0
  17. package/dist/core/agent/buildAgentChart.js.map +1 -1
  18. package/dist/core/agent/buildDynamicAgentChart.js +26 -0
  19. package/dist/core/agent/buildDynamicAgentChart.js.map +1 -1
  20. package/dist/core/agent/stages/callLLM.js +2 -1
  21. package/dist/core/agent/stages/callLLM.js.map +1 -1
  22. package/dist/core/agent/stages/window.js +75 -3
  23. package/dist/core/agent/stages/window.js.map +1 -1
  24. package/dist/core/agent/window/index.js.map +1 -1
  25. package/dist/core/agent/window/lastToolResult.js +123 -0
  26. package/dist/core/agent/window/lastToolResult.js.map +1 -0
  27. package/dist/core/agent/window/notice.js +61 -6
  28. package/dist/core/agent/window/notice.js.map +1 -1
  29. package/dist/core/agent/window/options.js +31 -1
  30. package/dist/core/agent/window/options.js.map +1 -1
  31. package/dist/core/agent/window/strategies/drop.js +73 -17
  32. package/dist/core/agent/window/strategies/drop.js.map +1 -1
  33. package/dist/core/agent/window/toolNames.js +81 -0
  34. package/dist/core/agent/window/toolNames.js.map +1 -0
  35. package/dist/core/agent/window/turns.js +50 -2
  36. package/dist/core/agent/window/turns.js.map +1 -1
  37. package/dist/doors/maps.js +51 -0
  38. package/dist/doors/maps.js.map +1 -0
  39. package/dist/esm/adapters/llm/AnthropicProvider.d.ts +2 -0
  40. package/dist/esm/adapters/llm/AnthropicProvider.js +33 -4
  41. package/dist/esm/adapters/llm/AnthropicProvider.js.map +1 -1
  42. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js +11 -77
  43. package/dist/esm/adapters/llm/BrowserAnthropicProvider.js.map +1 -1
  44. package/dist/esm/adapters/llm/anthropicCacheWire.d.ts +96 -0
  45. package/dist/esm/adapters/llm/anthropicCacheWire.js +96 -0
  46. package/dist/esm/adapters/llm/anthropicCacheWire.js.map +1 -0
  47. package/dist/esm/cache/CacheDecisionSubflow.js +2 -1
  48. package/dist/esm/cache/CacheDecisionSubflow.js.map +1 -1
  49. package/dist/esm/core/Agent.d.ts +6 -1
  50. package/dist/esm/core/Agent.js +31 -1
  51. package/dist/esm/core/Agent.js.map +1 -1
  52. package/dist/esm/core/agent/AgentBuilder.d.ts +45 -0
  53. package/dist/esm/core/agent/AgentBuilder.js +91 -1
  54. package/dist/esm/core/agent/AgentBuilder.js.map +1 -1
  55. package/dist/esm/core/agent/buildAgentChart.d.ts +8 -0
  56. package/dist/esm/core/agent/buildAgentChart.js +19 -0
  57. package/dist/esm/core/agent/buildAgentChart.js.map +1 -1
  58. package/dist/esm/core/agent/buildDynamicAgentChart.js +26 -0
  59. package/dist/esm/core/agent/buildDynamicAgentChart.js.map +1 -1
  60. package/dist/esm/core/agent/stages/callLLM.js +2 -1
  61. package/dist/esm/core/agent/stages/callLLM.js.map +1 -1
  62. package/dist/esm/core/agent/stages/window.d.ts +10 -0
  63. package/dist/esm/core/agent/stages/window.js +75 -3
  64. package/dist/esm/core/agent/stages/window.js.map +1 -1
  65. package/dist/esm/core/agent/types.d.ts +46 -0
  66. package/dist/esm/core/agent/window/index.d.ts +1 -1
  67. package/dist/esm/core/agent/window/index.js.map +1 -1
  68. package/dist/esm/core/agent/window/lastToolResult.d.ts +96 -0
  69. package/dist/esm/core/agent/window/lastToolResult.js +119 -0
  70. package/dist/esm/core/agent/window/lastToolResult.js.map +1 -0
  71. package/dist/esm/core/agent/window/notice.d.ts +17 -4
  72. package/dist/esm/core/agent/window/notice.js +61 -6
  73. package/dist/esm/core/agent/window/notice.js.map +1 -1
  74. package/dist/esm/core/agent/window/options.d.ts +21 -0
  75. package/dist/esm/core/agent/window/options.js +29 -0
  76. package/dist/esm/core/agent/window/options.js.map +1 -1
  77. package/dist/esm/core/agent/window/strategies/drop.d.ts +20 -0
  78. package/dist/esm/core/agent/window/strategies/drop.js +73 -17
  79. package/dist/esm/core/agent/window/strategies/drop.js.map +1 -1
  80. package/dist/esm/core/agent/window/toolNames.d.ts +53 -0
  81. package/dist/esm/core/agent/window/toolNames.js +76 -0
  82. package/dist/esm/core/agent/window/toolNames.js.map +1 -0
  83. package/dist/esm/core/agent/window/turns.d.ts +23 -1
  84. package/dist/esm/core/agent/window/turns.js +50 -2
  85. package/dist/esm/core/agent/window/turns.js.map +1 -1
  86. package/dist/esm/core/agent/window/types.d.ts +84 -0
  87. package/dist/esm/doors/maps.d.ts +36 -0
  88. package/dist/esm/doors/maps.js +36 -0
  89. package/dist/esm/doors/maps.js.map +1 -0
  90. package/dist/esm/events/dispatcher.d.ts +1 -1
  91. package/dist/esm/events/dispatcher.js.map +1 -1
  92. package/dist/esm/events/payloads.d.ts +33 -1
  93. package/dist/esm/events/registry.d.ts +7 -1
  94. package/dist/esm/events/registry.js +6 -0
  95. package/dist/esm/events/registry.js.map +1 -1
  96. package/dist/esm/index.d.ts +1 -1
  97. package/dist/esm/index.js.map +1 -1
  98. package/dist/esm/lib/injection-engine/buildInjectionEngineSubflow.d.ts +10 -0
  99. package/dist/esm/lib/injection-engine/buildInjectionEngineSubflow.js +62 -4
  100. package/dist/esm/lib/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  101. package/dist/esm/lib/injection-engine/evaluator.d.ts +9 -0
  102. package/dist/esm/lib/injection-engine/evaluator.js +54 -6
  103. package/dist/esm/lib/injection-engine/evaluator.js.map +1 -1
  104. package/dist/esm/lib/injection-engine/factories/defineInstruction.d.ts +45 -3
  105. package/dist/esm/lib/injection-engine/factories/defineInstruction.js +38 -4
  106. package/dist/esm/lib/injection-engine/factories/defineInstruction.js.map +1 -1
  107. package/dist/esm/lib/injection-engine/promptTemplate.d.ts +76 -0
  108. package/dist/esm/lib/injection-engine/promptTemplate.js +124 -0
  109. package/dist/esm/lib/injection-engine/promptTemplate.js.map +1 -0
  110. package/dist/esm/lib/injection-engine/skillEntryEvidence.d.ts +59 -0
  111. package/dist/esm/lib/injection-engine/skillEntryEvidence.js +86 -0
  112. package/dist/esm/lib/injection-engine/skillEntryEvidence.js.map +1 -0
  113. package/dist/esm/lib/injection-engine/skillGraph.js +15 -0
  114. package/dist/esm/lib/injection-engine/skillGraph.js.map +1 -1
  115. package/dist/esm/lib/injection-engine/skillGraphCheckup.d.ts +1 -1
  116. package/dist/esm/lib/injection-engine/skillGraphCheckup.js.map +1 -1
  117. package/dist/esm/lib/injection-engine/startRuleClaim.d.ts +6 -4
  118. package/dist/esm/lib/injection-engine/startRuleClaim.js.map +1 -1
  119. package/dist/esm/lib/injection-engine/types.d.ts +73 -3
  120. package/dist/esm/lib/injection-engine/types.js +25 -3
  121. package/dist/esm/lib/injection-engine/types.js.map +1 -1
  122. package/dist/esm/lib/iterationBudget.d.ts +28 -0
  123. package/dist/esm/lib/iterationBudget.js +31 -0
  124. package/dist/esm/lib/iterationBudget.js.map +1 -0
  125. package/dist/esm/maps/claim/claim.d.ts +60 -0
  126. package/dist/esm/maps/claim/claim.js +62 -0
  127. package/dist/esm/maps/claim/claim.js.map +1 -0
  128. package/dist/esm/maps/engagement/evidence.d.ts +70 -0
  129. package/dist/esm/maps/engagement/evidence.js +105 -0
  130. package/dist/esm/maps/engagement/evidence.js.map +1 -0
  131. package/dist/esm/maps/engagement/lease.d.ts +51 -0
  132. package/dist/esm/maps/engagement/lease.js +137 -0
  133. package/dist/esm/maps/engagement/lease.js.map +1 -0
  134. package/dist/esm/maps/engagement/types.d.ts +108 -0
  135. package/dist/esm/maps/engagement/types.js +13 -0
  136. package/dist/esm/maps/engagement/types.js.map +1 -0
  137. package/dist/esm/recorders/core/MapRecorder.d.ts +20 -0
  138. package/dist/esm/recorders/core/MapRecorder.js +25 -0
  139. package/dist/esm/recorders/core/MapRecorder.js.map +1 -0
  140. package/dist/events/dispatcher.js.map +1 -1
  141. package/dist/events/registry.js +6 -0
  142. package/dist/events/registry.js.map +1 -1
  143. package/dist/index.js.map +1 -1
  144. package/dist/lib/injection-engine/buildInjectionEngineSubflow.js +61 -3
  145. package/dist/lib/injection-engine/buildInjectionEngineSubflow.js.map +1 -1
  146. package/dist/lib/injection-engine/evaluator.js +54 -6
  147. package/dist/lib/injection-engine/evaluator.js.map +1 -1
  148. package/dist/lib/injection-engine/factories/defineInstruction.js +38 -4
  149. package/dist/lib/injection-engine/factories/defineInstruction.js.map +1 -1
  150. package/dist/lib/injection-engine/promptTemplate.js +132 -0
  151. package/dist/lib/injection-engine/promptTemplate.js.map +1 -0
  152. package/dist/lib/injection-engine/skillEntryEvidence.js +90 -0
  153. package/dist/lib/injection-engine/skillEntryEvidence.js.map +1 -0
  154. package/dist/lib/injection-engine/skillGraph.js +15 -0
  155. package/dist/lib/injection-engine/skillGraph.js.map +1 -1
  156. package/dist/lib/injection-engine/skillGraphCheckup.js.map +1 -1
  157. package/dist/lib/injection-engine/startRuleClaim.js.map +1 -1
  158. package/dist/lib/injection-engine/types.js +25 -3
  159. package/dist/lib/injection-engine/types.js.map +1 -1
  160. package/dist/lib/iterationBudget.js +35 -0
  161. package/dist/lib/iterationBudget.js.map +1 -0
  162. package/dist/maps/claim/claim.js +71 -0
  163. package/dist/maps/claim/claim.js.map +1 -0
  164. package/dist/maps/engagement/evidence.js +114 -0
  165. package/dist/maps/engagement/evidence.js.map +1 -0
  166. package/dist/maps/engagement/lease.js +141 -0
  167. package/dist/maps/engagement/lease.js.map +1 -0
  168. package/dist/maps/engagement/types.js +14 -0
  169. package/dist/maps/engagement/types.js.map +1 -0
  170. package/dist/recorders/core/MapRecorder.js +29 -0
  171. package/dist/recorders/core/MapRecorder.js.map +1 -0
  172. package/dist/types/adapters/llm/AnthropicProvider.d.ts +2 -0
  173. package/dist/types/adapters/llm/AnthropicProvider.d.ts.map +1 -1
  174. package/dist/types/adapters/llm/BrowserAnthropicProvider.d.ts.map +1 -1
  175. package/dist/types/adapters/llm/anthropicCacheWire.d.ts +97 -0
  176. package/dist/types/adapters/llm/anthropicCacheWire.d.ts.map +1 -0
  177. package/dist/types/cache/CacheDecisionSubflow.d.ts.map +1 -1
  178. package/dist/types/core/Agent.d.ts +6 -1
  179. package/dist/types/core/Agent.d.ts.map +1 -1
  180. package/dist/types/core/agent/AgentBuilder.d.ts +45 -0
  181. package/dist/types/core/agent/AgentBuilder.d.ts.map +1 -1
  182. package/dist/types/core/agent/buildAgentChart.d.ts +8 -0
  183. package/dist/types/core/agent/buildAgentChart.d.ts.map +1 -1
  184. package/dist/types/core/agent/buildDynamicAgentChart.d.ts.map +1 -1
  185. package/dist/types/core/agent/stages/callLLM.d.ts.map +1 -1
  186. package/dist/types/core/agent/stages/window.d.ts +10 -0
  187. package/dist/types/core/agent/stages/window.d.ts.map +1 -1
  188. package/dist/types/core/agent/types.d.ts +46 -0
  189. package/dist/types/core/agent/types.d.ts.map +1 -1
  190. package/dist/types/core/agent/window/index.d.ts +1 -1
  191. package/dist/types/core/agent/window/index.d.ts.map +1 -1
  192. package/dist/types/core/agent/window/lastToolResult.d.ts +97 -0
  193. package/dist/types/core/agent/window/lastToolResult.d.ts.map +1 -0
  194. package/dist/types/core/agent/window/notice.d.ts +17 -4
  195. package/dist/types/core/agent/window/notice.d.ts.map +1 -1
  196. package/dist/types/core/agent/window/options.d.ts +21 -0
  197. package/dist/types/core/agent/window/options.d.ts.map +1 -1
  198. package/dist/types/core/agent/window/strategies/drop.d.ts +20 -0
  199. package/dist/types/core/agent/window/strategies/drop.d.ts.map +1 -1
  200. package/dist/types/core/agent/window/toolNames.d.ts +54 -0
  201. package/dist/types/core/agent/window/toolNames.d.ts.map +1 -0
  202. package/dist/types/core/agent/window/turns.d.ts +23 -1
  203. package/dist/types/core/agent/window/turns.d.ts.map +1 -1
  204. package/dist/types/core/agent/window/types.d.ts +84 -0
  205. package/dist/types/core/agent/window/types.d.ts.map +1 -1
  206. package/dist/types/doors/maps.d.ts +37 -0
  207. package/dist/types/doors/maps.d.ts.map +1 -0
  208. package/dist/types/events/dispatcher.d.ts +1 -1
  209. package/dist/types/events/dispatcher.d.ts.map +1 -1
  210. package/dist/types/events/payloads.d.ts +33 -1
  211. package/dist/types/events/payloads.d.ts.map +1 -1
  212. package/dist/types/events/registry.d.ts +7 -1
  213. package/dist/types/events/registry.d.ts.map +1 -1
  214. package/dist/types/index.d.ts +1 -1
  215. package/dist/types/index.d.ts.map +1 -1
  216. package/dist/types/lib/injection-engine/buildInjectionEngineSubflow.d.ts +10 -0
  217. package/dist/types/lib/injection-engine/buildInjectionEngineSubflow.d.ts.map +1 -1
  218. package/dist/types/lib/injection-engine/evaluator.d.ts +9 -0
  219. package/dist/types/lib/injection-engine/evaluator.d.ts.map +1 -1
  220. package/dist/types/lib/injection-engine/factories/defineInstruction.d.ts +45 -3
  221. package/dist/types/lib/injection-engine/factories/defineInstruction.d.ts.map +1 -1
  222. package/dist/types/lib/injection-engine/promptTemplate.d.ts +77 -0
  223. package/dist/types/lib/injection-engine/promptTemplate.d.ts.map +1 -0
  224. package/dist/types/lib/injection-engine/skillEntryEvidence.d.ts +60 -0
  225. package/dist/types/lib/injection-engine/skillEntryEvidence.d.ts.map +1 -0
  226. package/dist/types/lib/injection-engine/skillGraph.d.ts.map +1 -1
  227. package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts +1 -1
  228. package/dist/types/lib/injection-engine/skillGraphCheckup.d.ts.map +1 -1
  229. package/dist/types/lib/injection-engine/startRuleClaim.d.ts +6 -4
  230. package/dist/types/lib/injection-engine/startRuleClaim.d.ts.map +1 -1
  231. package/dist/types/lib/injection-engine/types.d.ts +73 -3
  232. package/dist/types/lib/injection-engine/types.d.ts.map +1 -1
  233. package/dist/types/lib/iterationBudget.d.ts +29 -0
  234. package/dist/types/lib/iterationBudget.d.ts.map +1 -0
  235. package/dist/types/maps/claim/claim.d.ts +61 -0
  236. package/dist/types/maps/claim/claim.d.ts.map +1 -0
  237. package/dist/types/maps/engagement/evidence.d.ts +71 -0
  238. package/dist/types/maps/engagement/evidence.d.ts.map +1 -0
  239. package/dist/types/maps/engagement/lease.d.ts +52 -0
  240. package/dist/types/maps/engagement/lease.d.ts.map +1 -0
  241. package/dist/types/maps/engagement/types.d.ts +109 -0
  242. package/dist/types/maps/engagement/types.d.ts.map +1 -0
  243. package/dist/types/recorders/core/MapRecorder.d.ts +21 -0
  244. package/dist/types/recorders/core/MapRecorder.d.ts.map +1 -0
  245. package/package.json +14 -1
package/AGENTS.md CHANGED
@@ -524,7 +524,7 @@ files `agentfootprint.tools.coverage_declared`; with
524
524
  to the final answer, which is how a limit survives a model that would rather not
525
525
  mention it.
526
526
 
527
- ### Observability — 103 typed events across 22 domains
527
+ ### Observability — 105 typed events across 23 domains
528
528
 
529
529
  ```typescript
530
530
  agent.on('agentfootprint.context.injected', (e) =>
package/CLAUDE.md CHANGED
@@ -21,6 +21,10 @@ not in this table, search `src/index.ts` for the nearest noun before writing cod
21
21
  | a build gate that refuses a triage/inventory tool that forgot its caveats, by tool name and field name | `checkSemantics` + `defineTool({ resultClass })` + bin `agentfootprint-check-semantics` | `src/lib/semantics/check.ts` | 9.53.0 |
22
22
  | an agent that runs out of `maxIterations` mid-task handing back a HALF-SENTENCE as its answer — and nothing saying the budget ran out | `wrapUpAtMaxIterations` (default ON) + `WRAP_UP_INSTRUCTION` + `agent.budget_exhausted` + `stoppedEarly.wrappedUp` | `src/core/agent/stages/wrapUp.ts` | 9.56.0 |
23
23
  | keeping the user's own request in context while the window shrinks — the task's anchor, un-droppable by every window strategy including one you wrote | `'current-request'` refusal + `currentRequestIndexOf` + `WindowStrategyInput.currentRequestIndex` | `src/core/agent/window/currentRequest.ts` | 9.55.0 |
24
+ | the window evicting the EVIDENCE while keeping the task — the tool result carrying the only valid ids leaves, and the model invents one that has never existed | `keepLastToolResults` (default 2) + `'last-tool-result'` refusal + `toolResultPinsOf` + `WindowRecord.observations` (what was kept, and its exact char cost) | `src/core/agent/window/lastToolResult.ts` | 9.57.0 |
25
+ | telling the model WHICH tools' results a drop took, so it re-calls instead of reconstructing from memory — and filing the same fact on the record even when no notice was authored | `droppedToolNames` + the notice's tool sentence + `WindowRecord.droppedObservations` | `src/core/agent/window/toolNames.ts` | 9.57.0 |
26
+ | an instruction that SAYS a run-time number rather than only gating on it ("you are on action 25 of 30") — with the library owning absence, so never "23 of undefined" and never a fabricated zero | `promptTemplate` + the closed `TEMPLATE_FACTS` vocabulary + `skipped: 'unknown-fact'` + `Injection.templated` | `src/lib/injection-engine/promptTemplate.ts` | 9.57.0 |
27
+ | an injection predicate that can see how much of the action budget is left | `InjectionContext.maxIterations` / `.iterationsRemaining` + `iterationsRemainingOf` (the ONE denominator, shared with the cache decision) | `src/lib/iterationBudget.ts` | 9.57.0 |
24
28
  | report progress from inside a tool — "hop 3 of 12 done", said mid-call while a long-running `execute` is still working (the record was otherwise atomic: tool_start, silence, tool_end) | `ctx.progress` + `agentfootprint.stream.tool_progress` | `src/core/tools.ts` | 9.52.0 |
25
29
  | show tool progress to the user — a mid-call report reaching the live status line / chat bubble, not just the record (`message` shown verbatim, capped; otherwise an honest generic line, never a payload dump) | `selectStatus` + `progressMessageOf` + `tool.progress` templates | `src/recorders/observability/status/statusTemplates.ts` | 9.54.0 |
26
30
  | declaring which skills connect — the SkillMap as one named thing (the agent that mounts it is the SkillWalker; there is deliberately no walker class) | `defineSkillMap` + `SkillMap` (permanent reference-equal aliases of `skillGraph`/`SkillGraph`) | `src/lib/injection-engine/skillGraph.ts` | 9.51.0 |
@@ -38,6 +42,8 @@ not in this table, search `src/index.ts` for the nearest noun before writing cod
38
42
  | keeping a large tool result out of the model's context | `artifacts` + `wants` + `placement` | `src/artifacts/` | 9.21.0 |
39
43
  | letting the UI draw an artifact without the model naming a component | `registerArtifactComponent` (in the `agentfootprint-lens` package) | — | — |
40
44
  | finding which tools the model keeps writing by hand | `agentfootprint.tools.code_run` + `codeShape` | `src/core/codeRunnerTool.ts` | 9.46.0 |
45
+ | a skill wrongly activated by a keyword staying loaded for the whole turn — suspending/parking a map's prompt + tools when its contribution goes unused, WITHOUT touching its cursor, and re-engaging it on evidence | `.maps()` + `advanceEngagement` + `agentfootprint.map.engaged/parked` + skip reason `'parked'` | `src/maps/` | 9.58.0 |
46
+ | a value that must say how it knows itself — an unknown count that can never render as zero | `Claim<T>` (`known`/`unknown`/`notApplicable`) | `src/maps/claim/claim.ts` | 9.58.0 |
41
47
  | a tool answering "I looked and found nothing", routably | `absent` | `src/core/agent/coverage/absent.ts` | 9.43.0 |
42
48
  | stating what a clean answer does NOT rule out | `coverage` | `src/core/agent/coverage/ledger.ts` | 9.43.0 |
43
49
  | proving a session store really honours the port | `runSessionLifecycleConformance` | `src/hosting/conformance/` | 9.37.0 |
@@ -62,7 +68,7 @@ does not exist, so the table can go out of date by OMISSION but can never lie
62
68
  about what it names.
63
69
 
64
70
  ## Module map
65
- Entry points — FOURTEEN doors, and `package.json` `exports` is exhaustive, so a path not on this list does not resolve at all: `.` core API · `/providers` everything you plug a backend into (mock/anthropic/openai/bedrock/browser*, embedders, staticTools/gatedTools/skillScopedTools/mcpClient, thinking handlers, code runners) · `/memory` (defineMemory, MEMORY_TYPES, InMemoryStore, mockEmbedder, redis/agentcore/bedrockAgentMemory stores) · `/rag` index-time loaders/splitters/indexCorpus · `/cache` prompt caching (+ registerCacheStrategy; side-effectful, hence its own door) · `/observe` the whole watching story (recorders, recordRun, strategies + attach*, vendor sinks, run-autopsy finders, toSSE, status, locales) · `/events` typed event system · `/context` the injection engine (defineInjection/Skill/Fact/Instruction/Steering, decideSkill) · `/resilience` provider decorators + the reliability RULES · `/hosting` nodeHost/httpHost/standingAgent + session stores · `/security` permissions + tool credentials (it absorbed the old identity door) · `/reliability` the retained alias, kept ONLY because it is the sole home of the gate's `CircuitOpenError` · `/skill-graph` the framework-neutral routing layer · `/recipes` the declared unit of agent CONFIGURATION (defineAgentRecipe → `.recipe()`; authoring-time vocabulary, so it stays off the main barrel). 9.0.0 removed sixteen older paths (`/llm-providers`, `/injection-engine`, `/tool-providers`, `/strategies`, `/observability-providers`, `/identity`, `/stream`, `/thinking`, `/status`, `/locales`, `/debug`, `/debug/finders`, `/memory-providers`, `/embedders`, `/hosting-providers`, `/observability/contextError/finders`) — it removed PATHS, not code; each name still ships through the door that absorbed it. This list is pinned against `package.json` by test/api-conformance/documented-doors.test.ts, and the removed sixteen by subpath-exports.test.ts. **Main barrel does NOT export** mock/browser*/defineMemory/defineSkill/skillGraph/mcpClient/InMemoryStore — import from the doors above.
71
+ Entry points — FIFTEEN doors, and `package.json` `exports` is exhaustive, so a path not on this list does not resolve at all: `.` core API · `/providers` everything you plug a backend into (mock/anthropic/openai/bedrock/browser*, embedders, staticTools/gatedTools/skillScopedTools/mcpClient, thinking handlers, code runners) · `/memory` (defineMemory, MEMORY_TYPES, InMemoryStore, mockEmbedder, redis/agentcore/bedrockAgentMemory stores) · `/rag` index-time loaders/splitters/indexCorpus · `/cache` prompt caching (+ registerCacheStrategy; side-effectful, hence its own door) · `/observe` the whole watching story (recorders, recordRun, strategies + attach*, vendor sinks, run-autopsy finders, toSSE, status, locales) · `/events` typed event system · `/context` the injection engine (defineInjection/Skill/Fact/Instruction/Steering, decideSkill) · `/resilience` provider decorators + the reliability RULES · `/hosting` nodeHost/httpHost/standingAgent + session stores · `/security` permissions + tool credentials (it absorbed the old identity door) · `/reliability` the retained alias, kept ONLY because it is the sole home of the gate's `CircuitOpenError` · `/skill-graph` the framework-neutral routing layer · `/recipes` the declared unit of agent CONFIGURATION (defineAgentRecipe → `.recipe()`; authoring-time vocabulary, so it stays off the main barrel) · `/maps` the mount kernel's vocabulary (9.58.0: Claim<T> + the engagement lease machine + its renewal feed — pure data and pure functions, no run entry point; mounted via `.maps()`). 9.0.0 removed sixteen older paths (`/llm-providers`, `/injection-engine`, `/tool-providers`, `/strategies`, `/observability-providers`, `/identity`, `/stream`, `/thinking`, `/status`, `/locales`, `/debug`, `/debug/finders`, `/memory-providers`, `/embedders`, `/hosting-providers`, `/observability/contextError/finders`) — it removed PATHS, not code; each name still ships through the door that absorbed it. This list is pinned against `package.json` by test/api-conformance/documented-doors.test.ts, and the removed sixteen by subpath-exports.test.ts. **Main barrel does NOT export** mock/browser*/defineMemory/defineSkill/skillGraph/mcpClient/InMemoryStore — import from the doors above.
66
72
 
67
73
  | src/ | one job |
68
74
  |---|---|
@@ -79,6 +85,7 @@ Entry points — FOURTEEN doors, and `package.json` `exports` is exhaustive, so
79
85
  | rag/ | (8.10.0, door `/rag`) index-TIME: `DocumentLoader` adapters (text/markdown/html zero-dep, pdf via lazy `unpdf`) + `Splitter` factories + `indexCorpus` — a REAL footprintjs chart whose commit log IS the indexing report. `defineRAG` deliberately stays on the MAIN barrel (run-time wiring); this door is the half that runs once, before any agent exists |
80
86
  | lib/ | first-party sub-libraries: injection-engine/, context-bisect/ (localizeContextBug, toBacktrackTrace + sliceToBacktrackTrace — the atui board serializers), influence-core/, trace-toolpack/ (selfExplain; 6 tools incl. variable-first `backtrack(variable, element?)`), context-ledger/ (which pieces EARNED their tokens — post-run offers/uses/outcomes bookkeeping + demote-never-starve gates `ledgerToolGate`/`ledgerEntryScorer`/`ledgerGated`; grouped-mode folds sf-llm-call inner logs, unmeterable runs → undefined; /observe), mcp/, rag/, tool-lint/ |
81
87
  | memory/ | store/ (MemoryStore port) + pipeline presets + stages + beats/facts + causal/ (dev-only, TOP_K+search()-only) + wire/mountMemoryPipeline + retrieval/ (8.8.0: the `RetrievalStrategy` seam + `RetrievalEvidence`, the record a retrieval leaves — `topK()` is what every earlier release did unnamed) |
88
+ | maps/ | (9.58.0, door `/maps`) the mount kernel: claim/ (`Claim<T>` honesty primitive) + engagement/ (lease machine `advanceEngagement` + renewal feed `renewalEvidenceOf` + vocabulary). Pure data/functions; the ONE framework hook is `ctx.parkedIds` in the evaluator (the `leaseActiveIds` mirror), fed by the Evaluate stage; state rides `AgentState.mapEngagement` as a TOP-LEVEL array (the StepPointerCarrier law) |
82
89
  | events/ | EventDispatcher (wildcard subs), registry (EVENT_NAMES, AgentfootprintEventMap), payloads |
83
90
  | recipes/ | (9.48.0, door `/recipes`) the declared unit of agent CONFIGURATION — `defineAgentRecipe` + `AgentBuilder.recipe()`. PURE and tiny: id/version validators, the provenance value, the refusal sentences. The mutation lives in `AgentBuilder.recipe()` (application stack + two provenance maps); the manifest rows ride `RunManifestSources.recipes`. The door publishes the AUTHORING vocabulary only (`defineAgentRecipe`, `InvalidAgentRecipeError`, 4 types) — every validator and refusal formatter is internal, imported by module path |
84
91
  | conventions.ts | THE builder↔recorder protocol: SUBFLOW_IDS/STAGE_IDS (internal), INJECTION_KEYS/stageRole/milestoneFor (exported, Lens-facing) |
@@ -100,6 +107,7 @@ Traps: `src/observability/` holds the finder IMPLEMENTATIONS (canonical home; `d
100
107
  - **Recorder, 3 layers**: (1) raw footprintjs CombinedRecorder via `agent.attach()` (RunnerBase.ts:474 — NOT idempotent); (2) typed stream `agent.on(type|'*')`; (3) new built-in = factory taking `{dispatcher, getRunContext}`, registered in the attach block inside `Agent.run()` (Agent.ts:807-845), barreled in src/observe.ts.
101
108
  - **New typed event (3-step)**: payload interface in events/payloads.ts + entry in `AgentfootprintEventMap` (registry.ts:198) + append to `ALL_EVENT_TYPES` (registry.ts:488, count-asserted by tests). New DOMAIN also needs a bridge attach in Agent.createExecutor or emits never reach the dispatcher — AND a hand-edit to `DomainWildcard` (dispatcher.ts:67-90; still missing validation/reliability). **9.4.0 worked example of BOTH halves missing at once**: `credential.*` had payloads, registry entries and live emit sites since 6.11.0 with no bridge and no wildcard, so `agent.on('agentfootprint.credential.failed')` observed nothing for eight minors — the silence in which an identity adapter failed 100% of its calls. Fixed by `credentialRecorder` (recorders/core/CredentialRecorder.ts) + the wildcard arm.
102
109
  - **Strategy (vendor sink)**: shapes in strategies/types.ts (Observability :130, Cost :169, LiveStatus :201, Lens :234); attach by INSTANCE only — `agent.enable.observability({ strategy })` (strategies/attach.ts). There is no by-name/`vendor` path: `strategies/registry.ts` declared one for years, nothing ever called it, and it was deleted rather than finished. Do NOT model this on `registerCacheStrategy` (cache/strategyRegistry.ts), which is real — a cache vendor self-registers on side-effect import, so a name is the only handle a consumer has there. New vendor = export from observability-providers.ts, NOT a new subpath.
110
+ - **Window refusal rule** (the 9.55.0 / 9.57.0 seam, and it is FOUR files, never a strategy): a member on `WindowRefusalReason` (window/types.ts) + a branch in `refusalFor` (window/turns.ts) + a small PURE resolver beside `currentRequest.ts` (`lastToolResult.ts` is the 9.57.0 one) + one line in `stages/window.ts` building the guard. Strategies need no edit — `planRemoval` arrives PRE-BOUND in `WindowStrategyInput`, which is why a rule added here reaches the three shipped strategies AND any a consumer wrote before it existed. Two things to weigh: every pin becomes a potential MID-window blocker and `turns.ts` caps the span at the first blocker (a blocker BEFORE `from` is stepped over, one after it ends the span); and any pin needs a bound — `keepLastToolResults` spends its ceiling INSIDE `planRemoval`, where `candidateCount` is known, so a pin already inside `keepRecentTurns` costs nothing. The stage owns the STAND-DOWN (two consecutive zero-removal records naming the reason ⇒ omit the pins for one visit, recorded as `observations.standDown`) because only the stage can read `scope.compactions`. Record fields are stamped by the STAGE, not by a strategy — same reason.
103
111
  - **Memory store**: implement `MemoryStore` (memory/store/types.ts:113; `search?` REQUIRED for causal memory); pass to `defineMemory({store})`. Memory TYPE/STRATEGY unions are CLOSED (define.types.ts:57/74 — new one edits defineMemory dispatch + a pipeline builder).
104
112
  - **Document loader** (8.10.0): implement `DocumentLoader` (rag/types.ts) — `{name, extensions, load}`. `loadDocuments` routes by extension, caller-supplied loaders FIRST, so overriding a built-in is passing yours ahead of it rather than editing `DEFAULT_LOADERS`. A loader MUST NOT rewrite text after offsets are conceivable: the HTML stripper replaces tags with EQUAL-LENGTH whitespace for exactly this reason.
105
113
  - **Splitter** (8.10.0): implement `Splitter` (`{name, split(doc) → SplitPiece[]}`), a factory function like the window/retrieval families. THE invariant — `doc.text.slice(charStart, charEnd) === piece.text` — is VERIFIED by `splitDocuments`, not trusted. All offset arithmetic lives once in `splitters/shared.ts`; a strategy that does its own is how the invariant breaks.
@@ -133,7 +141,7 @@ Traps: `src/observability/` holds the finder IMPLEMENTATIONS (canonical home; `d
133
141
  - **Embedder fingerprint** (8.9.0) → `Embedder.id` (optional; every shipped embedder sets one, and NONE include dims — the store appends `@<dims>` itself, so an id carrying its own size double-stamps) + `indexDocuments` defaulting `embedderId` to it + `SqliteVectorStore.reconcileFingerprint` (the only comparison site). Rule: dimensions ALWAYS decide, model ids decide only when BOTH sides named themselves — refusing on an absent name would block the majority of callers who never pass `embedderId`.
134
142
  - **Retrieval record** (8.8.0) → FOUR stages write one object in sequence: `loadRelevant` (candidates+scores+threshold verdicts) → `pickByBudget` (re-marks admitted→over-budget/over-max-entries) → `formatDefault` (`promptFragment` + `promptPosition`) → the read mount's outputMapper lifts it to root as `retrievalEvidence_<id>`. `memoryRecallInjections` then splits ONE recall into one ActiveInjection PER CHUNK — guarded by a byte-equality check (`fragments.join('\n\n') === systemContent`) that falls back to the single injection rather than change the prompt. `rank` (score order) and `promptPosition` (picker order) are DIFFERENT and both load-bearing: joining fragments in rank order reproduces the right bytes in a sequence the model never saw.
135
143
  - **AgentState** → all 8 stages/ files, both builders' mappers, memory-wire STRING-TYPED keys ('runIdentity'/'turnNumber'/… buildAgentChart.ts:177-180 — not refactor-safe), finalizeResult's `reliabilityFail*`/`policyHalt*` reads (rename silently kills the typed errors).
136
- - **events/** → 103 typed events across 22 domains (counts anti-drift-tested against this file — update BOTH when adding events): ALL_EVENT_TYPES exhaustiveness tests, DomainWildcard hand-list, ~42 importers (recorders, strategies, stream, commentary).
144
+ - **events/** → 105 typed events across 23 domains (counts anti-drift-tested against this file — update BOTH when adding events): ALL_EVENT_TYPES exhaustiveness tests, DomainWildcard hand-list, ~42 importers (recorders, strategies, stream, commentary).
137
145
  - **Run-configuration manifest (9.41.0)** → `agentfootprint.agent.run_configured`, the JOIN KEY that turns N runs into N labelled ARMS: one event naming the adapters/strategies in play (provider+model, reactMode, each memory's declared strategy/retrieval/embedder, window, graph posture+classifier, evidence posture, artifacts-present). Composed by the PURE `core/agent/runManifest.ts`, dispatched from `Agent.emitRunManifest()` at the END of `createExecutor` — the ONE funnel `run()` AND `resume()` share, both of which mint a fresh runId. Direct `dispatcher.dispatch` with a STATED pseudo-stage (`run-configured#0`), the `emitToolSessionReport` precedent — there is no stage yet, and `minimalMeta()` would make the one joinable-by-design event unjoinable. TWO laws, both tested: NAMES ONLY (a store is reported PRESENT and unnamed rather than identified by a directory/endpoint — `MemoryStore` and `ArtifactStore` declare no id), and ABSENT means "not configured", never a guessed `'default'`. Graph presence is read off `skillGraphNextSkill`, NOT `skillGraphCascade` (a 9.16-style mount sets no cascade and would read as "no graph"). `MemoryDefinition` gained `strategy`/`retrieval`/`embedderId` for it — declared names the compiled pipeline had closed over, the `store`-in-the-open precedent.
138
146
  - **adapters/types.ts LLMMessage/LLMRequest** → 62 importers: tool_use round-trip (toolCalls.ts:115-135), wire assembly (callLLM.ts:150-160), providers, cache strategies, security/extractSequence, reliability loop.
139
147
  - **Cache** → strategy registration is a MODULE SIDE EFFECT (src/index.ts:15-17); an entry point skipping that import silently falls back to NoOp. Resolved once per Agent at construction (Agent.ts:347).
@@ -252,7 +252,7 @@ const agent = Agent.create({ provider, model })
252
252
  agent.on('agentfootprint.context.evaluated', (e) => console.log(e.payload.activeIds));
253
253
  ```
254
254
 
255
- **103 typed events across 22 domains.** Two subscription shapes and no third:
255
+ **105 typed events across 23 domains.** Two subscription shapes and no third:
256
256
  `'*'` (every event) and `'agentfootprint.<domain>.*'` (one domain). **`'agentfootprint.*'`
257
257
  is not a pattern** — TypeScript rejects it, and at runtime it would match nothing.
258
258
 
@@ -21,6 +21,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
21
21
  exports.AnthropicProvider = exports.anthropic = void 0;
22
22
  const lazyRequire_js_1 = require("../../lib/lazyRequire.js");
23
23
  const contextWindow_js_1 = require("./contextWindow.js");
24
+ const anthropicCacheWire_js_1 = require("./anthropicCacheWire.js");
24
25
  /**
25
26
  * Which roles this wire carries inside `messages`.
26
27
  *
@@ -153,10 +154,14 @@ function buildParams(req, defaultModel, defaultMaxTokens, parallelToolCalls) {
153
154
  if (req.thinking && maxTokens <= req.thinking.budget) {
154
155
  maxTokens = req.thinking.budget + 1024;
155
156
  }
157
+ // The map is only needed when a messages cache marker has to be placed;
158
+ // building it always keeps the transform single-pass and costs one number
159
+ // per message. Mirrors BrowserAnthropicProvider.
160
+ const messageIndexMap = [];
156
161
  const params = {
157
162
  model: req.model === 'anthropic' ? defaultModel : req.model,
158
163
  max_tokens: maxTokens,
159
- messages: toAnthropicMessages(req.messages),
164
+ messages: toAnthropicMessages(req.messages, messageIndexMap),
160
165
  };
161
166
  if (req.systemPrompt)
162
167
  params.system = req.systemPrompt;
@@ -187,6 +192,14 @@ function buildParams(req, defaultModel, defaultMaxTokens, parallelToolCalls) {
187
192
  if (req.toolChoice && params.tools !== undefined && params.tools.length > 0) {
188
193
  params.tool_choice = { type: 'tool', name: req.toolChoice.name };
189
194
  }
195
+ // Cache markers — applied AFTER param construction so the materialized
196
+ // fields (system / tools / messages) exist to mark. Already clamped to
197
+ // Anthropic's 4-marker limit by AnthropicCacheStrategy. Before this, the
198
+ // server path silently dropped the markers the strategy prepared, so the
199
+ // stable prefix was paid at full rate on every call.
200
+ if (req.cacheMarkers && req.cacheMarkers.length > 0) {
201
+ (0, anthropicCacheWire_js_1.applyCacheMarkers)(params, req.cacheMarkers, messageIndexMap);
202
+ }
190
203
  return params;
191
204
  }
192
205
  /**
@@ -199,13 +212,21 @@ function buildParams(req, defaultModel, defaultMaxTokens, parallelToolCalls) {
199
212
  * • `role: 'tool'` → coalesced into a `user` message with
200
213
  * tool_result blocks (Anthropic's expected shape). Consecutive
201
214
  * tool messages merge into one user turn.
215
+ *
216
+ * `indexMap` (optional) records where each request message landed in the
217
+ * result — `-1` for one that did not survive — so a messages cache marker
218
+ * can be translated between the two index spaces. Mirrors
219
+ * BrowserAnthropicProvider; see anthropicCacheWire.MessageIndexMap.
202
220
  */
203
- function toAnthropicMessages(messages) {
221
+ function toAnthropicMessages(messages, indexMap) {
204
222
  const result = [];
205
223
  for (const m of messages) {
206
- if (m.role === 'system')
207
- continue; // System lives outside message array.
224
+ if (m.role === 'system') {
225
+ indexMap?.push(-1); // System lives outside message array.
226
+ continue;
227
+ }
208
228
  if (m.role === 'user') {
229
+ indexMap?.push(result.length);
209
230
  result.push({ role: 'user', content: m.content });
210
231
  continue;
211
232
  }
@@ -252,6 +273,7 @@ function toAnthropicMessages(messages) {
252
273
  // preserve the original `m.content || ''` fallback for empty
253
274
  // assistant turns.
254
275
  const hasThinking = m.thinkingBlocks !== undefined && m.thinkingBlocks.length > 0;
276
+ indexMap?.push(result.length);
255
277
  result.push({
256
278
  role: 'assistant',
257
279
  content: blocks.length > 0 ? blocks : hasThinking ? blocks : m.content || '',
@@ -268,9 +290,13 @@ function toAnthropicMessages(messages) {
268
290
  // multiple tool_results in one user message after a multi-tool turn).
269
291
  const last = result[result.length - 1];
270
292
  if (last && last.role === 'user' && Array.isArray(last.content)) {
293
+ // Coalesced into the user turn already open — several request
294
+ // messages share one body index.
295
+ indexMap?.push(result.length - 1);
271
296
  last.content.push(block);
272
297
  }
273
298
  else {
299
+ indexMap?.push(result.length);
274
300
  result.push({ role: 'user', content: [block] });
275
301
  }
276
302
  continue;
@@ -311,6 +337,9 @@ function fromAnthropicResponse(message) {
311
337
  usage: {
312
338
  input: message.usage.input_tokens,
313
339
  output: message.usage.output_tokens,
340
+ // Cache traffic, when Anthropic reported it. Absent stays absent —
341
+ // see anthropicCacheWire.readCacheUsage.
342
+ ...(0, anthropicCacheWire_js_1.readCacheUsage)(message.usage),
314
343
  // v2.14 — Anthropic doesn't expose thinking tokens as a separate
315
344
  // field today (bundled in output_tokens). When the API surfaces
316
345
  // a dedicated field in the future, populate here. Per Phase 2
@@ -1 +1 @@
1
- {"version":3,"file":"AnthropicProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/AnthropicProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AnthropicProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/AnthropicProvider.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@
22
22
  Object.defineProperty(exports, "__esModule", { value: true });
23
23
  exports.BrowserAnthropicProvider = exports.browserAnthropic = void 0;
24
24
  const contextWindow_js_1 = require("./contextWindow.js");
25
+ const anthropicCacheWire_js_1 = require("./anthropicCacheWire.js");
25
26
  const ANTHROPIC_API_URL = 'https://api.anthropic.com/v1/messages';
26
27
  const ANTHROPIC_API_VERSION = '2023-06-01';
27
28
  /**
@@ -127,6 +128,9 @@ function browserAnthropic(options) {
127
128
  let stopReason;
128
129
  let inputTokens = 0;
129
130
  let outputTokens = 0;
131
+ // Cache traffic rides message_start's usage. Stays undefined when the
132
+ // API reported nothing — see anthropicCacheWire.readCacheUsage.
133
+ let cacheUsage = {};
130
134
  for await (const event of parseSSE(response.body)) {
131
135
  if (event.event === 'message_start') {
132
136
  const msg = event.data.message;
@@ -134,6 +138,7 @@ function browserAnthropic(options) {
134
138
  messageId = msg.id;
135
139
  inputTokens = msg.usage?.input_tokens ?? 0;
136
140
  outputTokens = msg.usage?.output_tokens ?? 0;
141
+ cacheUsage = (0, anthropicCacheWire_js_1.readCacheUsage)(msg.usage);
137
142
  }
138
143
  }
139
144
  else if (event.event === 'message_delta') {
@@ -251,7 +256,7 @@ function browserAnthropic(options) {
251
256
  const response2 = {
252
257
  content: accumulatedText.join(''),
253
258
  toolCalls: completedToolUses.map((t) => ({ id: t.id, name: t.name, args: t.input })),
254
- usage: { input: inputTokens, output: outputTokens },
259
+ usage: { input: inputTokens, output: outputTokens, ...cacheUsage },
255
260
  stopReason: normalizeStopReason(stopReason ?? 'stop'),
256
261
  ...(messageId && { providerRef: messageId }),
257
262
  // v2.14 — pass thinking blocks through as `rawThinking` so the
@@ -329,86 +334,12 @@ function buildBody(req, defaultModel, defaultMaxTokens, parallelToolCalls) {
329
334
  // AnthropicCacheStrategy before we get here, so the loop below
330
335
  // doesn't need to enforce.
331
336
  if (req.cacheMarkers && req.cacheMarkers.length > 0) {
332
- applyCacheMarkers(body, req.cacheMarkers, messageIndexMap);
337
+ (0, anthropicCacheWire_js_1.applyCacheMarkers)(body, req.cacheMarkers, messageIndexMap);
333
338
  }
334
339
  return body;
335
340
  }
336
- /**
337
- * Apply CacheMarker[] to an Anthropic request body in-place.
338
- *
339
- * Per-field positional rules (Anthropic API):
340
- * - `system`: convert from `string` → array of text blocks; mark
341
- * the block at `boundaryIndex` (clamped to last block) with
342
- * `cache_control`. We currently put the whole system prompt in
343
- * ONE block, so any system marker effectively caches the whole
344
- * prompt. Splitting into per-injection blocks is a v2.7+ refinement.
345
- * - `tools`: mark the tool at `boundaryIndex` (clamped to last tool).
346
- * - `messages`: mark the LAST content block of the LAST message in
347
- * the cacheable prefix. Anthropic only honors cache_control on
348
- * the final content block of the final cached message.
349
- *
350
- * `messageIndexMap` translates the marker's index — which is a position in
351
- * `LLMRequest.messages` — into a position in `body.messages`. The two arrays
352
- * differ: system messages are dropped and consecutive tool results are
353
- * coalesced into one user turn. Applying the marker by raw ordinal was correct
354
- * only while the cached prefix happened to end at the very last message, and
355
- * drifted by one position per tool round-trip after that — putting the cache
356
- * breakpoint on a turn that changes every iteration, which is the one place it
357
- * can never be reused.
358
- */
359
- function applyCacheMarkers(body, markers, messageIndexMap) {
360
- for (const m of markers) {
361
- const cacheControl = m.ttl === 'long'
362
- ? { type: 'ephemeral', ttl: '1h' }
363
- : { type: 'ephemeral' };
364
- if (m.field === 'system') {
365
- // Convert string system → array form so we can attach
366
- // cache_control. v2.6 ships single-block system prompt; v2.7
367
- // may split per-injection for finer cache boundaries.
368
- if (typeof body.system === 'string') {
369
- body.system = [
370
- {
371
- type: 'text',
372
- text: body.system,
373
- cache_control: cacheControl,
374
- },
375
- ];
376
- }
377
- }
378
- else if (m.field === 'tools' && body.tools && body.tools.length > 0) {
379
- const idx = Math.min(m.boundaryIndex, body.tools.length - 1);
380
- const tool = body.tools[idx];
381
- tool.cache_control = cacheControl;
382
- }
383
- else if (m.field === 'messages' && body.messages.length > 0) {
384
- // Mark the LAST content block of the LAST message in the
385
- // cacheable prefix. Anthropic ONLY honors cache_control there.
386
- // Translate first: the marker names a request-message position, and a
387
- // message that did not survive the transform (`-1`, a system message)
388
- // cannot be marked at all — silently marking its neighbour would claim a
389
- // boundary nobody asked for.
390
- const mapped = messageIndexMap?.[m.boundaryIndex];
391
- if (messageIndexMap !== undefined && (mapped === undefined || mapped < 0))
392
- continue;
393
- const msgIdx = Math.min(mapped ?? m.boundaryIndex, body.messages.length - 1);
394
- const msg = body.messages[msgIdx];
395
- // String content → wrap in array so we can attach cache_control
396
- if (typeof msg.content === 'string') {
397
- body.messages[msgIdx].content = [
398
- {
399
- type: 'text',
400
- text: msg.content,
401
- cache_control: cacheControl,
402
- },
403
- ];
404
- }
405
- else if (Array.isArray(msg.content) && msg.content.length > 0) {
406
- const last = msg.content[msg.content.length - 1];
407
- last.cache_control = cacheControl;
408
- }
409
- }
410
- }
411
- }
341
+ // applyCacheMarkers + MessageIndexMap moved to anthropicCacheWire.ts (shared
342
+ // with the Node AnthropicProvider, which used to drop markers on the floor).
412
343
  function toAnthropicMessages(messages, indexMap) {
413
344
  const result = [];
414
345
  for (const m of messages) {
@@ -510,6 +441,9 @@ function fromAnthropicResponse(message) {
510
441
  usage: {
511
442
  input: message.usage.input_tokens,
512
443
  output: message.usage.output_tokens,
444
+ // Cache traffic, when Anthropic reported it. Absent stays absent —
445
+ // see anthropicCacheWire.readCacheUsage.
446
+ ...(0, anthropicCacheWire_js_1.readCacheUsage)(message.usage),
513
447
  },
514
448
  stopReason: normalizeStopReason(message.stop_reason),
515
449
  providerRef: message.id,
@@ -1 +1 @@
1
- {"version":3,"file":"BrowserAnthropicProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/BrowserAnthropicProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrowserAnthropicProvider.js","sourceRoot":"","sources":["../../../src/adapters/llm/BrowserAnthropicProvider.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ /**
3
+ * anthropicCacheWire — the cache↔wire translation both Anthropic adapters share.
4
+ *
5
+ * Pattern: extracted helper (was module-private inside BrowserAnthropicProvider).
6
+ * Role: Outer ring. Two jobs, one file:
7
+ * 1. `applyCacheMarkers` — stamp `cache_control` onto an Anthropic request
8
+ * body where the framework's `CacheMarker`s point.
9
+ * 2. `readCacheUsage` — lift Anthropic's cache token counts off a response
10
+ * usage payload into the port's `cacheRead` / `cacheWrite` fields.
11
+ *
12
+ * Why it exists: the server adapter (`AnthropicProvider`) used to drop
13
+ * `LLMRequest.cacheMarkers` on the floor and report no cache tokens, so on
14
+ * the server path a byte-identical prompt prefix could neither be cached nor
15
+ * even OBSERVED as uncached — `AnthropicCacheStrategy` registers for both
16
+ * `'anthropic'` and `'browser-anthropic'`, and only the browser half kept its
17
+ * side of the contract. One module serving both adapters removes the gap and
18
+ * prevents byte-twin drift between them.
19
+ *
20
+ * @example
21
+ * const indexMap: number[] = [];
22
+ * const body = { model, max_tokens, messages: toAnthropicMessages(req.messages, indexMap) };
23
+ * if (req.cacheMarkers?.length) applyCacheMarkers(body, req.cacheMarkers, indexMap);
24
+ * // ...and on the way back:
25
+ * return { usage: { input, output, ...readCacheUsage(message.usage) } };
26
+ */
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.readCacheUsage = exports.applyCacheMarkers = void 0;
29
+ /**
30
+ * Apply `CacheMarker[]` to an Anthropic request body in-place.
31
+ *
32
+ * Per-field positional rules (Anthropic API):
33
+ * - `system`: convert from `string` → array of text blocks; mark the block
34
+ * with `cache_control`. The body carries the whole system prompt in ONE
35
+ * block today, so any system marker caches the whole prompt.
36
+ * - `tools`: mark the tool at `boundaryIndex` (clamped to last tool).
37
+ * - `messages`: mark the LAST content block of the LAST message in the
38
+ * cacheable prefix. Anthropic only honors `cache_control` there.
39
+ *
40
+ * `messageIndexMap` translates the marker's index — a position in
41
+ * `LLMRequest.messages` — into a position in `body.messages`. A message that
42
+ * did not survive the transform (`-1`, a system message) cannot be marked at
43
+ * all; silently marking its neighbour would claim a boundary nobody asked for.
44
+ *
45
+ * Markers arrive already clamped to Anthropic's 4-marker limit by
46
+ * `AnthropicCacheStrategy`, so no enforcement here.
47
+ */
48
+ function applyCacheMarkers(body, markers, messageIndexMap) {
49
+ for (const m of markers) {
50
+ const cacheControl = m.ttl === 'long' ? { type: 'ephemeral', ttl: '1h' } : { type: 'ephemeral' };
51
+ if (m.field === 'system') {
52
+ // Convert string system → array form so we can attach cache_control.
53
+ if (typeof body.system === 'string') {
54
+ body.system = [{ type: 'text', text: body.system, cache_control: cacheControl }];
55
+ }
56
+ }
57
+ else if (m.field === 'tools' && body.tools && body.tools.length > 0) {
58
+ const idx = Math.min(m.boundaryIndex, body.tools.length - 1);
59
+ const tool = body.tools[idx];
60
+ tool.cache_control = cacheControl;
61
+ }
62
+ else if (m.field === 'messages' && body.messages.length > 0) {
63
+ // Translate first: the marker names a request-message position, and a
64
+ // message that did not survive the transform cannot be marked at all.
65
+ const mapped = messageIndexMap?.[m.boundaryIndex];
66
+ if (messageIndexMap !== undefined && (mapped === undefined || mapped < 0))
67
+ continue;
68
+ const msgIdx = Math.min(mapped ?? m.boundaryIndex, body.messages.length - 1);
69
+ const msg = body.messages[msgIdx];
70
+ if (typeof msg.content === 'string') {
71
+ // String content → wrap in array so we can attach cache_control.
72
+ msg.content = [{ type: 'text', text: msg.content, cache_control: cacheControl }];
73
+ }
74
+ else if (Array.isArray(msg.content) && msg.content.length > 0) {
75
+ const last = msg.content[msg.content.length - 1];
76
+ last.cache_control = cacheControl;
77
+ }
78
+ }
79
+ }
80
+ }
81
+ exports.applyCacheMarkers = applyCacheMarkers;
82
+ /**
83
+ * Lift Anthropic's cache counts into the port's optional `cacheRead` /
84
+ * `cacheWrite` fields. Absent stays absent — an adapter must never invent a
85
+ * zero for a number the provider did not report (that is the difference
86
+ * between "no cache traffic" and "nobody measured").
87
+ */
88
+ function readCacheUsage(usage) {
89
+ if (!usage)
90
+ return {};
91
+ return {
92
+ ...(typeof usage.cache_read_input_tokens === 'number' && {
93
+ cacheRead: usage.cache_read_input_tokens,
94
+ }),
95
+ ...(typeof usage.cache_creation_input_tokens === 'number' && {
96
+ cacheWrite: usage.cache_creation_input_tokens,
97
+ }),
98
+ };
99
+ }
100
+ exports.readCacheUsage = readCacheUsage;
101
+ //# sourceMappingURL=anthropicCacheWire.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anthropicCacheWire.js","sourceRoot":"","sources":["../../../src/adapters/llm/anthropicCacheWire.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@
27
27
  */
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
29
  exports.decideCacheMarkers = exports.computeCacheMarkers = exports.injectionTargetSlots = exports.evaluateCachePolicy = void 0;
30
+ const iterationBudget_js_1 = require("../lib/iterationBudget.js");
30
31
  /**
31
32
  * Evaluate a `CachePolicy` against the current context.
32
33
  * Returns `true` if the policy says THIS iteration's content is cacheable.
@@ -92,7 +93,7 @@ function computeCacheMarkers(state) {
92
93
  return [];
93
94
  const ctx = {
94
95
  iteration: state.iteration,
95
- iterationsRemaining: Math.max(0, state.maxIterations - state.iteration),
96
+ iterationsRemaining: (0, iterationBudget_js_1.iterationsRemainingOf)(state.maxIterations, state.iteration),
96
97
  userMessage: state.userMessage,
97
98
  ...(state.lastToolName !== undefined && { lastToolName: state.lastToolName }),
98
99
  cumulativeInputTokens: state.cumulativeInputTokens,
@@ -1 +1 @@
1
- {"version":3,"file":"CacheDecisionSubflow.js","sourceRoot":"","sources":["../../src/cache/CacheDecisionSubflow.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AAgDH;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,MAAmB,EAAE,GAAuB;IAC9E,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACrC,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACrC,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9B,gEAAgE;QAChE,kEAAkE;QAClE,8DAA8D;QAC9D,wCAAwC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;QACvE,mEAAmE;QACnE,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,+DAA+D;YAC/D,2BAA2B;YAC3B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,mDAAmD;IACnD,OAAO,KAAK,CAAC;AACf,CAAC;AAvBD,kDAuBC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAClC,SAAoB;IAEpB,MAAM,KAAK,GAA2C,EAAE,CAAC;IACzD,IAAI,SAAS,CAAC,MAAM,CAAC,YAAY,IAAI,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9E,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvB,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACtB,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAdD,oDAcC;AAED;;;;;;;GAOG;AACH,SAAgB,mBAAmB,CACjC,KAA+C;IAE/C,yCAAyC;IACzC,IAAI,KAAK,CAAC,eAAe;QAAE,OAAO,EAAE,CAAC;IAErC,MAAM,GAAG,GAAuB;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,mBAAmB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,SAAS,CAAC;QACvE,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;QAC7E,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;KACnD,CAAC;IAIF,MAAM,OAAO,GAA4C;QACvD,MAAM,EAAE,EAAE;QACV,KAAK,EAAE,EAAE;KACV,CAAC;IACF,0EAA0E;IAC1E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAmB,CAAC;IAEjD,mDAAmD;IACnD,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;QAClB,SAAS,EAAE,mBAAmB,CAAC,KAAK,CAAC,uBAAuB,EAAE,GAAG,CAAC;QAClE,MAAM,EAAE,oBAAoB;KAC7B,CAAC,CAAC;IAEH,6BAA6B;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QACzC,qEAAqE;QACrE,0DAA0D;QAC1D,gEAAgE;QAChE,wEAAwE;QACxE,wCAAwC;QACxC,MAAM,MAAM,GACT,GAAG,CAAC,QAAQ,EAAE,KAAiC;YAC9C,GAAkC,CAAC,KAAiC;YACtE,OAAO,CAAC;QACV,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;QACzC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACrC,KAAK,MAAM,IAAI,IAAI,oBAAoB,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,IAAI,KAAK,UAAU;gBAAE,SAAS,CAAC,kCAAkC;YACrE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,2DAA2D;IAC3D,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAU,EAAE,CAAC;QAChD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;QAClB,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS;gBAAE,MAAM;YACjC,QAAQ,GAAG,CAAC,CAAC;YACb,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjC,CAAC;QACD,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,IAAI;gBACX,aAAa,EAAE,QAAQ;gBACvB,GAAG,EAAE,OAAO;gBACZ,MAAM,EAAE,GAAG,IAAI,mBAAmB,QAAQ,GAAG,CAAC,uBAAuB,UAAU,GAAG;aACnF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC;IAC7E,IAAI,cAAc;QAAE,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAEjD,OAAO,OAAO,CAAC;AACjB,CAAC;AA3ED,kDA2EC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,iBAAiB,CACxB,OAA8B,EAC9B,aAA2C;IAE3C,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAC;IAClB,IAAI,UAAU,GAAG,EAAE,CAAC;IACpB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAE,CAAC,UAAU,CAAC;QAClC,IAAI,EAAE,KAAK,SAAS;YAAE,SAAS;QAC/B,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,IAAI;YAAE,MAAM;QACtD,QAAQ,GAAG,CAAC,CAAC;QACb,UAAU,GAAG,GAAG,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC9C,KAAK,EAAE,CAAC;IACV,CAAC;IACD,IAAI,QAAQ,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IACnC,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,2EAA2E;IAC3E,wCAAwC;IACxC,OAAO;QACL,KAAK,EAAE,UAAU;QACjB,aAAa,EAAE,QAAQ;QACvB,GAAG,EAAE,OAAO;QACZ,MAAM,EACJ,sCAAsC,QAAQ,GAAG;YACjD,IAAI,KAAK,+BAA+B,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,eAAe,UAAU,IAAI;YAC3F,wEAAwE;KAC3E,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAAC,KAAqC;IACtE,KAAK,CAAC,YAAY,GAAG,mBAAmB,CAAC;QACvC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;QACxC,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS,IAAI,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;QAC7E,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;QAClD,uBAAuB,EAAE,KAAK,CAAC,uBAAuB;QACtD,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;KAC/D,CAAC,CAAC;AACL,CAAC;AAZD,gDAYC;AAED,2EAA2E;AAC3E,8EAA8E;AAC9E,2EAA2E;AAC3E,8EAA8E;AAC9E,kDAAkD"}
1
+ {"version":3,"file":"CacheDecisionSubflow.js","sourceRoot":"","sources":["../../src/cache/CacheDecisionSubflow.ts"],"names":[],"mappings":"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"}