@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.
- package/README.md +270 -0
- package/dist/__tests__/attachment-selector.test.d.ts +11 -0
- package/dist/__tests__/attachment-selector.test.d.ts.map +1 -0
- package/dist/__tests__/attachment-selector.test.js +449 -0
- package/dist/__tests__/attachment-selector.test.js.map +1 -0
- package/dist/__tests__/cache-breakpoints.test.d.ts +11 -0
- package/dist/__tests__/cache-breakpoints.test.d.ts.map +1 -0
- package/dist/__tests__/cache-breakpoints.test.js +398 -0
- package/dist/__tests__/cache-breakpoints.test.js.map +1 -0
- package/dist/__tests__/codecs.test.d.ts +7 -0
- package/dist/__tests__/codecs.test.d.ts.map +1 -0
- package/dist/__tests__/codecs.test.js +331 -0
- package/dist/__tests__/codecs.test.js.map +1 -0
- package/dist/__tests__/compactor.test.d.ts +11 -0
- package/dist/__tests__/compactor.test.d.ts.map +1 -0
- package/dist/__tests__/compactor.test.js +519 -0
- package/dist/__tests__/compactor.test.js.map +1 -0
- package/dist/__tests__/context-graph.test.d.ts +7 -0
- package/dist/__tests__/context-graph.test.d.ts.map +1 -0
- package/dist/__tests__/context-graph.test.js +262 -0
- package/dist/__tests__/context-graph.test.js.map +1 -0
- package/dist/__tests__/hash.test.d.ts +7 -0
- package/dist/__tests__/hash.test.d.ts.map +1 -0
- package/dist/__tests__/hash.test.js +228 -0
- package/dist/__tests__/hash.test.js.map +1 -0
- package/dist/__tests__/integration.test.d.ts +15 -0
- package/dist/__tests__/integration.test.d.ts.map +1 -0
- package/dist/__tests__/integration.test.js +728 -0
- package/dist/__tests__/integration.test.js.map +1 -0
- package/dist/__tests__/kind-order.test.d.ts +7 -0
- package/dist/__tests__/kind-order.test.d.ts.map +1 -0
- package/dist/__tests__/kind-order.test.js +243 -0
- package/dist/__tests__/kind-order.test.js.map +1 -0
- package/dist/__tests__/phase2-integration.test.d.ts +5 -0
- package/dist/__tests__/phase2-integration.test.d.ts.map +1 -0
- package/dist/__tests__/phase2-integration.test.js +222 -0
- package/dist/__tests__/phase2-integration.test.js.map +1 -0
- package/dist/__tests__/queries.test.d.ts +7 -0
- package/dist/__tests__/queries.test.d.ts.map +1 -0
- package/dist/__tests__/queries.test.js +254 -0
- package/dist/__tests__/queries.test.js.map +1 -0
- package/dist/__tests__/token-estimator.test.d.ts +7 -0
- package/dist/__tests__/token-estimator.test.d.ts.map +1 -0
- package/dist/__tests__/token-estimator.test.js +267 -0
- package/dist/__tests__/token-estimator.test.js.map +1 -0
- package/dist/adapters/anthropic-estimator.d.ts +38 -0
- package/dist/adapters/anthropic-estimator.d.ts.map +1 -0
- package/dist/adapters/anthropic-estimator.js +108 -0
- package/dist/adapters/anthropic-estimator.js.map +1 -0
- package/dist/adapters/attachment-resolver.d.ts +96 -0
- package/dist/adapters/attachment-resolver.d.ts.map +1 -0
- package/dist/adapters/attachment-resolver.js +176 -0
- package/dist/adapters/attachment-resolver.js.map +1 -0
- package/dist/adapters/attachment-selector.d.ts +59 -0
- package/dist/adapters/attachment-selector.d.ts.map +1 -0
- package/dist/adapters/attachment-selector.js +163 -0
- package/dist/adapters/attachment-selector.js.map +1 -0
- package/dist/adapters/gemini-estimator.d.ts +27 -0
- package/dist/adapters/gemini-estimator.d.ts.map +1 -0
- package/dist/adapters/gemini-estimator.js +80 -0
- package/dist/adapters/gemini-estimator.js.map +1 -0
- package/dist/adapters/index.d.ts +12 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +28 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/memory-store.d.ts +139 -0
- package/dist/adapters/memory-store.d.ts.map +1 -0
- package/dist/adapters/memory-store.js +187 -0
- package/dist/adapters/memory-store.js.map +1 -0
- package/dist/adapters/openai-estimator.d.ts +35 -0
- package/dist/adapters/openai-estimator.d.ts.map +1 -0
- package/dist/adapters/openai-estimator.js +89 -0
- package/dist/adapters/openai-estimator.js.map +1 -0
- package/dist/adapters/summarizer.d.ts +121 -0
- package/dist/adapters/summarizer.d.ts.map +1 -0
- package/dist/adapters/summarizer.js +121 -0
- package/dist/adapters/summarizer.js.map +1 -0
- package/dist/adapters/token-estimator.d.ts +63 -0
- package/dist/adapters/token-estimator.d.ts.map +1 -0
- package/dist/adapters/token-estimator.js +37 -0
- package/dist/adapters/token-estimator.js.map +1 -0
- package/dist/builder/context-builder.d.ts +186 -0
- package/dist/builder/context-builder.d.ts.map +1 -0
- package/dist/builder/context-builder.js +305 -0
- package/dist/builder/context-builder.js.map +1 -0
- package/dist/builder/context-fork.d.ts +166 -0
- package/dist/builder/context-fork.d.ts.map +1 -0
- package/dist/builder/context-fork.js +282 -0
- package/dist/builder/context-fork.js.map +1 -0
- package/dist/builder/index.d.ts +6 -0
- package/dist/builder/index.d.ts.map +1 -0
- package/dist/builder/index.js +22 -0
- package/dist/builder/index.js.map +1 -0
- package/dist/codecs/base.d.ts +18 -0
- package/dist/codecs/base.d.ts.map +1 -0
- package/dist/codecs/base.js +39 -0
- package/dist/codecs/base.js.map +1 -0
- package/dist/codecs/conversation-history.codec.d.ts +81 -0
- package/dist/codecs/conversation-history.codec.d.ts.map +1 -0
- package/dist/codecs/conversation-history.codec.js +89 -0
- package/dist/codecs/conversation-history.codec.js.map +1 -0
- package/dist/codecs/index.d.ts +31 -0
- package/dist/codecs/index.d.ts.map +1 -0
- package/dist/codecs/index.js +71 -0
- package/dist/codecs/index.js.map +1 -0
- package/dist/codecs/redacted-stub.codec.d.ts +32 -0
- package/dist/codecs/redacted-stub.codec.d.ts.map +1 -0
- package/dist/codecs/redacted-stub.codec.js +64 -0
- package/dist/codecs/redacted-stub.codec.js.map +1 -0
- package/dist/codecs/structured-reference.codec.d.ts +40 -0
- package/dist/codecs/structured-reference.codec.d.ts.map +1 -0
- package/dist/codecs/structured-reference.codec.js +81 -0
- package/dist/codecs/structured-reference.codec.js.map +1 -0
- package/dist/codecs/system-rules.codec.d.ts +32 -0
- package/dist/codecs/system-rules.codec.d.ts.map +1 -0
- package/dist/codecs/system-rules.codec.js +62 -0
- package/dist/codecs/system-rules.codec.js.map +1 -0
- package/dist/codecs/tool-output.codec.d.ts +66 -0
- package/dist/codecs/tool-output.codec.d.ts.map +1 -0
- package/dist/codecs/tool-output.codec.js +95 -0
- package/dist/codecs/tool-output.codec.js.map +1 -0
- package/dist/codecs/tool-schema.codec.d.ts +36 -0
- package/dist/codecs/tool-schema.codec.d.ts.map +1 -0
- package/dist/codecs/tool-schema.codec.js +74 -0
- package/dist/codecs/tool-schema.codec.js.map +1 -0
- package/dist/codecs/unsafe-text.codec.d.ts +28 -0
- package/dist/codecs/unsafe-text.codec.d.ts.map +1 -0
- package/dist/codecs/unsafe-text.codec.js +63 -0
- package/dist/codecs/unsafe-text.codec.js.map +1 -0
- package/dist/graph/context-graph.d.ts +121 -0
- package/dist/graph/context-graph.d.ts.map +1 -0
- package/dist/graph/context-graph.js +166 -0
- package/dist/graph/context-graph.js.map +1 -0
- package/dist/graph/index.d.ts +8 -0
- package/dist/graph/index.d.ts.map +1 -0
- package/dist/graph/index.js +24 -0
- package/dist/graph/index.js.map +1 -0
- package/dist/graph/kind-order.d.ts +60 -0
- package/dist/graph/kind-order.d.ts.map +1 -0
- package/dist/graph/kind-order.js +113 -0
- package/dist/graph/kind-order.js.map +1 -0
- package/dist/graph/queries.d.ts +68 -0
- package/dist/graph/queries.d.ts.map +1 -0
- package/dist/graph/queries.js +240 -0
- package/dist/graph/queries.js.map +1 -0
- package/dist/graph/views.d.ts +90 -0
- package/dist/graph/views.d.ts.map +1 -0
- package/dist/graph/views.js +173 -0
- package/dist/graph/views.js.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +40 -0
- package/dist/index.js.map +1 -0
- package/dist/pipeline/compactor.d.ts +128 -0
- package/dist/pipeline/compactor.d.ts.map +1 -0
- package/dist/pipeline/compactor.js +346 -0
- package/dist/pipeline/compactor.js.map +1 -0
- package/dist/pipeline/index.d.ts +6 -0
- package/dist/pipeline/index.d.ts.map +1 -0
- package/dist/pipeline/index.js +22 -0
- package/dist/pipeline/index.js.map +1 -0
- package/dist/pipeline/summarizer.d.ts +18 -0
- package/dist/pipeline/summarizer.d.ts.map +1 -0
- package/dist/pipeline/summarizer.js +68 -0
- package/dist/pipeline/summarizer.js.map +1 -0
- package/dist/policies/default-policy.d.ts +29 -0
- package/dist/policies/default-policy.d.ts.map +1 -0
- package/dist/policies/default-policy.js +58 -0
- package/dist/policies/default-policy.js.map +1 -0
- package/dist/policies/index.d.ts +5 -0
- package/dist/policies/index.d.ts.map +1 -0
- package/dist/policies/index.js +21 -0
- package/dist/policies/index.js.map +1 -0
- package/dist/providers/anthropic-compiler.d.ts +58 -0
- package/dist/providers/anthropic-compiler.d.ts.map +1 -0
- package/dist/providers/anthropic-compiler.js +182 -0
- package/dist/providers/anthropic-compiler.js.map +1 -0
- package/dist/providers/capabilities.d.ts +54 -0
- package/dist/providers/capabilities.d.ts.map +1 -0
- package/dist/providers/capabilities.js +87 -0
- package/dist/providers/capabilities.js.map +1 -0
- package/dist/providers/gemini-compiler.d.ts +51 -0
- package/dist/providers/gemini-compiler.d.ts.map +1 -0
- package/dist/providers/gemini-compiler.js +206 -0
- package/dist/providers/gemini-compiler.js.map +1 -0
- package/dist/providers/index.d.ts +8 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +24 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/openai-compiler.d.ts +46 -0
- package/dist/providers/openai-compiler.d.ts.map +1 -0
- package/dist/providers/openai-compiler.js +149 -0
- package/dist/providers/openai-compiler.js.map +1 -0
- package/dist/types/attachment.d.ts +62 -0
- package/dist/types/attachment.d.ts.map +1 -0
- package/dist/types/attachment.js +6 -0
- package/dist/types/attachment.js.map +1 -0
- package/dist/types/block.d.ts +61 -0
- package/dist/types/block.d.ts.map +1 -0
- package/dist/types/block.js +8 -0
- package/dist/types/block.js.map +1 -0
- package/dist/types/codec.d.ts +58 -0
- package/dist/types/codec.d.ts.map +1 -0
- package/dist/types/codec.js +6 -0
- package/dist/types/codec.js.map +1 -0
- package/dist/types/compiled.d.ts +91 -0
- package/dist/types/compiled.d.ts.map +1 -0
- package/dist/types/compiled.js +6 -0
- package/dist/types/compiled.js.map +1 -0
- package/dist/types/hash.d.ts +24 -0
- package/dist/types/hash.d.ts.map +1 -0
- package/dist/types/hash.js +49 -0
- package/dist/types/hash.js.map +1 -0
- package/dist/types/index.d.ts +10 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +26 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/policy.d.ts +128 -0
- package/dist/types/policy.d.ts.map +1 -0
- package/dist/types/policy.js +55 -0
- package/dist/types/policy.js.map +1 -0
- package/package.json +55 -0
- package/postcss.config.js +4 -0
- package/src/__tests__/attachment-selector.test.ts +559 -0
- package/src/__tests__/cache-breakpoints.test.ts +566 -0
- package/src/__tests__/codecs.test.ts +417 -0
- package/src/__tests__/compactor.test.ts +608 -0
- package/src/__tests__/context-graph.test.ts +383 -0
- package/src/__tests__/hash.test.ts +274 -0
- package/src/__tests__/integration.test.ts +866 -0
- package/src/__tests__/kind-order.test.ts +312 -0
- package/src/__tests__/phase2-integration.test.ts +253 -0
- package/src/__tests__/queries.test.ts +387 -0
- package/src/__tests__/token-estimator.test.ts +326 -0
- package/src/adapters/anthropic-estimator.ts +125 -0
- package/src/adapters/attachment-resolver.ts +295 -0
- package/src/adapters/attachment-selector.ts +218 -0
- package/src/adapters/gemini-estimator.ts +93 -0
- package/src/adapters/index.ts +12 -0
- package/src/adapters/memory-store.ts +299 -0
- package/src/adapters/openai-estimator.ts +105 -0
- package/src/adapters/summarizer.ts +250 -0
- package/src/adapters/token-estimator.ts +74 -0
- package/src/builder/context-builder.ts +467 -0
- package/src/builder/context-fork.ts +471 -0
- package/src/builder/index.ts +6 -0
- package/src/codecs/base.ts +36 -0
- package/src/codecs/conversation-history.codec.ts +108 -0
- package/src/codecs/index.ts +57 -0
- package/src/codecs/redacted-stub.codec.ts +76 -0
- package/src/codecs/structured-reference.codec.ts +96 -0
- package/src/codecs/system-rules.codec.ts +74 -0
- package/src/codecs/tool-output.codec.ts +109 -0
- package/src/codecs/tool-schema.codec.ts +87 -0
- package/src/codecs/unsafe-text.codec.ts +74 -0
- package/src/graph/context-graph.ts +205 -0
- package/src/graph/index.ts +8 -0
- package/src/graph/kind-order.ts +125 -0
- package/src/graph/queries.ts +306 -0
- package/src/graph/views.ts +255 -0
- package/src/index.ts +31 -0
- package/src/pipeline/compactor.ts +563 -0
- package/src/pipeline/index.ts +6 -0
- package/src/pipeline/summarizer.ts +76 -0
- package/src/policies/default-policy.ts +69 -0
- package/src/policies/index.ts +5 -0
- package/src/providers/anthropic-compiler.ts +294 -0
- package/src/providers/capabilities.ts +144 -0
- package/src/providers/gemini-compiler.ts +272 -0
- package/src/providers/index.ts +8 -0
- package/src/providers/openai-compiler.ts +191 -0
- package/src/types/attachment.ts +86 -0
- package/src/types/block.ts +84 -0
- package/src/types/codec.ts +68 -0
- package/src/types/compiled.ts +109 -0
- package/src/types/hash.ts +58 -0
- package/src/types/index.ts +10 -0
- package/src/types/policy.ts +194 -0
- package/tsconfig.json +21 -0
- 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"}
|