@vorionsys/atsf-core 0.2.3 → 0.3.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 (437) hide show
  1. package/CHANGELOG.md +1 -0
  2. package/LICENSE +1 -1
  3. package/README.md +82 -29
  4. package/dist/adapters/base-adapter.d.ts +94 -0
  5. package/dist/adapters/base-adapter.d.ts.map +1 -0
  6. package/dist/adapters/base-adapter.js +233 -0
  7. package/dist/adapters/base-adapter.js.map +1 -0
  8. package/dist/adapters/index.d.ts +9 -0
  9. package/dist/adapters/index.d.ts.map +1 -0
  10. package/dist/adapters/index.js +5 -0
  11. package/dist/adapters/index.js.map +1 -0
  12. package/dist/adapters/types.d.ts +83 -0
  13. package/dist/adapters/types.d.ts.map +1 -0
  14. package/dist/adapters/types.js +4 -0
  15. package/dist/adapters/types.js.map +1 -0
  16. package/dist/adapters/webhook-handler.d.ts +64 -0
  17. package/dist/adapters/webhook-handler.d.ts.map +1 -0
  18. package/dist/adapters/webhook-handler.js +170 -0
  19. package/dist/adapters/webhook-handler.js.map +1 -0
  20. package/dist/api/index.d.ts +1 -1
  21. package/dist/api/index.d.ts.map +1 -1
  22. package/dist/api/index.js +3 -1
  23. package/dist/api/index.js.map +1 -1
  24. package/dist/api/server.d.ts +2 -2
  25. package/dist/api/server.d.ts.map +1 -1
  26. package/dist/api/server.js +149 -184
  27. package/dist/api/server.js.map +1 -1
  28. package/dist/arbitration/index.d.ts +4 -12
  29. package/dist/arbitration/index.d.ts.map +1 -1
  30. package/dist/arbitration/index.js +43 -46
  31. package/dist/arbitration/index.js.map +1 -1
  32. package/dist/arbitration/types.d.ts +10 -10
  33. package/dist/arbitration/types.d.ts.map +1 -1
  34. package/dist/arbitration/types.js +2 -8
  35. package/dist/arbitration/types.js.map +1 -1
  36. package/dist/basis/evaluator.d.ts +1 -6
  37. package/dist/basis/evaluator.d.ts.map +1 -1
  38. package/dist/basis/evaluator.js +56 -56
  39. package/dist/basis/evaluator.js.map +1 -1
  40. package/dist/basis/index.d.ts +3 -3
  41. package/dist/basis/index.d.ts.map +1 -1
  42. package/dist/basis/index.js +5 -3
  43. package/dist/basis/index.js.map +1 -1
  44. package/dist/basis/parser.d.ts +30 -30
  45. package/dist/basis/parser.d.ts.map +1 -1
  46. package/dist/basis/parser.js +27 -32
  47. package/dist/basis/parser.js.map +1 -1
  48. package/dist/basis/types.d.ts +2 -2
  49. package/dist/basis/types.d.ts.map +1 -1
  50. package/dist/basis/types.js +2 -3
  51. package/dist/basis/types.js.map +1 -1
  52. package/dist/chain/index.d.ts +0 -8
  53. package/dist/chain/index.d.ts.map +1 -1
  54. package/dist/chain/index.js +18 -16
  55. package/dist/chain/index.js.map +1 -1
  56. package/dist/cognigate/index.d.ts +1 -9
  57. package/dist/cognigate/index.d.ts.map +1 -1
  58. package/dist/cognigate/index.js +35 -44
  59. package/dist/cognigate/index.js.map +1 -1
  60. package/dist/common/adapters.d.ts +4 -4
  61. package/dist/common/adapters.d.ts.map +1 -1
  62. package/dist/common/adapters.js +54 -70
  63. package/dist/common/adapters.js.map +1 -1
  64. package/dist/common/config.d.ts +69 -68
  65. package/dist/common/config.d.ts.map +1 -1
  66. package/dist/common/config.js +52 -50
  67. package/dist/common/config.js.map +1 -1
  68. package/dist/common/index.d.ts +4 -4
  69. package/dist/common/index.d.ts.map +1 -1
  70. package/dist/common/index.js +6 -4
  71. package/dist/common/index.js.map +1 -1
  72. package/dist/common/logger.d.ts +1 -1
  73. package/dist/common/logger.d.ts.map +1 -1
  74. package/dist/common/logger.js +10 -8
  75. package/dist/common/logger.js.map +1 -1
  76. package/dist/common/types.d.ts +12 -12
  77. package/dist/common/types.d.ts.map +1 -1
  78. package/dist/common/types.js +7 -14
  79. package/dist/common/types.js.map +1 -1
  80. package/dist/containment/index.d.ts +3 -11
  81. package/dist/containment/index.d.ts.map +1 -1
  82. package/dist/containment/index.js +107 -119
  83. package/dist/containment/index.js.map +1 -1
  84. package/dist/containment/types.d.ts +11 -11
  85. package/dist/containment/types.d.ts.map +1 -1
  86. package/dist/containment/types.js +2 -8
  87. package/dist/containment/types.js.map +1 -1
  88. package/dist/contracts/index.d.ts +9 -17
  89. package/dist/contracts/index.d.ts.map +1 -1
  90. package/dist/contracts/index.js +56 -59
  91. package/dist/contracts/index.js.map +1 -1
  92. package/dist/contracts/types.d.ts +12 -12
  93. package/dist/contracts/types.d.ts.map +1 -1
  94. package/dist/contracts/types.js +2 -8
  95. package/dist/contracts/types.js.map +1 -1
  96. package/dist/crewai/callback.d.ts +2 -9
  97. package/dist/crewai/callback.d.ts.map +1 -1
  98. package/dist/crewai/callback.js +29 -27
  99. package/dist/crewai/callback.js.map +1 -1
  100. package/dist/crewai/executor.d.ts +95 -11
  101. package/dist/crewai/executor.d.ts.map +1 -1
  102. package/dist/crewai/executor.js +459 -16
  103. package/dist/crewai/executor.js.map +1 -1
  104. package/dist/crewai/index.d.ts +4 -4
  105. package/dist/crewai/index.d.ts.map +1 -1
  106. package/dist/crewai/index.js +6 -4
  107. package/dist/crewai/index.js.map +1 -1
  108. package/dist/crewai/tools.d.ts +1 -1
  109. package/dist/crewai/tools.d.ts.map +1 -1
  110. package/dist/crewai/tools.js +40 -46
  111. package/dist/crewai/tools.js.map +1 -1
  112. package/dist/crewai/types.d.ts +66 -3
  113. package/dist/crewai/types.d.ts.map +1 -1
  114. package/dist/crewai/types.js +2 -7
  115. package/dist/crewai/types.js.map +1 -1
  116. package/dist/enforce/index.d.ts +226 -19
  117. package/dist/enforce/index.d.ts.map +1 -1
  118. package/dist/enforce/index.js +55 -81
  119. package/dist/enforce/index.js.map +1 -1
  120. package/dist/enforce/trust-aware-enforcement-service.d.ts +8 -23
  121. package/dist/enforce/trust-aware-enforcement-service.d.ts.map +1 -1
  122. package/dist/enforce/trust-aware-enforcement-service.js +109 -125
  123. package/dist/enforce/trust-aware-enforcement-service.js.map +1 -1
  124. package/dist/governance/fluid-workflow.d.ts +8 -16
  125. package/dist/governance/fluid-workflow.d.ts.map +1 -1
  126. package/dist/governance/fluid-workflow.js +88 -114
  127. package/dist/governance/fluid-workflow.js.map +1 -1
  128. package/dist/governance/index.d.ts +7 -15
  129. package/dist/governance/index.d.ts.map +1 -1
  130. package/dist/governance/index.js +76 -81
  131. package/dist/governance/index.js.map +1 -1
  132. package/dist/governance/proof-bridge.d.ts +6 -6
  133. package/dist/governance/proof-bridge.d.ts.map +1 -1
  134. package/dist/governance/proof-bridge.js +6 -16
  135. package/dist/governance/proof-bridge.js.map +1 -1
  136. package/dist/governance/types.d.ts +9 -16
  137. package/dist/governance/types.d.ts.map +1 -1
  138. package/dist/governance/types.js +2 -8
  139. package/dist/governance/types.js.map +1 -1
  140. package/dist/index.d.ts +30 -29
  141. package/dist/index.d.ts.map +1 -1
  142. package/dist/index.js +33 -31
  143. package/dist/index.js.map +1 -1
  144. package/dist/intent/index.d.ts +55 -18
  145. package/dist/intent/index.d.ts.map +1 -1
  146. package/dist/intent/index.js +25 -26
  147. package/dist/intent/index.js.map +1 -1
  148. package/dist/intent/persistent-intent-service.d.ts +2 -17
  149. package/dist/intent/persistent-intent-service.d.ts.map +1 -1
  150. package/dist/intent/persistent-intent-service.js +33 -43
  151. package/dist/intent/persistent-intent-service.js.map +1 -1
  152. package/dist/intent/supabase-intent-repository.d.ts +107 -0
  153. package/dist/intent/supabase-intent-repository.d.ts.map +1 -0
  154. package/dist/intent/supabase-intent-repository.js +406 -0
  155. package/dist/intent/supabase-intent-repository.js.map +1 -0
  156. package/dist/intent-gateway/index.d.ts +5 -28
  157. package/dist/intent-gateway/index.d.ts.map +1 -1
  158. package/dist/intent-gateway/index.js +341 -508
  159. package/dist/intent-gateway/index.js.map +1 -1
  160. package/dist/langchain/callback.d.ts +2 -9
  161. package/dist/langchain/callback.d.ts.map +1 -1
  162. package/dist/langchain/callback.js +32 -30
  163. package/dist/langchain/callback.js.map +1 -1
  164. package/dist/langchain/executor.d.ts +4 -11
  165. package/dist/langchain/executor.d.ts.map +1 -1
  166. package/dist/langchain/executor.js +82 -82
  167. package/dist/langchain/executor.js.map +1 -1
  168. package/dist/langchain/index.d.ts +5 -5
  169. package/dist/langchain/index.d.ts.map +1 -1
  170. package/dist/langchain/index.js +7 -5
  171. package/dist/langchain/index.js.map +1 -1
  172. package/dist/langchain/tools.d.ts +1 -1
  173. package/dist/langchain/tools.d.ts.map +1 -1
  174. package/dist/langchain/tools.js +36 -43
  175. package/dist/langchain/tools.js.map +1 -1
  176. package/dist/langchain/types.d.ts +3 -3
  177. package/dist/langchain/types.d.ts.map +1 -1
  178. package/dist/langchain/types.js +2 -7
  179. package/dist/langchain/types.js.map +1 -1
  180. package/dist/layers/implementations/L0-request-format.d.ts +2 -2
  181. package/dist/layers/implementations/L0-request-format.d.ts.map +1 -1
  182. package/dist/layers/implementations/L0-request-format.js +54 -54
  183. package/dist/layers/implementations/L0-request-format.js.map +1 -1
  184. package/dist/layers/implementations/L1-input-size.d.ts +2 -2
  185. package/dist/layers/implementations/L1-input-size.d.ts.map +1 -1
  186. package/dist/layers/implementations/L1-input-size.js +41 -49
  187. package/dist/layers/implementations/L1-input-size.js.map +1 -1
  188. package/dist/layers/implementations/L2-charset-sanitizer.d.ts +2 -2
  189. package/dist/layers/implementations/L2-charset-sanitizer.d.ts.map +1 -1
  190. package/dist/layers/implementations/L2-charset-sanitizer.js +73 -81
  191. package/dist/layers/implementations/L2-charset-sanitizer.js.map +1 -1
  192. package/dist/layers/implementations/L3-schema-conformance.d.ts +3 -3
  193. package/dist/layers/implementations/L3-schema-conformance.d.ts.map +1 -1
  194. package/dist/layers/implementations/L3-schema-conformance.js +75 -82
  195. package/dist/layers/implementations/L3-schema-conformance.js.map +1 -1
  196. package/dist/layers/implementations/L4-injection-detector.d.ts +4 -4
  197. package/dist/layers/implementations/L4-injection-detector.d.ts.map +1 -1
  198. package/dist/layers/implementations/L4-injection-detector.js +83 -85
  199. package/dist/layers/implementations/L4-injection-detector.js.map +1 -1
  200. package/dist/layers/implementations/L5-rate-limiter.d.ts +2 -2
  201. package/dist/layers/implementations/L5-rate-limiter.d.ts.map +1 -1
  202. package/dist/layers/implementations/L5-rate-limiter.js +22 -20
  203. package/dist/layers/implementations/L5-rate-limiter.js.map +1 -1
  204. package/dist/layers/implementations/index.d.ts +6 -6
  205. package/dist/layers/implementations/index.d.ts.map +1 -1
  206. package/dist/layers/implementations/index.js +8 -6
  207. package/dist/layers/implementations/index.js.map +1 -1
  208. package/dist/layers/index.d.ts +3 -11
  209. package/dist/layers/index.d.ts.map +1 -1
  210. package/dist/layers/index.js +73 -99
  211. package/dist/layers/index.js.map +1 -1
  212. package/dist/layers/types.d.ts +16 -16
  213. package/dist/layers/types.d.ts.map +1 -1
  214. package/dist/layers/types.js +2 -8
  215. package/dist/layers/types.js.map +1 -1
  216. package/dist/paramesphere/activation-collector.d.ts +128 -0
  217. package/dist/paramesphere/activation-collector.d.ts.map +1 -0
  218. package/dist/paramesphere/activation-collector.js +260 -0
  219. package/dist/paramesphere/activation-collector.js.map +1 -0
  220. package/dist/paramesphere/cognitive-envelope.d.ts +73 -0
  221. package/dist/paramesphere/cognitive-envelope.d.ts.map +1 -0
  222. package/dist/paramesphere/cognitive-envelope.js +209 -0
  223. package/dist/paramesphere/cognitive-envelope.js.map +1 -0
  224. package/dist/paramesphere/envelope-integration.d.ts +60 -0
  225. package/dist/paramesphere/envelope-integration.d.ts.map +1 -0
  226. package/dist/paramesphere/envelope-integration.js +93 -0
  227. package/dist/paramesphere/envelope-integration.js.map +1 -0
  228. package/dist/paramesphere/fingerprint-monitor.d.ts +136 -0
  229. package/dist/paramesphere/fingerprint-monitor.d.ts.map +1 -0
  230. package/dist/paramesphere/fingerprint-monitor.js +212 -0
  231. package/dist/paramesphere/fingerprint-monitor.js.map +1 -0
  232. package/dist/paramesphere/fingerprint-store.d.ts +85 -0
  233. package/dist/paramesphere/fingerprint-store.d.ts.map +1 -0
  234. package/dist/paramesphere/fingerprint-store.js +68 -0
  235. package/dist/paramesphere/fingerprint-store.js.map +1 -0
  236. package/dist/paramesphere/index.d.ts +21 -0
  237. package/dist/paramesphere/index.d.ts.map +1 -0
  238. package/dist/paramesphere/index.js +18 -0
  239. package/dist/paramesphere/index.js.map +1 -0
  240. package/dist/paramesphere/monitor-integration.d.ts +37 -0
  241. package/dist/paramesphere/monitor-integration.d.ts.map +1 -0
  242. package/dist/paramesphere/monitor-integration.js +81 -0
  243. package/dist/paramesphere/monitor-integration.js.map +1 -0
  244. package/dist/paramesphere/paramesphere-engine.d.ts +111 -0
  245. package/dist/paramesphere/paramesphere-engine.d.ts.map +1 -0
  246. package/dist/paramesphere/paramesphere-engine.js +542 -0
  247. package/dist/paramesphere/paramesphere-engine.js.map +1 -0
  248. package/dist/paramesphere/types.d.ts +142 -0
  249. package/dist/paramesphere/types.d.ts.map +1 -0
  250. package/dist/paramesphere/types.js +4 -0
  251. package/dist/paramesphere/types.js.map +1 -0
  252. package/dist/persistence/file.d.ts +3 -10
  253. package/dist/persistence/file.d.ts.map +1 -1
  254. package/dist/persistence/file.js +30 -32
  255. package/dist/persistence/file.js.map +1 -1
  256. package/dist/persistence/index.d.ts +7 -7
  257. package/dist/persistence/index.d.ts.map +1 -1
  258. package/dist/persistence/index.js +20 -18
  259. package/dist/persistence/index.js.map +1 -1
  260. package/dist/persistence/memory.d.ts +3 -3
  261. package/dist/persistence/memory.d.ts.map +1 -1
  262. package/dist/persistence/memory.js +10 -17
  263. package/dist/persistence/memory.js.map +1 -1
  264. package/dist/persistence/sqlite.d.ts +3 -11
  265. package/dist/persistence/sqlite.d.ts.map +1 -1
  266. package/dist/persistence/sqlite.js +42 -39
  267. package/dist/persistence/sqlite.js.map +1 -1
  268. package/dist/persistence/supabase.d.ts +3 -3
  269. package/dist/persistence/supabase.d.ts.map +1 -1
  270. package/dist/persistence/supabase.js +46 -49
  271. package/dist/persistence/supabase.js.map +1 -1
  272. package/dist/persistence/types.d.ts +5 -5
  273. package/dist/persistence/types.d.ts.map +1 -1
  274. package/dist/persistence/types.js +2 -7
  275. package/dist/persistence/types.js.map +1 -1
  276. package/dist/phase6/ceiling.d.ts +5 -21
  277. package/dist/phase6/ceiling.d.ts.map +1 -1
  278. package/dist/phase6/ceiling.js +38 -69
  279. package/dist/phase6/ceiling.js.map +1 -1
  280. package/dist/phase6/context.d.ts +3 -20
  281. package/dist/phase6/context.d.ts.map +1 -1
  282. package/dist/phase6/context.js +49 -93
  283. package/dist/phase6/context.js.map +1 -1
  284. package/dist/phase6/index.d.ts +12 -12
  285. package/dist/phase6/index.d.ts.map +1 -1
  286. package/dist/phase6/index.js +17 -15
  287. package/dist/phase6/index.js.map +1 -1
  288. package/dist/phase6/presets.d.ts +2 -18
  289. package/dist/phase6/presets.d.ts.map +1 -1
  290. package/dist/phase6/presets.js +35 -39
  291. package/dist/phase6/presets.js.map +1 -1
  292. package/dist/phase6/provenance.d.ts +4 -19
  293. package/dist/phase6/provenance.d.ts.map +1 -1
  294. package/dist/phase6/provenance.js +37 -42
  295. package/dist/phase6/provenance.js.map +1 -1
  296. package/dist/phase6/role-gates/index.d.ts +2 -2
  297. package/dist/phase6/role-gates/index.d.ts.map +1 -1
  298. package/dist/phase6/role-gates/index.js +4 -2
  299. package/dist/phase6/role-gates/index.js.map +1 -1
  300. package/dist/phase6/role-gates/kernel.d.ts.map +1 -1
  301. package/dist/phase6/role-gates/kernel.js +18 -16
  302. package/dist/phase6/role-gates/kernel.js.map +1 -1
  303. package/dist/phase6/role-gates/policy.d.ts +2 -2
  304. package/dist/phase6/role-gates/policy.d.ts.map +1 -1
  305. package/dist/phase6/role-gates/policy.js +8 -17
  306. package/dist/phase6/role-gates/policy.js.map +1 -1
  307. package/dist/phase6/role-gates.d.ts +4 -20
  308. package/dist/phase6/role-gates.d.ts.map +1 -1
  309. package/dist/phase6/role-gates.js +60 -80
  310. package/dist/phase6/role-gates.js.map +1 -1
  311. package/dist/phase6/types.d.ts +53 -23
  312. package/dist/phase6/types.d.ts.map +1 -1
  313. package/dist/phase6/types.js +131 -177
  314. package/dist/phase6/types.js.map +1 -1
  315. package/dist/phase6/weight-presets/canonical.d.ts.map +1 -1
  316. package/dist/phase6/weight-presets/canonical.js +12 -10
  317. package/dist/phase6/weight-presets/canonical.js.map +1 -1
  318. package/dist/phase6/weight-presets/deltas.d.ts +2 -2
  319. package/dist/phase6/weight-presets/deltas.d.ts.map +1 -1
  320. package/dist/phase6/weight-presets/deltas.js +29 -37
  321. package/dist/phase6/weight-presets/deltas.js.map +1 -1
  322. package/dist/phase6/weight-presets/index.d.ts +3 -3
  323. package/dist/phase6/weight-presets/index.d.ts.map +1 -1
  324. package/dist/phase6/weight-presets/index.js +5 -3
  325. package/dist/phase6/weight-presets/index.js.map +1 -1
  326. package/dist/phase6/weight-presets/merger.d.ts +2 -12
  327. package/dist/phase6/weight-presets/merger.d.ts.map +1 -1
  328. package/dist/phase6/weight-presets/merger.js +45 -39
  329. package/dist/phase6/weight-presets/merger.js.map +1 -1
  330. package/dist/proof/index.d.ts +6 -13
  331. package/dist/proof/index.d.ts.map +1 -1
  332. package/dist/proof/index.js +63 -51
  333. package/dist/proof/index.js.map +1 -1
  334. package/dist/proof/merkle.d.ts +24 -19
  335. package/dist/proof/merkle.d.ts.map +1 -1
  336. package/dist/proof/merkle.js +118 -32
  337. package/dist/proof/merkle.js.map +1 -1
  338. package/dist/proof/zk-proofs.d.ts +6 -24
  339. package/dist/proof/zk-proofs.d.ts.map +1 -1
  340. package/dist/proof/zk-proofs.js +45 -42
  341. package/dist/proof/zk-proofs.js.map +1 -1
  342. package/dist/provenance/index.d.ts +3 -11
  343. package/dist/provenance/index.d.ts.map +1 -1
  344. package/dist/provenance/index.js +19 -19
  345. package/dist/provenance/index.js.map +1 -1
  346. package/dist/provenance/types.d.ts +4 -4
  347. package/dist/provenance/types.d.ts.map +1 -1
  348. package/dist/provenance/types.js +2 -8
  349. package/dist/provenance/types.js.map +1 -1
  350. package/dist/sandbox-training/challenges.d.ts +1 -1
  351. package/dist/sandbox-training/challenges.d.ts.map +1 -1
  352. package/dist/sandbox-training/challenges.js +230 -236
  353. package/dist/sandbox-training/challenges.js.map +1 -1
  354. package/dist/sandbox-training/graduation.d.ts +1 -1
  355. package/dist/sandbox-training/graduation.d.ts.map +1 -1
  356. package/dist/sandbox-training/graduation.js +17 -22
  357. package/dist/sandbox-training/graduation.js.map +1 -1
  358. package/dist/sandbox-training/index.d.ts +9 -9
  359. package/dist/sandbox-training/index.d.ts.map +1 -1
  360. package/dist/sandbox-training/index.js +8 -6
  361. package/dist/sandbox-training/index.js.map +1 -1
  362. package/dist/sandbox-training/promotion-service.d.ts +4 -4
  363. package/dist/sandbox-training/promotion-service.d.ts.map +1 -1
  364. package/dist/sandbox-training/promotion-service.js +7 -16
  365. package/dist/sandbox-training/promotion-service.js.map +1 -1
  366. package/dist/sandbox-training/runner.d.ts +1 -1
  367. package/dist/sandbox-training/runner.d.ts.map +1 -1
  368. package/dist/sandbox-training/runner.js +75 -82
  369. package/dist/sandbox-training/runner.js.map +1 -1
  370. package/dist/sandbox-training/scorer.d.ts +4 -4
  371. package/dist/sandbox-training/scorer.d.ts.map +1 -1
  372. package/dist/sandbox-training/scorer.js +7 -13
  373. package/dist/sandbox-training/scorer.js.map +1 -1
  374. package/dist/sandbox-training/types.d.ts +4 -4
  375. package/dist/sandbox-training/types.d.ts.map +1 -1
  376. package/dist/sandbox-training/types.js +9 -19
  377. package/dist/sandbox-training/types.js.map +1 -1
  378. package/dist/trust-engine/ceiling-enforcement/audit.d.ts +1 -9
  379. package/dist/trust-engine/ceiling-enforcement/audit.d.ts.map +1 -1
  380. package/dist/trust-engine/ceiling-enforcement/audit.js +6 -11
  381. package/dist/trust-engine/ceiling-enforcement/audit.js.map +1 -1
  382. package/dist/trust-engine/ceiling-enforcement/index.d.ts +2 -2
  383. package/dist/trust-engine/ceiling-enforcement/index.d.ts.map +1 -1
  384. package/dist/trust-engine/ceiling-enforcement/index.js +4 -2
  385. package/dist/trust-engine/ceiling-enforcement/index.js.map +1 -1
  386. package/dist/trust-engine/ceiling-enforcement/kernel.d.ts +12 -10
  387. package/dist/trust-engine/ceiling-enforcement/kernel.d.ts.map +1 -1
  388. package/dist/trust-engine/ceiling-enforcement/kernel.js +28 -20
  389. package/dist/trust-engine/ceiling-enforcement/kernel.js.map +1 -1
  390. package/dist/trust-engine/context-policy/enforcement.d.ts +0 -9
  391. package/dist/trust-engine/context-policy/enforcement.d.ts.map +1 -1
  392. package/dist/trust-engine/context-policy/enforcement.js +2 -9
  393. package/dist/trust-engine/context-policy/enforcement.js.map +1 -1
  394. package/dist/trust-engine/context-policy/factory.d.ts +1 -1
  395. package/dist/trust-engine/context-policy/factory.d.ts.map +1 -1
  396. package/dist/trust-engine/context-policy/factory.js +3 -1
  397. package/dist/trust-engine/context-policy/factory.js.map +1 -1
  398. package/dist/trust-engine/context-policy/index.d.ts +2 -2
  399. package/dist/trust-engine/context-policy/index.d.ts.map +1 -1
  400. package/dist/trust-engine/context-policy/index.js +4 -2
  401. package/dist/trust-engine/context-policy/index.js.map +1 -1
  402. package/dist/trust-engine/creation-modifiers/index.d.ts +1 -1
  403. package/dist/trust-engine/creation-modifiers/index.d.ts.map +1 -1
  404. package/dist/trust-engine/creation-modifiers/index.js +3 -1
  405. package/dist/trust-engine/creation-modifiers/index.js.map +1 -1
  406. package/dist/trust-engine/creation-modifiers/types.d.ts.map +1 -1
  407. package/dist/trust-engine/creation-modifiers/types.js +5 -2
  408. package/dist/trust-engine/creation-modifiers/types.js.map +1 -1
  409. package/dist/trust-engine/decay-profiles.d.ts +37 -136
  410. package/dist/trust-engine/decay-profiles.d.ts.map +1 -1
  411. package/dist/trust-engine/decay-profiles.js +61 -183
  412. package/dist/trust-engine/decay-profiles.js.map +1 -1
  413. package/dist/trust-engine/index.d.ts +327 -22
  414. package/dist/trust-engine/index.d.ts.map +1 -1
  415. package/dist/trust-engine/index.js +706 -130
  416. package/dist/trust-engine/index.js.map +1 -1
  417. package/dist/trust-engine/phase6-types.d.ts +15 -18
  418. package/dist/trust-engine/phase6-types.d.ts.map +1 -1
  419. package/dist/trust-engine/phase6-types.js +32 -36
  420. package/dist/trust-engine/phase6-types.js.map +1 -1
  421. package/dist/trust-engine/trust-verifier.d.ts +121 -0
  422. package/dist/trust-engine/trust-verifier.d.ts.map +1 -0
  423. package/dist/trust-engine/trust-verifier.js +226 -0
  424. package/dist/trust-engine/trust-verifier.js.map +1 -0
  425. package/package.json +140 -135
  426. package/dist/enforce/types.d.ts +0 -234
  427. package/dist/enforce/types.d.ts.map +0 -1
  428. package/dist/enforce/types.js +0 -10
  429. package/dist/enforce/types.js.map +0 -1
  430. package/dist/intent/types.d.ts +0 -69
  431. package/dist/intent/types.d.ts.map +0 -1
  432. package/dist/intent/types.js +0 -10
  433. package/dist/intent/types.js.map +0 -1
  434. package/dist/trust-engine/types.d.ts +0 -77
  435. package/dist/trust-engine/types.d.ts.map +0 -1
  436. package/dist/trust-engine/types.js +0 -20
  437. package/dist/trust-engine/types.js.map +0 -1
@@ -0,0 +1,209 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2024-2026 Vorion LLC
3
+ // ---------------------------------------------------------------------------
4
+ // Defaults
5
+ // ---------------------------------------------------------------------------
6
+ const DEFAULT_ENVELOPE_CONFIG = {
7
+ k: 3.0,
8
+ breachThreshold: 3,
9
+ dimensions: 6,
10
+ measurementIntervalMs: 300_000, // 5 minutes
11
+ maxBreachCounter: 100,
12
+ };
13
+ // ---------------------------------------------------------------------------
14
+ // CognitiveEnvelope
15
+ // ---------------------------------------------------------------------------
16
+ export class CognitiveEnvelope {
17
+ config;
18
+ // Baseline statistics
19
+ mu = [];
20
+ sigma = [];
21
+ lowerBounds = [];
22
+ upperBounds = [];
23
+ baselined = false;
24
+ // Breach tracking
25
+ breachCounter = 0;
26
+ lastCheckMs = 0;
27
+ constructor(config) {
28
+ this.config = { ...DEFAULT_ENVELOPE_CONFIG, ...config };
29
+ if (this.config.dimensions < 1) {
30
+ throw new Error('dimensions must be >= 1');
31
+ }
32
+ if (this.config.k <= 0) {
33
+ throw new Error('k must be > 0');
34
+ }
35
+ if (this.config.breachThreshold < 1) {
36
+ throw new Error('breachThreshold must be >= 1');
37
+ }
38
+ }
39
+ // -----------------------------------------------------------------------
40
+ // Public API
41
+ // -----------------------------------------------------------------------
42
+ /**
43
+ * Establish the envelope baseline from an observation period.
44
+ *
45
+ * @param measurements Array of observation vectors. Each inner array has
46
+ * length equal to `config.dimensions`. At least 2
47
+ * observations are required to compute sigma.
48
+ */
49
+ baselineFromObservations(measurements) {
50
+ const D = this.config.dimensions;
51
+ if (measurements.length < 2) {
52
+ throw new Error('At least 2 observations required to establish a baseline');
53
+ }
54
+ for (const m of measurements) {
55
+ if (m.length !== D) {
56
+ throw new Error(`Measurement vector length ${m.length} does not match configured dimensions ${D}`);
57
+ }
58
+ }
59
+ const N = measurements.length;
60
+ this.mu = new Array(D).fill(0);
61
+ this.sigma = new Array(D).fill(0);
62
+ // Compute mean
63
+ for (const m of measurements) {
64
+ for (let d = 0; d < D; d++) {
65
+ this.mu[d] += m[d];
66
+ }
67
+ }
68
+ for (let d = 0; d < D; d++) {
69
+ this.mu[d] /= N;
70
+ }
71
+ // Compute sample standard deviation
72
+ for (const m of measurements) {
73
+ for (let d = 0; d < D; d++) {
74
+ const diff = m[d] - this.mu[d];
75
+ this.sigma[d] += diff * diff;
76
+ }
77
+ }
78
+ for (let d = 0; d < D; d++) {
79
+ this.sigma[d] = Math.sqrt(this.sigma[d] / (N - 1));
80
+ // Guard against zero variance: use a tiny epsilon
81
+ if (this.sigma[d] < 1e-15) {
82
+ this.sigma[d] = 1e-15;
83
+ }
84
+ }
85
+ // Compute bounds
86
+ this.lowerBounds = new Array(D);
87
+ this.upperBounds = new Array(D);
88
+ for (let d = 0; d < D; d++) {
89
+ this.lowerBounds[d] = this.mu[d] - this.config.k * this.sigma[d];
90
+ this.upperBounds[d] = this.mu[d] + this.config.k * this.sigma[d];
91
+ }
92
+ this.baselined = true;
93
+ this.breachCounter = 0;
94
+ }
95
+ /**
96
+ * Check a current characteristic vector against the envelope.
97
+ *
98
+ * Breach counter increments on any-dimension breach and decrements
99
+ * (towards 0) on a clean check. Trust multiplier is determined by
100
+ * the counter value relative to the threshold.
101
+ */
102
+ checkBreach(currentChars) {
103
+ if (!this.baselined) {
104
+ throw new Error('Envelope not baselined — call baselineFromObservations() first');
105
+ }
106
+ const D = this.config.dimensions;
107
+ if (currentChars.length !== D) {
108
+ throw new Error(`Characteristic vector length ${currentChars.length} does not match dimensions ${D}`);
109
+ }
110
+ // Rate-limit checks
111
+ const now = Date.now();
112
+ if (this.lastCheckMs > 0 && now - this.lastCheckMs < this.config.measurementIntervalMs) {
113
+ // Return a clean result without modifying state
114
+ return {
115
+ breached: this.breachCounter >= this.config.breachThreshold,
116
+ trustMultiplier: this.currentTrustMultiplier(),
117
+ breachCounter: this.breachCounter,
118
+ dimensionBreaches: new Array(D).fill(false),
119
+ maxDeviation: 0,
120
+ };
121
+ }
122
+ this.lastCheckMs = now;
123
+ // Per-dimension breach check
124
+ const dimensionBreaches = new Array(D);
125
+ let anyBreach = false;
126
+ let maxDeviation = 0;
127
+ for (let d = 0; d < D; d++) {
128
+ const deviation = Math.abs(currentChars[d] - this.mu[d]) / this.sigma[d];
129
+ if (deviation > maxDeviation)
130
+ maxDeviation = deviation;
131
+ const outside = currentChars[d] < this.lowerBounds[d] || currentChars[d] > this.upperBounds[d];
132
+ dimensionBreaches[d] = outside;
133
+ if (outside)
134
+ anyBreach = true;
135
+ }
136
+ // Update breach counter
137
+ if (anyBreach) {
138
+ this.breachCounter++;
139
+ // Clamp to maxBreachCounter to cap recovery cost from sustained attacks
140
+ if (this.breachCounter > this.config.maxBreachCounter) {
141
+ this.breachCounter = this.config.maxBreachCounter;
142
+ }
143
+ }
144
+ else {
145
+ // Decrement towards zero on clean check
146
+ if (this.breachCounter > 0)
147
+ this.breachCounter--;
148
+ }
149
+ const breached = this.breachCounter >= this.config.breachThreshold;
150
+ return {
151
+ breached,
152
+ trustMultiplier: this.currentTrustMultiplier(),
153
+ breachCounter: this.breachCounter,
154
+ dimensionBreaches,
155
+ maxDeviation,
156
+ };
157
+ }
158
+ /**
159
+ * Get the current internal state of the envelope.
160
+ */
161
+ getState() {
162
+ return {
163
+ baselined: this.baselined,
164
+ mu: [...this.mu],
165
+ sigma: [...this.sigma],
166
+ breachCounter: this.breachCounter,
167
+ lastCheckMs: this.lastCheckMs,
168
+ lowerBounds: [...this.lowerBounds],
169
+ upperBounds: [...this.upperBounds],
170
+ };
171
+ }
172
+ /**
173
+ * Reset the breach counter to zero without clearing the baseline.
174
+ */
175
+ reset() {
176
+ this.breachCounter = 0;
177
+ this.lastCheckMs = 0;
178
+ }
179
+ /**
180
+ * Fully clear the baseline and all state.
181
+ */
182
+ clearBaseline() {
183
+ this.mu = [];
184
+ this.sigma = [];
185
+ this.lowerBounds = [];
186
+ this.upperBounds = [];
187
+ this.baselined = false;
188
+ this.breachCounter = 0;
189
+ this.lastCheckMs = 0;
190
+ }
191
+ // -----------------------------------------------------------------------
192
+ // Internal
193
+ // -----------------------------------------------------------------------
194
+ /**
195
+ * Compute the trust multiplier based on breach counter.
196
+ *
197
+ * - counter == 0 → 1.0 (normal)
198
+ * - 0 < counter < threshold → 0.9 (approaching breach)
199
+ * - counter >= threshold → 0.7 (full breach)
200
+ */
201
+ currentTrustMultiplier() {
202
+ if (this.breachCounter <= 0)
203
+ return 1.0;
204
+ if (this.breachCounter < this.config.breachThreshold)
205
+ return 0.9;
206
+ return 0.7;
207
+ }
208
+ }
209
+ //# sourceMappingURL=cognitive-envelope.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cognitive-envelope.js","sourceRoot":"","sources":["../../src/paramesphere/cognitive-envelope.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Envelope Integration — Connects CognitiveEnvelope to TrustEngine.
3
+ *
4
+ * Thin adapter that periodically runs the envelope's `checkBreach()` against
5
+ * a caller-supplied dimension vector and, when a breach is detected, records
6
+ * a trust signal via `TrustEngine.recordSignal()`.
7
+ *
8
+ * The monitor runs on an interval (default 60 s) and is fully decoupled:
9
+ * the envelope decides whether there is a breach, and this module just
10
+ * translates that into trust signals. Breach history is kept for audit.
11
+ *
12
+ * @packageDocumentation
13
+ */
14
+ import type { CognitiveEnvelope } from './cognitive-envelope.js';
15
+ import type { BreachResult } from './types.js';
16
+ import type { TrustEngine } from '../trust-engine/index.js';
17
+ /** Configuration for the envelope-to-engine integration. */
18
+ export interface EnvelopeIntegrationConfig {
19
+ /** Interval between automatic breach checks in milliseconds. Default: 60 000 (1 min). */
20
+ checkIntervalMs?: number;
21
+ /** Entity ID whose trust score will receive breach signals. */
22
+ entityId: string;
23
+ /** Function that returns the current characteristic vector (6 dimensions). */
24
+ getDimensions: () => number[];
25
+ }
26
+ /** A recorded breach event kept for audit. */
27
+ export interface BreachHistoryEntry {
28
+ timestamp: string;
29
+ result: BreachResult;
30
+ signalId: string;
31
+ }
32
+ /** Handle returned by {@link connectEnvelopeToTrustEngine}. */
33
+ export interface EnvelopeMonitor {
34
+ /** Stop the interval and release resources. */
35
+ stop(): void;
36
+ /** Read-only copy of breach history. */
37
+ getBreachHistory(): BreachHistoryEntry[];
38
+ /** Number of checks executed so far. */
39
+ getCheckCount(): number;
40
+ /** Whether the monitor interval is currently running. */
41
+ isRunning(): boolean;
42
+ }
43
+ /**
44
+ * Wire a CognitiveEnvelope's breach detection to a TrustEngine.
45
+ *
46
+ * Starts an interval that calls `envelope.checkBreach(getDimensions())`.
47
+ * When a breach is detected, a trust signal is recorded with the
48
+ * `trustMultiplier` as the signal value (0.7 for full breach, 0.9 for
49
+ * approaching) and metadata describing the breach.
50
+ *
51
+ * @returns An {@link EnvelopeMonitor} handle — call `.stop()` to tear down.
52
+ */
53
+ export declare function connectEnvelopeToTrustEngine(envelope: CognitiveEnvelope, engine: TrustEngine, config: EnvelopeIntegrationConfig): EnvelopeMonitor;
54
+ /**
55
+ * Stop an EnvelopeMonitor and release its interval.
56
+ *
57
+ * Convenience wrapper — equivalent to `monitor.stop()`.
58
+ */
59
+ export declare function disconnectEnvelope(monitor: EnvelopeMonitor): void;
60
+ //# sourceMappingURL=envelope-integration.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envelope-integration.d.ts","sourceRoot":"","sources":["../../src/paramesphere/envelope-integration.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAM5D,4DAA4D;AAC5D,MAAM,WAAW,yBAAyB;IACxC,yFAAyF;IACzF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+DAA+D;IAC/D,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,aAAa,EAAE,MAAM,MAAM,EAAE,CAAC;CAC/B;AAED,8CAA8C;AAC9C,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,YAAY,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,+CAA+C;IAC/C,IAAI,IAAI,IAAI,CAAC;IACb,wCAAwC;IACxC,gBAAgB,IAAI,kBAAkB,EAAE,CAAC;IACzC,wCAAwC;IACxC,aAAa,IAAI,MAAM,CAAC;IACxB,yDAAyD;IACzD,SAAS,IAAI,OAAO,CAAC;CACtB;AAcD;;;;;;;;;GASG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,iBAAiB,EAC3B,MAAM,EAAE,WAAW,EACnB,MAAM,EAAE,yBAAyB,GAChC,eAAe,CA0EjB;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,CAEjE"}
@@ -0,0 +1,93 @@
1
+ // SPDX-License-Identifier: Apache-2.0
2
+ // Copyright 2024-2026 Vorion LLC
3
+ // ---------------------------------------------------------------------------
4
+ // Defaults
5
+ // ---------------------------------------------------------------------------
6
+ const DEFAULT_CHECK_INTERVAL_MS = 60_000;
7
+ const SIGNAL_SOURCE = 'cognitive-envelope';
8
+ const SIGNAL_TYPE_BREACH = 'ENVELOPE_BREACH';
9
+ // ---------------------------------------------------------------------------
10
+ // Public API
11
+ // ---------------------------------------------------------------------------
12
+ /**
13
+ * Wire a CognitiveEnvelope's breach detection to a TrustEngine.
14
+ *
15
+ * Starts an interval that calls `envelope.checkBreach(getDimensions())`.
16
+ * When a breach is detected, a trust signal is recorded with the
17
+ * `trustMultiplier` as the signal value (0.7 for full breach, 0.9 for
18
+ * approaching) and metadata describing the breach.
19
+ *
20
+ * @returns An {@link EnvelopeMonitor} handle — call `.stop()` to tear down.
21
+ */
22
+ export function connectEnvelopeToTrustEngine(envelope, engine, config) {
23
+ if (!config.entityId) {
24
+ throw new Error('entityId is required');
25
+ }
26
+ if (typeof config.getDimensions !== 'function') {
27
+ throw new Error('getDimensions must be a function');
28
+ }
29
+ const intervalMs = config.checkIntervalMs ?? DEFAULT_CHECK_INTERVAL_MS;
30
+ if (intervalMs <= 0) {
31
+ throw new Error('checkIntervalMs must be > 0');
32
+ }
33
+ const breachHistory = [];
34
+ let checkCount = 0;
35
+ let running = true;
36
+ // The core check function — also exported on the monitor for manual invocation in tests.
37
+ function runCheck() {
38
+ const dims = config.getDimensions();
39
+ const result = envelope.checkBreach(dims);
40
+ checkCount++;
41
+ if (result.breached) {
42
+ const signalId = `${SIGNAL_SOURCE}-${config.entityId}-${Date.now()}`;
43
+ const signal = {
44
+ id: signalId,
45
+ entityId: config.entityId,
46
+ type: SIGNAL_TYPE_BREACH,
47
+ value: result.trustMultiplier,
48
+ source: SIGNAL_SOURCE,
49
+ timestamp: new Date().toISOString(),
50
+ metadata: {
51
+ breachCounter: result.breachCounter,
52
+ maxDeviation: result.maxDeviation,
53
+ dimensionBreaches: result.dimensionBreaches,
54
+ trustMultiplier: result.trustMultiplier,
55
+ },
56
+ };
57
+ breachHistory.push({
58
+ timestamp: signal.timestamp,
59
+ result,
60
+ signalId,
61
+ });
62
+ void engine.recordSignal(signal);
63
+ }
64
+ }
65
+ const timer = setInterval(runCheck, intervalMs);
66
+ const monitor = {
67
+ stop() {
68
+ if (!running)
69
+ return;
70
+ clearInterval(timer);
71
+ running = false;
72
+ },
73
+ getBreachHistory() {
74
+ return [...breachHistory];
75
+ },
76
+ getCheckCount() {
77
+ return checkCount;
78
+ },
79
+ isRunning() {
80
+ return running;
81
+ },
82
+ };
83
+ return monitor;
84
+ }
85
+ /**
86
+ * Stop an EnvelopeMonitor and release its interval.
87
+ *
88
+ * Convenience wrapper — equivalent to `monitor.stop()`.
89
+ */
90
+ export function disconnectEnvelope(monitor) {
91
+ monitor.stop();
92
+ }
93
+ //# sourceMappingURL=envelope-integration.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"envelope-integration.js","sourceRoot":"","sources":["../../src/paramesphere/envelope-integration.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,iCAAiC;AAqDjC,8EAA8E;AAC9E,WAAW;AACX,8EAA8E;AAE9E,MAAM,yBAAyB,GAAG,MAAM,CAAC;AACzC,MAAM,aAAa,GAAG,oBAAoB,CAAC;AAC3C,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAE7C,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,MAAM,UAAU,4BAA4B,CAC1C,QAA2B,EAC3B,MAAmB,EACnB,MAAiC;IAEjC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,eAAe,IAAI,yBAAyB,CAAC;IACvE,IAAI,UAAU,IAAI,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,aAAa,GAAyB,EAAE,CAAC;IAC/C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,yFAAyF;IACzF,SAAS,QAAQ;QACf,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,EAAE,CAAC;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC1C,UAAU,EAAE,CAAC;QAEb,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACpB,MAAM,QAAQ,GAAG,GAAG,aAAa,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAErE,MAAM,MAAM,GAAG;gBACb,EAAE,EAAE,QAAQ;gBACZ,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,IAAI,EAAE,kBAAkB;gBACxB,KAAK,EAAE,MAAM,CAAC,eAAe;gBAC7B,MAAM,EAAE,aAAa;gBACrB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,QAAQ,EAAE;oBACR,aAAa,EAAE,MAAM,CAAC,aAAa;oBACnC,YAAY,EAAE,MAAM,CAAC,YAAY;oBACjC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;oBAC3C,eAAe,EAAE,MAAM,CAAC,eAAe;iBACxC;aACF,CAAC;YAEF,aAAa,CAAC,IAAI,CAAC;gBACjB,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,MAAM;gBACN,QAAQ;aACT,CAAC,CAAC;YAEH,KAAK,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAEhD,MAAM,OAAO,GAAoB;QAC/B,IAAI;YACF,IAAI,CAAC,OAAO;gBAAE,OAAO;YACrB,aAAa,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;QAED,gBAAgB;YACd,OAAO,CAAC,GAAG,aAAa,CAAC,CAAC;QAC5B,CAAC;QAED,aAAa;YACX,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,SAAS;YACP,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAwB;IACzD,OAAO,CAAC,IAAI,EAAE,CAAC;AACjB,CAAC"}
@@ -0,0 +1,136 @@
1
+ /**
2
+ * FingerprintMonitor — Scheduled fingerprinting with automatic alerting.
3
+ *
4
+ * Runs fingerprint checks on a configurable interval, emits callbacks on
5
+ * drift detection, and produces signal-ready objects when tampering is
6
+ * detected. Deliberately decoupled from the trust engine — the monitor
7
+ * detects and reports, it never directly modifies trust scores.
8
+ *
9
+ * Key behaviours:
10
+ * - First check for a given entity establishes its baseline fingerprint.
11
+ * - Subsequent checks compare against that baseline via
12
+ * `ParameSphereEngine.checkDrift()`.
13
+ * - Drift exceeding `driftThreshold` triggers the `onDriftDetected` callback.
14
+ * - Drift exceeding `2 × driftThreshold` is classified as *tampering* and
15
+ * triggers the `onTamperingDetected` callback.
16
+ * - When `emitTrustSignal` is true, `MonitorCheckResult` includes a
17
+ * signal-ready payload (`trustSignal`) that callers can forward to a
18
+ * trust engine without introducing a direct dependency.
19
+ *
20
+ * @packageDocumentation
21
+ */
22
+ import type { ParameSphereFingerprint, DriftResult } from './types.js';
23
+ import type { ParameSphereEngine } from './paramesphere-engine.js';
24
+ /** Configuration for the FingerprintMonitor. */
25
+ export interface FingerprintMonitorConfig {
26
+ /** ParameSphere engine instance used to compute and compare fingerprints. */
27
+ engine: ParameSphereEngine;
28
+ /** Interval between scheduled fingerprint checks, in milliseconds (default: 300 000 = 5 min). */
29
+ checkIntervalMs?: number;
30
+ /** Cosine-distance threshold that constitutes drift (default: 0.05). */
31
+ driftThreshold?: number;
32
+ /** Called whenever drift is detected. */
33
+ onDriftDetected?: (entityId: string, result: DriftResult) => void;
34
+ /** Called each time a fingerprint is successfully computed. */
35
+ onFingerprintTaken?: (entityId: string, fingerprint: ParameSphereFingerprint) => void;
36
+ /** Called when drift exceeds 2× threshold (severe — likely tampering). */
37
+ onTamperingDetected?: (entityId: string, result: DriftResult) => void;
38
+ /**
39
+ * When true, `MonitorCheckResult.trustSignal` is populated with a
40
+ * signal-ready object that consumers can forward to a trust engine.
41
+ * Default: true.
42
+ */
43
+ emitTrustSignal?: boolean;
44
+ }
45
+ /** Result of a single monitor check cycle. */
46
+ export interface MonitorCheckResult {
47
+ entityId: string;
48
+ fingerprint: ParameSphereFingerprint;
49
+ driftDetected: boolean;
50
+ /** Drift exceeds 2× threshold — severe / likely tampering. */
51
+ tamperingDetected: boolean;
52
+ /** Measured cosine distance from baseline (0 on first check). */
53
+ driftDistance: number;
54
+ checkedAt: Date;
55
+ /**
56
+ * Signal-ready object suitable for forwarding to a trust engine.
57
+ * Present only when `emitTrustSignal` is enabled AND drift or
58
+ * tampering was detected.
59
+ */
60
+ trustSignal?: TrustSignalPayload;
61
+ }
62
+ /** Lightweight trust signal payload — decoupled from the trust engine's own type. */
63
+ export interface TrustSignalPayload {
64
+ entityId: string;
65
+ type: string;
66
+ value: number;
67
+ source: string;
68
+ timestamp: string;
69
+ metadata: Record<string, unknown>;
70
+ }
71
+ /** Per-entity monitoring status. */
72
+ export interface MonitorStatus {
73
+ entityId: string;
74
+ lastCheck: Date | null;
75
+ checksCompleted: number;
76
+ driftsDetected: number;
77
+ tamperingsDetected: number;
78
+ status: 'monitoring' | 'stopped';
79
+ }
80
+ export declare class FingerprintMonitor {
81
+ private readonly engine;
82
+ private readonly checkIntervalMs;
83
+ private readonly driftThreshold;
84
+ private readonly emitTrustSignal;
85
+ private onDriftDetected?;
86
+ private onFingerprintTaken?;
87
+ private onTamperingDetected?;
88
+ private readonly entities;
89
+ constructor(config: FingerprintMonitorConfig);
90
+ /**
91
+ * Start monitoring an entity's model weights.
92
+ *
93
+ * The first scheduled check establishes the baseline fingerprint.
94
+ * Subsequent checks compare against that baseline.
95
+ *
96
+ * @param entityId Unique identifier for the monitored entity / model.
97
+ * @param getWeights Callback that returns the current weight matrices.
98
+ */
99
+ startMonitoring(entityId: string, getWeights: () => Float32Array[]): void;
100
+ /**
101
+ * Stop monitoring an entity. Clears the interval and marks status
102
+ * as `stopped`. The entity remains in the map so stats are queryable.
103
+ */
104
+ stopMonitoring(entityId: string): void;
105
+ /**
106
+ * Manually trigger a fingerprint check outside the scheduled interval.
107
+ */
108
+ checkNow(entityId: string): Promise<MonitorCheckResult>;
109
+ /**
110
+ * Get monitoring status for an entity.
111
+ */
112
+ getStatus(entityId: string): MonitorStatus | undefined;
113
+ /**
114
+ * List all entity IDs currently registered (monitoring or stopped).
115
+ */
116
+ getMonitoredEntities(): string[];
117
+ /**
118
+ * Replace the drift-detected callback. Allows integration layers to
119
+ * wire callbacks after construction without subclassing.
120
+ */
121
+ setOnDriftDetected(cb: ((entityId: string, result: DriftResult) => void) | undefined): void;
122
+ /**
123
+ * Replace the tampering-detected callback.
124
+ */
125
+ setOnTamperingDetected(cb: ((entityId: string, result: DriftResult) => void) | undefined): void;
126
+ /**
127
+ * Replace the fingerprint-taken callback.
128
+ */
129
+ setOnFingerprintTaken(cb: ((entityId: string, fingerprint: ParameSphereFingerprint) => void) | undefined): void;
130
+ /**
131
+ * Stop all monitored entities and clear all state.
132
+ */
133
+ shutdown(): void;
134
+ private runCheck;
135
+ }
136
+ //# sourceMappingURL=fingerprint-monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fingerprint-monitor.d.ts","sourceRoot":"","sources":["../../src/paramesphere/fingerprint-monitor.ts"],"names":[],"mappings":"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"}