@coderifts/agent-guard 6.0.0 → 6.2.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 (76) hide show
  1. package/README.md +105 -4
  2. package/dist/cjs/adapters/anthropic.d.ts +26 -0
  3. package/dist/cjs/adapters/anthropic.d.ts.map +1 -1
  4. package/dist/cjs/adapters/anthropic.js +68 -0
  5. package/dist/cjs/adapters/anthropic.js.map +1 -1
  6. package/dist/cjs/adapters/gemini.d.ts +39 -0
  7. package/dist/cjs/adapters/gemini.d.ts.map +1 -1
  8. package/dist/cjs/adapters/gemini.js +83 -0
  9. package/dist/cjs/adapters/gemini.js.map +1 -1
  10. package/dist/cjs/adapters/langgraph.d.ts +29 -0
  11. package/dist/cjs/adapters/langgraph.d.ts.map +1 -1
  12. package/dist/cjs/adapters/langgraph.js +70 -0
  13. package/dist/cjs/adapters/langgraph.js.map +1 -1
  14. package/dist/cjs/adapters/openai.d.ts +44 -0
  15. package/dist/cjs/adapters/openai.d.ts.map +1 -1
  16. package/dist/cjs/adapters/openai.js +86 -0
  17. package/dist/cjs/adapters/openai.js.map +1 -1
  18. package/dist/cjs/cas-adapters/fs.d.ts +79 -0
  19. package/dist/cjs/cas-adapters/fs.d.ts.map +1 -0
  20. package/dist/cjs/cas-adapters/fs.js +224 -0
  21. package/dist/cjs/cas-adapters/fs.js.map +1 -0
  22. package/dist/cjs/conditional-write.d.ts +66 -0
  23. package/dist/cjs/conditional-write.d.ts.map +1 -1
  24. package/dist/cjs/conditional-write.js +72 -1
  25. package/dist/cjs/conditional-write.js.map +1 -1
  26. package/dist/cjs/execution-time-fingerprint.d.ts +65 -0
  27. package/dist/cjs/execution-time-fingerprint.d.ts.map +1 -0
  28. package/dist/cjs/execution-time-fingerprint.js +129 -0
  29. package/dist/cjs/execution-time-fingerprint.js.map +1 -0
  30. package/dist/cjs/guard.d.ts.map +1 -1
  31. package/dist/cjs/guard.js +35 -0
  32. package/dist/cjs/guard.js.map +1 -1
  33. package/dist/cjs/index.d.ts +13 -10
  34. package/dist/cjs/index.d.ts.map +1 -1
  35. package/dist/cjs/index.js +33 -3
  36. package/dist/cjs/index.js.map +1 -1
  37. package/dist/cjs/types.d.ts +23 -1
  38. package/dist/cjs/types.d.ts.map +1 -1
  39. package/dist/esm/adapters/anthropic.d.ts +26 -0
  40. package/dist/esm/adapters/anthropic.d.ts.map +1 -1
  41. package/dist/esm/adapters/anthropic.js +66 -0
  42. package/dist/esm/adapters/anthropic.js.map +1 -1
  43. package/dist/esm/adapters/gemini.d.ts +39 -0
  44. package/dist/esm/adapters/gemini.d.ts.map +1 -1
  45. package/dist/esm/adapters/gemini.js +81 -0
  46. package/dist/esm/adapters/gemini.js.map +1 -1
  47. package/dist/esm/adapters/langgraph.d.ts +29 -0
  48. package/dist/esm/adapters/langgraph.d.ts.map +1 -1
  49. package/dist/esm/adapters/langgraph.js +68 -0
  50. package/dist/esm/adapters/langgraph.js.map +1 -1
  51. package/dist/esm/adapters/openai.d.ts +44 -0
  52. package/dist/esm/adapters/openai.d.ts.map +1 -1
  53. package/dist/esm/adapters/openai.js +84 -0
  54. package/dist/esm/adapters/openai.js.map +1 -1
  55. package/dist/esm/cas-adapters/fs.d.ts +79 -0
  56. package/dist/esm/cas-adapters/fs.d.ts.map +1 -0
  57. package/dist/esm/cas-adapters/fs.js +185 -0
  58. package/dist/esm/cas-adapters/fs.js.map +1 -0
  59. package/dist/esm/conditional-write.d.ts +66 -0
  60. package/dist/esm/conditional-write.d.ts.map +1 -1
  61. package/dist/esm/conditional-write.js +69 -0
  62. package/dist/esm/conditional-write.js.map +1 -1
  63. package/dist/esm/execution-time-fingerprint.d.ts +65 -0
  64. package/dist/esm/execution-time-fingerprint.d.ts.map +1 -0
  65. package/dist/esm/execution-time-fingerprint.js +123 -0
  66. package/dist/esm/execution-time-fingerprint.js.map +1 -0
  67. package/dist/esm/guard.d.ts.map +1 -1
  68. package/dist/esm/guard.js +35 -0
  69. package/dist/esm/guard.js.map +1 -1
  70. package/dist/esm/index.d.ts +13 -10
  71. package/dist/esm/index.d.ts.map +1 -1
  72. package/dist/esm/index.js +15 -6
  73. package/dist/esm/index.js.map +1 -1
  74. package/dist/esm/types.d.ts +23 -1
  75. package/dist/esm/types.d.ts.map +1 -1
  76. package/package.json +1 -1
package/dist/cjs/index.js CHANGED
@@ -23,8 +23,8 @@
23
23
  * ```
24
24
  */
25
25
  Object.defineProperty(exports, "__esModule", { value: true });
26
- exports.guardToolRegistry = exports.globToRegExp = exports.matchGlob = exports.blobMapKey = exports.classifyByName = exports.resolveArtifacts = exports.RESIDUAL_UNCONDITIONAL_WRITE = exports.conditionalWriteResidual = exports.tokensEqual = exports.buildConditionalWriteBasis = exports.buildFreshnessBasis = exports.collectFreshnessCallContext = exports.artifactIdsForResolve = exports.isWriteStyleCall = exports.freshnessAllowsEnforce = exports.computePathSetTreeHash = exports.contentByteIdentical = exports.assessWriteStylePrior = exports.assessFreshness = exports.deriveProofBanner = exports.attachProofToAgentResponse = exports.renderFinalAnswerProof = exports.EXECUTION_PROOF_SPEC = exports.assertEnforcedReceiptInvariant = exports.hashExecutionResult = exports.buildExecutionProof = exports.deriveKeySignal = exports.pathClass = exports.classifyCommand = exports.projectState = exports.emptySessionState = exports.computeTainted = exports.evaluate = exports.updateSession = exports.SESSION_TAINT_VERSION = exports.SessionTaintTracker = exports.readDecision = exports.computeBundleFingerprint = exports.computeArtifactDigest = exports.evaluateEnvelope = exports.RECEIPT_PREV_NULL = exports.decodeReceiptBodyPrev = exports.previousReceiptCommitment = exports.verifyReceiptChainLinkage = exports.canonicalJson = exports.computeBodyHash = exports.bindReceiptToEnvelope = exports.DETECTOR_VERSION = exports.builtinDetector = exports.guardToolCall = void 0;
27
- exports.protectedToolToFunctionDeclaration = exports.toGeminiTools = exports.geminiToolAdapter = exports.withCodeRiftsGemini = exports.protectedToolToLangGraph = exports.toLangGraphTools = exports.langGraphToolAdapter = exports.withCodeRiftsLangGraph = exports.protectedToolToAnthropic = exports.toAnthropicTools = exports.anthropicToolAdapter = exports.withCodeRiftsAnthropic = exports.protectedToolToOpenAI = exports.toOpenAITools = exports.openAIToolAdapter = exports.withCodeRiftsOpenAI = exports.guardedFractionAmongRoutes = exports.foldTableSettledCalls = exports.withCodeRifts = exports.coverageReport = exports.DEPLOY_REPAIRABLE_REASONS = exports.bindDeploy = exports.deployGate = exports.gateDecision = exports.RegistryConstructionError = void 0;
26
+ exports.StaleVersionTokenAbort = exports.executeIfUnchanged = exports.RESIDUAL_UNCONDITIONAL_WRITE = exports.conditionalWriteResidual = exports.tokensEqual = exports.buildConditionalWriteBasis = exports.buildFreshnessBasis = exports.collectFreshnessCallContext = exports.artifactIdsForResolve = exports.isWriteStyleCall = exports.freshnessAllowsEnforce = exports.computePathSetTreeHash = exports.contentByteIdentical = exports.assessWriteStylePrior = exports.assessFreshness = exports.deriveProofBanner = exports.attachProofToAgentResponse = exports.renderFinalAnswerProof = exports.EXECUTION_PROOF_SPEC = exports.assertEnforcedReceiptInvariant = exports.hashExecutionResult = exports.buildExecutionProof = exports.deriveKeySignal = exports.pathClass = exports.classifyCommand = exports.projectState = exports.emptySessionState = exports.computeTainted = exports.evaluate = exports.updateSession = exports.SESSION_TAINT_VERSION = exports.SessionTaintTracker = exports.readDecision = exports.EXECUTION_TIME_FP_REASONS = exports.computeCanonicalBundleFingerprint = exports.authorizedFingerprintFromEnvelope = exports.checkExecutionTimeFingerprint = exports.computeBundleFingerprint = exports.computeArtifactDigest = exports.evaluateEnvelope = exports.RECEIPT_PREV_NULL = exports.decodeReceiptBodyPrev = exports.previousReceiptCommitment = exports.verifyReceiptChainLinkage = exports.canonicalJson = exports.computeBodyHash = exports.bindReceiptToEnvelope = exports.DETECTOR_VERSION = exports.builtinDetector = exports.guardToolCall = void 0;
27
+ exports.defaultSerializeGeminiToolResult = exports.bindGeminiGuardOutcome = exports.protectedToolToFunctionDeclaration = exports.toGeminiTools = exports.geminiToolAdapter = exports.withCodeRiftsGemini = exports.defaultSerializeLangGraphToolResult = exports.bindLangGraphGuardOutcome = exports.protectedToolToLangGraph = exports.toLangGraphTools = exports.langGraphToolAdapter = exports.withCodeRiftsLangGraph = exports.defaultSerializeAnthropicToolResult = exports.bindAnthropicGuardOutcome = exports.protectedToolToAnthropic = exports.toAnthropicTools = exports.anthropicToolAdapter = exports.withCodeRiftsAnthropic = exports.defaultSerializeOpenAIToolResult = exports.bindOpenAIGuardOutcome = exports.protectedToolToOpenAI = exports.toOpenAITools = exports.openAIToolAdapter = exports.withCodeRiftsOpenAI = exports.guardedFractionAmongRoutes = exports.foldTableSettledCalls = exports.withCodeRifts = exports.coverageReport = exports.DEPLOY_REPAIRABLE_REASONS = exports.bindDeploy = exports.deployGate = exports.gateDecision = exports.RegistryConstructionError = exports.guardToolRegistry = exports.globToRegExp = exports.matchGlob = exports.blobMapKey = exports.classifyByName = exports.resolveArtifacts = exports.FS_ABSENT_TOKEN = exports.FS_VERSION_TOKEN_PREFIX = exports.fsTokenContentHash = exports.createFsPriorContentResolver = exports.writeFileIfUnchanged = exports.readVersionedFile = exports.createFsVersionToken = void 0;
28
28
  var guard_js_1 = require("./guard.js");
29
29
  Object.defineProperty(exports, "guardToolCall", { enumerable: true, get: function () { return guard_js_1.guardToolCall; } });
30
30
  var detector_js_1 = require("./detector.js");
@@ -47,6 +47,12 @@ var enforcement_gate_js_1 = require("./enforcement-gate.js");
47
47
  Object.defineProperty(exports, "evaluateEnvelope", { enumerable: true, get: function () { return enforcement_gate_js_1.evaluateEnvelope; } });
48
48
  Object.defineProperty(exports, "computeArtifactDigest", { enumerable: true, get: function () { return enforcement_gate_js_1.computeArtifactDigest; } });
49
49
  Object.defineProperty(exports, "computeBundleFingerprint", { enumerable: true, get: function () { return enforcement_gate_js_1.computeBundleFingerprint; } });
50
+ // ID842 step 1 — host-independent T2 execution-time fingerprint recheck (opt-in requireExecutionStateMatch).
51
+ var execution_time_fingerprint_js_1 = require("./execution-time-fingerprint.js");
52
+ Object.defineProperty(exports, "checkExecutionTimeFingerprint", { enumerable: true, get: function () { return execution_time_fingerprint_js_1.checkExecutionTimeFingerprint; } });
53
+ Object.defineProperty(exports, "authorizedFingerprintFromEnvelope", { enumerable: true, get: function () { return execution_time_fingerprint_js_1.authorizedFingerprintFromEnvelope; } });
54
+ Object.defineProperty(exports, "computeCanonicalBundleFingerprint", { enumerable: true, get: function () { return execution_time_fingerprint_js_1.computeCanonicalBundleFingerprint; } });
55
+ Object.defineProperty(exports, "EXECUTION_TIME_FP_REASONS", { enumerable: true, get: function () { return execution_time_fingerprint_js_1.EXECUTION_TIME_FP_REASONS; } });
50
56
  // Guard-local readDecision: present-but-unrecognised execution_action does NOT fall through to
51
57
  // the decision map (SDK ladder did — that reinvented permission). Missing action still maps.
52
58
  var read_decision_js_1 = require("./read-decision.js");
@@ -86,12 +92,24 @@ Object.defineProperty(exports, "isWriteStyleCall", { enumerable: true, get: func
86
92
  Object.defineProperty(exports, "artifactIdsForResolve", { enumerable: true, get: function () { return freshness_js_1.artifactIdsForResolve; } });
87
93
  Object.defineProperty(exports, "collectFreshnessCallContext", { enumerable: true, get: function () { return freshness_js_1.collectFreshnessCallContext; } });
88
94
  Object.defineProperty(exports, "buildFreshnessBasis", { enumerable: true, get: function () { return freshness_js_1.buildFreshnessBasis; } });
89
- // Conditional-write surface (reporting only package never writes). Opt-in requireConditionalWrite.
95
+ // Conditional-write surface (reporting + host helper executeIfUnchanged). Opt-in requireConditionalWrite.
96
+ // The package still never invents business writes — adapters perform I/O under the helper.
90
97
  var conditional_write_js_1 = require("./conditional-write.js");
91
98
  Object.defineProperty(exports, "buildConditionalWriteBasis", { enumerable: true, get: function () { return conditional_write_js_1.buildConditionalWriteBasis; } });
92
99
  Object.defineProperty(exports, "tokensEqual", { enumerable: true, get: function () { return conditional_write_js_1.tokensEqual; } });
93
100
  Object.defineProperty(exports, "conditionalWriteResidual", { enumerable: true, get: function () { return conditional_write_js_1.conditionalWriteResidual; } });
94
101
  Object.defineProperty(exports, "RESIDUAL_UNCONDITIONAL_WRITE", { enumerable: true, get: function () { return conditional_write_js_1.RESIDUAL_UNCONDITIONAL_WRITE; } });
102
+ Object.defineProperty(exports, "executeIfUnchanged", { enumerable: true, get: function () { return conditional_write_js_1.executeIfUnchanged; } });
103
+ Object.defineProperty(exports, "StaleVersionTokenAbort", { enumerable: true, get: function () { return conditional_write_js_1.StaleVersionTokenAbort; } });
104
+ // Filesystem CAS adapter (mtime + content-hash token, atomic rename). First execution-state CAS enabler.
105
+ var fs_js_1 = require("./cas-adapters/fs.js");
106
+ Object.defineProperty(exports, "createFsVersionToken", { enumerable: true, get: function () { return fs_js_1.createFsVersionToken; } });
107
+ Object.defineProperty(exports, "readVersionedFile", { enumerable: true, get: function () { return fs_js_1.readVersionedFile; } });
108
+ Object.defineProperty(exports, "writeFileIfUnchanged", { enumerable: true, get: function () { return fs_js_1.writeFileIfUnchanged; } });
109
+ Object.defineProperty(exports, "createFsPriorContentResolver", { enumerable: true, get: function () { return fs_js_1.createFsPriorContentResolver; } });
110
+ Object.defineProperty(exports, "fsTokenContentHash", { enumerable: true, get: function () { return fs_js_1.fsTokenContentHash; } });
111
+ Object.defineProperty(exports, "FS_VERSION_TOKEN_PREFIX", { enumerable: true, get: function () { return fs_js_1.FS_VERSION_TOKEN_PREFIX; } });
112
+ Object.defineProperty(exports, "FS_ABSENT_TOKEN", { enumerable: true, get: function () { return fs_js_1.FS_ABSENT_TOKEN; } });
95
113
  // artifactResolver — automatic base/head contract artifacts from a pure git snapshot (upstream of
96
114
  // preflight; produces artifacts, never decides). Companion to MISSING_ARTIFACT_CONTENT.
97
115
  var artifact_resolver_js_1 = require("./artifact-resolver.js");
@@ -127,27 +145,39 @@ Object.defineProperty(exports, "foldTableSettledCalls", { enumerable: true, get:
127
145
  Object.defineProperty(exports, "guardedFractionAmongRoutes", { enumerable: true, get: function () { return with_coderifts_js_1.guardedFractionAmongRoutes; } });
128
146
  // ID632 slice 1 — thin OpenAI tool-calling adapter over withCodeRifts (reference adapter).
129
147
  // Shape converter only; assurance objects pass through untouched.
148
+ // ID827 phase 1 — bindOpenAIGuardOutcome (Option B proof binder; additive, guard@6.1).
130
149
  var openai_js_1 = require("./adapters/openai.js");
131
150
  Object.defineProperty(exports, "withCodeRiftsOpenAI", { enumerable: true, get: function () { return openai_js_1.withCodeRiftsOpenAI; } });
132
151
  Object.defineProperty(exports, "openAIToolAdapter", { enumerable: true, get: function () { return openai_js_1.openAIToolAdapter; } });
133
152
  Object.defineProperty(exports, "toOpenAITools", { enumerable: true, get: function () { return openai_js_1.toOpenAITools; } });
134
153
  Object.defineProperty(exports, "protectedToolToOpenAI", { enumerable: true, get: function () { return openai_js_1.protectedToolToOpenAI; } });
154
+ Object.defineProperty(exports, "bindOpenAIGuardOutcome", { enumerable: true, get: function () { return openai_js_1.bindOpenAIGuardOutcome; } });
155
+ Object.defineProperty(exports, "defaultSerializeOpenAIToolResult", { enumerable: true, get: function () { return openai_js_1.defaultSerializeOpenAIToolResult; } });
135
156
  // ID632 slice 2 — thin Anthropic tool_use adapter (same pattern; only the tool shape differs).
157
+ // ID827 phase 2 — bindAnthropicGuardOutcome (Option B proof binder; additive, guard@6.1).
136
158
  var anthropic_js_1 = require("./adapters/anthropic.js");
137
159
  Object.defineProperty(exports, "withCodeRiftsAnthropic", { enumerable: true, get: function () { return anthropic_js_1.withCodeRiftsAnthropic; } });
138
160
  Object.defineProperty(exports, "anthropicToolAdapter", { enumerable: true, get: function () { return anthropic_js_1.anthropicToolAdapter; } });
139
161
  Object.defineProperty(exports, "toAnthropicTools", { enumerable: true, get: function () { return anthropic_js_1.toAnthropicTools; } });
140
162
  Object.defineProperty(exports, "protectedToolToAnthropic", { enumerable: true, get: function () { return anthropic_js_1.protectedToolToAnthropic; } });
163
+ Object.defineProperty(exports, "bindAnthropicGuardOutcome", { enumerable: true, get: function () { return anthropic_js_1.bindAnthropicGuardOutcome; } });
164
+ Object.defineProperty(exports, "defaultSerializeAnthropicToolResult", { enumerable: true, get: function () { return anthropic_js_1.defaultSerializeAnthropicToolResult; } });
141
165
  // ID632 slice 3 — thin LangChain/LangGraph tool adapter (plain descriptors; no framework dep).
166
+ // ID827 phase 2 — bindLangGraphGuardOutcome (Option B proof binder; additive, guard@6.1).
142
167
  var langgraph_js_1 = require("./adapters/langgraph.js");
143
168
  Object.defineProperty(exports, "withCodeRiftsLangGraph", { enumerable: true, get: function () { return langgraph_js_1.withCodeRiftsLangGraph; } });
144
169
  Object.defineProperty(exports, "langGraphToolAdapter", { enumerable: true, get: function () { return langgraph_js_1.langGraphToolAdapter; } });
145
170
  Object.defineProperty(exports, "toLangGraphTools", { enumerable: true, get: function () { return langgraph_js_1.toLangGraphTools; } });
146
171
  Object.defineProperty(exports, "protectedToolToLangGraph", { enumerable: true, get: function () { return langgraph_js_1.protectedToolToLangGraph; } });
172
+ Object.defineProperty(exports, "bindLangGraphGuardOutcome", { enumerable: true, get: function () { return langgraph_js_1.bindLangGraphGuardOutcome; } });
173
+ Object.defineProperty(exports, "defaultSerializeLangGraphToolResult", { enumerable: true, get: function () { return langgraph_js_1.defaultSerializeLangGraphToolResult; } });
147
174
  // ID632 slice 4 — thin Google Gemini function-calling adapter (functionDeclarations wrapper).
175
+ // ID827 phase 2 — bindGeminiGuardOutcome (Option B proof binder; object response; additive, guard@6.1).
148
176
  var gemini_js_1 = require("./adapters/gemini.js");
149
177
  Object.defineProperty(exports, "withCodeRiftsGemini", { enumerable: true, get: function () { return gemini_js_1.withCodeRiftsGemini; } });
150
178
  Object.defineProperty(exports, "geminiToolAdapter", { enumerable: true, get: function () { return gemini_js_1.geminiToolAdapter; } });
151
179
  Object.defineProperty(exports, "toGeminiTools", { enumerable: true, get: function () { return gemini_js_1.toGeminiTools; } });
152
180
  Object.defineProperty(exports, "protectedToolToFunctionDeclaration", { enumerable: true, get: function () { return gemini_js_1.protectedToolToFunctionDeclaration; } });
181
+ Object.defineProperty(exports, "bindGeminiGuardOutcome", { enumerable: true, get: function () { return gemini_js_1.bindGeminiGuardOutcome; } });
182
+ Object.defineProperty(exports, "defaultSerializeGeminiToolResult", { enumerable: true, get: function () { return gemini_js_1.defaultSerializeGeminiToolResult; } });
153
183
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;;;;AAEH,uCAA2C;AAAlC,yGAAA,aAAa,OAAA;AACtB,6CAAkE;AAAzD,8GAAA,eAAe,OAAA;AAAE,+GAAA,gBAAgB,OAAA;AAC1C,2FAA2F;AAC3F,2DAA6F;AAApF,2HAAA,qBAAqB,OAAA;AAAE,qHAAA,eAAe,OAAA;AAAE,mHAAA,aAAa,OAAA;AAE9D,wGAAwG;AACxG,uDAK4B;AAJ1B,6HAAA,yBAAyB,OAAA;AACzB,6HAAA,yBAAyB,OAAA;AACzB,yHAAA,qBAAqB,OAAA;AACrB,qHAAA,iBAAiB,OAAA;AAMnB,sGAAsG;AACtG,+DAA+D;AAC/D,6DAA0G;AAAjG,uHAAA,gBAAgB,OAAA;AAAE,4HAAA,qBAAqB,OAAA;AAAE,+HAAA,wBAAwB,OAAA;AAE1E,+FAA+F;AAC/F,6FAA6F;AAC7F,uDAAkD;AAAzC,gHAAA,YAAY,OAAA;AAErB,+FAA+F;AAC/F,uDAG4B;AAF1B,uHAAA,mBAAmB,OAAA;AAAE,yHAAA,qBAAqB,OAAA;AAAE,iHAAA,aAAa,OAAA;AAAE,4GAAA,QAAQ,OAAA;AAAE,kHAAA,cAAc,OAAA;AACnF,qHAAA,iBAAiB,OAAA;AAAE,gHAAA,YAAY,OAAA;AAAE,mHAAA,eAAe,OAAA;AAAE,6GAAA,SAAS,OAAA;AAAE,mHAAA,eAAe,OAAA;AA8B9E,8FAA8F;AAC9F,2DAK8B;AAJ5B,yHAAA,mBAAmB,OAAA;AACnB,yHAAA,mBAAmB,OAAA;AACnB,oIAAA,8BAA8B,OAAA;AAC9B,0HAAA,oBAAoB,OAAA;AAGtB,2FAA2F;AAC3F,sFAAsF;AACtF,iEAIiC;AAH/B,+HAAA,sBAAsB,OAAA;AACtB,mIAAA,0BAA0B,OAAA;AAC1B,0HAAA,iBAAiB,OAAA;AASnB,mGAAmG;AACnG,+CAUwB;AATtB,+GAAA,eAAe,OAAA;AACf,qHAAA,qBAAqB,OAAA;AACrB,oHAAA,oBAAoB,OAAA;AACpB,sHAAA,sBAAsB,OAAA;AACtB,sHAAA,sBAAsB,OAAA;AACtB,gHAAA,gBAAgB,OAAA;AAChB,qHAAA,qBAAqB,OAAA;AACrB,2HAAA,2BAA2B,OAAA;AAC3B,mHAAA,mBAAmB,OAAA;AAgBrB,qGAAqG;AACrG,+DAKgC;AAJ9B,kIAAA,0BAA0B,OAAA;AAC1B,mHAAA,WAAW,OAAA;AACX,gIAAA,wBAAwB,OAAA;AACxB,oIAAA,4BAA4B,OAAA;AAU9B,kGAAkG;AAClG,wFAAwF;AACxF,+DAAiG;AAAxF,wHAAA,OAAO,OAAoB;AAAE,sHAAA,cAAc,OAAA;AAAE,kHAAA,UAAU,OAAA;AAKhE,uDAA6D;AAApD,6GAAA,SAAS,OAAA;AAAE,gHAAA,YAAY,OAAA;AAEhC,qGAAqG;AACrG,uDAAkF;AAAzE,qHAAA,iBAAiB,OAAA;AAAE,6HAAA,yBAAyB,OAAA;AAarD,uGAAuG;AACvG,iDAA+C;AAAtC,6GAAA,YAAY,OAAA;AAMrB,oGAAoG;AACpG,mDAA8C;AAArC,4GAAA,UAAU,OAAA;AAKnB,yGAAyG;AACzG,mDAAyE;AAAhE,4GAAA,UAAU,OAAA;AAAE,2HAAA,yBAAyB,OAAA;AAK9C,uGAAuG;AACvG,2DAAsD;AAA7C,oHAAA,cAAc,OAAA;AAOvB,gGAAgG;AAChG,qGAAqG;AACrG,2GAA2G;AAC3G,yDAI6B;AAH3B,kHAAA,aAAa,OAAA;AACb,0HAAA,qBAAqB,OAAA;AACrB,+HAAA,0BAA0B,OAAA;AAQ5B,2FAA2F;AAC3F,kEAAkE;AAClE,kDAK8B;AAJ5B,gHAAA,mBAAmB,OAAA;AACnB,8GAAA,iBAAiB,OAAA;AACjB,0GAAA,aAAa,OAAA;AACb,kHAAA,qBAAqB,OAAA;AAOvB,+FAA+F;AAC/F,wDAKiC;AAJ/B,sHAAA,sBAAsB,OAAA;AACtB,oHAAA,oBAAoB,OAAA;AACpB,gHAAA,gBAAgB,OAAA;AAChB,wHAAA,wBAAwB,OAAA;AAO1B,+FAA+F;AAC/F,wDAKiC;AAJ/B,sHAAA,sBAAsB,OAAA;AACtB,oHAAA,oBAAoB,OAAA;AACpB,gHAAA,gBAAgB,OAAA;AAChB,wHAAA,wBAAwB,OAAA;AAO1B,8FAA8F;AAC9F,kDAK8B;AAJ5B,gHAAA,mBAAmB,OAAA;AACnB,8GAAA,iBAAiB,OAAA;AACjB,0GAAA,aAAa,OAAA;AACb,+HAAA,kCAAkC,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,19 @@ export interface GuardConfig {
72
72
  * Default false — API remains opt-in. This package never writes; it only reports and refuses.
73
73
  */
74
74
  requireConditionalWrite?: boolean;
75
+ /**
76
+ * Policy (ID842): T2 execution-time fingerprint recheck immediately before executeFactory.
77
+ * Host-independent — recomputes crbundle.v1 over CURRENT artifacts; does not trust a host-supplied
78
+ * expected_fingerprint for the T2 measurement.
79
+ *
80
+ * Tri-state (least-breaking: keeps boolean semantics; only `'warn'` is new):
81
+ * - false / absent → off (default) — no recheck
82
+ * - true → enforce — hard-block with EXECUTION_STATE_DRIFT on mismatch (step 1 behavior)
83
+ * - 'warn' → report-only — emit `execution_state_drift_observed` on mismatch, still execute
84
+ *
85
+ * Default remains off. warn and enforce are both opt-in; a default flip is a later versioned decision.
86
+ */
87
+ requireExecutionStateMatch?: boolean | 'warn';
75
88
  }
76
89
  export interface ToolCallDescriptor {
77
90
  toolName: string;
@@ -209,7 +222,7 @@ export type UnavailableVerdict = {
209
222
  lkgEnvelope: ReceiptVerifiedEnvelope;
210
223
  });
211
224
  export type AvailabilityCause = 'TIMEOUT' | 'NETWORK' | 'SERVER_ERROR' | 'RATE_LIMITED';
212
- export type IntegrityCause = 'INVALID_RESPONSE' | 'UNSUPPORTED_VERSION' | 'SCHEMA_INVALID' | 'RECEIPT_UNVERIFIED' | 'DETECTOR_ERROR' | 'CONFIG_ERROR' | 'PAYLOAD_TOO_LARGE' | 'REQUEST_REJECTED' | 'RECEIPT_ENVELOPE_MISMATCH' | 'DECISION_INCONSISTENT' | 'EXECUTION_ACTION_UNRECOGNISED' | 'ANALYSIS_DEGRADED' | 'ARTIFACT_MISMATCH' | 'RECEIPT_MISSING' | 'MONITORING_UNWIRED' | 'MISSING_ARTIFACT_CONTENT' | 'FRESHNESS_REQUIRED' | 'FRESHNESS_FAILED' | 'CONDITIONAL_WRITE_REQUIRED';
225
+ export type IntegrityCause = 'INVALID_RESPONSE' | 'UNSUPPORTED_VERSION' | 'SCHEMA_INVALID' | 'RECEIPT_UNVERIFIED' | 'DETECTOR_ERROR' | 'CONFIG_ERROR' | 'PAYLOAD_TOO_LARGE' | 'REQUEST_REJECTED' | 'RECEIPT_ENVELOPE_MISMATCH' | 'DECISION_INCONSISTENT' | 'EXECUTION_ACTION_UNRECOGNISED' | 'ANALYSIS_DEGRADED' | 'ARTIFACT_MISMATCH' | 'RECEIPT_MISSING' | 'MONITORING_UNWIRED' | 'MISSING_ARTIFACT_CONTENT' | 'FRESHNESS_REQUIRED' | 'FRESHNESS_FAILED' | 'CONDITIONAL_WRITE_REQUIRED' | 'EXECUTION_STATE_DRIFT';
213
226
  export type UnavailableCause = AvailabilityCause | IntegrityCause;
214
227
  export interface TriggerDetector {
215
228
  version: string;
@@ -234,5 +247,14 @@ export type GuardEvent = {
234
247
  durationMs?: number;
235
248
  signals?: string[];
236
249
  detectorVersion?: string;
250
+ }
251
+ /** ID842 step 3a — warn-mode only: T2 fingerprint drift observed; execution still proceeds. */
252
+ | {
253
+ type: 'execution_state_drift_observed';
254
+ at: string;
255
+ decisionId?: string;
256
+ current_fingerprint: string | null;
257
+ authorized_fingerprint: string | null;
258
+ reason: string;
237
259
  };
238
260
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@
23
23
  */
24
24
  import type { WithCodeRiftsInput, WithCodeRiftsResult, CompositionAssurance, ReceiptThreadHandle } from '../with-coderifts.js';
25
25
  import type { ProtectedTool, RegistryCoverageReport } from '../tool-registry.js';
26
+ import type { GuardOutcome } from '../types.js';
26
27
  /**
27
28
  * Anthropic Messages API `tools[]` element (tool_use definition).
28
29
  * @see https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/overview
@@ -87,4 +88,29 @@ export declare function withCodeRiftsAnthropic(input: WithCodeRiftsInput): WithC
87
88
  * Does not re-run the guard; does not invent assurance.
88
89
  */
89
90
  export declare function anthropicToolAdapter(result: WithCodeRiftsResult): WithCodeRiftsAnthropicResult;
91
+ /**
92
+ * Minimal Anthropic tool_result content block. No @anthropic-ai/sdk dependency.
93
+ * @see https://docs.anthropic.com/en/docs/agents-and-tools/tool-use/overview
94
+ */
95
+ export type AnthropicToolResult = {
96
+ type: 'tool_result';
97
+ tool_use_id: string;
98
+ content: string;
99
+ };
100
+ declare const __proofBoundAnthropicBrand: unique symbol;
101
+ export type ProofBoundAnthropicToolResult = AnthropicToolResult & {
102
+ readonly __proofBound: typeof __proofBoundAnthropicBrand;
103
+ };
104
+ export type BindAnthropicGuardOutcomeArgs<T> = {
105
+ /** Anthropic tool_use block id this tool_result answers. */
106
+ tool_use_id: string;
107
+ serialize?: (result: T) => string;
108
+ };
109
+ export declare function defaultSerializeAnthropicToolResult<T>(result: T): string;
110
+ /**
111
+ * Map a full GuardOutcome into an Anthropic tool_result block with proof embedded.
112
+ * Same arm mapping as bindOpenAIGuardOutcome; id field is tool_use_id.
113
+ */
114
+ export declare function bindAnthropicGuardOutcome<T>(outcome: GuardOutcome<T>, args: BindAnthropicGuardOutcomeArgs<T>): ProofBoundAnthropicToolResult;
115
+ export {};
90
116
  //# sourceMappingURL=anthropic.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/adapters/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,iFAAiF;IACjF,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,CAgB3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,EAAE,CAE1F;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,4BAA4B,CAG9F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,4BAA4B,CAc9F"}
1
+ {"version":3,"file":"anthropic.d.ts","sourceRoot":"","sources":["../../../src/adapters/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,wEAAwE;IACxE,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,iFAAiF;IACjF,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,aAAa,CAgB3E;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,aAAa,EAAE,CAE1F;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,4BAA4B,CAG9F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,4BAA4B,CAc9F;AAID;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,aAAa,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,OAAO,CAAC,MAAM,0BAA0B,EAAE,OAAO,MAAM,CAAC;AACxD,MAAM,MAAM,6BAA6B,GAAG,mBAAmB,GAAG;IAChE,QAAQ,CAAC,YAAY,EAAE,OAAO,0BAA0B,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,6BAA6B,CAAC,CAAC,IAAI;IAC7C,4DAA4D;IAC5D,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAC;CACnC,CAAC;AAEF,wBAAgB,mCAAmC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAgBxE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EACzC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,6BAA6B,CAAC,CAAC,CAAC,GACrC,6BAA6B,CA0B/B"}
@@ -22,6 +22,7 @@
22
22
  * Mirrors src/adapters/openai.ts — only the target tool shape differs.
23
23
  */
24
24
  import { withCodeRifts } from '../with-coderifts.js';
25
+ import { attachProofToAgentResponse } from '../final-answer-proof.js';
25
26
  /** Empty JSON Schema object — used when a ProtectedTool has no inputSchema. */
26
27
  const EMPTY_INPUT_SCHEMA = Object.freeze({
27
28
  type: 'object',
@@ -88,4 +89,69 @@ export function anthropicToolAdapter(result) {
88
89
  }
89
90
  return out;
90
91
  }
92
+ export function defaultSerializeAnthropicToolResult(result) {
93
+ if (typeof result === 'string')
94
+ return result;
95
+ if (typeof result === 'number'
96
+ || typeof result === 'boolean'
97
+ || typeof result === 'bigint'
98
+ || result === null
99
+ || result === undefined) {
100
+ return String(result);
101
+ }
102
+ try {
103
+ return JSON.stringify(result);
104
+ }
105
+ catch {
106
+ return String(result);
107
+ }
108
+ }
109
+ /**
110
+ * Map a full GuardOutcome into an Anthropic tool_result block with proof embedded.
111
+ * Same arm mapping as bindOpenAIGuardOutcome; id field is tool_use_id.
112
+ */
113
+ export function bindAnthropicGuardOutcome(outcome, args) {
114
+ const tool_use_id = args.tool_use_id;
115
+ const serialize = args.serialize ?? defaultSerializeAnthropicToolResult;
116
+ let body;
117
+ if (outcome.executed === true) {
118
+ body = serialize(outcome.result);
119
+ }
120
+ else if (outcome.executionAttempted === false) {
121
+ const kind = verdictKind(outcome);
122
+ body =
123
+ `CodeRifts gate did not permit execution (verdict: ${kind}). `
124
+ + 'No tool result was produced.';
125
+ }
126
+ else {
127
+ const err = 'error' in outcome ? outcome.error : undefined;
128
+ const kind = verdictKind(outcome);
129
+ body =
130
+ `Tool execution failed after gate decision (verdict: ${kind}): ${formatGuardError(err)}`;
131
+ }
132
+ const content = attachProofToAgentResponse(body, outcome.proof);
133
+ const block = {
134
+ type: 'tool_result',
135
+ tool_use_id,
136
+ content,
137
+ };
138
+ return block;
139
+ }
140
+ function verdictKind(outcome) {
141
+ return outcome.verdict && typeof outcome.verdict === 'object' && 'kind' in outcome.verdict
142
+ ? String(outcome.verdict.kind)
143
+ : 'UNKNOWN';
144
+ }
145
+ function formatGuardError(err) {
146
+ if (err instanceof Error)
147
+ return err.message || err.name || 'Error';
148
+ if (typeof err === 'string')
149
+ return err;
150
+ try {
151
+ return JSON.stringify(err);
152
+ }
153
+ catch {
154
+ return String(err);
155
+ }
156
+ }
91
157
  //# sourceMappingURL=anthropic.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/adapters/anthropic.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA+CrD,+EAA+E;AAC/E,MAAM,kBAAkB,GAA4B,MAAM,CAAC,MAAM,CAAC;IAChE,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;CACf,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,UAAU,wBAAwB,CAAC,IAAmB;IAC1D,MAAM,YAAY,GAChB,IAAI,CAAC,WAAW,IAAI,IAAI;WACrB,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;WACpC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;QACjC,CAAC,CAAE,IAAI,CAAC,WAAuC;QAC/C,CAAC,CAAC,EAAE,GAAG,kBAAkB,EAAE,CAAC;IAEhC,MAAM,GAAG,GAAkB;QACzB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,YAAY;KACb,CAAC;IACF,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;QACxD,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,cAAwC;IACvE,OAAO,cAAc,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAAyB;IAC9D,MAAM,IAAI,GAAwB,aAAa,CAAC,KAAK,CAAC,CAAC;IACvD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC;AACpC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAA2B;IAC9D,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;IACrC,MAAM,KAAK,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAChD,MAAM,GAAG,GAAiC;QACxC,KAAK;QACL,eAAe;QACf,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;QACnD,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC;IACF,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACpC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"anthropic.js","sourceRoot":"","sources":["../../../src/adapters/anthropic.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@
29
29
  */
30
30
  import type { WithCodeRiftsInput, WithCodeRiftsResult, CompositionAssurance, ReceiptThreadHandle } from '../with-coderifts.js';
31
31
  import type { ProtectedTool, RegistryCoverageReport } from '../tool-registry.js';
32
+ import type { GuardOutcome } from '../types.js';
32
33
  /**
33
34
  * One Gemini function declaration (inside functionDeclarations[]).
34
35
  * @see https://ai.google.dev/gemini-api/docs/function-calling
@@ -111,4 +112,42 @@ export declare function withCodeRiftsGemini(input: WithCodeRiftsInput): WithCode
111
112
  * Does not re-run the guard; does not invent assurance.
112
113
  */
113
114
  export declare function geminiToolAdapter(result: WithCodeRiftsResult): WithCodeRiftsGeminiResult;
115
+ /**
116
+ * Minimal Gemini functionResponse part. No @google/generative-ai dependency.
117
+ * `response` is a structured object (not a text string).
118
+ * @see https://ai.google.dev/gemini-api/docs/function-calling
119
+ */
120
+ export type GeminiFunctionResponse = {
121
+ functionResponse: {
122
+ name: string;
123
+ response: Record<string, unknown>;
124
+ };
125
+ };
126
+ declare const __proofBoundGeminiBrand: unique symbol;
127
+ export type ProofBoundGeminiFunctionResponse = GeminiFunctionResponse & {
128
+ readonly __proofBound: typeof __proofBoundGeminiBrand;
129
+ };
130
+ export type BindGeminiGuardOutcomeArgs<T> = {
131
+ /** Gemini function name this functionResponse answers. */
132
+ name: string;
133
+ /**
134
+ * Optional result projector into the response.result field.
135
+ * Default keeps JSON-friendly values as-is (objects/arrays/primitives);
136
+ * non-JSON values fall back to String().
137
+ */
138
+ serialize?: (result: T) => unknown;
139
+ };
140
+ /**
141
+ * Default Gemini result payload value (structured, not forced through JSON.stringify).
142
+ */
143
+ export declare function defaultSerializeGeminiToolResult<T>(result: T): unknown;
144
+ /**
145
+ * Map a full GuardOutcome into a Gemini functionResponse part with proof embedded.
146
+ *
147
+ * GEMINI SPECIAL: response is an OBJECT (not a text field):
148
+ * - executed: { result, final_answer_proof, final_answer_proof_text } via attachProofToAgentResponse
149
+ * - blocked/error: { gate_message, final_answer_proof, … } — no fabricated `result` key
150
+ */
151
+ export declare function bindGeminiGuardOutcome<T>(outcome: GuardOutcome<T>, args: BindGeminiGuardOutcomeArgs<T>): ProofBoundGeminiFunctionResponse;
152
+ export {};
114
153
  //# sourceMappingURL=gemini.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/adapters/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,oBAAoB,EAAE,yBAAyB,EAAE,CAAC;CACnD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;OAGG;IACH,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;GAGG;AACH,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,aAAa,GAAG,yBAAyB,CAgBjG;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,UAAU,EAAE,CAKpF;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,yBAAyB,CAGxF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,yBAAyB,CAcxF"}
1
+ {"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../../src/adapters/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAuB,MAAM,aAAa,CAAC;AAGrE;;;GAGG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,oBAAoB,EAAE,yBAAyB,EAAE,CAAC;CACnD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;;OAGG;IACH,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;GAGG;AACH,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,aAAa,GAAG,yBAAyB,CAgBjG;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,UAAU,EAAE,CAKpF;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,GAAG,yBAAyB,CAGxF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,GAAG,yBAAyB,CAcxF;AAID;;;;GAIG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,EAAE;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACnC,CAAC;CACH,CAAC;AAEF,OAAO,CAAC,MAAM,uBAAuB,EAAE,OAAO,MAAM,CAAC;AACrD,MAAM,MAAM,gCAAgC,GAAG,sBAAsB,GAAG;IACtE,QAAQ,CAAC,YAAY,EAAE,OAAO,uBAAuB,CAAC;CACvD,CAAC;AAEF,MAAM,MAAM,0BAA0B,CAAC,CAAC,IAAI;IAC1C,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,OAAO,CAAC;CACpC,CAAC;AAEF;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAqBtE;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,0BAA0B,CAAC,CAAC,CAAC,GAClC,gCAAgC,CAoClC"}
@@ -28,6 +28,7 @@
28
28
  * Mirrors src/adapters/openai.ts — only the target tool shape differs.
29
29
  */
30
30
  import { withCodeRifts } from '../with-coderifts.js';
31
+ import { attachProofToAgentResponse } from '../final-answer-proof.js';
31
32
  /** Empty OpenAPI-like JSON Schema — used when a ProtectedTool has no inputSchema. */
32
33
  const EMPTY_PARAMETERS = Object.freeze({
33
34
  type: 'object',
@@ -101,4 +102,84 @@ export function geminiToolAdapter(result) {
101
102
  }
102
103
  return out;
103
104
  }
105
+ /**
106
+ * Default Gemini result payload value (structured, not forced through JSON.stringify).
107
+ */
108
+ export function defaultSerializeGeminiToolResult(result) {
109
+ if (result === null
110
+ || result === undefined
111
+ || typeof result === 'string'
112
+ || typeof result === 'number'
113
+ || typeof result === 'boolean') {
114
+ return result;
115
+ }
116
+ if (typeof result === 'bigint')
117
+ return String(result);
118
+ if (typeof result === 'object') {
119
+ try {
120
+ // Ensure JSON-serializable by round-trip when possible; on failure keep shallow.
121
+ JSON.stringify(result);
122
+ return result;
123
+ }
124
+ catch {
125
+ return String(result);
126
+ }
127
+ }
128
+ return String(result);
129
+ }
130
+ /**
131
+ * Map a full GuardOutcome into a Gemini functionResponse part with proof embedded.
132
+ *
133
+ * GEMINI SPECIAL: response is an OBJECT (not a text field):
134
+ * - executed: { result, final_answer_proof, final_answer_proof_text } via attachProofToAgentResponse
135
+ * - blocked/error: { gate_message, final_answer_proof, … } — no fabricated `result` key
136
+ */
137
+ export function bindGeminiGuardOutcome(outcome, args) {
138
+ const name = args.name;
139
+ const serialize = args.serialize ?? defaultSerializeGeminiToolResult;
140
+ let base;
141
+ if (outcome.executed === true) {
142
+ base = { result: serialize(outcome.result) };
143
+ }
144
+ else if (outcome.executionAttempted === false) {
145
+ const kind = verdictKind(outcome);
146
+ base = {
147
+ gate_message: `CodeRifts gate did not permit execution (verdict: ${kind}). `
148
+ + 'No tool result was produced.',
149
+ };
150
+ }
151
+ else {
152
+ const err = 'error' in outcome ? outcome.error : undefined;
153
+ const kind = verdictKind(outcome);
154
+ base = {
155
+ gate_message: `Tool execution failed after gate decision (verdict: ${kind}): ${formatGuardError(err)}`,
156
+ };
157
+ }
158
+ // Reuse attachProofToAgentResponse object path → adds final_answer_proof + final_answer_proof_text.
159
+ const bound = attachProofToAgentResponse(base, outcome.proof);
160
+ const part = {
161
+ functionResponse: {
162
+ name,
163
+ response: bound,
164
+ },
165
+ };
166
+ return part;
167
+ }
168
+ function verdictKind(outcome) {
169
+ return outcome.verdict && typeof outcome.verdict === 'object' && 'kind' in outcome.verdict
170
+ ? String(outcome.verdict.kind)
171
+ : 'UNKNOWN';
172
+ }
173
+ function formatGuardError(err) {
174
+ if (err instanceof Error)
175
+ return err.message || err.name || 'Error';
176
+ if (typeof err === 'string')
177
+ return err;
178
+ try {
179
+ return JSON.stringify(err);
180
+ }
181
+ catch {
182
+ return String(err);
183
+ }
184
+ }
104
185
  //# sourceMappingURL=gemini.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/adapters/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AA+DrD,qFAAqF;AACrF,MAAM,gBAAgB,GAA4B,MAAM,CAAC,MAAM,CAAC;IAC9D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,EAAE;CACf,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,UAAU,kCAAkC,CAAC,IAAmB;IACpE,MAAM,UAAU,GACd,IAAI,CAAC,WAAW,IAAI,IAAI;WACrB,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;WACpC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC;QACjC,CAAC,CAAE,IAAI,CAAC,WAAuC;QAC/C,CAAC,CAAC,EAAE,GAAG,gBAAgB,EAAE,CAAC;IAE9B,MAAM,GAAG,GAA8B;QACrC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU;KACX,CAAC;IACF,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,CAAC;QACxD,GAAG,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,cAAwC;IACpE,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3C,OAAO,CAAC;YACN,oBAAoB,EAAE,cAAc,CAAC,GAAG,CAAC,kCAAkC,CAAC;SAC7E,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAyB;IAC3D,MAAM,IAAI,GAAwB,aAAa,CAAC,KAAK,CAAC,CAAC;IACvD,OAAO,iBAAiB,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAA2B;IAC3D,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC;IACrC,MAAM,KAAK,GAAG,aAAa,CAAC,eAAe,CAAC,CAAC;IAC7C,MAAM,GAAG,GAA8B;QACrC,KAAK;QACL,eAAe;QACf,eAAe,EAAE,MAAM,CAAC,eAAe;QACvC,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;QACnD,cAAc,EAAE,MAAM,CAAC,cAAc;KACtC,CAAC;IACF,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACpC,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IACrC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/adapters/gemini.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,7 @@
34
34
  */
35
35
  import type { WithCodeRiftsInput, WithCodeRiftsResult, CompositionAssurance, ReceiptThreadHandle } from '../with-coderifts.js';
36
36
  import type { ProtectedTool, RegistryCoverageReport } from '../tool-registry.js';
37
+ import type { GuardOutcome } from '../types.js';
37
38
  /**
38
39
  * Framework-agnostic LangChain/LangGraph tool descriptor (no package import).
39
40
  *
@@ -114,4 +115,32 @@ export declare function withCodeRiftsLangGraph(input: WithCodeRiftsInput): WithC
114
115
  * Does not re-run the guard; does not invent assurance.
115
116
  */
116
117
  export declare function langGraphToolAdapter(result: WithCodeRiftsResult): WithCodeRiftsLangGraphResult;
118
+ /**
119
+ * Minimal LangChain ToolMessage-shaped plain object (no @langchain/* dependency).
120
+ * Host may wrap into ToolMessage: new ToolMessage({ content, tool_call_id, name? }).
121
+ * @see https://js.langchain.com/docs/concepts/messages
122
+ */
123
+ export type LangGraphToolMessage = {
124
+ content: string;
125
+ tool_call_id: string;
126
+ name?: string;
127
+ };
128
+ declare const __proofBoundLangGraphBrand: unique symbol;
129
+ export type ProofBoundLangGraphToolMessage = LangGraphToolMessage & {
130
+ readonly __proofBound: typeof __proofBoundLangGraphBrand;
131
+ };
132
+ export type BindLangGraphGuardOutcomeArgs<T> = {
133
+ /** LangChain/LangGraph tool_call_id this ToolMessage answers. */
134
+ tool_call_id: string;
135
+ /** Optional tool name (ToolMessage.name). */
136
+ name?: string;
137
+ serialize?: (result: T) => string;
138
+ };
139
+ export declare function defaultSerializeLangGraphToolResult<T>(result: T): string;
140
+ /**
141
+ * Map a full GuardOutcome into a LangGraph/LangChain ToolMessage shape with proof embedded.
142
+ * Same arm mapping as bindOpenAIGuardOutcome; id field is tool_call_id.
143
+ */
144
+ export declare function bindLangGraphGuardOutcome<T>(outcome: GuardOutcome<T>, args: BindLangGraphGuardOutcomeArgs<T>): ProofBoundLangGraphToolMessage;
145
+ export {};
117
146
  //# sourceMappingURL=langgraph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"langgraph.d.ts","sourceRoot":"","sources":["../../../src/adapters/langgraph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAEjF;;;;;;;;GAQG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;OAGG;IACH,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C;;;OAGG;IACH,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,iFAAiF;IACjF,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,uBAAuB,CAqBrF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,uBAAuB,EAAE,CAEpG;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,4BAA4B,CAG9F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,4BAA4B,CAc9F"}
1
+ {"version":3,"file":"langgraph.d.ts","sourceRoot":"","sources":["../../../src/adapters/langgraph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAGH,OAAO,KAAK,EACV,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,mBAAmB,EACpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAGhD;;;;;;;;GAQG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC;;;OAGG;IACH,IAAI,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C;;;OAGG;IACH,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC7C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACzC,iFAAiF;IACjF,KAAK,EAAE,uBAAuB,EAAE,CAAC;IACjC;;;OAGG;IACH,eAAe,EAAE,aAAa,EAAE,CAAC;IACjC,wDAAwD;IACxD,eAAe,EAAE,sBAAsB,CAAC;IACxC;;;;OAIG;IACH,qBAAqB,EAAE,oBAAoB,CAAC;IAC5C,yEAAyE;IACzE,cAAc,EAAE,mBAAmB,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAQF;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,aAAa,GAAG,uBAAuB,CAqBrF;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,cAAc,EAAE,SAAS,aAAa,EAAE,GAAG,uBAAuB,EAAE,CAEpG;AAED;;;;;;;;;GASG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,GAAG,4BAA4B,CAG9F;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,mBAAmB,GAAG,4BAA4B,CAc9F;AAID;;;;GAIG;AACH,MAAM,MAAM,oBAAoB,GAAG;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,OAAO,CAAC,MAAM,0BAA0B,EAAE,OAAO,MAAM,CAAC;AACxD,MAAM,MAAM,8BAA8B,GAAG,oBAAoB,GAAG;IAClE,QAAQ,CAAC,YAAY,EAAE,OAAO,0BAA0B,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,6BAA6B,CAAC,CAAC,IAAI;IAC7C,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,MAAM,CAAC;CACnC,CAAC;AAEF,wBAAgB,mCAAmC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAgBxE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EACzC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC,EACxB,IAAI,EAAE,6BAA6B,CAAC,CAAC,CAAC,GACrC,8BAA8B,CA4BhC"}