@diyor28/context 1.0.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 (280) hide show
  1. package/README.md +270 -0
  2. package/dist/__tests__/attachment-selector.test.d.ts +11 -0
  3. package/dist/__tests__/attachment-selector.test.d.ts.map +1 -0
  4. package/dist/__tests__/attachment-selector.test.js +449 -0
  5. package/dist/__tests__/attachment-selector.test.js.map +1 -0
  6. package/dist/__tests__/cache-breakpoints.test.d.ts +11 -0
  7. package/dist/__tests__/cache-breakpoints.test.d.ts.map +1 -0
  8. package/dist/__tests__/cache-breakpoints.test.js +398 -0
  9. package/dist/__tests__/cache-breakpoints.test.js.map +1 -0
  10. package/dist/__tests__/codecs.test.d.ts +7 -0
  11. package/dist/__tests__/codecs.test.d.ts.map +1 -0
  12. package/dist/__tests__/codecs.test.js +331 -0
  13. package/dist/__tests__/codecs.test.js.map +1 -0
  14. package/dist/__tests__/compactor.test.d.ts +11 -0
  15. package/dist/__tests__/compactor.test.d.ts.map +1 -0
  16. package/dist/__tests__/compactor.test.js +519 -0
  17. package/dist/__tests__/compactor.test.js.map +1 -0
  18. package/dist/__tests__/context-graph.test.d.ts +7 -0
  19. package/dist/__tests__/context-graph.test.d.ts.map +1 -0
  20. package/dist/__tests__/context-graph.test.js +262 -0
  21. package/dist/__tests__/context-graph.test.js.map +1 -0
  22. package/dist/__tests__/hash.test.d.ts +7 -0
  23. package/dist/__tests__/hash.test.d.ts.map +1 -0
  24. package/dist/__tests__/hash.test.js +228 -0
  25. package/dist/__tests__/hash.test.js.map +1 -0
  26. package/dist/__tests__/integration.test.d.ts +15 -0
  27. package/dist/__tests__/integration.test.d.ts.map +1 -0
  28. package/dist/__tests__/integration.test.js +728 -0
  29. package/dist/__tests__/integration.test.js.map +1 -0
  30. package/dist/__tests__/kind-order.test.d.ts +7 -0
  31. package/dist/__tests__/kind-order.test.d.ts.map +1 -0
  32. package/dist/__tests__/kind-order.test.js +243 -0
  33. package/dist/__tests__/kind-order.test.js.map +1 -0
  34. package/dist/__tests__/phase2-integration.test.d.ts +5 -0
  35. package/dist/__tests__/phase2-integration.test.d.ts.map +1 -0
  36. package/dist/__tests__/phase2-integration.test.js +222 -0
  37. package/dist/__tests__/phase2-integration.test.js.map +1 -0
  38. package/dist/__tests__/queries.test.d.ts +7 -0
  39. package/dist/__tests__/queries.test.d.ts.map +1 -0
  40. package/dist/__tests__/queries.test.js +254 -0
  41. package/dist/__tests__/queries.test.js.map +1 -0
  42. package/dist/__tests__/token-estimator.test.d.ts +7 -0
  43. package/dist/__tests__/token-estimator.test.d.ts.map +1 -0
  44. package/dist/__tests__/token-estimator.test.js +267 -0
  45. package/dist/__tests__/token-estimator.test.js.map +1 -0
  46. package/dist/adapters/anthropic-estimator.d.ts +38 -0
  47. package/dist/adapters/anthropic-estimator.d.ts.map +1 -0
  48. package/dist/adapters/anthropic-estimator.js +108 -0
  49. package/dist/adapters/anthropic-estimator.js.map +1 -0
  50. package/dist/adapters/attachment-resolver.d.ts +96 -0
  51. package/dist/adapters/attachment-resolver.d.ts.map +1 -0
  52. package/dist/adapters/attachment-resolver.js +176 -0
  53. package/dist/adapters/attachment-resolver.js.map +1 -0
  54. package/dist/adapters/attachment-selector.d.ts +59 -0
  55. package/dist/adapters/attachment-selector.d.ts.map +1 -0
  56. package/dist/adapters/attachment-selector.js +163 -0
  57. package/dist/adapters/attachment-selector.js.map +1 -0
  58. package/dist/adapters/gemini-estimator.d.ts +27 -0
  59. package/dist/adapters/gemini-estimator.d.ts.map +1 -0
  60. package/dist/adapters/gemini-estimator.js +80 -0
  61. package/dist/adapters/gemini-estimator.js.map +1 -0
  62. package/dist/adapters/index.d.ts +12 -0
  63. package/dist/adapters/index.d.ts.map +1 -0
  64. package/dist/adapters/index.js +28 -0
  65. package/dist/adapters/index.js.map +1 -0
  66. package/dist/adapters/memory-store.d.ts +139 -0
  67. package/dist/adapters/memory-store.d.ts.map +1 -0
  68. package/dist/adapters/memory-store.js +187 -0
  69. package/dist/adapters/memory-store.js.map +1 -0
  70. package/dist/adapters/openai-estimator.d.ts +35 -0
  71. package/dist/adapters/openai-estimator.d.ts.map +1 -0
  72. package/dist/adapters/openai-estimator.js +89 -0
  73. package/dist/adapters/openai-estimator.js.map +1 -0
  74. package/dist/adapters/summarizer.d.ts +121 -0
  75. package/dist/adapters/summarizer.d.ts.map +1 -0
  76. package/dist/adapters/summarizer.js +121 -0
  77. package/dist/adapters/summarizer.js.map +1 -0
  78. package/dist/adapters/token-estimator.d.ts +63 -0
  79. package/dist/adapters/token-estimator.d.ts.map +1 -0
  80. package/dist/adapters/token-estimator.js +37 -0
  81. package/dist/adapters/token-estimator.js.map +1 -0
  82. package/dist/builder/context-builder.d.ts +186 -0
  83. package/dist/builder/context-builder.d.ts.map +1 -0
  84. package/dist/builder/context-builder.js +305 -0
  85. package/dist/builder/context-builder.js.map +1 -0
  86. package/dist/builder/context-fork.d.ts +166 -0
  87. package/dist/builder/context-fork.d.ts.map +1 -0
  88. package/dist/builder/context-fork.js +282 -0
  89. package/dist/builder/context-fork.js.map +1 -0
  90. package/dist/builder/index.d.ts +6 -0
  91. package/dist/builder/index.d.ts.map +1 -0
  92. package/dist/builder/index.js +22 -0
  93. package/dist/builder/index.js.map +1 -0
  94. package/dist/codecs/base.d.ts +18 -0
  95. package/dist/codecs/base.d.ts.map +1 -0
  96. package/dist/codecs/base.js +39 -0
  97. package/dist/codecs/base.js.map +1 -0
  98. package/dist/codecs/conversation-history.codec.d.ts +81 -0
  99. package/dist/codecs/conversation-history.codec.d.ts.map +1 -0
  100. package/dist/codecs/conversation-history.codec.js +89 -0
  101. package/dist/codecs/conversation-history.codec.js.map +1 -0
  102. package/dist/codecs/index.d.ts +31 -0
  103. package/dist/codecs/index.d.ts.map +1 -0
  104. package/dist/codecs/index.js +71 -0
  105. package/dist/codecs/index.js.map +1 -0
  106. package/dist/codecs/redacted-stub.codec.d.ts +32 -0
  107. package/dist/codecs/redacted-stub.codec.d.ts.map +1 -0
  108. package/dist/codecs/redacted-stub.codec.js +64 -0
  109. package/dist/codecs/redacted-stub.codec.js.map +1 -0
  110. package/dist/codecs/structured-reference.codec.d.ts +40 -0
  111. package/dist/codecs/structured-reference.codec.d.ts.map +1 -0
  112. package/dist/codecs/structured-reference.codec.js +81 -0
  113. package/dist/codecs/structured-reference.codec.js.map +1 -0
  114. package/dist/codecs/system-rules.codec.d.ts +32 -0
  115. package/dist/codecs/system-rules.codec.d.ts.map +1 -0
  116. package/dist/codecs/system-rules.codec.js +62 -0
  117. package/dist/codecs/system-rules.codec.js.map +1 -0
  118. package/dist/codecs/tool-output.codec.d.ts +66 -0
  119. package/dist/codecs/tool-output.codec.d.ts.map +1 -0
  120. package/dist/codecs/tool-output.codec.js +95 -0
  121. package/dist/codecs/tool-output.codec.js.map +1 -0
  122. package/dist/codecs/tool-schema.codec.d.ts +36 -0
  123. package/dist/codecs/tool-schema.codec.d.ts.map +1 -0
  124. package/dist/codecs/tool-schema.codec.js +74 -0
  125. package/dist/codecs/tool-schema.codec.js.map +1 -0
  126. package/dist/codecs/unsafe-text.codec.d.ts +28 -0
  127. package/dist/codecs/unsafe-text.codec.d.ts.map +1 -0
  128. package/dist/codecs/unsafe-text.codec.js +63 -0
  129. package/dist/codecs/unsafe-text.codec.js.map +1 -0
  130. package/dist/graph/context-graph.d.ts +121 -0
  131. package/dist/graph/context-graph.d.ts.map +1 -0
  132. package/dist/graph/context-graph.js +166 -0
  133. package/dist/graph/context-graph.js.map +1 -0
  134. package/dist/graph/index.d.ts +8 -0
  135. package/dist/graph/index.d.ts.map +1 -0
  136. package/dist/graph/index.js +24 -0
  137. package/dist/graph/index.js.map +1 -0
  138. package/dist/graph/kind-order.d.ts +60 -0
  139. package/dist/graph/kind-order.d.ts.map +1 -0
  140. package/dist/graph/kind-order.js +113 -0
  141. package/dist/graph/kind-order.js.map +1 -0
  142. package/dist/graph/queries.d.ts +68 -0
  143. package/dist/graph/queries.d.ts.map +1 -0
  144. package/dist/graph/queries.js +240 -0
  145. package/dist/graph/queries.js.map +1 -0
  146. package/dist/graph/views.d.ts +90 -0
  147. package/dist/graph/views.d.ts.map +1 -0
  148. package/dist/graph/views.js +173 -0
  149. package/dist/graph/views.js.map +1 -0
  150. package/dist/index.d.ts +16 -0
  151. package/dist/index.d.ts.map +1 -0
  152. package/dist/index.js +40 -0
  153. package/dist/index.js.map +1 -0
  154. package/dist/pipeline/compactor.d.ts +128 -0
  155. package/dist/pipeline/compactor.d.ts.map +1 -0
  156. package/dist/pipeline/compactor.js +346 -0
  157. package/dist/pipeline/compactor.js.map +1 -0
  158. package/dist/pipeline/index.d.ts +6 -0
  159. package/dist/pipeline/index.d.ts.map +1 -0
  160. package/dist/pipeline/index.js +22 -0
  161. package/dist/pipeline/index.js.map +1 -0
  162. package/dist/pipeline/summarizer.d.ts +18 -0
  163. package/dist/pipeline/summarizer.d.ts.map +1 -0
  164. package/dist/pipeline/summarizer.js +68 -0
  165. package/dist/pipeline/summarizer.js.map +1 -0
  166. package/dist/policies/default-policy.d.ts +29 -0
  167. package/dist/policies/default-policy.d.ts.map +1 -0
  168. package/dist/policies/default-policy.js +58 -0
  169. package/dist/policies/default-policy.js.map +1 -0
  170. package/dist/policies/index.d.ts +5 -0
  171. package/dist/policies/index.d.ts.map +1 -0
  172. package/dist/policies/index.js +21 -0
  173. package/dist/policies/index.js.map +1 -0
  174. package/dist/providers/anthropic-compiler.d.ts +58 -0
  175. package/dist/providers/anthropic-compiler.d.ts.map +1 -0
  176. package/dist/providers/anthropic-compiler.js +182 -0
  177. package/dist/providers/anthropic-compiler.js.map +1 -0
  178. package/dist/providers/capabilities.d.ts +54 -0
  179. package/dist/providers/capabilities.d.ts.map +1 -0
  180. package/dist/providers/capabilities.js +87 -0
  181. package/dist/providers/capabilities.js.map +1 -0
  182. package/dist/providers/gemini-compiler.d.ts +51 -0
  183. package/dist/providers/gemini-compiler.d.ts.map +1 -0
  184. package/dist/providers/gemini-compiler.js +206 -0
  185. package/dist/providers/gemini-compiler.js.map +1 -0
  186. package/dist/providers/index.d.ts +8 -0
  187. package/dist/providers/index.d.ts.map +1 -0
  188. package/dist/providers/index.js +24 -0
  189. package/dist/providers/index.js.map +1 -0
  190. package/dist/providers/openai-compiler.d.ts +46 -0
  191. package/dist/providers/openai-compiler.d.ts.map +1 -0
  192. package/dist/providers/openai-compiler.js +149 -0
  193. package/dist/providers/openai-compiler.js.map +1 -0
  194. package/dist/types/attachment.d.ts +62 -0
  195. package/dist/types/attachment.d.ts.map +1 -0
  196. package/dist/types/attachment.js +6 -0
  197. package/dist/types/attachment.js.map +1 -0
  198. package/dist/types/block.d.ts +61 -0
  199. package/dist/types/block.d.ts.map +1 -0
  200. package/dist/types/block.js +8 -0
  201. package/dist/types/block.js.map +1 -0
  202. package/dist/types/codec.d.ts +58 -0
  203. package/dist/types/codec.d.ts.map +1 -0
  204. package/dist/types/codec.js +6 -0
  205. package/dist/types/codec.js.map +1 -0
  206. package/dist/types/compiled.d.ts +91 -0
  207. package/dist/types/compiled.d.ts.map +1 -0
  208. package/dist/types/compiled.js +6 -0
  209. package/dist/types/compiled.js.map +1 -0
  210. package/dist/types/hash.d.ts +24 -0
  211. package/dist/types/hash.d.ts.map +1 -0
  212. package/dist/types/hash.js +49 -0
  213. package/dist/types/hash.js.map +1 -0
  214. package/dist/types/index.d.ts +10 -0
  215. package/dist/types/index.d.ts.map +1 -0
  216. package/dist/types/index.js +26 -0
  217. package/dist/types/index.js.map +1 -0
  218. package/dist/types/policy.d.ts +128 -0
  219. package/dist/types/policy.d.ts.map +1 -0
  220. package/dist/types/policy.js +55 -0
  221. package/dist/types/policy.js.map +1 -0
  222. package/package.json +55 -0
  223. package/postcss.config.js +4 -0
  224. package/src/__tests__/attachment-selector.test.ts +559 -0
  225. package/src/__tests__/cache-breakpoints.test.ts +566 -0
  226. package/src/__tests__/codecs.test.ts +417 -0
  227. package/src/__tests__/compactor.test.ts +608 -0
  228. package/src/__tests__/context-graph.test.ts +383 -0
  229. package/src/__tests__/hash.test.ts +274 -0
  230. package/src/__tests__/integration.test.ts +866 -0
  231. package/src/__tests__/kind-order.test.ts +312 -0
  232. package/src/__tests__/phase2-integration.test.ts +253 -0
  233. package/src/__tests__/queries.test.ts +387 -0
  234. package/src/__tests__/token-estimator.test.ts +326 -0
  235. package/src/adapters/anthropic-estimator.ts +125 -0
  236. package/src/adapters/attachment-resolver.ts +295 -0
  237. package/src/adapters/attachment-selector.ts +218 -0
  238. package/src/adapters/gemini-estimator.ts +93 -0
  239. package/src/adapters/index.ts +12 -0
  240. package/src/adapters/memory-store.ts +299 -0
  241. package/src/adapters/openai-estimator.ts +105 -0
  242. package/src/adapters/summarizer.ts +250 -0
  243. package/src/adapters/token-estimator.ts +74 -0
  244. package/src/builder/context-builder.ts +467 -0
  245. package/src/builder/context-fork.ts +471 -0
  246. package/src/builder/index.ts +6 -0
  247. package/src/codecs/base.ts +36 -0
  248. package/src/codecs/conversation-history.codec.ts +108 -0
  249. package/src/codecs/index.ts +57 -0
  250. package/src/codecs/redacted-stub.codec.ts +76 -0
  251. package/src/codecs/structured-reference.codec.ts +96 -0
  252. package/src/codecs/system-rules.codec.ts +74 -0
  253. package/src/codecs/tool-output.codec.ts +109 -0
  254. package/src/codecs/tool-schema.codec.ts +87 -0
  255. package/src/codecs/unsafe-text.codec.ts +74 -0
  256. package/src/graph/context-graph.ts +205 -0
  257. package/src/graph/index.ts +8 -0
  258. package/src/graph/kind-order.ts +125 -0
  259. package/src/graph/queries.ts +306 -0
  260. package/src/graph/views.ts +255 -0
  261. package/src/index.ts +31 -0
  262. package/src/pipeline/compactor.ts +563 -0
  263. package/src/pipeline/index.ts +6 -0
  264. package/src/pipeline/summarizer.ts +76 -0
  265. package/src/policies/default-policy.ts +69 -0
  266. package/src/policies/index.ts +5 -0
  267. package/src/providers/anthropic-compiler.ts +294 -0
  268. package/src/providers/capabilities.ts +144 -0
  269. package/src/providers/gemini-compiler.ts +272 -0
  270. package/src/providers/index.ts +8 -0
  271. package/src/providers/openai-compiler.ts +191 -0
  272. package/src/types/attachment.ts +86 -0
  273. package/src/types/block.ts +84 -0
  274. package/src/types/codec.ts +68 -0
  275. package/src/types/compiled.ts +109 -0
  276. package/src/types/hash.ts +58 -0
  277. package/src/types/index.ts +10 -0
  278. package/src/types/policy.ts +194 -0
  279. package/tsconfig.json +21 -0
  280. package/vitest.config.ts +21 -0
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ /**
3
+ * Built-in codecs for @foundry/context
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.BUILT_IN_CODECS = void 0;
21
+ exports.getCodec = getCodec;
22
+ exports.registerCodec = registerCodec;
23
+ __exportStar(require("./base.js"), exports);
24
+ __exportStar(require("./system-rules.codec.js"), exports);
25
+ __exportStar(require("./tool-schema.codec.js"), exports);
26
+ __exportStar(require("./structured-reference.codec.js"), exports);
27
+ __exportStar(require("./conversation-history.codec.js"), exports);
28
+ __exportStar(require("./tool-output.codec.js"), exports);
29
+ __exportStar(require("./redacted-stub.codec.js"), exports);
30
+ __exportStar(require("./unsafe-text.codec.js"), exports);
31
+ const system_rules_codec_js_1 = require("./system-rules.codec.js");
32
+ const tool_schema_codec_js_1 = require("./tool-schema.codec.js");
33
+ const structured_reference_codec_js_1 = require("./structured-reference.codec.js");
34
+ const conversation_history_codec_js_1 = require("./conversation-history.codec.js");
35
+ const tool_output_codec_js_1 = require("./tool-output.codec.js");
36
+ const redacted_stub_codec_js_1 = require("./redacted-stub.codec.js");
37
+ const unsafe_text_codec_js_1 = require("./unsafe-text.codec.js");
38
+ /**
39
+ * Built-in codec registry.
40
+ * Maps codecId -> codec implementation.
41
+ */
42
+ exports.BUILT_IN_CODECS = {
43
+ 'system-rules': system_rules_codec_js_1.SystemRulesCodec,
44
+ 'tool-schema': tool_schema_codec_js_1.ToolSchemaCodec,
45
+ 'structured-reference': structured_reference_codec_js_1.StructuredReferenceCodec,
46
+ 'conversation-history': conversation_history_codec_js_1.ConversationHistoryCodec,
47
+ 'tool-output': tool_output_codec_js_1.ToolOutputCodec,
48
+ 'redacted-stub': redacted_stub_codec_js_1.RedactedStubCodec,
49
+ 'unsafe-text': unsafe_text_codec_js_1.UnsafeTextCodec,
50
+ };
51
+ /**
52
+ * Get codec by ID.
53
+ *
54
+ * @param codecId - Codec identifier
55
+ * @returns Codec implementation, or undefined if not found
56
+ */
57
+ function getCodec(codecId) {
58
+ return exports.BUILT_IN_CODECS[codecId];
59
+ }
60
+ /**
61
+ * Register custom codec.
62
+ *
63
+ * @param codec - Custom codec implementation
64
+ */
65
+ function registerCodec(codec) {
66
+ if (exports.BUILT_IN_CODECS[codec.codecId]) {
67
+ throw new Error(`Codec already registered: ${codec.codecId}`);
68
+ }
69
+ exports.BUILT_IN_CODECS[codec.codecId] = codec;
70
+ }
71
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codecs/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAwCH,4BAEC;AAOD,sCAKC;AApDD,4CAA0B;AAC1B,0DAAwC;AACxC,yDAAuC;AACvC,kEAAgD;AAChD,kEAAgD;AAChD,yDAAuC;AACvC,2DAAyC;AACzC,yDAAuC;AAGvC,mEAA2D;AAC3D,iEAAyD;AACzD,mFAA2E;AAC3E,mFAA2E;AAC3E,iEAAyD;AACzD,qEAA6D;AAC7D,iEAAyD;AAEzD;;;GAGG;AACU,QAAA,eAAe,GAA+B;IACzD,cAAc,EAAE,wCAAgB;IAChC,aAAa,EAAE,sCAAe;IAC9B,sBAAsB,EAAE,wDAAwB;IAChD,sBAAsB,EAAE,wDAAwB;IAChD,aAAa,EAAE,sCAAe;IAC9B,eAAe,EAAE,0CAAiB;IAClC,aAAa,EAAE,sCAAe;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,SAAgB,QAAQ,CAAC,OAAe;IACtC,OAAO,uBAAe,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,KAAiB;IAC7C,IAAI,uBAAe,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAChE,CAAC;IACD,uBAAe,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC;AACzC,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Redacted stub codec (any kind).
3
+ *
4
+ * Placeholder for sensitive content that was removed.
5
+ */
6
+ import { z } from 'zod';
7
+ import type { BlockCodec } from '../types/codec.js';
8
+ /**
9
+ * Redacted stub payload schema.
10
+ */
11
+ export declare const RedactedStubPayloadSchema: z.ZodObject<{
12
+ /** Original block hash (for reference) */
13
+ originalBlockHash: z.ZodString;
14
+ /** Reason for redaction */
15
+ reason: z.ZodString;
16
+ /** Optional placeholder text */
17
+ placeholder: z.ZodOptional<z.ZodString>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ originalBlockHash: string;
20
+ reason: string;
21
+ placeholder?: string | undefined;
22
+ }, {
23
+ originalBlockHash: string;
24
+ reason: string;
25
+ placeholder?: string | undefined;
26
+ }>;
27
+ export type RedactedStubPayload = z.infer<typeof RedactedStubPayloadSchema>;
28
+ /**
29
+ * Redacted stub codec implementation.
30
+ */
31
+ export declare const RedactedStubCodec: BlockCodec<RedactedStubPayload>;
32
+ //# sourceMappingURL=redacted-stub.codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redacted-stub.codec.d.ts","sourceRoot":"","sources":["../../src/codecs/redacted-stub.codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAIrE;;GAEG;AACH,eAAO,MAAM,yBAAyB;IACpC,0CAA0C;;IAG1C,2BAA2B;;IAG3B,gCAAgC;;;;;;;;;;EAEhC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,UAAU,CAAC,mBAAmB,CA6C7D,CAAC"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * Redacted stub codec (any kind).
4
+ *
5
+ * Placeholder for sensitive content that was removed.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.RedactedStubCodec = exports.RedactedStubPayloadSchema = void 0;
9
+ const zod_1 = require("zod");
10
+ const base_js_1 = require("./base.js");
11
+ /**
12
+ * Redacted stub payload schema.
13
+ */
14
+ exports.RedactedStubPayloadSchema = zod_1.z.object({
15
+ /** Original block hash (for reference) */
16
+ originalBlockHash: zod_1.z.string(),
17
+ /** Reason for redaction */
18
+ reason: zod_1.z.string(),
19
+ /** Optional placeholder text */
20
+ placeholder: zod_1.z.string().optional(),
21
+ });
22
+ /**
23
+ * Redacted stub codec implementation.
24
+ */
25
+ exports.RedactedStubCodec = {
26
+ codecId: 'redacted-stub',
27
+ version: '1.0.0',
28
+ payloadSchema: exports.RedactedStubPayloadSchema,
29
+ canonicalize(payload) {
30
+ return (0, base_js_1.sortObjectKeys)({
31
+ originalBlockHash: payload.originalBlockHash,
32
+ reason: payload.reason,
33
+ placeholder: payload.placeholder ?? '[REDACTED]',
34
+ });
35
+ },
36
+ hash(canonicalized) {
37
+ return (0, base_js_1.defaultHash)(canonicalized);
38
+ },
39
+ render(block) {
40
+ const { placeholder, reason } = block.payload;
41
+ const text = `${placeholder ?? '[REDACTED]'}\n\n*Reason: ${reason}*`;
42
+ return {
43
+ // Anthropic: user message
44
+ anthropic: {
45
+ role: 'user',
46
+ content: [{ type: 'text', text }],
47
+ },
48
+ // OpenAI: user message
49
+ openai: {
50
+ role: 'user',
51
+ content: text,
52
+ },
53
+ // Gemini: user message
54
+ gemini: {
55
+ role: 'user',
56
+ parts: [{ text }],
57
+ },
58
+ };
59
+ },
60
+ validate(payload) {
61
+ return exports.RedactedStubPayloadSchema.parse(payload);
62
+ },
63
+ };
64
+ //# sourceMappingURL=redacted-stub.codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redacted-stub.codec.js","sourceRoot":"","sources":["../../src/codecs/redacted-stub.codec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAwB;AAGxB,uCAAwD;AAExD;;GAEG;AACU,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,0CAA0C;IAC1C,iBAAiB,EAAE,OAAC,CAAC,MAAM,EAAE;IAE7B,2BAA2B;IAC3B,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE;IAElB,gCAAgC;IAChC,WAAW,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAIH;;GAEG;AACU,QAAA,iBAAiB,GAAoC;IAChE,OAAO,EAAE,eAAe;IACxB,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,iCAAyB;IAExC,YAAY,CAAC,OAA4B;QACvC,OAAO,IAAA,wBAAc,EAAC;YACpB,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,YAAY;SACjD,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAsB;QACzB,OAAO,IAAA,qBAAW,EAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAwC;QAC7C,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9C,MAAM,IAAI,GAAG,GAAG,WAAW,IAAI,YAAY,gBAAgB,MAAM,GAAG,CAAC;QAErE,OAAO;YACL,0BAA0B;YAC1B,SAAS,EAAE;gBACT,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;aAClC;YAED,uBAAuB;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,IAAI;aACd;YAED,uBAAuB;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC;aAClB;SACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAgB;QACvB,OAAO,iCAAyB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC;CACF,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Structured reference codec (kind: 'reference').
3
+ *
4
+ * External documentation, code snippets, API responses.
5
+ */
6
+ import { z } from 'zod';
7
+ import type { BlockCodec } from '../types/codec.js';
8
+ /**
9
+ * Structured reference payload schema.
10
+ */
11
+ export declare const StructuredReferencePayloadSchema: z.ZodObject<{
12
+ /** Reference title */
13
+ title: z.ZodString;
14
+ /** Reference content (markdown, code, JSON, etc.) */
15
+ content: z.ZodString;
16
+ /** Optional source URL */
17
+ sourceUrl: z.ZodOptional<z.ZodString>;
18
+ /** Optional MIME type */
19
+ mimeType: z.ZodOptional<z.ZodString>;
20
+ /** Optional cache control hint */
21
+ cacheable: z.ZodOptional<z.ZodBoolean>;
22
+ }, "strip", z.ZodTypeAny, {
23
+ title: string;
24
+ content: string;
25
+ cacheable?: boolean | undefined;
26
+ sourceUrl?: string | undefined;
27
+ mimeType?: string | undefined;
28
+ }, {
29
+ title: string;
30
+ content: string;
31
+ cacheable?: boolean | undefined;
32
+ sourceUrl?: string | undefined;
33
+ mimeType?: string | undefined;
34
+ }>;
35
+ export type StructuredReferencePayload = z.infer<typeof StructuredReferencePayloadSchema>;
36
+ /**
37
+ * Structured reference codec implementation.
38
+ */
39
+ export declare const StructuredReferenceCodec: BlockCodec<StructuredReferencePayload>;
40
+ //# sourceMappingURL=structured-reference.codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-reference.codec.d.ts","sourceRoot":"","sources":["../../src/codecs/structured-reference.codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAIrE;;GAEG;AACH,eAAO,MAAM,gCAAgC;IAC3C,sBAAsB;;IAGtB,qDAAqD;;IAGrD,0BAA0B;;IAG1B,yBAAyB;;IAGzB,kCAAkC;;;;;;;;;;;;;;EAElC,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gCAAgC,CAAC,CAAC;AAE1F;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,UAAU,CAAC,0BAA0B,CA2D3E,CAAC"}
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ /**
3
+ * Structured reference codec (kind: 'reference').
4
+ *
5
+ * External documentation, code snippets, API responses.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.StructuredReferenceCodec = exports.StructuredReferencePayloadSchema = void 0;
9
+ const zod_1 = require("zod");
10
+ const base_js_1 = require("./base.js");
11
+ /**
12
+ * Structured reference payload schema.
13
+ */
14
+ exports.StructuredReferencePayloadSchema = zod_1.z.object({
15
+ /** Reference title */
16
+ title: zod_1.z.string(),
17
+ /** Reference content (markdown, code, JSON, etc.) */
18
+ content: zod_1.z.string(),
19
+ /** Optional source URL */
20
+ sourceUrl: zod_1.z.string().optional(),
21
+ /** Optional MIME type */
22
+ mimeType: zod_1.z.string().optional(),
23
+ /** Optional cache control hint */
24
+ cacheable: zod_1.z.boolean().optional(),
25
+ });
26
+ /**
27
+ * Structured reference codec implementation.
28
+ */
29
+ exports.StructuredReferenceCodec = {
30
+ codecId: 'structured-reference',
31
+ version: '1.0.0',
32
+ payloadSchema: exports.StructuredReferencePayloadSchema,
33
+ canonicalize(payload) {
34
+ return (0, base_js_1.sortObjectKeys)({
35
+ title: payload.title.trim(),
36
+ content: payload.content,
37
+ sourceUrl: payload.sourceUrl ?? null,
38
+ mimeType: payload.mimeType ?? null,
39
+ cacheable: payload.cacheable ?? false,
40
+ });
41
+ },
42
+ hash(canonicalized) {
43
+ return (0, base_js_1.defaultHash)(canonicalized);
44
+ },
45
+ render(block) {
46
+ const { title, content, sourceUrl, cacheable } = block.payload;
47
+ // Format as markdown with optional source
48
+ const formattedContent = [
49
+ `# ${title}`,
50
+ sourceUrl ? `\n*Source: ${sourceUrl}*\n` : '',
51
+ content,
52
+ ].join('\n');
53
+ return {
54
+ // Anthropic: user message with optional cache control
55
+ anthropic: {
56
+ role: 'user',
57
+ content: [
58
+ {
59
+ type: 'text',
60
+ text: formattedContent,
61
+ ...(cacheable && { cache_control: { type: 'ephemeral' } }),
62
+ },
63
+ ],
64
+ },
65
+ // OpenAI: user message
66
+ openai: {
67
+ role: 'user',
68
+ content: formattedContent,
69
+ },
70
+ // Gemini: user message
71
+ gemini: {
72
+ role: 'user',
73
+ parts: [{ text: formattedContent }],
74
+ },
75
+ };
76
+ },
77
+ validate(payload) {
78
+ return exports.StructuredReferencePayloadSchema.parse(payload);
79
+ },
80
+ };
81
+ //# sourceMappingURL=structured-reference.codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"structured-reference.codec.js","sourceRoot":"","sources":["../../src/codecs/structured-reference.codec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAwB;AAGxB,uCAAwD;AAExD;;GAEG;AACU,QAAA,gCAAgC,GAAG,OAAC,CAAC,MAAM,CAAC;IACvD,sBAAsB;IACtB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;IAEjB,qDAAqD;IACrD,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE;IAEnB,0BAA0B;IAC1B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAEhC,yBAAyB;IACzB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/B,kCAAkC;IAClC,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAIH;;GAEG;AACU,QAAA,wBAAwB,GAA2C;IAC9E,OAAO,EAAE,sBAAsB;IAC/B,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,wCAAgC;IAE/C,YAAY,CAAC,OAAmC;QAC9C,OAAO,IAAA,wBAAc,EAAC;YACpB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;YAC3B,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI;YACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,IAAI;YAClC,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;SACtC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAsB;QACzB,OAAO,IAAA,qBAAW,EAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAA+C;QACpD,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QAE/D,0CAA0C;QAC1C,MAAM,gBAAgB,GAAG;YACvB,KAAK,KAAK,EAAE;YACZ,SAAS,CAAC,CAAC,CAAC,cAAc,SAAS,KAAK,CAAC,CAAC,CAAC,EAAE;YAC7C,OAAO;SACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,OAAO;YACL,sDAAsD;YACtD,SAAS,EAAE;gBACT,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,gBAAgB;wBACtB,GAAG,CAAC,SAAS,IAAI,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;qBAC3D;iBACF;aACF;YAED,uBAAuB;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE,gBAAgB;aAC1B;YAED,uBAAuB;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;aACpC;SACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAgB;QACvB,OAAO,wCAAgC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACzD,CAAC;CACF,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * System rules codec (kind: 'pinned').
3
+ *
4
+ * System-level instructions and constraints.
5
+ */
6
+ import { z } from 'zod';
7
+ import type { BlockCodec } from '../types/codec.js';
8
+ /**
9
+ * System rules payload schema.
10
+ */
11
+ export declare const SystemRulesPayloadSchema: z.ZodObject<{
12
+ /** System rules text */
13
+ text: z.ZodString;
14
+ /** Optional priority (higher = more important) */
15
+ priority: z.ZodOptional<z.ZodNumber>;
16
+ /** Optional cache control hint */
17
+ cacheable: z.ZodOptional<z.ZodBoolean>;
18
+ }, "strip", z.ZodTypeAny, {
19
+ text: string;
20
+ priority?: number | undefined;
21
+ cacheable?: boolean | undefined;
22
+ }, {
23
+ text: string;
24
+ priority?: number | undefined;
25
+ cacheable?: boolean | undefined;
26
+ }>;
27
+ export type SystemRulesPayload = z.infer<typeof SystemRulesPayloadSchema>;
28
+ /**
29
+ * System rules codec implementation.
30
+ */
31
+ export declare const SystemRulesCodec: BlockCodec<SystemRulesPayload>;
32
+ //# sourceMappingURL=system-rules.codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-rules.codec.d.ts","sourceRoot":"","sources":["../../src/codecs/system-rules.codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAIrE;;GAEG;AACH,eAAO,MAAM,wBAAwB;IACnC,wBAAwB;;IAGxB,kDAAkD;;IAGlD,kCAAkC;;;;;;;;;;EAElC,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,UAAU,CAAC,kBAAkB,CA2C3D,CAAC"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ /**
3
+ * System rules codec (kind: 'pinned').
4
+ *
5
+ * System-level instructions and constraints.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.SystemRulesCodec = exports.SystemRulesPayloadSchema = void 0;
9
+ const zod_1 = require("zod");
10
+ const base_js_1 = require("./base.js");
11
+ /**
12
+ * System rules payload schema.
13
+ */
14
+ exports.SystemRulesPayloadSchema = zod_1.z.object({
15
+ /** System rules text */
16
+ text: zod_1.z.string(),
17
+ /** Optional priority (higher = more important) */
18
+ priority: zod_1.z.number().optional(),
19
+ /** Optional cache control hint */
20
+ cacheable: zod_1.z.boolean().optional(),
21
+ });
22
+ /**
23
+ * System rules codec implementation.
24
+ */
25
+ exports.SystemRulesCodec = {
26
+ codecId: 'system-rules',
27
+ version: '1.0.0',
28
+ payloadSchema: exports.SystemRulesPayloadSchema,
29
+ canonicalize(payload) {
30
+ // Normalize whitespace and sort keys
31
+ return (0, base_js_1.sortObjectKeys)({
32
+ text: payload.text.trim(),
33
+ priority: payload.priority ?? 0,
34
+ cacheable: payload.cacheable ?? false,
35
+ });
36
+ },
37
+ hash(canonicalized) {
38
+ return (0, base_js_1.defaultHash)(canonicalized);
39
+ },
40
+ render(block) {
41
+ const { text, cacheable } = block.payload;
42
+ return {
43
+ // Anthropic: system message with optional cache control
44
+ anthropic: {
45
+ type: 'text',
46
+ text,
47
+ ...(cacheable && { cache_control: { type: 'ephemeral' } }),
48
+ },
49
+ // OpenAI: system message
50
+ openai: {
51
+ role: 'system',
52
+ content: text,
53
+ },
54
+ // Gemini: system instruction (string)
55
+ gemini: text,
56
+ };
57
+ },
58
+ validate(payload) {
59
+ return exports.SystemRulesPayloadSchema.parse(payload);
60
+ },
61
+ };
62
+ //# sourceMappingURL=system-rules.codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system-rules.codec.js","sourceRoot":"","sources":["../../src/codecs/system-rules.codec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAwB;AAGxB,uCAAwD;AAExD;;GAEG;AACU,QAAA,wBAAwB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC/C,wBAAwB;IACxB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;IAEhB,kDAAkD;IAClD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAE/B,kCAAkC;IAClC,SAAS,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAIH;;GAEG;AACU,QAAA,gBAAgB,GAAmC;IAC9D,OAAO,EAAE,cAAc;IACvB,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,gCAAwB;IAEvC,YAAY,CAAC,OAA2B;QACtC,qCAAqC;QACrC,OAAO,IAAA,wBAAc,EAAC;YACpB,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE;YACzB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,CAAC;YAC/B,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,KAAK;SACtC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAsB;QACzB,OAAO,IAAA,qBAAW,EAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAuC;QAC5C,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QAE1C,OAAO;YACL,wDAAwD;YACxD,SAAS,EAAE;gBACT,IAAI,EAAE,MAAM;gBACZ,IAAI;gBACJ,GAAG,CAAC,SAAS,IAAI,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC;aAC3D;YAED,yBAAyB;YACzB,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI;aACd;YAED,sCAAsC;YACtC,MAAM,EAAE,IAAI;SACb,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAgB;QACvB,OAAO,gCAAwB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;CACF,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Tool output codec (kind: 'tool_output').
3
+ *
4
+ * Results from tool execution.
5
+ */
6
+ import { z } from 'zod';
7
+ import type { BlockCodec } from '../types/codec.js';
8
+ /**
9
+ * Tool output payload schema.
10
+ */
11
+ export declare const ToolOutputPayloadSchema: z.ZodObject<{
12
+ /** Tool name */
13
+ toolName: z.ZodString;
14
+ /** Tool call ID (for correlation) */
15
+ toolCallId: z.ZodString;
16
+ /** Tool output (success or error) */
17
+ output: z.ZodUnion<[z.ZodObject<{
18
+ success: z.ZodLiteral<true>;
19
+ result: z.ZodUnknown;
20
+ }, "strip", z.ZodTypeAny, {
21
+ success: true;
22
+ result?: unknown;
23
+ }, {
24
+ success: true;
25
+ result?: unknown;
26
+ }>, z.ZodObject<{
27
+ success: z.ZodLiteral<false>;
28
+ error: z.ZodString;
29
+ }, "strip", z.ZodTypeAny, {
30
+ error: string;
31
+ success: false;
32
+ }, {
33
+ error: string;
34
+ success: false;
35
+ }>]>;
36
+ /** Execution duration (ms) */
37
+ durationMs: z.ZodOptional<z.ZodNumber>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ toolName: string;
40
+ toolCallId: string;
41
+ output: {
42
+ success: true;
43
+ result?: unknown;
44
+ } | {
45
+ error: string;
46
+ success: false;
47
+ };
48
+ durationMs?: number | undefined;
49
+ }, {
50
+ toolName: string;
51
+ toolCallId: string;
52
+ output: {
53
+ success: true;
54
+ result?: unknown;
55
+ } | {
56
+ error: string;
57
+ success: false;
58
+ };
59
+ durationMs?: number | undefined;
60
+ }>;
61
+ export type ToolOutputPayload = z.infer<typeof ToolOutputPayloadSchema>;
62
+ /**
63
+ * Tool output codec implementation.
64
+ */
65
+ export declare const ToolOutputCodec: BlockCodec<ToolOutputPayload>;
66
+ //# sourceMappingURL=tool-output.codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-output.codec.d.ts","sourceRoot":"","sources":["../../src/codecs/tool-output.codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAIrE;;GAEG;AACH,eAAO,MAAM,uBAAuB;IAClC,gBAAgB;;IAGhB,qCAAqC;;IAGrC,qCAAqC;;;;;;;;;;;;;;;;;;;;IAYrC,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;EAE9B,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC,iBAAiB,CAkEzD,CAAC"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ /**
3
+ * Tool output codec (kind: 'tool_output').
4
+ *
5
+ * Results from tool execution.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ToolOutputCodec = exports.ToolOutputPayloadSchema = void 0;
9
+ const zod_1 = require("zod");
10
+ const base_js_1 = require("./base.js");
11
+ /**
12
+ * Tool output payload schema.
13
+ */
14
+ exports.ToolOutputPayloadSchema = zod_1.z.object({
15
+ /** Tool name */
16
+ toolName: zod_1.z.string(),
17
+ /** Tool call ID (for correlation) */
18
+ toolCallId: zod_1.z.string(),
19
+ /** Tool output (success or error) */
20
+ output: zod_1.z.union([
21
+ zod_1.z.object({
22
+ success: zod_1.z.literal(true),
23
+ result: zod_1.z.unknown(),
24
+ }),
25
+ zod_1.z.object({
26
+ success: zod_1.z.literal(false),
27
+ error: zod_1.z.string(),
28
+ }),
29
+ ]),
30
+ /** Execution duration (ms) */
31
+ durationMs: zod_1.z.number().optional(),
32
+ });
33
+ /**
34
+ * Tool output codec implementation.
35
+ */
36
+ exports.ToolOutputCodec = {
37
+ codecId: 'tool-output',
38
+ version: '1.0.0',
39
+ payloadSchema: exports.ToolOutputPayloadSchema,
40
+ canonicalize(payload) {
41
+ return (0, base_js_1.sortObjectKeys)({
42
+ toolName: payload.toolName,
43
+ toolCallId: payload.toolCallId,
44
+ output: payload.output,
45
+ // Exclude durationMs from canonicalization (not content-relevant)
46
+ });
47
+ },
48
+ hash(canonicalized) {
49
+ return (0, base_js_1.defaultHash)(canonicalized);
50
+ },
51
+ render(block) {
52
+ const { toolName, toolCallId, output } = block.payload;
53
+ // Format output content
54
+ const contentText = output.success
55
+ ? JSON.stringify(output.result, null, 2)
56
+ : `Error: ${output.error}`;
57
+ return {
58
+ // Anthropic: user message with tool_result
59
+ anthropic: {
60
+ role: 'user',
61
+ content: [
62
+ {
63
+ type: 'tool_result',
64
+ tool_use_id: toolCallId,
65
+ content: contentText,
66
+ is_error: !output.success,
67
+ },
68
+ ],
69
+ },
70
+ // OpenAI: tool message
71
+ openai: {
72
+ role: 'tool',
73
+ tool_call_id: toolCallId,
74
+ name: toolName,
75
+ content: contentText,
76
+ },
77
+ // Gemini: user message with function response
78
+ gemini: {
79
+ role: 'user',
80
+ parts: [
81
+ {
82
+ functionResponse: {
83
+ name: toolName,
84
+ response: output.success ? output.result : { error: output.error },
85
+ },
86
+ },
87
+ ],
88
+ },
89
+ };
90
+ },
91
+ validate(payload) {
92
+ return exports.ToolOutputPayloadSchema.parse(payload);
93
+ },
94
+ };
95
+ //# sourceMappingURL=tool-output.codec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-output.codec.js","sourceRoot":"","sources":["../../src/codecs/tool-output.codec.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,6BAAwB;AAGxB,uCAAwD;AAExD;;GAEG;AACU,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,gBAAgB;IAChB,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE;IAEpB,qCAAqC;IACrC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE;IAEtB,qCAAqC;IACrC,MAAM,EAAE,OAAC,CAAC,KAAK,CAAC;QACd,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC;YACxB,MAAM,EAAE,OAAC,CAAC,OAAO,EAAE;SACpB,CAAC;QACF,OAAC,CAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAC,CAAC,OAAO,CAAC,KAAK,CAAC;YACzB,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE;SAClB,CAAC;KACH,CAAC;IAEF,8BAA8B;IAC9B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAIH;;GAEG;AACU,QAAA,eAAe,GAAkC;IAC5D,OAAO,EAAE,aAAa;IACtB,OAAO,EAAE,OAAO;IAChB,aAAa,EAAE,+BAAuB;IAEtC,YAAY,CAAC,OAA0B;QACrC,OAAO,IAAA,wBAAc,EAAC;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,kEAAkE;SACnE,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,aAAsB;QACzB,OAAO,IAAA,qBAAW,EAAC,aAAa,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,KAAsC;QAC3C,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;QAEvD,wBAAwB;QACxB,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO;YAChC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACxC,CAAC,CAAC,UAAU,MAAM,CAAC,KAAK,EAAE,CAAC;QAE7B,OAAO;YACL,2CAA2C;YAC3C,SAAS,EAAE;gBACT,IAAI,EAAE,MAAM;gBACZ,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,aAAa;wBACnB,WAAW,EAAE,UAAU;wBACvB,OAAO,EAAE,WAAW;wBACpB,QAAQ,EAAE,CAAC,MAAM,CAAC,OAAO;qBAC1B;iBACF;aACF;YAED,uBAAuB;YACvB,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,YAAY,EAAE,UAAU;gBACxB,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,WAAW;aACrB;YAED,8CAA8C;YAC9C,MAAM,EAAE;gBACN,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE;oBACL;wBACE,gBAAgB,EAAE;4BAChB,IAAI,EAAE,QAAQ;4BACd,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE;yBACnE;qBACF;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,QAAQ,CAAC,OAAgB;QACvB,OAAO,+BAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;CACF,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Tool schema codec (kind: 'reference').
3
+ *
4
+ * Tool definitions for function calling.
5
+ */
6
+ import { z } from 'zod';
7
+ import type { BlockCodec } from '../types/codec.js';
8
+ /**
9
+ * Tool schema payload schema (JSON Schema-like).
10
+ */
11
+ export declare const ToolSchemaPayloadSchema: z.ZodObject<{
12
+ /** Tool name */
13
+ name: z.ZodString;
14
+ /** Tool description */
15
+ description: z.ZodString;
16
+ /** Input schema (JSON Schema) */
17
+ inputSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
18
+ /** Optional cache control hint */
19
+ cacheable: z.ZodOptional<z.ZodBoolean>;
20
+ }, "strip", z.ZodTypeAny, {
21
+ name: string;
22
+ description: string;
23
+ inputSchema: Record<string, unknown>;
24
+ cacheable?: boolean | undefined;
25
+ }, {
26
+ name: string;
27
+ description: string;
28
+ inputSchema: Record<string, unknown>;
29
+ cacheable?: boolean | undefined;
30
+ }>;
31
+ export type ToolSchemaPayload = z.infer<typeof ToolSchemaPayloadSchema>;
32
+ /**
33
+ * Tool schema codec implementation.
34
+ */
35
+ export declare const ToolSchemaCodec: BlockCodec<ToolSchemaPayload>;
36
+ //# sourceMappingURL=tool-schema.codec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-schema.codec.d.ts","sourceRoot":"","sources":["../../src/codecs/tool-schema.codec.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,UAAU,EAAmB,MAAM,mBAAmB,CAAC;AAIrE;;GAEG;AACH,eAAO,MAAM,uBAAuB;IAClC,gBAAgB;;IAGhB,uBAAuB;;IAGvB,iCAAiC;;IAGjC,kCAAkC;;;;;;;;;;;;EAElC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,UAAU,CAAC,iBAAiB,CAqDzD,CAAC"}