@psiclawops/hypermem 0.9.1 → 0.9.3

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 (921) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/INSTALL.md +11 -2
  3. package/README.md +24 -24
  4. package/dist/adaptive-lifecycle.d.ts +81 -0
  5. package/dist/adaptive-lifecycle.d.ts.map +1 -0
  6. package/dist/adaptive-lifecycle.js +190 -0
  7. package/dist/background-indexer.d.ts +161 -0
  8. package/dist/background-indexer.d.ts.map +1 -0
  9. package/dist/background-indexer.js +1263 -0
  10. package/dist/budget-policy.d.ts +22 -0
  11. package/dist/budget-policy.d.ts.map +1 -0
  12. package/dist/budget-policy.js +32 -0
  13. package/dist/cache.d.ts +148 -0
  14. package/dist/cache.d.ts.map +1 -0
  15. package/dist/cache.js +571 -0
  16. package/dist/compaction-fence.d.ts +97 -0
  17. package/dist/compaction-fence.d.ts.map +1 -0
  18. package/dist/compaction-fence.js +174 -0
  19. package/dist/composition-snapshot-integrity.d.ts +36 -0
  20. package/dist/composition-snapshot-integrity.d.ts.map +1 -0
  21. package/dist/composition-snapshot-integrity.js +131 -0
  22. package/dist/composition-snapshot-runtime.d.ts +59 -0
  23. package/dist/composition-snapshot-runtime.d.ts.map +1 -0
  24. package/dist/composition-snapshot-runtime.js +250 -0
  25. package/dist/composition-snapshot-store.d.ts +44 -0
  26. package/dist/composition-snapshot-store.d.ts.map +1 -0
  27. package/dist/composition-snapshot-store.js +117 -0
  28. package/dist/compositor.d.ts +518 -0
  29. package/dist/compositor.d.ts.map +1 -0
  30. package/dist/compositor.js +4280 -0
  31. package/dist/content-type-classifier.d.ts +41 -0
  32. package/dist/content-type-classifier.d.ts.map +1 -0
  33. package/dist/content-type-classifier.js +181 -0
  34. package/dist/context-backfill.d.ts +46 -0
  35. package/dist/context-backfill.d.ts.map +1 -0
  36. package/dist/context-backfill.js +113 -0
  37. package/dist/context-store.d.ts +131 -0
  38. package/dist/context-store.d.ts.map +1 -0
  39. package/dist/context-store.js +279 -0
  40. package/dist/contradiction-audit-store.d.ts +54 -0
  41. package/dist/contradiction-audit-store.d.ts.map +1 -0
  42. package/dist/contradiction-audit-store.js +88 -0
  43. package/dist/contradiction-detector.d.ts +78 -0
  44. package/dist/contradiction-detector.d.ts.map +1 -0
  45. package/dist/contradiction-detector.js +362 -0
  46. package/dist/contradiction-resolution-policy.d.ts +21 -0
  47. package/dist/contradiction-resolution-policy.d.ts.map +1 -0
  48. package/dist/contradiction-resolution-policy.js +17 -0
  49. package/dist/cross-agent.d.ts +74 -0
  50. package/dist/cross-agent.d.ts.map +1 -0
  51. package/dist/cross-agent.js +271 -0
  52. package/dist/db.d.ts +131 -0
  53. package/dist/db.d.ts.map +1 -0
  54. package/dist/db.js +410 -0
  55. package/dist/degradation.d.ts +102 -0
  56. package/dist/degradation.d.ts.map +1 -0
  57. package/dist/degradation.js +141 -0
  58. package/dist/desired-state-store.d.ts +100 -0
  59. package/dist/desired-state-store.d.ts.map +1 -0
  60. package/dist/desired-state-store.js +222 -0
  61. package/dist/doc-chunk-store.d.ts +159 -0
  62. package/dist/doc-chunk-store.d.ts.map +1 -0
  63. package/dist/doc-chunk-store.js +441 -0
  64. package/dist/doc-chunker.d.ts +99 -0
  65. package/dist/doc-chunker.d.ts.map +1 -0
  66. package/dist/doc-chunker.js +324 -0
  67. package/dist/dreaming-promoter.d.ts +124 -0
  68. package/dist/dreaming-promoter.d.ts.map +1 -0
  69. package/dist/dreaming-promoter.js +447 -0
  70. package/dist/episode-store.d.ts +49 -0
  71. package/dist/episode-store.d.ts.map +1 -0
  72. package/dist/episode-store.js +135 -0
  73. package/dist/expertise-store.d.ts +129 -0
  74. package/dist/expertise-store.d.ts.map +1 -0
  75. package/dist/expertise-store.js +342 -0
  76. package/dist/fact-store.d.ts +90 -0
  77. package/dist/fact-store.d.ts.map +1 -0
  78. package/dist/fact-store.js +283 -0
  79. package/dist/fleet-store.d.ts +144 -0
  80. package/dist/fleet-store.d.ts.map +1 -0
  81. package/dist/fleet-store.js +276 -0
  82. package/dist/fos-mod.d.ts +178 -0
  83. package/dist/fos-mod.d.ts.map +1 -0
  84. package/dist/fos-mod.js +416 -0
  85. package/dist/hybrid-retrieval.d.ts +102 -0
  86. package/dist/hybrid-retrieval.d.ts.map +1 -0
  87. package/dist/hybrid-retrieval.js +429 -0
  88. package/dist/image-eviction.d.ts +49 -0
  89. package/dist/image-eviction.d.ts.map +1 -0
  90. package/dist/image-eviction.js +251 -0
  91. package/dist/index.d.ts +735 -0
  92. package/dist/index.d.ts.map +1 -0
  93. package/dist/index.js +1542 -0
  94. package/dist/keystone-scorer.d.ts +51 -0
  95. package/dist/keystone-scorer.d.ts.map +1 -0
  96. package/dist/keystone-scorer.js +52 -0
  97. package/dist/knowledge-graph.d.ts +110 -0
  98. package/dist/knowledge-graph.d.ts.map +1 -0
  99. package/dist/knowledge-graph.js +305 -0
  100. package/dist/knowledge-lint.d.ts +31 -0
  101. package/dist/knowledge-lint.d.ts.map +1 -0
  102. package/dist/knowledge-lint.js +155 -0
  103. package/dist/knowledge-store.d.ts +75 -0
  104. package/dist/knowledge-store.d.ts.map +1 -0
  105. package/dist/knowledge-store.js +270 -0
  106. package/dist/library-schema.d.ts +31 -0
  107. package/dist/library-schema.d.ts.map +1 -0
  108. package/dist/library-schema.js +1357 -0
  109. package/dist/message-store.d.ts +181 -0
  110. package/dist/message-store.d.ts.map +1 -0
  111. package/dist/message-store.js +577 -0
  112. package/dist/metrics-dashboard.d.ts +131 -0
  113. package/dist/metrics-dashboard.d.ts.map +1 -0
  114. package/dist/metrics-dashboard.js +298 -0
  115. package/dist/obsidian-exporter.d.ts +57 -0
  116. package/dist/obsidian-exporter.d.ts.map +1 -0
  117. package/dist/obsidian-exporter.js +274 -0
  118. package/dist/obsidian-watcher.d.ts +147 -0
  119. package/dist/obsidian-watcher.d.ts.map +1 -0
  120. package/dist/obsidian-watcher.js +403 -0
  121. package/dist/open-domain.d.ts +46 -0
  122. package/dist/open-domain.d.ts.map +1 -0
  123. package/dist/open-domain.js +125 -0
  124. package/dist/preference-store.d.ts +54 -0
  125. package/dist/preference-store.d.ts.map +1 -0
  126. package/dist/preference-store.js +109 -0
  127. package/dist/preservation-gate.d.ts +82 -0
  128. package/dist/preservation-gate.d.ts.map +1 -0
  129. package/dist/preservation-gate.js +150 -0
  130. package/dist/proactive-pass.d.ts +63 -0
  131. package/dist/proactive-pass.d.ts.map +1 -0
  132. package/dist/proactive-pass.js +293 -0
  133. package/dist/profiles.d.ts +46 -0
  134. package/dist/profiles.d.ts.map +1 -0
  135. package/dist/profiles.js +262 -0
  136. package/dist/provider-translator.d.ts +50 -0
  137. package/dist/provider-translator.d.ts.map +1 -0
  138. package/dist/provider-translator.js +403 -0
  139. package/dist/rate-limiter.d.ts +76 -0
  140. package/dist/rate-limiter.d.ts.map +1 -0
  141. package/dist/rate-limiter.js +179 -0
  142. package/dist/repair-tool-pairs.d.ts +38 -0
  143. package/dist/repair-tool-pairs.d.ts.map +1 -0
  144. package/dist/repair-tool-pairs.js +209 -0
  145. package/dist/replay-recovery.d.ts +29 -0
  146. package/dist/replay-recovery.d.ts.map +1 -0
  147. package/dist/replay-recovery.js +82 -0
  148. package/dist/reranker.d.ts +95 -0
  149. package/dist/reranker.d.ts.map +1 -0
  150. package/dist/reranker.js +308 -0
  151. package/dist/retrieval-policy.d.ts +51 -0
  152. package/dist/retrieval-policy.d.ts.map +1 -0
  153. package/dist/retrieval-policy.js +77 -0
  154. package/dist/schema.d.ts +15 -0
  155. package/dist/schema.d.ts.map +1 -0
  156. package/dist/schema.js +327 -0
  157. package/dist/secret-scanner.d.ts +51 -0
  158. package/dist/secret-scanner.d.ts.map +1 -0
  159. package/dist/secret-scanner.js +248 -0
  160. package/dist/seed.d.ts +108 -0
  161. package/dist/seed.d.ts.map +1 -0
  162. package/dist/seed.js +179 -0
  163. package/dist/session-flusher.d.ts +53 -0
  164. package/dist/session-flusher.d.ts.map +1 -0
  165. package/dist/session-flusher.js +69 -0
  166. package/dist/session-topic-map.d.ts +41 -0
  167. package/dist/session-topic-map.d.ts.map +1 -0
  168. package/dist/session-topic-map.js +77 -0
  169. package/dist/spawn-context.d.ts +54 -0
  170. package/dist/spawn-context.d.ts.map +1 -0
  171. package/dist/spawn-context.js +159 -0
  172. package/dist/system-store.d.ts +73 -0
  173. package/dist/system-store.d.ts.map +1 -0
  174. package/dist/system-store.js +182 -0
  175. package/dist/temporal-store.d.ts +81 -0
  176. package/dist/temporal-store.d.ts.map +1 -0
  177. package/dist/temporal-store.js +149 -0
  178. package/dist/tool-artifact-store.d.ts +98 -0
  179. package/dist/tool-artifact-store.d.ts.map +1 -0
  180. package/dist/tool-artifact-store.js +244 -0
  181. package/dist/topic-detector.d.ts +35 -0
  182. package/dist/topic-detector.d.ts.map +1 -0
  183. package/dist/topic-detector.js +249 -0
  184. package/dist/topic-store.d.ts +51 -0
  185. package/dist/topic-store.d.ts.map +1 -0
  186. package/dist/topic-store.js +175 -0
  187. package/dist/topic-synthesizer.d.ts +71 -0
  188. package/dist/topic-synthesizer.d.ts.map +1 -0
  189. package/dist/topic-synthesizer.js +426 -0
  190. package/dist/trigger-registry.d.ts +63 -0
  191. package/dist/trigger-registry.d.ts.map +1 -0
  192. package/dist/trigger-registry.js +171 -0
  193. package/dist/types.d.ts +1085 -0
  194. package/dist/types.d.ts.map +1 -0
  195. package/dist/types.js +9 -0
  196. package/dist/vector-store.d.ts +180 -0
  197. package/dist/vector-store.d.ts.map +1 -0
  198. package/dist/vector-store.js +1041 -0
  199. package/dist/version.d.ts +34 -0
  200. package/dist/version.d.ts.map +1 -0
  201. package/dist/version.js +44 -0
  202. package/dist/wiki-page-emitter.d.ts +65 -0
  203. package/dist/wiki-page-emitter.d.ts.map +1 -0
  204. package/dist/wiki-page-emitter.js +258 -0
  205. package/dist/work-store.d.ts +112 -0
  206. package/dist/work-store.d.ts.map +1 -0
  207. package/dist/work-store.js +273 -0
  208. package/docs/MEMORY_MD_AUTHORING.md +3 -3
  209. package/docs/ROADMAP.md +2 -2
  210. package/install.sh +34 -0
  211. package/memory-plugin/dist/index.d.ts +24 -0
  212. package/memory-plugin/dist/index.js +378 -0
  213. package/memory-plugin/package.json +4 -2
  214. package/node_modules/sqlite-vec/README.md +1 -0
  215. package/node_modules/sqlite-vec/index.cjs +46 -0
  216. package/node_modules/sqlite-vec/index.d.ts +17 -0
  217. package/node_modules/sqlite-vec/index.mjs +47 -0
  218. package/node_modules/sqlite-vec/package.json +1 -0
  219. package/node_modules/sqlite-vec-linux-x64/README.md +1 -0
  220. package/node_modules/sqlite-vec-linux-x64/package.json +1 -0
  221. package/node_modules/sqlite-vec-linux-x64/vec0.so +0 -0
  222. package/node_modules/zod/LICENSE +21 -0
  223. package/node_modules/zod/README.md +208 -0
  224. package/node_modules/zod/index.cjs +33 -0
  225. package/node_modules/zod/index.d.cts +4 -0
  226. package/node_modules/zod/index.d.ts +4 -0
  227. package/node_modules/zod/index.js +4 -0
  228. package/node_modules/zod/locales/index.cjs +17 -0
  229. package/node_modules/zod/locales/index.d.cts +1 -0
  230. package/node_modules/zod/locales/index.d.ts +1 -0
  231. package/node_modules/zod/locales/index.js +1 -0
  232. package/node_modules/zod/locales/package.json +6 -0
  233. package/node_modules/zod/mini/index.cjs +32 -0
  234. package/node_modules/zod/mini/index.d.cts +3 -0
  235. package/node_modules/zod/mini/index.d.ts +3 -0
  236. package/node_modules/zod/mini/index.js +3 -0
  237. package/node_modules/zod/mini/package.json +6 -0
  238. package/node_modules/zod/package.json +135 -0
  239. package/node_modules/zod/src/index.ts +4 -0
  240. package/node_modules/zod/src/locales/index.ts +1 -0
  241. package/node_modules/zod/src/mini/index.ts +3 -0
  242. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  243. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  244. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  245. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  246. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  247. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  248. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  249. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  250. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  251. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  252. package/node_modules/zod/src/v3/errors.ts +13 -0
  253. package/node_modules/zod/src/v3/external.ts +6 -0
  254. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  255. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  256. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  257. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  258. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  259. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  260. package/node_modules/zod/src/v3/index.ts +4 -0
  261. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  262. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  263. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  264. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  265. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  266. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  267. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  268. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  269. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  270. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  271. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  272. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  273. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  274. package/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  275. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  276. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  277. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  278. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  279. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  280. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  281. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  282. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  283. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  284. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  285. package/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  286. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  287. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  288. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  289. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  290. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  291. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  292. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  293. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  294. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  295. package/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  296. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  297. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  298. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  299. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  300. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  301. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  302. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  303. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  304. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  305. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  306. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  307. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  308. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  309. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  310. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  311. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  312. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  313. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  314. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  315. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  316. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  317. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  318. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  319. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  320. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  321. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  322. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  323. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  324. package/node_modules/zod/src/v3/types.ts +5138 -0
  325. package/node_modules/zod/src/v4/classic/checks.ts +32 -0
  326. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  327. package/node_modules/zod/src/v4/classic/compat.ts +70 -0
  328. package/node_modules/zod/src/v4/classic/errors.ts +82 -0
  329. package/node_modules/zod/src/v4/classic/external.ts +51 -0
  330. package/node_modules/zod/src/v4/classic/from-json-schema.ts +643 -0
  331. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  332. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  333. package/node_modules/zod/src/v4/classic/parse.ts +82 -0
  334. package/node_modules/zod/src/v4/classic/schemas.ts +2409 -0
  335. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  336. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  337. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  338. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
  339. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  340. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  341. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  342. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  343. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  344. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +276 -0
  345. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  346. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  347. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +562 -0
  348. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  349. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  350. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  351. package/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  352. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  353. package/node_modules/zod/src/v4/classic/tests/default.test.ts +365 -0
  354. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  355. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  356. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +661 -0
  357. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  358. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +595 -0
  359. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  360. package/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  361. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  362. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  363. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +734 -0
  364. package/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  365. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  366. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  367. package/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  368. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  369. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  370. package/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  371. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  372. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  373. package/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  374. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  375. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  376. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  377. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  378. package/node_modules/zod/src/v4/classic/tests/number.test.ts +270 -0
  379. package/node_modules/zod/src/v4/classic/tests/object.test.ts +640 -0
  380. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +223 -0
  381. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +427 -0
  382. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  383. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  384. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  385. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +282 -0
  386. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  387. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  388. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  389. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  390. package/node_modules/zod/src/v4/classic/tests/record.test.ts +632 -0
  391. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +582 -0
  392. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +570 -0
  393. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  394. package/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  395. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  396. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  397. package/node_modules/zod/src/v4/classic/tests/string.test.ts +1175 -0
  398. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  399. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  400. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  401. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2990 -0
  402. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +361 -0
  403. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +183 -0
  404. package/node_modules/zod/src/v4/classic/tests/union.test.ts +219 -0
  405. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  406. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  407. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  408. package/node_modules/zod/src/v4/core/api.ts +1798 -0
  409. package/node_modules/zod/src/v4/core/checks.ts +1293 -0
  410. package/node_modules/zod/src/v4/core/config.ts +15 -0
  411. package/node_modules/zod/src/v4/core/core.ts +138 -0
  412. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  413. package/node_modules/zod/src/v4/core/errors.ts +448 -0
  414. package/node_modules/zod/src/v4/core/index.ts +16 -0
  415. package/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  416. package/node_modules/zod/src/v4/core/json-schema-processors.ts +667 -0
  417. package/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  418. package/node_modules/zod/src/v4/core/parse.ts +195 -0
  419. package/node_modules/zod/src/v4/core/regexes.ts +183 -0
  420. package/node_modules/zod/src/v4/core/registries.ts +105 -0
  421. package/node_modules/zod/src/v4/core/schemas.ts +4538 -0
  422. package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  423. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  424. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  425. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  426. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  427. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  428. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  429. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  430. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  431. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  432. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +83 -0
  433. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +67 -0
  434. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  435. package/node_modules/zod/src/v4/core/to-json-schema.ts +613 -0
  436. package/node_modules/zod/src/v4/core/util.ts +966 -0
  437. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  438. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  439. package/node_modules/zod/src/v4/index.ts +4 -0
  440. package/node_modules/zod/src/v4/locales/ar.ts +115 -0
  441. package/node_modules/zod/src/v4/locales/az.ts +111 -0
  442. package/node_modules/zod/src/v4/locales/be.ts +176 -0
  443. package/node_modules/zod/src/v4/locales/bg.ts +128 -0
  444. package/node_modules/zod/src/v4/locales/ca.ts +116 -0
  445. package/node_modules/zod/src/v4/locales/cs.ts +118 -0
  446. package/node_modules/zod/src/v4/locales/da.ts +123 -0
  447. package/node_modules/zod/src/v4/locales/de.ts +116 -0
  448. package/node_modules/zod/src/v4/locales/en.ts +119 -0
  449. package/node_modules/zod/src/v4/locales/eo.ts +118 -0
  450. package/node_modules/zod/src/v4/locales/es.ts +141 -0
  451. package/node_modules/zod/src/v4/locales/fa.ts +126 -0
  452. package/node_modules/zod/src/v4/locales/fi.ts +121 -0
  453. package/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  454. package/node_modules/zod/src/v4/locales/fr.ts +116 -0
  455. package/node_modules/zod/src/v4/locales/he.ts +246 -0
  456. package/node_modules/zod/src/v4/locales/hu.ts +117 -0
  457. package/node_modules/zod/src/v4/locales/hy.ts +164 -0
  458. package/node_modules/zod/src/v4/locales/id.ts +115 -0
  459. package/node_modules/zod/src/v4/locales/index.ts +49 -0
  460. package/node_modules/zod/src/v4/locales/is.ts +119 -0
  461. package/node_modules/zod/src/v4/locales/it.ts +116 -0
  462. package/node_modules/zod/src/v4/locales/ja.ts +114 -0
  463. package/node_modules/zod/src/v4/locales/ka.ts +123 -0
  464. package/node_modules/zod/src/v4/locales/kh.ts +7 -0
  465. package/node_modules/zod/src/v4/locales/km.ts +119 -0
  466. package/node_modules/zod/src/v4/locales/ko.ts +121 -0
  467. package/node_modules/zod/src/v4/locales/lt.ts +239 -0
  468. package/node_modules/zod/src/v4/locales/mk.ts +118 -0
  469. package/node_modules/zod/src/v4/locales/ms.ts +115 -0
  470. package/node_modules/zod/src/v4/locales/nl.ts +121 -0
  471. package/node_modules/zod/src/v4/locales/no.ts +116 -0
  472. package/node_modules/zod/src/v4/locales/ota.ts +117 -0
  473. package/node_modules/zod/src/v4/locales/pl.ts +118 -0
  474. package/node_modules/zod/src/v4/locales/ps.ts +126 -0
  475. package/node_modules/zod/src/v4/locales/pt.ts +116 -0
  476. package/node_modules/zod/src/v4/locales/ru.ts +176 -0
  477. package/node_modules/zod/src/v4/locales/sl.ts +118 -0
  478. package/node_modules/zod/src/v4/locales/sv.ts +119 -0
  479. package/node_modules/zod/src/v4/locales/ta.ts +118 -0
  480. package/node_modules/zod/src/v4/locales/th.ts +119 -0
  481. package/node_modules/zod/src/v4/locales/tr.ts +111 -0
  482. package/node_modules/zod/src/v4/locales/ua.ts +7 -0
  483. package/node_modules/zod/src/v4/locales/uk.ts +117 -0
  484. package/node_modules/zod/src/v4/locales/ur.ts +119 -0
  485. package/node_modules/zod/src/v4/locales/uz.ts +116 -0
  486. package/node_modules/zod/src/v4/locales/vi.ts +117 -0
  487. package/node_modules/zod/src/v4/locales/yo.ts +124 -0
  488. package/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  489. package/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  490. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  491. package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  492. package/node_modules/zod/src/v4/mini/external.ts +40 -0
  493. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  494. package/node_modules/zod/src/v4/mini/iso.ts +66 -0
  495. package/node_modules/zod/src/v4/mini/parse.ts +14 -0
  496. package/node_modules/zod/src/v4/mini/schemas.ts +1916 -0
  497. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  498. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  499. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  500. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  501. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +529 -0
  502. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  503. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  504. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  505. package/node_modules/zod/src/v4/mini/tests/index.test.ts +963 -0
  506. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  507. package/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  508. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  509. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
  510. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  511. package/node_modules/zod/src/v4/mini/tests/string.test.ts +347 -0
  512. package/node_modules/zod/src/v4-mini/index.ts +3 -0
  513. package/node_modules/zod/v3/ZodError.cjs +138 -0
  514. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  515. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  516. package/node_modules/zod/v3/ZodError.js +133 -0
  517. package/node_modules/zod/v3/errors.cjs +17 -0
  518. package/node_modules/zod/v3/errors.d.cts +5 -0
  519. package/node_modules/zod/v3/errors.d.ts +5 -0
  520. package/node_modules/zod/v3/errors.js +9 -0
  521. package/node_modules/zod/v3/external.cjs +22 -0
  522. package/node_modules/zod/v3/external.d.cts +6 -0
  523. package/node_modules/zod/v3/external.d.ts +6 -0
  524. package/node_modules/zod/v3/external.js +6 -0
  525. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  526. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  527. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  528. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  529. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  530. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  531. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  532. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  533. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  534. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  535. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  536. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  537. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  538. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  539. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  540. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  541. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  542. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  543. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  544. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  545. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  546. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  547. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  548. package/node_modules/zod/v3/helpers/util.js +133 -0
  549. package/node_modules/zod/v3/index.cjs +33 -0
  550. package/node_modules/zod/v3/index.d.cts +4 -0
  551. package/node_modules/zod/v3/index.d.ts +4 -0
  552. package/node_modules/zod/v3/index.js +4 -0
  553. package/node_modules/zod/v3/locales/en.cjs +112 -0
  554. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  555. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  556. package/node_modules/zod/v3/locales/en.js +109 -0
  557. package/node_modules/zod/v3/package.json +6 -0
  558. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  559. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  560. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  561. package/node_modules/zod/v3/standard-schema.js +1 -0
  562. package/node_modules/zod/v3/types.cjs +3777 -0
  563. package/node_modules/zod/v3/types.d.cts +1034 -0
  564. package/node_modules/zod/v3/types.d.ts +1034 -0
  565. package/node_modules/zod/v3/types.js +3695 -0
  566. package/node_modules/zod/v4/classic/checks.cjs +33 -0
  567. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  568. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  569. package/node_modules/zod/v4/classic/checks.js +1 -0
  570. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  571. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  572. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  573. package/node_modules/zod/v4/classic/coerce.js +17 -0
  574. package/node_modules/zod/v4/classic/compat.cjs +61 -0
  575. package/node_modules/zod/v4/classic/compat.d.cts +50 -0
  576. package/node_modules/zod/v4/classic/compat.d.ts +50 -0
  577. package/node_modules/zod/v4/classic/compat.js +31 -0
  578. package/node_modules/zod/v4/classic/errors.cjs +74 -0
  579. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  580. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  581. package/node_modules/zod/v4/classic/errors.js +48 -0
  582. package/node_modules/zod/v4/classic/external.cjs +73 -0
  583. package/node_modules/zod/v4/classic/external.d.cts +15 -0
  584. package/node_modules/zod/v4/classic/external.d.ts +15 -0
  585. package/node_modules/zod/v4/classic/external.js +20 -0
  586. package/node_modules/zod/v4/classic/from-json-schema.cjs +610 -0
  587. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  588. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  589. package/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  590. package/node_modules/zod/v4/classic/index.cjs +33 -0
  591. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  592. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  593. package/node_modules/zod/v4/classic/index.js +4 -0
  594. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  595. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  596. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  597. package/node_modules/zod/v4/classic/iso.js +30 -0
  598. package/node_modules/zod/v4/classic/package.json +6 -0
  599. package/node_modules/zod/v4/classic/parse.cjs +41 -0
  600. package/node_modules/zod/v4/classic/parse.d.cts +31 -0
  601. package/node_modules/zod/v4/classic/parse.d.ts +31 -0
  602. package/node_modules/zod/v4/classic/parse.js +15 -0
  603. package/node_modules/zod/v4/classic/schemas.cjs +1272 -0
  604. package/node_modules/zod/v4/classic/schemas.d.cts +739 -0
  605. package/node_modules/zod/v4/classic/schemas.d.ts +739 -0
  606. package/node_modules/zod/v4/classic/schemas.js +1157 -0
  607. package/node_modules/zod/v4/core/api.cjs +1222 -0
  608. package/node_modules/zod/v4/core/api.d.cts +304 -0
  609. package/node_modules/zod/v4/core/api.d.ts +304 -0
  610. package/node_modules/zod/v4/core/api.js +1082 -0
  611. package/node_modules/zod/v4/core/checks.cjs +601 -0
  612. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  613. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  614. package/node_modules/zod/v4/core/checks.js +575 -0
  615. package/node_modules/zod/v4/core/core.cjs +83 -0
  616. package/node_modules/zod/v4/core/core.d.cts +70 -0
  617. package/node_modules/zod/v4/core/core.d.ts +70 -0
  618. package/node_modules/zod/v4/core/core.js +76 -0
  619. package/node_modules/zod/v4/core/doc.cjs +39 -0
  620. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  621. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  622. package/node_modules/zod/v4/core/doc.js +35 -0
  623. package/node_modules/zod/v4/core/errors.cjs +213 -0
  624. package/node_modules/zod/v4/core/errors.d.cts +220 -0
  625. package/node_modules/zod/v4/core/errors.d.ts +220 -0
  626. package/node_modules/zod/v4/core/errors.js +182 -0
  627. package/node_modules/zod/v4/core/index.cjs +47 -0
  628. package/node_modules/zod/v4/core/index.d.cts +16 -0
  629. package/node_modules/zod/v4/core/index.d.ts +16 -0
  630. package/node_modules/zod/v4/core/index.js +16 -0
  631. package/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  632. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  633. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  634. package/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  635. package/node_modules/zod/v4/core/json-schema-processors.cjs +648 -0
  636. package/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  637. package/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  638. package/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  639. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  640. package/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  641. package/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  642. package/node_modules/zod/v4/core/json-schema.js +1 -0
  643. package/node_modules/zod/v4/core/package.json +6 -0
  644. package/node_modules/zod/v4/core/parse.cjs +131 -0
  645. package/node_modules/zod/v4/core/parse.d.cts +49 -0
  646. package/node_modules/zod/v4/core/parse.d.ts +49 -0
  647. package/node_modules/zod/v4/core/parse.js +93 -0
  648. package/node_modules/zod/v4/core/regexes.cjs +166 -0
  649. package/node_modules/zod/v4/core/regexes.d.cts +79 -0
  650. package/node_modules/zod/v4/core/regexes.d.ts +79 -0
  651. package/node_modules/zod/v4/core/regexes.js +133 -0
  652. package/node_modules/zod/v4/core/registries.cjs +56 -0
  653. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  654. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  655. package/node_modules/zod/v4/core/registries.js +51 -0
  656. package/node_modules/zod/v4/core/schemas.cjs +2124 -0
  657. package/node_modules/zod/v4/core/schemas.d.cts +1146 -0
  658. package/node_modules/zod/v4/core/schemas.d.ts +1146 -0
  659. package/node_modules/zod/v4/core/schemas.js +2093 -0
  660. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  661. package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  662. package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  663. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  664. package/node_modules/zod/v4/core/to-json-schema.cjs +446 -0
  665. package/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  666. package/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  667. package/node_modules/zod/v4/core/to-json-schema.js +437 -0
  668. package/node_modules/zod/v4/core/util.cjs +710 -0
  669. package/node_modules/zod/v4/core/util.d.cts +199 -0
  670. package/node_modules/zod/v4/core/util.d.ts +199 -0
  671. package/node_modules/zod/v4/core/util.js +651 -0
  672. package/node_modules/zod/v4/core/versions.cjs +8 -0
  673. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  674. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  675. package/node_modules/zod/v4/core/versions.js +5 -0
  676. package/node_modules/zod/v4/index.cjs +22 -0
  677. package/node_modules/zod/v4/index.d.cts +3 -0
  678. package/node_modules/zod/v4/index.d.ts +3 -0
  679. package/node_modules/zod/v4/index.js +3 -0
  680. package/node_modules/zod/v4/locales/ar.cjs +133 -0
  681. package/node_modules/zod/v4/locales/ar.d.cts +5 -0
  682. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  683. package/node_modules/zod/v4/locales/ar.js +106 -0
  684. package/node_modules/zod/v4/locales/az.cjs +132 -0
  685. package/node_modules/zod/v4/locales/az.d.cts +5 -0
  686. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  687. package/node_modules/zod/v4/locales/az.js +105 -0
  688. package/node_modules/zod/v4/locales/be.cjs +183 -0
  689. package/node_modules/zod/v4/locales/be.d.cts +5 -0
  690. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  691. package/node_modules/zod/v4/locales/be.js +156 -0
  692. package/node_modules/zod/v4/locales/bg.cjs +147 -0
  693. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  694. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  695. package/node_modules/zod/v4/locales/bg.js +120 -0
  696. package/node_modules/zod/v4/locales/ca.cjs +134 -0
  697. package/node_modules/zod/v4/locales/ca.d.cts +5 -0
  698. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  699. package/node_modules/zod/v4/locales/ca.js +107 -0
  700. package/node_modules/zod/v4/locales/cs.cjs +138 -0
  701. package/node_modules/zod/v4/locales/cs.d.cts +5 -0
  702. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  703. package/node_modules/zod/v4/locales/cs.js +111 -0
  704. package/node_modules/zod/v4/locales/da.cjs +142 -0
  705. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  706. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  707. package/node_modules/zod/v4/locales/da.js +115 -0
  708. package/node_modules/zod/v4/locales/de.cjs +135 -0
  709. package/node_modules/zod/v4/locales/de.d.cts +5 -0
  710. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  711. package/node_modules/zod/v4/locales/de.js +108 -0
  712. package/node_modules/zod/v4/locales/en.cjs +136 -0
  713. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  714. package/node_modules/zod/v4/locales/en.d.ts +4 -0
  715. package/node_modules/zod/v4/locales/en.js +109 -0
  716. package/node_modules/zod/v4/locales/eo.cjs +136 -0
  717. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  718. package/node_modules/zod/v4/locales/eo.d.ts +4 -0
  719. package/node_modules/zod/v4/locales/eo.js +109 -0
  720. package/node_modules/zod/v4/locales/es.cjs +159 -0
  721. package/node_modules/zod/v4/locales/es.d.cts +5 -0
  722. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  723. package/node_modules/zod/v4/locales/es.js +132 -0
  724. package/node_modules/zod/v4/locales/fa.cjs +141 -0
  725. package/node_modules/zod/v4/locales/fa.d.cts +5 -0
  726. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  727. package/node_modules/zod/v4/locales/fa.js +114 -0
  728. package/node_modules/zod/v4/locales/fi.cjs +139 -0
  729. package/node_modules/zod/v4/locales/fi.d.cts +5 -0
  730. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  731. package/node_modules/zod/v4/locales/fi.js +112 -0
  732. package/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  733. package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  734. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  735. package/node_modules/zod/v4/locales/fr-CA.js +107 -0
  736. package/node_modules/zod/v4/locales/fr.cjs +135 -0
  737. package/node_modules/zod/v4/locales/fr.d.cts +5 -0
  738. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  739. package/node_modules/zod/v4/locales/fr.js +108 -0
  740. package/node_modules/zod/v4/locales/he.cjs +241 -0
  741. package/node_modules/zod/v4/locales/he.d.cts +5 -0
  742. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  743. package/node_modules/zod/v4/locales/he.js +214 -0
  744. package/node_modules/zod/v4/locales/hu.cjs +135 -0
  745. package/node_modules/zod/v4/locales/hu.d.cts +5 -0
  746. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  747. package/node_modules/zod/v4/locales/hu.js +108 -0
  748. package/node_modules/zod/v4/locales/hy.cjs +174 -0
  749. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  750. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  751. package/node_modules/zod/v4/locales/hy.js +147 -0
  752. package/node_modules/zod/v4/locales/id.cjs +133 -0
  753. package/node_modules/zod/v4/locales/id.d.cts +5 -0
  754. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  755. package/node_modules/zod/v4/locales/id.js +106 -0
  756. package/node_modules/zod/v4/locales/index.cjs +104 -0
  757. package/node_modules/zod/v4/locales/index.d.cts +49 -0
  758. package/node_modules/zod/v4/locales/index.d.ts +49 -0
  759. package/node_modules/zod/v4/locales/index.js +49 -0
  760. package/node_modules/zod/v4/locales/is.cjs +136 -0
  761. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  762. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  763. package/node_modules/zod/v4/locales/is.js +109 -0
  764. package/node_modules/zod/v4/locales/it.cjs +135 -0
  765. package/node_modules/zod/v4/locales/it.d.cts +5 -0
  766. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  767. package/node_modules/zod/v4/locales/it.js +108 -0
  768. package/node_modules/zod/v4/locales/ja.cjs +134 -0
  769. package/node_modules/zod/v4/locales/ja.d.cts +5 -0
  770. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  771. package/node_modules/zod/v4/locales/ja.js +107 -0
  772. package/node_modules/zod/v4/locales/ka.cjs +139 -0
  773. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  774. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  775. package/node_modules/zod/v4/locales/ka.js +112 -0
  776. package/node_modules/zod/v4/locales/kh.cjs +12 -0
  777. package/node_modules/zod/v4/locales/kh.d.cts +5 -0
  778. package/node_modules/zod/v4/locales/kh.d.ts +5 -0
  779. package/node_modules/zod/v4/locales/kh.js +5 -0
  780. package/node_modules/zod/v4/locales/km.cjs +137 -0
  781. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  782. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  783. package/node_modules/zod/v4/locales/km.js +110 -0
  784. package/node_modules/zod/v4/locales/ko.cjs +138 -0
  785. package/node_modules/zod/v4/locales/ko.d.cts +5 -0
  786. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  787. package/node_modules/zod/v4/locales/ko.js +111 -0
  788. package/node_modules/zod/v4/locales/lt.cjs +230 -0
  789. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  790. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  791. package/node_modules/zod/v4/locales/lt.js +203 -0
  792. package/node_modules/zod/v4/locales/mk.cjs +136 -0
  793. package/node_modules/zod/v4/locales/mk.d.cts +5 -0
  794. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  795. package/node_modules/zod/v4/locales/mk.js +109 -0
  796. package/node_modules/zod/v4/locales/ms.cjs +134 -0
  797. package/node_modules/zod/v4/locales/ms.d.cts +5 -0
  798. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  799. package/node_modules/zod/v4/locales/ms.js +107 -0
  800. package/node_modules/zod/v4/locales/nl.cjs +137 -0
  801. package/node_modules/zod/v4/locales/nl.d.cts +5 -0
  802. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  803. package/node_modules/zod/v4/locales/nl.js +110 -0
  804. package/node_modules/zod/v4/locales/no.cjs +135 -0
  805. package/node_modules/zod/v4/locales/no.d.cts +5 -0
  806. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  807. package/node_modules/zod/v4/locales/no.js +108 -0
  808. package/node_modules/zod/v4/locales/ota.cjs +136 -0
  809. package/node_modules/zod/v4/locales/ota.d.cts +5 -0
  810. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  811. package/node_modules/zod/v4/locales/ota.js +109 -0
  812. package/node_modules/zod/v4/locales/package.json +6 -0
  813. package/node_modules/zod/v4/locales/pl.cjs +136 -0
  814. package/node_modules/zod/v4/locales/pl.d.cts +5 -0
  815. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  816. package/node_modules/zod/v4/locales/pl.js +109 -0
  817. package/node_modules/zod/v4/locales/ps.cjs +141 -0
  818. package/node_modules/zod/v4/locales/ps.d.cts +5 -0
  819. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  820. package/node_modules/zod/v4/locales/ps.js +114 -0
  821. package/node_modules/zod/v4/locales/pt.cjs +135 -0
  822. package/node_modules/zod/v4/locales/pt.d.cts +5 -0
  823. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  824. package/node_modules/zod/v4/locales/pt.js +108 -0
  825. package/node_modules/zod/v4/locales/ru.cjs +183 -0
  826. package/node_modules/zod/v4/locales/ru.d.cts +5 -0
  827. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  828. package/node_modules/zod/v4/locales/ru.js +156 -0
  829. package/node_modules/zod/v4/locales/sl.cjs +136 -0
  830. package/node_modules/zod/v4/locales/sl.d.cts +5 -0
  831. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  832. package/node_modules/zod/v4/locales/sl.js +109 -0
  833. package/node_modules/zod/v4/locales/sv.cjs +137 -0
  834. package/node_modules/zod/v4/locales/sv.d.cts +5 -0
  835. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  836. package/node_modules/zod/v4/locales/sv.js +110 -0
  837. package/node_modules/zod/v4/locales/ta.cjs +137 -0
  838. package/node_modules/zod/v4/locales/ta.d.cts +5 -0
  839. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  840. package/node_modules/zod/v4/locales/ta.js +110 -0
  841. package/node_modules/zod/v4/locales/th.cjs +137 -0
  842. package/node_modules/zod/v4/locales/th.d.cts +5 -0
  843. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  844. package/node_modules/zod/v4/locales/th.js +110 -0
  845. package/node_modules/zod/v4/locales/tr.cjs +132 -0
  846. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  847. package/node_modules/zod/v4/locales/tr.d.ts +4 -0
  848. package/node_modules/zod/v4/locales/tr.js +105 -0
  849. package/node_modules/zod/v4/locales/ua.cjs +12 -0
  850. package/node_modules/zod/v4/locales/ua.d.cts +5 -0
  851. package/node_modules/zod/v4/locales/ua.d.ts +5 -0
  852. package/node_modules/zod/v4/locales/ua.js +5 -0
  853. package/node_modules/zod/v4/locales/uk.cjs +135 -0
  854. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  855. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  856. package/node_modules/zod/v4/locales/uk.js +108 -0
  857. package/node_modules/zod/v4/locales/ur.cjs +137 -0
  858. package/node_modules/zod/v4/locales/ur.d.cts +5 -0
  859. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  860. package/node_modules/zod/v4/locales/ur.js +110 -0
  861. package/node_modules/zod/v4/locales/uz.cjs +136 -0
  862. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  863. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  864. package/node_modules/zod/v4/locales/uz.js +109 -0
  865. package/node_modules/zod/v4/locales/vi.cjs +135 -0
  866. package/node_modules/zod/v4/locales/vi.d.cts +5 -0
  867. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  868. package/node_modules/zod/v4/locales/vi.js +108 -0
  869. package/node_modules/zod/v4/locales/yo.cjs +134 -0
  870. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  871. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  872. package/node_modules/zod/v4/locales/yo.js +107 -0
  873. package/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  874. package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  875. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  876. package/node_modules/zod/v4/locales/zh-CN.js +109 -0
  877. package/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  878. package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  879. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  880. package/node_modules/zod/v4/locales/zh-TW.js +107 -0
  881. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  882. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  883. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  884. package/node_modules/zod/v4/mini/checks.js +1 -0
  885. package/node_modules/zod/v4/mini/coerce.cjs +52 -0
  886. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  887. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  888. package/node_modules/zod/v4/mini/coerce.js +22 -0
  889. package/node_modules/zod/v4/mini/external.cjs +63 -0
  890. package/node_modules/zod/v4/mini/external.d.cts +12 -0
  891. package/node_modules/zod/v4/mini/external.d.ts +12 -0
  892. package/node_modules/zod/v4/mini/external.js +14 -0
  893. package/node_modules/zod/v4/mini/index.cjs +32 -0
  894. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  895. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  896. package/node_modules/zod/v4/mini/index.js +3 -0
  897. package/node_modules/zod/v4/mini/iso.cjs +64 -0
  898. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  899. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  900. package/node_modules/zod/v4/mini/iso.js +34 -0
  901. package/node_modules/zod/v4/mini/package.json +6 -0
  902. package/node_modules/zod/v4/mini/parse.cjs +16 -0
  903. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  904. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  905. package/node_modules/zod/v4/mini/parse.js +1 -0
  906. package/node_modules/zod/v4/mini/schemas.cjs +1046 -0
  907. package/node_modules/zod/v4/mini/schemas.d.cts +427 -0
  908. package/node_modules/zod/v4/mini/schemas.d.ts +427 -0
  909. package/node_modules/zod/v4/mini/schemas.js +925 -0
  910. package/node_modules/zod/v4/package.json +6 -0
  911. package/node_modules/zod/v4-mini/index.cjs +32 -0
  912. package/node_modules/zod/v4-mini/index.d.cts +3 -0
  913. package/node_modules/zod/v4-mini/index.d.ts +3 -0
  914. package/node_modules/zod/v4-mini/index.js +3 -0
  915. package/node_modules/zod/v4-mini/package.json +6 -0
  916. package/package.json +5 -2
  917. package/plugin/dist/index.d.ts +208 -0
  918. package/plugin/dist/index.d.ts.map +1 -0
  919. package/plugin/dist/index.js +3474 -0
  920. package/plugin/dist/index.js.map +1 -0
  921. package/plugin/package.json +4 -2
@@ -0,0 +1,155 @@
1
+ /**
2
+ * Knowledge Lint
3
+ *
4
+ * Health checks for the knowledge table:
5
+ * 1. Stale syntheses — decay confidence on old topic-synthesis entries
6
+ * 2. Orphan topics — topics with too few messages, stale > 48h
7
+ * 3. Coverage gaps — topics with many messages but no synthesis
8
+ */
9
+ import { LINT_STALE_DAYS } from './topic-synthesizer.js';
10
+ // Orphan topics older than this many days are eligible for pruning.
11
+ // 48h = report threshold, 14d = prune threshold (conservative).
12
+ export const ORPHAN_PRUNE_DAYS = 14;
13
+ // ─── lintKnowledge ──────────────────────────────────────────────
14
+ /**
15
+ * Run lint checks on the knowledge table.
16
+ *
17
+ * 1. Stale syntheses: topic-synthesis entries where the source topic's
18
+ * updated_at is older than LINT_STALE_DAYS and there are no new messages.
19
+ * Marks these with confidence = 0.3.
20
+ *
21
+ * 2. Orphan topics: topics with message_count < 3 and updated_at older than 48h.
22
+ * Logged but not synthesized.
23
+ *
24
+ * 3. Coverage gaps: topics with message_count >= 20 but no corresponding
25
+ * knowledge entry (domain='topic-synthesis', key=topic.name).
26
+ */
27
+ export function lintKnowledge(libraryDb) {
28
+ const result = {
29
+ staleDecayed: 0,
30
+ orphansFound: 0,
31
+ orphansPruned: 0,
32
+ coverageGaps: [],
33
+ };
34
+ // ── 1. Stale syntheses ─────────────────────────────────────────
35
+ // Find topic-synthesis knowledge entries whose source topic hasn't been
36
+ // updated in LINT_STALE_DAYS days.
37
+ try {
38
+ const staleSyntheses = libraryDb.prepare(`
39
+ SELECT k.id, k.source_ref, k.agent_id, k.key
40
+ FROM knowledge k
41
+ WHERE k.domain = 'topic-synthesis'
42
+ AND k.superseded_by IS NULL
43
+ AND k.updated_at < datetime('now', '-' || ? || ' days')
44
+ `).all(Math.floor(LINT_STALE_DAYS));
45
+ for (const entry of staleSyntheses) {
46
+ // Extract topic id from source_ref: "topic:<id>" or "topic:<id>:mc:<count>"
47
+ if (!entry.source_ref)
48
+ continue;
49
+ const match = entry.source_ref.match(/^topic:(\d+)/);
50
+ if (!match)
51
+ continue;
52
+ const topicId = parseInt(match[1], 10);
53
+ // Check if topic exists and is stale (no recent updates)
54
+ let topicRow;
55
+ try {
56
+ topicRow = libraryDb.prepare('SELECT updated_at, message_count FROM topics WHERE id = ?').get(topicId);
57
+ }
58
+ catch {
59
+ continue;
60
+ }
61
+ if (!topicRow)
62
+ continue;
63
+ // Check if topic is stale (updated_at older than LINT_STALE_DAYS)
64
+ const topicAge = libraryDb.prepare(`
65
+ SELECT CASE WHEN datetime(?) < datetime('now', '-' || ? || ' days') THEN 1 ELSE 0 END AS is_stale
66
+ `).get(topicRow.updated_at, Math.floor(LINT_STALE_DAYS));
67
+ if (topicAge.is_stale) {
68
+ // Decay confidence to 0.3
69
+ libraryDb.prepare('UPDATE knowledge SET confidence = 0.3, updated_at = datetime(\'now\') WHERE id = ?').run(entry.id);
70
+ result.staleDecayed++;
71
+ }
72
+ }
73
+ }
74
+ catch {
75
+ // Non-fatal — continue with other checks
76
+ }
77
+ // ── 2. Orphan topics ───────────────────────────────────────────
78
+ // Topics with message_count < 3 and updated_at > 48h ago
79
+ try {
80
+ const orphans = libraryDb.prepare(`
81
+ SELECT id, name, message_count, updated_at FROM topics
82
+ WHERE message_count < 3
83
+ AND updated_at < datetime('now', '-48 hours')
84
+ `).all();
85
+ result.orphansFound = orphans.length;
86
+ if (orphans.length > 0) {
87
+ const sample = orphans.slice(0, 10).map(o => o.name).join(', ');
88
+ const remainder = Math.max(0, orphans.length - 10);
89
+ console.log(`[lint] ${orphans.length} orphan topic(s) found (< 3 messages, stale > 48h)` +
90
+ (sample ? `; sample: ${sample}` : '') +
91
+ (remainder > 0 ? `; +${remainder} more` : ''));
92
+ }
93
+ // Prune orphan topics older than ORPHAN_PRUNE_DAYS (conservative cleanup).
94
+ // Safety: only prune topics with no knowledge-synthesis entries and no facts
95
+ // referencing them (via source_ref 'topic:<id>' pattern).
96
+ try {
97
+ const prunable = libraryDb.prepare(`
98
+ SELECT t.id, t.name FROM topics t
99
+ WHERE t.message_count < 3
100
+ AND t.updated_at < datetime('now', '-' || ? || ' days')
101
+ AND NOT EXISTS (
102
+ SELECT 1 FROM knowledge k
103
+ WHERE k.agent_id = t.agent_id
104
+ AND k.domain = 'topic-synthesis'
105
+ AND k.key = t.name
106
+ AND k.superseded_by IS NULL
107
+ )
108
+ AND NOT EXISTS (
109
+ SELECT 1 FROM facts f
110
+ WHERE f.source_ref LIKE 'topic:' || t.id || '%'
111
+ )
112
+ `).all(ORPHAN_PRUNE_DAYS);
113
+ if (prunable.length > 0) {
114
+ const ids = prunable.map(p => p.id);
115
+ const placeholders = ids.map(() => '?').join(',');
116
+ libraryDb.prepare(`DELETE FROM topics WHERE id IN (${placeholders})`).run(...ids);
117
+ result.orphansPruned = prunable.length;
118
+ console.log(`[lint] pruned ${prunable.length} orphan topic(s) (< 3 messages, stale > ${ORPHAN_PRUNE_DAYS}d, no syntheses or facts)`);
119
+ }
120
+ }
121
+ catch (err) {
122
+ console.warn('[lint] orphan prune failed (non-fatal):', err.message);
123
+ }
124
+ }
125
+ catch {
126
+ // Non-fatal
127
+ }
128
+ // ── 3. Coverage gaps ───────────────────────────────────────────
129
+ // Topics with >= 20 messages but no synthesis in knowledge table
130
+ try {
131
+ const bigTopics = libraryDb.prepare(`
132
+ SELECT t.name, t.agent_id
133
+ FROM topics t
134
+ WHERE t.message_count >= 20
135
+ `).all();
136
+ for (const topic of bigTopics) {
137
+ const synthesis = libraryDb.prepare(`
138
+ SELECT id FROM knowledge
139
+ WHERE agent_id = ?
140
+ AND domain = 'topic-synthesis'
141
+ AND key = ?
142
+ AND superseded_by IS NULL
143
+ LIMIT 1
144
+ `).get(topic.agent_id, topic.name);
145
+ if (!synthesis) {
146
+ result.coverageGaps.push(topic.name);
147
+ }
148
+ }
149
+ }
150
+ catch {
151
+ // Non-fatal
152
+ }
153
+ return result;
154
+ }
155
+ //# sourceMappingURL=knowledge-lint.js.map
@@ -0,0 +1,75 @@
1
+ /**
2
+ * hypermem Knowledge Store
3
+ *
4
+ * Long-term structured knowledge — replaces MEMORY.md.
5
+ * Lives in the central library DB.
6
+ * Knowledge entries are keyed (domain + key), versioned via superseded_by,
7
+ * and linked to each other via knowledge_links.
8
+ */
9
+ import type { DatabaseSync } from 'node:sqlite';
10
+ import type { Knowledge } from './types.js';
11
+ export type LinkType = 'supports' | 'contradicts' | 'depends_on' | 'supersedes' | 'related';
12
+ export declare class KnowledgeStore {
13
+ private readonly db;
14
+ constructor(db: DatabaseSync);
15
+ /**
16
+ * Upsert a knowledge entry.
17
+ *
18
+ * Versioning semantics:
19
+ * - If no active entry exists: insert as version 1
20
+ * - If same content: refresh confidence + timestamp + source_ref/expiry
21
+ * metadata only (no new version). Refreshing source_ref advances
22
+ * synthesis watermarks (e.g. "topic:<id>:mc:<count>") so callers that
23
+ * re-run with identical compiled content do not loop forever.
24
+ * - If different content: insert as new version (max_version + 1), mark
25
+ * previous active row as superseded_by = new_id
26
+ *
27
+ * This guarantees version history is real rows, not in-place overwrites.
28
+ * The unique constraint is (agent_id, domain, key, version) so each
29
+ * version is a distinct row.
30
+ */
31
+ upsert(agentId: string, domain: string, key: string, content: string, opts?: {
32
+ confidence?: number;
33
+ visibility?: string;
34
+ sourceType?: string;
35
+ sourceRef?: string;
36
+ expiresAt?: string;
37
+ }): Knowledge;
38
+ /**
39
+ * Get current (non-superseded) knowledge for an agent.
40
+ */
41
+ getActive(agentId: string, opts?: {
42
+ domain?: string;
43
+ limit?: number;
44
+ }): Knowledge[];
45
+ /**
46
+ * Get a specific knowledge entry by domain + key.
47
+ */
48
+ get(agentId: string, domain: string, key: string): Knowledge | null;
49
+ /**
50
+ * Get the version history of a knowledge entry.
51
+ */
52
+ getHistory(agentId: string, domain: string, key: string): Knowledge[];
53
+ /**
54
+ * Search knowledge by content.
55
+ */
56
+ search(agentId: string, query: string, limit?: number): Knowledge[];
57
+ /**
58
+ * List all domains for an agent.
59
+ */
60
+ getDomains(agentId: string): string[];
61
+ /**
62
+ * Add a link between knowledge entries.
63
+ */
64
+ addLink(fromId: number, toId: number, linkType: LinkType): void;
65
+ /**
66
+ * Get knowledge count.
67
+ */
68
+ getCount(agentId: string): number;
69
+ /**
70
+ * Import from MEMORY.md content.
71
+ * Parses markdown sections into domain/key/content entries.
72
+ */
73
+ importFromMarkdown(agentId: string, markdown: string, sourcePath: string): number;
74
+ }
75
+ //# sourceMappingURL=knowledge-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"knowledge-store.d.ts","sourceRoot":"","sources":["../src/knowledge-store.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAwB5C,MAAM,MAAM,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,YAAY,GAAG,YAAY,GAAG,SAAS,CAAC;AAE5F,qBAAa,cAAc;IACb,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAAF,EAAE,EAAE,YAAY;IAE7C;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CACJ,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;QACL,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,SAAS;IAuGZ;;OAEG;IACH,SAAS,CACP,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE;QACL,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GACA,SAAS,EAAE;IAyBd;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAUnE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE;IAUrE;;OAEG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAW,GAAG,SAAS,EAAE;IAavE;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE;IAUrC;;OAEG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAO/D;;OAEG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAOjC;;;OAGG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;CAwDlF"}
@@ -0,0 +1,270 @@
1
+ /**
2
+ * hypermem Knowledge Store
3
+ *
4
+ * Long-term structured knowledge — replaces MEMORY.md.
5
+ * Lives in the central library DB.
6
+ * Knowledge entries are keyed (domain + key), versioned via superseded_by,
7
+ * and linked to each other via knowledge_links.
8
+ */
9
+ import { isSafeForSharedVisibility, requiresScan } from './secret-scanner.js';
10
+ function nowIso() {
11
+ return new Date().toISOString();
12
+ }
13
+ function parseKnowledgeRow(row) {
14
+ return {
15
+ id: row.id,
16
+ agentId: row.agent_id,
17
+ domain: row.domain,
18
+ key: row.key,
19
+ content: row.content,
20
+ confidence: row.confidence,
21
+ sourceType: row.source_type,
22
+ sourceRef: row.source_ref || null,
23
+ createdAt: row.created_at,
24
+ updatedAt: row.updated_at,
25
+ expiresAt: row.expires_at || null,
26
+ supersededBy: row.superseded_by || null,
27
+ };
28
+ }
29
+ export class KnowledgeStore {
30
+ db;
31
+ constructor(db) {
32
+ this.db = db;
33
+ }
34
+ /**
35
+ * Upsert a knowledge entry.
36
+ *
37
+ * Versioning semantics:
38
+ * - If no active entry exists: insert as version 1
39
+ * - If same content: refresh confidence + timestamp + source_ref/expiry
40
+ * metadata only (no new version). Refreshing source_ref advances
41
+ * synthesis watermarks (e.g. "topic:<id>:mc:<count>") so callers that
42
+ * re-run with identical compiled content do not loop forever.
43
+ * - If different content: insert as new version (max_version + 1), mark
44
+ * previous active row as superseded_by = new_id
45
+ *
46
+ * This guarantees version history is real rows, not in-place overwrites.
47
+ * The unique constraint is (agent_id, domain, key, version) so each
48
+ * version is a distinct row.
49
+ */
50
+ upsert(agentId, domain, key, content, opts) {
51
+ const now = nowIso();
52
+ const sourceType = opts?.sourceType || 'manual';
53
+ const confidence = opts?.confidence ?? 1.0;
54
+ // Secret gate: if requested visibility is shared, verify content is clean.
55
+ // Downgrade to 'private' rather than reject — matches episode-store pattern.
56
+ let visibility = opts?.visibility ?? 'private';
57
+ if (requiresScan(visibility) && !isSafeForSharedVisibility(content)) {
58
+ visibility = 'private';
59
+ }
60
+ // Find current active entry (not superseded, not expired)
61
+ const existing = this.db.prepare(`
62
+ SELECT * FROM knowledge
63
+ WHERE agent_id = ? AND domain = ? AND key = ?
64
+ AND superseded_by IS NULL
65
+ AND (expires_at IS NULL OR expires_at > datetime('now'))
66
+ ORDER BY version DESC LIMIT 1
67
+ `).get(agentId, domain, key);
68
+ if (existing && existing.content === content) {
69
+ // Same content — refresh confidence/timestamp and synthesis metadata
70
+ // (source_ref, source_type, expires_at) so watermark-style refs advance
71
+ // without minting a new version row.
72
+ const nextSourceRef = opts?.sourceRef !== undefined
73
+ ? opts.sourceRef
74
+ : (existing.source_ref ?? null);
75
+ const nextSourceType = opts?.sourceType !== undefined
76
+ ? sourceType
77
+ : (existing.source_type ?? sourceType);
78
+ const nextExpiresAt = opts?.expiresAt !== undefined
79
+ ? opts.expiresAt
80
+ : (existing.expires_at ?? null);
81
+ this.db.prepare(`UPDATE knowledge
82
+ SET confidence = ?, updated_at = ?, source_ref = ?, source_type = ?, expires_at = ?
83
+ WHERE id = ?`).run(confidence, now, nextSourceRef, nextSourceType, nextExpiresAt, existing.id);
84
+ return parseKnowledgeRow({
85
+ ...existing,
86
+ confidence,
87
+ updated_at: now,
88
+ source_ref: nextSourceRef,
89
+ source_type: nextSourceType,
90
+ expires_at: nextExpiresAt,
91
+ });
92
+ }
93
+ // Determine next version number
94
+ const maxVersionRow = this.db.prepare(`
95
+ SELECT MAX(version) AS max_version FROM knowledge
96
+ WHERE agent_id = ? AND domain = ? AND key = ?
97
+ `).get(agentId, domain, key);
98
+ const nextVersion = (maxVersionRow?.max_version ?? 0) + 1;
99
+ // Insert new version row (no ON CONFLICT — version column ensures uniqueness)
100
+ const result = this.db.prepare(`
101
+ INSERT INTO knowledge
102
+ (agent_id, domain, key, version, content, confidence, visibility, source_type, source_ref,
103
+ created_at, updated_at, expires_at)
104
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
105
+ `).run(agentId, domain, key, nextVersion, content, confidence, visibility, sourceType, opts?.sourceRef ?? null, now, now, opts?.expiresAt ?? null);
106
+ const newId = result.lastInsertRowid;
107
+ // Mark previous active entry as superseded by this new version
108
+ if (existing) {
109
+ this.db.prepare('UPDATE knowledge SET superseded_by = ?, updated_at = ? WHERE id = ?').run(newId, now, existing.id);
110
+ // Link: new version supersedes old version
111
+ this.addLink(newId, existing.id, 'supersedes');
112
+ }
113
+ return {
114
+ id: newId,
115
+ agentId,
116
+ domain,
117
+ key,
118
+ content,
119
+ confidence,
120
+ sourceType,
121
+ sourceRef: opts?.sourceRef ?? null,
122
+ createdAt: now,
123
+ updatedAt: now,
124
+ expiresAt: opts?.expiresAt ?? null,
125
+ supersededBy: null,
126
+ };
127
+ }
128
+ /**
129
+ * Get current (non-superseded) knowledge for an agent.
130
+ */
131
+ getActive(agentId, opts) {
132
+ let sql = `
133
+ SELECT * FROM knowledge
134
+ WHERE agent_id = ?
135
+ AND superseded_by IS NULL
136
+ AND (expires_at IS NULL OR expires_at > datetime('now'))
137
+ `;
138
+ const params = [agentId];
139
+ if (opts?.domain) {
140
+ sql += ' AND domain = ?';
141
+ params.push(opts.domain);
142
+ }
143
+ sql += ' ORDER BY domain, key';
144
+ if (opts?.limit) {
145
+ sql += ' LIMIT ?';
146
+ params.push(opts.limit);
147
+ }
148
+ const rows = this.db.prepare(sql).all(...params);
149
+ return rows.map(parseKnowledgeRow);
150
+ }
151
+ /**
152
+ * Get a specific knowledge entry by domain + key.
153
+ */
154
+ get(agentId, domain, key) {
155
+ const row = this.db.prepare(`
156
+ SELECT * FROM knowledge
157
+ WHERE agent_id = ? AND domain = ? AND key = ?
158
+ AND superseded_by IS NULL
159
+ `).get(agentId, domain, key);
160
+ return row ? parseKnowledgeRow(row) : null;
161
+ }
162
+ /**
163
+ * Get the version history of a knowledge entry.
164
+ */
165
+ getHistory(agentId, domain, key) {
166
+ const rows = this.db.prepare(`
167
+ SELECT * FROM knowledge
168
+ WHERE agent_id = ? AND domain = ? AND key = ?
169
+ ORDER BY created_at DESC
170
+ `).all(agentId, domain, key);
171
+ return rows.map(parseKnowledgeRow);
172
+ }
173
+ /**
174
+ * Search knowledge by content.
175
+ */
176
+ search(agentId, query, limit = 20) {
177
+ const rows = this.db.prepare(`
178
+ SELECT * FROM knowledge
179
+ WHERE agent_id = ?
180
+ AND superseded_by IS NULL
181
+ AND (content LIKE ? OR key LIKE ?)
182
+ ORDER BY confidence DESC
183
+ LIMIT ?
184
+ `).all(agentId, `%${query}%`, `%${query}%`, limit);
185
+ return rows.map(parseKnowledgeRow);
186
+ }
187
+ /**
188
+ * List all domains for an agent.
189
+ */
190
+ getDomains(agentId) {
191
+ const rows = this.db.prepare(`
192
+ SELECT DISTINCT domain FROM knowledge
193
+ WHERE agent_id = ? AND superseded_by IS NULL
194
+ ORDER BY domain
195
+ `).all(agentId);
196
+ return rows.map(r => r.domain);
197
+ }
198
+ /**
199
+ * Add a link between knowledge entries.
200
+ */
201
+ addLink(fromId, toId, linkType) {
202
+ this.db.prepare(`
203
+ INSERT OR IGNORE INTO knowledge_links (from_type, from_id, to_type, to_id, link_type, created_at)
204
+ VALUES ('knowledge', ?, 'knowledge', ?, ?, ?)
205
+ `).run(fromId, toId, linkType, nowIso());
206
+ }
207
+ /**
208
+ * Get knowledge count.
209
+ */
210
+ getCount(agentId) {
211
+ const row = this.db.prepare('SELECT COUNT(*) AS count FROM knowledge WHERE agent_id = ? AND superseded_by IS NULL').get(agentId);
212
+ return row.count;
213
+ }
214
+ /**
215
+ * Import from MEMORY.md content.
216
+ * Parses markdown sections into domain/key/content entries.
217
+ */
218
+ importFromMarkdown(agentId, markdown, sourcePath) {
219
+ const lines = markdown.split('\n');
220
+ let currentDomain = 'general';
221
+ let currentKey = '';
222
+ let currentContent = [];
223
+ let imported = 0;
224
+ const flush = () => {
225
+ if (currentKey && currentContent.length > 0) {
226
+ this.upsert(agentId, currentDomain, currentKey, currentContent.join('\n').trim(), {
227
+ sourceType: 'manual',
228
+ sourceRef: sourcePath,
229
+ });
230
+ imported++;
231
+ }
232
+ currentContent = [];
233
+ };
234
+ for (const line of lines) {
235
+ // ## Section = domain
236
+ if (line.startsWith('## ')) {
237
+ flush();
238
+ currentDomain = line.replace('## ', '').trim().toLowerCase().replace(/\s+/g, '_');
239
+ currentKey = '';
240
+ continue;
241
+ }
242
+ // ### Subsection or **Bold** = key
243
+ if (line.startsWith('### ')) {
244
+ flush();
245
+ currentKey = line.replace('### ', '').trim();
246
+ continue;
247
+ }
248
+ // - **Key:** Value pattern
249
+ const kvMatch = line.match(/^[-*]\s+\*\*(.+?)\*\*[:\s]+(.+)/);
250
+ if (kvMatch) {
251
+ flush();
252
+ currentKey = kvMatch[1].trim();
253
+ currentContent.push(kvMatch[2].trim());
254
+ continue;
255
+ }
256
+ // Regular content line
257
+ if (currentKey) {
258
+ currentContent.push(line);
259
+ }
260
+ else if (line.trim()) {
261
+ // Content without a key — use line hash as key
262
+ currentKey = `note_${lines.indexOf(line)}`;
263
+ currentContent.push(line);
264
+ }
265
+ }
266
+ flush();
267
+ return imported;
268
+ }
269
+ }
270
+ //# sourceMappingURL=knowledge-store.js.map
@@ -0,0 +1,31 @@
1
+ /**
2
+ * hypermem Library Schema — Fleet-Wide Structured Knowledge
3
+ *
4
+ * Single database: ~/.openclaw/hypermem/library.db
5
+ * The "crown jewel" — durable, backed up, low-write-frequency.
6
+ *
7
+ * Collections:
8
+ * 1. Library entries (versioned docs, specs, reference material)
9
+ * 2. Facts (agent-learned truths with confidence, visibility, temporal validity)
10
+ * 3. Preferences (behavioral patterns)
11
+ * 4. Knowledge/wiki (structured domain knowledge, supersedable topic syntheses)
12
+ * 5. Episodes (significant events, decisions, discoveries)
13
+ * 6. Topics (cross-session thread tracking)
14
+ * 7. Knowledge graph links (relationships between facts, knowledge, topics, episodes)
15
+ * 8. Fleet registry (agents, orgs, capabilities)
16
+ * 9. Desired state and config events (drift detection)
17
+ * 10. System registry and work items (server state, work queues, events)
18
+ * 11. Session registry and lifecycle events
19
+ * 12. Document sources/chunks and trigger retrieval metadata
20
+ * 13. Output standards, model directives, and output metrics
21
+ * 14. Temporal index, expertise patterns, contradiction audits, and indexer watermarks
22
+ */
23
+ import { DatabaseSync } from 'node:sqlite';
24
+ export declare const LIBRARY_SCHEMA_VERSION = 19;
25
+ export declare function repairLibraryDb(dbPath: string): {
26
+ repaired: boolean;
27
+ backupPath?: string;
28
+ message: string;
29
+ };
30
+ export declare function migrateLibrary(db: DatabaseSync, engineVersion?: string): void;
31
+ //# sourceMappingURL=library-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"library-schema.d.ts","sourceRoot":"","sources":["../src/library-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAo6BzC,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAkF3G;AAID,wBAAgB,cAAc,CAAC,EAAE,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAoa7E"}