@nicia-ai/typegraph 0.46.2 → 0.48.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +20 -1
  2. package/dist/backend/drizzle/indexes.cjs +9 -9
  3. package/dist/backend/drizzle/indexes.d.cts +1 -1
  4. package/dist/backend/drizzle/indexes.d.ts +1 -1
  5. package/dist/backend/drizzle/indexes.js +5 -5
  6. package/dist/backend/index.cjs +58 -49
  7. package/dist/backend/index.d.cts +37 -55
  8. package/dist/backend/index.d.ts +37 -55
  9. package/dist/backend/index.js +11 -10
  10. package/dist/backend/postgres/index.cjs +27 -26
  11. package/dist/backend/postgres/index.d.cts +21 -7
  12. package/dist/backend/postgres/index.d.ts +21 -7
  13. package/dist/backend/postgres/index.js +14 -13
  14. package/dist/backend/postgres/pglite-store.cjs +34 -33
  15. package/dist/backend/postgres/pglite-store.cjs.map +1 -1
  16. package/dist/backend/postgres/pglite-store.d.cts +8 -8
  17. package/dist/backend/postgres/pglite-store.d.ts +8 -8
  18. package/dist/backend/postgres/pglite-store.js +30 -29
  19. package/dist/backend/postgres/pglite-store.js.map +1 -1
  20. package/dist/backend/postgres/pglite.cjs +16 -15
  21. package/dist/backend/postgres/pglite.d.cts +3 -3
  22. package/dist/backend/postgres/pglite.d.ts +3 -3
  23. package/dist/backend/postgres/pglite.js +15 -14
  24. package/dist/backend/sqlite/index.cjs +24 -23
  25. package/dist/backend/sqlite/index.d.cts +20 -7
  26. package/dist/backend/sqlite/index.d.ts +20 -7
  27. package/dist/backend/sqlite/index.js +12 -11
  28. package/dist/backend/sqlite/libsql.cjs +19 -18
  29. package/dist/backend/sqlite/libsql.cjs.map +1 -1
  30. package/dist/backend/sqlite/libsql.d.cts +3 -3
  31. package/dist/backend/sqlite/libsql.d.ts +3 -3
  32. package/dist/backend/sqlite/libsql.js +14 -13
  33. package/dist/backend/sqlite/libsql.js.map +1 -1
  34. package/dist/backend/sqlite/local-store.cjs +35 -34
  35. package/dist/backend/sqlite/local-store.cjs.map +1 -1
  36. package/dist/backend/sqlite/local-store.d.cts +8 -8
  37. package/dist/backend/sqlite/local-store.d.ts +8 -8
  38. package/dist/backend/sqlite/local-store.js +31 -30
  39. package/dist/backend/sqlite/local-store.js.map +1 -1
  40. package/dist/backend/sqlite/local.cjs +17 -16
  41. package/dist/backend/sqlite/local.d.cts +3 -3
  42. package/dist/backend/sqlite/local.d.ts +3 -3
  43. package/dist/backend/sqlite/local.js +15 -14
  44. package/dist/{chunk-TCT66A7N.cjs → chunk-26YKDNUD.cjs} +10 -10
  45. package/dist/{chunk-TCT66A7N.cjs.map → chunk-26YKDNUD.cjs.map} +1 -1
  46. package/dist/{chunk-E4OSGBCM.cjs → chunk-2HIYYMWY.cjs} +139 -136
  47. package/dist/chunk-2HIYYMWY.cjs.map +1 -0
  48. package/dist/chunk-2QGYQBS2.cjs +161 -0
  49. package/dist/chunk-2QGYQBS2.cjs.map +1 -0
  50. package/dist/{chunk-GWXXHOLU.js → chunk-2SYZXD54.js} +21 -18
  51. package/dist/chunk-2SYZXD54.js.map +1 -0
  52. package/dist/{chunk-KA4L2NZ3.js → chunk-2TYSSBU5.js} +14 -14
  53. package/dist/{chunk-KA4L2NZ3.js.map → chunk-2TYSSBU5.js.map} +1 -1
  54. package/dist/{chunk-QOJ2L2AD.js → chunk-3DMMGT6S.js} +3 -3
  55. package/dist/{chunk-QOJ2L2AD.js.map → chunk-3DMMGT6S.js.map} +1 -1
  56. package/dist/{chunk-F36KZDFX.cjs → chunk-3FPR224C.cjs} +91 -91
  57. package/dist/{chunk-F36KZDFX.cjs.map → chunk-3FPR224C.cjs.map} +1 -1
  58. package/dist/{chunk-32UETY6S.cjs → chunk-3KOY4FH3.cjs} +207 -28
  59. package/dist/chunk-3KOY4FH3.cjs.map +1 -0
  60. package/dist/{chunk-QU7QLJA4.cjs → chunk-3U5ABFDW.cjs} +26 -26
  61. package/dist/{chunk-QU7QLJA4.cjs.map → chunk-3U5ABFDW.cjs.map} +1 -1
  62. package/dist/{chunk-RFDEYLIK.js → chunk-4WMMBDS5.js} +7 -7
  63. package/dist/chunk-4WMMBDS5.js.map +1 -0
  64. package/dist/{chunk-R7EWHKID.js → chunk-5K2BKEBD.js} +19 -145
  65. package/dist/chunk-5K2BKEBD.js.map +1 -0
  66. package/dist/chunk-5PRKMB24.cjs +124 -0
  67. package/dist/chunk-5PRKMB24.cjs.map +1 -0
  68. package/dist/chunk-6LN7FIVU.js +107 -0
  69. package/dist/chunk-6LN7FIVU.js.map +1 -0
  70. package/dist/{chunk-D6GCNNMK.cjs → chunk-6NGW27EO.cjs} +10 -10
  71. package/dist/{chunk-D6GCNNMK.cjs.map → chunk-6NGW27EO.cjs.map} +1 -1
  72. package/dist/{chunk-WHS2Y43J.js → chunk-6SWPJEYN.js} +5 -5
  73. package/dist/{chunk-WHS2Y43J.js.map → chunk-6SWPJEYN.js.map} +1 -1
  74. package/dist/{chunk-7TKNK32B.js → chunk-7SQSZN2J.js} +5 -5
  75. package/dist/{chunk-7TKNK32B.js.map → chunk-7SQSZN2J.js.map} +1 -1
  76. package/dist/{chunk-UTVQPZPN.cjs → chunk-7XUYFFR4.cjs} +20 -20
  77. package/dist/chunk-7XUYFFR4.cjs.map +1 -0
  78. package/dist/{chunk-KXSMF6PL.js → chunk-ACGSAMD3.js} +39 -34
  79. package/dist/chunk-ACGSAMD3.js.map +1 -0
  80. package/dist/{chunk-PYKF7UIL.cjs → chunk-AOSSQDVO.cjs} +13 -13
  81. package/dist/{chunk-PYKF7UIL.cjs.map → chunk-AOSSQDVO.cjs.map} +1 -1
  82. package/dist/{chunk-AT3MLMJV.js → chunk-AX6JGVTZ.js} +91 -20
  83. package/dist/chunk-AX6JGVTZ.js.map +1 -0
  84. package/dist/{chunk-WA64ZSCA.cjs → chunk-BFUOME67.cjs} +11 -11
  85. package/dist/{chunk-WA64ZSCA.cjs.map → chunk-BFUOME67.cjs.map} +1 -1
  86. package/dist/{chunk-YQ4JONWE.js → chunk-BRRP76WO.js} +401 -131
  87. package/dist/chunk-BRRP76WO.js.map +1 -0
  88. package/dist/{chunk-FCIZNUW5.js → chunk-CHAOFCHV.js} +3 -3
  89. package/dist/{chunk-FCIZNUW5.js.map → chunk-CHAOFCHV.js.map} +1 -1
  90. package/dist/chunk-CICO5GXD.cjs +12 -0
  91. package/dist/{chunk-73MWKDFK.cjs.map → chunk-CICO5GXD.cjs.map} +1 -1
  92. package/dist/{chunk-S3G5VLSW.js → chunk-CT3ZKTOF.js} +7 -6
  93. package/dist/chunk-CT3ZKTOF.js.map +1 -0
  94. package/dist/{chunk-SXWLLQ3D.js → chunk-D5R42W5D.js} +4 -4
  95. package/dist/{chunk-SXWLLQ3D.js.map → chunk-D5R42W5D.js.map} +1 -1
  96. package/dist/{chunk-BZZI7B43.cjs → chunk-DO7SAMEK.cjs} +47 -47
  97. package/dist/{chunk-BZZI7B43.cjs.map → chunk-DO7SAMEK.cjs.map} +1 -1
  98. package/dist/chunk-DZAICA5J.js +147 -0
  99. package/dist/chunk-DZAICA5J.js.map +1 -0
  100. package/dist/{chunk-2ZWM2RFH.cjs → chunk-EDN4Y4ZG.cjs} +9 -9
  101. package/dist/{chunk-2ZWM2RFH.cjs.map → chunk-EDN4Y4ZG.cjs.map} +1 -1
  102. package/dist/{chunk-A4R3H7RU.cjs → chunk-EZEEWCFJ.cjs} +264 -361
  103. package/dist/chunk-EZEEWCFJ.cjs.map +1 -0
  104. package/dist/{chunk-BEB4OFZF.cjs → chunk-FA2AFWLP.cjs} +51 -59
  105. package/dist/chunk-FA2AFWLP.cjs.map +1 -0
  106. package/dist/{chunk-ZBVZ7HXD.cjs → chunk-FQPEMEWX.cjs} +12 -12
  107. package/dist/{chunk-ZBVZ7HXD.cjs.map → chunk-FQPEMEWX.cjs.map} +1 -1
  108. package/dist/{chunk-LNIWCQR4.js → chunk-GLHXM7C4.js} +3 -3
  109. package/dist/{chunk-LNIWCQR4.js.map → chunk-GLHXM7C4.js.map} +1 -1
  110. package/dist/{chunk-6BD6ZBKT.cjs → chunk-GYEG3ZLZ.cjs} +10 -10
  111. package/dist/{chunk-6BD6ZBKT.cjs.map → chunk-GYEG3ZLZ.cjs.map} +1 -1
  112. package/dist/{chunk-A7NMUYEL.cjs → chunk-HDL2ARHX.cjs} +27 -27
  113. package/dist/{chunk-A7NMUYEL.cjs.map → chunk-HDL2ARHX.cjs.map} +1 -1
  114. package/dist/{chunk-5ZJOB5YS.js → chunk-HEV35TGT.js} +4 -4
  115. package/dist/{chunk-5ZJOB5YS.js.map → chunk-HEV35TGT.js.map} +1 -1
  116. package/dist/{chunk-LHYSY6SE.js → chunk-I4GAZH5Z.js} +186 -9
  117. package/dist/chunk-I4GAZH5Z.js.map +1 -0
  118. package/dist/{chunk-BQM5P2NO.cjs → chunk-JB6T4GLL.cjs} +260 -223
  119. package/dist/chunk-JB6T4GLL.cjs.map +1 -0
  120. package/dist/{chunk-QPOQX2DI.cjs → chunk-JFRT7S3B.cjs} +1026 -369
  121. package/dist/chunk-JFRT7S3B.cjs.map +1 -0
  122. package/dist/{chunk-JCNTKRAK.js → chunk-JONXFAPO.js} +5 -5
  123. package/dist/{chunk-JCNTKRAK.js.map → chunk-JONXFAPO.js.map} +1 -1
  124. package/dist/{chunk-WEJHA7AD.js → chunk-KF6K7TGH.js} +109 -75
  125. package/dist/chunk-KF6K7TGH.js.map +1 -0
  126. package/dist/{chunk-EDJDDY6H.js → chunk-KKBDXCLQ.js} +4 -4
  127. package/dist/{chunk-EDJDDY6H.js.map → chunk-KKBDXCLQ.js.map} +1 -1
  128. package/dist/{chunk-ZHOAZD7Q.cjs → chunk-L3LQNR34.cjs} +161 -161
  129. package/dist/{chunk-ZHOAZD7Q.cjs.map → chunk-L3LQNR34.cjs.map} +1 -1
  130. package/dist/{chunk-AF3TWL5C.cjs → chunk-LRQKXRXO.cjs} +4 -4
  131. package/dist/{chunk-AF3TWL5C.cjs.map → chunk-LRQKXRXO.cjs.map} +1 -1
  132. package/dist/chunk-MKJ4KXL5.cjs +12 -0
  133. package/dist/{chunk-6LAXM4J2.cjs.map → chunk-MKJ4KXL5.cjs.map} +1 -1
  134. package/dist/{chunk-KCH7WQA5.cjs → chunk-MRDBBHIZ.cjs} +48 -2
  135. package/dist/chunk-MRDBBHIZ.cjs.map +1 -0
  136. package/dist/{chunk-FXNHZFZV.js → chunk-MYKHJI2J.js} +3 -3
  137. package/dist/{chunk-FXNHZFZV.js.map → chunk-MYKHJI2J.js.map} +1 -1
  138. package/dist/{chunk-Z43KWLZF.js → chunk-NACVVDWB.js} +213 -12
  139. package/dist/chunk-NACVVDWB.js.map +1 -0
  140. package/dist/{chunk-72WUT4GG.js → chunk-NVY5CJFP.js} +4 -4
  141. package/dist/{chunk-72WUT4GG.js.map → chunk-NVY5CJFP.js.map} +1 -1
  142. package/dist/{chunk-WYFB7BN3.js → chunk-OD4SSY2U.js} +166 -48
  143. package/dist/chunk-OD4SSY2U.js.map +1 -0
  144. package/dist/{chunk-ZIH42CRX.cjs → chunk-OI2GQ25X.cjs} +7 -7
  145. package/dist/{chunk-ZIH42CRX.cjs.map → chunk-OI2GQ25X.cjs.map} +1 -1
  146. package/dist/{chunk-AU3IJNNP.js → chunk-OMZ37BM2.js} +5 -5
  147. package/dist/{chunk-AU3IJNNP.js.map → chunk-OMZ37BM2.js.map} +1 -1
  148. package/dist/{chunk-C4DYN2SD.cjs → chunk-OORXGFL5.cjs} +48 -48
  149. package/dist/{chunk-C4DYN2SD.cjs.map → chunk-OORXGFL5.cjs.map} +1 -1
  150. package/dist/{chunk-HNYLMPQQ.cjs → chunk-OTUPEF2W.cjs} +149 -78
  151. package/dist/chunk-OTUPEF2W.cjs.map +1 -0
  152. package/dist/{chunk-BRN3RGD2.js → chunk-OVI7IXYX.js} +3 -3
  153. package/dist/{chunk-BRN3RGD2.js.map → chunk-OVI7IXYX.js.map} +1 -1
  154. package/dist/{chunk-WMKEGJG4.js → chunk-P6YLZTRE.js} +3 -3
  155. package/dist/{chunk-WMKEGJG4.js.map → chunk-P6YLZTRE.js.map} +1 -1
  156. package/dist/{chunk-C2ZP5YS6.cjs → chunk-PFBRJBUL.cjs} +278 -160
  157. package/dist/chunk-PFBRJBUL.cjs.map +1 -0
  158. package/dist/{chunk-EJSYWAEV.js → chunk-QTD6HX4O.js} +5 -5
  159. package/dist/{chunk-EJSYWAEV.js.map → chunk-QTD6HX4O.js.map} +1 -1
  160. package/dist/{chunk-JL5UEBWT.cjs → chunk-ROR5ZR6A.cjs} +45 -45
  161. package/dist/{chunk-JL5UEBWT.cjs.map → chunk-ROR5ZR6A.cjs.map} +1 -1
  162. package/dist/{chunk-EDHV4CBU.js → chunk-S5TERQVW.js} +37 -134
  163. package/dist/chunk-S5TERQVW.js.map +1 -0
  164. package/dist/{chunk-FSLTU57P.js → chunk-SDBBMD4N.js} +3 -3
  165. package/dist/{chunk-FSLTU57P.js.map → chunk-SDBBMD4N.js.map} +1 -1
  166. package/dist/{chunk-36LIJXWC.js → chunk-SHFBB23Q.js} +4 -4
  167. package/dist/{chunk-36LIJXWC.js.map → chunk-SHFBB23Q.js.map} +1 -1
  168. package/dist/chunk-SIT26LAZ.cjs +614 -0
  169. package/dist/chunk-SIT26LAZ.cjs.map +1 -0
  170. package/dist/{chunk-C6KE2HSQ.cjs → chunk-SR725PWF.cjs} +1662 -1392
  171. package/dist/chunk-SR725PWF.cjs.map +1 -0
  172. package/dist/{chunk-S7WIRFNS.cjs → chunk-TKZXMWQF.cjs} +13 -12
  173. package/dist/chunk-TKZXMWQF.cjs.map +1 -0
  174. package/dist/{chunk-5PDSCELM.cjs → chunk-TQHGE7UC.cjs} +29 -164
  175. package/dist/chunk-TQHGE7UC.cjs.map +1 -0
  176. package/dist/{chunk-XBHRKLZU.cjs → chunk-TUNPBZY3.cjs} +4 -4
  177. package/dist/{chunk-XBHRKLZU.cjs.map → chunk-TUNPBZY3.cjs.map} +1 -1
  178. package/dist/{chunk-KOAI3KIV.cjs → chunk-TZEGUG6D.cjs} +4 -4
  179. package/dist/{chunk-KOAI3KIV.cjs.map → chunk-TZEGUG6D.cjs.map} +1 -1
  180. package/dist/chunk-UGHG7PGX.js +592 -0
  181. package/dist/chunk-UGHG7PGX.js.map +1 -0
  182. package/dist/{chunk-N3QTGPC7.cjs → chunk-UMGZDVOA.cjs} +303 -101
  183. package/dist/chunk-UMGZDVOA.cjs.map +1 -0
  184. package/dist/{chunk-RHDOAQCT.cjs → chunk-WCCATHMB.cjs} +140 -135
  185. package/dist/chunk-WCCATHMB.cjs.map +1 -0
  186. package/dist/{chunk-DYPRZ53S.cjs → chunk-WODMN3Q2.cjs} +27 -27
  187. package/dist/{chunk-DYPRZ53S.cjs.map → chunk-WODMN3Q2.cjs.map} +1 -1
  188. package/dist/{chunk-OZJCH7ZS.js → chunk-XVWOYKIK.js} +3 -3
  189. package/dist/{chunk-OZJCH7ZS.js.map → chunk-XVWOYKIK.js.map} +1 -1
  190. package/dist/{chunk-IHRDX7K6.js → chunk-YIURNGXI.js} +46 -56
  191. package/dist/chunk-YIURNGXI.js.map +1 -0
  192. package/dist/{chunk-GWUWRZXW.js → chunk-YVF2EM7B.js} +3 -3
  193. package/dist/{chunk-GWUWRZXW.js.map → chunk-YVF2EM7B.js.map} +1 -1
  194. package/dist/{chunk-EAMVXR5B.js → chunk-ZDKTPBGV.js} +4 -4
  195. package/dist/{chunk-EAMVXR5B.js.map → chunk-ZDKTPBGV.js.map} +1 -1
  196. package/dist/{chunk-A2LJG5GM.js → chunk-ZFMCDJGB.js} +803 -148
  197. package/dist/chunk-ZFMCDJGB.js.map +1 -0
  198. package/dist/{chunk-62ZXBMSD.js → chunk-ZLONH2UD.js} +46 -3
  199. package/dist/chunk-ZLONH2UD.js.map +1 -0
  200. package/dist/core/index.cjs +28 -27
  201. package/dist/core/index.d.cts +4 -4
  202. package/dist/core/index.d.ts +4 -4
  203. package/dist/core/index.js +8 -7
  204. package/dist/ddl-BL1NZLMY.d.cts +78 -0
  205. package/dist/ddl-D_oW-EVO.d.ts +78 -0
  206. package/dist/graph-extension/index.cjs +20 -20
  207. package/dist/graph-extension/index.d.cts +4 -4
  208. package/dist/graph-extension/index.d.ts +4 -4
  209. package/dist/graph-extension/index.js +4 -4
  210. package/dist/graph-merge/index.cjs +3418 -706
  211. package/dist/graph-merge/index.cjs.map +1 -1
  212. package/dist/graph-merge/index.d.cts +550 -58
  213. package/dist/graph-merge/index.d.ts +550 -58
  214. package/dist/graph-merge/index.js +3191 -497
  215. package/dist/graph-merge/index.js.map +1 -1
  216. package/dist/{index-Deyu8IXL.d.ts → index-COs_z6nV.d.cts} +47 -3
  217. package/dist/{index-DrRS51Ld.d.cts → index-D7d1u2gr.d.ts} +47 -3
  218. package/dist/index.cjs +233 -216
  219. package/dist/index.cjs.map +1 -1
  220. package/dist/index.d.cts +12 -12
  221. package/dist/index.d.ts +12 -12
  222. package/dist/index.js +35 -34
  223. package/dist/index.js.map +1 -1
  224. package/dist/indexes/index.cjs +13 -13
  225. package/dist/indexes/index.d.cts +4 -4
  226. package/dist/indexes/index.d.ts +4 -4
  227. package/dist/indexes/index.js +6 -6
  228. package/dist/interchange/index.cjs +53 -52
  229. package/dist/interchange/index.cjs.map +1 -1
  230. package/dist/interchange/index.d.cts +17 -13
  231. package/dist/interchange/index.d.ts +17 -13
  232. package/dist/interchange/index.js +17 -16
  233. package/dist/interchange/index.js.map +1 -1
  234. package/dist/{manager-ptr3JLRP.d.cts → manager-CYaff3n3.d.cts} +2 -2
  235. package/dist/{manager-DX983gJ0.d.ts → manager-D9eRT_ns.d.ts} +2 -2
  236. package/dist/{materialize-indexes-CpXoggWU.d.ts → materialize-indexes-DJ3ykH59.d.ts} +1 -1
  237. package/dist/{materialize-indexes-BXz77YqO.d.cts → materialize-indexes-DTtAnvfY.d.cts} +1 -1
  238. package/dist/{postgres-DwgEXSPI.d.cts → postgres-CcL4bAHS.d.ts} +1 -1
  239. package/dist/{postgres-QdOMHTBz.d.ts → postgres-DMj39MEu.d.cts} +1 -1
  240. package/dist/profiler/index.d.cts +9 -9
  241. package/dist/profiler/index.d.ts +9 -9
  242. package/dist/provenance/index.cjs +46 -46
  243. package/dist/provenance/index.cjs.map +1 -1
  244. package/dist/provenance/index.d.cts +7 -7
  245. package/dist/provenance/index.d.ts +7 -7
  246. package/dist/provenance/index.js +13 -13
  247. package/dist/provenance/index.js.map +1 -1
  248. package/dist/repair-validity-windows-BFNZvd_H.d.cts +166 -0
  249. package/dist/repair-validity-windows-DlUSqwCg.d.ts +166 -0
  250. package/dist/schema/index.cjs +45 -44
  251. package/dist/schema/index.d.cts +6 -6
  252. package/dist/schema/index.d.ts +6 -6
  253. package/dist/schema/index.js +18 -17
  254. package/dist/{searchable-BOUuA83f.d.ts → searchable-DHJMh_nj.d.cts} +1 -1
  255. package/dist/{searchable-BrUh0pdc.d.cts → searchable-bpE1bBfc.d.ts} +1 -1
  256. package/dist/{sqlite-BfYcV61E.d.cts → sqlite-D7Oz0SQh.d.ts} +1 -1
  257. package/dist/{sqlite-DK40XVR1.d.ts → sqlite-YppHrNFb.d.cts} +1 -1
  258. package/dist/{store-FTqBpuJD.d.cts → store-JUVvtmR4.d.cts} +228 -92
  259. package/dist/{store-Bo1psfVZ.d.ts → store-UzrGvZOo.d.ts} +228 -92
  260. package/dist/{temporal-DPtn0HOu.d.ts → temporal-5GqpYCk2.d.cts} +1 -1
  261. package/dist/{temporal-CXewwLTB.d.cts → temporal-CbnLzTmM.d.ts} +1 -1
  262. package/dist/{types-Du78EvpN.d.ts → types-BqFZTQmV.d.cts} +60 -9
  263. package/dist/{types-Du78EvpN.d.cts → types-BqFZTQmV.d.ts} +60 -9
  264. package/dist/{types-CeT7xM4M.d.ts → types-Bx74kaTt.d.ts} +1 -1
  265. package/dist/{types-XR1nHERK.d.cts → types-CXAhpW-c.d.cts} +1 -1
  266. package/dist/{where-CJsp-YUf.d.cts → where-DI_Fqz-X.d.cts} +1 -1
  267. package/dist/{where-CMbFiWwp.d.ts → where-O-k2wgYm.d.ts} +1 -1
  268. package/package.json +1 -1
  269. package/dist/chunk-32UETY6S.cjs.map +0 -1
  270. package/dist/chunk-5PDSCELM.cjs.map +0 -1
  271. package/dist/chunk-62ZXBMSD.js.map +0 -1
  272. package/dist/chunk-6LAXM4J2.cjs +0 -12
  273. package/dist/chunk-73MWKDFK.cjs +0 -12
  274. package/dist/chunk-A2LJG5GM.js.map +0 -1
  275. package/dist/chunk-A4R3H7RU.cjs.map +0 -1
  276. package/dist/chunk-ANKOXPCC.cjs +0 -267
  277. package/dist/chunk-ANKOXPCC.cjs.map +0 -1
  278. package/dist/chunk-AT3MLMJV.js.map +0 -1
  279. package/dist/chunk-BEB4OFZF.cjs.map +0 -1
  280. package/dist/chunk-BQM5P2NO.cjs.map +0 -1
  281. package/dist/chunk-C2ZP5YS6.cjs.map +0 -1
  282. package/dist/chunk-C6KE2HSQ.cjs.map +0 -1
  283. package/dist/chunk-DSAWGCMP.js +0 -254
  284. package/dist/chunk-DSAWGCMP.js.map +0 -1
  285. package/dist/chunk-E4OSGBCM.cjs.map +0 -1
  286. package/dist/chunk-EDHV4CBU.js.map +0 -1
  287. package/dist/chunk-FA6Z7B5L.js +0 -244
  288. package/dist/chunk-FA6Z7B5L.js.map +0 -1
  289. package/dist/chunk-GVAMRRZR.cjs +0 -268
  290. package/dist/chunk-GVAMRRZR.cjs.map +0 -1
  291. package/dist/chunk-GWXXHOLU.js.map +0 -1
  292. package/dist/chunk-HNYLMPQQ.cjs.map +0 -1
  293. package/dist/chunk-IHRDX7K6.js.map +0 -1
  294. package/dist/chunk-KCH7WQA5.cjs.map +0 -1
  295. package/dist/chunk-KXSMF6PL.js.map +0 -1
  296. package/dist/chunk-LHYSY6SE.js.map +0 -1
  297. package/dist/chunk-N3QTGPC7.cjs.map +0 -1
  298. package/dist/chunk-QPOQX2DI.cjs.map +0 -1
  299. package/dist/chunk-R7EWHKID.js.map +0 -1
  300. package/dist/chunk-RFDEYLIK.js.map +0 -1
  301. package/dist/chunk-RHDOAQCT.cjs.map +0 -1
  302. package/dist/chunk-S3G5VLSW.js.map +0 -1
  303. package/dist/chunk-S7WIRFNS.cjs.map +0 -1
  304. package/dist/chunk-UTVQPZPN.cjs.map +0 -1
  305. package/dist/chunk-WEJHA7AD.js.map +0 -1
  306. package/dist/chunk-WYFB7BN3.js.map +0 -1
  307. package/dist/chunk-YQ4JONWE.js.map +0 -1
  308. package/dist/chunk-Z43KWLZF.js.map +0 -1
  309. package/dist/ddl-mE07h_EM.d.cts +0 -38
  310. package/dist/ddl-opIn8DfX.d.ts +0 -38
package/README.md CHANGED
@@ -53,7 +53,12 @@ Examples: [github.com/nicia-ai/typegraph/tree/main/packages/typegraph/examples](
53
53
  TypeGraph ships semantic graph merge as a dedicated subpath:
54
54
 
55
55
  ```ts
56
- import { branch, merge } from "@nicia-ai/typegraph/graph-merge";
56
+ import {
57
+ applyMergePlan,
58
+ branch,
59
+ merge,
60
+ planMerge,
61
+ } from "@nicia-ai/typegraph/graph-merge";
57
62
  ```
58
63
 
59
64
  `branch()` creates isolated working copies over caller-provided backends, stamped
@@ -71,6 +76,9 @@ append-only pile of duplicates. The merge pipeline can:
71
76
  - preserve branch-specific context by repointing edges to canonical nodes;
72
77
  - surface property and delete/modify conflicts (for nodes and edges) in a
73
78
  `MergeReport`, three-way merged against base so disjoint edits compose;
79
+ - explain every entity collapse with deterministic decisive edges, complete
80
+ candidate-source attribution, and the actual score/threshold for scored
81
+ matches, with bounded accepted/rejected diagnostics available on request;
74
82
  - expose report-only provenance, with optional sidecar persistence you can query.
75
83
 
76
84
  `merge()` is a snapshot merge (all branches forked from the current base);
@@ -78,6 +86,17 @@ append-only pile of duplicates. The merge pipeline can:
78
86
  advanced, re-discovering committed entities instead of duplicating them — the
79
87
  primitive for continuous ingestion.
80
88
 
89
+ For approval workflows, `planMerge()` and `planMergeIncremental()` produce a
90
+ deterministically ordered, JSON-serializable `MergePlanArtifact` without
91
+ mutating the target. Store or review that artifact, then pass it to
92
+ `applyMergePlan()`. Apply validates its digest and checks its durable revision,
93
+ graph, schema, and origin fence inside the write transaction; it never re-runs
94
+ candidate generation, scoring, embeddings, or policy callbacks. Plans require a
95
+ target with `revisionTracking: true` or `history: true`. They may contain
96
+ sensitive application data, and their digest provides integrity/identity—not a
97
+ signature, authentication, or authorization. `merge()` and `mergeIncremental()`
98
+ remain one-call compatibility APIs over the same resolution and write owners.
99
+
81
100
  It lives in the core package because the primitive is defined over TypeGraph
82
101
  stores, schemas, indexes, backends, and ontology semantics rather than as a
83
102
  separate product surface.
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkDYPRZ53S_cjs = require('../../chunk-DYPRZ53S.cjs');
4
- require('../../chunk-ZIH42CRX.cjs');
5
- require('../../chunk-ZHOAZD7Q.cjs');
6
- require('../../chunk-2ZWM2RFH.cjs');
7
- require('../../chunk-KCH7WQA5.cjs');
3
+ var chunkWODMN3Q2_cjs = require('../../chunk-WODMN3Q2.cjs');
4
+ require('../../chunk-OI2GQ25X.cjs');
5
+ require('../../chunk-L3LQNR34.cjs');
6
+ require('../../chunk-EDN4Y4ZG.cjs');
7
+ require('../../chunk-MRDBBHIZ.cjs');
8
8
  require('../../chunk-A7J2YDDI.cjs');
9
9
  require('../../chunk-N66HCGCY.cjs');
10
10
 
@@ -12,19 +12,19 @@ require('../../chunk-N66HCGCY.cjs');
12
12
 
13
13
  Object.defineProperty(exports, "buildPostgresEdgeIndexBuilders", {
14
14
  enumerable: true,
15
- get: function () { return chunkDYPRZ53S_cjs.buildPostgresEdgeIndexBuilders; }
15
+ get: function () { return chunkWODMN3Q2_cjs.buildPostgresEdgeIndexBuilders; }
16
16
  });
17
17
  Object.defineProperty(exports, "buildPostgresNodeIndexBuilders", {
18
18
  enumerable: true,
19
- get: function () { return chunkDYPRZ53S_cjs.buildPostgresNodeIndexBuilders; }
19
+ get: function () { return chunkWODMN3Q2_cjs.buildPostgresNodeIndexBuilders; }
20
20
  });
21
21
  Object.defineProperty(exports, "buildSqliteEdgeIndexBuilders", {
22
22
  enumerable: true,
23
- get: function () { return chunkDYPRZ53S_cjs.buildSqliteEdgeIndexBuilders; }
23
+ get: function () { return chunkWODMN3Q2_cjs.buildSqliteEdgeIndexBuilders; }
24
24
  });
25
25
  Object.defineProperty(exports, "buildSqliteNodeIndexBuilders", {
26
26
  enumerable: true,
27
- get: function () { return chunkDYPRZ53S_cjs.buildSqliteNodeIndexBuilders; }
27
+ get: function () { return chunkWODMN3Q2_cjs.buildSqliteNodeIndexBuilders; }
28
28
  });
29
29
  //# sourceMappingURL=indexes.cjs.map
30
30
  //# sourceMappingURL=indexes.cjs.map
@@ -1,7 +1,7 @@
1
1
  import { SQLWrapper } from 'drizzle-orm';
2
2
  import { IndexBuilder } from 'drizzle-orm/pg-core';
3
3
  import { IndexBuilder as IndexBuilder$1 } from 'drizzle-orm/sqlite-core';
4
- import { I as IndexDeclaration } from '../../types-Du78EvpN.cjs';
4
+ import { I as IndexDeclaration } from '../../types-BqFZTQmV.cjs';
5
5
  import 'zod';
6
6
 
7
7
  declare function buildPostgresNodeIndexBuilders(table: NodeIndexTable, indexes: readonly IndexDeclaration[]): readonly IndexBuilder[];
@@ -1,7 +1,7 @@
1
1
  import { SQLWrapper } from 'drizzle-orm';
2
2
  import { IndexBuilder } from 'drizzle-orm/pg-core';
3
3
  import { IndexBuilder as IndexBuilder$1 } from 'drizzle-orm/sqlite-core';
4
- import { I as IndexDeclaration } from '../../types-Du78EvpN.js';
4
+ import { I as IndexDeclaration } from '../../types-BqFZTQmV.js';
5
5
  import 'zod';
6
6
 
7
7
  declare function buildPostgresNodeIndexBuilders(table: NodeIndexTable, indexes: readonly IndexDeclaration[]): readonly IndexBuilder[];
@@ -1,8 +1,8 @@
1
- export { buildPostgresEdgeIndexBuilders, buildPostgresNodeIndexBuilders, buildSqliteEdgeIndexBuilders, buildSqliteNodeIndexBuilders } from '../../chunk-AU3IJNNP.js';
2
- import '../../chunk-FSLTU57P.js';
3
- import '../../chunk-EAMVXR5B.js';
4
- import '../../chunk-QOJ2L2AD.js';
5
- import '../../chunk-62ZXBMSD.js';
1
+ export { buildPostgresEdgeIndexBuilders, buildPostgresNodeIndexBuilders, buildSqliteEdgeIndexBuilders, buildSqliteNodeIndexBuilders } from '../../chunk-OMZ37BM2.js';
2
+ import '../../chunk-SDBBMD4N.js';
3
+ import '../../chunk-ZDKTPBGV.js';
4
+ import '../../chunk-3DMMGT6S.js';
5
+ import '../../chunk-ZLONH2UD.js';
6
6
  import '../../chunk-FWJKWH6U.js';
7
7
  import '../../chunk-DYATYRY4.js';
8
8
  //# sourceMappingURL=indexes.js.map
@@ -1,17 +1,18 @@
1
1
  'use strict';
2
2
 
3
- var chunkN3QTGPC7_cjs = require('../chunk-N3QTGPC7.cjs');
4
- require('../chunk-A7NMUYEL.cjs');
5
- require('../chunk-DYPRZ53S.cjs');
6
- require('../chunk-QU7QLJA4.cjs');
7
- var chunkANKOXPCC_cjs = require('../chunk-ANKOXPCC.cjs');
8
- require('../chunk-5PDSCELM.cjs');
9
- require('../chunk-ZIH42CRX.cjs');
3
+ var chunkUMGZDVOA_cjs = require('../chunk-UMGZDVOA.cjs');
4
+ require('../chunk-HDL2ARHX.cjs');
5
+ require('../chunk-WODMN3Q2.cjs');
6
+ require('../chunk-3U5ABFDW.cjs');
7
+ var chunk5PRKMB24_cjs = require('../chunk-5PRKMB24.cjs');
8
+ require('../chunk-2QGYQBS2.cjs');
9
+ var chunkTQHGE7UC_cjs = require('../chunk-TQHGE7UC.cjs');
10
+ require('../chunk-OI2GQ25X.cjs');
10
11
  require('../chunk-NAUA4PW5.cjs');
11
- var chunkZHOAZD7Q_cjs = require('../chunk-ZHOAZD7Q.cjs');
12
- var chunk2ZWM2RFH_cjs = require('../chunk-2ZWM2RFH.cjs');
12
+ var chunkL3LQNR34_cjs = require('../chunk-L3LQNR34.cjs');
13
+ var chunkEDN4Y4ZG_cjs = require('../chunk-EDN4Y4ZG.cjs');
13
14
  var chunkXUO3KQFO_cjs = require('../chunk-XUO3KQFO.cjs');
14
- require('../chunk-KCH7WQA5.cjs');
15
+ require('../chunk-MRDBBHIZ.cjs');
15
16
  require('../chunk-A7J2YDDI.cjs');
16
17
  require('../chunk-N66HCGCY.cjs');
17
18
 
@@ -19,159 +20,167 @@ require('../chunk-N66HCGCY.cjs');
19
20
 
20
21
  Object.defineProperty(exports, "deleteLegacyRecordedAnchorMap", {
21
22
  enumerable: true,
22
- get: function () { return chunkN3QTGPC7_cjs.deleteLegacyRecordedAnchorMap; }
23
+ get: function () { return chunkUMGZDVOA_cjs.deleteLegacyRecordedAnchorMap; }
23
24
  });
24
25
  Object.defineProperty(exports, "migrateLegacyRecordedTime", {
25
26
  enumerable: true,
26
- get: function () { return chunkN3QTGPC7_cjs.migrateLegacyRecordedTime; }
27
+ get: function () { return chunkUMGZDVOA_cjs.migrateLegacyRecordedTime; }
27
28
  });
28
29
  Object.defineProperty(exports, "migrateRecordedAnchor", {
29
30
  enumerable: true,
30
- get: function () { return chunkN3QTGPC7_cjs.migrateRecordedAnchor; }
31
+ get: function () { return chunkUMGZDVOA_cjs.migrateRecordedAnchor; }
32
+ });
33
+ Object.defineProperty(exports, "repairInvertedValidityWindows", {
34
+ enumerable: true,
35
+ get: function () { return chunkUMGZDVOA_cjs.repairInvertedValidityWindows; }
31
36
  });
32
37
  Object.defineProperty(exports, "D1_MAX_BIND_PARAMETERS", {
33
38
  enumerable: true,
34
- get: function () { return chunkANKOXPCC_cjs.D1_MAX_BIND_PARAMETERS; }
39
+ get: function () { return chunk5PRKMB24_cjs.D1_MAX_BIND_PARAMETERS; }
35
40
  });
36
41
  Object.defineProperty(exports, "DURABLE_OBJECT_MAX_BIND_PARAMETERS", {
37
42
  enumerable: true,
38
- get: function () { return chunkANKOXPCC_cjs.DURABLE_OBJECT_MAX_BIND_PARAMETERS; }
43
+ get: function () { return chunk5PRKMB24_cjs.DURABLE_OBJECT_MAX_BIND_PARAMETERS; }
39
44
  });
40
45
  Object.defineProperty(exports, "MODERN_SQLITE_MAX_BIND_PARAMETERS", {
41
46
  enumerable: true,
42
- get: function () { return chunkANKOXPCC_cjs.MODERN_SQLITE_MAX_BIND_PARAMETERS; }
47
+ get: function () { return chunk5PRKMB24_cjs.MODERN_SQLITE_MAX_BIND_PARAMETERS; }
43
48
  });
44
49
  Object.defineProperty(exports, "POSTGRES_CAPABILITIES", {
45
50
  enumerable: true,
46
- get: function () { return chunkANKOXPCC_cjs.POSTGRES_CAPABILITIES; }
51
+ get: function () { return chunk5PRKMB24_cjs.POSTGRES_CAPABILITIES; }
47
52
  });
48
53
  Object.defineProperty(exports, "POSTGRES_MAX_BIND_PARAMETERS", {
49
54
  enumerable: true,
50
- get: function () { return chunkANKOXPCC_cjs.POSTGRES_MAX_BIND_PARAMETERS; }
55
+ get: function () { return chunk5PRKMB24_cjs.POSTGRES_MAX_BIND_PARAMETERS; }
51
56
  });
52
57
  Object.defineProperty(exports, "SQLITE_CAPABILITIES", {
53
58
  enumerable: true,
54
- get: function () { return chunkANKOXPCC_cjs.SQLITE_CAPABILITIES; }
59
+ get: function () { return chunk5PRKMB24_cjs.SQLITE_CAPABILITIES; }
55
60
  });
56
61
  Object.defineProperty(exports, "SQLITE_MAX_BIND_PARAMETERS", {
57
62
  enumerable: true,
58
- get: function () { return chunkANKOXPCC_cjs.SQLITE_MAX_BIND_PARAMETERS; }
63
+ get: function () { return chunk5PRKMB24_cjs.SQLITE_MAX_BIND_PARAMETERS; }
59
64
  });
60
65
  Object.defineProperty(exports, "isLiveNodeRow", {
61
66
  enumerable: true,
62
- get: function () { return chunkANKOXPCC_cjs.isLiveNodeRow; }
67
+ get: function () { return chunk5PRKMB24_cjs.isLiveNodeRow; }
63
68
  });
64
69
  Object.defineProperty(exports, "isTombstonedNodeRow", {
65
70
  enumerable: true,
66
- get: function () { return chunkANKOXPCC_cjs.isTombstonedNodeRow; }
71
+ get: function () { return chunk5PRKMB24_cjs.isTombstonedNodeRow; }
67
72
  });
68
73
  Object.defineProperty(exports, "normalizeGraphAnalyticsCapabilities", {
69
74
  enumerable: true,
70
- get: function () { return chunkANKOXPCC_cjs.normalizeGraphAnalyticsCapabilities; }
75
+ get: function () { return chunk5PRKMB24_cjs.normalizeGraphAnalyticsCapabilities; }
71
76
  });
72
77
  Object.defineProperty(exports, "rowPropsToJsonText", {
73
78
  enumerable: true,
74
- get: function () { return chunkANKOXPCC_cjs.rowPropsToJsonText; }
79
+ get: function () { return chunk5PRKMB24_cjs.rowPropsToJsonText; }
75
80
  });
76
81
  Object.defineProperty(exports, "rowPropsToObject", {
77
82
  enumerable: true,
78
- get: function () { return chunkANKOXPCC_cjs.rowPropsToObject; }
83
+ get: function () { return chunk5PRKMB24_cjs.rowPropsToObject; }
84
+ });
85
+ Object.defineProperty(exports, "resolveStampedValidityLowerBound", {
86
+ enumerable: true,
87
+ get: function () { return chunkTQHGE7UC_cjs.resolveStampedValidityLowerBound; }
79
88
  });
80
89
  Object.defineProperty(exports, "ALL_FULLTEXT_MODES", {
81
90
  enumerable: true,
82
- get: function () { return chunkZHOAZD7Q_cjs.ALL_FULLTEXT_MODES; }
91
+ get: function () { return chunkL3LQNR34_cjs.ALL_FULLTEXT_MODES; }
83
92
  });
84
93
  Object.defineProperty(exports, "BASE_CONTRIBUTION_OWNER", {
85
94
  enumerable: true,
86
- get: function () { return chunkZHOAZD7Q_cjs.BASE_CONTRIBUTION_OWNER; }
95
+ get: function () { return chunkL3LQNR34_cjs.BASE_CONTRIBUTION_OWNER; }
87
96
  });
88
97
  Object.defineProperty(exports, "FULLTEXT_CONTRIBUTION_NAME", {
89
98
  enumerable: true,
90
- get: function () { return chunkZHOAZD7Q_cjs.FULLTEXT_CONTRIBUTION_NAME; }
99
+ get: function () { return chunkL3LQNR34_cjs.FULLTEXT_CONTRIBUTION_NAME; }
91
100
  });
92
101
  Object.defineProperty(exports, "VECTOR_CONTRIBUTION_PREFIX", {
93
102
  enumerable: true,
94
- get: function () { return chunkZHOAZD7Q_cjs.VECTOR_CONTRIBUTION_PREFIX; }
103
+ get: function () { return chunkL3LQNR34_cjs.VECTOR_CONTRIBUTION_PREFIX; }
95
104
  });
96
105
  Object.defineProperty(exports, "assertFiniteEmbedding", {
97
106
  enumerable: true,
98
- get: function () { return chunkZHOAZD7Q_cjs.assertFiniteEmbedding; }
107
+ get: function () { return chunkL3LQNR34_cjs.assertFiniteEmbedding; }
99
108
  });
100
109
  Object.defineProperty(exports, "assertVectorMinScore", {
101
110
  enumerable: true,
102
- get: function () { return chunkZHOAZD7Q_cjs.assertVectorMinScore; }
111
+ get: function () { return chunkL3LQNR34_cjs.assertVectorMinScore; }
103
112
  });
104
113
  Object.defineProperty(exports, "assertVectorSearchLimit", {
105
114
  enumerable: true,
106
- get: function () { return chunkZHOAZD7Q_cjs.assertVectorSearchLimit; }
115
+ get: function () { return chunkL3LQNR34_cjs.assertVectorSearchLimit; }
107
116
  });
108
117
  Object.defineProperty(exports, "buildFulltextCapabilities", {
109
118
  enumerable: true,
110
- get: function () { return chunkZHOAZD7Q_cjs.buildFulltextCapabilities; }
119
+ get: function () { return chunkL3LQNR34_cjs.buildFulltextCapabilities; }
111
120
  });
112
121
  Object.defineProperty(exports, "buildVectorCapabilities", {
113
122
  enumerable: true,
114
- get: function () { return chunkZHOAZD7Q_cjs.buildVectorCapabilities; }
123
+ get: function () { return chunkL3LQNR34_cjs.buildVectorCapabilities; }
115
124
  });
116
125
  Object.defineProperty(exports, "fts5Strategy", {
117
126
  enumerable: true,
118
- get: function () { return chunkZHOAZD7Q_cjs.fts5Strategy; }
127
+ get: function () { return chunkL3LQNR34_cjs.fts5Strategy; }
119
128
  });
120
129
  Object.defineProperty(exports, "quoteIdentifier", {
121
130
  enumerable: true,
122
- get: function () { return chunkZHOAZD7Q_cjs.quoteIdentifier; }
131
+ get: function () { return chunkL3LQNR34_cjs.quoteIdentifier; }
123
132
  });
124
133
  Object.defineProperty(exports, "shortHash", {
125
134
  enumerable: true,
126
- get: function () { return chunkZHOAZD7Q_cjs.shortHash; }
135
+ get: function () { return chunkL3LQNR34_cjs.shortHash; }
127
136
  });
128
137
  Object.defineProperty(exports, "tsvectorStrategy", {
129
138
  enumerable: true,
130
- get: function () { return chunkZHOAZD7Q_cjs.tsvectorStrategy; }
139
+ get: function () { return chunkL3LQNR34_cjs.tsvectorStrategy; }
131
140
  });
132
141
  Object.defineProperty(exports, "vectorMinScoreCondition", {
133
142
  enumerable: true,
134
- get: function () { return chunkZHOAZD7Q_cjs.vectorMinScoreCondition; }
143
+ get: function () { return chunkL3LQNR34_cjs.vectorMinScoreCondition; }
135
144
  });
136
145
  Object.defineProperty(exports, "vectorPhysicalName", {
137
146
  enumerable: true,
138
- get: function () { return chunkZHOAZD7Q_cjs.vectorPhysicalName; }
147
+ get: function () { return chunkL3LQNR34_cjs.vectorPhysicalName; }
139
148
  });
140
149
  Object.defineProperty(exports, "vectorScoreExpression", {
141
150
  enumerable: true,
142
- get: function () { return chunkZHOAZD7Q_cjs.vectorScoreExpression; }
151
+ get: function () { return chunkL3LQNR34_cjs.vectorScoreExpression; }
143
152
  });
144
153
  Object.defineProperty(exports, "Placeholder", {
145
154
  enumerable: true,
146
- get: function () { return chunk2ZWM2RFH_cjs.Placeholder; }
155
+ get: function () { return chunkEDN4Y4ZG_cjs.Placeholder; }
147
156
  });
148
157
  Object.defineProperty(exports, "isSqlFragment", {
149
158
  enumerable: true,
150
- get: function () { return chunk2ZWM2RFH_cjs.isSqlFragment; }
159
+ get: function () { return chunkEDN4Y4ZG_cjs.isSqlFragment; }
151
160
  });
152
161
  Object.defineProperty(exports, "isSqlPlaceholder", {
153
162
  enumerable: true,
154
- get: function () { return chunk2ZWM2RFH_cjs.isSqlPlaceholder; }
163
+ get: function () { return chunkEDN4Y4ZG_cjs.isSqlPlaceholder; }
155
164
  });
156
165
  Object.defineProperty(exports, "renderPostgres", {
157
166
  enumerable: true,
158
- get: function () { return chunk2ZWM2RFH_cjs.renderPostgres; }
167
+ get: function () { return chunkEDN4Y4ZG_cjs.renderPostgres; }
159
168
  });
160
169
  Object.defineProperty(exports, "renderSql", {
161
170
  enumerable: true,
162
- get: function () { return chunk2ZWM2RFH_cjs.renderSql; }
171
+ get: function () { return chunkEDN4Y4ZG_cjs.renderSql; }
163
172
  });
164
173
  Object.defineProperty(exports, "renderSqlInline", {
165
174
  enumerable: true,
166
- get: function () { return chunk2ZWM2RFH_cjs.renderSqlInline; }
175
+ get: function () { return chunkEDN4Y4ZG_cjs.renderSqlInline; }
167
176
  });
168
177
  Object.defineProperty(exports, "renderSqlite", {
169
178
  enumerable: true,
170
- get: function () { return chunk2ZWM2RFH_cjs.renderSqlite; }
179
+ get: function () { return chunkEDN4Y4ZG_cjs.renderSqlite; }
171
180
  });
172
181
  Object.defineProperty(exports, "sql", {
173
182
  enumerable: true,
174
- get: function () { return chunk2ZWM2RFH_cjs.sql; }
183
+ get: function () { return chunkEDN4Y4ZG_cjs.sql; }
175
184
  });
176
185
  Object.defineProperty(exports, "ALL_META_EDGE_NAMES", {
177
186
  enumerable: true,
@@ -1,61 +1,43 @@
1
- import { y as GraphBackend, bN as SqlTableNames } from '../types-Du78EvpN.cjs';
2
- export { cO as ALL_FULLTEXT_MODES, cP as ALL_META_EDGE_NAMES, A as AdapterBackend, aj as AdapterBackendTransactions, cQ as BASE_CONTRIBUTION_OWNER, B as BackendCapabilities, am as BackendIdentity, an as BackendLifecycle, ao as BackendMaintenance, ap as BackendTransactions, ar as Cardinality, cR as CheckUniqueBatchParams, cS as CheckUniqueParams, cT as ClaimIndexMaterializationParams, as as Collation, at as CommitSchemaVersionExpected, au as CommitSchemaVersionIfKindsEmptyResult, av as CommitSchemaVersionParams, aw as CompiledRowsSql, ax as CompiledSelectSql, ay as CompiledStatementSql, cU as CompiledTemporaryStatementSql, az as ContributionCapabilities, C as ContributionDiagnostic, a as ContributionDiagnosticState, aA as ContributionMaterializationBackend, cV as ContributionMaterializationIdentity, cW as ContributionMaterializationRow, aB as ContributionProbeContribution, aC as ContributionProbeEntry, aD as ContributionProbeResult, aE as ContributionProbeState, aF as ContributionRebuildResult, aG as ContributionRebuildScope, b as ContributionRepairEntry, c as ContributionRepairResult, aH as ContributionRepopulationStats, cX as CountEdgesByKindParams, cY as CountEdgesFromParams, cZ as CountNodesByKindParams, c_ as CreateVectorIndexParams, c$ as D1_MAX_BIND_PARAMETERS, d0 as DURABLE_OBJECT_MAX_BIND_PARAMETERS, a6 as DeleteBehavior, d1 as DeleteEdgeParams, d2 as DeleteEdgesBatchParams, d3 as DeleteEmbeddingParams, aJ as DeleteFulltextBatchParams, d4 as DeleteFulltextParams, d5 as DeleteNodeParams, d6 as DeleteUniqueParams, d7 as DialectAdapter, d8 as DialectCapabilities, d9 as DialectRecursiveQueryStrategy, da as DialectStandardQueryStrategy, db as DialectVectorPredicateStrategy, dc as DropVectorIndexParams, aK as EdgeEntityReadBackend, aL as EdgeEntityWriteBackend, dd as EdgeExistsBetweenParams, E as EdgeIndexDeclaration, f as EdgeIndexDirection, cM as EdgeRow, aQ as EndpointExistence, de as ExtensionArrayItemType, df as ExtensionArrayProperty, dg as ExtensionBooleanProperty, a9 as ExtensionEdgeDef, dh as ExtensionEdgeIndex, di as ExtensionEmbeddingModifier, dj as ExtensionEnumProperty, ab as ExtensionIndex, dk as ExtensionIndexWhere, a8 as ExtensionNodeDef, dl as ExtensionNodeIndex, dm as ExtensionNumberProperty, dn as ExtensionObjectFieldProperty, dp as ExtensionObjectProperty, aa as ExtensionOntologyRelation, dq as ExtensionPropertyModifiers, dr as ExtensionPropertyType, ds as ExtensionSearchableModifier, dt as ExtensionStringProperty, du as ExtensionUniqueConstraint, dv as ExtensionUniqueWhere, dw as FULLTEXT_CONTRIBUTION_NAME, aS as FilteredApproximateSearch, aT as FilteredApproximateSearchMode, dx as FindEdgesByEndpointSetParams, aU as FindEdgesByHeterogeneousEndpointSetParams, dy as FindEdgesByKindParams, dz as FindEdgesConnectedToParams, dA as FindNodesByKindParams, aV as FulltextBatchRow, aW as FulltextCapabilities, aX as FulltextOperationBackend, aY as FulltextQueryMode, aZ as FulltextSearchParams, a_ as FulltextSearchResult, F as FulltextStrategy, b0 as GraphAnalyticsCapabilities, b2 as GraphEntityReadBackend, b3 as GraphEntityWriteBackend, b4 as GraphExtension, a7 as GraphExtensionVersion, G as GraphIdentityConfig, b5 as GraphLifecycleBackend, dB as GraphReadBackend, dC as HardDeleteEdgeParams, dD as HardDeleteNodeParams, b6 as HardDeleteUniquesByNodeIdsParams, dE as HybridSearchParams, dF as HybridSearchRow, dG as IdentityTableNames, dH as InListParameterOptions, I as IndexDeclaration, dI as IndexDeclarationBase, L as IndexEntity, b8 as IndexMaterializationBackend, dJ as IndexMaterializationRow, h as IndexOrigin, i as IndexScope, j as IndexWhereExpression, dK as IndexWhereLiteral, dL as IndexWhereOp, dM as IndexWhereOperand, ai as InferenceType, dN as InsertEdgeParams, dO as InsertNodeParams, dP as InsertSchemaParams, dQ as InsertUniqueParams, b9 as IntentSql, J as JsonPointer, X as JsonSchema, a0 as JsonValue, a3 as KindAnnotations, K as KindEntity, dR as KindRemovalRow, dS as LiveNodeRow, bg as LockSchemaVersionForWriteParams, dT as MODERN_SQLITE_MAX_BIND_PARAMETERS, dU as MetaEdgeName, bj as NodeEntityReadBackend, bk as NodeEntityWriteBackend, N as NodeIndexDeclaration, cL as NodeRow, W as NullCheckOp, dV as POSTGRES_CAPABILITIES, dW as POSTGRES_MAX_BIND_PARAMETERS, bp as Placeholder, bq as PopulatedSchemaKind, br as QueryExecutionBackend, bs as RawQueryExecutionBackend, bt as RawStatementExecutionBackend, dX as RecordContributionMaterializationParams, dY as RecordIndexMaterializationParams, dZ as RecordKindRemovalParams, R as RelationalIndexDeclaration, d_ as RelationalIndexMethod, d$ as ReleaseIndexMaterializationClaimParams, bv as RemovalMaterializationBackend, bw as RenderedSql, bz as ResolvedSqlTableNames, bA as RowProps, e0 as SQLITE_CAPABILITIES, e1 as SQLITE_MAX_BIND_PARAMETERS, bB as SchemaCommitBackend, e2 as SchemaCommitPreflightBackend, bC as SchemaKindEmptinessProbe, bD as SchemaReadBackend, x as SchemaVersionRow, bE as SchemaWriteFenceBackend, P as SerializedClosures, H as SerializedEdgeDef, M as SerializedMetaEdge, D as SerializedNodeDef, Y as SerializedOntology, O as SerializedOntologyRelation, z as SerializedSchema, Z as SerializedUniqueConstraint, bF as SetActiveVersionParams, bH as SqlChunk, e3 as SqlCompilationBackend, S as SqlDialect, bI as SqlFragment, bJ as SqlIdentifierChunk, bK as SqlIntent, bL as SqlParameterChunk, bM as SqlPlaceholderChunk, bO as SqlTag, bP as SqlTextChunk, bQ as StrategyTableContribution, o as SystemColumnName, bR as TableContribution, T as TemporalMode, e4 as TombstonedNodeRow, bS as TransactionBackend, bT as TransactionOptions, bU as TransactionReadBackend, bW as TrustedImportOptions, bX as TrustedImportSession, bZ as UniqueConstraintBackend, e5 as UniqueRow, b_ as UniquenessScope, e6 as UpdateEdgeParams, e7 as UpdateNodeParams, b$ as UpdateNodeSetParams, c0 as UpdateNodeSetResult, e8 as UpsertEmbeddingBatchParams, e9 as UpsertEmbeddingBatchRow, ea as UpsertEmbeddingParams, c1 as UpsertFulltextBatchParams, eb as UpsertFulltextParams, ec as VECTOR_CONTRIBUTION_PREFIX, cw as ValueType, c2 as VectorCapabilities, p as VectorIndexDeclaration, q as VectorIndexImplementation, r as VectorIndexMetric, s as VectorIndexParams, ed as VectorIndexType, cN as VectorMetric, c3 as VectorOperationBackend, c4 as VectorSearchFrontierTuning, ee as VectorSearchParams, ef as VectorSearchResult, t as VectorSlot, V as VectorStrategy, eg as assertFiniteEmbedding, eh as assertVectorMinScore, ei as assertVectorSearchLimit, ej as buildFulltextCapabilities, c7 as buildVectorCapabilities, ca as fts5Strategy, ek as isLiveNodeRow, ci as isSqlFragment, el as isSqlPlaceholder, em as isTombstonedNodeRow, en as normalizeGraphAnalyticsCapabilities, eo as quoteIdentifier, co as renderPostgres, cp as renderSql, cq as renderSqlInline, cr as renderSqlite, cs as rowPropsToJsonText, ct as rowPropsToObject, ep as shortHash, cu as sql, cv as tsvectorStrategy, eq as vectorMinScoreCondition, er as vectorPhysicalName, es as vectorScoreExpression } from '../types-Du78EvpN.cjs';
3
- import { R as RecordedInstant } from '../temporal-CXewwLTB.cjs';
1
+ export { A as ALL_FULLTEXT_MODES, a as ALL_META_EDGE_NAMES, b as AdapterBackend, c as AdapterBackendTransactions, B as BASE_CONTRIBUTION_OWNER, d as BackendCapabilities, e as BackendIdentity, f as BackendLifecycle, g as BackendMaintenance, h as BackendTransactions, C as Cardinality, i as CheckUniqueBatchParams, j as CheckUniqueParams, k as ClaimIndexMaterializationParams, l as Collation, m as CommitSchemaVersionExpected, n as CommitSchemaVersionIfKindsEmptyResult, o as CommitSchemaVersionParams, p as CompiledRowsSql, q as CompiledSelectSql, r as CompiledStatementSql, s as CompiledTemporaryStatementSql, t as ContributionCapabilities, u as ContributionDiagnostic, v as ContributionDiagnosticState, w as ContributionMaterializationBackend, x as ContributionMaterializationIdentity, y as ContributionMaterializationRow, z as ContributionProbeContribution, D as ContributionProbeEntry, E as ContributionProbeResult, F as ContributionProbeState, G as ContributionRebuildResult, H as ContributionRebuildScope, J as ContributionRepairEntry, K as ContributionRepairResult, L as ContributionRepopulationStats, M as CountEdgesByKindParams, N as CountEdgesFromParams, O as CountNodesByKindParams, P as CreateVectorIndexParams, Q as D1_MAX_BIND_PARAMETERS, R as DURABLE_OBJECT_MAX_BIND_PARAMETERS, S as DeleteBehavior, T as DeleteEdgeParams, U as DeleteEdgesBatchParams, V as DeleteEmbeddingParams, W as DeleteFulltextBatchParams, X as DeleteFulltextParams, Y as DeleteNodeParams, Z as DeleteUniqueParams, _ as DialectAdapter, $ as DialectCapabilities, a0 as DialectRecursiveQueryStrategy, a1 as DialectStandardQueryStrategy, a2 as DialectVectorPredicateStrategy, a3 as DropVectorIndexParams, a4 as EdgeEntityReadBackend, a5 as EdgeEntityWriteBackend, a6 as EdgeExistsBetweenParams, a7 as EdgeIndexDeclaration, a8 as EdgeIndexDirection, a9 as EdgeRow, aa as EndpointExistence, ab as ExtensionArrayItemType, ac as ExtensionArrayProperty, ad as ExtensionBooleanProperty, ae as ExtensionEdgeDef, af as ExtensionEdgeIndex, ag as ExtensionEmbeddingModifier, ah as ExtensionEnumProperty, ai as ExtensionIndex, aj as ExtensionIndexWhere, ak as ExtensionNodeDef, al as ExtensionNodeIndex, am as ExtensionNumberProperty, an as ExtensionObjectFieldProperty, ao as ExtensionObjectProperty, ap as ExtensionOntologyRelation, aq as ExtensionPropertyModifiers, ar as ExtensionPropertyType, as as ExtensionSearchableModifier, at as ExtensionStringProperty, au as ExtensionUniqueConstraint, av as ExtensionUniqueWhere, aw as FULLTEXT_CONTRIBUTION_NAME, ax as FilteredApproximateSearch, ay as FilteredApproximateSearchMode, az as FindEdgesByEndpointSetParams, aA as FindEdgesByHeterogeneousEndpointSetParams, aB as FindEdgesByKindParams, aC as FindEdgesConnectedToParams, aD as FindNodesByKindParams, aE as FulltextBatchRow, aF as FulltextCapabilities, aG as FulltextOperationBackend, aH as FulltextQueryMode, aI as FulltextSearchParams, aJ as FulltextSearchResult, aK as FulltextStrategy, aL as GraphAnalyticsCapabilities, aM as GraphBackend, aN as GraphEntityReadBackend, aO as GraphEntityWriteBackend, aP as GraphExtension, aQ as GraphExtensionVersion, aR as GraphIdentityConfig, aS as GraphLifecycleBackend, aT as GraphReadBackend, aU as HardDeleteEdgeParams, aV as HardDeleteNodeParams, aW as HardDeleteUniquesByNodeIdsParams, aX as HybridSearchParams, aY as HybridSearchRow, aZ as IdentityTableNames, a_ as InListParameterOptions, I as IndexDeclaration, a$ as IndexDeclarationBase, b0 as IndexEntity, b1 as IndexMaterializationBackend, b2 as IndexMaterializationRow, b3 as IndexOrigin, b4 as IndexScope, b5 as IndexWhereExpression, b6 as IndexWhereLiteral, b7 as IndexWhereOp, b8 as IndexWhereOperand, b9 as InferenceType, ba as InsertEdgeParams, bb as InsertNodeParams, bc as InsertSchemaParams, bd as InsertUniqueParams, be as IntentSql, bf as JsonPointer, bg as JsonSchema, bh as JsonValue, bi as KindAnnotations, bj as KindEntity, bk as KindRemovalRow, bl as LiveNodeRow, bm as LockSchemaVersionForWriteParams, bn as MODERN_SQLITE_MAX_BIND_PARAMETERS, bo as MetaEdgeName, bp as NodeEntityReadBackend, bq as NodeEntityWriteBackend, br as NodeIndexDeclaration, bs as NodeRow, bt as NullCheckOp, bu as POSTGRES_CAPABILITIES, bv as POSTGRES_MAX_BIND_PARAMETERS, bw as Placeholder, bx as PopulatedSchemaKind, by as QueryExecutionBackend, bz as RawQueryExecutionBackend, bA as RawStatementExecutionBackend, bB as RecordContributionMaterializationParams, bC as RecordIndexMaterializationParams, bD as RecordKindRemovalParams, bE as RelationalIndexDeclaration, bF as RelationalIndexMethod, bG as ReleaseIndexMaterializationClaimParams, bH as RemovalMaterializationBackend, bI as RenderedSql, bJ as ResolvedSqlTableNames, bK as RowProps, bL as SQLITE_CAPABILITIES, bM as SQLITE_MAX_BIND_PARAMETERS, bN as SchemaCommitBackend, bO as SchemaCommitPreflightBackend, bP as SchemaKindEmptinessProbe, bQ as SchemaReadBackend, bR as SchemaVersionRow, bS as SchemaWriteFenceBackend, bT as SerializedClosures, bU as SerializedEdgeDef, bV as SerializedMetaEdge, bW as SerializedNodeDef, bX as SerializedOntology, bY as SerializedOntologyRelation, bZ as SerializedSchema, b_ as SerializedUniqueConstraint, b$ as SetActiveVersionParams, c0 as SqlChunk, c1 as SqlCompilationBackend, c2 as SqlDialect, c3 as SqlFragment, c4 as SqlIdentifierChunk, c5 as SqlIntent, c6 as SqlParameterChunk, c7 as SqlPlaceholderChunk, c8 as SqlTableNames, c9 as SqlTag, ca as SqlTextChunk, cb as StrategyTableContribution, cc as SystemColumnName, cd as TableContribution, ce as TemporalMode, cf as TombstonedNodeRow, cg as TransactionBackend, ch as TransactionOptions, ci as TransactionReadBackend, cj as TrustedImportOptions, ck as TrustedImportSession, cl as UniqueConstraintBackend, cm as UniqueRow, cn as UniquenessScope, co as UpdateEdgeParams, cp as UpdateNodeParams, cq as UpdateNodeSetParams, cr as UpdateNodeSetResult, cs as UpsertEmbeddingBatchParams, ct as UpsertEmbeddingBatchRow, cu as UpsertEmbeddingParams, cv as UpsertFulltextBatchParams, cw as UpsertFulltextParams, cx as VECTOR_CONTRIBUTION_PREFIX, cy as ValueType, cz as VectorCapabilities, cA as VectorIndexDeclaration, cB as VectorIndexImplementation, cC as VectorIndexMetric, cD as VectorIndexParams, cE as VectorIndexType, cF as VectorMetric, cG as VectorOperationBackend, cH as VectorSearchFrontierTuning, cI as VectorSearchParams, cJ as VectorSearchResult, cK as VectorSlot, cL as VectorStrategy, cM as assertFiniteEmbedding, cN as assertVectorMinScore, cO as assertVectorSearchLimit, cP as buildFulltextCapabilities, cQ as buildVectorCapabilities, cR as fts5Strategy, cS as isLiveNodeRow, cT as isSqlFragment, cU as isSqlPlaceholder, cV as isTombstonedNodeRow, cW as normalizeGraphAnalyticsCapabilities, cX as quoteIdentifier, cY as renderPostgres, cZ as renderSql, c_ as renderSqlInline, c$ as renderSqlite, d0 as rowPropsToJsonText, d1 as rowPropsToObject, d2 as shortHash, d3 as sql, d4 as tsvectorStrategy, d5 as vectorMinScoreCondition, d6 as vectorPhysicalName, d7 as vectorScoreExpression } from '../types-BqFZTQmV.cjs';
2
+ export { D as DeleteLegacyRecordedAnchorMapOptions, M as MigrateLegacyRecordedTimeOptions, a as MigrateLegacyRecordedTimeResult, b as MigrateRecordedAnchorOptions, R as RepairInvertedWindowsOptions, c as RepairInvertedWindowsReport, d as RepairRelation, e as RepairRelationScope, f as deleteLegacyRecordedAnchorMap, m as migrateLegacyRecordedTime, g as migrateRecordedAnchor, r as repairInvertedValidityWindows } from '../repair-validity-windows-BFNZvd_H.cjs';
3
+ export { R as RecordedInstant } from '../temporal-5GqpYCk2.cjs';
4
4
  import 'zod';
5
5
 
6
6
  /**
7
- * One-time offline migration from timestamp-only recorded relations to numeric
8
- * revisions. The durable remap table lets applications translate checkpoints
9
- * stored outside TypeGraph before deleting the migration metadata.
10
- */
11
-
12
- type MigrateLegacyRecordedTimeOptions = Readonly<{
13
- backend: GraphBackend;
14
- /** Override the backend's recorded table names. */
15
- tableNames?: Partial<SqlTableNames> | undefined;
16
- /** Override the durable legacy-anchor mapping table name. */
17
- mappingTableName?: string | undefined;
18
- }>;
19
- type MigrateLegacyRecordedTimeResult = Readonly<{
20
- /** `true` when timestamp columns were rewritten during this call. */
21
- migrated: boolean;
22
- /** Number of graphs represented in the legacy commit order. */
23
- graphs: number;
24
- /** Number of distinct legacy anchors available for remapping. */
25
- anchors: number;
26
- /** Physical table retaining the old-anchor → revision mapping. */
27
- mappingTableName: string;
28
- }>;
29
- type MigrateRecordedAnchorOptions = Readonly<{
30
- backend: Pick<GraphBackend, "dialect" | "execute" | "tableNames">;
31
- graphId: string;
32
- anchor: string;
33
- tableNames?: Partial<SqlTableNames> | undefined;
34
- mappingTableName?: string | undefined;
35
- }>;
36
- type DeleteLegacyRecordedAnchorMapOptions = Readonly<{
37
- backend: Pick<GraphBackend, "dialect" | "execute" | "executeStatement" | "tableNames" | "transaction">;
38
- graphId: string;
39
- tableNames?: Partial<SqlTableNames> | undefined;
40
- mappingTableName?: string | undefined;
41
- /** Drop the mapping table when this deletion leaves it empty. */
42
- dropWhenEmpty?: boolean | undefined;
43
- }>;
44
- /**
45
- * Rewrites timestamp-only recorded relations to numeric revisions.
7
+ * THE lower bound a write that STAMPS its own start stores, decided against the
8
+ * instant it is about to stamp. One owner for every such write, so no two of them
9
+ * can spell the decision differently. Three inputs, three outcomes:
46
10
  *
47
- * Run offline before opening a Store with the new schema. The durable mapping
48
- * table is retained so external checkpoint stores can call
49
- * {@link migrateRecordedAnchor}; delete each graph's rows after its downstream
50
- * checkpoints have been rewritten.
51
- */
52
- declare function migrateLegacyRecordedTime(options: MigrateLegacyRecordedTimeOptions): Promise<MigrateLegacyRecordedTimeResult>;
53
- /** Remaps one timestamp-only checkpoint after {@link migrateLegacyRecordedTime}. */
54
- declare function migrateRecordedAnchor(options: MigrateRecordedAnchorOptions): Promise<RecordedInstant>;
55
- /**
56
- * Deletes one graph's legacy remap rows after downstream checkpoints migrate.
57
- * Set `dropWhenEmpty` to remove the migration table after the final graph.
11
+ * - a stated `null` → no lower bound (a CONFIRMED open-left window, which is
12
+ * how interchange round-trips a row that has none);
13
+ * - a stated string → that bound, the caller's own assertion, verbatim;
14
+ * - nothing stated → the write instant, UNLESS stamping it would leave the
15
+ * window readable at no instant. A row carrying only a
16
+ * `validTo` at or before the write instant is "born already
17
+ * ended": its start is UNKNOWN, not at-or-after its end, so
18
+ * it stores no lower bound and reads back at every `asOf`
19
+ * before that end (issue #407).
20
+ *
21
+ * The comparison against `validTo` is NON-STRICT: `validTo === writeInstant`
22
+ * stores no bound too. A stamped `[T, T)` is a successful write no coordinate can
23
+ * observe, and the millisecond of skew between a caller's own `Date.now()` and the
24
+ * backend's sample is enough to land there — so the rule is total, and there is no
25
+ * input for which a stamped bound yields an empty window.
26
+ *
27
+ * The write instant is a PARAMETER, not a clock read: the caller passes the very
28
+ * value it binds into `created_at`/`updated_at` (or, for a resurrection, the
29
+ * instant its guard judged), so the decision and the stamp cannot come from two
30
+ * different samples (issue #413's failure mode). This function has no way to
31
+ * sample a clock, which is what makes that structural rather than tested.
32
+ *
33
+ * PRECONDITION: as {@link isEmptyValidityWindow}. This is called BELOW the
34
+ * validation boundary, on a public `GraphBackend` surface, so canonicality is
35
+ * established by whoever reached the backend: store paths through
36
+ * {@link validateOptionalCanonicalIsoDate}, interchange import through its own
37
+ * window validator, trusted import through its per-chunk format check. A direct
38
+ * `GraphBackend` caller establishes it itself — a pre-existing property of that
39
+ * surface, written down here rather than left implicit.
58
40
  */
59
- declare function deleteLegacyRecordedAnchorMap(options: DeleteLegacyRecordedAnchorMapOptions): Promise<void>;
41
+ declare function resolveStampedValidityLowerBound(statedValidFrom: string | null | undefined, validTo: string | undefined, writeInstant: string): string | undefined;
60
42
 
61
- export { type DeleteLegacyRecordedAnchorMapOptions, GraphBackend, type MigrateLegacyRecordedTimeOptions, type MigrateLegacyRecordedTimeResult, type MigrateRecordedAnchorOptions, RecordedInstant, SqlTableNames, deleteLegacyRecordedAnchorMap, migrateLegacyRecordedTime, migrateRecordedAnchor };
43
+ export { resolveStampedValidityLowerBound };
@@ -1,61 +1,43 @@
1
- import { y as GraphBackend, bN as SqlTableNames } from '../types-Du78EvpN.js';
2
- export { cO as ALL_FULLTEXT_MODES, cP as ALL_META_EDGE_NAMES, A as AdapterBackend, aj as AdapterBackendTransactions, cQ as BASE_CONTRIBUTION_OWNER, B as BackendCapabilities, am as BackendIdentity, an as BackendLifecycle, ao as BackendMaintenance, ap as BackendTransactions, ar as Cardinality, cR as CheckUniqueBatchParams, cS as CheckUniqueParams, cT as ClaimIndexMaterializationParams, as as Collation, at as CommitSchemaVersionExpected, au as CommitSchemaVersionIfKindsEmptyResult, av as CommitSchemaVersionParams, aw as CompiledRowsSql, ax as CompiledSelectSql, ay as CompiledStatementSql, cU as CompiledTemporaryStatementSql, az as ContributionCapabilities, C as ContributionDiagnostic, a as ContributionDiagnosticState, aA as ContributionMaterializationBackend, cV as ContributionMaterializationIdentity, cW as ContributionMaterializationRow, aB as ContributionProbeContribution, aC as ContributionProbeEntry, aD as ContributionProbeResult, aE as ContributionProbeState, aF as ContributionRebuildResult, aG as ContributionRebuildScope, b as ContributionRepairEntry, c as ContributionRepairResult, aH as ContributionRepopulationStats, cX as CountEdgesByKindParams, cY as CountEdgesFromParams, cZ as CountNodesByKindParams, c_ as CreateVectorIndexParams, c$ as D1_MAX_BIND_PARAMETERS, d0 as DURABLE_OBJECT_MAX_BIND_PARAMETERS, a6 as DeleteBehavior, d1 as DeleteEdgeParams, d2 as DeleteEdgesBatchParams, d3 as DeleteEmbeddingParams, aJ as DeleteFulltextBatchParams, d4 as DeleteFulltextParams, d5 as DeleteNodeParams, d6 as DeleteUniqueParams, d7 as DialectAdapter, d8 as DialectCapabilities, d9 as DialectRecursiveQueryStrategy, da as DialectStandardQueryStrategy, db as DialectVectorPredicateStrategy, dc as DropVectorIndexParams, aK as EdgeEntityReadBackend, aL as EdgeEntityWriteBackend, dd as EdgeExistsBetweenParams, E as EdgeIndexDeclaration, f as EdgeIndexDirection, cM as EdgeRow, aQ as EndpointExistence, de as ExtensionArrayItemType, df as ExtensionArrayProperty, dg as ExtensionBooleanProperty, a9 as ExtensionEdgeDef, dh as ExtensionEdgeIndex, di as ExtensionEmbeddingModifier, dj as ExtensionEnumProperty, ab as ExtensionIndex, dk as ExtensionIndexWhere, a8 as ExtensionNodeDef, dl as ExtensionNodeIndex, dm as ExtensionNumberProperty, dn as ExtensionObjectFieldProperty, dp as ExtensionObjectProperty, aa as ExtensionOntologyRelation, dq as ExtensionPropertyModifiers, dr as ExtensionPropertyType, ds as ExtensionSearchableModifier, dt as ExtensionStringProperty, du as ExtensionUniqueConstraint, dv as ExtensionUniqueWhere, dw as FULLTEXT_CONTRIBUTION_NAME, aS as FilteredApproximateSearch, aT as FilteredApproximateSearchMode, dx as FindEdgesByEndpointSetParams, aU as FindEdgesByHeterogeneousEndpointSetParams, dy as FindEdgesByKindParams, dz as FindEdgesConnectedToParams, dA as FindNodesByKindParams, aV as FulltextBatchRow, aW as FulltextCapabilities, aX as FulltextOperationBackend, aY as FulltextQueryMode, aZ as FulltextSearchParams, a_ as FulltextSearchResult, F as FulltextStrategy, b0 as GraphAnalyticsCapabilities, b2 as GraphEntityReadBackend, b3 as GraphEntityWriteBackend, b4 as GraphExtension, a7 as GraphExtensionVersion, G as GraphIdentityConfig, b5 as GraphLifecycleBackend, dB as GraphReadBackend, dC as HardDeleteEdgeParams, dD as HardDeleteNodeParams, b6 as HardDeleteUniquesByNodeIdsParams, dE as HybridSearchParams, dF as HybridSearchRow, dG as IdentityTableNames, dH as InListParameterOptions, I as IndexDeclaration, dI as IndexDeclarationBase, L as IndexEntity, b8 as IndexMaterializationBackend, dJ as IndexMaterializationRow, h as IndexOrigin, i as IndexScope, j as IndexWhereExpression, dK as IndexWhereLiteral, dL as IndexWhereOp, dM as IndexWhereOperand, ai as InferenceType, dN as InsertEdgeParams, dO as InsertNodeParams, dP as InsertSchemaParams, dQ as InsertUniqueParams, b9 as IntentSql, J as JsonPointer, X as JsonSchema, a0 as JsonValue, a3 as KindAnnotations, K as KindEntity, dR as KindRemovalRow, dS as LiveNodeRow, bg as LockSchemaVersionForWriteParams, dT as MODERN_SQLITE_MAX_BIND_PARAMETERS, dU as MetaEdgeName, bj as NodeEntityReadBackend, bk as NodeEntityWriteBackend, N as NodeIndexDeclaration, cL as NodeRow, W as NullCheckOp, dV as POSTGRES_CAPABILITIES, dW as POSTGRES_MAX_BIND_PARAMETERS, bp as Placeholder, bq as PopulatedSchemaKind, br as QueryExecutionBackend, bs as RawQueryExecutionBackend, bt as RawStatementExecutionBackend, dX as RecordContributionMaterializationParams, dY as RecordIndexMaterializationParams, dZ as RecordKindRemovalParams, R as RelationalIndexDeclaration, d_ as RelationalIndexMethod, d$ as ReleaseIndexMaterializationClaimParams, bv as RemovalMaterializationBackend, bw as RenderedSql, bz as ResolvedSqlTableNames, bA as RowProps, e0 as SQLITE_CAPABILITIES, e1 as SQLITE_MAX_BIND_PARAMETERS, bB as SchemaCommitBackend, e2 as SchemaCommitPreflightBackend, bC as SchemaKindEmptinessProbe, bD as SchemaReadBackend, x as SchemaVersionRow, bE as SchemaWriteFenceBackend, P as SerializedClosures, H as SerializedEdgeDef, M as SerializedMetaEdge, D as SerializedNodeDef, Y as SerializedOntology, O as SerializedOntologyRelation, z as SerializedSchema, Z as SerializedUniqueConstraint, bF as SetActiveVersionParams, bH as SqlChunk, e3 as SqlCompilationBackend, S as SqlDialect, bI as SqlFragment, bJ as SqlIdentifierChunk, bK as SqlIntent, bL as SqlParameterChunk, bM as SqlPlaceholderChunk, bO as SqlTag, bP as SqlTextChunk, bQ as StrategyTableContribution, o as SystemColumnName, bR as TableContribution, T as TemporalMode, e4 as TombstonedNodeRow, bS as TransactionBackend, bT as TransactionOptions, bU as TransactionReadBackend, bW as TrustedImportOptions, bX as TrustedImportSession, bZ as UniqueConstraintBackend, e5 as UniqueRow, b_ as UniquenessScope, e6 as UpdateEdgeParams, e7 as UpdateNodeParams, b$ as UpdateNodeSetParams, c0 as UpdateNodeSetResult, e8 as UpsertEmbeddingBatchParams, e9 as UpsertEmbeddingBatchRow, ea as UpsertEmbeddingParams, c1 as UpsertFulltextBatchParams, eb as UpsertFulltextParams, ec as VECTOR_CONTRIBUTION_PREFIX, cw as ValueType, c2 as VectorCapabilities, p as VectorIndexDeclaration, q as VectorIndexImplementation, r as VectorIndexMetric, s as VectorIndexParams, ed as VectorIndexType, cN as VectorMetric, c3 as VectorOperationBackend, c4 as VectorSearchFrontierTuning, ee as VectorSearchParams, ef as VectorSearchResult, t as VectorSlot, V as VectorStrategy, eg as assertFiniteEmbedding, eh as assertVectorMinScore, ei as assertVectorSearchLimit, ej as buildFulltextCapabilities, c7 as buildVectorCapabilities, ca as fts5Strategy, ek as isLiveNodeRow, ci as isSqlFragment, el as isSqlPlaceholder, em as isTombstonedNodeRow, en as normalizeGraphAnalyticsCapabilities, eo as quoteIdentifier, co as renderPostgres, cp as renderSql, cq as renderSqlInline, cr as renderSqlite, cs as rowPropsToJsonText, ct as rowPropsToObject, ep as shortHash, cu as sql, cv as tsvectorStrategy, eq as vectorMinScoreCondition, er as vectorPhysicalName, es as vectorScoreExpression } from '../types-Du78EvpN.js';
3
- import { R as RecordedInstant } from '../temporal-DPtn0HOu.js';
1
+ export { A as ALL_FULLTEXT_MODES, a as ALL_META_EDGE_NAMES, b as AdapterBackend, c as AdapterBackendTransactions, B as BASE_CONTRIBUTION_OWNER, d as BackendCapabilities, e as BackendIdentity, f as BackendLifecycle, g as BackendMaintenance, h as BackendTransactions, C as Cardinality, i as CheckUniqueBatchParams, j as CheckUniqueParams, k as ClaimIndexMaterializationParams, l as Collation, m as CommitSchemaVersionExpected, n as CommitSchemaVersionIfKindsEmptyResult, o as CommitSchemaVersionParams, p as CompiledRowsSql, q as CompiledSelectSql, r as CompiledStatementSql, s as CompiledTemporaryStatementSql, t as ContributionCapabilities, u as ContributionDiagnostic, v as ContributionDiagnosticState, w as ContributionMaterializationBackend, x as ContributionMaterializationIdentity, y as ContributionMaterializationRow, z as ContributionProbeContribution, D as ContributionProbeEntry, E as ContributionProbeResult, F as ContributionProbeState, G as ContributionRebuildResult, H as ContributionRebuildScope, J as ContributionRepairEntry, K as ContributionRepairResult, L as ContributionRepopulationStats, M as CountEdgesByKindParams, N as CountEdgesFromParams, O as CountNodesByKindParams, P as CreateVectorIndexParams, Q as D1_MAX_BIND_PARAMETERS, R as DURABLE_OBJECT_MAX_BIND_PARAMETERS, S as DeleteBehavior, T as DeleteEdgeParams, U as DeleteEdgesBatchParams, V as DeleteEmbeddingParams, W as DeleteFulltextBatchParams, X as DeleteFulltextParams, Y as DeleteNodeParams, Z as DeleteUniqueParams, _ as DialectAdapter, $ as DialectCapabilities, a0 as DialectRecursiveQueryStrategy, a1 as DialectStandardQueryStrategy, a2 as DialectVectorPredicateStrategy, a3 as DropVectorIndexParams, a4 as EdgeEntityReadBackend, a5 as EdgeEntityWriteBackend, a6 as EdgeExistsBetweenParams, a7 as EdgeIndexDeclaration, a8 as EdgeIndexDirection, a9 as EdgeRow, aa as EndpointExistence, ab as ExtensionArrayItemType, ac as ExtensionArrayProperty, ad as ExtensionBooleanProperty, ae as ExtensionEdgeDef, af as ExtensionEdgeIndex, ag as ExtensionEmbeddingModifier, ah as ExtensionEnumProperty, ai as ExtensionIndex, aj as ExtensionIndexWhere, ak as ExtensionNodeDef, al as ExtensionNodeIndex, am as ExtensionNumberProperty, an as ExtensionObjectFieldProperty, ao as ExtensionObjectProperty, ap as ExtensionOntologyRelation, aq as ExtensionPropertyModifiers, ar as ExtensionPropertyType, as as ExtensionSearchableModifier, at as ExtensionStringProperty, au as ExtensionUniqueConstraint, av as ExtensionUniqueWhere, aw as FULLTEXT_CONTRIBUTION_NAME, ax as FilteredApproximateSearch, ay as FilteredApproximateSearchMode, az as FindEdgesByEndpointSetParams, aA as FindEdgesByHeterogeneousEndpointSetParams, aB as FindEdgesByKindParams, aC as FindEdgesConnectedToParams, aD as FindNodesByKindParams, aE as FulltextBatchRow, aF as FulltextCapabilities, aG as FulltextOperationBackend, aH as FulltextQueryMode, aI as FulltextSearchParams, aJ as FulltextSearchResult, aK as FulltextStrategy, aL as GraphAnalyticsCapabilities, aM as GraphBackend, aN as GraphEntityReadBackend, aO as GraphEntityWriteBackend, aP as GraphExtension, aQ as GraphExtensionVersion, aR as GraphIdentityConfig, aS as GraphLifecycleBackend, aT as GraphReadBackend, aU as HardDeleteEdgeParams, aV as HardDeleteNodeParams, aW as HardDeleteUniquesByNodeIdsParams, aX as HybridSearchParams, aY as HybridSearchRow, aZ as IdentityTableNames, a_ as InListParameterOptions, I as IndexDeclaration, a$ as IndexDeclarationBase, b0 as IndexEntity, b1 as IndexMaterializationBackend, b2 as IndexMaterializationRow, b3 as IndexOrigin, b4 as IndexScope, b5 as IndexWhereExpression, b6 as IndexWhereLiteral, b7 as IndexWhereOp, b8 as IndexWhereOperand, b9 as InferenceType, ba as InsertEdgeParams, bb as InsertNodeParams, bc as InsertSchemaParams, bd as InsertUniqueParams, be as IntentSql, bf as JsonPointer, bg as JsonSchema, bh as JsonValue, bi as KindAnnotations, bj as KindEntity, bk as KindRemovalRow, bl as LiveNodeRow, bm as LockSchemaVersionForWriteParams, bn as MODERN_SQLITE_MAX_BIND_PARAMETERS, bo as MetaEdgeName, bp as NodeEntityReadBackend, bq as NodeEntityWriteBackend, br as NodeIndexDeclaration, bs as NodeRow, bt as NullCheckOp, bu as POSTGRES_CAPABILITIES, bv as POSTGRES_MAX_BIND_PARAMETERS, bw as Placeholder, bx as PopulatedSchemaKind, by as QueryExecutionBackend, bz as RawQueryExecutionBackend, bA as RawStatementExecutionBackend, bB as RecordContributionMaterializationParams, bC as RecordIndexMaterializationParams, bD as RecordKindRemovalParams, bE as RelationalIndexDeclaration, bF as RelationalIndexMethod, bG as ReleaseIndexMaterializationClaimParams, bH as RemovalMaterializationBackend, bI as RenderedSql, bJ as ResolvedSqlTableNames, bK as RowProps, bL as SQLITE_CAPABILITIES, bM as SQLITE_MAX_BIND_PARAMETERS, bN as SchemaCommitBackend, bO as SchemaCommitPreflightBackend, bP as SchemaKindEmptinessProbe, bQ as SchemaReadBackend, bR as SchemaVersionRow, bS as SchemaWriteFenceBackend, bT as SerializedClosures, bU as SerializedEdgeDef, bV as SerializedMetaEdge, bW as SerializedNodeDef, bX as SerializedOntology, bY as SerializedOntologyRelation, bZ as SerializedSchema, b_ as SerializedUniqueConstraint, b$ as SetActiveVersionParams, c0 as SqlChunk, c1 as SqlCompilationBackend, c2 as SqlDialect, c3 as SqlFragment, c4 as SqlIdentifierChunk, c5 as SqlIntent, c6 as SqlParameterChunk, c7 as SqlPlaceholderChunk, c8 as SqlTableNames, c9 as SqlTag, ca as SqlTextChunk, cb as StrategyTableContribution, cc as SystemColumnName, cd as TableContribution, ce as TemporalMode, cf as TombstonedNodeRow, cg as TransactionBackend, ch as TransactionOptions, ci as TransactionReadBackend, cj as TrustedImportOptions, ck as TrustedImportSession, cl as UniqueConstraintBackend, cm as UniqueRow, cn as UniquenessScope, co as UpdateEdgeParams, cp as UpdateNodeParams, cq as UpdateNodeSetParams, cr as UpdateNodeSetResult, cs as UpsertEmbeddingBatchParams, ct as UpsertEmbeddingBatchRow, cu as UpsertEmbeddingParams, cv as UpsertFulltextBatchParams, cw as UpsertFulltextParams, cx as VECTOR_CONTRIBUTION_PREFIX, cy as ValueType, cz as VectorCapabilities, cA as VectorIndexDeclaration, cB as VectorIndexImplementation, cC as VectorIndexMetric, cD as VectorIndexParams, cE as VectorIndexType, cF as VectorMetric, cG as VectorOperationBackend, cH as VectorSearchFrontierTuning, cI as VectorSearchParams, cJ as VectorSearchResult, cK as VectorSlot, cL as VectorStrategy, cM as assertFiniteEmbedding, cN as assertVectorMinScore, cO as assertVectorSearchLimit, cP as buildFulltextCapabilities, cQ as buildVectorCapabilities, cR as fts5Strategy, cS as isLiveNodeRow, cT as isSqlFragment, cU as isSqlPlaceholder, cV as isTombstonedNodeRow, cW as normalizeGraphAnalyticsCapabilities, cX as quoteIdentifier, cY as renderPostgres, cZ as renderSql, c_ as renderSqlInline, c$ as renderSqlite, d0 as rowPropsToJsonText, d1 as rowPropsToObject, d2 as shortHash, d3 as sql, d4 as tsvectorStrategy, d5 as vectorMinScoreCondition, d6 as vectorPhysicalName, d7 as vectorScoreExpression } from '../types-BqFZTQmV.js';
2
+ export { D as DeleteLegacyRecordedAnchorMapOptions, M as MigrateLegacyRecordedTimeOptions, a as MigrateLegacyRecordedTimeResult, b as MigrateRecordedAnchorOptions, R as RepairInvertedWindowsOptions, c as RepairInvertedWindowsReport, d as RepairRelation, e as RepairRelationScope, f as deleteLegacyRecordedAnchorMap, m as migrateLegacyRecordedTime, g as migrateRecordedAnchor, r as repairInvertedValidityWindows } from '../repair-validity-windows-DlUSqwCg.js';
3
+ export { R as RecordedInstant } from '../temporal-CbnLzTmM.js';
4
4
  import 'zod';
5
5
 
6
6
  /**
7
- * One-time offline migration from timestamp-only recorded relations to numeric
8
- * revisions. The durable remap table lets applications translate checkpoints
9
- * stored outside TypeGraph before deleting the migration metadata.
10
- */
11
-
12
- type MigrateLegacyRecordedTimeOptions = Readonly<{
13
- backend: GraphBackend;
14
- /** Override the backend's recorded table names. */
15
- tableNames?: Partial<SqlTableNames> | undefined;
16
- /** Override the durable legacy-anchor mapping table name. */
17
- mappingTableName?: string | undefined;
18
- }>;
19
- type MigrateLegacyRecordedTimeResult = Readonly<{
20
- /** `true` when timestamp columns were rewritten during this call. */
21
- migrated: boolean;
22
- /** Number of graphs represented in the legacy commit order. */
23
- graphs: number;
24
- /** Number of distinct legacy anchors available for remapping. */
25
- anchors: number;
26
- /** Physical table retaining the old-anchor → revision mapping. */
27
- mappingTableName: string;
28
- }>;
29
- type MigrateRecordedAnchorOptions = Readonly<{
30
- backend: Pick<GraphBackend, "dialect" | "execute" | "tableNames">;
31
- graphId: string;
32
- anchor: string;
33
- tableNames?: Partial<SqlTableNames> | undefined;
34
- mappingTableName?: string | undefined;
35
- }>;
36
- type DeleteLegacyRecordedAnchorMapOptions = Readonly<{
37
- backend: Pick<GraphBackend, "dialect" | "execute" | "executeStatement" | "tableNames" | "transaction">;
38
- graphId: string;
39
- tableNames?: Partial<SqlTableNames> | undefined;
40
- mappingTableName?: string | undefined;
41
- /** Drop the mapping table when this deletion leaves it empty. */
42
- dropWhenEmpty?: boolean | undefined;
43
- }>;
44
- /**
45
- * Rewrites timestamp-only recorded relations to numeric revisions.
7
+ * THE lower bound a write that STAMPS its own start stores, decided against the
8
+ * instant it is about to stamp. One owner for every such write, so no two of them
9
+ * can spell the decision differently. Three inputs, three outcomes:
46
10
  *
47
- * Run offline before opening a Store with the new schema. The durable mapping
48
- * table is retained so external checkpoint stores can call
49
- * {@link migrateRecordedAnchor}; delete each graph's rows after its downstream
50
- * checkpoints have been rewritten.
51
- */
52
- declare function migrateLegacyRecordedTime(options: MigrateLegacyRecordedTimeOptions): Promise<MigrateLegacyRecordedTimeResult>;
53
- /** Remaps one timestamp-only checkpoint after {@link migrateLegacyRecordedTime}. */
54
- declare function migrateRecordedAnchor(options: MigrateRecordedAnchorOptions): Promise<RecordedInstant>;
55
- /**
56
- * Deletes one graph's legacy remap rows after downstream checkpoints migrate.
57
- * Set `dropWhenEmpty` to remove the migration table after the final graph.
11
+ * - a stated `null` → no lower bound (a CONFIRMED open-left window, which is
12
+ * how interchange round-trips a row that has none);
13
+ * - a stated string → that bound, the caller's own assertion, verbatim;
14
+ * - nothing stated → the write instant, UNLESS stamping it would leave the
15
+ * window readable at no instant. A row carrying only a
16
+ * `validTo` at or before the write instant is "born already
17
+ * ended": its start is UNKNOWN, not at-or-after its end, so
18
+ * it stores no lower bound and reads back at every `asOf`
19
+ * before that end (issue #407).
20
+ *
21
+ * The comparison against `validTo` is NON-STRICT: `validTo === writeInstant`
22
+ * stores no bound too. A stamped `[T, T)` is a successful write no coordinate can
23
+ * observe, and the millisecond of skew between a caller's own `Date.now()` and the
24
+ * backend's sample is enough to land there — so the rule is total, and there is no
25
+ * input for which a stamped bound yields an empty window.
26
+ *
27
+ * The write instant is a PARAMETER, not a clock read: the caller passes the very
28
+ * value it binds into `created_at`/`updated_at` (or, for a resurrection, the
29
+ * instant its guard judged), so the decision and the stamp cannot come from two
30
+ * different samples (issue #413's failure mode). This function has no way to
31
+ * sample a clock, which is what makes that structural rather than tested.
32
+ *
33
+ * PRECONDITION: as {@link isEmptyValidityWindow}. This is called BELOW the
34
+ * validation boundary, on a public `GraphBackend` surface, so canonicality is
35
+ * established by whoever reached the backend: store paths through
36
+ * {@link validateOptionalCanonicalIsoDate}, interchange import through its own
37
+ * window validator, trusted import through its per-chunk format check. A direct
38
+ * `GraphBackend` caller establishes it itself — a pre-existing property of that
39
+ * surface, written down here rather than left implicit.
58
40
  */
59
- declare function deleteLegacyRecordedAnchorMap(options: DeleteLegacyRecordedAnchorMapOptions): Promise<void>;
41
+ declare function resolveStampedValidityLowerBound(statedValidFrom: string | null | undefined, validTo: string | undefined, writeInstant: string): string | undefined;
60
42
 
61
- export { type DeleteLegacyRecordedAnchorMapOptions, GraphBackend, type MigrateLegacyRecordedTimeOptions, type MigrateLegacyRecordedTimeResult, type MigrateRecordedAnchorOptions, RecordedInstant, SqlTableNames, deleteLegacyRecordedAnchorMap, migrateLegacyRecordedTime, migrateRecordedAnchor };
43
+ export { resolveStampedValidityLowerBound };