@psiclawops/hypermem 0.8.5 → 0.9.1

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 (933) hide show
  1. package/ARCHITECTURE.md +2 -2
  2. package/CHANGELOG.md +36 -1
  3. package/INSTALL.md +132 -9
  4. package/README.md +119 -272
  5. package/bench/README.md +42 -0
  6. package/bench/data-access-bench.mjs +380 -0
  7. package/bin/hypermem-bench.mjs +2 -0
  8. package/bin/hypermem-doctor.mjs +412 -0
  9. package/bin/hypermem-model-audit.mjs +339 -0
  10. package/bin/hypermem-status.mjs +491 -70
  11. package/docs/DIAGNOSTICS.md +205 -0
  12. package/docs/INTEGRATION_VALIDATION.md +186 -0
  13. package/docs/MIGRATION.md +9 -6
  14. package/docs/MIGRATION_GUIDE.md +125 -101
  15. package/docs/ROADMAP.md +247 -20
  16. package/docs/TUNING.md +19 -5
  17. package/install.sh +152 -401
  18. package/memory-plugin/LICENSE +190 -0
  19. package/memory-plugin/README.md +20 -0
  20. package/memory-plugin/package.json +3 -3
  21. package/package.json +19 -4
  22. package/plugin/LICENSE +190 -0
  23. package/plugin/README.md +20 -0
  24. package/plugin/package.json +4 -4
  25. package/scripts/install-runtime.mjs +12 -1
  26. package/dist/background-indexer.d.ts +0 -161
  27. package/dist/background-indexer.d.ts.map +0 -1
  28. package/dist/background-indexer.js +0 -1263
  29. package/dist/budget-policy.d.ts +0 -22
  30. package/dist/budget-policy.d.ts.map +0 -1
  31. package/dist/budget-policy.js +0 -27
  32. package/dist/cache.d.ts +0 -147
  33. package/dist/cache.d.ts.map +0 -1
  34. package/dist/cache.js +0 -569
  35. package/dist/compaction-fence.d.ts +0 -97
  36. package/dist/compaction-fence.d.ts.map +0 -1
  37. package/dist/compaction-fence.js +0 -174
  38. package/dist/compositor-utils.d.ts +0 -31
  39. package/dist/compositor-utils.d.ts.map +0 -1
  40. package/dist/compositor-utils.js +0 -47
  41. package/dist/compositor.d.ts +0 -394
  42. package/dist/compositor.d.ts.map +0 -1
  43. package/dist/compositor.js +0 -3632
  44. package/dist/content-hash.d.ts +0 -43
  45. package/dist/content-hash.d.ts.map +0 -1
  46. package/dist/content-hash.js +0 -75
  47. package/dist/content-type-classifier.d.ts +0 -41
  48. package/dist/content-type-classifier.d.ts.map +0 -1
  49. package/dist/content-type-classifier.js +0 -181
  50. package/dist/context-backfill.d.ts +0 -46
  51. package/dist/context-backfill.d.ts.map +0 -1
  52. package/dist/context-backfill.js +0 -113
  53. package/dist/context-store.d.ts +0 -131
  54. package/dist/context-store.d.ts.map +0 -1
  55. package/dist/context-store.js +0 -279
  56. package/dist/contradiction-audit-store.d.ts +0 -54
  57. package/dist/contradiction-audit-store.d.ts.map +0 -1
  58. package/dist/contradiction-audit-store.js +0 -88
  59. package/dist/contradiction-detector.d.ts +0 -78
  60. package/dist/contradiction-detector.d.ts.map +0 -1
  61. package/dist/contradiction-detector.js +0 -362
  62. package/dist/contradiction-resolution-policy.d.ts +0 -21
  63. package/dist/contradiction-resolution-policy.d.ts.map +0 -1
  64. package/dist/contradiction-resolution-policy.js +0 -17
  65. package/dist/cross-agent.d.ts +0 -74
  66. package/dist/cross-agent.d.ts.map +0 -1
  67. package/dist/cross-agent.js +0 -271
  68. package/dist/db.d.ts +0 -131
  69. package/dist/db.d.ts.map +0 -1
  70. package/dist/db.js +0 -410
  71. package/dist/degradation.d.ts +0 -102
  72. package/dist/degradation.d.ts.map +0 -1
  73. package/dist/degradation.js +0 -141
  74. package/dist/desired-state-store.d.ts +0 -100
  75. package/dist/desired-state-store.d.ts.map +0 -1
  76. package/dist/desired-state-store.js +0 -222
  77. package/dist/doc-chunk-store.d.ts +0 -140
  78. package/dist/doc-chunk-store.d.ts.map +0 -1
  79. package/dist/doc-chunk-store.js +0 -391
  80. package/dist/doc-chunker.d.ts +0 -99
  81. package/dist/doc-chunker.d.ts.map +0 -1
  82. package/dist/doc-chunker.js +0 -324
  83. package/dist/dreaming-promoter.d.ts +0 -124
  84. package/dist/dreaming-promoter.d.ts.map +0 -1
  85. package/dist/dreaming-promoter.js +0 -447
  86. package/dist/episode-store.d.ts +0 -49
  87. package/dist/episode-store.d.ts.map +0 -1
  88. package/dist/episode-store.js +0 -135
  89. package/dist/expertise-store.d.ts +0 -129
  90. package/dist/expertise-store.d.ts.map +0 -1
  91. package/dist/expertise-store.js +0 -342
  92. package/dist/fact-store.d.ts +0 -90
  93. package/dist/fact-store.d.ts.map +0 -1
  94. package/dist/fact-store.js +0 -283
  95. package/dist/fleet-store.d.ts +0 -144
  96. package/dist/fleet-store.d.ts.map +0 -1
  97. package/dist/fleet-store.js +0 -276
  98. package/dist/fos-mod.d.ts +0 -178
  99. package/dist/fos-mod.d.ts.map +0 -1
  100. package/dist/fos-mod.js +0 -416
  101. package/dist/hybrid-retrieval.d.ts +0 -64
  102. package/dist/hybrid-retrieval.d.ts.map +0 -1
  103. package/dist/hybrid-retrieval.js +0 -344
  104. package/dist/image-eviction.d.ts +0 -49
  105. package/dist/image-eviction.d.ts.map +0 -1
  106. package/dist/image-eviction.js +0 -251
  107. package/dist/index.d.ts +0 -718
  108. package/dist/index.d.ts.map +0 -1
  109. package/dist/index.js +0 -1469
  110. package/dist/keystone-scorer.d.ts +0 -51
  111. package/dist/keystone-scorer.d.ts.map +0 -1
  112. package/dist/keystone-scorer.js +0 -52
  113. package/dist/knowledge-graph.d.ts +0 -110
  114. package/dist/knowledge-graph.d.ts.map +0 -1
  115. package/dist/knowledge-graph.js +0 -305
  116. package/dist/knowledge-lint.d.ts +0 -31
  117. package/dist/knowledge-lint.d.ts.map +0 -1
  118. package/dist/knowledge-lint.js +0 -155
  119. package/dist/knowledge-store.d.ts +0 -72
  120. package/dist/knowledge-store.d.ts.map +0 -1
  121. package/dist/knowledge-store.js +0 -247
  122. package/dist/library-schema.d.ts +0 -27
  123. package/dist/library-schema.d.ts.map +0 -1
  124. package/dist/library-schema.js +0 -1343
  125. package/dist/message-store.d.ts +0 -181
  126. package/dist/message-store.d.ts.map +0 -1
  127. package/dist/message-store.js +0 -573
  128. package/dist/metrics-dashboard.d.ts +0 -114
  129. package/dist/metrics-dashboard.d.ts.map +0 -1
  130. package/dist/metrics-dashboard.js +0 -260
  131. package/dist/obsidian-exporter.d.ts +0 -57
  132. package/dist/obsidian-exporter.d.ts.map +0 -1
  133. package/dist/obsidian-exporter.js +0 -274
  134. package/dist/obsidian-watcher.d.ts +0 -147
  135. package/dist/obsidian-watcher.d.ts.map +0 -1
  136. package/dist/obsidian-watcher.js +0 -403
  137. package/dist/open-domain.d.ts +0 -46
  138. package/dist/open-domain.d.ts.map +0 -1
  139. package/dist/open-domain.js +0 -125
  140. package/dist/preference-store.d.ts +0 -54
  141. package/dist/preference-store.d.ts.map +0 -1
  142. package/dist/preference-store.js +0 -109
  143. package/dist/preservation-gate.d.ts +0 -82
  144. package/dist/preservation-gate.d.ts.map +0 -1
  145. package/dist/preservation-gate.js +0 -150
  146. package/dist/proactive-pass.d.ts +0 -63
  147. package/dist/proactive-pass.d.ts.map +0 -1
  148. package/dist/proactive-pass.js +0 -293
  149. package/dist/profiles.d.ts +0 -46
  150. package/dist/profiles.d.ts.map +0 -1
  151. package/dist/profiles.js +0 -262
  152. package/dist/provider-translator.d.ts +0 -50
  153. package/dist/provider-translator.d.ts.map +0 -1
  154. package/dist/provider-translator.js +0 -403
  155. package/dist/rate-limiter.d.ts +0 -76
  156. package/dist/rate-limiter.d.ts.map +0 -1
  157. package/dist/rate-limiter.js +0 -179
  158. package/dist/repair-tool-pairs.d.ts +0 -38
  159. package/dist/repair-tool-pairs.d.ts.map +0 -1
  160. package/dist/repair-tool-pairs.js +0 -209
  161. package/dist/replay-recovery.d.ts +0 -29
  162. package/dist/replay-recovery.d.ts.map +0 -1
  163. package/dist/replay-recovery.js +0 -82
  164. package/dist/reranker.d.ts +0 -95
  165. package/dist/reranker.d.ts.map +0 -1
  166. package/dist/reranker.js +0 -308
  167. package/dist/retrieval-policy.d.ts +0 -51
  168. package/dist/retrieval-policy.d.ts.map +0 -1
  169. package/dist/retrieval-policy.js +0 -77
  170. package/dist/schema.d.ts +0 -15
  171. package/dist/schema.d.ts.map +0 -1
  172. package/dist/schema.js +0 -300
  173. package/dist/secret-scanner.d.ts +0 -51
  174. package/dist/secret-scanner.d.ts.map +0 -1
  175. package/dist/secret-scanner.js +0 -248
  176. package/dist/seed.d.ts +0 -108
  177. package/dist/seed.d.ts.map +0 -1
  178. package/dist/seed.js +0 -177
  179. package/dist/session-flusher.d.ts +0 -53
  180. package/dist/session-flusher.d.ts.map +0 -1
  181. package/dist/session-flusher.js +0 -69
  182. package/dist/session-topic-map.d.ts +0 -41
  183. package/dist/session-topic-map.d.ts.map +0 -1
  184. package/dist/session-topic-map.js +0 -77
  185. package/dist/spawn-context.d.ts +0 -54
  186. package/dist/spawn-context.d.ts.map +0 -1
  187. package/dist/spawn-context.js +0 -159
  188. package/dist/system-store.d.ts +0 -73
  189. package/dist/system-store.d.ts.map +0 -1
  190. package/dist/system-store.js +0 -182
  191. package/dist/temporal-store.d.ts +0 -81
  192. package/dist/temporal-store.d.ts.map +0 -1
  193. package/dist/temporal-store.js +0 -149
  194. package/dist/tool-artifact-store.d.ts +0 -98
  195. package/dist/tool-artifact-store.d.ts.map +0 -1
  196. package/dist/tool-artifact-store.js +0 -244
  197. package/dist/topic-detector.d.ts +0 -35
  198. package/dist/topic-detector.d.ts.map +0 -1
  199. package/dist/topic-detector.js +0 -249
  200. package/dist/topic-store.d.ts +0 -51
  201. package/dist/topic-store.d.ts.map +0 -1
  202. package/dist/topic-store.js +0 -175
  203. package/dist/topic-synthesizer.d.ts +0 -51
  204. package/dist/topic-synthesizer.d.ts.map +0 -1
  205. package/dist/topic-synthesizer.js +0 -316
  206. package/dist/trigger-registry.d.ts +0 -63
  207. package/dist/trigger-registry.d.ts.map +0 -1
  208. package/dist/trigger-registry.js +0 -163
  209. package/dist/types.d.ts +0 -815
  210. package/dist/types.d.ts.map +0 -1
  211. package/dist/types.js +0 -9
  212. package/dist/vector-store.d.ts +0 -180
  213. package/dist/vector-store.d.ts.map +0 -1
  214. package/dist/vector-store.js +0 -1041
  215. package/dist/version.d.ts +0 -34
  216. package/dist/version.d.ts.map +0 -1
  217. package/dist/version.js +0 -34
  218. package/dist/wiki-page-emitter.d.ts +0 -65
  219. package/dist/wiki-page-emitter.d.ts.map +0 -1
  220. package/dist/wiki-page-emitter.js +0 -258
  221. package/dist/work-store.d.ts +0 -112
  222. package/dist/work-store.d.ts.map +0 -1
  223. package/dist/work-store.js +0 -273
  224. package/memory-plugin/dist/index.d.ts +0 -24
  225. package/memory-plugin/dist/index.d.ts.map +0 -1
  226. package/memory-plugin/dist/index.js +0 -300
  227. package/memory-plugin/dist/index.js.map +0 -1
  228. package/node_modules/sqlite-vec/README.md +0 -1
  229. package/node_modules/sqlite-vec/index.cjs +0 -46
  230. package/node_modules/sqlite-vec/index.d.ts +0 -17
  231. package/node_modules/sqlite-vec/index.mjs +0 -47
  232. package/node_modules/sqlite-vec/package.json +0 -1
  233. package/node_modules/sqlite-vec-linux-x64/README.md +0 -1
  234. package/node_modules/sqlite-vec-linux-x64/package.json +0 -1
  235. package/node_modules/sqlite-vec-linux-x64/vec0.so +0 -0
  236. package/node_modules/zod/LICENSE +0 -21
  237. package/node_modules/zod/README.md +0 -208
  238. package/node_modules/zod/index.cjs +0 -33
  239. package/node_modules/zod/index.d.cts +0 -4
  240. package/node_modules/zod/index.d.ts +0 -4
  241. package/node_modules/zod/index.js +0 -4
  242. package/node_modules/zod/locales/index.cjs +0 -17
  243. package/node_modules/zod/locales/index.d.cts +0 -1
  244. package/node_modules/zod/locales/index.d.ts +0 -1
  245. package/node_modules/zod/locales/index.js +0 -1
  246. package/node_modules/zod/locales/package.json +0 -6
  247. package/node_modules/zod/mini/index.cjs +0 -32
  248. package/node_modules/zod/mini/index.d.cts +0 -3
  249. package/node_modules/zod/mini/index.d.ts +0 -3
  250. package/node_modules/zod/mini/index.js +0 -3
  251. package/node_modules/zod/mini/package.json +0 -6
  252. package/node_modules/zod/package.json +0 -135
  253. package/node_modules/zod/src/index.ts +0 -4
  254. package/node_modules/zod/src/locales/index.ts +0 -1
  255. package/node_modules/zod/src/mini/index.ts +0 -3
  256. package/node_modules/zod/src/v3/ZodError.ts +0 -330
  257. package/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  258. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  259. package/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  260. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  261. package/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  262. package/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  263. package/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  264. package/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  265. package/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  266. package/node_modules/zod/src/v3/errors.ts +0 -13
  267. package/node_modules/zod/src/v3/external.ts +0 -6
  268. package/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  269. package/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  270. package/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  271. package/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  272. package/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  273. package/node_modules/zod/src/v3/helpers/util.ts +0 -224
  274. package/node_modules/zod/src/v3/index.ts +0 -4
  275. package/node_modules/zod/src/v3/locales/en.ts +0 -124
  276. package/node_modules/zod/src/v3/standard-schema.ts +0 -113
  277. package/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  278. package/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  279. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  280. package/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  281. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  282. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  283. package/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  284. package/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  285. package/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  286. package/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  287. package/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  288. package/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
  289. package/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  290. package/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  291. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  292. package/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  293. package/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  294. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  295. package/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  296. package/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  297. package/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  298. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  299. package/node_modules/zod/src/v3/tests/function.test.ts +0 -261
  300. package/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  301. package/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  302. package/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  303. package/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  304. package/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  305. package/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  306. package/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  307. package/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  308. package/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  309. package/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
  310. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  311. package/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  312. package/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  313. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  314. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  315. package/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  316. package/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  317. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  318. package/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  319. package/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  320. package/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  321. package/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  322. package/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  323. package/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  324. package/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  325. package/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  326. package/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  327. package/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  328. package/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  329. package/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  330. package/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  331. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  332. package/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  333. package/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  334. package/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  335. package/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  336. package/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  337. package/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  338. package/node_modules/zod/src/v3/types.ts +0 -5138
  339. package/node_modules/zod/src/v4/classic/checks.ts +0 -32
  340. package/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  341. package/node_modules/zod/src/v4/classic/compat.ts +0 -70
  342. package/node_modules/zod/src/v4/classic/errors.ts +0 -82
  343. package/node_modules/zod/src/v4/classic/external.ts +0 -51
  344. package/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -643
  345. package/node_modules/zod/src/v4/classic/index.ts +0 -5
  346. package/node_modules/zod/src/v4/classic/iso.ts +0 -90
  347. package/node_modules/zod/src/v4/classic/parse.ts +0 -82
  348. package/node_modules/zod/src/v4/classic/schemas.ts +0 -2409
  349. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  350. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
  351. package/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  352. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -210
  353. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  354. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  355. package/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  356. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  357. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
  358. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -276
  359. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  360. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
  361. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -562
  362. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  363. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
  364. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  365. package/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
  366. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
  367. package/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -365
  368. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
  369. package/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  370. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -661
  371. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  372. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -595
  373. package/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  374. package/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
  375. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
  376. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
  377. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -734
  378. package/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
  379. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  380. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
  381. package/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
  382. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
  383. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
  384. package/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
  385. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  386. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
  387. package/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
  388. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  389. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  390. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
  391. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  392. package/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -270
  393. package/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -640
  394. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -223
  395. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -427
  396. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
  397. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
  398. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
  399. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -282
  400. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  401. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  402. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  403. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  404. package/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -632
  405. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -582
  406. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -570
  407. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
  408. package/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
  409. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
  410. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
  411. package/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1175
  412. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
  413. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
  414. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
  415. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -2990
  416. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -361
  417. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -183
  418. package/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -219
  419. package/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
  420. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  421. package/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  422. package/node_modules/zod/src/v4/core/api.ts +0 -1798
  423. package/node_modules/zod/src/v4/core/checks.ts +0 -1293
  424. package/node_modules/zod/src/v4/core/config.ts +0 -15
  425. package/node_modules/zod/src/v4/core/core.ts +0 -138
  426. package/node_modules/zod/src/v4/core/doc.ts +0 -44
  427. package/node_modules/zod/src/v4/core/errors.ts +0 -448
  428. package/node_modules/zod/src/v4/core/index.ts +0 -16
  429. package/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
  430. package/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -667
  431. package/node_modules/zod/src/v4/core/json-schema.ts +0 -147
  432. package/node_modules/zod/src/v4/core/parse.ts +0 -195
  433. package/node_modules/zod/src/v4/core/regexes.ts +0 -183
  434. package/node_modules/zod/src/v4/core/registries.ts +0 -105
  435. package/node_modules/zod/src/v4/core/schemas.ts +0 -4538
  436. package/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
  437. package/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
  438. package/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  439. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  440. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  441. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
  442. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
  443. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
  444. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  445. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  446. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -83
  447. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -67
  448. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
  449. package/node_modules/zod/src/v4/core/to-json-schema.ts +0 -613
  450. package/node_modules/zod/src/v4/core/util.ts +0 -966
  451. package/node_modules/zod/src/v4/core/versions.ts +0 -5
  452. package/node_modules/zod/src/v4/core/zsf.ts +0 -323
  453. package/node_modules/zod/src/v4/index.ts +0 -4
  454. package/node_modules/zod/src/v4/locales/ar.ts +0 -115
  455. package/node_modules/zod/src/v4/locales/az.ts +0 -111
  456. package/node_modules/zod/src/v4/locales/be.ts +0 -176
  457. package/node_modules/zod/src/v4/locales/bg.ts +0 -128
  458. package/node_modules/zod/src/v4/locales/ca.ts +0 -116
  459. package/node_modules/zod/src/v4/locales/cs.ts +0 -118
  460. package/node_modules/zod/src/v4/locales/da.ts +0 -123
  461. package/node_modules/zod/src/v4/locales/de.ts +0 -116
  462. package/node_modules/zod/src/v4/locales/en.ts +0 -119
  463. package/node_modules/zod/src/v4/locales/eo.ts +0 -118
  464. package/node_modules/zod/src/v4/locales/es.ts +0 -141
  465. package/node_modules/zod/src/v4/locales/fa.ts +0 -126
  466. package/node_modules/zod/src/v4/locales/fi.ts +0 -121
  467. package/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
  468. package/node_modules/zod/src/v4/locales/fr.ts +0 -116
  469. package/node_modules/zod/src/v4/locales/he.ts +0 -246
  470. package/node_modules/zod/src/v4/locales/hu.ts +0 -117
  471. package/node_modules/zod/src/v4/locales/hy.ts +0 -164
  472. package/node_modules/zod/src/v4/locales/id.ts +0 -115
  473. package/node_modules/zod/src/v4/locales/index.ts +0 -49
  474. package/node_modules/zod/src/v4/locales/is.ts +0 -119
  475. package/node_modules/zod/src/v4/locales/it.ts +0 -116
  476. package/node_modules/zod/src/v4/locales/ja.ts +0 -114
  477. package/node_modules/zod/src/v4/locales/ka.ts +0 -123
  478. package/node_modules/zod/src/v4/locales/kh.ts +0 -7
  479. package/node_modules/zod/src/v4/locales/km.ts +0 -119
  480. package/node_modules/zod/src/v4/locales/ko.ts +0 -121
  481. package/node_modules/zod/src/v4/locales/lt.ts +0 -239
  482. package/node_modules/zod/src/v4/locales/mk.ts +0 -118
  483. package/node_modules/zod/src/v4/locales/ms.ts +0 -115
  484. package/node_modules/zod/src/v4/locales/nl.ts +0 -121
  485. package/node_modules/zod/src/v4/locales/no.ts +0 -116
  486. package/node_modules/zod/src/v4/locales/ota.ts +0 -117
  487. package/node_modules/zod/src/v4/locales/pl.ts +0 -118
  488. package/node_modules/zod/src/v4/locales/ps.ts +0 -126
  489. package/node_modules/zod/src/v4/locales/pt.ts +0 -116
  490. package/node_modules/zod/src/v4/locales/ru.ts +0 -176
  491. package/node_modules/zod/src/v4/locales/sl.ts +0 -118
  492. package/node_modules/zod/src/v4/locales/sv.ts +0 -119
  493. package/node_modules/zod/src/v4/locales/ta.ts +0 -118
  494. package/node_modules/zod/src/v4/locales/th.ts +0 -119
  495. package/node_modules/zod/src/v4/locales/tr.ts +0 -111
  496. package/node_modules/zod/src/v4/locales/ua.ts +0 -7
  497. package/node_modules/zod/src/v4/locales/uk.ts +0 -117
  498. package/node_modules/zod/src/v4/locales/ur.ts +0 -119
  499. package/node_modules/zod/src/v4/locales/uz.ts +0 -116
  500. package/node_modules/zod/src/v4/locales/vi.ts +0 -117
  501. package/node_modules/zod/src/v4/locales/yo.ts +0 -124
  502. package/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
  503. package/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
  504. package/node_modules/zod/src/v4/mini/checks.ts +0 -32
  505. package/node_modules/zod/src/v4/mini/coerce.ts +0 -27
  506. package/node_modules/zod/src/v4/mini/external.ts +0 -40
  507. package/node_modules/zod/src/v4/mini/index.ts +0 -3
  508. package/node_modules/zod/src/v4/mini/iso.ts +0 -66
  509. package/node_modules/zod/src/v4/mini/parse.ts +0 -14
  510. package/node_modules/zod/src/v4/mini/schemas.ts +0 -1916
  511. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
  512. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  513. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
  514. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  515. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -529
  516. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  517. package/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  518. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
  519. package/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -963
  520. package/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  521. package/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
  522. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  523. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -275
  524. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
  525. package/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -347
  526. package/node_modules/zod/src/v4-mini/index.ts +0 -3
  527. package/node_modules/zod/v3/ZodError.cjs +0 -138
  528. package/node_modules/zod/v3/ZodError.d.cts +0 -164
  529. package/node_modules/zod/v3/ZodError.d.ts +0 -164
  530. package/node_modules/zod/v3/ZodError.js +0 -133
  531. package/node_modules/zod/v3/errors.cjs +0 -17
  532. package/node_modules/zod/v3/errors.d.cts +0 -5
  533. package/node_modules/zod/v3/errors.d.ts +0 -5
  534. package/node_modules/zod/v3/errors.js +0 -9
  535. package/node_modules/zod/v3/external.cjs +0 -22
  536. package/node_modules/zod/v3/external.d.cts +0 -6
  537. package/node_modules/zod/v3/external.d.ts +0 -6
  538. package/node_modules/zod/v3/external.js +0 -6
  539. package/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  540. package/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  541. package/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  542. package/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  543. package/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  544. package/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  545. package/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  546. package/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  547. package/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  548. package/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  549. package/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  550. package/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  551. package/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  552. package/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  553. package/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  554. package/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  555. package/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  556. package/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  557. package/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  558. package/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  559. package/node_modules/zod/v3/helpers/util.cjs +0 -137
  560. package/node_modules/zod/v3/helpers/util.d.cts +0 -85
  561. package/node_modules/zod/v3/helpers/util.d.ts +0 -85
  562. package/node_modules/zod/v3/helpers/util.js +0 -133
  563. package/node_modules/zod/v3/index.cjs +0 -33
  564. package/node_modules/zod/v3/index.d.cts +0 -4
  565. package/node_modules/zod/v3/index.d.ts +0 -4
  566. package/node_modules/zod/v3/index.js +0 -4
  567. package/node_modules/zod/v3/locales/en.cjs +0 -112
  568. package/node_modules/zod/v3/locales/en.d.cts +0 -3
  569. package/node_modules/zod/v3/locales/en.d.ts +0 -3
  570. package/node_modules/zod/v3/locales/en.js +0 -109
  571. package/node_modules/zod/v3/package.json +0 -6
  572. package/node_modules/zod/v3/standard-schema.cjs +0 -2
  573. package/node_modules/zod/v3/standard-schema.d.cts +0 -102
  574. package/node_modules/zod/v3/standard-schema.d.ts +0 -102
  575. package/node_modules/zod/v3/standard-schema.js +0 -1
  576. package/node_modules/zod/v3/types.cjs +0 -3777
  577. package/node_modules/zod/v3/types.d.cts +0 -1034
  578. package/node_modules/zod/v3/types.d.ts +0 -1034
  579. package/node_modules/zod/v3/types.js +0 -3695
  580. package/node_modules/zod/v4/classic/checks.cjs +0 -33
  581. package/node_modules/zod/v4/classic/checks.d.cts +0 -1
  582. package/node_modules/zod/v4/classic/checks.d.ts +0 -1
  583. package/node_modules/zod/v4/classic/checks.js +0 -1
  584. package/node_modules/zod/v4/classic/coerce.cjs +0 -47
  585. package/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  586. package/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  587. package/node_modules/zod/v4/classic/coerce.js +0 -17
  588. package/node_modules/zod/v4/classic/compat.cjs +0 -61
  589. package/node_modules/zod/v4/classic/compat.d.cts +0 -50
  590. package/node_modules/zod/v4/classic/compat.d.ts +0 -50
  591. package/node_modules/zod/v4/classic/compat.js +0 -31
  592. package/node_modules/zod/v4/classic/errors.cjs +0 -74
  593. package/node_modules/zod/v4/classic/errors.d.cts +0 -30
  594. package/node_modules/zod/v4/classic/errors.d.ts +0 -30
  595. package/node_modules/zod/v4/classic/errors.js +0 -48
  596. package/node_modules/zod/v4/classic/external.cjs +0 -73
  597. package/node_modules/zod/v4/classic/external.d.cts +0 -15
  598. package/node_modules/zod/v4/classic/external.d.ts +0 -15
  599. package/node_modules/zod/v4/classic/external.js +0 -20
  600. package/node_modules/zod/v4/classic/from-json-schema.cjs +0 -610
  601. package/node_modules/zod/v4/classic/from-json-schema.d.cts +0 -12
  602. package/node_modules/zod/v4/classic/from-json-schema.d.ts +0 -12
  603. package/node_modules/zod/v4/classic/from-json-schema.js +0 -584
  604. package/node_modules/zod/v4/classic/index.cjs +0 -33
  605. package/node_modules/zod/v4/classic/index.d.cts +0 -4
  606. package/node_modules/zod/v4/classic/index.d.ts +0 -4
  607. package/node_modules/zod/v4/classic/index.js +0 -4
  608. package/node_modules/zod/v4/classic/iso.cjs +0 -60
  609. package/node_modules/zod/v4/classic/iso.d.cts +0 -22
  610. package/node_modules/zod/v4/classic/iso.d.ts +0 -22
  611. package/node_modules/zod/v4/classic/iso.js +0 -30
  612. package/node_modules/zod/v4/classic/package.json +0 -6
  613. package/node_modules/zod/v4/classic/parse.cjs +0 -41
  614. package/node_modules/zod/v4/classic/parse.d.cts +0 -31
  615. package/node_modules/zod/v4/classic/parse.d.ts +0 -31
  616. package/node_modules/zod/v4/classic/parse.js +0 -15
  617. package/node_modules/zod/v4/classic/schemas.cjs +0 -1272
  618. package/node_modules/zod/v4/classic/schemas.d.cts +0 -739
  619. package/node_modules/zod/v4/classic/schemas.d.ts +0 -739
  620. package/node_modules/zod/v4/classic/schemas.js +0 -1157
  621. package/node_modules/zod/v4/core/api.cjs +0 -1222
  622. package/node_modules/zod/v4/core/api.d.cts +0 -304
  623. package/node_modules/zod/v4/core/api.d.ts +0 -304
  624. package/node_modules/zod/v4/core/api.js +0 -1082
  625. package/node_modules/zod/v4/core/checks.cjs +0 -601
  626. package/node_modules/zod/v4/core/checks.d.cts +0 -278
  627. package/node_modules/zod/v4/core/checks.d.ts +0 -278
  628. package/node_modules/zod/v4/core/checks.js +0 -575
  629. package/node_modules/zod/v4/core/core.cjs +0 -83
  630. package/node_modules/zod/v4/core/core.d.cts +0 -70
  631. package/node_modules/zod/v4/core/core.d.ts +0 -70
  632. package/node_modules/zod/v4/core/core.js +0 -76
  633. package/node_modules/zod/v4/core/doc.cjs +0 -39
  634. package/node_modules/zod/v4/core/doc.d.cts +0 -14
  635. package/node_modules/zod/v4/core/doc.d.ts +0 -14
  636. package/node_modules/zod/v4/core/doc.js +0 -35
  637. package/node_modules/zod/v4/core/errors.cjs +0 -213
  638. package/node_modules/zod/v4/core/errors.d.cts +0 -220
  639. package/node_modules/zod/v4/core/errors.d.ts +0 -220
  640. package/node_modules/zod/v4/core/errors.js +0 -182
  641. package/node_modules/zod/v4/core/index.cjs +0 -47
  642. package/node_modules/zod/v4/core/index.d.cts +0 -16
  643. package/node_modules/zod/v4/core/index.d.ts +0 -16
  644. package/node_modules/zod/v4/core/index.js +0 -16
  645. package/node_modules/zod/v4/core/json-schema-generator.cjs +0 -99
  646. package/node_modules/zod/v4/core/json-schema-generator.d.cts +0 -65
  647. package/node_modules/zod/v4/core/json-schema-generator.d.ts +0 -65
  648. package/node_modules/zod/v4/core/json-schema-generator.js +0 -95
  649. package/node_modules/zod/v4/core/json-schema-processors.cjs +0 -648
  650. package/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -49
  651. package/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -49
  652. package/node_modules/zod/v4/core/json-schema-processors.js +0 -605
  653. package/node_modules/zod/v4/core/json-schema.cjs +0 -2
  654. package/node_modules/zod/v4/core/json-schema.d.cts +0 -88
  655. package/node_modules/zod/v4/core/json-schema.d.ts +0 -88
  656. package/node_modules/zod/v4/core/json-schema.js +0 -1
  657. package/node_modules/zod/v4/core/package.json +0 -6
  658. package/node_modules/zod/v4/core/parse.cjs +0 -131
  659. package/node_modules/zod/v4/core/parse.d.cts +0 -49
  660. package/node_modules/zod/v4/core/parse.d.ts +0 -49
  661. package/node_modules/zod/v4/core/parse.js +0 -93
  662. package/node_modules/zod/v4/core/regexes.cjs +0 -166
  663. package/node_modules/zod/v4/core/regexes.d.cts +0 -79
  664. package/node_modules/zod/v4/core/regexes.d.ts +0 -79
  665. package/node_modules/zod/v4/core/regexes.js +0 -133
  666. package/node_modules/zod/v4/core/registries.cjs +0 -56
  667. package/node_modules/zod/v4/core/registries.d.cts +0 -35
  668. package/node_modules/zod/v4/core/registries.d.ts +0 -35
  669. package/node_modules/zod/v4/core/registries.js +0 -51
  670. package/node_modules/zod/v4/core/schemas.cjs +0 -2124
  671. package/node_modules/zod/v4/core/schemas.d.cts +0 -1146
  672. package/node_modules/zod/v4/core/schemas.d.ts +0 -1146
  673. package/node_modules/zod/v4/core/schemas.js +0 -2093
  674. package/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  675. package/node_modules/zod/v4/core/standard-schema.d.cts +0 -126
  676. package/node_modules/zod/v4/core/standard-schema.d.ts +0 -126
  677. package/node_modules/zod/v4/core/standard-schema.js +0 -1
  678. package/node_modules/zod/v4/core/to-json-schema.cjs +0 -446
  679. package/node_modules/zod/v4/core/to-json-schema.d.cts +0 -114
  680. package/node_modules/zod/v4/core/to-json-schema.d.ts +0 -114
  681. package/node_modules/zod/v4/core/to-json-schema.js +0 -437
  682. package/node_modules/zod/v4/core/util.cjs +0 -710
  683. package/node_modules/zod/v4/core/util.d.cts +0 -199
  684. package/node_modules/zod/v4/core/util.d.ts +0 -199
  685. package/node_modules/zod/v4/core/util.js +0 -651
  686. package/node_modules/zod/v4/core/versions.cjs +0 -8
  687. package/node_modules/zod/v4/core/versions.d.cts +0 -5
  688. package/node_modules/zod/v4/core/versions.d.ts +0 -5
  689. package/node_modules/zod/v4/core/versions.js +0 -5
  690. package/node_modules/zod/v4/index.cjs +0 -22
  691. package/node_modules/zod/v4/index.d.cts +0 -3
  692. package/node_modules/zod/v4/index.d.ts +0 -3
  693. package/node_modules/zod/v4/index.js +0 -3
  694. package/node_modules/zod/v4/locales/ar.cjs +0 -133
  695. package/node_modules/zod/v4/locales/ar.d.cts +0 -5
  696. package/node_modules/zod/v4/locales/ar.d.ts +0 -4
  697. package/node_modules/zod/v4/locales/ar.js +0 -106
  698. package/node_modules/zod/v4/locales/az.cjs +0 -132
  699. package/node_modules/zod/v4/locales/az.d.cts +0 -5
  700. package/node_modules/zod/v4/locales/az.d.ts +0 -4
  701. package/node_modules/zod/v4/locales/az.js +0 -105
  702. package/node_modules/zod/v4/locales/be.cjs +0 -183
  703. package/node_modules/zod/v4/locales/be.d.cts +0 -5
  704. package/node_modules/zod/v4/locales/be.d.ts +0 -4
  705. package/node_modules/zod/v4/locales/be.js +0 -156
  706. package/node_modules/zod/v4/locales/bg.cjs +0 -147
  707. package/node_modules/zod/v4/locales/bg.d.cts +0 -5
  708. package/node_modules/zod/v4/locales/bg.d.ts +0 -4
  709. package/node_modules/zod/v4/locales/bg.js +0 -120
  710. package/node_modules/zod/v4/locales/ca.cjs +0 -134
  711. package/node_modules/zod/v4/locales/ca.d.cts +0 -5
  712. package/node_modules/zod/v4/locales/ca.d.ts +0 -4
  713. package/node_modules/zod/v4/locales/ca.js +0 -107
  714. package/node_modules/zod/v4/locales/cs.cjs +0 -138
  715. package/node_modules/zod/v4/locales/cs.d.cts +0 -5
  716. package/node_modules/zod/v4/locales/cs.d.ts +0 -4
  717. package/node_modules/zod/v4/locales/cs.js +0 -111
  718. package/node_modules/zod/v4/locales/da.cjs +0 -142
  719. package/node_modules/zod/v4/locales/da.d.cts +0 -5
  720. package/node_modules/zod/v4/locales/da.d.ts +0 -4
  721. package/node_modules/zod/v4/locales/da.js +0 -115
  722. package/node_modules/zod/v4/locales/de.cjs +0 -135
  723. package/node_modules/zod/v4/locales/de.d.cts +0 -5
  724. package/node_modules/zod/v4/locales/de.d.ts +0 -4
  725. package/node_modules/zod/v4/locales/de.js +0 -108
  726. package/node_modules/zod/v4/locales/en.cjs +0 -136
  727. package/node_modules/zod/v4/locales/en.d.cts +0 -5
  728. package/node_modules/zod/v4/locales/en.d.ts +0 -4
  729. package/node_modules/zod/v4/locales/en.js +0 -109
  730. package/node_modules/zod/v4/locales/eo.cjs +0 -136
  731. package/node_modules/zod/v4/locales/eo.d.cts +0 -5
  732. package/node_modules/zod/v4/locales/eo.d.ts +0 -4
  733. package/node_modules/zod/v4/locales/eo.js +0 -109
  734. package/node_modules/zod/v4/locales/es.cjs +0 -159
  735. package/node_modules/zod/v4/locales/es.d.cts +0 -5
  736. package/node_modules/zod/v4/locales/es.d.ts +0 -4
  737. package/node_modules/zod/v4/locales/es.js +0 -132
  738. package/node_modules/zod/v4/locales/fa.cjs +0 -141
  739. package/node_modules/zod/v4/locales/fa.d.cts +0 -5
  740. package/node_modules/zod/v4/locales/fa.d.ts +0 -4
  741. package/node_modules/zod/v4/locales/fa.js +0 -114
  742. package/node_modules/zod/v4/locales/fi.cjs +0 -139
  743. package/node_modules/zod/v4/locales/fi.d.cts +0 -5
  744. package/node_modules/zod/v4/locales/fi.d.ts +0 -4
  745. package/node_modules/zod/v4/locales/fi.js +0 -112
  746. package/node_modules/zod/v4/locales/fr-CA.cjs +0 -134
  747. package/node_modules/zod/v4/locales/fr-CA.d.cts +0 -5
  748. package/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  749. package/node_modules/zod/v4/locales/fr-CA.js +0 -107
  750. package/node_modules/zod/v4/locales/fr.cjs +0 -135
  751. package/node_modules/zod/v4/locales/fr.d.cts +0 -5
  752. package/node_modules/zod/v4/locales/fr.d.ts +0 -4
  753. package/node_modules/zod/v4/locales/fr.js +0 -108
  754. package/node_modules/zod/v4/locales/he.cjs +0 -241
  755. package/node_modules/zod/v4/locales/he.d.cts +0 -5
  756. package/node_modules/zod/v4/locales/he.d.ts +0 -4
  757. package/node_modules/zod/v4/locales/he.js +0 -214
  758. package/node_modules/zod/v4/locales/hu.cjs +0 -135
  759. package/node_modules/zod/v4/locales/hu.d.cts +0 -5
  760. package/node_modules/zod/v4/locales/hu.d.ts +0 -4
  761. package/node_modules/zod/v4/locales/hu.js +0 -108
  762. package/node_modules/zod/v4/locales/hy.cjs +0 -174
  763. package/node_modules/zod/v4/locales/hy.d.cts +0 -5
  764. package/node_modules/zod/v4/locales/hy.d.ts +0 -4
  765. package/node_modules/zod/v4/locales/hy.js +0 -147
  766. package/node_modules/zod/v4/locales/id.cjs +0 -133
  767. package/node_modules/zod/v4/locales/id.d.cts +0 -5
  768. package/node_modules/zod/v4/locales/id.d.ts +0 -4
  769. package/node_modules/zod/v4/locales/id.js +0 -106
  770. package/node_modules/zod/v4/locales/index.cjs +0 -104
  771. package/node_modules/zod/v4/locales/index.d.cts +0 -49
  772. package/node_modules/zod/v4/locales/index.d.ts +0 -49
  773. package/node_modules/zod/v4/locales/index.js +0 -49
  774. package/node_modules/zod/v4/locales/is.cjs +0 -136
  775. package/node_modules/zod/v4/locales/is.d.cts +0 -5
  776. package/node_modules/zod/v4/locales/is.d.ts +0 -4
  777. package/node_modules/zod/v4/locales/is.js +0 -109
  778. package/node_modules/zod/v4/locales/it.cjs +0 -135
  779. package/node_modules/zod/v4/locales/it.d.cts +0 -5
  780. package/node_modules/zod/v4/locales/it.d.ts +0 -4
  781. package/node_modules/zod/v4/locales/it.js +0 -108
  782. package/node_modules/zod/v4/locales/ja.cjs +0 -134
  783. package/node_modules/zod/v4/locales/ja.d.cts +0 -5
  784. package/node_modules/zod/v4/locales/ja.d.ts +0 -4
  785. package/node_modules/zod/v4/locales/ja.js +0 -107
  786. package/node_modules/zod/v4/locales/ka.cjs +0 -139
  787. package/node_modules/zod/v4/locales/ka.d.cts +0 -5
  788. package/node_modules/zod/v4/locales/ka.d.ts +0 -4
  789. package/node_modules/zod/v4/locales/ka.js +0 -112
  790. package/node_modules/zod/v4/locales/kh.cjs +0 -12
  791. package/node_modules/zod/v4/locales/kh.d.cts +0 -5
  792. package/node_modules/zod/v4/locales/kh.d.ts +0 -5
  793. package/node_modules/zod/v4/locales/kh.js +0 -5
  794. package/node_modules/zod/v4/locales/km.cjs +0 -137
  795. package/node_modules/zod/v4/locales/km.d.cts +0 -5
  796. package/node_modules/zod/v4/locales/km.d.ts +0 -4
  797. package/node_modules/zod/v4/locales/km.js +0 -110
  798. package/node_modules/zod/v4/locales/ko.cjs +0 -138
  799. package/node_modules/zod/v4/locales/ko.d.cts +0 -5
  800. package/node_modules/zod/v4/locales/ko.d.ts +0 -4
  801. package/node_modules/zod/v4/locales/ko.js +0 -111
  802. package/node_modules/zod/v4/locales/lt.cjs +0 -230
  803. package/node_modules/zod/v4/locales/lt.d.cts +0 -5
  804. package/node_modules/zod/v4/locales/lt.d.ts +0 -4
  805. package/node_modules/zod/v4/locales/lt.js +0 -203
  806. package/node_modules/zod/v4/locales/mk.cjs +0 -136
  807. package/node_modules/zod/v4/locales/mk.d.cts +0 -5
  808. package/node_modules/zod/v4/locales/mk.d.ts +0 -4
  809. package/node_modules/zod/v4/locales/mk.js +0 -109
  810. package/node_modules/zod/v4/locales/ms.cjs +0 -134
  811. package/node_modules/zod/v4/locales/ms.d.cts +0 -5
  812. package/node_modules/zod/v4/locales/ms.d.ts +0 -4
  813. package/node_modules/zod/v4/locales/ms.js +0 -107
  814. package/node_modules/zod/v4/locales/nl.cjs +0 -137
  815. package/node_modules/zod/v4/locales/nl.d.cts +0 -5
  816. package/node_modules/zod/v4/locales/nl.d.ts +0 -4
  817. package/node_modules/zod/v4/locales/nl.js +0 -110
  818. package/node_modules/zod/v4/locales/no.cjs +0 -135
  819. package/node_modules/zod/v4/locales/no.d.cts +0 -5
  820. package/node_modules/zod/v4/locales/no.d.ts +0 -4
  821. package/node_modules/zod/v4/locales/no.js +0 -108
  822. package/node_modules/zod/v4/locales/ota.cjs +0 -136
  823. package/node_modules/zod/v4/locales/ota.d.cts +0 -5
  824. package/node_modules/zod/v4/locales/ota.d.ts +0 -4
  825. package/node_modules/zod/v4/locales/ota.js +0 -109
  826. package/node_modules/zod/v4/locales/package.json +0 -6
  827. package/node_modules/zod/v4/locales/pl.cjs +0 -136
  828. package/node_modules/zod/v4/locales/pl.d.cts +0 -5
  829. package/node_modules/zod/v4/locales/pl.d.ts +0 -4
  830. package/node_modules/zod/v4/locales/pl.js +0 -109
  831. package/node_modules/zod/v4/locales/ps.cjs +0 -141
  832. package/node_modules/zod/v4/locales/ps.d.cts +0 -5
  833. package/node_modules/zod/v4/locales/ps.d.ts +0 -4
  834. package/node_modules/zod/v4/locales/ps.js +0 -114
  835. package/node_modules/zod/v4/locales/pt.cjs +0 -135
  836. package/node_modules/zod/v4/locales/pt.d.cts +0 -5
  837. package/node_modules/zod/v4/locales/pt.d.ts +0 -4
  838. package/node_modules/zod/v4/locales/pt.js +0 -108
  839. package/node_modules/zod/v4/locales/ru.cjs +0 -183
  840. package/node_modules/zod/v4/locales/ru.d.cts +0 -5
  841. package/node_modules/zod/v4/locales/ru.d.ts +0 -4
  842. package/node_modules/zod/v4/locales/ru.js +0 -156
  843. package/node_modules/zod/v4/locales/sl.cjs +0 -136
  844. package/node_modules/zod/v4/locales/sl.d.cts +0 -5
  845. package/node_modules/zod/v4/locales/sl.d.ts +0 -4
  846. package/node_modules/zod/v4/locales/sl.js +0 -109
  847. package/node_modules/zod/v4/locales/sv.cjs +0 -137
  848. package/node_modules/zod/v4/locales/sv.d.cts +0 -5
  849. package/node_modules/zod/v4/locales/sv.d.ts +0 -4
  850. package/node_modules/zod/v4/locales/sv.js +0 -110
  851. package/node_modules/zod/v4/locales/ta.cjs +0 -137
  852. package/node_modules/zod/v4/locales/ta.d.cts +0 -5
  853. package/node_modules/zod/v4/locales/ta.d.ts +0 -4
  854. package/node_modules/zod/v4/locales/ta.js +0 -110
  855. package/node_modules/zod/v4/locales/th.cjs +0 -137
  856. package/node_modules/zod/v4/locales/th.d.cts +0 -5
  857. package/node_modules/zod/v4/locales/th.d.ts +0 -4
  858. package/node_modules/zod/v4/locales/th.js +0 -110
  859. package/node_modules/zod/v4/locales/tr.cjs +0 -132
  860. package/node_modules/zod/v4/locales/tr.d.cts +0 -5
  861. package/node_modules/zod/v4/locales/tr.d.ts +0 -4
  862. package/node_modules/zod/v4/locales/tr.js +0 -105
  863. package/node_modules/zod/v4/locales/ua.cjs +0 -12
  864. package/node_modules/zod/v4/locales/ua.d.cts +0 -5
  865. package/node_modules/zod/v4/locales/ua.d.ts +0 -5
  866. package/node_modules/zod/v4/locales/ua.js +0 -5
  867. package/node_modules/zod/v4/locales/uk.cjs +0 -135
  868. package/node_modules/zod/v4/locales/uk.d.cts +0 -5
  869. package/node_modules/zod/v4/locales/uk.d.ts +0 -4
  870. package/node_modules/zod/v4/locales/uk.js +0 -108
  871. package/node_modules/zod/v4/locales/ur.cjs +0 -137
  872. package/node_modules/zod/v4/locales/ur.d.cts +0 -5
  873. package/node_modules/zod/v4/locales/ur.d.ts +0 -4
  874. package/node_modules/zod/v4/locales/ur.js +0 -110
  875. package/node_modules/zod/v4/locales/uz.cjs +0 -136
  876. package/node_modules/zod/v4/locales/uz.d.cts +0 -5
  877. package/node_modules/zod/v4/locales/uz.d.ts +0 -4
  878. package/node_modules/zod/v4/locales/uz.js +0 -109
  879. package/node_modules/zod/v4/locales/vi.cjs +0 -135
  880. package/node_modules/zod/v4/locales/vi.d.cts +0 -5
  881. package/node_modules/zod/v4/locales/vi.d.ts +0 -4
  882. package/node_modules/zod/v4/locales/vi.js +0 -108
  883. package/node_modules/zod/v4/locales/yo.cjs +0 -134
  884. package/node_modules/zod/v4/locales/yo.d.cts +0 -5
  885. package/node_modules/zod/v4/locales/yo.d.ts +0 -4
  886. package/node_modules/zod/v4/locales/yo.js +0 -107
  887. package/node_modules/zod/v4/locales/zh-CN.cjs +0 -136
  888. package/node_modules/zod/v4/locales/zh-CN.d.cts +0 -5
  889. package/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  890. package/node_modules/zod/v4/locales/zh-CN.js +0 -109
  891. package/node_modules/zod/v4/locales/zh-TW.cjs +0 -134
  892. package/node_modules/zod/v4/locales/zh-TW.d.cts +0 -5
  893. package/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  894. package/node_modules/zod/v4/locales/zh-TW.js +0 -107
  895. package/node_modules/zod/v4/mini/checks.cjs +0 -34
  896. package/node_modules/zod/v4/mini/checks.d.cts +0 -1
  897. package/node_modules/zod/v4/mini/checks.d.ts +0 -1
  898. package/node_modules/zod/v4/mini/checks.js +0 -1
  899. package/node_modules/zod/v4/mini/coerce.cjs +0 -52
  900. package/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  901. package/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  902. package/node_modules/zod/v4/mini/coerce.js +0 -22
  903. package/node_modules/zod/v4/mini/external.cjs +0 -63
  904. package/node_modules/zod/v4/mini/external.d.cts +0 -12
  905. package/node_modules/zod/v4/mini/external.d.ts +0 -12
  906. package/node_modules/zod/v4/mini/external.js +0 -14
  907. package/node_modules/zod/v4/mini/index.cjs +0 -32
  908. package/node_modules/zod/v4/mini/index.d.cts +0 -3
  909. package/node_modules/zod/v4/mini/index.d.ts +0 -3
  910. package/node_modules/zod/v4/mini/index.js +0 -3
  911. package/node_modules/zod/v4/mini/iso.cjs +0 -64
  912. package/node_modules/zod/v4/mini/iso.d.cts +0 -22
  913. package/node_modules/zod/v4/mini/iso.d.ts +0 -22
  914. package/node_modules/zod/v4/mini/iso.js +0 -34
  915. package/node_modules/zod/v4/mini/package.json +0 -6
  916. package/node_modules/zod/v4/mini/parse.cjs +0 -16
  917. package/node_modules/zod/v4/mini/parse.d.cts +0 -1
  918. package/node_modules/zod/v4/mini/parse.d.ts +0 -1
  919. package/node_modules/zod/v4/mini/parse.js +0 -1
  920. package/node_modules/zod/v4/mini/schemas.cjs +0 -1046
  921. package/node_modules/zod/v4/mini/schemas.d.cts +0 -427
  922. package/node_modules/zod/v4/mini/schemas.d.ts +0 -427
  923. package/node_modules/zod/v4/mini/schemas.js +0 -925
  924. package/node_modules/zod/v4/package.json +0 -6
  925. package/node_modules/zod/v4-mini/index.cjs +0 -32
  926. package/node_modules/zod/v4-mini/index.d.cts +0 -3
  927. package/node_modules/zod/v4-mini/index.d.ts +0 -3
  928. package/node_modules/zod/v4-mini/index.js +0 -3
  929. package/node_modules/zod/v4-mini/package.json +0 -6
  930. package/plugin/dist/index.d.ts +0 -179
  931. package/plugin/dist/index.d.ts.map +0 -1
  932. package/plugin/dist/index.js +0 -3209
  933. package/plugin/dist/index.js.map +0 -1
@@ -1,147 +0,0 @@
1
- /**
2
- * hypermem Obsidian Compatibility Layer
3
- *
4
- * Watch a user-configured Obsidian vault directory and import markdown
5
- * notes into the hypermem fact/doc-chunk pipeline.
6
- *
7
- * Obsidian-specific parsing:
8
- * - YAML frontmatter (--- blocks): extracted as metadata, tags, aliases
9
- * - [[Wikilinks]]: resolved to cross-references, stored as fact relationships
10
- * - [[Wikilink|alias]]: aliased links normalized
11
- * - ![[Embedded files]]: stripped (non-text embeds skipped)
12
- * - #tags: extracted and stored as fact tags
13
- * - Backlinks: tracked via wikilink resolution
14
- *
15
- * Design:
16
- * - Uses fs.watch for low-dependency file watching (no chokidar)
17
- * - Idempotent: tracks file hashes, skips unchanged files
18
- * - Respects .obsidian/app.json excludedFolders if present
19
- * - Sanitizes secrets before ingest (reuses secret-scanner)
20
- * - Does NOT ingest .obsidian/ config files, templates, or attachments
21
- *
22
- * Config (via HyperMemConfig.obsidian):
23
- * vaultPath: Absolute path to Obsidian vault directory
24
- * enabled: Master switch (default: false)
25
- * watchInterval: Polling interval ms for fs.watch fallback (default: 30000)
26
- * collection: Doc-chunk collection name (default: 'obsidian/vault')
27
- * excludeFolders: Additional folders to skip (merged with .obsidian excludedFolders)
28
- * agentId: Agent to scope imported facts to (default: plugin agentId)
29
- * importTags: Import #tags as fact tags (default: true)
30
- * importFrontmatter: Import frontmatter fields as facts (default: true)
31
- * staleDays: Re-import files not seen in N days (default: 7)
32
- */
33
- import { type DocChunk } from './doc-chunker.js';
34
- export interface ObsidianConfig {
35
- /** Absolute path to the Obsidian vault directory */
36
- vaultPath: string;
37
- /** Master switch — vault is not watched unless true */
38
- enabled: boolean;
39
- /** Polling interval ms for change detection (default: 30000) */
40
- watchInterval?: number;
41
- /** Collection name for doc-chunk store (default: 'obsidian/vault') */
42
- collection?: string;
43
- /** Additional folders to exclude from import */
44
- excludeFolders?: string[];
45
- /** Agent ID to scope imported facts to */
46
- agentId?: string;
47
- /** Import #tags as fact tags (default: true) */
48
- importTags?: boolean;
49
- /** Import frontmatter key/value pairs as facts (default: true) */
50
- importFrontmatter?: boolean;
51
- /** Re-import files not seen in N days (default: 7) */
52
- staleDays?: number;
53
- }
54
- export interface ObsidianNote {
55
- /** Relative path from vault root */
56
- relativePath: string;
57
- /** Note title (filename without extension, or frontmatter title) */
58
- title: string;
59
- /** Raw markdown content (post-frontmatter strip) */
60
- content: string;
61
- /** Parsed frontmatter fields */
62
- frontmatter: Record<string, unknown>;
63
- /** Extracted #tags (from content and frontmatter) */
64
- tags: string[];
65
- /** Wikilinks found in this note: [[target]] → target title */
66
- wikilinks: ObsidianWikiLink[];
67
- /** SHA-256 of original file content */
68
- contentHash: string;
69
- /** File mtime */
70
- modifiedAt: Date;
71
- }
72
- export interface ObsidianWikiLink {
73
- /** The target page title (normalized) */
74
- target: string;
75
- /** Alias if present: [[target|alias]] */
76
- alias?: string;
77
- /** Whether this is an embed: ![[target]] */
78
- isEmbed: boolean;
79
- }
80
- export interface ObsidianImportResult {
81
- imported: number;
82
- skipped: number;
83
- failed: number;
84
- chunks: DocChunk[];
85
- notes: ObsidianNote[];
86
- wikilinks: Map<string, ObsidianWikiLink[]>;
87
- }
88
- /**
89
- * Extract YAML frontmatter from a markdown file.
90
- * Returns { frontmatter, body } where frontmatter is a key/value map
91
- * and body is the content after the closing ---.
92
- */
93
- export declare function parseFrontmatter(content: string): {
94
- frontmatter: Record<string, unknown>;
95
- body: string;
96
- };
97
- /**
98
- * Extract all [[wikilinks]] from markdown content.
99
- * Handles:
100
- * [[Page Name]] → { target: 'Page Name' }
101
- * [[Page Name|Alias]] → { target: 'Page Name', alias: 'Alias' }
102
- * ![[Embedded File.png]] → { target: 'Embedded File.png', isEmbed: true }
103
- */
104
- export declare function extractWikilinks(content: string): ObsidianWikiLink[];
105
- /**
106
- * Extract #tags from markdown content (not inside code blocks).
107
- * Also merges frontmatter tags array if present.
108
- */
109
- export declare function extractTags(content: string, frontmatter: Record<string, unknown>): string[];
110
- /**
111
- * Clean Obsidian markdown for chunking:
112
- * - Convert [[wikilinks]] to plain text (preserve the label)
113
- * - Strip ![[embeds]] entirely
114
- * - Strip Obsidian-specific syntax that confuses the chunker
115
- */
116
- export declare function cleanObsidianMarkdown(content: string): string;
117
- /**
118
- * Parse a single Obsidian markdown file into an ObsidianNote.
119
- * Returns null if the file cannot be read or fails secret scanning.
120
- */
121
- export declare function parseObsidianNote(filePath: string, vaultRoot: string): ObsidianNote | null;
122
- /**
123
- * Import all notes from an Obsidian vault into hypermem doc chunks.
124
- *
125
- * This is the main entry point for one-shot import. The watcher calls
126
- * this incrementally on file change events.
127
- *
128
- * @param config ObsidianConfig from HyperMemConfig
129
- * @param seenHashes Map of relativePath → contentHash for skip-unchanged logic
130
- * @returns Import result with chunks ready for doc-chunk-store insertion
131
- */
132
- export declare function importVault(config: ObsidianConfig, seenHashes?: Map<string, string>): ObsidianImportResult;
133
- export type VaultChangeCallback = (result: ObsidianImportResult) => void | Promise<void>;
134
- /**
135
- * Watch an Obsidian vault for changes and trigger imports incrementally.
136
- *
137
- * Uses Node's built-in fs.watch (no chokidar dependency).
138
- * Falls back to polling if watch events are unreliable on the platform.
139
- *
140
- * @param config ObsidianConfig
141
- * @param onChange Callback receiving incremental import results on each change
142
- * @returns stop() Call to unwatch the vault
143
- */
144
- export declare function watchVault(config: ObsidianConfig, onChange: VaultChangeCallback): {
145
- stop: () => void;
146
- };
147
- //# sourceMappingURL=obsidian-watcher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"obsidian-watcher.d.ts","sourceRoot":"","sources":["../src/obsidian-watcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAIH,OAAO,EAA8B,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAK7E,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,sEAAsE;IACtE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,gDAAgD;IAChD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kEAAkE;IAClE,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,sDAAsD;IACtD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,KAAK,EAAE,MAAM,CAAC;IACd,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,qDAAqD;IACrD,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,8DAA8D;IAC9D,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,iBAAiB;IACjB,UAAU,EAAE,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4CAA4C;IAC5C,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,QAAQ,EAAE,CAAC;IACnB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;CAC5C;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG;IACjD,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;CACd,CA8CA;AAID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,EAAE,CAsBpE;AAID;;;GAGG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAqB3F;AAID;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAW7D;AA4ED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA2C1F;AAID;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,cAAc,EACtB,UAAU,GAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAa,GAC1C,oBAAoB,CA+EtB;AAID,MAAM,MAAM,mBAAmB,GAAG,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AAEzF;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CACxB,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,mBAAmB,GAC5B;IAAE,IAAI,EAAE,MAAM,IAAI,CAAA;CAAE,CAmDtB"}
@@ -1,403 +0,0 @@
1
- /**
2
- * hypermem Obsidian Compatibility Layer
3
- *
4
- * Watch a user-configured Obsidian vault directory and import markdown
5
- * notes into the hypermem fact/doc-chunk pipeline.
6
- *
7
- * Obsidian-specific parsing:
8
- * - YAML frontmatter (--- blocks): extracted as metadata, tags, aliases
9
- * - [[Wikilinks]]: resolved to cross-references, stored as fact relationships
10
- * - [[Wikilink|alias]]: aliased links normalized
11
- * - ![[Embedded files]]: stripped (non-text embeds skipped)
12
- * - #tags: extracted and stored as fact tags
13
- * - Backlinks: tracked via wikilink resolution
14
- *
15
- * Design:
16
- * - Uses fs.watch for low-dependency file watching (no chokidar)
17
- * - Idempotent: tracks file hashes, skips unchanged files
18
- * - Respects .obsidian/app.json excludedFolders if present
19
- * - Sanitizes secrets before ingest (reuses secret-scanner)
20
- * - Does NOT ingest .obsidian/ config files, templates, or attachments
21
- *
22
- * Config (via HyperMemConfig.obsidian):
23
- * vaultPath: Absolute path to Obsidian vault directory
24
- * enabled: Master switch (default: false)
25
- * watchInterval: Polling interval ms for fs.watch fallback (default: 30000)
26
- * collection: Doc-chunk collection name (default: 'obsidian/vault')
27
- * excludeFolders: Additional folders to skip (merged with .obsidian excludedFolders)
28
- * agentId: Agent to scope imported facts to (default: plugin agentId)
29
- * importTags: Import #tags as fact tags (default: true)
30
- * importFrontmatter: Import frontmatter fields as facts (default: true)
31
- * staleDays: Re-import files not seen in N days (default: 7)
32
- */
33
- import { watch, readFileSync, readdirSync, statSync, existsSync } from 'node:fs';
34
- import { join, relative, extname, basename } from 'node:path';
35
- import { hashContent, chunkMarkdown } from './doc-chunker.js';
36
- import { isSafeForSharedVisibility } from './secret-scanner.js';
37
- // ─── Frontmatter parser ──────────────────────────────────────────
38
- /**
39
- * Extract YAML frontmatter from a markdown file.
40
- * Returns { frontmatter, body } where frontmatter is a key/value map
41
- * and body is the content after the closing ---.
42
- */
43
- export function parseFrontmatter(content) {
44
- const frontmatter = {};
45
- if (!content.startsWith('---')) {
46
- return { frontmatter, body: content };
47
- }
48
- const end = content.indexOf('\n---', 3);
49
- if (end === -1) {
50
- return { frontmatter, body: content };
51
- }
52
- const yaml = content.slice(4, end).trim();
53
- const body = content.slice(end + 4).trim();
54
- // Simple YAML key: value parser (no nested objects — Obsidian frontmatter is flat)
55
- for (const line of yaml.split('\n')) {
56
- const colonIdx = line.indexOf(':');
57
- if (colonIdx === -1)
58
- continue;
59
- const key = line.slice(0, colonIdx).trim();
60
- const rawVal = line.slice(colonIdx + 1).trim();
61
- if (!key)
62
- continue;
63
- // Handle list values: "- item" lines that follow a key
64
- // Simple case: tags: [tag1, tag2] or tags: tag1, tag2
65
- if (rawVal.startsWith('[') && rawVal.endsWith(']')) {
66
- frontmatter[key] = rawVal
67
- .slice(1, -1)
68
- .split(',')
69
- .map(s => s.trim().replace(/^["']|["']$/g, ''))
70
- .filter(Boolean);
71
- }
72
- else if (rawVal === '' || rawVal === '~' || rawVal === 'null') {
73
- frontmatter[key] = null;
74
- }
75
- else if (rawVal === 'true') {
76
- frontmatter[key] = true;
77
- }
78
- else if (rawVal === 'false') {
79
- frontmatter[key] = false;
80
- }
81
- else if (!isNaN(Number(rawVal)) && rawVal !== '') {
82
- frontmatter[key] = Number(rawVal);
83
- }
84
- else {
85
- frontmatter[key] = rawVal.replace(/^["']|["']$/g, '');
86
- }
87
- }
88
- return { frontmatter, body };
89
- }
90
- // ─── Wikilink extractor ──────────────────────────────────────────
91
- /**
92
- * Extract all [[wikilinks]] from markdown content.
93
- * Handles:
94
- * [[Page Name]] → { target: 'Page Name' }
95
- * [[Page Name|Alias]] → { target: 'Page Name', alias: 'Alias' }
96
- * ![[Embedded File.png]] → { target: 'Embedded File.png', isEmbed: true }
97
- */
98
- export function extractWikilinks(content) {
99
- const links = [];
100
- const pattern = /(!?)\[\[([^\]]+)\]\]/g;
101
- let match;
102
- while ((match = pattern.exec(content)) !== null) {
103
- const isEmbed = match[1] === '!';
104
- const inner = match[2].trim();
105
- const pipeIdx = inner.indexOf('|');
106
- if (pipeIdx !== -1) {
107
- links.push({
108
- target: inner.slice(0, pipeIdx).trim(),
109
- alias: inner.slice(pipeIdx + 1).trim(),
110
- isEmbed,
111
- });
112
- }
113
- else {
114
- links.push({ target: inner, isEmbed });
115
- }
116
- }
117
- return links;
118
- }
119
- // ─── Tag extractor ───────────────────────────────────────────────
120
- /**
121
- * Extract #tags from markdown content (not inside code blocks).
122
- * Also merges frontmatter tags array if present.
123
- */
124
- export function extractTags(content, frontmatter) {
125
- const tags = new Set();
126
- // Content #tags (not inside code blocks or URLs)
127
- const tagPattern = /(?:^|\s)#([a-zA-Z][a-zA-Z0-9/_-]*)/g;
128
- let match;
129
- while ((match = tagPattern.exec(content)) !== null) {
130
- tags.add(match[1].toLowerCase());
131
- }
132
- // Frontmatter tags
133
- const fmTags = frontmatter['tags'];
134
- if (Array.isArray(fmTags)) {
135
- for (const t of fmTags) {
136
- if (typeof t === 'string')
137
- tags.add(t.toLowerCase().replace(/^#/, ''));
138
- }
139
- }
140
- else if (typeof fmTags === 'string') {
141
- tags.add(fmTags.toLowerCase().replace(/^#/, ''));
142
- }
143
- return Array.from(tags);
144
- }
145
- // ─── Content cleaner ─────────────────────────────────────────────
146
- /**
147
- * Clean Obsidian markdown for chunking:
148
- * - Convert [[wikilinks]] to plain text (preserve the label)
149
- * - Strip ![[embeds]] entirely
150
- * - Strip Obsidian-specific syntax that confuses the chunker
151
- */
152
- export function cleanObsidianMarkdown(content) {
153
- return content
154
- // Remove embedded files: ![[file.png]]
155
- .replace(/!\[\[[^\]]+\]\]/g, '')
156
- // Convert wikilinks with alias to alias text: [[Page|Alias]] → Alias
157
- .replace(/\[\[([^\]|]+)\|([^\]]+)\]\]/g, '$2')
158
- // Convert plain wikilinks to plain text: [[Page Name]] → Page Name
159
- .replace(/\[\[([^\]]+)\]\]/g, '$1')
160
- // Strip Obsidian callout syntax: > [!note]
161
- .replace(/^>\s*\[![\w]+\]/gm, '>')
162
- .trim();
163
- }
164
- // ─── Vault scanner ───────────────────────────────────────────────
165
- /**
166
- * Default folders to always exclude from Obsidian import.
167
- */
168
- const DEFAULT_EXCLUDE_FOLDERS = new Set([
169
- '.obsidian',
170
- '.trash',
171
- 'templates',
172
- 'Templates',
173
- 'attachments',
174
- 'Attachments',
175
- '_attachments',
176
- '.git',
177
- ]);
178
- /**
179
- * Read Obsidian's excluded folders from .obsidian/app.json if present.
180
- */
181
- function readObsidianExcludedFolders(vaultPath) {
182
- const appJson = join(vaultPath, '.obsidian', 'app.json');
183
- if (!existsSync(appJson))
184
- return [];
185
- try {
186
- const config = JSON.parse(readFileSync(appJson, 'utf-8'));
187
- return Array.isArray(config.excludedFolders) ? config.excludedFolders : [];
188
- }
189
- catch {
190
- return [];
191
- }
192
- }
193
- /**
194
- * Recursively collect all .md files in a vault, respecting exclusions.
195
- */
196
- function collectVaultFiles(dir, vaultRoot, excludeFolders, results = []) {
197
- let entries;
198
- try {
199
- entries = readdirSync(dir);
200
- }
201
- catch {
202
- return results;
203
- }
204
- for (const entry of entries) {
205
- const fullPath = join(dir, entry);
206
- const relPath = relative(vaultRoot, fullPath);
207
- // Check if any path segment is excluded
208
- const segments = relPath.split('/');
209
- if (segments.some(s => excludeFolders.has(s)))
210
- continue;
211
- let stat;
212
- try {
213
- stat = statSync(fullPath);
214
- }
215
- catch {
216
- continue;
217
- }
218
- if (stat.isDirectory()) {
219
- collectVaultFiles(fullPath, vaultRoot, excludeFolders, results);
220
- }
221
- else if (extname(entry) === '.md') {
222
- results.push(fullPath);
223
- }
224
- }
225
- return results;
226
- }
227
- // ─── Note parser ─────────────────────────────────────────────────
228
- /**
229
- * Parse a single Obsidian markdown file into an ObsidianNote.
230
- * Returns null if the file cannot be read or fails secret scanning.
231
- */
232
- export function parseObsidianNote(filePath, vaultRoot) {
233
- let raw;
234
- try {
235
- raw = readFileSync(filePath, 'utf-8');
236
- }
237
- catch {
238
- return null;
239
- }
240
- // Secret scan before doing anything with content
241
- if (!isSafeForSharedVisibility(raw)) {
242
- return null;
243
- }
244
- const contentHash = hashContent(raw);
245
- const { frontmatter, body } = parseFrontmatter(raw);
246
- const wikilinks = extractWikilinks(body);
247
- const tags = extractTags(body, frontmatter);
248
- const cleanedContent = cleanObsidianMarkdown(body);
249
- const relativePath = relative(vaultRoot, filePath);
250
- // Title: frontmatter title > filename without extension
251
- const title = typeof frontmatter['title'] === 'string'
252
- ? frontmatter['title']
253
- : basename(filePath, '.md');
254
- let modifiedAt;
255
- try {
256
- modifiedAt = new Date(statSync(filePath).mtimeMs);
257
- }
258
- catch {
259
- modifiedAt = new Date();
260
- }
261
- return {
262
- relativePath,
263
- title,
264
- content: cleanedContent,
265
- frontmatter,
266
- tags,
267
- wikilinks,
268
- contentHash,
269
- modifiedAt,
270
- };
271
- }
272
- // ─── Importer ────────────────────────────────────────────────────
273
- /**
274
- * Import all notes from an Obsidian vault into hypermem doc chunks.
275
- *
276
- * This is the main entry point for one-shot import. The watcher calls
277
- * this incrementally on file change events.
278
- *
279
- * @param config ObsidianConfig from HyperMemConfig
280
- * @param seenHashes Map of relativePath → contentHash for skip-unchanged logic
281
- * @returns Import result with chunks ready for doc-chunk-store insertion
282
- */
283
- export function importVault(config, seenHashes = new Map()) {
284
- const { vaultPath, collection = 'obsidian/vault', excludeFolders: userExclude = [], agentId, importTags = true, importFrontmatter: _importFm = true, } = config;
285
- if (!existsSync(vaultPath)) {
286
- return { imported: 0, skipped: 0, failed: 0, chunks: [], notes: [], wikilinks: new Map() };
287
- }
288
- // Build exclusion set
289
- const obsidianExcluded = readObsidianExcludedFolders(vaultPath);
290
- const excludeSet = new Set([
291
- ...DEFAULT_EXCLUDE_FOLDERS,
292
- ...obsidianExcluded,
293
- ...userExclude,
294
- ]);
295
- const files = collectVaultFiles(vaultPath, vaultPath, excludeSet);
296
- const allChunks = [];
297
- const allNotes = [];
298
- const allWikilinks = new Map();
299
- let imported = 0;
300
- let skipped = 0;
301
- let failed = 0;
302
- for (const filePath of files) {
303
- const note = parseObsidianNote(filePath, vaultPath);
304
- if (!note) {
305
- failed++;
306
- continue;
307
- }
308
- // Skip unchanged files
309
- const prev = seenHashes.get(note.relativePath);
310
- if (prev === note.contentHash) {
311
- skipped++;
312
- continue;
313
- }
314
- // Track wikilinks for cross-reference resolution
315
- if (note.wikilinks.length > 0) {
316
- allWikilinks.set(note.relativePath, note.wikilinks);
317
- }
318
- // Build tag annotation to append to content
319
- const tagLine = importTags && note.tags.length > 0
320
- ? `\n\n<!-- tags: ${note.tags.join(', ')} -->`
321
- : '';
322
- const annotatedContent = note.content + tagLine;
323
- // Chunk the cleaned content
324
- const chunks = chunkMarkdown(annotatedContent, {
325
- collection,
326
- sourcePath: note.relativePath,
327
- scope: 'per-agent',
328
- agentId,
329
- });
330
- allChunks.push(...chunks);
331
- allNotes.push(note);
332
- seenHashes.set(note.relativePath, note.contentHash);
333
- imported++;
334
- }
335
- return {
336
- imported,
337
- skipped,
338
- failed,
339
- chunks: allChunks,
340
- notes: allNotes,
341
- wikilinks: allWikilinks,
342
- };
343
- }
344
- /**
345
- * Watch an Obsidian vault for changes and trigger imports incrementally.
346
- *
347
- * Uses Node's built-in fs.watch (no chokidar dependency).
348
- * Falls back to polling if watch events are unreliable on the platform.
349
- *
350
- * @param config ObsidianConfig
351
- * @param onChange Callback receiving incremental import results on each change
352
- * @returns stop() Call to unwatch the vault
353
- */
354
- export function watchVault(config, onChange) {
355
- const seenHashes = new Map();
356
- const interval = config.watchInterval ?? 30_000;
357
- // Initial import
358
- const initial = importVault(config, seenHashes);
359
- if (initial.imported > 0) {
360
- void onChange(initial);
361
- }
362
- // Debounce: coalesce rapid change events into one import pass
363
- let debounceTimer = null;
364
- function scheduleImport() {
365
- if (debounceTimer)
366
- clearTimeout(debounceTimer);
367
- debounceTimer = setTimeout(() => {
368
- const result = importVault(config, seenHashes);
369
- if (result.imported > 0) {
370
- void onChange(result);
371
- }
372
- }, 1500);
373
- }
374
- // fs.watch on the vault directory (recursive where supported)
375
- let watcher = null;
376
- try {
377
- watcher = watch(config.vaultPath, { recursive: true }, (eventType, filename) => {
378
- if (filename && extname(filename) === '.md') {
379
- scheduleImport();
380
- }
381
- });
382
- watcher.on('error', () => {
383
- // fs.watch failed; fall through to polling
384
- watcher = null;
385
- });
386
- }
387
- catch {
388
- watcher = null;
389
- }
390
- // Polling fallback (always runs alongside watch as belt-and-suspenders)
391
- const pollTimer = setInterval(() => {
392
- scheduleImport();
393
- }, interval);
394
- return {
395
- stop() {
396
- if (debounceTimer)
397
- clearTimeout(debounceTimer);
398
- clearInterval(pollTimer);
399
- watcher?.close();
400
- },
401
- };
402
- }
403
- //# sourceMappingURL=obsidian-watcher.js.map
@@ -1,46 +0,0 @@
1
- /**
2
- * open-domain.ts — Open-domain query detection and FTS5 retrieval
3
- *
4
- * LoCoMo benchmark open-domain questions are broad, exploratory, and have no
5
- * topical anchor. They span the full conversation history and require content
6
- * that may have been filtered out by the quality gate (isQualityFact). The
7
- * fix: detect open-domain queries and run a separate FTS5 search against raw
8
- * messages_fts, bypassing the quality filter entirely.
9
- *
10
- * Detection heuristics (conservative — false positives add noise):
11
- * - Short query with no named entities (no TitleCase tokens)
12
- * - Broad interrogative patterns (what did, how did, tell me about, etc.)
13
- * - No temporal signals (those go to the temporal retrieval path)
14
- * - No specific identifiers (URLs, IDs, ticket numbers, version strings)
15
- *
16
- * Retrieval: MessageStore.searchMessages() against messages_fts — covers all
17
- * raw message history regardless of quality gate.
18
- */
19
- import type { DatabaseSync } from 'node:sqlite';
20
- /**
21
- * Returns true if the query looks like an open-domain question:
22
- * broad, exploratory, no specific anchors, no temporal signals.
23
- */
24
- export declare function isOpenDomainQuery(query: string): boolean;
25
- /**
26
- * Build a FTS5 MATCH query from a broad question.
27
- * Strips stop words, question words, and punctuation.
28
- * Returns up to 6 prefix-matched terms joined with OR.
29
- */
30
- export declare function buildOpenDomainFtsQuery(query: string): string | null;
31
- export interface OpenDomainResult {
32
- role: string;
33
- content: string;
34
- createdAt: string;
35
- }
36
- /**
37
- * Search raw message history via FTS5 for open-domain queries.
38
- * Returns up to `limit` matching messages, deduplicated against existing context.
39
- *
40
- * @param db — agent messages DB (contains messages_fts)
41
- * @param query — the user's query
42
- * @param existingContent — already-assembled context (for dedup)
43
- * @param limit — max results (default 10)
44
- */
45
- export declare function searchOpenDomain(db: DatabaseSync, query: string, existingContent: string, limit?: number): OpenDomainResult[];
46
- //# sourceMappingURL=open-domain.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open-domain.d.ts","sourceRoot":"","sources":["../src/open-domain.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAUhD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAiBxD;AAID;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkBpE;AAID,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,YAAY,EAChB,KAAK,EAAE,MAAM,EACb,eAAe,EAAE,MAAM,EACvB,KAAK,GAAE,MAAW,GACjB,gBAAgB,EAAE,CA4CpB"}