opentasks 0.0.7 → 0.0.9

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 (505) hide show
  1. package/dist/daemon/entire-linker.d.ts.map +1 -1
  2. package/dist/daemon/entire-linker.js +42 -48
  3. package/dist/daemon/entire-linker.js.map +1 -1
  4. package/dist/daemon/entire-watcher.d.ts +0 -11
  5. package/dist/daemon/entire-watcher.d.ts.map +1 -1
  6. package/dist/daemon/entire-watcher.js +1 -32
  7. package/dist/daemon/entire-watcher.js.map +1 -1
  8. package/dist/graph/query.js +3 -3
  9. package/dist/graph/query.js.map +1 -1
  10. package/dist/index.d.ts +1 -0
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +2 -0
  13. package/dist/index.js.map +1 -1
  14. package/dist/providers/entire.d.ts +0 -10
  15. package/dist/providers/entire.d.ts.map +1 -1
  16. package/dist/providers/entire.js +0 -13
  17. package/dist/providers/entire.js.map +1 -1
  18. package/dist/providers/index.d.ts +1 -0
  19. package/dist/providers/index.d.ts.map +1 -1
  20. package/dist/providers/index.js +2 -0
  21. package/dist/providers/index.js.map +1 -1
  22. package/dist/providers/map-connector.d.ts +87 -0
  23. package/dist/providers/map-connector.d.ts.map +1 -0
  24. package/dist/providers/map-connector.js +159 -0
  25. package/dist/providers/map-connector.js.map +1 -0
  26. package/dist/storage/interface.d.ts +6 -0
  27. package/dist/storage/interface.d.ts.map +1 -1
  28. package/dist/storage/interface.js.map +1 -1
  29. package/dist/storage/sqlite.d.ts +1 -0
  30. package/dist/storage/sqlite.d.ts.map +1 -1
  31. package/dist/storage/sqlite.js +11 -0
  32. package/dist/storage/sqlite.js.map +1 -1
  33. package/package.json +2 -2
  34. package/dist/__tests__/cli-tools.test.d.ts +0 -8
  35. package/dist/__tests__/cli-tools.test.d.ts.map +0 -1
  36. package/dist/__tests__/cli-tools.test.js +0 -546
  37. package/dist/__tests__/cli-tools.test.js.map +0 -1
  38. package/dist/__tests__/cli.test.d.ts +0 -5
  39. package/dist/__tests__/cli.test.d.ts.map +0 -1
  40. package/dist/__tests__/cli.test.js +0 -77
  41. package/dist/__tests__/cli.test.js.map +0 -1
  42. package/dist/__tests__/p1-p3-gaps.test.d.ts +0 -2
  43. package/dist/__tests__/p1-p3-gaps.test.d.ts.map +0 -1
  44. package/dist/__tests__/p1-p3-gaps.test.js +0 -463
  45. package/dist/__tests__/p1-p3-gaps.test.js.map +0 -1
  46. package/dist/client/__tests__/client-crud.test.d.ts +0 -7
  47. package/dist/client/__tests__/client-crud.test.d.ts.map +0 -1
  48. package/dist/client/__tests__/client-crud.test.js +0 -404
  49. package/dist/client/__tests__/client-crud.test.js.map +0 -1
  50. package/dist/client/__tests__/client.test.d.ts +0 -5
  51. package/dist/client/__tests__/client.test.d.ts.map +0 -1
  52. package/dist/client/__tests__/client.test.js +0 -518
  53. package/dist/client/__tests__/client.test.js.map +0 -1
  54. package/dist/config/__tests__/defaults.test.d.ts +0 -2
  55. package/dist/config/__tests__/defaults.test.d.ts.map +0 -1
  56. package/dist/config/__tests__/defaults.test.js +0 -57
  57. package/dist/config/__tests__/defaults.test.js.map +0 -1
  58. package/dist/config/__tests__/env.test.d.ts +0 -2
  59. package/dist/config/__tests__/env.test.d.ts.map +0 -1
  60. package/dist/config/__tests__/env.test.js +0 -136
  61. package/dist/config/__tests__/env.test.js.map +0 -1
  62. package/dist/config/__tests__/index.test.d.ts +0 -2
  63. package/dist/config/__tests__/index.test.d.ts.map +0 -1
  64. package/dist/config/__tests__/index.test.js +0 -113
  65. package/dist/config/__tests__/index.test.js.map +0 -1
  66. package/dist/config/__tests__/loader.test.d.ts +0 -2
  67. package/dist/config/__tests__/loader.test.d.ts.map +0 -1
  68. package/dist/config/__tests__/loader.test.js +0 -128
  69. package/dist/config/__tests__/loader.test.js.map +0 -1
  70. package/dist/config/__tests__/merge.test.d.ts +0 -2
  71. package/dist/config/__tests__/merge.test.d.ts.map +0 -1
  72. package/dist/config/__tests__/merge.test.js +0 -79
  73. package/dist/config/__tests__/merge.test.js.map +0 -1
  74. package/dist/config/__tests__/schema.test.d.ts +0 -2
  75. package/dist/config/__tests__/schema.test.d.ts.map +0 -1
  76. package/dist/config/__tests__/schema.test.js +0 -300
  77. package/dist/config/__tests__/schema.test.js.map +0 -1
  78. package/dist/core/__tests__/conditional-redirects.test.d.ts +0 -2
  79. package/dist/core/__tests__/conditional-redirects.test.d.ts.map +0 -1
  80. package/dist/core/__tests__/conditional-redirects.test.js +0 -83
  81. package/dist/core/__tests__/conditional-redirects.test.js.map +0 -1
  82. package/dist/core/__tests__/connections.test.d.ts +0 -2
  83. package/dist/core/__tests__/connections.test.d.ts.map +0 -1
  84. package/dist/core/__tests__/connections.test.js +0 -158
  85. package/dist/core/__tests__/connections.test.js.map +0 -1
  86. package/dist/core/__tests__/hash.test.d.ts +0 -2
  87. package/dist/core/__tests__/hash.test.d.ts.map +0 -1
  88. package/dist/core/__tests__/hash.test.js +0 -139
  89. package/dist/core/__tests__/hash.test.js.map +0 -1
  90. package/dist/core/__tests__/id.test.d.ts +0 -2
  91. package/dist/core/__tests__/id.test.d.ts.map +0 -1
  92. package/dist/core/__tests__/id.test.js +0 -142
  93. package/dist/core/__tests__/id.test.js.map +0 -1
  94. package/dist/core/__tests__/location.test.d.ts +0 -2
  95. package/dist/core/__tests__/location.test.d.ts.map +0 -1
  96. package/dist/core/__tests__/location.test.js +0 -77
  97. package/dist/core/__tests__/location.test.js.map +0 -1
  98. package/dist/core/__tests__/merge-driver.test.d.ts +0 -2
  99. package/dist/core/__tests__/merge-driver.test.d.ts.map +0 -1
  100. package/dist/core/__tests__/merge-driver.test.js +0 -218
  101. package/dist/core/__tests__/merge-driver.test.js.map +0 -1
  102. package/dist/core/__tests__/redirects.test.d.ts +0 -2
  103. package/dist/core/__tests__/redirects.test.d.ts.map +0 -1
  104. package/dist/core/__tests__/redirects.test.js +0 -123
  105. package/dist/core/__tests__/redirects.test.js.map +0 -1
  106. package/dist/core/__tests__/resolve-location-target.test.d.ts +0 -8
  107. package/dist/core/__tests__/resolve-location-target.test.d.ts.map +0 -1
  108. package/dist/core/__tests__/resolve-location-target.test.js +0 -303
  109. package/dist/core/__tests__/resolve-location-target.test.js.map +0 -1
  110. package/dist/core/__tests__/uri.test.d.ts +0 -2
  111. package/dist/core/__tests__/uri.test.d.ts.map +0 -1
  112. package/dist/core/__tests__/uri.test.js +0 -159
  113. package/dist/core/__tests__/uri.test.js.map +0 -1
  114. package/dist/core/__tests__/worktree.test.d.ts +0 -2
  115. package/dist/core/__tests__/worktree.test.d.ts.map +0 -1
  116. package/dist/core/__tests__/worktree.test.js +0 -120
  117. package/dist/core/__tests__/worktree.test.js.map +0 -1
  118. package/dist/daemon/__tests__/flush.test.d.ts +0 -5
  119. package/dist/daemon/__tests__/flush.test.d.ts.map +0 -1
  120. package/dist/daemon/__tests__/flush.test.js +0 -213
  121. package/dist/daemon/__tests__/flush.test.js.map +0 -1
  122. package/dist/daemon/__tests__/integration.test.d.ts +0 -7
  123. package/dist/daemon/__tests__/integration.test.d.ts.map +0 -1
  124. package/dist/daemon/__tests__/integration.test.js +0 -276
  125. package/dist/daemon/__tests__/integration.test.js.map +0 -1
  126. package/dist/daemon/__tests__/ipc.test.d.ts +0 -5
  127. package/dist/daemon/__tests__/ipc.test.d.ts.map +0 -1
  128. package/dist/daemon/__tests__/ipc.test.js +0 -314
  129. package/dist/daemon/__tests__/ipc.test.js.map +0 -1
  130. package/dist/daemon/__tests__/lifecycle.test.d.ts +0 -5
  131. package/dist/daemon/__tests__/lifecycle.test.d.ts.map +0 -1
  132. package/dist/daemon/__tests__/lifecycle.test.js +0 -301
  133. package/dist/daemon/__tests__/lifecycle.test.js.map +0 -1
  134. package/dist/daemon/__tests__/lock.test.d.ts +0 -5
  135. package/dist/daemon/__tests__/lock.test.d.ts.map +0 -1
  136. package/dist/daemon/__tests__/lock.test.js +0 -192
  137. package/dist/daemon/__tests__/lock.test.js.map +0 -1
  138. package/dist/daemon/__tests__/methods/graph.test.d.ts +0 -5
  139. package/dist/daemon/__tests__/methods/graph.test.d.ts.map +0 -1
  140. package/dist/daemon/__tests__/methods/graph.test.js +0 -309
  141. package/dist/daemon/__tests__/methods/graph.test.js.map +0 -1
  142. package/dist/daemon/__tests__/methods/provider.test.d.ts +0 -7
  143. package/dist/daemon/__tests__/methods/provider.test.d.ts.map +0 -1
  144. package/dist/daemon/__tests__/methods/provider.test.js +0 -181
  145. package/dist/daemon/__tests__/methods/provider.test.js.map +0 -1
  146. package/dist/daemon/__tests__/methods/tools.test.d.ts +0 -5
  147. package/dist/daemon/__tests__/methods/tools.test.d.ts.map +0 -1
  148. package/dist/daemon/__tests__/methods/tools.test.js +0 -587
  149. package/dist/daemon/__tests__/methods/tools.test.js.map +0 -1
  150. package/dist/daemon/__tests__/multi-location.test.d.ts +0 -8
  151. package/dist/daemon/__tests__/multi-location.test.d.ts.map +0 -1
  152. package/dist/daemon/__tests__/multi-location.test.js +0 -669
  153. package/dist/daemon/__tests__/multi-location.test.js.map +0 -1
  154. package/dist/daemon/__tests__/registry.test.d.ts +0 -5
  155. package/dist/daemon/__tests__/registry.test.d.ts.map +0 -1
  156. package/dist/daemon/__tests__/registry.test.js +0 -208
  157. package/dist/daemon/__tests__/registry.test.js.map +0 -1
  158. package/dist/daemon/__tests__/watcher.test.d.ts +0 -5
  159. package/dist/daemon/__tests__/watcher.test.d.ts.map +0 -1
  160. package/dist/daemon/__tests__/watcher.test.js +0 -234
  161. package/dist/daemon/__tests__/watcher.test.js.map +0 -1
  162. package/dist/daemon/methods/__tests__/graph.test.d.ts +0 -5
  163. package/dist/daemon/methods/__tests__/graph.test.d.ts.map +0 -1
  164. package/dist/daemon/methods/__tests__/graph.test.js +0 -274
  165. package/dist/daemon/methods/__tests__/graph.test.js.map +0 -1
  166. package/dist/daemon/methods/__tests__/provider.test.d.ts +0 -5
  167. package/dist/daemon/methods/__tests__/provider.test.d.ts.map +0 -1
  168. package/dist/daemon/methods/__tests__/provider.test.js +0 -184
  169. package/dist/daemon/methods/__tests__/provider.test.js.map +0 -1
  170. package/dist/daemon/methods/__tests__/tools.test.d.ts +0 -5
  171. package/dist/daemon/methods/__tests__/tools.test.d.ts.map +0 -1
  172. package/dist/daemon/methods/__tests__/tools.test.js +0 -295
  173. package/dist/daemon/methods/__tests__/tools.test.js.map +0 -1
  174. package/dist/entire/agent/agents/claude-code.d.ts +0 -76
  175. package/dist/entire/agent/agents/claude-code.d.ts.map +0 -1
  176. package/dist/entire/agent/agents/claude-code.js +0 -759
  177. package/dist/entire/agent/agents/claude-code.js.map +0 -1
  178. package/dist/entire/agent/agents/cursor.d.ts +0 -35
  179. package/dist/entire/agent/agents/cursor.d.ts.map +0 -1
  180. package/dist/entire/agent/agents/cursor.js +0 -294
  181. package/dist/entire/agent/agents/cursor.js.map +0 -1
  182. package/dist/entire/agent/agents/gemini-cli.d.ts +0 -62
  183. package/dist/entire/agent/agents/gemini-cli.d.ts.map +0 -1
  184. package/dist/entire/agent/agents/gemini-cli.js +0 -462
  185. package/dist/entire/agent/agents/gemini-cli.js.map +0 -1
  186. package/dist/entire/agent/agents/opencode.d.ts +0 -100
  187. package/dist/entire/agent/agents/opencode.d.ts.map +0 -1
  188. package/dist/entire/agent/agents/opencode.js +0 -423
  189. package/dist/entire/agent/agents/opencode.js.map +0 -1
  190. package/dist/entire/agent/registry.d.ts +0 -54
  191. package/dist/entire/agent/registry.d.ts.map +0 -1
  192. package/dist/entire/agent/registry.js +0 -123
  193. package/dist/entire/agent/registry.js.map +0 -1
  194. package/dist/entire/agent/session-types.d.ts +0 -45
  195. package/dist/entire/agent/session-types.d.ts.map +0 -1
  196. package/dist/entire/agent/session-types.js +0 -50
  197. package/dist/entire/agent/session-types.js.map +0 -1
  198. package/dist/entire/agent/types.d.ts +0 -126
  199. package/dist/entire/agent/types.d.ts.map +0 -1
  200. package/dist/entire/agent/types.js +0 -39
  201. package/dist/entire/agent/types.js.map +0 -1
  202. package/dist/entire/commands/clean.d.ts +0 -30
  203. package/dist/entire/commands/clean.d.ts.map +0 -1
  204. package/dist/entire/commands/clean.js +0 -99
  205. package/dist/entire/commands/clean.js.map +0 -1
  206. package/dist/entire/commands/disable.d.ts +0 -23
  207. package/dist/entire/commands/disable.d.ts.map +0 -1
  208. package/dist/entire/commands/disable.js +0 -57
  209. package/dist/entire/commands/disable.js.map +0 -1
  210. package/dist/entire/commands/doctor.d.ts +0 -43
  211. package/dist/entire/commands/doctor.d.ts.map +0 -1
  212. package/dist/entire/commands/doctor.js +0 -97
  213. package/dist/entire/commands/doctor.js.map +0 -1
  214. package/dist/entire/commands/enable.d.ts +0 -29
  215. package/dist/entire/commands/enable.d.ts.map +0 -1
  216. package/dist/entire/commands/enable.js +0 -102
  217. package/dist/entire/commands/enable.js.map +0 -1
  218. package/dist/entire/commands/explain.d.ts +0 -68
  219. package/dist/entire/commands/explain.d.ts.map +0 -1
  220. package/dist/entire/commands/explain.js +0 -182
  221. package/dist/entire/commands/explain.js.map +0 -1
  222. package/dist/entire/commands/reset.d.ts +0 -23
  223. package/dist/entire/commands/reset.d.ts.map +0 -1
  224. package/dist/entire/commands/reset.js +0 -68
  225. package/dist/entire/commands/reset.js.map +0 -1
  226. package/dist/entire/commands/resume.d.ts +0 -42
  227. package/dist/entire/commands/resume.d.ts.map +0 -1
  228. package/dist/entire/commands/resume.js +0 -134
  229. package/dist/entire/commands/resume.js.map +0 -1
  230. package/dist/entire/commands/rewind.d.ts +0 -34
  231. package/dist/entire/commands/rewind.d.ts.map +0 -1
  232. package/dist/entire/commands/rewind.js +0 -155
  233. package/dist/entire/commands/rewind.js.map +0 -1
  234. package/dist/entire/commands/status.d.ts +0 -51
  235. package/dist/entire/commands/status.d.ts.map +0 -1
  236. package/dist/entire/commands/status.js +0 -94
  237. package/dist/entire/commands/status.js.map +0 -1
  238. package/dist/entire/config.d.ts +0 -40
  239. package/dist/entire/config.d.ts.map +0 -1
  240. package/dist/entire/config.js +0 -126
  241. package/dist/entire/config.js.map +0 -1
  242. package/dist/entire/git-operations.d.ts +0 -170
  243. package/dist/entire/git-operations.d.ts.map +0 -1
  244. package/dist/entire/git-operations.js +0 -395
  245. package/dist/entire/git-operations.js.map +0 -1
  246. package/dist/entire/hooks/git-hooks.d.ts +0 -22
  247. package/dist/entire/hooks/git-hooks.d.ts.map +0 -1
  248. package/dist/entire/hooks/git-hooks.js +0 -145
  249. package/dist/entire/hooks/git-hooks.js.map +0 -1
  250. package/dist/entire/hooks/lifecycle.d.ts +0 -21
  251. package/dist/entire/hooks/lifecycle.d.ts.map +0 -1
  252. package/dist/entire/hooks/lifecycle.js +0 -179
  253. package/dist/entire/hooks/lifecycle.js.map +0 -1
  254. package/dist/entire/index.d.ts +0 -69
  255. package/dist/entire/index.d.ts.map +0 -1
  256. package/dist/entire/index.js +0 -152
  257. package/dist/entire/index.js.map +0 -1
  258. package/dist/entire/security/redaction.d.ts +0 -35
  259. package/dist/entire/security/redaction.d.ts.map +0 -1
  260. package/dist/entire/security/redaction.js +0 -221
  261. package/dist/entire/security/redaction.js.map +0 -1
  262. package/dist/entire/session/state-machine.d.ts +0 -90
  263. package/dist/entire/session/state-machine.d.ts.map +0 -1
  264. package/dist/entire/session/state-machine.js +0 -347
  265. package/dist/entire/session/state-machine.js.map +0 -1
  266. package/dist/entire/store/checkpoint-store.d.ts +0 -47
  267. package/dist/entire/store/checkpoint-store.d.ts.map +0 -1
  268. package/dist/entire/store/checkpoint-store.js +0 -307
  269. package/dist/entire/store/checkpoint-store.js.map +0 -1
  270. package/dist/entire/store/native-store.d.ts +0 -14
  271. package/dist/entire/store/native-store.d.ts.map +0 -1
  272. package/dist/entire/store/native-store.js +0 -159
  273. package/dist/entire/store/native-store.js.map +0 -1
  274. package/dist/entire/store/provider-types.d.ts +0 -78
  275. package/dist/entire/store/provider-types.d.ts.map +0 -1
  276. package/dist/entire/store/provider-types.js +0 -12
  277. package/dist/entire/store/provider-types.js.map +0 -1
  278. package/dist/entire/store/session-store.d.ts +0 -28
  279. package/dist/entire/store/session-store.d.ts.map +0 -1
  280. package/dist/entire/store/session-store.js +0 -187
  281. package/dist/entire/store/session-store.js.map +0 -1
  282. package/dist/entire/strategy/attribution.d.ts +0 -39
  283. package/dist/entire/strategy/attribution.d.ts.map +0 -1
  284. package/dist/entire/strategy/attribution.js +0 -227
  285. package/dist/entire/strategy/attribution.js.map +0 -1
  286. package/dist/entire/strategy/common.d.ts +0 -57
  287. package/dist/entire/strategy/common.d.ts.map +0 -1
  288. package/dist/entire/strategy/common.js +0 -156
  289. package/dist/entire/strategy/common.js.map +0 -1
  290. package/dist/entire/strategy/content-overlap.d.ts +0 -33
  291. package/dist/entire/strategy/content-overlap.d.ts.map +0 -1
  292. package/dist/entire/strategy/content-overlap.js +0 -168
  293. package/dist/entire/strategy/content-overlap.js.map +0 -1
  294. package/dist/entire/strategy/manual-commit.d.ts +0 -31
  295. package/dist/entire/strategy/manual-commit.d.ts.map +0 -1
  296. package/dist/entire/strategy/manual-commit.js +0 -730
  297. package/dist/entire/strategy/manual-commit.js.map +0 -1
  298. package/dist/entire/strategy/types.d.ts +0 -163
  299. package/dist/entire/strategy/types.d.ts.map +0 -1
  300. package/dist/entire/strategy/types.js +0 -49
  301. package/dist/entire/strategy/types.js.map +0 -1
  302. package/dist/entire/summarize/claude-generator.d.ts +0 -25
  303. package/dist/entire/summarize/claude-generator.d.ts.map +0 -1
  304. package/dist/entire/summarize/claude-generator.js +0 -87
  305. package/dist/entire/summarize/claude-generator.js.map +0 -1
  306. package/dist/entire/summarize/summarize.d.ts +0 -52
  307. package/dist/entire/summarize/summarize.d.ts.map +0 -1
  308. package/dist/entire/summarize/summarize.js +0 -335
  309. package/dist/entire/summarize/summarize.js.map +0 -1
  310. package/dist/entire/types.d.ts +0 -288
  311. package/dist/entire/types.d.ts.map +0 -1
  312. package/dist/entire/types.js +0 -94
  313. package/dist/entire/types.js.map +0 -1
  314. package/dist/entire/utils/chunk-files.d.ts +0 -25
  315. package/dist/entire/utils/chunk-files.d.ts.map +0 -1
  316. package/dist/entire/utils/chunk-files.js +0 -47
  317. package/dist/entire/utils/chunk-files.js.map +0 -1
  318. package/dist/entire/utils/commit-message.d.ts +0 -11
  319. package/dist/entire/utils/commit-message.d.ts.map +0 -1
  320. package/dist/entire/utils/commit-message.js +0 -54
  321. package/dist/entire/utils/commit-message.js.map +0 -1
  322. package/dist/entire/utils/detect-agent.d.ts +0 -19
  323. package/dist/entire/utils/detect-agent.d.ts.map +0 -1
  324. package/dist/entire/utils/detect-agent.js +0 -34
  325. package/dist/entire/utils/detect-agent.js.map +0 -1
  326. package/dist/entire/utils/hook-managers.d.ts +0 -24
  327. package/dist/entire/utils/hook-managers.d.ts.map +0 -1
  328. package/dist/entire/utils/hook-managers.js +0 -87
  329. package/dist/entire/utils/hook-managers.js.map +0 -1
  330. package/dist/entire/utils/ide-tags.d.ts +0 -12
  331. package/dist/entire/utils/ide-tags.d.ts.map +0 -1
  332. package/dist/entire/utils/ide-tags.js +0 -30
  333. package/dist/entire/utils/ide-tags.js.map +0 -1
  334. package/dist/entire/utils/paths.d.ts +0 -32
  335. package/dist/entire/utils/paths.d.ts.map +0 -1
  336. package/dist/entire/utils/paths.js +0 -55
  337. package/dist/entire/utils/paths.js.map +0 -1
  338. package/dist/entire/utils/preview-rewind.d.ts +0 -23
  339. package/dist/entire/utils/preview-rewind.d.ts.map +0 -1
  340. package/dist/entire/utils/preview-rewind.js +0 -63
  341. package/dist/entire/utils/preview-rewind.js.map +0 -1
  342. package/dist/entire/utils/rewind-conflict.d.ts +0 -52
  343. package/dist/entire/utils/rewind-conflict.d.ts.map +0 -1
  344. package/dist/entire/utils/rewind-conflict.js +0 -79
  345. package/dist/entire/utils/rewind-conflict.js.map +0 -1
  346. package/dist/entire/utils/shadow-branch.d.ts +0 -44
  347. package/dist/entire/utils/shadow-branch.d.ts.map +0 -1
  348. package/dist/entire/utils/shadow-branch.js +0 -93
  349. package/dist/entire/utils/shadow-branch.js.map +0 -1
  350. package/dist/entire/utils/string-utils.d.ts +0 -24
  351. package/dist/entire/utils/string-utils.d.ts.map +0 -1
  352. package/dist/entire/utils/string-utils.js +0 -47
  353. package/dist/entire/utils/string-utils.js.map +0 -1
  354. package/dist/entire/utils/todo-extract.d.ts +0 -52
  355. package/dist/entire/utils/todo-extract.d.ts.map +0 -1
  356. package/dist/entire/utils/todo-extract.js +0 -167
  357. package/dist/entire/utils/todo-extract.js.map +0 -1
  358. package/dist/entire/utils/trailers.d.ts +0 -36
  359. package/dist/entire/utils/trailers.d.ts.map +0 -1
  360. package/dist/entire/utils/trailers.js +0 -149
  361. package/dist/entire/utils/trailers.js.map +0 -1
  362. package/dist/entire/utils/transcript-parse.d.ts +0 -57
  363. package/dist/entire/utils/transcript-parse.d.ts.map +0 -1
  364. package/dist/entire/utils/transcript-parse.js +0 -126
  365. package/dist/entire/utils/transcript-parse.js.map +0 -1
  366. package/dist/entire/utils/transcript-timestamp.d.ts +0 -22
  367. package/dist/entire/utils/transcript-timestamp.d.ts.map +0 -1
  368. package/dist/entire/utils/transcript-timestamp.js +0 -56
  369. package/dist/entire/utils/transcript-timestamp.js.map +0 -1
  370. package/dist/entire/utils/tree-ops.d.ts +0 -47
  371. package/dist/entire/utils/tree-ops.d.ts.map +0 -1
  372. package/dist/entire/utils/tree-ops.js +0 -145
  373. package/dist/entire/utils/tree-ops.js.map +0 -1
  374. package/dist/entire/utils/tty.d.ts +0 -25
  375. package/dist/entire/utils/tty.d.ts.map +0 -1
  376. package/dist/entire/utils/tty.js +0 -70
  377. package/dist/entire/utils/tty.js.map +0 -1
  378. package/dist/entire/utils/validation.d.ts +0 -31
  379. package/dist/entire/utils/validation.d.ts.map +0 -1
  380. package/dist/entire/utils/validation.js +0 -59
  381. package/dist/entire/utils/validation.js.map +0 -1
  382. package/dist/entire/utils/worktree.d.ts +0 -16
  383. package/dist/entire/utils/worktree.d.ts.map +0 -1
  384. package/dist/entire/utils/worktree.js +0 -50
  385. package/dist/entire/utils/worktree.js.map +0 -1
  386. package/dist/graph/__tests__/EdgeTypeRegistry.test.d.ts +0 -2
  387. package/dist/graph/__tests__/EdgeTypeRegistry.test.d.ts.map +0 -1
  388. package/dist/graph/__tests__/EdgeTypeRegistry.test.js +0 -212
  389. package/dist/graph/__tests__/EdgeTypeRegistry.test.js.map +0 -1
  390. package/dist/graph/__tests__/FederatedGraph.test.d.ts +0 -2
  391. package/dist/graph/__tests__/FederatedGraph.test.d.ts.map +0 -1
  392. package/dist/graph/__tests__/FederatedGraph.test.js +0 -661
  393. package/dist/graph/__tests__/FederatedGraph.test.js.map +0 -1
  394. package/dist/graph/__tests__/GraphologyAdapter.test.d.ts +0 -2
  395. package/dist/graph/__tests__/GraphologyAdapter.test.d.ts.map +0 -1
  396. package/dist/graph/__tests__/GraphologyAdapter.test.js +0 -326
  397. package/dist/graph/__tests__/GraphologyAdapter.test.js.map +0 -1
  398. package/dist/graph/__tests__/HydratingFederatedGraph.test.d.ts +0 -2
  399. package/dist/graph/__tests__/HydratingFederatedGraph.test.d.ts.map +0 -1
  400. package/dist/graph/__tests__/HydratingFederatedGraph.test.js +0 -587
  401. package/dist/graph/__tests__/HydratingFederatedGraph.test.js.map +0 -1
  402. package/dist/graph/__tests__/debounce.test.d.ts +0 -5
  403. package/dist/graph/__tests__/debounce.test.d.ts.map +0 -1
  404. package/dist/graph/__tests__/debounce.test.js +0 -195
  405. package/dist/graph/__tests__/debounce.test.js.map +0 -1
  406. package/dist/graph/__tests__/edge-cases.test.d.ts +0 -8
  407. package/dist/graph/__tests__/edge-cases.test.d.ts.map +0 -1
  408. package/dist/graph/__tests__/edge-cases.test.js +0 -472
  409. package/dist/graph/__tests__/edge-cases.test.js.map +0 -1
  410. package/dist/graph/__tests__/expansion.test.d.ts +0 -2
  411. package/dist/graph/__tests__/expansion.test.d.ts.map +0 -1
  412. package/dist/graph/__tests__/expansion.test.js +0 -105
  413. package/dist/graph/__tests__/expansion.test.js.map +0 -1
  414. package/dist/graph/__tests__/provider-store.test.d.ts +0 -5
  415. package/dist/graph/__tests__/provider-store.test.d.ts.map +0 -1
  416. package/dist/graph/__tests__/provider-store.test.js +0 -791
  417. package/dist/graph/__tests__/provider-store.test.js.map +0 -1
  418. package/dist/graph/__tests__/query.test.d.ts +0 -5
  419. package/dist/graph/__tests__/query.test.d.ts.map +0 -1
  420. package/dist/graph/__tests__/query.test.js +0 -774
  421. package/dist/graph/__tests__/query.test.js.map +0 -1
  422. package/dist/graph/__tests__/store.test.d.ts +0 -5
  423. package/dist/graph/__tests__/store.test.d.ts.map +0 -1
  424. package/dist/graph/__tests__/store.test.js +0 -489
  425. package/dist/graph/__tests__/store.test.js.map +0 -1
  426. package/dist/graph/__tests__/sync.test.d.ts +0 -5
  427. package/dist/graph/__tests__/sync.test.d.ts.map +0 -1
  428. package/dist/graph/__tests__/sync.test.js +0 -129
  429. package/dist/graph/__tests__/sync.test.js.map +0 -1
  430. package/dist/graph/__tests__/validation.test.d.ts +0 -2
  431. package/dist/graph/__tests__/validation.test.d.ts.map +0 -1
  432. package/dist/graph/__tests__/validation.test.js +0 -521
  433. package/dist/graph/__tests__/validation.test.js.map +0 -1
  434. package/dist/providers/__tests__/beads.test.d.ts +0 -5
  435. package/dist/providers/__tests__/beads.test.d.ts.map +0 -1
  436. package/dist/providers/__tests__/beads.test.js +0 -591
  437. package/dist/providers/__tests__/beads.test.js.map +0 -1
  438. package/dist/providers/__tests__/claude-tasks.test.d.ts +0 -5
  439. package/dist/providers/__tests__/claude-tasks.test.d.ts.map +0 -1
  440. package/dist/providers/__tests__/claude-tasks.test.js +0 -392
  441. package/dist/providers/__tests__/claude-tasks.test.js.map +0 -1
  442. package/dist/providers/__tests__/from-config.test.d.ts +0 -5
  443. package/dist/providers/__tests__/from-config.test.d.ts.map +0 -1
  444. package/dist/providers/__tests__/from-config.test.js +0 -152
  445. package/dist/providers/__tests__/from-config.test.js.map +0 -1
  446. package/dist/providers/__tests__/materialization.test.d.ts +0 -5
  447. package/dist/providers/__tests__/materialization.test.d.ts.map +0 -1
  448. package/dist/providers/__tests__/materialization.test.js +0 -407
  449. package/dist/providers/__tests__/materialization.test.js.map +0 -1
  450. package/dist/providers/__tests__/native.test.d.ts +0 -5
  451. package/dist/providers/__tests__/native.test.d.ts.map +0 -1
  452. package/dist/providers/__tests__/native.test.js +0 -566
  453. package/dist/providers/__tests__/native.test.js.map +0 -1
  454. package/dist/providers/__tests__/registry.test.d.ts +0 -5
  455. package/dist/providers/__tests__/registry.test.d.ts.map +0 -1
  456. package/dist/providers/__tests__/registry.test.js +0 -183
  457. package/dist/providers/__tests__/registry.test.js.map +0 -1
  458. package/dist/providers/traits/__tests__/RelationshipQueryable.test.d.ts +0 -2
  459. package/dist/providers/traits/__tests__/RelationshipQueryable.test.d.ts.map +0 -1
  460. package/dist/providers/traits/__tests__/RelationshipQueryable.test.js +0 -169
  461. package/dist/providers/traits/__tests__/RelationshipQueryable.test.js.map +0 -1
  462. package/dist/providers/traits/__tests__/TaskManageable.test.d.ts +0 -2
  463. package/dist/providers/traits/__tests__/TaskManageable.test.d.ts.map +0 -1
  464. package/dist/providers/traits/__tests__/TaskManageable.test.js +0 -172
  465. package/dist/providers/traits/__tests__/TaskManageable.test.js.map +0 -1
  466. package/dist/schema/__tests__/validation.test.d.ts +0 -2
  467. package/dist/schema/__tests__/validation.test.d.ts.map +0 -1
  468. package/dist/schema/__tests__/validation.test.js +0 -241
  469. package/dist/schema/__tests__/validation.test.js.map +0 -1
  470. package/dist/storage/__tests__/atomic-write.test.d.ts +0 -5
  471. package/dist/storage/__tests__/atomic-write.test.d.ts.map +0 -1
  472. package/dist/storage/__tests__/atomic-write.test.js +0 -170
  473. package/dist/storage/__tests__/atomic-write.test.js.map +0 -1
  474. package/dist/storage/__tests__/file-lock.test.d.ts +0 -2
  475. package/dist/storage/__tests__/file-lock.test.d.ts.map +0 -1
  476. package/dist/storage/__tests__/file-lock.test.js +0 -89
  477. package/dist/storage/__tests__/file-lock.test.js.map +0 -1
  478. package/dist/storage/__tests__/jsonl.test.d.ts +0 -2
  479. package/dist/storage/__tests__/jsonl.test.d.ts.map +0 -1
  480. package/dist/storage/__tests__/jsonl.test.js +0 -228
  481. package/dist/storage/__tests__/jsonl.test.js.map +0 -1
  482. package/dist/storage/__tests__/locked-writer.test.d.ts +0 -2
  483. package/dist/storage/__tests__/locked-writer.test.d.ts.map +0 -1
  484. package/dist/storage/__tests__/locked-writer.test.js +0 -109
  485. package/dist/storage/__tests__/locked-writer.test.js.map +0 -1
  486. package/dist/storage/__tests__/sqlite.test.d.ts +0 -2
  487. package/dist/storage/__tests__/sqlite.test.d.ts.map +0 -1
  488. package/dist/storage/__tests__/sqlite.test.js +0 -470
  489. package/dist/storage/__tests__/sqlite.test.js.map +0 -1
  490. package/dist/tools/__tests__/annotate.test.d.ts +0 -5
  491. package/dist/tools/__tests__/annotate.test.d.ts.map +0 -1
  492. package/dist/tools/__tests__/annotate.test.js +0 -314
  493. package/dist/tools/__tests__/annotate.test.js.map +0 -1
  494. package/dist/tools/__tests__/link.test.d.ts +0 -5
  495. package/dist/tools/__tests__/link.test.d.ts.map +0 -1
  496. package/dist/tools/__tests__/link.test.js +0 -245
  497. package/dist/tools/__tests__/link.test.js.map +0 -1
  498. package/dist/tools/__tests__/query.test.d.ts +0 -5
  499. package/dist/tools/__tests__/query.test.d.ts.map +0 -1
  500. package/dist/tools/__tests__/query.test.js +0 -288
  501. package/dist/tools/__tests__/query.test.js.map +0 -1
  502. package/dist/tools/__tests__/task.test.d.ts +0 -5
  503. package/dist/tools/__tests__/task.test.d.ts.map +0 -1
  504. package/dist/tools/__tests__/task.test.js +0 -178
  505. package/dist/tools/__tests__/task.test.js.map +0 -1
@@ -1,472 +0,0 @@
1
- /**
2
- * Tests for Graph Edge Cases
3
- *
4
- * Tests circular dependencies, self-referential edges, deep hierarchies,
5
- * and other edge cases.
6
- */
7
- import { describe, it, expect, beforeEach, afterEach } from 'vitest';
8
- import * as fs from 'node:fs/promises';
9
- import * as path from 'node:path';
10
- import * as os from 'node:os';
11
- import { createGraphStore } from '../store.js';
12
- import { createSQLitePersister } from '../../storage/sqlite.js';
13
- // ============================================================================
14
- // Test Setup
15
- // ============================================================================
16
- describe('Graph Edge Cases', () => {
17
- let tempDir;
18
- let storage;
19
- let store;
20
- // JSONL mock that keeps data in memory
21
- let jsonlNodes = [];
22
- let jsonlEdges = [];
23
- async function jsonlLoad() {
24
- return { nodes: jsonlNodes, edges: jsonlEdges };
25
- }
26
- async function jsonlSave(nodes, edges) {
27
- jsonlNodes = nodes;
28
- jsonlEdges = edges;
29
- }
30
- beforeEach(async () => {
31
- tempDir = await fs.mkdtemp(path.join(os.tmpdir(), 'opentasks-edge-test-'));
32
- // createSQLitePersister takes basePath and creates cache.db inside it
33
- // It also calls initialize() internally
34
- storage = createSQLitePersister(tempDir);
35
- jsonlNodes = [];
36
- jsonlEdges = [];
37
- store = createGraphStore({ basePath: tempDir }, storage, jsonlLoad, jsonlSave);
38
- await store.initialize();
39
- });
40
- afterEach(async () => {
41
- try {
42
- await store.close();
43
- }
44
- catch {
45
- // Ignore
46
- }
47
- try {
48
- await fs.rm(tempDir, { recursive: true, force: true });
49
- }
50
- catch {
51
- // Ignore
52
- }
53
- });
54
- // ==========================================================================
55
- // Circular Dependencies
56
- // ==========================================================================
57
- describe('Circular Dependencies', () => {
58
- it('should detect direct cycle (A blocks B, B blocks A)', async () => {
59
- const issueA = await store.createNode({
60
- type: 'issue',
61
- title: 'Issue A',
62
- status: 'open',
63
- });
64
- const issueB = await store.createNode({
65
- type: 'issue',
66
- title: 'Issue B',
67
- status: 'open',
68
- });
69
- // A blocks B
70
- await store.createEdge({
71
- from_id: issueA.id,
72
- to_id: issueB.id,
73
- type: 'blocks',
74
- });
75
- // B blocks A should fail
76
- await expect(store.createEdge({
77
- from_id: issueB.id,
78
- to_id: issueA.id,
79
- type: 'blocks',
80
- })).rejects.toThrow(/cycle/i);
81
- });
82
- it('should detect transitive cycle (A→B→C→A)', async () => {
83
- const issueA = await store.createNode({
84
- type: 'issue',
85
- title: 'Issue A',
86
- status: 'open',
87
- });
88
- const issueB = await store.createNode({
89
- type: 'issue',
90
- title: 'Issue B',
91
- status: 'open',
92
- });
93
- const issueC = await store.createNode({
94
- type: 'issue',
95
- title: 'Issue C',
96
- status: 'open',
97
- });
98
- // A → B → C
99
- await store.createEdge({
100
- from_id: issueA.id,
101
- to_id: issueB.id,
102
- type: 'blocks',
103
- });
104
- await store.createEdge({
105
- from_id: issueB.id,
106
- to_id: issueC.id,
107
- type: 'blocks',
108
- });
109
- // C → A should fail
110
- await expect(store.createEdge({
111
- from_id: issueC.id,
112
- to_id: issueA.id,
113
- type: 'blocks',
114
- })).rejects.toThrow(/cycle/i);
115
- });
116
- it('should allow non-blocking cycles (implements is not checked for cycles)', async () => {
117
- const spec = await store.createNode({
118
- type: 'spec',
119
- title: 'Spec',
120
- });
121
- const issue = await store.createNode({
122
- type: 'issue',
123
- title: 'Issue',
124
- status: 'open',
125
- });
126
- // Issue implements Spec
127
- await store.createEdge({
128
- from_id: issue.id,
129
- to_id: spec.id,
130
- type: 'implements',
131
- });
132
- // Spec references Issue (different edge type, should be allowed)
133
- const edge = await store.createEdge({
134
- from_id: spec.id,
135
- to_id: issue.id,
136
- type: 'references',
137
- });
138
- expect(edge).toBeDefined();
139
- expect(edge.id).toBeDefined();
140
- });
141
- });
142
- // ==========================================================================
143
- // Self-Referential Edges
144
- // ==========================================================================
145
- describe('Self-Referential Edges', () => {
146
- it('should reject self-referential blocks edge', async () => {
147
- const issue = await store.createNode({
148
- type: 'issue',
149
- title: 'Self-blocking Issue',
150
- status: 'open',
151
- });
152
- // Issue blocks itself should fail
153
- await expect(store.createEdge({
154
- from_id: issue.id,
155
- to_id: issue.id,
156
- type: 'blocks',
157
- })).rejects.toThrow(); // Either cycle detection or validation should catch this
158
- });
159
- it('should reject self-referential implements edge', async () => {
160
- const spec = await store.createNode({
161
- type: 'spec',
162
- title: 'Self-implementing Spec',
163
- });
164
- // Spec implements itself should fail validation
165
- await expect(store.createEdge({
166
- from_id: spec.id,
167
- to_id: spec.id,
168
- type: 'implements',
169
- })).rejects.toThrow();
170
- });
171
- });
172
- // ==========================================================================
173
- // Deep Hierarchies
174
- // ==========================================================================
175
- describe('Deep Hierarchies', () => {
176
- it('should handle 10-level blocking chain', async () => {
177
- const issues = [];
178
- // Create 10 issues
179
- for (let i = 0; i < 10; i++) {
180
- const issue = await store.createNode({
181
- type: 'issue',
182
- title: `Issue ${i}`,
183
- status: 'open',
184
- });
185
- issues.push(issue);
186
- }
187
- // Create chain: 0→1→2→...→9
188
- for (let i = 0; i < 9; i++) {
189
- await store.createEdge({
190
- from_id: issues[i].id,
191
- to_id: issues[i + 1].id,
192
- type: 'blocks',
193
- });
194
- }
195
- // Query blockers for issue 9 (should include all predecessors transitively)
196
- const blockers = await store.query.blockers(issues[9].id, {
197
- transitive: true,
198
- });
199
- expect(blockers.length).toBe(9); // 0-8 all block 9 transitively
200
- });
201
- it('should handle 50-level parent hierarchy', async () => {
202
- let parentId;
203
- // Create deep parent chain
204
- for (let i = 0; i < 50; i++) {
205
- const node = await store.createNode({
206
- type: 'spec',
207
- title: `Level ${i}`,
208
- parent_id: parentId,
209
- });
210
- parentId = node.id;
211
- }
212
- // Should be able to retrieve the deepest node
213
- const deepest = await store.getNode(parentId);
214
- expect(deepest).not.toBeNull();
215
- expect(deepest?.title).toBe('Level 49');
216
- });
217
- it('should query children of a parent', async () => {
218
- const parent = await store.createNode({
219
- type: 'spec',
220
- title: 'Parent',
221
- });
222
- // Create 5 children
223
- for (let i = 0; i < 5; i++) {
224
- await store.createNode({
225
- type: 'spec',
226
- title: `Child ${i}`,
227
- parent_id: parent.id,
228
- });
229
- }
230
- // Query children
231
- const children = await store.query.nodes({ parent_id: parent.id });
232
- expect(children.length).toBe(5);
233
- });
234
- });
235
- // ==========================================================================
236
- // Dangling References
237
- // ==========================================================================
238
- describe('Dangling References', () => {
239
- it('should allow edge to external URI (non-local ID)', async () => {
240
- // The system allows edges to non-local IDs (treated as external URIs)
241
- // This is by design - edges can reference external resources
242
- const issue = await store.createNode({
243
- type: 'issue',
244
- title: 'Real Issue',
245
- status: 'open',
246
- });
247
- // "nonexistent-id" doesn't match local ID pattern (x-xxx) so it's treated as external
248
- const edge = await store.createEdge({
249
- from_id: issue.id,
250
- to_id: 'github://org/repo/issues/123',
251
- type: 'references',
252
- });
253
- expect(edge).toBeDefined();
254
- expect(edge.to_id).toBe('github://org/repo/issues/123');
255
- });
256
- it('should reject edge to non-existent LOCAL node', async () => {
257
- // Local node references (matching pattern like i-xxx) are validated
258
- const issue = await store.createNode({
259
- type: 'issue',
260
- title: 'Real Issue',
261
- status: 'open',
262
- });
263
- // i-xxxx format is a local ID - should be validated
264
- await expect(store.createEdge({
265
- from_id: issue.id,
266
- to_id: 'i-nonexistent',
267
- type: 'blocks',
268
- })).rejects.toThrow();
269
- });
270
- it('should reject edge from non-existent LOCAL node', async () => {
271
- const issue = await store.createNode({
272
- type: 'issue',
273
- title: 'Real Issue',
274
- status: 'open',
275
- });
276
- await expect(store.createEdge({
277
- from_id: 'i-nonexistent',
278
- to_id: issue.id,
279
- type: 'blocks',
280
- })).rejects.toThrow();
281
- });
282
- });
283
- // ==========================================================================
284
- // Multiple Edges Between Same Nodes
285
- // ==========================================================================
286
- describe('Multiple Edges Between Same Nodes', () => {
287
- it('should allow different edge types between same nodes', async () => {
288
- const spec = await store.createNode({
289
- type: 'spec',
290
- title: 'Spec',
291
- });
292
- const issue = await store.createNode({
293
- type: 'issue',
294
- title: 'Issue',
295
- status: 'open',
296
- });
297
- // Issue implements Spec
298
- const edge1 = await store.createEdge({
299
- from_id: issue.id,
300
- to_id: spec.id,
301
- type: 'implements',
302
- });
303
- // Issue also references Spec
304
- const edge2 = await store.createEdge({
305
- from_id: issue.id,
306
- to_id: spec.id,
307
- type: 'references',
308
- });
309
- expect(edge1.id).not.toBe(edge2.id);
310
- expect(edge1.type).toBe('implements');
311
- expect(edge2.type).toBe('references');
312
- });
313
- it('should handle querying multiple edge types', async () => {
314
- const spec = await store.createNode({
315
- type: 'spec',
316
- title: 'Spec',
317
- });
318
- const issue = await store.createNode({
319
- type: 'issue',
320
- title: 'Issue',
321
- status: 'open',
322
- });
323
- await store.createEdge({
324
- from_id: issue.id,
325
- to_id: spec.id,
326
- type: 'implements',
327
- });
328
- await store.createEdge({
329
- from_id: issue.id,
330
- to_id: spec.id,
331
- type: 'references',
332
- });
333
- // Query all edges from issue
334
- const allEdges = await store.query.edges({ from_id: issue.id });
335
- expect(allEdges.length).toBe(2);
336
- // Query only implements edges
337
- const implementsEdges = await store.query.edges({
338
- from_id: issue.id,
339
- type: 'implements',
340
- });
341
- expect(implementsEdges.length).toBe(1);
342
- });
343
- });
344
- // ==========================================================================
345
- // Concurrent Operations
346
- // ==========================================================================
347
- describe('Concurrent Operations', () => {
348
- it('should handle concurrent node creation', async () => {
349
- // Create 10 nodes concurrently
350
- const promises = Array.from({ length: 10 }, (_, i) => store.createNode({
351
- type: 'issue',
352
- title: `Concurrent Issue ${i}`,
353
- status: 'open',
354
- }));
355
- const nodes = await Promise.all(promises);
356
- // All nodes should have unique IDs
357
- const ids = nodes.map((n) => n.id);
358
- const uniqueIds = new Set(ids);
359
- expect(uniqueIds.size).toBe(10);
360
- });
361
- it('should handle concurrent edge creation', async () => {
362
- // Create nodes first
363
- const nodes = await Promise.all(Array.from({ length: 5 }, (_, i) => store.createNode({
364
- type: 'issue',
365
- title: `Issue ${i}`,
366
- status: 'open',
367
- })));
368
- // Create edges concurrently (0→1, 0→2, 0→3, 0→4)
369
- const edgePromises = nodes.slice(1).map((target) => store.createEdge({
370
- from_id: nodes[0].id,
371
- to_id: target.id,
372
- type: 'references',
373
- }));
374
- const edges = await Promise.all(edgePromises);
375
- // All edges should be created
376
- expect(edges.length).toBe(4);
377
- expect(new Set(edges.map((e) => e.id)).size).toBe(4);
378
- });
379
- });
380
- // ==========================================================================
381
- // Empty and Boundary Values
382
- // ==========================================================================
383
- describe('Empty and Boundary Values', () => {
384
- it('should handle empty title', async () => {
385
- // Empty title should be rejected by validation
386
- await expect(store.createNode({
387
- type: 'issue',
388
- title: '',
389
- status: 'open',
390
- })).rejects.toThrow();
391
- });
392
- it('should handle title at max length (500 chars)', async () => {
393
- // System has a 500 character limit for titles
394
- const longTitle = 'A'.repeat(500);
395
- const node = await store.createNode({
396
- type: 'issue',
397
- title: longTitle,
398
- status: 'open',
399
- });
400
- expect(node.title).toBe(longTitle);
401
- });
402
- it('should reject title exceeding max length', async () => {
403
- const tooLongTitle = 'A'.repeat(501);
404
- await expect(store.createNode({
405
- type: 'issue',
406
- title: tooLongTitle,
407
- status: 'open',
408
- })).rejects.toThrow(/exceeds maximum length/i);
409
- });
410
- it('should handle special characters in title', async () => {
411
- const specialTitle = '测试 "quotes" <tags> & symbols 🎉';
412
- const node = await store.createNode({
413
- type: 'spec',
414
- title: specialTitle,
415
- });
416
- expect(node.title).toBe(specialTitle);
417
- });
418
- it('should handle null content', async () => {
419
- const node = await store.createNode({
420
- type: 'spec',
421
- title: 'No Content',
422
- });
423
- expect(node.content).toBeUndefined();
424
- });
425
- it('should handle empty content', async () => {
426
- const node = await store.createNode({
427
- type: 'spec',
428
- title: 'Empty Content',
429
- content: '',
430
- });
431
- expect(node.content).toBe('');
432
- });
433
- });
434
- // ==========================================================================
435
- // Priority Edge Cases
436
- // ==========================================================================
437
- describe('Priority Edge Cases', () => {
438
- it('should handle priority 0 (highest)', async () => {
439
- const node = await store.createNode({
440
- type: 'issue',
441
- title: 'Critical',
442
- status: 'open',
443
- priority: 0,
444
- });
445
- expect(node.priority).toBe(0);
446
- });
447
- it('should handle priority 4 (lowest)', async () => {
448
- const node = await store.createNode({
449
- type: 'issue',
450
- title: 'Low Priority',
451
- status: 'open',
452
- priority: 4,
453
- });
454
- expect(node.priority).toBe(4);
455
- });
456
- it('should reject priority out of range', async () => {
457
- await expect(store.createNode({
458
- type: 'issue',
459
- title: 'Invalid Priority',
460
- status: 'open',
461
- priority: 5,
462
- })).rejects.toThrow();
463
- await expect(store.createNode({
464
- type: 'issue',
465
- title: 'Invalid Priority',
466
- status: 'open',
467
- priority: -1,
468
- })).rejects.toThrow();
469
- });
470
- });
471
- });
472
- //# sourceMappingURL=edge-cases.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"edge-cases.test.js","sourceRoot":"","sources":["../../../src/graph/__tests__/edge-cases.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=expansion.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expansion.test.d.ts","sourceRoot":"","sources":["../../../src/graph/__tests__/expansion.test.ts"],"names":[],"mappings":""}
@@ -1,105 +0,0 @@
1
- import { describe, it, expect, vi } from 'vitest';
2
- import { createQueryExpander, } from '../expansion.js';
3
- function mockStorage() {
4
- return {
5
- createNode: vi.fn(),
6
- getNode: vi.fn(),
7
- updateNode: vi.fn(),
8
- deleteNode: vi.fn(),
9
- queryNodes: vi.fn().mockResolvedValue([]),
10
- createEdge: vi.fn(),
11
- getEdge: vi.fn(),
12
- deleteEdge: vi.fn(),
13
- getEdgesFrom: vi.fn().mockResolvedValue([]),
14
- getEdgesTo: vi.fn().mockResolvedValue([]),
15
- addTag: vi.fn(),
16
- removeTag: vi.fn(),
17
- getTags: vi.fn().mockResolvedValue([]),
18
- getTagsForNodes: vi.fn().mockResolvedValue(new Map()),
19
- getNodesByTag: vi.fn().mockResolvedValue([]),
20
- getReady: vi.fn().mockResolvedValue([
21
- { id: 'i-local', uuid: 'uuid1', type: 'issue', title: 'Local Issue', status: 'open', created_at: '2025-01-01', updated_at: '2025-01-01' },
22
- ]),
23
- runInTransaction: vi.fn(),
24
- markDirty: vi.fn(),
25
- getDirtyNodes: vi.fn().mockResolvedValue([]),
26
- clearDirty: vi.fn(),
27
- close: vi.fn(),
28
- };
29
- }
30
- function mockLocationProvider(hash, readyNodes = []) {
31
- return {
32
- name: `opentasks-${hash}`,
33
- schemes: ['opentasks'],
34
- capabilities: { read: true, write: false, search: true, watch: false, mount: false, feedback: false },
35
- parseUri: vi.fn().mockReturnValue(null),
36
- buildUri: vi.fn().mockReturnValue(''),
37
- isValidUri: vi.fn().mockReturnValue(false),
38
- get: vi.fn().mockResolvedValue(null),
39
- list: vi.fn().mockResolvedValue(readyNodes),
40
- create: vi.fn(),
41
- update: vi.fn(),
42
- delete: vi.fn(),
43
- ready: vi.fn().mockResolvedValue(readyNodes),
44
- close: vi.fn(),
45
- };
46
- }
47
- describe('createQueryExpander', () => {
48
- it('returns only local results with mode=none', async () => {
49
- const storage = mockStorage();
50
- const expander = createQueryExpander(storage, 'local1', new Map());
51
- const result = await expander.expandedReady({ expand: 'none' });
52
- expect(result.local).toHaveLength(1);
53
- expect(result.local[0].id).toBe('i-local');
54
- expect(result.connected).toEqual({});
55
- expect(result.completeness).toBe('full');
56
- });
57
- it('queries connected locations with mode=connections', async () => {
58
- const storage = mockStorage();
59
- const remoteNodes = [
60
- { id: 'i-remote', uri: 'opentasks://remote1/i-remote', type: 'issue', title: 'Remote Issue', fetchedAt: '2025-01-01' },
61
- ];
62
- const providers = new Map();
63
- providers.set('remote1', mockLocationProvider('remote1', remoteNodes));
64
- const expander = createQueryExpander(storage, 'local1', providers);
65
- const result = await expander.expandedReady({ expand: 'connections' });
66
- expect(result.local).toHaveLength(1);
67
- expect(result.connected['remote1']).toHaveLength(1);
68
- expect(result.connected['remote1'][0].id).toBe('i-remote');
69
- expect(result.queriedLocations).toContain('local1');
70
- expect(result.queriedLocations).toContain('remote1');
71
- expect(result.completeness).toBe('full');
72
- });
73
- it('marks partial when providers fail', async () => {
74
- const storage = mockStorage();
75
- const failingProvider = mockLocationProvider('failing1');
76
- failingProvider.ready.mockRejectedValue(new Error('unreachable'));
77
- const providers = new Map();
78
- providers.set('failing1', failingProvider);
79
- const expander = createQueryExpander(storage, 'local1', providers);
80
- const result = await expander.expandedReady({ expand: 'all' });
81
- expect(result.unreachableLocations).toContain('failing1');
82
- expect(result.completeness).toBe('partial');
83
- });
84
- it('expandedQuery uses filter', async () => {
85
- const storage = mockStorage();
86
- const providers = new Map();
87
- const expander = createQueryExpander(storage, 'local1', providers);
88
- await expander.expandedQuery({ type: 'issue', status: 'open' });
89
- expect(storage.queryNodes).toHaveBeenCalledWith({
90
- type: 'issue',
91
- status: 'open',
92
- });
93
- });
94
- it('respects maxLocations', async () => {
95
- const storage = mockStorage();
96
- const providers = new Map();
97
- for (let i = 0; i < 20; i++) {
98
- providers.set(`loc${i}`, mockLocationProvider(`loc${i}`));
99
- }
100
- const expander = createQueryExpander(storage, 'local1', providers);
101
- const result = await expander.expandedReady({ expand: 'all', maxLocations: 5 });
102
- expect(result.queriedLocations.length).toBeLessThanOrEqual(6); // local + 5
103
- });
104
- });
105
- //# sourceMappingURL=expansion.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"expansion.test.js","sourceRoot":"","sources":["../../../src/graph/__tests__/expansion.test.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- /**
2
- * Tests for Provider-Aware Graph Store
3
- */
4
- export {};
5
- //# sourceMappingURL=provider-store.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"provider-store.test.d.ts","sourceRoot":"","sources":["../../../src/graph/__tests__/provider-store.test.ts"],"names":[],"mappings":"AAAA;;GAEG"}