@dcyfr/ai 1.0.3 → 2.1.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 (455) hide show
  1. package/CHANGELOG.md +106 -0
  2. package/LICENSE +27 -1
  3. package/README.md +720 -9
  4. package/dist/ai/agents/agent-loader.d.ts +12 -0
  5. package/dist/ai/agents/agent-loader.d.ts.map +1 -1
  6. package/dist/ai/agents/agent-loader.js +74 -65
  7. package/dist/ai/agents/agent-loader.js.map +1 -1
  8. package/dist/ai/agents/agent-registry.d.ts +2 -0
  9. package/dist/ai/agents/agent-registry.d.ts.map +1 -1
  10. package/dist/ai/agents/agent-registry.js +15 -14
  11. package/dist/ai/agents/agent-registry.js.map +1 -1
  12. package/dist/ai/agents/agent-router.d.ts +20 -5
  13. package/dist/ai/agents/agent-router.d.ts.map +1 -1
  14. package/dist/ai/agents/agent-router.js +89 -43
  15. package/dist/ai/agents/agent-router.js.map +1 -1
  16. package/dist/ai/agents/index.d.ts +6 -1
  17. package/dist/ai/agents/index.d.ts.map +1 -1
  18. package/dist/ai/agents/index.js +9 -3
  19. package/dist/ai/agents/index.js.map +1 -1
  20. package/dist/ai/agents/instruction-template.d.ts +45 -0
  21. package/dist/ai/agents/instruction-template.d.ts.map +1 -0
  22. package/dist/ai/agents/instruction-template.js +197 -0
  23. package/dist/ai/agents/instruction-template.js.map +1 -0
  24. package/dist/ai/agents/persona-resolver.d.ts +90 -0
  25. package/dist/ai/agents/persona-resolver.d.ts.map +1 -0
  26. package/dist/ai/agents/persona-resolver.js +121 -0
  27. package/dist/ai/agents/persona-resolver.js.map +1 -0
  28. package/dist/ai/agents/schema.d.ts +166 -0
  29. package/dist/ai/agents/schema.d.ts.map +1 -0
  30. package/dist/ai/agents/schema.js +94 -0
  31. package/dist/ai/agents/schema.js.map +1 -0
  32. package/dist/ai/agents/types.d.ts +102 -0
  33. package/dist/ai/agents/types.d.ts.map +1 -1
  34. package/dist/ai/agents-builtin/architecture/index.js +3 -3
  35. package/dist/ai/agents-builtin/content/index.js +1 -1
  36. package/dist/ai/agents-builtin/data/index.js +1 -1
  37. package/dist/ai/agents-builtin/development/index.js +4 -4
  38. package/dist/ai/agents-builtin/devops/index.js +1 -1
  39. package/dist/ai/agents-builtin/index.js +33 -33
  40. package/dist/ai/agents-builtin/performance/index.js +1 -1
  41. package/dist/ai/agents-builtin/research/index.js +1 -1
  42. package/dist/ai/agents-builtin/security/index.js +1 -1
  43. package/dist/ai/agents-builtin/testing/index.js +2 -2
  44. package/dist/ai/config/loader.d.ts.map +1 -1
  45. package/dist/ai/config/loader.js +6 -3
  46. package/dist/ai/config/loader.js.map +1 -1
  47. package/dist/ai/config/schema.d.ts +242 -1156
  48. package/dist/ai/config/schema.d.ts.map +1 -1
  49. package/dist/ai/config/schema.js +69 -20
  50. package/dist/ai/config/schema.js.map +1 -1
  51. package/dist/ai/core/provider-registry.d.ts +32 -0
  52. package/dist/ai/core/provider-registry.d.ts.map +1 -1
  53. package/dist/ai/core/provider-registry.js +189 -14
  54. package/dist/ai/core/provider-registry.js.map +1 -1
  55. package/dist/ai/core/telemetry-engine.d.ts +26 -0
  56. package/dist/ai/core/telemetry-engine.d.ts.map +1 -1
  57. package/dist/ai/core/telemetry-engine.js +81 -1
  58. package/dist/ai/core/telemetry-engine.js.map +1 -1
  59. package/dist/ai/delegation/agent-registry.d.ts +143 -0
  60. package/dist/ai/delegation/agent-registry.d.ts.map +1 -0
  61. package/dist/ai/delegation/agent-registry.js +231 -0
  62. package/dist/ai/delegation/agent-registry.js.map +1 -0
  63. package/dist/ai/delegation/blast-radius-tracker.d.ts +65 -0
  64. package/dist/ai/delegation/blast-radius-tracker.d.ts.map +1 -0
  65. package/dist/ai/delegation/blast-radius-tracker.js +81 -0
  66. package/dist/ai/delegation/blast-radius-tracker.js.map +1 -0
  67. package/dist/ai/delegation/capability-bootstrap.d.ts +40 -0
  68. package/dist/ai/delegation/capability-bootstrap.d.ts.map +1 -0
  69. package/dist/ai/delegation/capability-bootstrap.js +431 -0
  70. package/dist/ai/delegation/capability-bootstrap.js.map +1 -0
  71. package/dist/ai/delegation/capability-registry.d.ts +81 -0
  72. package/dist/ai/delegation/capability-registry.d.ts.map +1 -0
  73. package/dist/ai/delegation/capability-registry.js +339 -0
  74. package/dist/ai/delegation/capability-registry.js.map +1 -0
  75. package/dist/ai/delegation/chain-tracker.d.ts +152 -0
  76. package/dist/ai/delegation/chain-tracker.d.ts.map +1 -0
  77. package/dist/ai/delegation/chain-tracker.js +336 -0
  78. package/dist/ai/delegation/chain-tracker.js.map +1 -0
  79. package/dist/ai/delegation/circuit-breaker.d.ts +59 -0
  80. package/dist/ai/delegation/circuit-breaker.d.ts.map +1 -0
  81. package/dist/ai/delegation/circuit-breaker.js +153 -0
  82. package/dist/ai/delegation/circuit-breaker.js.map +1 -0
  83. package/dist/ai/delegation/contract-manager.d.ts +415 -0
  84. package/dist/ai/delegation/contract-manager.d.ts.map +1 -0
  85. package/dist/ai/delegation/contract-manager.js +1258 -0
  86. package/dist/ai/delegation/contract-manager.js.map +1 -0
  87. package/dist/ai/delegation/delegation-manager.d.ts +505 -0
  88. package/dist/ai/delegation/delegation-manager.d.ts.map +1 -0
  89. package/dist/ai/delegation/delegation-manager.js +773 -0
  90. package/dist/ai/delegation/delegation-manager.js.map +1 -0
  91. package/dist/ai/delegation/event-schemas.d.ts +101 -0
  92. package/dist/ai/delegation/event-schemas.d.ts.map +1 -0
  93. package/dist/ai/delegation/event-schemas.js +59 -0
  94. package/dist/ai/delegation/event-schemas.js.map +1 -0
  95. package/dist/ai/delegation/execution-mode-dashboard.d.ts +109 -0
  96. package/dist/ai/delegation/execution-mode-dashboard.d.ts.map +1 -0
  97. package/dist/ai/delegation/execution-mode-dashboard.js +167 -0
  98. package/dist/ai/delegation/execution-mode-dashboard.js.map +1 -0
  99. package/dist/ai/delegation/feature-flags.d.ts +191 -0
  100. package/dist/ai/delegation/feature-flags.d.ts.map +1 -0
  101. package/dist/ai/delegation/feature-flags.js +332 -0
  102. package/dist/ai/delegation/feature-flags.js.map +1 -0
  103. package/dist/ai/delegation/index.d.ts +51 -0
  104. package/dist/ai/delegation/index.d.ts.map +1 -0
  105. package/dist/ai/delegation/index.js +39 -0
  106. package/dist/ai/delegation/index.js.map +1 -0
  107. package/dist/ai/delegation/middleware/chain-depth-middleware.d.ts +39 -0
  108. package/dist/ai/delegation/middleware/chain-depth-middleware.d.ts.map +1 -0
  109. package/dist/ai/delegation/middleware/chain-depth-middleware.js +77 -0
  110. package/dist/ai/delegation/middleware/chain-depth-middleware.js.map +1 -0
  111. package/dist/ai/delegation/middleware/chain-tracker-middleware.d.ts +46 -0
  112. package/dist/ai/delegation/middleware/chain-tracker-middleware.d.ts.map +1 -0
  113. package/dist/ai/delegation/middleware/chain-tracker-middleware.js +89 -0
  114. package/dist/ai/delegation/middleware/chain-tracker-middleware.js.map +1 -0
  115. package/dist/ai/delegation/middleware/content-policy-middleware.d.ts +31 -0
  116. package/dist/ai/delegation/middleware/content-policy-middleware.d.ts.map +1 -0
  117. package/dist/ai/delegation/middleware/content-policy-middleware.js +82 -0
  118. package/dist/ai/delegation/middleware/content-policy-middleware.js.map +1 -0
  119. package/dist/ai/delegation/middleware/feature-flag-middleware.d.ts +46 -0
  120. package/dist/ai/delegation/middleware/feature-flag-middleware.d.ts.map +1 -0
  121. package/dist/ai/delegation/middleware/feature-flag-middleware.js +59 -0
  122. package/dist/ai/delegation/middleware/feature-flag-middleware.js.map +1 -0
  123. package/dist/ai/delegation/middleware/identity-middleware.d.ts +23 -0
  124. package/dist/ai/delegation/middleware/identity-middleware.d.ts.map +1 -0
  125. package/dist/ai/delegation/middleware/identity-middleware.js +64 -0
  126. package/dist/ai/delegation/middleware/identity-middleware.js.map +1 -0
  127. package/dist/ai/delegation/middleware/permissions-middleware.d.ts +48 -0
  128. package/dist/ai/delegation/middleware/permissions-middleware.d.ts.map +1 -0
  129. package/dist/ai/delegation/middleware/permissions-middleware.js +107 -0
  130. package/dist/ai/delegation/middleware/permissions-middleware.js.map +1 -0
  131. package/dist/ai/delegation/middleware/rate-limiter-middleware.d.ts +38 -0
  132. package/dist/ai/delegation/middleware/rate-limiter-middleware.d.ts.map +1 -0
  133. package/dist/ai/delegation/middleware/rate-limiter-middleware.js +65 -0
  134. package/dist/ai/delegation/middleware/rate-limiter-middleware.js.map +1 -0
  135. package/dist/ai/delegation/middleware/reputation-middleware.d.ts +39 -0
  136. package/dist/ai/delegation/middleware/reputation-middleware.d.ts.map +1 -0
  137. package/dist/ai/delegation/middleware/reputation-middleware.js +75 -0
  138. package/dist/ai/delegation/middleware/reputation-middleware.js.map +1 -0
  139. package/dist/ai/delegation/middleware/resource-limiter-middleware.d.ts +52 -0
  140. package/dist/ai/delegation/middleware/resource-limiter-middleware.d.ts.map +1 -0
  141. package/dist/ai/delegation/middleware/resource-limiter-middleware.js +112 -0
  142. package/dist/ai/delegation/middleware/resource-limiter-middleware.js.map +1 -0
  143. package/dist/ai/delegation/middleware/threat-validator-middleware.d.ts +23 -0
  144. package/dist/ai/delegation/middleware/threat-validator-middleware.d.ts.map +1 -0
  145. package/dist/ai/delegation/middleware/threat-validator-middleware.js +83 -0
  146. package/dist/ai/delegation/middleware/threat-validator-middleware.js.map +1 -0
  147. package/dist/ai/delegation/middleware/tlp-middleware.d.ts +23 -0
  148. package/dist/ai/delegation/middleware/tlp-middleware.d.ts.map +1 -0
  149. package/dist/ai/delegation/middleware/tlp-middleware.js +59 -0
  150. package/dist/ai/delegation/middleware/tlp-middleware.js.map +1 -0
  151. package/dist/ai/delegation/monitoring.d.ts +298 -0
  152. package/dist/ai/delegation/monitoring.d.ts.map +1 -0
  153. package/dist/ai/delegation/monitoring.js +584 -0
  154. package/dist/ai/delegation/monitoring.js.map +1 -0
  155. package/dist/ai/delegation/security-middleware-chain.d.ts +71 -0
  156. package/dist/ai/delegation/security-middleware-chain.d.ts.map +1 -0
  157. package/dist/ai/delegation/security-middleware-chain.js +163 -0
  158. package/dist/ai/delegation/security-middleware-chain.js.map +1 -0
  159. package/dist/ai/delegation/session-checkpoint.d.ts +77 -0
  160. package/dist/ai/delegation/session-checkpoint.d.ts.map +1 -0
  161. package/dist/ai/delegation/session-checkpoint.js +131 -0
  162. package/dist/ai/delegation/session-checkpoint.js.map +1 -0
  163. package/dist/ai/delegation/session-manager.d.ts +131 -0
  164. package/dist/ai/delegation/session-manager.d.ts.map +1 -0
  165. package/dist/ai/delegation/session-manager.js +243 -0
  166. package/dist/ai/delegation/session-manager.js.map +1 -0
  167. package/dist/ai/delegation/session-queue.d.ts +95 -0
  168. package/dist/ai/delegation/session-queue.d.ts.map +1 -0
  169. package/dist/ai/delegation/session-queue.js +136 -0
  170. package/dist/ai/delegation/session-queue.js.map +1 -0
  171. package/dist/ai/delegation/timeout-watchdog.d.ts +60 -0
  172. package/dist/ai/delegation/timeout-watchdog.d.ts.map +1 -0
  173. package/dist/ai/delegation/timeout-watchdog.js +100 -0
  174. package/dist/ai/delegation/timeout-watchdog.js.map +1 -0
  175. package/dist/ai/examples/integration-demo.d.ts +27 -0
  176. package/dist/ai/examples/integration-demo.d.ts.map +1 -0
  177. package/dist/ai/examples/integration-demo.js +536 -0
  178. package/dist/ai/examples/integration-demo.js.map +1 -0
  179. package/dist/ai/index.d.ts +27 -0
  180. package/dist/ai/index.d.ts.map +1 -1
  181. package/dist/ai/index.js +32 -10
  182. package/dist/ai/index.js.map +1 -1
  183. package/dist/ai/mcp/index.d.ts +14 -2
  184. package/dist/ai/mcp/index.d.ts.map +1 -1
  185. package/dist/ai/mcp/index.js +11 -1
  186. package/dist/ai/mcp/index.js.map +1 -1
  187. package/dist/ai/mcp/servers/analytics/index.d.ts +19 -0
  188. package/dist/ai/mcp/servers/analytics/index.d.ts.map +1 -0
  189. package/dist/ai/mcp/servers/analytics/index.js +612 -0
  190. package/dist/ai/mcp/servers/analytics/index.js.map +1 -0
  191. package/dist/ai/mcp/servers/content-manager/content-provider.d.ts +61 -0
  192. package/dist/ai/mcp/servers/content-manager/content-provider.d.ts.map +1 -0
  193. package/dist/ai/mcp/servers/content-manager/content-provider.js +8 -0
  194. package/dist/ai/mcp/servers/content-manager/content-provider.js.map +1 -0
  195. package/dist/ai/mcp/servers/content-manager/index.d.ts +19 -0
  196. package/dist/ai/mcp/servers/content-manager/index.d.ts.map +1 -0
  197. package/dist/ai/mcp/servers/content-manager/index.js +282 -0
  198. package/dist/ai/mcp/servers/content-manager/index.js.map +1 -0
  199. package/dist/ai/mcp/servers/delegation-monitor/index.d.ts +36 -0
  200. package/dist/ai/mcp/servers/delegation-monitor/index.d.ts.map +1 -0
  201. package/dist/ai/mcp/servers/delegation-monitor/index.js +757 -0
  202. package/dist/ai/mcp/servers/delegation-monitor/index.js.map +1 -0
  203. package/dist/ai/mcp/servers/design-tokens/index.d.ts +19 -0
  204. package/dist/ai/mcp/servers/design-tokens/index.d.ts.map +1 -0
  205. package/dist/ai/mcp/servers/design-tokens/index.js +445 -0
  206. package/dist/ai/mcp/servers/design-tokens/index.js.map +1 -0
  207. package/dist/ai/mcp/servers/design-tokens/token-provider.d.ts +59 -0
  208. package/dist/ai/mcp/servers/design-tokens/token-provider.d.ts.map +1 -0
  209. package/dist/ai/mcp/servers/design-tokens/token-provider.js +8 -0
  210. package/dist/ai/mcp/servers/design-tokens/token-provider.js.map +1 -0
  211. package/dist/ai/mcp/servers/promptintel/index.d.ts +19 -0
  212. package/dist/ai/mcp/servers/promptintel/index.d.ts.map +1 -0
  213. package/dist/ai/mcp/servers/promptintel/index.js +335 -0
  214. package/dist/ai/mcp/servers/promptintel/index.js.map +1 -0
  215. package/dist/ai/mcp/servers/shared/cache.d.ts +62 -0
  216. package/dist/ai/mcp/servers/shared/cache.d.ts.map +1 -0
  217. package/dist/ai/mcp/servers/shared/cache.js +117 -0
  218. package/dist/ai/mcp/servers/shared/cache.js.map +1 -0
  219. package/dist/ai/mcp/servers/shared/promptintel-client.d.ts +53 -0
  220. package/dist/ai/mcp/servers/shared/promptintel-client.d.ts.map +1 -0
  221. package/dist/ai/mcp/servers/shared/promptintel-client.js +185 -0
  222. package/dist/ai/mcp/servers/shared/promptintel-client.js.map +1 -0
  223. package/dist/ai/mcp/servers/shared/promptintel-types.d.ts +85 -0
  224. package/dist/ai/mcp/servers/shared/promptintel-types.d.ts.map +1 -0
  225. package/dist/ai/mcp/servers/shared/promptintel-types.js +7 -0
  226. package/dist/ai/mcp/servers/shared/promptintel-types.js.map +1 -0
  227. package/dist/ai/mcp/servers/shared/rate-limiter.d.ts +54 -0
  228. package/dist/ai/mcp/servers/shared/rate-limiter.d.ts.map +1 -0
  229. package/dist/ai/mcp/servers/shared/rate-limiter.js +124 -0
  230. package/dist/ai/mcp/servers/shared/rate-limiter.js.map +1 -0
  231. package/dist/ai/mcp/servers/shared/redis-client.d.ts +54 -0
  232. package/dist/ai/mcp/servers/shared/redis-client.d.ts.map +1 -0
  233. package/dist/ai/mcp/servers/shared/redis-client.js +232 -0
  234. package/dist/ai/mcp/servers/shared/redis-client.js.map +1 -0
  235. package/dist/ai/mcp/servers/shared/types.d.ts +301 -0
  236. package/dist/ai/mcp/servers/shared/types.d.ts.map +1 -0
  237. package/dist/ai/mcp/servers/shared/types.js +6 -0
  238. package/dist/ai/mcp/servers/shared/types.js.map +1 -0
  239. package/dist/ai/mcp/servers/shared/utils.d.ts +49 -0
  240. package/dist/ai/mcp/servers/shared/utils.d.ts.map +1 -0
  241. package/dist/ai/mcp/servers/shared/utils.js +233 -0
  242. package/dist/ai/mcp/servers/shared/utils.js.map +1 -0
  243. package/dist/ai/memory/config.d.ts +102 -0
  244. package/dist/ai/memory/config.d.ts.map +1 -0
  245. package/dist/ai/memory/config.js +200 -0
  246. package/dist/ai/memory/config.js.map +1 -0
  247. package/dist/ai/memory/dcyfr-memory.d.ts +67 -0
  248. package/dist/ai/memory/dcyfr-memory.d.ts.map +1 -0
  249. package/dist/ai/memory/dcyfr-memory.js +308 -0
  250. package/dist/ai/memory/dcyfr-memory.js.map +1 -0
  251. package/dist/ai/memory/index.d.ts +15 -0
  252. package/dist/ai/memory/index.d.ts.map +1 -0
  253. package/dist/ai/memory/index.js +15 -0
  254. package/dist/ai/memory/index.js.map +1 -0
  255. package/dist/ai/memory/mem0-client.d.ts +108 -0
  256. package/dist/ai/memory/mem0-client.d.ts.map +1 -0
  257. package/dist/ai/memory/mem0-client.js +205 -0
  258. package/dist/ai/memory/mem0-client.js.map +1 -0
  259. package/dist/ai/memory/types.d.ts +175 -0
  260. package/dist/ai/memory/types.d.ts.map +1 -0
  261. package/dist/ai/memory/types.js +10 -0
  262. package/dist/ai/memory/types.js.map +1 -0
  263. package/dist/ai/permissions/attenuation-engine.d.ts +159 -0
  264. package/dist/ai/permissions/attenuation-engine.d.ts.map +1 -0
  265. package/dist/ai/permissions/attenuation-engine.js +511 -0
  266. package/dist/ai/permissions/attenuation-engine.js.map +1 -0
  267. package/dist/ai/plugins/plugin-loader.d.ts +4 -0
  268. package/dist/ai/plugins/plugin-loader.d.ts.map +1 -1
  269. package/dist/ai/plugins/plugin-loader.js +28 -28
  270. package/dist/ai/plugins/plugin-loader.js.map +1 -1
  271. package/dist/ai/reputation/execution-mode-reputation.d.ts +104 -0
  272. package/dist/ai/reputation/execution-mode-reputation.d.ts.map +1 -0
  273. package/dist/ai/reputation/execution-mode-reputation.js +142 -0
  274. package/dist/ai/reputation/execution-mode-reputation.js.map +1 -0
  275. package/dist/ai/reputation/reputation-engine.d.ts +204 -0
  276. package/dist/ai/reputation/reputation-engine.d.ts.map +1 -0
  277. package/dist/ai/reputation/reputation-engine.js +426 -0
  278. package/dist/ai/reputation/reputation-engine.js.map +1 -0
  279. package/dist/ai/runtime/agent-runtime.d.ts +193 -0
  280. package/dist/ai/runtime/agent-runtime.d.ts.map +1 -0
  281. package/dist/ai/runtime/agent-runtime.js +1009 -0
  282. package/dist/ai/runtime/agent-runtime.js.map +1 -0
  283. package/dist/ai/runtime/index.d.ts +11 -0
  284. package/dist/ai/runtime/index.d.ts.map +1 -0
  285. package/dist/ai/runtime/index.js +9 -0
  286. package/dist/ai/runtime/index.js.map +1 -0
  287. package/dist/ai/runtime/telemetry-schema.d.ts +192 -0
  288. package/dist/ai/runtime/telemetry-schema.d.ts.map +1 -0
  289. package/dist/ai/runtime/telemetry-schema.js +200 -0
  290. package/dist/ai/runtime/telemetry-schema.js.map +1 -0
  291. package/dist/ai/runtime/types.d.ts +236 -0
  292. package/dist/ai/runtime/types.d.ts.map +1 -0
  293. package/dist/ai/runtime/types.js +10 -0
  294. package/dist/ai/runtime/types.js.map +1 -0
  295. package/dist/ai/src/batch-processor.d.ts +298 -0
  296. package/dist/ai/src/batch-processor.d.ts.map +1 -0
  297. package/dist/ai/src/batch-processor.js +520 -0
  298. package/dist/ai/src/batch-processor.js.map +1 -0
  299. package/dist/ai/src/capability-bootstrap.d.ts +222 -0
  300. package/dist/ai/src/capability-bootstrap.d.ts.map +1 -0
  301. package/dist/ai/src/capability-bootstrap.js +421 -0
  302. package/dist/ai/src/capability-bootstrap.js.map +1 -0
  303. package/dist/ai/src/capability-manifest-generator.d.ts +52 -0
  304. package/dist/ai/src/capability-manifest-generator.d.ts.map +1 -0
  305. package/dist/ai/src/capability-manifest-generator.js +691 -0
  306. package/dist/ai/src/capability-manifest-generator.js.map +1 -0
  307. package/dist/ai/src/capability-registry.d.ts +157 -0
  308. package/dist/ai/src/capability-registry.d.ts.map +1 -0
  309. package/dist/ai/src/capability-registry.js +577 -0
  310. package/dist/ai/src/capability-registry.js.map +1 -0
  311. package/dist/ai/src/cli/telemetry-dashboard.d.ts +132 -0
  312. package/dist/ai/src/cli/telemetry-dashboard.d.ts.map +1 -0
  313. package/dist/ai/src/cli/telemetry-dashboard.js +565 -0
  314. package/dist/ai/src/cli/telemetry-dashboard.js.map +1 -0
  315. package/dist/ai/src/delegation/feature-flags.d.ts +213 -0
  316. package/dist/ai/src/delegation/feature-flags.d.ts.map +1 -0
  317. package/dist/ai/src/delegation/feature-flags.js +395 -0
  318. package/dist/ai/src/delegation/feature-flags.js.map +1 -0
  319. package/dist/ai/src/delegation/liability-firebreak.d.ts +303 -0
  320. package/dist/ai/src/delegation/liability-firebreak.d.ts.map +1 -0
  321. package/dist/ai/src/delegation/liability-firebreak.js +643 -0
  322. package/dist/ai/src/delegation/liability-firebreak.js.map +1 -0
  323. package/dist/ai/src/delegation/security-threat-model.d.ts +171 -0
  324. package/dist/ai/src/delegation/security-threat-model.d.ts.map +1 -0
  325. package/dist/ai/src/delegation/security-threat-model.js +723 -0
  326. package/dist/ai/src/delegation/security-threat-model.js.map +1 -0
  327. package/dist/ai/src/delegation/tlp-enforcement.d.ts +146 -0
  328. package/dist/ai/src/delegation/tlp-enforcement.d.ts.map +1 -0
  329. package/dist/ai/src/delegation/tlp-enforcement.js +382 -0
  330. package/dist/ai/src/delegation/tlp-enforcement.js.map +1 -0
  331. package/dist/ai/src/delegation-capability-integration.d.ts +154 -0
  332. package/dist/ai/src/delegation-capability-integration.d.ts.map +1 -0
  333. package/dist/ai/src/delegation-capability-integration.js +351 -0
  334. package/dist/ai/src/delegation-capability-integration.js.map +1 -0
  335. package/dist/ai/src/end-to-end-workflow-orchestrator.d.ts +325 -0
  336. package/dist/ai/src/end-to-end-workflow-orchestrator.d.ts.map +1 -0
  337. package/dist/ai/src/end-to-end-workflow-orchestrator.js +801 -0
  338. package/dist/ai/src/end-to-end-workflow-orchestrator.js.map +1 -0
  339. package/dist/ai/src/enhanced-capability-detection.d.ts +237 -0
  340. package/dist/ai/src/enhanced-capability-detection.d.ts.map +1 -0
  341. package/dist/ai/src/enhanced-capability-detection.js +448 -0
  342. package/dist/ai/src/enhanced-capability-detection.js.map +1 -0
  343. package/dist/ai/src/intelligent-cache-manager.d.ts +327 -0
  344. package/dist/ai/src/intelligent-cache-manager.d.ts.map +1 -0
  345. package/dist/ai/src/intelligent-cache-manager.js +634 -0
  346. package/dist/ai/src/intelligent-cache-manager.js.map +1 -0
  347. package/dist/ai/src/mcp-auto-configuration.d.ts +232 -0
  348. package/dist/ai/src/mcp-auto-configuration.d.ts.map +1 -0
  349. package/dist/ai/src/mcp-auto-configuration.js +445 -0
  350. package/dist/ai/src/mcp-auto-configuration.js.map +1 -0
  351. package/dist/ai/src/performance-profiler.d.ts +351 -0
  352. package/dist/ai/src/performance-profiler.d.ts.map +1 -0
  353. package/dist/ai/src/performance-profiler.js +475 -0
  354. package/dist/ai/src/performance-profiler.js.map +1 -0
  355. package/dist/ai/src/personas/hooks/before-llm-call.d.ts +96 -0
  356. package/dist/ai/src/personas/hooks/before-llm-call.d.ts.map +1 -0
  357. package/dist/ai/src/personas/hooks/before-llm-call.js +83 -0
  358. package/dist/ai/src/personas/hooks/before-llm-call.js.map +1 -0
  359. package/dist/ai/src/personas/index.d.ts +10 -0
  360. package/dist/ai/src/personas/index.d.ts.map +1 -0
  361. package/dist/ai/src/personas/index.js +10 -0
  362. package/dist/ai/src/personas/index.js.map +1 -0
  363. package/dist/ai/src/personas/persona-loader.d.ts +42 -0
  364. package/dist/ai/src/personas/persona-loader.d.ts.map +1 -0
  365. package/dist/ai/src/personas/persona-loader.js +162 -0
  366. package/dist/ai/src/personas/persona-loader.js.map +1 -0
  367. package/dist/ai/src/personas/types.d.ts +199 -0
  368. package/dist/ai/src/personas/types.d.ts.map +1 -0
  369. package/dist/ai/src/personas/types.js +7 -0
  370. package/dist/ai/src/personas/types.js.map +1 -0
  371. package/dist/ai/src/personas/voice-resolver.d.ts +40 -0
  372. package/dist/ai/src/personas/voice-resolver.d.ts.map +1 -0
  373. package/dist/ai/src/personas/voice-resolver.js +201 -0
  374. package/dist/ai/src/personas/voice-resolver.js.map +1 -0
  375. package/dist/ai/src/resource-monitor.d.ts +311 -0
  376. package/dist/ai/src/resource-monitor.d.ts.map +1 -0
  377. package/dist/ai/src/resource-monitor.js +475 -0
  378. package/dist/ai/src/resource-monitor.js.map +1 -0
  379. package/dist/ai/src/runtime/agent-runtime.d.ts +340 -0
  380. package/dist/ai/src/runtime/agent-runtime.d.ts.map +1 -0
  381. package/dist/ai/src/runtime/agent-runtime.js +1084 -0
  382. package/dist/ai/src/runtime/agent-runtime.js.map +1 -0
  383. package/dist/ai/src/telemetry/delegation-telemetry.d.ts +287 -0
  384. package/dist/ai/src/telemetry/delegation-telemetry.d.ts.map +1 -0
  385. package/dist/ai/src/telemetry/delegation-telemetry.js +389 -0
  386. package/dist/ai/src/telemetry/delegation-telemetry.js.map +1 -0
  387. package/dist/ai/src/telemetry/index.d.ts +48 -0
  388. package/dist/ai/src/telemetry/index.d.ts.map +1 -0
  389. package/dist/ai/src/telemetry/index.js +48 -0
  390. package/dist/ai/src/telemetry/index.js.map +1 -0
  391. package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts +67 -0
  392. package/dist/ai/src/telemetry/runtime-telemetry-integration.d.ts.map +1 -0
  393. package/dist/ai/src/telemetry/runtime-telemetry-integration.js +415 -0
  394. package/dist/ai/src/telemetry/runtime-telemetry-integration.js.map +1 -0
  395. package/dist/ai/src/telemetry/telemetry-utils.d.ts +119 -0
  396. package/dist/ai/src/telemetry/telemetry-utils.d.ts.map +1 -0
  397. package/dist/ai/src/telemetry/telemetry-utils.js +250 -0
  398. package/dist/ai/src/telemetry/telemetry-utils.js.map +1 -0
  399. package/dist/ai/src/types/agent-capabilities.d.ts +227 -0
  400. package/dist/ai/src/types/agent-capabilities.d.ts.map +1 -0
  401. package/dist/ai/src/types/agent-capabilities.js +11 -0
  402. package/dist/ai/src/types/agent-capabilities.js.map +1 -0
  403. package/dist/ai/src/types/context-verification.d.ts +158 -0
  404. package/dist/ai/src/types/context-verification.d.ts.map +1 -0
  405. package/dist/ai/src/types/context-verification.js +73 -0
  406. package/dist/ai/src/types/context-verification.js.map +1 -0
  407. package/dist/ai/src/types/delegation-contracts.d.ts +296 -0
  408. package/dist/ai/src/types/delegation-contracts.d.ts.map +1 -0
  409. package/dist/ai/src/types/delegation-contracts.js +17 -0
  410. package/dist/ai/src/types/delegation-contracts.js.map +1 -0
  411. package/dist/ai/src/validation-pipeline-integration.d.ts +266 -0
  412. package/dist/ai/src/validation-pipeline-integration.d.ts.map +1 -0
  413. package/dist/ai/src/validation-pipeline-integration.js +695 -0
  414. package/dist/ai/src/validation-pipeline-integration.js.map +1 -0
  415. package/dist/ai/src/verification/multi-modal-formatters.d.ts +57 -0
  416. package/dist/ai/src/verification/multi-modal-formatters.d.ts.map +1 -0
  417. package/dist/ai/src/verification/multi-modal-formatters.js +655 -0
  418. package/dist/ai/src/verification/multi-modal-formatters.js.map +1 -0
  419. package/dist/ai/src/verification/output-formatter.d.ts +186 -0
  420. package/dist/ai/src/verification/output-formatter.d.ts.map +1 -0
  421. package/dist/ai/src/verification/output-formatter.js +296 -0
  422. package/dist/ai/src/verification/output-formatter.js.map +1 -0
  423. package/dist/ai/src/verification/parser-integration.d.ts +137 -0
  424. package/dist/ai/src/verification/parser-integration.d.ts.map +1 -0
  425. package/dist/ai/src/verification/parser-integration.js +273 -0
  426. package/dist/ai/src/verification/parser-integration.js.map +1 -0
  427. package/dist/ai/types/agent-capabilities.d.ts +387 -0
  428. package/dist/ai/types/agent-capabilities.d.ts.map +1 -0
  429. package/dist/ai/types/agent-capabilities.js +32 -0
  430. package/dist/ai/types/agent-capabilities.js.map +1 -0
  431. package/dist/ai/types/delegation-contracts.d.ts +291 -0
  432. package/dist/ai/types/delegation-contracts.d.ts.map +1 -0
  433. package/dist/ai/types/delegation-contracts.js +14 -0
  434. package/dist/ai/types/delegation-contracts.js.map +1 -0
  435. package/dist/ai/types/index.d.ts +4 -1
  436. package/dist/ai/types/index.d.ts.map +1 -1
  437. package/dist/ai/types/index.js +4 -1
  438. package/dist/ai/types/index.js.map +1 -1
  439. package/dist/ai/types/permission-tokens.d.ts +365 -0
  440. package/dist/ai/types/permission-tokens.d.ts.map +1 -0
  441. package/dist/ai/types/permission-tokens.js +13 -0
  442. package/dist/ai/types/permission-tokens.js.map +1 -0
  443. package/dist/ai/types/security-middleware.d.ts +130 -0
  444. package/dist/ai/types/security-middleware.d.ts.map +1 -0
  445. package/dist/ai/types/security-middleware.js +13 -0
  446. package/dist/ai/types/security-middleware.js.map +1 -0
  447. package/dist/ai/utils/storage.d.ts.map +1 -1
  448. package/dist/ai/utils/storage.js +6 -3
  449. package/dist/ai/utils/storage.js.map +1 -1
  450. package/dist/ai/validation/validation-framework.js +1 -1
  451. package/dist/ai/verification/policy-framework.d.ts +161 -0
  452. package/dist/ai/verification/policy-framework.d.ts.map +1 -0
  453. package/dist/ai/verification/policy-framework.js +436 -0
  454. package/dist/ai/verification/policy-framework.js.map +1 -0
  455. package/package.json +56 -6
@@ -0,0 +1,161 @@
1
+ /**
2
+ * DCYFR Verification Policy Framework
3
+ * TLP:AMBER - Internal Use Only
4
+ *
5
+ * Framework for implementing different verification modes for delegation contracts.
6
+ * Supports direct inspection, third-party audit, cryptographic proof, and human review.
7
+ *
8
+ * @module ai/verification/policy-framework
9
+ * @version 1.0.0
10
+ * @date 2026-02-13
11
+ */
12
+ import type { VerificationPolicy, VerificationResult, SuccessCriteria } from '../types/delegation-contracts';
13
+ /**
14
+ * Verification context provided to verifiers
15
+ */
16
+ export interface VerificationContext {
17
+ /** Contract ID being verified */
18
+ contract_id: string;
19
+ /** Task output to verify */
20
+ task_output: unknown;
21
+ /** Original task description */
22
+ task_description: string;
23
+ /** Success criteria from contract */
24
+ success_criteria: SuccessCriteria;
25
+ /** Agent that performed the work */
26
+ delegatee_agent_id: string;
27
+ /** Agent requesting verification */
28
+ delegator_agent_id: string;
29
+ /** Task completion time in milliseconds */
30
+ completion_time_ms: number;
31
+ /** Optional metadata */
32
+ metadata?: Record<string, unknown>;
33
+ }
34
+ /**
35
+ * Verifier interface for implementing verification strategies
36
+ */
37
+ export interface Verifier {
38
+ /** Verification policy type */
39
+ readonly policy: VerificationPolicy;
40
+ /**
41
+ * Verify task output according to policy
42
+ */
43
+ verify(context: VerificationContext): Promise<VerificationResult>;
44
+ }
45
+ /**
46
+ * Direct Inspection Verifier
47
+ *
48
+ * Simple verification by directly inspecting the output against success criteria.
49
+ * Suitable for straightforward tasks with clear success conditions.
50
+ */
51
+ export declare class DirectInspectionVerifier implements Verifier {
52
+ readonly policy: VerificationPolicy;
53
+ private verifierId;
54
+ constructor(verifierId: string);
55
+ private applyQualityCheck;
56
+ private applyRequiredChecks;
57
+ verify(context: VerificationContext): Promise<VerificationResult>;
58
+ /**
59
+ * Assess output quality (placeholder implementation)
60
+ */
61
+ private assessOutputQuality;
62
+ /**
63
+ * Perform a named check
64
+ */
65
+ private performCheck;
66
+ /**
67
+ * Validate output against schema
68
+ */
69
+ private validateOutputSchema;
70
+ /**
71
+ * Check performance requirements
72
+ */
73
+ private checkPerformance;
74
+ }
75
+ /**
76
+ * Third Party Audit Verifier
77
+ *
78
+ * Delegates verification to an independent third-party agent.
79
+ * Provides additional accountability and reduces bias.
80
+ */
81
+ export declare class ThirdPartyAuditVerifier implements Verifier {
82
+ readonly policy: VerificationPolicy;
83
+ private auditorId;
84
+ constructor(auditorId: string);
85
+ verify(context: VerificationContext): Promise<VerificationResult>;
86
+ }
87
+ /**
88
+ * Cryptographic Proof Verifier
89
+ *
90
+ * Verifies outputs using cryptographic proofs (signatures, hashes, ZK proofs).
91
+ * Provides strongest assurance for critical operations.
92
+ */
93
+ export declare class CryptographicProofVerifier implements Verifier {
94
+ readonly policy: VerificationPolicy;
95
+ private verifierId;
96
+ constructor(verifierId: string);
97
+ verify(context: VerificationContext): Promise<VerificationResult>;
98
+ /**
99
+ * Verify cryptographic signature (placeholder)
100
+ */
101
+ private verifySignature;
102
+ /**
103
+ * Verify cryptographic hash (placeholder)
104
+ */
105
+ private verifyHash;
106
+ /**
107
+ * Verify zero-knowledge proof (placeholder)
108
+ */
109
+ private verifyZKProof;
110
+ }
111
+ /**
112
+ * Human Required Verifier
113
+ *
114
+ * Requires human review for TLP:AMBER/RED content or critical decisions.
115
+ * Provides human oversight for high-stakes delegations.
116
+ */
117
+ export declare class HumanRequiredVerifier implements Verifier {
118
+ readonly policy: VerificationPolicy;
119
+ private humanReviewerId;
120
+ constructor(humanReviewerId: string);
121
+ verify(context: VerificationContext): Promise<VerificationResult>;
122
+ /**
123
+ * Complete human review (to be called after human decision)
124
+ */
125
+ completeReview(context: VerificationContext, approved: boolean, humanFindings: {
126
+ comments?: string;
127
+ quality_score?: number;
128
+ passed_checks?: string[];
129
+ failed_checks?: string[];
130
+ }): Promise<VerificationResult>;
131
+ }
132
+ /**
133
+ * Verification Policy Framework
134
+ *
135
+ * Factory and orchestrator for verification policies.
136
+ */
137
+ export declare class VerificationPolicyFramework {
138
+ private verifiers;
139
+ constructor();
140
+ /**
141
+ * Register a verifier for a specific policy
142
+ */
143
+ registerVerifier(verifier: Verifier): void;
144
+ /**
145
+ * Get verifier for a policy
146
+ */
147
+ getVerifier(policy: VerificationPolicy): Verifier | null;
148
+ /**
149
+ * Verify using the specified policy
150
+ */
151
+ verify(policy: VerificationPolicy, context: VerificationContext): Promise<VerificationResult>;
152
+ /**
153
+ * Create a default framework with all standard verifiers
154
+ */
155
+ static createDefault(config?: {
156
+ verifierId?: string;
157
+ auditorId?: string;
158
+ humanReviewerId?: string;
159
+ }): VerificationPolicyFramework;
160
+ }
161
+ //# sourceMappingURL=policy-framework.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-framework.d.ts","sourceRoot":"","sources":["../../../packages/ai/verification/policy-framework.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,436 @@
1
+ /**
2
+ * DCYFR Verification Policy Framework
3
+ * TLP:AMBER - Internal Use Only
4
+ *
5
+ * Framework for implementing different verification modes for delegation contracts.
6
+ * Supports direct inspection, third-party audit, cryptographic proof, and human review.
7
+ *
8
+ * @module ai/verification/policy-framework
9
+ * @version 1.0.0
10
+ * @date 2026-02-13
11
+ */
12
+ /**
13
+ * Direct Inspection Verifier
14
+ *
15
+ * Simple verification by directly inspecting the output against success criteria.
16
+ * Suitable for straightforward tasks with clear success conditions.
17
+ */
18
+ export class DirectInspectionVerifier {
19
+ policy = 'direct_inspection';
20
+ verifierId;
21
+ constructor(verifierId) {
22
+ this.verifierId = verifierId;
23
+ }
24
+ applyQualityCheck(context, findings) {
25
+ if (context.success_criteria.quality_threshold === undefined)
26
+ return 1.0;
27
+ const outputQuality = this.assessOutputQuality(context.task_output);
28
+ if (outputQuality >= context.success_criteria.quality_threshold) {
29
+ findings.passed_checks?.push('quality_threshold');
30
+ return 1.0;
31
+ }
32
+ findings.failed_checks?.push('quality_threshold');
33
+ return 0.5;
34
+ }
35
+ applyRequiredChecks(context, findings) {
36
+ if (!context.success_criteria.required_checks?.length)
37
+ return 1.0;
38
+ let scoreMultiplier = 1.0;
39
+ for (const check of context.success_criteria.required_checks) {
40
+ if (this.performCheck(check, context)) {
41
+ findings.passed_checks?.push(check);
42
+ }
43
+ else {
44
+ findings.failed_checks?.push(check);
45
+ scoreMultiplier *= 0.8;
46
+ }
47
+ }
48
+ return scoreMultiplier;
49
+ }
50
+ async verify(context) {
51
+ const findings = {
52
+ passed_checks: [],
53
+ failed_checks: [],
54
+ warnings: [],
55
+ };
56
+ let qualityScore = 1.0;
57
+ // Check quality threshold
58
+ qualityScore *= this.applyQualityCheck(context, findings);
59
+ // Check required checks
60
+ qualityScore *= this.applyRequiredChecks(context, findings);
61
+ // Check output schema
62
+ if (context.success_criteria.output_schema) {
63
+ const schemaValid = this.validateOutputSchema(context.task_output, context.success_criteria.output_schema);
64
+ if (schemaValid) {
65
+ findings.passed_checks?.push('output_schema');
66
+ }
67
+ else {
68
+ findings.failed_checks?.push('output_schema');
69
+ qualityScore *= 0.7;
70
+ }
71
+ }
72
+ // Check performance requirements
73
+ if (context.success_criteria.performance_requirements) {
74
+ const perfPassed = this.checkPerformance(context);
75
+ if (perfPassed) {
76
+ findings.passed_checks?.push('performance_requirements');
77
+ }
78
+ else {
79
+ findings.warnings?.push('performance_requirements_exceeded');
80
+ qualityScore *= 0.9;
81
+ }
82
+ }
83
+ const verified = (findings.failed_checks?.length ?? 0) === 0;
84
+ return {
85
+ verified,
86
+ verified_at: new Date().toISOString(),
87
+ verified_by: this.verifierId,
88
+ verification_method: this.policy,
89
+ findings,
90
+ quality_score: qualityScore,
91
+ metadata: {
92
+ inspection_type: 'direct',
93
+ auto_verified: true,
94
+ },
95
+ };
96
+ }
97
+ /**
98
+ * Assess output quality (placeholder implementation)
99
+ */
100
+ assessOutputQuality(output) {
101
+ if (output === null || output === undefined) {
102
+ return 0.0;
103
+ }
104
+ if (typeof output === 'object') {
105
+ // Check if object has expected properties
106
+ const keys = Object.keys(output);
107
+ return keys.length > 0 ? 0.8 : 0.3;
108
+ }
109
+ if (typeof output === 'string') {
110
+ // Check string length as a proxy for completeness
111
+ const length = output.length;
112
+ if (length > 100)
113
+ return 0.9;
114
+ if (length > 20)
115
+ return 0.7;
116
+ return 0.5;
117
+ }
118
+ return 0.6;
119
+ }
120
+ /**
121
+ * Perform a named check
122
+ */
123
+ performCheck(checkName, context) {
124
+ // Placeholder implementation - in production, this would dispatch to specific check handlers
125
+ switch (checkName) {
126
+ case 'not_null':
127
+ return context.task_output !== null && context.task_output !== undefined;
128
+ case 'has_content':
129
+ return typeof context.task_output === 'string' && context.task_output.length > 0;
130
+ case 'is_object':
131
+ return typeof context.task_output === 'object' && context.task_output !== null;
132
+ default:
133
+ // Unknown checks pass by default (conservative approach)
134
+ return true;
135
+ }
136
+ }
137
+ /**
138
+ * Validate output against schema
139
+ */
140
+ validateOutputSchema(output, schema) {
141
+ if (typeof output !== 'object' || output === null) {
142
+ return false;
143
+ }
144
+ // Simple schema validation - check if required keys exist
145
+ const outputObj = output;
146
+ const requiredKeys = Object.keys(schema);
147
+ return requiredKeys.every(key => key in outputObj);
148
+ }
149
+ /**
150
+ * Check performance requirements
151
+ */
152
+ checkPerformance(context) {
153
+ const perfReqs = context.success_criteria.performance_requirements;
154
+ if (perfReqs?.max_completion_time_ms) {
155
+ if (context.completion_time_ms > perfReqs.max_completion_time_ms) {
156
+ return false;
157
+ }
158
+ }
159
+ return true;
160
+ }
161
+ }
162
+ /**
163
+ * Third Party Audit Verifier
164
+ *
165
+ * Delegates verification to an independent third-party agent.
166
+ * Provides additional accountability and reduces bias.
167
+ */
168
+ export class ThirdPartyAuditVerifier {
169
+ policy = 'third_party_audit';
170
+ auditorId;
171
+ constructor(auditorId) {
172
+ this.auditorId = auditorId;
173
+ }
174
+ async verify(context) {
175
+ // In production, this would call an external auditor agent
176
+ // For now, we simulate the audit process
177
+ const findings = {
178
+ passed_checks: [],
179
+ failed_checks: [],
180
+ warnings: [],
181
+ };
182
+ // Simulate audit checks
183
+ const auditChecks = [
184
+ 'output_completeness',
185
+ 'output_accuracy',
186
+ 'process_compliance',
187
+ 'security_review',
188
+ ];
189
+ let qualityScore = 1.0;
190
+ for (const check of auditChecks) {
191
+ // Simulate audit decision (in production, this would be actual audit logic)
192
+ const passed = Math.random() > 0.2; // 80% pass rate for simulation
193
+ if (passed) {
194
+ findings.passed_checks?.push(check);
195
+ }
196
+ else {
197
+ findings.failed_checks?.push(check);
198
+ qualityScore *= 0.75;
199
+ }
200
+ }
201
+ // Check success criteria
202
+ if (context.success_criteria.quality_threshold !== undefined) {
203
+ if (qualityScore >= context.success_criteria.quality_threshold) {
204
+ findings.passed_checks?.push('quality_threshold');
205
+ }
206
+ else {
207
+ findings.failed_checks?.push('quality_threshold');
208
+ }
209
+ }
210
+ const verified = (findings.failed_checks?.length ?? 0) === 0;
211
+ return {
212
+ verified,
213
+ verified_at: new Date().toISOString(),
214
+ verified_by: this.auditorId,
215
+ verification_method: this.policy,
216
+ findings,
217
+ quality_score: qualityScore,
218
+ metadata: {
219
+ audit_type: 'third_party',
220
+ auditor_agent_id: this.auditorId,
221
+ audit_timestamp: new Date().toISOString(),
222
+ },
223
+ };
224
+ }
225
+ }
226
+ /**
227
+ * Cryptographic Proof Verifier
228
+ *
229
+ * Verifies outputs using cryptographic proofs (signatures, hashes, ZK proofs).
230
+ * Provides strongest assurance for critical operations.
231
+ */
232
+ export class CryptographicProofVerifier {
233
+ policy = 'cryptographic_proof';
234
+ verifierId;
235
+ constructor(verifierId) {
236
+ this.verifierId = verifierId;
237
+ }
238
+ async verify(context) {
239
+ const findings = {
240
+ passed_checks: [],
241
+ failed_checks: [],
242
+ warnings: [],
243
+ };
244
+ // Check for cryptographic metadata
245
+ const metadata = context.metadata;
246
+ const signature = metadata?.signature;
247
+ const hash = metadata?.hash;
248
+ const proof = metadata?.proof;
249
+ let qualityScore = 1.0;
250
+ // Verify signature if present
251
+ if (signature !== undefined) {
252
+ const signatureValid = this.verifySignature(signature, context.task_output);
253
+ if (signatureValid) {
254
+ findings.passed_checks?.push('signature_verification');
255
+ }
256
+ else {
257
+ findings.failed_checks?.push('signature_verification');
258
+ qualityScore *= 0.5;
259
+ }
260
+ }
261
+ else {
262
+ findings.warnings?.push('no_signature_provided');
263
+ }
264
+ // Verify hash if present
265
+ if (hash !== undefined) {
266
+ const hashValid = this.verifyHash(hash, context.task_output);
267
+ if (hashValid) {
268
+ findings.passed_checks?.push('hash_verification');
269
+ }
270
+ else {
271
+ findings.failed_checks?.push('hash_verification');
272
+ qualityScore *= 0.5;
273
+ }
274
+ }
275
+ else {
276
+ findings.warnings?.push('no_hash_provided');
277
+ }
278
+ // Verify zero-knowledge proof if present
279
+ if (proof) {
280
+ const proofValid = this.verifyZKProof(proof, context);
281
+ if (proofValid) {
282
+ findings.passed_checks?.push('zk_proof_verification');
283
+ }
284
+ else {
285
+ findings.failed_checks?.push('zk_proof_verification');
286
+ qualityScore *= 0.3;
287
+ }
288
+ }
289
+ const verified = (findings.failed_checks?.length ?? 0) === 0;
290
+ return {
291
+ verified,
292
+ verified_at: new Date().toISOString(),
293
+ verified_by: this.verifierId,
294
+ verification_method: this.policy,
295
+ findings,
296
+ quality_score: qualityScore,
297
+ metadata: {
298
+ crypto_verification: true,
299
+ signature_checked: !!signature,
300
+ hash_checked: !!hash,
301
+ proof_checked: !!proof,
302
+ },
303
+ };
304
+ }
305
+ /**
306
+ * Verify cryptographic signature (placeholder)
307
+ */
308
+ verifySignature(signature, output) {
309
+ // In production, this would perform actual signature verification
310
+ // For now, we require non-empty signature
311
+ return signature.length > 0;
312
+ }
313
+ /**
314
+ * Verify cryptographic hash (placeholder)
315
+ */
316
+ verifyHash(hash, output) {
317
+ // In production, this would compute and compare hashes
318
+ return hash.length >= 32; // Minimum hash length
319
+ }
320
+ /**
321
+ * Verify zero-knowledge proof (placeholder)
322
+ */
323
+ verifyZKProof(proof, context) {
324
+ // In production, this would verify actual ZK proofs
325
+ return typeof proof === 'object' && proof !== null;
326
+ }
327
+ }
328
+ /**
329
+ * Human Required Verifier
330
+ *
331
+ * Requires human review for TLP:AMBER/RED content or critical decisions.
332
+ * Provides human oversight for high-stakes delegations.
333
+ */
334
+ export class HumanRequiredVerifier {
335
+ policy = 'human_required';
336
+ humanReviewerId;
337
+ constructor(humanReviewerId) {
338
+ this.humanReviewerId = humanReviewerId;
339
+ }
340
+ async verify(context) {
341
+ // In production, this would:
342
+ // 1. Queue the task for human review
343
+ // 2. Send notifications to reviewers
344
+ // 3. Wait for human approval
345
+ // 4. Return the human's verification decision
346
+ // For testing, we simulate human review with a pending state
347
+ const findings = {
348
+ passed_checks: [],
349
+ failed_checks: [],
350
+ warnings: ['human_review_pending'],
351
+ };
352
+ return {
353
+ verified: false, // Pending human review
354
+ verified_at: new Date().toISOString(),
355
+ verified_by: this.humanReviewerId,
356
+ verification_method: this.policy,
357
+ findings,
358
+ quality_score: undefined, // Not assessed until human review
359
+ metadata: {
360
+ human_review_required: true,
361
+ review_status: 'pending',
362
+ queued_at: new Date().toISOString(),
363
+ reviewer_id: this.humanReviewerId,
364
+ },
365
+ };
366
+ }
367
+ /**
368
+ * Complete human review (to be called after human decision)
369
+ */
370
+ async completeReview(context, approved, humanFindings) {
371
+ return {
372
+ verified: approved,
373
+ verified_at: new Date().toISOString(),
374
+ verified_by: this.humanReviewerId,
375
+ verification_method: this.policy,
376
+ findings: {
377
+ passed_checks: humanFindings.passed_checks ?? [],
378
+ failed_checks: humanFindings.failed_checks ?? [],
379
+ warnings: [],
380
+ },
381
+ quality_score: humanFindings.quality_score,
382
+ metadata: {
383
+ human_review_required: true,
384
+ review_status: 'completed',
385
+ reviewed_at: new Date().toISOString(),
386
+ reviewer_id: this.humanReviewerId,
387
+ comments: humanFindings.comments,
388
+ },
389
+ };
390
+ }
391
+ }
392
+ /**
393
+ * Verification Policy Framework
394
+ *
395
+ * Factory and orchestrator for verification policies.
396
+ */
397
+ export class VerificationPolicyFramework {
398
+ verifiers;
399
+ constructor() {
400
+ this.verifiers = new Map();
401
+ }
402
+ /**
403
+ * Register a verifier for a specific policy
404
+ */
405
+ registerVerifier(verifier) {
406
+ this.verifiers.set(verifier.policy, verifier);
407
+ }
408
+ /**
409
+ * Get verifier for a policy
410
+ */
411
+ getVerifier(policy) {
412
+ return this.verifiers.get(policy) ?? null;
413
+ }
414
+ /**
415
+ * Verify using the specified policy
416
+ */
417
+ async verify(policy, context) {
418
+ const verifier = this.getVerifier(policy);
419
+ if (!verifier) {
420
+ throw new Error(`No verifier registered for policy: ${policy}`);
421
+ }
422
+ return verifier.verify(context);
423
+ }
424
+ /**
425
+ * Create a default framework with all standard verifiers
426
+ */
427
+ static createDefault(config) {
428
+ const framework = new VerificationPolicyFramework();
429
+ framework.registerVerifier(new DirectInspectionVerifier(config?.verifierId ?? 'default-verifier'));
430
+ framework.registerVerifier(new ThirdPartyAuditVerifier(config?.auditorId ?? 'default-auditor'));
431
+ framework.registerVerifier(new CryptographicProofVerifier(config?.verifierId ?? 'default-verifier'));
432
+ framework.registerVerifier(new HumanRequiredVerifier(config?.humanReviewerId ?? 'default-human-reviewer'));
433
+ return framework;
434
+ }
435
+ }
436
+ //# sourceMappingURL=policy-framework.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-framework.js","sourceRoot":"","sources":["../../../packages/ai/verification/policy-framework.ts"],"names":[],"mappings":"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"}