@psiclawops/hypermem 0.8.3 → 0.8.4

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 (717) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/INSTALL.md +24 -18
  3. package/README.md +9 -4
  4. package/dist/compaction-fence.d.ts +9 -1
  5. package/dist/compaction-fence.d.ts.map +1 -1
  6. package/dist/compaction-fence.js +25 -4
  7. package/dist/compositor.js +1 -1
  8. package/docs/TUNING.md +1 -1
  9. package/memory-plugin/package.json +2 -2
  10. package/node_modules/sqlite-vec/README.md +1 -0
  11. package/node_modules/sqlite-vec/index.cjs +46 -0
  12. package/node_modules/sqlite-vec/index.d.ts +17 -0
  13. package/node_modules/sqlite-vec/index.mjs +47 -0
  14. package/node_modules/sqlite-vec/package.json +1 -0
  15. package/node_modules/sqlite-vec-linux-x64/README.md +1 -0
  16. package/node_modules/sqlite-vec-linux-x64/package.json +1 -0
  17. package/node_modules/sqlite-vec-linux-x64/vec0.so +0 -0
  18. package/node_modules/zod/LICENSE +21 -0
  19. package/node_modules/zod/README.md +208 -0
  20. package/node_modules/zod/index.cjs +33 -0
  21. package/node_modules/zod/index.d.cts +4 -0
  22. package/node_modules/zod/index.d.ts +4 -0
  23. package/node_modules/zod/index.js +4 -0
  24. package/node_modules/zod/locales/index.cjs +17 -0
  25. package/node_modules/zod/locales/index.d.cts +1 -0
  26. package/node_modules/zod/locales/index.d.ts +1 -0
  27. package/node_modules/zod/locales/index.js +1 -0
  28. package/node_modules/zod/locales/package.json +6 -0
  29. package/node_modules/zod/mini/index.cjs +32 -0
  30. package/node_modules/zod/mini/index.d.cts +3 -0
  31. package/node_modules/zod/mini/index.d.ts +3 -0
  32. package/node_modules/zod/mini/index.js +3 -0
  33. package/node_modules/zod/mini/package.json +6 -0
  34. package/node_modules/zod/package.json +135 -0
  35. package/node_modules/zod/src/index.ts +4 -0
  36. package/node_modules/zod/src/locales/index.ts +1 -0
  37. package/node_modules/zod/src/mini/index.ts +3 -0
  38. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  39. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  40. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  41. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  42. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  43. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  44. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  45. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  46. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  47. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  48. package/node_modules/zod/src/v3/errors.ts +13 -0
  49. package/node_modules/zod/src/v3/external.ts +6 -0
  50. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  51. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  52. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  53. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  54. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  55. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  56. package/node_modules/zod/src/v3/index.ts +4 -0
  57. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  58. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  59. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  60. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  61. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  62. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  63. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  64. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  65. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  66. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  67. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  68. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  69. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  70. package/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  71. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  72. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  73. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  74. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  75. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  76. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  77. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  78. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  79. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  80. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  81. package/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  82. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  83. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  84. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  85. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  86. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  87. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  88. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  89. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  90. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  91. package/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  92. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  93. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  94. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  95. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  96. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  97. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  98. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  99. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  100. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  101. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  102. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  103. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  104. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  105. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  106. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  107. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  108. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  109. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  110. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  111. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  112. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  113. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  114. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  115. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  116. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  117. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  118. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  119. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  120. package/node_modules/zod/src/v3/types.ts +5138 -0
  121. package/node_modules/zod/src/v4/classic/checks.ts +32 -0
  122. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  123. package/node_modules/zod/src/v4/classic/compat.ts +70 -0
  124. package/node_modules/zod/src/v4/classic/errors.ts +82 -0
  125. package/node_modules/zod/src/v4/classic/external.ts +51 -0
  126. package/node_modules/zod/src/v4/classic/from-json-schema.ts +643 -0
  127. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  128. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  129. package/node_modules/zod/src/v4/classic/parse.ts +82 -0
  130. package/node_modules/zod/src/v4/classic/schemas.ts +2409 -0
  131. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  132. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  133. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  134. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +210 -0
  135. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  136. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  137. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  138. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  139. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  140. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +276 -0
  141. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  142. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  143. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +562 -0
  144. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  145. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  146. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  147. package/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  148. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  149. package/node_modules/zod/src/v4/classic/tests/default.test.ts +365 -0
  150. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  151. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  152. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +661 -0
  153. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  154. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +595 -0
  155. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  156. package/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  157. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  158. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  159. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +734 -0
  160. package/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  161. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  162. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  163. package/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  164. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  165. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  166. package/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  167. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  168. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  169. package/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  170. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  171. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  172. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  173. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  174. package/node_modules/zod/src/v4/classic/tests/number.test.ts +270 -0
  175. package/node_modules/zod/src/v4/classic/tests/object.test.ts +640 -0
  176. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +223 -0
  177. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +427 -0
  178. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  179. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  180. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  181. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +282 -0
  182. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  183. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  184. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  185. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  186. package/node_modules/zod/src/v4/classic/tests/record.test.ts +632 -0
  187. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +582 -0
  188. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +570 -0
  189. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  190. package/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  191. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  192. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  193. package/node_modules/zod/src/v4/classic/tests/string.test.ts +1175 -0
  194. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  195. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  196. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  197. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +2990 -0
  198. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +361 -0
  199. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +183 -0
  200. package/node_modules/zod/src/v4/classic/tests/union.test.ts +219 -0
  201. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  202. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  203. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  204. package/node_modules/zod/src/v4/core/api.ts +1798 -0
  205. package/node_modules/zod/src/v4/core/checks.ts +1293 -0
  206. package/node_modules/zod/src/v4/core/config.ts +15 -0
  207. package/node_modules/zod/src/v4/core/core.ts +138 -0
  208. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  209. package/node_modules/zod/src/v4/core/errors.ts +448 -0
  210. package/node_modules/zod/src/v4/core/index.ts +16 -0
  211. package/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  212. package/node_modules/zod/src/v4/core/json-schema-processors.ts +667 -0
  213. package/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  214. package/node_modules/zod/src/v4/core/parse.ts +195 -0
  215. package/node_modules/zod/src/v4/core/regexes.ts +183 -0
  216. package/node_modules/zod/src/v4/core/registries.ts +105 -0
  217. package/node_modules/zod/src/v4/core/schemas.ts +4538 -0
  218. package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  219. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  220. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  221. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  222. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  223. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  224. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  225. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  226. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  227. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  228. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +83 -0
  229. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +67 -0
  230. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  231. package/node_modules/zod/src/v4/core/to-json-schema.ts +613 -0
  232. package/node_modules/zod/src/v4/core/util.ts +966 -0
  233. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  234. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  235. package/node_modules/zod/src/v4/index.ts +4 -0
  236. package/node_modules/zod/src/v4/locales/ar.ts +115 -0
  237. package/node_modules/zod/src/v4/locales/az.ts +111 -0
  238. package/node_modules/zod/src/v4/locales/be.ts +176 -0
  239. package/node_modules/zod/src/v4/locales/bg.ts +128 -0
  240. package/node_modules/zod/src/v4/locales/ca.ts +116 -0
  241. package/node_modules/zod/src/v4/locales/cs.ts +118 -0
  242. package/node_modules/zod/src/v4/locales/da.ts +123 -0
  243. package/node_modules/zod/src/v4/locales/de.ts +116 -0
  244. package/node_modules/zod/src/v4/locales/en.ts +119 -0
  245. package/node_modules/zod/src/v4/locales/eo.ts +118 -0
  246. package/node_modules/zod/src/v4/locales/es.ts +141 -0
  247. package/node_modules/zod/src/v4/locales/fa.ts +126 -0
  248. package/node_modules/zod/src/v4/locales/fi.ts +121 -0
  249. package/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  250. package/node_modules/zod/src/v4/locales/fr.ts +116 -0
  251. package/node_modules/zod/src/v4/locales/he.ts +246 -0
  252. package/node_modules/zod/src/v4/locales/hu.ts +117 -0
  253. package/node_modules/zod/src/v4/locales/hy.ts +164 -0
  254. package/node_modules/zod/src/v4/locales/id.ts +115 -0
  255. package/node_modules/zod/src/v4/locales/index.ts +49 -0
  256. package/node_modules/zod/src/v4/locales/is.ts +119 -0
  257. package/node_modules/zod/src/v4/locales/it.ts +116 -0
  258. package/node_modules/zod/src/v4/locales/ja.ts +114 -0
  259. package/node_modules/zod/src/v4/locales/ka.ts +123 -0
  260. package/node_modules/zod/src/v4/locales/kh.ts +7 -0
  261. package/node_modules/zod/src/v4/locales/km.ts +119 -0
  262. package/node_modules/zod/src/v4/locales/ko.ts +121 -0
  263. package/node_modules/zod/src/v4/locales/lt.ts +239 -0
  264. package/node_modules/zod/src/v4/locales/mk.ts +118 -0
  265. package/node_modules/zod/src/v4/locales/ms.ts +115 -0
  266. package/node_modules/zod/src/v4/locales/nl.ts +121 -0
  267. package/node_modules/zod/src/v4/locales/no.ts +116 -0
  268. package/node_modules/zod/src/v4/locales/ota.ts +117 -0
  269. package/node_modules/zod/src/v4/locales/pl.ts +118 -0
  270. package/node_modules/zod/src/v4/locales/ps.ts +126 -0
  271. package/node_modules/zod/src/v4/locales/pt.ts +116 -0
  272. package/node_modules/zod/src/v4/locales/ru.ts +176 -0
  273. package/node_modules/zod/src/v4/locales/sl.ts +118 -0
  274. package/node_modules/zod/src/v4/locales/sv.ts +119 -0
  275. package/node_modules/zod/src/v4/locales/ta.ts +118 -0
  276. package/node_modules/zod/src/v4/locales/th.ts +119 -0
  277. package/node_modules/zod/src/v4/locales/tr.ts +111 -0
  278. package/node_modules/zod/src/v4/locales/ua.ts +7 -0
  279. package/node_modules/zod/src/v4/locales/uk.ts +117 -0
  280. package/node_modules/zod/src/v4/locales/ur.ts +119 -0
  281. package/node_modules/zod/src/v4/locales/uz.ts +116 -0
  282. package/node_modules/zod/src/v4/locales/vi.ts +117 -0
  283. package/node_modules/zod/src/v4/locales/yo.ts +124 -0
  284. package/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  285. package/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  286. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  287. package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  288. package/node_modules/zod/src/v4/mini/external.ts +40 -0
  289. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  290. package/node_modules/zod/src/v4/mini/iso.ts +66 -0
  291. package/node_modules/zod/src/v4/mini/parse.ts +14 -0
  292. package/node_modules/zod/src/v4/mini/schemas.ts +1916 -0
  293. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  294. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  295. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  296. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  297. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +529 -0
  298. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  299. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  300. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  301. package/node_modules/zod/src/v4/mini/tests/index.test.ts +963 -0
  302. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  303. package/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  304. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  305. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +275 -0
  306. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  307. package/node_modules/zod/src/v4/mini/tests/string.test.ts +347 -0
  308. package/node_modules/zod/src/v4-mini/index.ts +3 -0
  309. package/node_modules/zod/v3/ZodError.cjs +138 -0
  310. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  311. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  312. package/node_modules/zod/v3/ZodError.js +133 -0
  313. package/node_modules/zod/v3/errors.cjs +17 -0
  314. package/node_modules/zod/v3/errors.d.cts +5 -0
  315. package/node_modules/zod/v3/errors.d.ts +5 -0
  316. package/node_modules/zod/v3/errors.js +9 -0
  317. package/node_modules/zod/v3/external.cjs +22 -0
  318. package/node_modules/zod/v3/external.d.cts +6 -0
  319. package/node_modules/zod/v3/external.d.ts +6 -0
  320. package/node_modules/zod/v3/external.js +6 -0
  321. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  322. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  323. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  324. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  325. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  326. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  327. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  328. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  329. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  330. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  331. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  332. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  333. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  334. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  335. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  336. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  337. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  338. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  339. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  340. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  341. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  342. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  343. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  344. package/node_modules/zod/v3/helpers/util.js +133 -0
  345. package/node_modules/zod/v3/index.cjs +33 -0
  346. package/node_modules/zod/v3/index.d.cts +4 -0
  347. package/node_modules/zod/v3/index.d.ts +4 -0
  348. package/node_modules/zod/v3/index.js +4 -0
  349. package/node_modules/zod/v3/locales/en.cjs +112 -0
  350. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  351. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  352. package/node_modules/zod/v3/locales/en.js +109 -0
  353. package/node_modules/zod/v3/package.json +6 -0
  354. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  355. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  356. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  357. package/node_modules/zod/v3/standard-schema.js +1 -0
  358. package/node_modules/zod/v3/types.cjs +3777 -0
  359. package/node_modules/zod/v3/types.d.cts +1034 -0
  360. package/node_modules/zod/v3/types.d.ts +1034 -0
  361. package/node_modules/zod/v3/types.js +3695 -0
  362. package/node_modules/zod/v4/classic/checks.cjs +33 -0
  363. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  364. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  365. package/node_modules/zod/v4/classic/checks.js +1 -0
  366. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  367. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  368. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  369. package/node_modules/zod/v4/classic/coerce.js +17 -0
  370. package/node_modules/zod/v4/classic/compat.cjs +61 -0
  371. package/node_modules/zod/v4/classic/compat.d.cts +50 -0
  372. package/node_modules/zod/v4/classic/compat.d.ts +50 -0
  373. package/node_modules/zod/v4/classic/compat.js +31 -0
  374. package/node_modules/zod/v4/classic/errors.cjs +74 -0
  375. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  376. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  377. package/node_modules/zod/v4/classic/errors.js +48 -0
  378. package/node_modules/zod/v4/classic/external.cjs +73 -0
  379. package/node_modules/zod/v4/classic/external.d.cts +15 -0
  380. package/node_modules/zod/v4/classic/external.d.ts +15 -0
  381. package/node_modules/zod/v4/classic/external.js +20 -0
  382. package/node_modules/zod/v4/classic/from-json-schema.cjs +610 -0
  383. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  384. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  385. package/node_modules/zod/v4/classic/from-json-schema.js +584 -0
  386. package/node_modules/zod/v4/classic/index.cjs +33 -0
  387. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  388. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  389. package/node_modules/zod/v4/classic/index.js +4 -0
  390. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  391. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  392. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  393. package/node_modules/zod/v4/classic/iso.js +30 -0
  394. package/node_modules/zod/v4/classic/package.json +6 -0
  395. package/node_modules/zod/v4/classic/parse.cjs +41 -0
  396. package/node_modules/zod/v4/classic/parse.d.cts +31 -0
  397. package/node_modules/zod/v4/classic/parse.d.ts +31 -0
  398. package/node_modules/zod/v4/classic/parse.js +15 -0
  399. package/node_modules/zod/v4/classic/schemas.cjs +1272 -0
  400. package/node_modules/zod/v4/classic/schemas.d.cts +739 -0
  401. package/node_modules/zod/v4/classic/schemas.d.ts +739 -0
  402. package/node_modules/zod/v4/classic/schemas.js +1157 -0
  403. package/node_modules/zod/v4/core/api.cjs +1222 -0
  404. package/node_modules/zod/v4/core/api.d.cts +304 -0
  405. package/node_modules/zod/v4/core/api.d.ts +304 -0
  406. package/node_modules/zod/v4/core/api.js +1082 -0
  407. package/node_modules/zod/v4/core/checks.cjs +601 -0
  408. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  409. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  410. package/node_modules/zod/v4/core/checks.js +575 -0
  411. package/node_modules/zod/v4/core/core.cjs +83 -0
  412. package/node_modules/zod/v4/core/core.d.cts +70 -0
  413. package/node_modules/zod/v4/core/core.d.ts +70 -0
  414. package/node_modules/zod/v4/core/core.js +76 -0
  415. package/node_modules/zod/v4/core/doc.cjs +39 -0
  416. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  417. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  418. package/node_modules/zod/v4/core/doc.js +35 -0
  419. package/node_modules/zod/v4/core/errors.cjs +213 -0
  420. package/node_modules/zod/v4/core/errors.d.cts +220 -0
  421. package/node_modules/zod/v4/core/errors.d.ts +220 -0
  422. package/node_modules/zod/v4/core/errors.js +182 -0
  423. package/node_modules/zod/v4/core/index.cjs +47 -0
  424. package/node_modules/zod/v4/core/index.d.cts +16 -0
  425. package/node_modules/zod/v4/core/index.d.ts +16 -0
  426. package/node_modules/zod/v4/core/index.js +16 -0
  427. package/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  428. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  429. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  430. package/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  431. package/node_modules/zod/v4/core/json-schema-processors.cjs +648 -0
  432. package/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  433. package/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  434. package/node_modules/zod/v4/core/json-schema-processors.js +605 -0
  435. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  436. package/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  437. package/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  438. package/node_modules/zod/v4/core/json-schema.js +1 -0
  439. package/node_modules/zod/v4/core/package.json +6 -0
  440. package/node_modules/zod/v4/core/parse.cjs +131 -0
  441. package/node_modules/zod/v4/core/parse.d.cts +49 -0
  442. package/node_modules/zod/v4/core/parse.d.ts +49 -0
  443. package/node_modules/zod/v4/core/parse.js +93 -0
  444. package/node_modules/zod/v4/core/regexes.cjs +166 -0
  445. package/node_modules/zod/v4/core/regexes.d.cts +79 -0
  446. package/node_modules/zod/v4/core/regexes.d.ts +79 -0
  447. package/node_modules/zod/v4/core/regexes.js +133 -0
  448. package/node_modules/zod/v4/core/registries.cjs +56 -0
  449. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  450. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  451. package/node_modules/zod/v4/core/registries.js +51 -0
  452. package/node_modules/zod/v4/core/schemas.cjs +2124 -0
  453. package/node_modules/zod/v4/core/schemas.d.cts +1146 -0
  454. package/node_modules/zod/v4/core/schemas.d.ts +1146 -0
  455. package/node_modules/zod/v4/core/schemas.js +2093 -0
  456. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  457. package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  458. package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  459. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  460. package/node_modules/zod/v4/core/to-json-schema.cjs +446 -0
  461. package/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  462. package/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  463. package/node_modules/zod/v4/core/to-json-schema.js +437 -0
  464. package/node_modules/zod/v4/core/util.cjs +710 -0
  465. package/node_modules/zod/v4/core/util.d.cts +199 -0
  466. package/node_modules/zod/v4/core/util.d.ts +199 -0
  467. package/node_modules/zod/v4/core/util.js +651 -0
  468. package/node_modules/zod/v4/core/versions.cjs +8 -0
  469. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  470. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  471. package/node_modules/zod/v4/core/versions.js +5 -0
  472. package/node_modules/zod/v4/index.cjs +22 -0
  473. package/node_modules/zod/v4/index.d.cts +3 -0
  474. package/node_modules/zod/v4/index.d.ts +3 -0
  475. package/node_modules/zod/v4/index.js +3 -0
  476. package/node_modules/zod/v4/locales/ar.cjs +133 -0
  477. package/node_modules/zod/v4/locales/ar.d.cts +5 -0
  478. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  479. package/node_modules/zod/v4/locales/ar.js +106 -0
  480. package/node_modules/zod/v4/locales/az.cjs +132 -0
  481. package/node_modules/zod/v4/locales/az.d.cts +5 -0
  482. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  483. package/node_modules/zod/v4/locales/az.js +105 -0
  484. package/node_modules/zod/v4/locales/be.cjs +183 -0
  485. package/node_modules/zod/v4/locales/be.d.cts +5 -0
  486. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  487. package/node_modules/zod/v4/locales/be.js +156 -0
  488. package/node_modules/zod/v4/locales/bg.cjs +147 -0
  489. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  490. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  491. package/node_modules/zod/v4/locales/bg.js +120 -0
  492. package/node_modules/zod/v4/locales/ca.cjs +134 -0
  493. package/node_modules/zod/v4/locales/ca.d.cts +5 -0
  494. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  495. package/node_modules/zod/v4/locales/ca.js +107 -0
  496. package/node_modules/zod/v4/locales/cs.cjs +138 -0
  497. package/node_modules/zod/v4/locales/cs.d.cts +5 -0
  498. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  499. package/node_modules/zod/v4/locales/cs.js +111 -0
  500. package/node_modules/zod/v4/locales/da.cjs +142 -0
  501. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  502. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  503. package/node_modules/zod/v4/locales/da.js +115 -0
  504. package/node_modules/zod/v4/locales/de.cjs +135 -0
  505. package/node_modules/zod/v4/locales/de.d.cts +5 -0
  506. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  507. package/node_modules/zod/v4/locales/de.js +108 -0
  508. package/node_modules/zod/v4/locales/en.cjs +136 -0
  509. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  510. package/node_modules/zod/v4/locales/en.d.ts +4 -0
  511. package/node_modules/zod/v4/locales/en.js +109 -0
  512. package/node_modules/zod/v4/locales/eo.cjs +136 -0
  513. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  514. package/node_modules/zod/v4/locales/eo.d.ts +4 -0
  515. package/node_modules/zod/v4/locales/eo.js +109 -0
  516. package/node_modules/zod/v4/locales/es.cjs +159 -0
  517. package/node_modules/zod/v4/locales/es.d.cts +5 -0
  518. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  519. package/node_modules/zod/v4/locales/es.js +132 -0
  520. package/node_modules/zod/v4/locales/fa.cjs +141 -0
  521. package/node_modules/zod/v4/locales/fa.d.cts +5 -0
  522. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  523. package/node_modules/zod/v4/locales/fa.js +114 -0
  524. package/node_modules/zod/v4/locales/fi.cjs +139 -0
  525. package/node_modules/zod/v4/locales/fi.d.cts +5 -0
  526. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  527. package/node_modules/zod/v4/locales/fi.js +112 -0
  528. package/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  529. package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  530. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  531. package/node_modules/zod/v4/locales/fr-CA.js +107 -0
  532. package/node_modules/zod/v4/locales/fr.cjs +135 -0
  533. package/node_modules/zod/v4/locales/fr.d.cts +5 -0
  534. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  535. package/node_modules/zod/v4/locales/fr.js +108 -0
  536. package/node_modules/zod/v4/locales/he.cjs +241 -0
  537. package/node_modules/zod/v4/locales/he.d.cts +5 -0
  538. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  539. package/node_modules/zod/v4/locales/he.js +214 -0
  540. package/node_modules/zod/v4/locales/hu.cjs +135 -0
  541. package/node_modules/zod/v4/locales/hu.d.cts +5 -0
  542. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  543. package/node_modules/zod/v4/locales/hu.js +108 -0
  544. package/node_modules/zod/v4/locales/hy.cjs +174 -0
  545. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  546. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  547. package/node_modules/zod/v4/locales/hy.js +147 -0
  548. package/node_modules/zod/v4/locales/id.cjs +133 -0
  549. package/node_modules/zod/v4/locales/id.d.cts +5 -0
  550. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  551. package/node_modules/zod/v4/locales/id.js +106 -0
  552. package/node_modules/zod/v4/locales/index.cjs +104 -0
  553. package/node_modules/zod/v4/locales/index.d.cts +49 -0
  554. package/node_modules/zod/v4/locales/index.d.ts +49 -0
  555. package/node_modules/zod/v4/locales/index.js +49 -0
  556. package/node_modules/zod/v4/locales/is.cjs +136 -0
  557. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  558. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  559. package/node_modules/zod/v4/locales/is.js +109 -0
  560. package/node_modules/zod/v4/locales/it.cjs +135 -0
  561. package/node_modules/zod/v4/locales/it.d.cts +5 -0
  562. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  563. package/node_modules/zod/v4/locales/it.js +108 -0
  564. package/node_modules/zod/v4/locales/ja.cjs +134 -0
  565. package/node_modules/zod/v4/locales/ja.d.cts +5 -0
  566. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  567. package/node_modules/zod/v4/locales/ja.js +107 -0
  568. package/node_modules/zod/v4/locales/ka.cjs +139 -0
  569. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  570. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  571. package/node_modules/zod/v4/locales/ka.js +112 -0
  572. package/node_modules/zod/v4/locales/kh.cjs +12 -0
  573. package/node_modules/zod/v4/locales/kh.d.cts +5 -0
  574. package/node_modules/zod/v4/locales/kh.d.ts +5 -0
  575. package/node_modules/zod/v4/locales/kh.js +5 -0
  576. package/node_modules/zod/v4/locales/km.cjs +137 -0
  577. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  578. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  579. package/node_modules/zod/v4/locales/km.js +110 -0
  580. package/node_modules/zod/v4/locales/ko.cjs +138 -0
  581. package/node_modules/zod/v4/locales/ko.d.cts +5 -0
  582. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  583. package/node_modules/zod/v4/locales/ko.js +111 -0
  584. package/node_modules/zod/v4/locales/lt.cjs +230 -0
  585. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  586. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  587. package/node_modules/zod/v4/locales/lt.js +203 -0
  588. package/node_modules/zod/v4/locales/mk.cjs +136 -0
  589. package/node_modules/zod/v4/locales/mk.d.cts +5 -0
  590. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  591. package/node_modules/zod/v4/locales/mk.js +109 -0
  592. package/node_modules/zod/v4/locales/ms.cjs +134 -0
  593. package/node_modules/zod/v4/locales/ms.d.cts +5 -0
  594. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  595. package/node_modules/zod/v4/locales/ms.js +107 -0
  596. package/node_modules/zod/v4/locales/nl.cjs +137 -0
  597. package/node_modules/zod/v4/locales/nl.d.cts +5 -0
  598. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  599. package/node_modules/zod/v4/locales/nl.js +110 -0
  600. package/node_modules/zod/v4/locales/no.cjs +135 -0
  601. package/node_modules/zod/v4/locales/no.d.cts +5 -0
  602. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  603. package/node_modules/zod/v4/locales/no.js +108 -0
  604. package/node_modules/zod/v4/locales/ota.cjs +136 -0
  605. package/node_modules/zod/v4/locales/ota.d.cts +5 -0
  606. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  607. package/node_modules/zod/v4/locales/ota.js +109 -0
  608. package/node_modules/zod/v4/locales/package.json +6 -0
  609. package/node_modules/zod/v4/locales/pl.cjs +136 -0
  610. package/node_modules/zod/v4/locales/pl.d.cts +5 -0
  611. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  612. package/node_modules/zod/v4/locales/pl.js +109 -0
  613. package/node_modules/zod/v4/locales/ps.cjs +141 -0
  614. package/node_modules/zod/v4/locales/ps.d.cts +5 -0
  615. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  616. package/node_modules/zod/v4/locales/ps.js +114 -0
  617. package/node_modules/zod/v4/locales/pt.cjs +135 -0
  618. package/node_modules/zod/v4/locales/pt.d.cts +5 -0
  619. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  620. package/node_modules/zod/v4/locales/pt.js +108 -0
  621. package/node_modules/zod/v4/locales/ru.cjs +183 -0
  622. package/node_modules/zod/v4/locales/ru.d.cts +5 -0
  623. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  624. package/node_modules/zod/v4/locales/ru.js +156 -0
  625. package/node_modules/zod/v4/locales/sl.cjs +136 -0
  626. package/node_modules/zod/v4/locales/sl.d.cts +5 -0
  627. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  628. package/node_modules/zod/v4/locales/sl.js +109 -0
  629. package/node_modules/zod/v4/locales/sv.cjs +137 -0
  630. package/node_modules/zod/v4/locales/sv.d.cts +5 -0
  631. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  632. package/node_modules/zod/v4/locales/sv.js +110 -0
  633. package/node_modules/zod/v4/locales/ta.cjs +137 -0
  634. package/node_modules/zod/v4/locales/ta.d.cts +5 -0
  635. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  636. package/node_modules/zod/v4/locales/ta.js +110 -0
  637. package/node_modules/zod/v4/locales/th.cjs +137 -0
  638. package/node_modules/zod/v4/locales/th.d.cts +5 -0
  639. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  640. package/node_modules/zod/v4/locales/th.js +110 -0
  641. package/node_modules/zod/v4/locales/tr.cjs +132 -0
  642. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  643. package/node_modules/zod/v4/locales/tr.d.ts +4 -0
  644. package/node_modules/zod/v4/locales/tr.js +105 -0
  645. package/node_modules/zod/v4/locales/ua.cjs +12 -0
  646. package/node_modules/zod/v4/locales/ua.d.cts +5 -0
  647. package/node_modules/zod/v4/locales/ua.d.ts +5 -0
  648. package/node_modules/zod/v4/locales/ua.js +5 -0
  649. package/node_modules/zod/v4/locales/uk.cjs +135 -0
  650. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  651. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  652. package/node_modules/zod/v4/locales/uk.js +108 -0
  653. package/node_modules/zod/v4/locales/ur.cjs +137 -0
  654. package/node_modules/zod/v4/locales/ur.d.cts +5 -0
  655. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  656. package/node_modules/zod/v4/locales/ur.js +110 -0
  657. package/node_modules/zod/v4/locales/uz.cjs +136 -0
  658. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  659. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  660. package/node_modules/zod/v4/locales/uz.js +109 -0
  661. package/node_modules/zod/v4/locales/vi.cjs +135 -0
  662. package/node_modules/zod/v4/locales/vi.d.cts +5 -0
  663. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  664. package/node_modules/zod/v4/locales/vi.js +108 -0
  665. package/node_modules/zod/v4/locales/yo.cjs +134 -0
  666. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  667. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  668. package/node_modules/zod/v4/locales/yo.js +107 -0
  669. package/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  670. package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  671. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  672. package/node_modules/zod/v4/locales/zh-CN.js +109 -0
  673. package/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  674. package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  675. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  676. package/node_modules/zod/v4/locales/zh-TW.js +107 -0
  677. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  678. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  679. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  680. package/node_modules/zod/v4/mini/checks.js +1 -0
  681. package/node_modules/zod/v4/mini/coerce.cjs +52 -0
  682. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  683. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  684. package/node_modules/zod/v4/mini/coerce.js +22 -0
  685. package/node_modules/zod/v4/mini/external.cjs +63 -0
  686. package/node_modules/zod/v4/mini/external.d.cts +12 -0
  687. package/node_modules/zod/v4/mini/external.d.ts +12 -0
  688. package/node_modules/zod/v4/mini/external.js +14 -0
  689. package/node_modules/zod/v4/mini/index.cjs +32 -0
  690. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  691. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  692. package/node_modules/zod/v4/mini/index.js +3 -0
  693. package/node_modules/zod/v4/mini/iso.cjs +64 -0
  694. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  695. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  696. package/node_modules/zod/v4/mini/iso.js +34 -0
  697. package/node_modules/zod/v4/mini/package.json +6 -0
  698. package/node_modules/zod/v4/mini/parse.cjs +16 -0
  699. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  700. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  701. package/node_modules/zod/v4/mini/parse.js +1 -0
  702. package/node_modules/zod/v4/mini/schemas.cjs +1046 -0
  703. package/node_modules/zod/v4/mini/schemas.d.cts +427 -0
  704. package/node_modules/zod/v4/mini/schemas.d.ts +427 -0
  705. package/node_modules/zod/v4/mini/schemas.js +925 -0
  706. package/node_modules/zod/v4/package.json +6 -0
  707. package/node_modules/zod/v4-mini/index.cjs +32 -0
  708. package/node_modules/zod/v4-mini/index.d.cts +3 -0
  709. package/node_modules/zod/v4-mini/index.d.ts +3 -0
  710. package/node_modules/zod/v4-mini/index.js +3 -0
  711. package/node_modules/zod/v4-mini/package.json +6 -0
  712. package/package.json +7 -2
  713. package/plugin/dist/index.d.ts.map +1 -1
  714. package/plugin/dist/index.js +29 -2
  715. package/plugin/dist/index.js.map +1 -1
  716. package/plugin/package.json +6 -6
  717. package/scripts/install-runtime.mjs +1 -1
package/CHANGELOG.md CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  All notable changes to hypermem are documented here.
4
4
 
5
+ ## 0.8.4 — compaction fence fix, install-path fixes, zod runtime packaging
6
+
7
+ - **Compaction fence tail preservation fixed.** The recent-tail preservation fix is included so compaction no longer drops the protected recent tail during fence advancement.
8
+ - **`afterTurn` token count persistence fixed.** Token accounting now persists correctly after turn completion, which keeps follow-on pressure and compaction decisions honest.
9
+ - **Registry install docs corrected and hardened.** Installation guidance now fixes the shipped `ocplatform` typo, clarifies older package behavior around missing `install:runtime`, improves `plugins.load.paths` quoting, and removes the dangerous overwrite-style `plugins.allow` example in favor of merge-safe guidance.
10
+ - **Install tracks clarified.** Docs now distinguish source-clone plugin setup from older npm package behavior so first-run operators do not follow the wrong path.
11
+ - **`zod` now ships for plugin runtime use.** The published package now includes the runtime `zod` dependency required by the HyperCompositor plugin, fixing `Cannot find module 'zod'` on package-based installs.
12
+
5
13
  ## 0.8.2 — npm packaging & install path clarity
6
14
 
7
15
  - **INSTALL.md and CHANGELOG.md now ship in the npm package.** Previously missing from `package.json` `files` array, so `npm pack` / `npm publish` excluded them. Users installing from the registry now get the full install guide without cloning the repo.
package/INSTALL.md CHANGED
@@ -17,6 +17,8 @@ If `gateway status` shows "disabled" or "not configured", complete OpenClaw onbo
17
17
 
18
18
  ## Quick Start
19
19
 
20
+ > **Release note:** if the npm package you installed does not contain `hypermem-install` or `install:runtime`, you are on an older public release. Use the source-clone path in this guide or wait for `0.8.4+`.
21
+
20
22
  ```bash
21
23
  npm install @psiclawops/hypermem
22
24
  npx hypermem-install
@@ -55,19 +57,21 @@ Note any existing values. You must include them in the commands below.
55
57
  **Step 2: Wire plugins.**
56
58
 
57
59
  ```bash
58
- # Wire plugin load paths — merge with any existing paths from Step 1:
59
- openclaw config set plugins.load.paths "[\"${HOME}/.openclaw/plugins/hypermem/plugin\",\"${HOME}/.openclaw/plugins/hypermem/memory-plugin\"]" --strict-json
60
+ # Wire plugin load paths — use a variable to avoid shell quoting problems, then merge if needed:
61
+ HYPERMEM_PATHS="[\"${HOME}/.openclaw/plugins/hypermem/plugin\",\"${HOME}/.openclaw/plugins/hypermem/memory-plugin\"]"
62
+ openclaw config set plugins.load.paths "$HYPERMEM_PATHS" --strict-json
60
63
 
61
64
  # Set the context engine and memory slots:
62
65
  openclaw config set plugins.slots.contextEngine hypercompositor
63
66
  openclaw config set plugins.slots.memory hypermem
64
67
 
65
- # Allow both plugins merge with any existing allowed plugins from Step 1.
66
- # Example (if "my-plugin" was already allowed):
67
- ocplatform config set plugins.allow '["my-plugin","hypercompositor","hypermem"]' --strict-json
68
+ # Only set plugins.allow if your OpenClaw config already uses an allowlist.
69
+ # If `openclaw config get plugins.allow` returns null, empty, or unset, skip this step.
70
+ # If it returns an array, copy that array and append "hypercompositor" and "hypermem".
71
+ openclaw config set plugins.allow '["existing-plugin","hypercompositor","hypermem"]' --strict-json
68
72
  ```
69
73
 
70
- > **⚠️ Merge, don't replace.** The command above sets `plugins.allow` to whatever you specify. If `plugins.allow` was non-empty in Step 1, include those entries in the array. Replacing it drops existing plugins (including bundled OpenClaw CLI surfaces and channel plugins).
74
+ > **⚠️ Merge, don't replace.** Do not set `plugins.allow` to only `['hypercompositor','hypermem']`. That can disable bundled CLI surfaces and channel plugins. If your system already has a non-empty allowlist, append the HyperMem plugin ids to that existing array.
71
75
 
72
76
  **Step 3: Restart.**
73
77
 
@@ -374,7 +378,7 @@ npm install
374
378
  npm run build
375
379
  ```
376
380
 
377
- Build both plugins, then install the runtime payload into OCPlatform's durable plugin directory:
381
+ Build both plugins, then install the runtime payload into 's durable plugin directory:
378
382
 
379
383
  ```bash
380
384
  npm --prefix plugin install && npm --prefix plugin run build
@@ -396,21 +400,23 @@ Use the OpenClaw CLI. **Do not edit `openclaw.json` directly.**
396
400
 
397
401
  ```bash
398
402
  # Check existing values first — merge if non-empty:
399
- ocplatform config get plugins.load.paths
403
+ openclaw config get plugins.load.paths
400
404
  openclaw config get plugins.allow
401
405
 
402
- # Wire plugin load paths (merge with any existing paths):
403
- openclaw config set plugins.load.paths "[\"${HOME}/.openclaw/plugins/hypermem/plugin\",\"${HOME}/.openclaw/plugins/hypermem/memory-plugin\"]" --strict-json
406
+ # Wire plugin load paths (use a variable to avoid shell quoting problems):
407
+ HYPERMEM_PATHS="[\"${HOME}/.openclaw/plugins/hypermem/plugin\",\"${HOME}/.openclaw/plugins/hypermem/memory-plugin\"]"
408
+ openclaw config set plugins.load.paths "$HYPERMEM_PATHS" --strict-json
404
409
 
405
410
  # Set the context engine and memory slots:
406
411
  openclaw config set plugins.slots.contextEngine hypercompositor
407
412
  openclaw config set plugins.slots.memory hypermem
408
413
 
409
- # Allow both plugins merge with any existing allowed plugins (example includes "my-plugin"):
410
- ocplatform config set plugins.allow '["my-plugin","hypercompositor","hypermem"]' --strict-json
414
+ # Only set plugins.allow if your OpenClaw config already uses an allowlist.
415
+ # If it returns an array, append the HyperMem plugin ids to that existing array.
416
+ openclaw config set plugins.allow '["existing-plugin","hypercompositor","hypermem"]' --strict-json
411
417
  ```
412
418
 
413
- > **⚠️ Merge, don't replace.** Check `openclaw config get plugins.allow` before running this command and include all existing entries in the array.
419
+ > **⚠️ Merge, don't replace.** Never replace a working `plugins.allow` list with only HyperMem entries. If `plugins.allow` is unset or empty, leave it alone.
414
420
 
415
421
  ### Step 3 — Choose embedding provider
416
422
 
@@ -603,7 +609,7 @@ This gives agents 4 days of working memory at startup (~12k chars total). Still
603
609
  Controls the maximum size of bootstrap files (AGENTS.md, SOUL.md, etc.) injected on session start. The default (12000) is tight for agents with governance rules, tool references, and identity docs:
604
610
 
605
611
  ```bash
606
- ocplatform config set agents.defaults.bootstrapMaxChars 20000 --strict-json
612
+ openclaw config set agents.defaults.bootstrapMaxChars 20000 --strict-json
607
613
  ```
608
614
 
609
615
  ### Compaction safety net
@@ -611,10 +617,10 @@ ocplatform config set agents.defaults.bootstrapMaxChars 20000 --strict-json
611
617
  OpenClaw's built-in compaction (`safeguard` mode) serves as a last-resort safety net. Keep it enabled but tuned so it only fires when HyperMem's own pressure management is insufficient:
612
618
 
613
619
  ```bash
614
- ocplatform config set agents.defaults.compaction.mode safeguard
620
+ openclaw config set agents.defaults.compaction.mode safeguard
615
621
  openclaw config set agents.defaults.compaction.reserveTokens 16384 --strict-json
616
- ocplatform config set agents.defaults.compaction.keepRecentTokens 6000 --strict-json
617
- ocplatform config set agents.defaults.compaction.reserveTokensFloor 15000 --strict-json
622
+ openclaw config set agents.defaults.compaction.keepRecentTokens 6000 --strict-json
623
+ openclaw config set agents.defaults.compaction.reserveTokensFloor 15000 --strict-json
618
624
  openclaw config set agents.defaults.compaction.maxHistoryShare 0.65 --strict-json
619
625
  ```
620
626
 
@@ -811,7 +817,7 @@ Expected on fresh installs. Facts and episodes accumulate over real conversation
811
817
 
812
818
  **Lost bundled plugins after setting `plugins.allow`**
813
819
 
814
- If you set `plugins.allow` to only `["hypercompositor","hypermem"]` without including your pre-existing allowed plugins, OpenClaw will stop loading everything else (including built-in CLI surfaces and bundled channel plugins). Fix: re-read your OpenClaw defaults (`openclaw config get plugins.allow`), merge hypermem entries back into the full list, and `openclaw gateway restart`.
820
+ If you set `plugins.allow` to only `["hypercompositor","hypermem"]` without including your pre-existing allowed plugins, OpenClaw can stop loading bundled CLI surfaces and channel plugins. Fix: restore the prior allowlist, append `hypercompositor` and `hypermem`, then `openclaw gateway restart`. If `plugins.allow` was previously unset or empty, remove the HyperMem-only allowlist instead of keeping it.
815
821
 
816
822
  **Plugin not found**
817
823
 
package/README.md CHANGED
@@ -449,6 +449,8 @@ That's it. No gateway, no plugins, no config files. See [API](#api) for the full
449
449
 
450
450
  ### OpenClaw plugin install (from source)
451
451
 
452
+ > **Release note:** if the npm package you installed does not contain `install:runtime`, you are on an older public release. Use the source-clone path below or wait for `0.8.4+`.
453
+
452
454
  ```bash
453
455
  git clone https://github.com/PsiClawOps/hypermem.git
454
456
  cd hypermem
@@ -458,7 +460,7 @@ npm --prefix memory-plugin install && npm --prefix memory-plugin run build
458
460
  npm run install:runtime
459
461
  ```
460
462
 
461
- `install:runtime` stages the runtime payload into `~/.openclaw/plugins/hypermem` and prints the exact config commands to wire the plugins. Before running them, create the data directory and config:
463
+ `install:runtime` stages the runtime payload into `~/.openclaw/plugins/hypermem` and prints the exact config commands to wire the plugins. It does not finish wiring automatically. Before running them, create the data directory and config:
462
464
 
463
465
  ```bash
464
466
  mkdir -p ~/.openclaw/hypermem
@@ -491,13 +493,16 @@ openclaw config set plugins.load.paths "$HYPERMEM_PATHS" --strict-json
491
493
  openclaw config set plugins.slots.contextEngine hypercompositor
492
494
  openclaw config set plugins.slots.memory hypermem
493
495
 
494
- # ⚠️ Add to your existing plugins.allow do not replace your current list.
495
- # Edit the array below to include any plugins you already have allowed:
496
- openclaw config set plugins.allow '["hypercompositor","hypermem"]' --strict-json
496
+ # Only set plugins.allow if your OpenClaw config already uses an allowlist.
497
+ # If `openclaw config get plugins.allow` returns null, empty, or unset, skip this step.
498
+ # If it returns an array, copy that array and append "hypercompositor" and "hypermem".
499
+ openclaw config set plugins.allow '["existing-plugin","hypercompositor","hypermem"]' --strict-json
497
500
 
498
501
  openclaw gateway restart
499
502
  ```
500
503
 
504
+ Do **not** replace a working `plugins.allow` list with only `['hypercompositor','hypermem']`. That can disable bundled CLI surfaces and channel plugins.
505
+
501
506
  Verify (run these commands from the repo clone directory — `bin/` is a relative path):
502
507
 
503
508
  ```bash
@@ -41,6 +41,14 @@ export interface CompactionEligibility {
41
41
  /** The fence itself */
42
42
  fence: CompactionFence | null;
43
43
  }
44
+ export interface UpdateCompactionFenceOptions {
45
+ /**
46
+ * Minimum number of most-recent non-system messages that must remain above
47
+ * the fence. Prevents compaction from fencing off the live conversational
48
+ * tail under pressure.
49
+ */
50
+ minTailMessages?: number;
51
+ }
44
52
  /**
45
53
  * Add the compaction_fences table to an existing messages.db.
46
54
  * Idempotent — safe to call on every startup.
@@ -57,7 +65,7 @@ export declare function ensureCompactionFenceSchema(db: DatabaseSync): void;
57
65
  * This prevents a short compose window from accidentally exposing
58
66
  * already-compacted messages.
59
67
  */
60
- export declare function updateCompactionFence(db: DatabaseSync, conversationId: number, oldestVisibleMessageId: number): void;
68
+ export declare function updateCompactionFence(db: DatabaseSync, conversationId: number, oldestVisibleMessageId: number, opts?: UpdateCompactionFenceOptions): void;
61
69
  /**
62
70
  * Get the current compaction fence for a conversation.
63
71
  * Returns null if no fence has been set (meaning: no compaction allowed).
@@ -1 +1 @@
1
- {"version":3,"file":"compaction-fence.d.ts","sourceRoot":"","sources":["../src/compaction-fence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,aAAa,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,uBAAuB;IACvB,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;CAC/B;AAID;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAQlE;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,EACtB,sBAAsB,EAAE,MAAM,GAC7B,IAAI,CAqBN;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,GACrB,eAAe,GAAG,IAAI,CAYxB;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,GACrB,qBAAqB,CAwCvB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,EACtB,KAAK,GAAE,MAAY,GAClB,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CA8B7E"}
1
+ {"version":3,"file":"compaction-fence.d.ts","sourceRoot":"","sources":["../src/compaction-fence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAIhD,MAAM,WAAW,eAAe;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,yCAAyC;IACzC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,MAAM,CAAC;IACvB,+DAA+D;IAC/D,aAAa,EAAE,MAAM,CAAC;IACtB,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,mEAAmE;IACnE,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,uBAAuB;IACvB,KAAK,EAAE,eAAe,GAAG,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAID;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAQlE;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,EACtB,sBAAsB,EAAE,MAAM,EAC9B,IAAI,GAAE,4BAAiC,GACtC,IAAI,CAgDN;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,GACrB,eAAe,GAAG,IAAI,CAYxB;AAED;;;;;;;;;GASG;AACH,wBAAgB,wBAAwB,CACtC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,GACrB,qBAAqB,CAwCvB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,YAAY,EAChB,cAAc,EAAE,MAAM,EACtB,KAAK,GAAE,MAAY,GAClB,KAAK,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CA8B7E"}
@@ -48,17 +48,38 @@ export function ensureCompactionFenceSchema(db) {
48
48
  * This prevents a short compose window from accidentally exposing
49
49
  * already-compacted messages.
50
50
  */
51
- export function updateCompactionFence(db, conversationId, oldestVisibleMessageId) {
51
+ export function updateCompactionFence(db, conversationId, oldestVisibleMessageId, opts = {}) {
52
52
  const now = new Date().toISOString();
53
+ const minTailMessages = typeof opts.minTailMessages === 'number' && Number.isFinite(opts.minTailMessages)
54
+ ? Math.max(1, Math.floor(opts.minTailMessages))
55
+ : undefined;
56
+ const oldestRecentRow = minTailMessages != null
57
+ ? db.prepare(`
58
+ SELECT id FROM messages
59
+ WHERE conversation_id = ?
60
+ AND role != 'system'
61
+ ORDER BY message_index DESC
62
+ LIMIT 1 OFFSET ?
63
+ `).get(conversationId, minTailMessages - 1) ?? db.prepare(`
64
+ SELECT id FROM messages
65
+ WHERE conversation_id = ?
66
+ AND role != 'system'
67
+ ORDER BY message_index ASC
68
+ LIMIT 1
69
+ `).get(conversationId)
70
+ : undefined;
71
+ const clampedMessageId = oldestRecentRow
72
+ ? Math.min(oldestVisibleMessageId, oldestRecentRow.id)
73
+ : oldestVisibleMessageId;
53
74
  const existing = db.prepare('SELECT fence_message_id FROM compaction_fences WHERE conversation_id = ?').get(conversationId);
54
75
  if (!existing) {
55
76
  // First fence for this conversation
56
- db.prepare('INSERT INTO compaction_fences (conversation_id, fence_message_id, updated_at) VALUES (?, ?, ?)').run(conversationId, oldestVisibleMessageId, now);
77
+ db.prepare('INSERT INTO compaction_fences (conversation_id, fence_message_id, updated_at) VALUES (?, ?, ?)').run(conversationId, clampedMessageId, now);
57
78
  return;
58
79
  }
59
80
  // Monotone progress: fence only moves forward
60
- if (oldestVisibleMessageId > existing.fence_message_id) {
61
- db.prepare('UPDATE compaction_fences SET fence_message_id = ?, updated_at = ? WHERE conversation_id = ?').run(oldestVisibleMessageId, now, conversationId);
81
+ if (clampedMessageId > existing.fence_message_id) {
82
+ db.prepare('UPDATE compaction_fences SET fence_message_id = ?, updated_at = ? WHERE conversation_id = ?').run(clampedMessageId, now, conversationId);
62
83
  }
63
84
  }
64
85
  /**
@@ -2495,7 +2495,7 @@ export class Compositor {
2495
2495
  `).get(conversation.id, historyMsgCount - 1);
2496
2496
  if (oldestIncluded) {
2497
2497
  ensureCompactionFenceSchema(db);
2498
- updateCompactionFence(db, conversation.id, oldestIncluded.id);
2498
+ updateCompactionFence(db, conversation.id, oldestIncluded.id, { minTailMessages: 8 });
2499
2499
  }
2500
2500
  }
2501
2501
  }
package/docs/TUNING.md CHANGED
@@ -577,7 +577,7 @@ Large T0 results (>40k chars) at high context pressure (>80%) get head-and-tail
577
577
 
578
578
  **When `deferToolPruning: true`**: hypermem skips its own gradient when OpenClaw's native `contextPruning` is active. The native pruner handles tool result trimming on those providers. The gradient remains active as fallback for other providers.
579
579
 
580
- > **Recommended:** disable OpenClaw's context pruning entirely (`openclaw config set agents.defaults.contextPruning.mode off`) and let HyperMem manage all context pressure. The two systems do not coordinate and can fight each other, causing unpredictable context loss. See INSTALL.md "OCPlatform Platform Settings" for the full recommended config.
580
+ > **Recommended:** disable OpenClaw's context pruning entirely (`openclaw config set agents.defaults.contextPruning.mode off`) and let HyperMem manage all context pressure. The two systems do not coordinate and can fight each other, causing unpredictable context loss. See INSTALL.md "OpenClaw Platform Settings" for the full recommended config.
581
581
 
582
582
  **When `verboseLogging: true`**: HyperMem emits budget-source and trim-decision logs so you can see whether a turn used runtime `tokenBudget`, a manual `contextWindowOverrides` entry, or the `contextWindowSize` fallback.
583
583
 
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@psiclawops/hypermem-memory",
3
- "version": "0.8.3",
4
- "description": "HyperMem memory plugin for OpenClaw \u2014 bridges HyperMem retrieval into the memory slot",
3
+ "version": "0.8.4",
4
+ "description": "HyperMem memory plugin for OpenClaw bridges HyperMem retrieval into the memory slot",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "license": "Apache-2.0",
@@ -0,0 +1 @@
1
+ TODO
@@ -0,0 +1,46 @@
1
+
2
+
3
+ const { arch, platform } = require("node:process");
4
+
5
+
6
+ const BASE_PACKAGE_NAME = "sqlite-vec";
7
+ const ENTRYPOINT_BASE_NAME = "vec0";
8
+ const supportedPlatforms = [["darwin","x64"],["linux","x64"],["darwin","arm64"],["win32","x64"],["linux","arm64"]];
9
+
10
+ const invalidPlatformErrorMessage = `Unsupported platform for ${BASE_PACKAGE_NAME}, on a ${platform}-${arch} machine. Supported platforms are (${supportedPlatforms
11
+ .map(([p, a]) => `${p}-${a}`)
12
+ .join(",")}). Consult the ${BASE_PACKAGE_NAME} NPM package README for details.`;
13
+
14
+ const extensionNotFoundErrorMessage = packageName => `Loadble extension for ${BASE_PACKAGE_NAME} not found. Was the ${packageName} package installed?`;
15
+
16
+ function validPlatform(platform, arch) {
17
+ return (
18
+ supportedPlatforms.find(([p, a]) => platform === p && arch === a) !== undefined
19
+ );
20
+ }
21
+ function extensionSuffix(platform) {
22
+ if (platform === "win32") return "dll";
23
+ if (platform === "darwin") return "dylib";
24
+ return "so";
25
+ }
26
+ function platformPackageName(platform, arch) {
27
+ const os = platform === "win32" ? "windows" : platform;
28
+ return `${BASE_PACKAGE_NAME}-${os}-${arch}`;
29
+ }
30
+
31
+ function getLoadablePath() {
32
+ if (!validPlatform(platform, arch)) {
33
+ throw new Error(
34
+ invalidPlatformErrorMessage
35
+ );
36
+ }
37
+ const packageName = platformPackageName(platform, arch);
38
+ const loadablePath = require.resolve(packageName + "/" + ENTRYPOINT_BASE_NAME + "." + extensionSuffix(platform));
39
+ return loadablePath;
40
+ }
41
+
42
+ function load(db) {
43
+ db.loadExtension(getLoadablePath());
44
+ }
45
+
46
+ module.exports = {getLoadablePath, load};
@@ -0,0 +1,17 @@
1
+
2
+
3
+ /**
4
+ * TODO JSDoc
5
+ */
6
+ export declare function getLoadablePath(): string;
7
+
8
+
9
+ interface Db {
10
+ loadExtension(file: string, entrypoint?: string | undefined): void;
11
+ }
12
+
13
+ /**
14
+ * TODO JSDoc
15
+ */
16
+ export declare function load(db: Db): void;
17
+
@@ -0,0 +1,47 @@
1
+
2
+
3
+ import { fileURLToPath } from "node:url";
4
+ import { arch, platform } from "node:process";
5
+
6
+
7
+ const BASE_PACKAGE_NAME = "sqlite-vec";
8
+ const ENTRYPOINT_BASE_NAME = "vec0";
9
+ const supportedPlatforms = [["darwin","x64"],["linux","x64"],["darwin","arm64"],["win32","x64"],["linux","arm64"]];
10
+
11
+ const invalidPlatformErrorMessage = `Unsupported platform for ${BASE_PACKAGE_NAME}, on a ${platform}-${arch} machine. Supported platforms are (${supportedPlatforms
12
+ .map(([p, a]) => `${p}-${a}`)
13
+ .join(",")}). Consult the ${BASE_PACKAGE_NAME} NPM package README for details.`;
14
+
15
+ const extensionNotFoundErrorMessage = packageName => `Loadble extension for ${BASE_PACKAGE_NAME} not found. Was the ${packageName} package installed?`;
16
+
17
+ function validPlatform(platform, arch) {
18
+ return (
19
+ supportedPlatforms.find(([p, a]) => platform === p && arch === a) !== undefined
20
+ );
21
+ }
22
+ function extensionSuffix(platform) {
23
+ if (platform === "win32") return "dll";
24
+ if (platform === "darwin") return "dylib";
25
+ return "so";
26
+ }
27
+ function platformPackageName(platform, arch) {
28
+ const os = platform === "win32" ? "windows" : platform;
29
+ return `${BASE_PACKAGE_NAME}-${os}-${arch}`;
30
+ }
31
+
32
+ function getLoadablePath() {
33
+ if (!validPlatform(platform, arch)) {
34
+ throw new Error(
35
+ invalidPlatformErrorMessage
36
+ );
37
+ }
38
+ const packageName = platformPackageName(platform, arch);
39
+ const loadablePath = fileURLToPath(import.meta.resolve(packageName + "/" + ENTRYPOINT_BASE_NAME + "." + extensionSuffix(platform)));
40
+ return loadablePath;
41
+ }
42
+
43
+ function load(db) {
44
+ db.loadExtension(getLoadablePath());
45
+ }
46
+
47
+ export {getLoadablePath, load};
@@ -0,0 +1 @@
1
+ {"name":"sqlite-vec","version":"0.1.9","author":"Alex Garcia","license":"MIT OR Apache","description":"A vector search SQLite extension.","repository":{"type":"git","url":"https://github.com/asg017/sqlite-vec","directory":null},"main":"./index.cjs","module":"./index.mjs","types":"./index.d.ts","exports":{".":{"require":"./index.cjs","import":"./index.mjs","types":"./index.d.ts"}},"files":[],"keywords":[],"optionalDependencies":{"sqlite-vec-darwin-x64":"0.1.9","sqlite-vec-linux-x64":"0.1.9","sqlite-vec-darwin-arm64":"0.1.9","sqlite-vec-windows-x64":"0.1.9","sqlite-vec-linux-arm64":"0.1.9"}}
@@ -0,0 +1 @@
1
+ {"name":"sqlite-vec-linux-x64","version":"0.1.9","author":"Alex Garcia","license":"MIT OR Apache","description":"A vector search SQLite extension.","repository":{"type":"git","url":"https://github.com/asg017/sqlite-vec","directory":null},"exports":{"./vec0.so":{"default":"./vec0.so"}},"files":[],"keywords":[],"os":["linux"],"cpu":["x64"]}
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 Colin McDonnell
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,208 @@
1
+ <p align="center">
2
+ <img src="logo.svg" width="200px" align="center" alt="Zod logo" />
3
+ <h1 align="center">Zod</h1>
4
+ <p align="center">
5
+ TypeScript-first schema validation with static type inference
6
+ <br/>
7
+ by <a href="https://x.com/colinhacks">@colinhacks</a>
8
+ </p>
9
+ </p>
10
+ <br/>
11
+
12
+ <p align="center">
13
+ <a href="https://github.com/colinhacks/zod/actions?query=branch%3Amain"><img src="https://github.com/colinhacks/zod/actions/workflows/test.yml/badge.svg?event=push&branch=main" alt="Zod CI status" /></a>
14
+ <a href="https://opensource.org/licenses/MIT" rel="nofollow"><img src="https://img.shields.io/github/license/colinhacks/zod" alt="License"></a>
15
+ <a href="https://www.npmjs.com/package/zod" rel="nofollow"><img src="https://img.shields.io/npm/dw/zod.svg" alt="npm"></a>
16
+ <a href="https://discord.gg/KaSRdyX2vc" rel="nofollow"><img src="https://img.shields.io/discord/893487829802418277?label=Discord&logo=discord&logoColor=white" alt="discord server"></a>
17
+ <a href="https://github.com/colinhacks/zod" rel="nofollow"><img src="https://img.shields.io/github/stars/colinhacks/zod" alt="stars"></a>
18
+ </p>
19
+
20
+ <div align="center">
21
+ <a href="https://zod.dev/api">Docs</a>
22
+ <span>&nbsp;&nbsp;•&nbsp;&nbsp;</span>
23
+ <a href="https://discord.gg/RcG33DQJdf">Discord</a>
24
+ <span>&nbsp;&nbsp;•&nbsp;&nbsp;</span>
25
+ <a href="https://twitter.com/colinhacks">𝕏</a>
26
+ <span>&nbsp;&nbsp;•&nbsp;&nbsp;</span>
27
+ <a href="https://bsky.app/profile/zod.dev">Bluesky</a>
28
+ <br />
29
+ </div>
30
+
31
+ <br/>
32
+ <br/>
33
+
34
+ <h2 align="center">Featured sponsor: Jazz</h2>
35
+
36
+ <div align="center">
37
+ <a href="https://jazz.tools/?utm_source=zod">
38
+ <picture width="85%" >
39
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/garden-co/jazz/938f6767e46cdfded60e50d99bf3b533f4809c68/homepage/homepage/public/Zod%20sponsor%20message.png">
40
+ <img alt="jazz logo" src="https://raw.githubusercontent.com/garden-co/jazz/938f6767e46cdfded60e50d99bf3b533f4809c68/homepage/homepage/public/Zod%20sponsor%20message.png" width="85%">
41
+ </picture>
42
+ </a>
43
+ <br/>
44
+ <p><sub>Learn more about <a target="_blank" rel="noopener noreferrer" href="mailto:sponsorship@colinhacks.com">featured sponsorships</a></sub></p>
45
+ </div>
46
+
47
+ <br/>
48
+ <br/>
49
+ <br/>
50
+
51
+ ### [Read the docs →](https://zod.dev/api)
52
+
53
+ <br/>
54
+ <br/>
55
+
56
+ ## What is Zod?
57
+
58
+ Zod is a TypeScript-first validation library. Define a schema and parse some data with it. You'll get back a strongly typed, validated result.
59
+
60
+ ```ts
61
+ import * as z from "zod";
62
+
63
+ const User = z.object({
64
+ name: z.string(),
65
+ });
66
+
67
+ // some untrusted data...
68
+ const input = {
69
+ /* stuff */
70
+ };
71
+
72
+ // the parsed result is validated and type safe!
73
+ const data = User.parse(input);
74
+
75
+ // so you can use it with confidence :)
76
+ console.log(data.name);
77
+ ```
78
+
79
+ <br/>
80
+
81
+ ## Features
82
+
83
+ - Zero external dependencies
84
+ - Works in Node.js and all modern browsers
85
+ - Tiny: `2kb` core bundle (gzipped)
86
+ - Immutable API: methods return a new instance
87
+ - Concise interface
88
+ - Works with TypeScript and plain JS
89
+ - Built-in JSON Schema conversion
90
+ - Extensive ecosystem
91
+
92
+ <br/>
93
+
94
+ ## Installation
95
+
96
+ ```sh
97
+ npm install zod
98
+ ```
99
+
100
+ <br/>
101
+
102
+ ## Basic usage
103
+
104
+ Before you can do anything else, you need to define a schema. For the purposes of this guide, we'll use a simple object schema.
105
+
106
+ ```ts
107
+ import * as z from "zod";
108
+
109
+ const Player = z.object({
110
+ username: z.string(),
111
+ xp: z.number(),
112
+ });
113
+ ```
114
+
115
+ ### Parsing data
116
+
117
+ Given any Zod schema, use `.parse` to validate an input. If it's valid, Zod returns a strongly-typed _deep clone_ of the input.
118
+
119
+ ```ts
120
+ Player.parse({ username: "billie", xp: 100 });
121
+ // => returns { username: "billie", xp: 100 }
122
+ ```
123
+
124
+ **Note** — If your schema uses certain asynchronous APIs like `async` [refinements](https://zod.dev/api#refinements) or [transforms](https://zod.dev/api#transforms), you'll need to use the `.parseAsync()` method instead.
125
+
126
+ ```ts
127
+ const schema = z.string().refine(async (val) => val.length <= 8);
128
+
129
+ await schema.parseAsync("hello");
130
+ // => "hello"
131
+ ```
132
+
133
+ ### Handling errors
134
+
135
+ When validation fails, the `.parse()` method will throw a `ZodError` instance with granular information about the validation issues.
136
+
137
+ ```ts
138
+ try {
139
+ Player.parse({ username: 42, xp: "100" });
140
+ } catch (err) {
141
+ if (err instanceof z.ZodError) {
142
+ err.issues;
143
+ /* [
144
+ {
145
+ expected: 'string',
146
+ code: 'invalid_type',
147
+ path: [ 'username' ],
148
+ message: 'Invalid input: expected string'
149
+ },
150
+ {
151
+ expected: 'number',
152
+ code: 'invalid_type',
153
+ path: [ 'xp' ],
154
+ message: 'Invalid input: expected number'
155
+ }
156
+ ] */
157
+ }
158
+ }
159
+ ```
160
+
161
+ To avoid a `try/catch` block, you can use the `.safeParse()` method to get back a plain result object containing either the successfully parsed data or a `ZodError`. The result type is a [discriminated union](https://www.typescriptlang.org/docs/handbook/2/narrowing.html#discriminated-unions), so you can handle both cases conveniently.
162
+
163
+ ```ts
164
+ const result = Player.safeParse({ username: 42, xp: "100" });
165
+ if (!result.success) {
166
+ result.error; // ZodError instance
167
+ } else {
168
+ result.data; // { username: string; xp: number }
169
+ }
170
+ ```
171
+
172
+ **Note** — If your schema uses certain asynchronous APIs like `async` [refinements](#refine) or [transforms](#transform), you'll need to use the `.safeParseAsync()` method instead.
173
+
174
+ ```ts
175
+ const schema = z.string().refine(async (val) => val.length <= 8);
176
+
177
+ await schema.safeParseAsync("hello");
178
+ // => { success: true; data: "hello" }
179
+ ```
180
+
181
+ ### Inferring types
182
+
183
+ Zod infers a static type from your schema definitions. You can extract this type with the `z.infer<>` utility and use it however you like.
184
+
185
+ ```ts
186
+ const Player = z.object({
187
+ username: z.string(),
188
+ xp: z.number(),
189
+ });
190
+
191
+ // extract the inferred type
192
+ type Player = z.infer<typeof Player>;
193
+
194
+ // use it in your code
195
+ const player: Player = { username: "billie", xp: 100 };
196
+ ```
197
+
198
+ In some cases, the input & output types of a schema can diverge. For instance, the `.transform()` API can convert the input from one type to another. In these cases, you can extract the input and output types independently:
199
+
200
+ ```ts
201
+ const mySchema = z.string().transform((val) => val.length);
202
+
203
+ type MySchemaIn = z.input<typeof mySchema>;
204
+ // => string
205
+
206
+ type MySchemaOut = z.output<typeof mySchema>; // equivalent to z.infer<typeof mySchema>
207
+ // number
208
+ ```