opentasks 0.0.5 → 0.0.6

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 (311) hide show
  1. package/README.md +40 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +153 -8
  4. package/dist/cli.js.map +1 -1
  5. package/dist/config/schema.d.ts +54 -0
  6. package/dist/config/schema.d.ts.map +1 -1
  7. package/dist/config/schema.js +52 -0
  8. package/dist/config/schema.js.map +1 -1
  9. package/dist/core/merge-driver.d.ts +6 -2
  10. package/dist/core/merge-driver.d.ts.map +1 -1
  11. package/dist/core/merge-driver.js +11 -7
  12. package/dist/core/merge-driver.js.map +1 -1
  13. package/dist/core/worktree.js +1 -1
  14. package/dist/core/worktree.js.map +1 -1
  15. package/dist/daemon/ipc.d.ts.map +1 -1
  16. package/dist/daemon/ipc.js +4 -1
  17. package/dist/daemon/ipc.js.map +1 -1
  18. package/dist/daemon/lifecycle.d.ts.map +1 -1
  19. package/dist/daemon/lifecycle.js +5 -0
  20. package/dist/daemon/lifecycle.js.map +1 -1
  21. package/dist/graph/git-graph-syncer.js +1 -1
  22. package/dist/graph/git-graph-syncer.js.map +1 -1
  23. package/dist/providers/from-config.d.ts +3 -0
  24. package/dist/providers/from-config.d.ts.map +1 -1
  25. package/dist/providers/from-config.js +29 -0
  26. package/dist/providers/from-config.js.map +1 -1
  27. package/dist/providers/index.d.ts +3 -0
  28. package/dist/providers/index.d.ts.map +1 -1
  29. package/dist/providers/index.js +6 -0
  30. package/dist/providers/index.js.map +1 -1
  31. package/dist/providers/map-client-factory.d.ts +55 -0
  32. package/dist/providers/map-client-factory.d.ts.map +1 -0
  33. package/dist/providers/map-client-factory.js +123 -0
  34. package/dist/providers/map-client-factory.js.map +1 -0
  35. package/dist/providers/map-event-bridge.d.ts +146 -0
  36. package/dist/providers/map-event-bridge.d.ts.map +1 -0
  37. package/dist/providers/map-event-bridge.js +208 -0
  38. package/dist/providers/map-event-bridge.js.map +1 -0
  39. package/dist/providers/map.d.ts +115 -0
  40. package/dist/providers/map.d.ts.map +1 -0
  41. package/dist/providers/map.js +376 -0
  42. package/dist/providers/map.js.map +1 -0
  43. package/package.json +1 -1
  44. package/dist/__tests__/cli-tools.test.d.ts +0 -8
  45. package/dist/__tests__/cli-tools.test.d.ts.map +0 -1
  46. package/dist/__tests__/cli-tools.test.js +0 -546
  47. package/dist/__tests__/cli-tools.test.js.map +0 -1
  48. package/dist/__tests__/cli.test.d.ts +0 -5
  49. package/dist/__tests__/cli.test.d.ts.map +0 -1
  50. package/dist/__tests__/cli.test.js +0 -77
  51. package/dist/__tests__/cli.test.js.map +0 -1
  52. package/dist/__tests__/p1-p3-gaps.test.d.ts +0 -2
  53. package/dist/__tests__/p1-p3-gaps.test.d.ts.map +0 -1
  54. package/dist/__tests__/p1-p3-gaps.test.js +0 -463
  55. package/dist/__tests__/p1-p3-gaps.test.js.map +0 -1
  56. package/dist/client/__tests__/client-crud.test.d.ts +0 -7
  57. package/dist/client/__tests__/client-crud.test.d.ts.map +0 -1
  58. package/dist/client/__tests__/client-crud.test.js +0 -404
  59. package/dist/client/__tests__/client-crud.test.js.map +0 -1
  60. package/dist/client/__tests__/client.test.d.ts +0 -5
  61. package/dist/client/__tests__/client.test.d.ts.map +0 -1
  62. package/dist/client/__tests__/client.test.js +0 -518
  63. package/dist/client/__tests__/client.test.js.map +0 -1
  64. package/dist/config/__tests__/defaults.test.d.ts +0 -2
  65. package/dist/config/__tests__/defaults.test.d.ts.map +0 -1
  66. package/dist/config/__tests__/defaults.test.js +0 -57
  67. package/dist/config/__tests__/defaults.test.js.map +0 -1
  68. package/dist/config/__tests__/env.test.d.ts +0 -2
  69. package/dist/config/__tests__/env.test.d.ts.map +0 -1
  70. package/dist/config/__tests__/env.test.js +0 -136
  71. package/dist/config/__tests__/env.test.js.map +0 -1
  72. package/dist/config/__tests__/index.test.d.ts +0 -2
  73. package/dist/config/__tests__/index.test.d.ts.map +0 -1
  74. package/dist/config/__tests__/index.test.js +0 -113
  75. package/dist/config/__tests__/index.test.js.map +0 -1
  76. package/dist/config/__tests__/loader.test.d.ts +0 -2
  77. package/dist/config/__tests__/loader.test.d.ts.map +0 -1
  78. package/dist/config/__tests__/loader.test.js +0 -128
  79. package/dist/config/__tests__/loader.test.js.map +0 -1
  80. package/dist/config/__tests__/merge.test.d.ts +0 -2
  81. package/dist/config/__tests__/merge.test.d.ts.map +0 -1
  82. package/dist/config/__tests__/merge.test.js +0 -79
  83. package/dist/config/__tests__/merge.test.js.map +0 -1
  84. package/dist/config/__tests__/schema.test.d.ts +0 -2
  85. package/dist/config/__tests__/schema.test.d.ts.map +0 -1
  86. package/dist/config/__tests__/schema.test.js +0 -300
  87. package/dist/config/__tests__/schema.test.js.map +0 -1
  88. package/dist/core/__tests__/conditional-redirects.test.d.ts +0 -2
  89. package/dist/core/__tests__/conditional-redirects.test.d.ts.map +0 -1
  90. package/dist/core/__tests__/conditional-redirects.test.js +0 -83
  91. package/dist/core/__tests__/conditional-redirects.test.js.map +0 -1
  92. package/dist/core/__tests__/connections.test.d.ts +0 -2
  93. package/dist/core/__tests__/connections.test.d.ts.map +0 -1
  94. package/dist/core/__tests__/connections.test.js +0 -158
  95. package/dist/core/__tests__/connections.test.js.map +0 -1
  96. package/dist/core/__tests__/hash.test.d.ts +0 -2
  97. package/dist/core/__tests__/hash.test.d.ts.map +0 -1
  98. package/dist/core/__tests__/hash.test.js +0 -139
  99. package/dist/core/__tests__/hash.test.js.map +0 -1
  100. package/dist/core/__tests__/id.test.d.ts +0 -2
  101. package/dist/core/__tests__/id.test.d.ts.map +0 -1
  102. package/dist/core/__tests__/id.test.js +0 -142
  103. package/dist/core/__tests__/id.test.js.map +0 -1
  104. package/dist/core/__tests__/location.test.d.ts +0 -2
  105. package/dist/core/__tests__/location.test.d.ts.map +0 -1
  106. package/dist/core/__tests__/location.test.js +0 -77
  107. package/dist/core/__tests__/location.test.js.map +0 -1
  108. package/dist/core/__tests__/merge-driver.test.d.ts +0 -2
  109. package/dist/core/__tests__/merge-driver.test.d.ts.map +0 -1
  110. package/dist/core/__tests__/merge-driver.test.js +0 -218
  111. package/dist/core/__tests__/merge-driver.test.js.map +0 -1
  112. package/dist/core/__tests__/redirects.test.d.ts +0 -2
  113. package/dist/core/__tests__/redirects.test.d.ts.map +0 -1
  114. package/dist/core/__tests__/redirects.test.js +0 -123
  115. package/dist/core/__tests__/redirects.test.js.map +0 -1
  116. package/dist/core/__tests__/resolve-location-target.test.d.ts +0 -8
  117. package/dist/core/__tests__/resolve-location-target.test.d.ts.map +0 -1
  118. package/dist/core/__tests__/resolve-location-target.test.js +0 -303
  119. package/dist/core/__tests__/resolve-location-target.test.js.map +0 -1
  120. package/dist/core/__tests__/uri.test.d.ts +0 -2
  121. package/dist/core/__tests__/uri.test.d.ts.map +0 -1
  122. package/dist/core/__tests__/uri.test.js +0 -159
  123. package/dist/core/__tests__/uri.test.js.map +0 -1
  124. package/dist/core/__tests__/worktree.test.d.ts +0 -2
  125. package/dist/core/__tests__/worktree.test.d.ts.map +0 -1
  126. package/dist/core/__tests__/worktree.test.js +0 -120
  127. package/dist/core/__tests__/worktree.test.js.map +0 -1
  128. package/dist/daemon/__tests__/flush.test.d.ts +0 -5
  129. package/dist/daemon/__tests__/flush.test.d.ts.map +0 -1
  130. package/dist/daemon/__tests__/flush.test.js +0 -213
  131. package/dist/daemon/__tests__/flush.test.js.map +0 -1
  132. package/dist/daemon/__tests__/integration.test.d.ts +0 -7
  133. package/dist/daemon/__tests__/integration.test.d.ts.map +0 -1
  134. package/dist/daemon/__tests__/integration.test.js +0 -276
  135. package/dist/daemon/__tests__/integration.test.js.map +0 -1
  136. package/dist/daemon/__tests__/ipc.test.d.ts +0 -5
  137. package/dist/daemon/__tests__/ipc.test.d.ts.map +0 -1
  138. package/dist/daemon/__tests__/ipc.test.js +0 -314
  139. package/dist/daemon/__tests__/ipc.test.js.map +0 -1
  140. package/dist/daemon/__tests__/lifecycle.test.d.ts +0 -5
  141. package/dist/daemon/__tests__/lifecycle.test.d.ts.map +0 -1
  142. package/dist/daemon/__tests__/lifecycle.test.js +0 -301
  143. package/dist/daemon/__tests__/lifecycle.test.js.map +0 -1
  144. package/dist/daemon/__tests__/lock.test.d.ts +0 -5
  145. package/dist/daemon/__tests__/lock.test.d.ts.map +0 -1
  146. package/dist/daemon/__tests__/lock.test.js +0 -192
  147. package/dist/daemon/__tests__/lock.test.js.map +0 -1
  148. package/dist/daemon/__tests__/methods/graph.test.d.ts +0 -5
  149. package/dist/daemon/__tests__/methods/graph.test.d.ts.map +0 -1
  150. package/dist/daemon/__tests__/methods/graph.test.js +0 -309
  151. package/dist/daemon/__tests__/methods/graph.test.js.map +0 -1
  152. package/dist/daemon/__tests__/methods/provider.test.d.ts +0 -7
  153. package/dist/daemon/__tests__/methods/provider.test.d.ts.map +0 -1
  154. package/dist/daemon/__tests__/methods/provider.test.js +0 -181
  155. package/dist/daemon/__tests__/methods/provider.test.js.map +0 -1
  156. package/dist/daemon/__tests__/methods/tools.test.d.ts +0 -5
  157. package/dist/daemon/__tests__/methods/tools.test.d.ts.map +0 -1
  158. package/dist/daemon/__tests__/methods/tools.test.js +0 -587
  159. package/dist/daemon/__tests__/methods/tools.test.js.map +0 -1
  160. package/dist/daemon/__tests__/multi-location.test.d.ts +0 -8
  161. package/dist/daemon/__tests__/multi-location.test.d.ts.map +0 -1
  162. package/dist/daemon/__tests__/multi-location.test.js +0 -669
  163. package/dist/daemon/__tests__/multi-location.test.js.map +0 -1
  164. package/dist/daemon/__tests__/registry.test.d.ts +0 -5
  165. package/dist/daemon/__tests__/registry.test.d.ts.map +0 -1
  166. package/dist/daemon/__tests__/registry.test.js +0 -208
  167. package/dist/daemon/__tests__/registry.test.js.map +0 -1
  168. package/dist/daemon/__tests__/watcher.test.d.ts +0 -5
  169. package/dist/daemon/__tests__/watcher.test.d.ts.map +0 -1
  170. package/dist/daemon/__tests__/watcher.test.js +0 -234
  171. package/dist/daemon/__tests__/watcher.test.js.map +0 -1
  172. package/dist/daemon/methods/__tests__/graph.test.d.ts +0 -5
  173. package/dist/daemon/methods/__tests__/graph.test.d.ts.map +0 -1
  174. package/dist/daemon/methods/__tests__/graph.test.js +0 -274
  175. package/dist/daemon/methods/__tests__/graph.test.js.map +0 -1
  176. package/dist/daemon/methods/__tests__/provider.test.d.ts +0 -5
  177. package/dist/daemon/methods/__tests__/provider.test.d.ts.map +0 -1
  178. package/dist/daemon/methods/__tests__/provider.test.js +0 -184
  179. package/dist/daemon/methods/__tests__/provider.test.js.map +0 -1
  180. package/dist/daemon/methods/__tests__/tools.test.d.ts +0 -5
  181. package/dist/daemon/methods/__tests__/tools.test.d.ts.map +0 -1
  182. package/dist/daemon/methods/__tests__/tools.test.js +0 -295
  183. package/dist/daemon/methods/__tests__/tools.test.js.map +0 -1
  184. package/dist/graph/__tests__/EdgeTypeRegistry.test.d.ts +0 -2
  185. package/dist/graph/__tests__/EdgeTypeRegistry.test.d.ts.map +0 -1
  186. package/dist/graph/__tests__/EdgeTypeRegistry.test.js +0 -212
  187. package/dist/graph/__tests__/EdgeTypeRegistry.test.js.map +0 -1
  188. package/dist/graph/__tests__/FederatedGraph.test.d.ts +0 -2
  189. package/dist/graph/__tests__/FederatedGraph.test.d.ts.map +0 -1
  190. package/dist/graph/__tests__/FederatedGraph.test.js +0 -661
  191. package/dist/graph/__tests__/FederatedGraph.test.js.map +0 -1
  192. package/dist/graph/__tests__/GraphologyAdapter.test.d.ts +0 -2
  193. package/dist/graph/__tests__/GraphologyAdapter.test.d.ts.map +0 -1
  194. package/dist/graph/__tests__/GraphologyAdapter.test.js +0 -326
  195. package/dist/graph/__tests__/GraphologyAdapter.test.js.map +0 -1
  196. package/dist/graph/__tests__/HydratingFederatedGraph.test.d.ts +0 -2
  197. package/dist/graph/__tests__/HydratingFederatedGraph.test.d.ts.map +0 -1
  198. package/dist/graph/__tests__/HydratingFederatedGraph.test.js +0 -587
  199. package/dist/graph/__tests__/HydratingFederatedGraph.test.js.map +0 -1
  200. package/dist/graph/__tests__/debounce.test.d.ts +0 -5
  201. package/dist/graph/__tests__/debounce.test.d.ts.map +0 -1
  202. package/dist/graph/__tests__/debounce.test.js +0 -195
  203. package/dist/graph/__tests__/debounce.test.js.map +0 -1
  204. package/dist/graph/__tests__/edge-cases.test.d.ts +0 -8
  205. package/dist/graph/__tests__/edge-cases.test.d.ts.map +0 -1
  206. package/dist/graph/__tests__/edge-cases.test.js +0 -472
  207. package/dist/graph/__tests__/edge-cases.test.js.map +0 -1
  208. package/dist/graph/__tests__/expansion.test.d.ts +0 -2
  209. package/dist/graph/__tests__/expansion.test.d.ts.map +0 -1
  210. package/dist/graph/__tests__/expansion.test.js +0 -105
  211. package/dist/graph/__tests__/expansion.test.js.map +0 -1
  212. package/dist/graph/__tests__/provider-store.test.d.ts +0 -5
  213. package/dist/graph/__tests__/provider-store.test.d.ts.map +0 -1
  214. package/dist/graph/__tests__/provider-store.test.js +0 -791
  215. package/dist/graph/__tests__/provider-store.test.js.map +0 -1
  216. package/dist/graph/__tests__/query.test.d.ts +0 -5
  217. package/dist/graph/__tests__/query.test.d.ts.map +0 -1
  218. package/dist/graph/__tests__/query.test.js +0 -774
  219. package/dist/graph/__tests__/query.test.js.map +0 -1
  220. package/dist/graph/__tests__/store.test.d.ts +0 -5
  221. package/dist/graph/__tests__/store.test.d.ts.map +0 -1
  222. package/dist/graph/__tests__/store.test.js +0 -489
  223. package/dist/graph/__tests__/store.test.js.map +0 -1
  224. package/dist/graph/__tests__/sync.test.d.ts +0 -5
  225. package/dist/graph/__tests__/sync.test.d.ts.map +0 -1
  226. package/dist/graph/__tests__/sync.test.js +0 -129
  227. package/dist/graph/__tests__/sync.test.js.map +0 -1
  228. package/dist/graph/__tests__/validation.test.d.ts +0 -2
  229. package/dist/graph/__tests__/validation.test.d.ts.map +0 -1
  230. package/dist/graph/__tests__/validation.test.js +0 -521
  231. package/dist/graph/__tests__/validation.test.js.map +0 -1
  232. package/dist/providers/__tests__/beads.test.d.ts +0 -5
  233. package/dist/providers/__tests__/beads.test.d.ts.map +0 -1
  234. package/dist/providers/__tests__/beads.test.js +0 -591
  235. package/dist/providers/__tests__/beads.test.js.map +0 -1
  236. package/dist/providers/__tests__/claude-tasks.test.d.ts +0 -5
  237. package/dist/providers/__tests__/claude-tasks.test.d.ts.map +0 -1
  238. package/dist/providers/__tests__/claude-tasks.test.js +0 -392
  239. package/dist/providers/__tests__/claude-tasks.test.js.map +0 -1
  240. package/dist/providers/__tests__/from-config.test.d.ts +0 -5
  241. package/dist/providers/__tests__/from-config.test.d.ts.map +0 -1
  242. package/dist/providers/__tests__/from-config.test.js +0 -152
  243. package/dist/providers/__tests__/from-config.test.js.map +0 -1
  244. package/dist/providers/__tests__/materialization.test.d.ts +0 -5
  245. package/dist/providers/__tests__/materialization.test.d.ts.map +0 -1
  246. package/dist/providers/__tests__/materialization.test.js +0 -407
  247. package/dist/providers/__tests__/materialization.test.js.map +0 -1
  248. package/dist/providers/__tests__/native.test.d.ts +0 -5
  249. package/dist/providers/__tests__/native.test.d.ts.map +0 -1
  250. package/dist/providers/__tests__/native.test.js +0 -566
  251. package/dist/providers/__tests__/native.test.js.map +0 -1
  252. package/dist/providers/__tests__/registry.test.d.ts +0 -5
  253. package/dist/providers/__tests__/registry.test.d.ts.map +0 -1
  254. package/dist/providers/__tests__/registry.test.js +0 -183
  255. package/dist/providers/__tests__/registry.test.js.map +0 -1
  256. package/dist/providers/traits/__tests__/RelationshipQueryable.test.d.ts +0 -2
  257. package/dist/providers/traits/__tests__/RelationshipQueryable.test.d.ts.map +0 -1
  258. package/dist/providers/traits/__tests__/RelationshipQueryable.test.js +0 -169
  259. package/dist/providers/traits/__tests__/RelationshipQueryable.test.js.map +0 -1
  260. package/dist/providers/traits/__tests__/TaskManageable.test.d.ts +0 -2
  261. package/dist/providers/traits/__tests__/TaskManageable.test.d.ts.map +0 -1
  262. package/dist/providers/traits/__tests__/TaskManageable.test.js +0 -172
  263. package/dist/providers/traits/__tests__/TaskManageable.test.js.map +0 -1
  264. package/dist/schema/__tests__/validation.test.d.ts +0 -2
  265. package/dist/schema/__tests__/validation.test.d.ts.map +0 -1
  266. package/dist/schema/__tests__/validation.test.js +0 -241
  267. package/dist/schema/__tests__/validation.test.js.map +0 -1
  268. package/dist/storage/__tests__/atomic-write.test.d.ts +0 -5
  269. package/dist/storage/__tests__/atomic-write.test.d.ts.map +0 -1
  270. package/dist/storage/__tests__/atomic-write.test.js +0 -170
  271. package/dist/storage/__tests__/atomic-write.test.js.map +0 -1
  272. package/dist/storage/__tests__/file-lock.test.d.ts +0 -2
  273. package/dist/storage/__tests__/file-lock.test.d.ts.map +0 -1
  274. package/dist/storage/__tests__/file-lock.test.js +0 -89
  275. package/dist/storage/__tests__/file-lock.test.js.map +0 -1
  276. package/dist/storage/__tests__/jsonl.test.d.ts +0 -2
  277. package/dist/storage/__tests__/jsonl.test.d.ts.map +0 -1
  278. package/dist/storage/__tests__/jsonl.test.js +0 -228
  279. package/dist/storage/__tests__/jsonl.test.js.map +0 -1
  280. package/dist/storage/__tests__/locked-writer.test.d.ts +0 -2
  281. package/dist/storage/__tests__/locked-writer.test.d.ts.map +0 -1
  282. package/dist/storage/__tests__/locked-writer.test.js +0 -109
  283. package/dist/storage/__tests__/locked-writer.test.js.map +0 -1
  284. package/dist/storage/__tests__/sqlite.test.d.ts +0 -2
  285. package/dist/storage/__tests__/sqlite.test.d.ts.map +0 -1
  286. package/dist/storage/__tests__/sqlite.test.js +0 -470
  287. package/dist/storage/__tests__/sqlite.test.js.map +0 -1
  288. package/dist/tools/__tests__/annotate.test.d.ts +0 -5
  289. package/dist/tools/__tests__/annotate.test.d.ts.map +0 -1
  290. package/dist/tools/__tests__/annotate.test.js +0 -314
  291. package/dist/tools/__tests__/annotate.test.js.map +0 -1
  292. package/dist/tools/__tests__/link.test.d.ts +0 -5
  293. package/dist/tools/__tests__/link.test.d.ts.map +0 -1
  294. package/dist/tools/__tests__/link.test.js +0 -245
  295. package/dist/tools/__tests__/link.test.js.map +0 -1
  296. package/dist/tools/__tests__/query.test.d.ts +0 -5
  297. package/dist/tools/__tests__/query.test.d.ts.map +0 -1
  298. package/dist/tools/__tests__/query.test.js +0 -288
  299. package/dist/tools/__tests__/query.test.js.map +0 -1
  300. package/dist/tools/__tests__/task.test.d.ts +0 -5
  301. package/dist/tools/__tests__/task.test.d.ts.map +0 -1
  302. package/dist/tools/__tests__/task.test.js +0 -178
  303. package/dist/tools/__tests__/task.test.js.map +0 -1
  304. package/dist/tracking/claude-task-reconstructor.d.ts +0 -41
  305. package/dist/tracking/claude-task-reconstructor.d.ts.map +0 -1
  306. package/dist/tracking/claude-task-reconstructor.js +0 -91
  307. package/dist/tracking/claude-task-reconstructor.js.map +0 -1
  308. package/dist/tracking/plan-mode-tracker.d.ts +0 -20
  309. package/dist/tracking/plan-mode-tracker.d.ts.map +0 -1
  310. package/dist/tracking/plan-mode-tracker.js +0 -35
  311. package/dist/tracking/plan-mode-tracker.js.map +0 -1
@@ -0,0 +1,376 @@
1
+ /**
2
+ * MAP (Multi-Agent Protocol) Provider
3
+ *
4
+ * Provider that bridges MAP task operations with OpenTasks.
5
+ * Handles map:// URI scheme for tasks managed via MAP.
6
+ *
7
+ * Supports three scenarios:
8
+ * 1. Same OpenTasks repo — MAP used for real-time coordination, native provider resolves tasks
9
+ * 2. Cross-system — tasks on a remote system accessed via MAP task methods
10
+ * 3. Mixed — local tasks with MAP-based assignment to external agents
11
+ *
12
+ * The provider depends on a MAPTaskClient interface, which can be satisfied by:
13
+ * - A MAP SDK ClientConnection (hub topology)
14
+ * - A MAP SDK BaseConnection wrapper (peer topology)
15
+ * - A local adapter (same-repo coordination, no network)
16
+ */
17
+ import { ProviderError } from './types.js';
18
+ // ============================================================================
19
+ // Constants
20
+ // ============================================================================
21
+ /** Pattern for map:// URIs: map://[systemId/]taskId */
22
+ const MAP_URI_PATTERN = /^map:\/\/(?:([^/]+)\/)?(.+)$/i;
23
+ // ============================================================================
24
+ // Status Mapping
25
+ // ============================================================================
26
+ /**
27
+ * Map MAP task status to OpenTasks normalized status
28
+ */
29
+ function mapStatusToOpenTasks(status) {
30
+ switch (status) {
31
+ case 'open': return 'open';
32
+ case 'in_progress': return 'in_progress';
33
+ case 'blocked': return 'blocked';
34
+ case 'completed': return 'closed';
35
+ case 'failed': return 'closed';
36
+ default: return 'open';
37
+ }
38
+ }
39
+ /**
40
+ * Map OpenTasks status to MAP task status
41
+ */
42
+ function mapStatusToMAP(status) {
43
+ switch (status?.toLowerCase()) {
44
+ case 'open': return 'open';
45
+ case 'in_progress': return 'in_progress';
46
+ case 'blocked': return 'blocked';
47
+ case 'closed': return 'completed';
48
+ case 'completed': return 'completed';
49
+ case 'failed': return 'failed';
50
+ default: return 'open';
51
+ }
52
+ }
53
+ /**
54
+ * Map semantic task action to MAP status
55
+ */
56
+ function actionToMAPStatus(action) {
57
+ switch (action) {
58
+ case 'start': return 'in_progress';
59
+ case 'complete': return 'completed';
60
+ case 'block': return 'blocked';
61
+ case 'reopen': return 'open';
62
+ case 'close': return 'completed';
63
+ }
64
+ }
65
+ // ============================================================================
66
+ // Type Conversion
67
+ // ============================================================================
68
+ /**
69
+ * Convert MAP task to ProviderNode
70
+ */
71
+ function taskToProviderNode(task, systemId) {
72
+ return {
73
+ id: task.id,
74
+ uri: `map://${systemId}/${task.id}`,
75
+ type: 'task',
76
+ title: task.title ?? '',
77
+ content: task.description,
78
+ status: mapStatusToOpenTasks(task.status),
79
+ priority: task.meta?.priority ?? 2,
80
+ rawData: {
81
+ assignee: task.assignee,
82
+ status: task.status,
83
+ meta: task.meta,
84
+ },
85
+ fetchedAt: new Date().toISOString(),
86
+ };
87
+ }
88
+ // ============================================================================
89
+ // MAP Provider Implementation
90
+ // ============================================================================
91
+ /**
92
+ * Create a MAP provider
93
+ *
94
+ * @param config - Provider configuration including the MAPTaskClient
95
+ * @returns A Provider that implements TaskManageable and optionally Watchable
96
+ */
97
+ export function createMAPProvider(config) {
98
+ const { client, systemId = 'default', timeout = 30000 } = config;
99
+ const hasEvents = typeof client.onTaskEvent === 'function';
100
+ let watchCallback = null;
101
+ let unsubscribeEvents = null;
102
+ const capabilities = {
103
+ read: true,
104
+ write: true,
105
+ search: false,
106
+ watch: hasEvents,
107
+ mount: true,
108
+ feedback: false,
109
+ };
110
+ const taskCapabilities = {
111
+ actions: ['start', 'complete', 'block', 'reopen', 'close'],
112
+ supportsAssignment: true,
113
+ supportsReadyQuery: true,
114
+ statusModel: ['open', 'in_progress', 'blocked', 'completed', 'failed'],
115
+ };
116
+ const watchGranularity = {
117
+ reportsChangedFields: false,
118
+ reportsPreviousValues: true,
119
+ reportsEdgeChanges: false,
120
+ mechanism: 'stream',
121
+ };
122
+ const provider = {
123
+ name: 'map',
124
+ schemes: ['map'],
125
+ capabilities,
126
+ // =========================================================================
127
+ // URI Operations
128
+ // =========================================================================
129
+ parseUri(uri) {
130
+ const match = uri.match(MAP_URI_PATTERN);
131
+ if (match) {
132
+ return {
133
+ scheme: 'map',
134
+ workspace: match[1] || systemId,
135
+ id: match[2],
136
+ isRelative: !match[1] || match[1] === systemId,
137
+ };
138
+ }
139
+ return null;
140
+ },
141
+ buildUri(id, options) {
142
+ const ws = options?.workspace ?? systemId;
143
+ return `map://${ws}/${id}`;
144
+ },
145
+ isValidUri(uri) {
146
+ return this.parseUri(uri) !== null;
147
+ },
148
+ // =========================================================================
149
+ // CRUD Operations
150
+ // =========================================================================
151
+ async get(id, _context) {
152
+ const parsed = this.parseUri(id);
153
+ const taskId = parsed?.id ?? id;
154
+ try {
155
+ const { tasks } = await client.listTasks({
156
+ limit: 100,
157
+ });
158
+ const task = tasks.find((t) => t.id === taskId);
159
+ return task ? taskToProviderNode(task, systemId) : null;
160
+ }
161
+ catch (error) {
162
+ throw new ProviderError('OPERATION_FAILED', `Failed to get MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
163
+ }
164
+ },
165
+ async list(filter, _context) {
166
+ try {
167
+ const mapFilter = {};
168
+ if (filter?.status) {
169
+ mapFilter.status = mapStatusToMAP(filter.status);
170
+ }
171
+ const { tasks } = await client.listTasks({
172
+ filter: Object.keys(mapFilter).length > 0 ? mapFilter : undefined,
173
+ limit: filter?.limit,
174
+ });
175
+ return tasks.map((task) => taskToProviderNode(task, systemId));
176
+ }
177
+ catch (error) {
178
+ throw new ProviderError('OPERATION_FAILED', `Failed to list MAP tasks: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
179
+ }
180
+ },
181
+ async create(input, _context) {
182
+ try {
183
+ const { task } = await client.createTask({
184
+ task: {
185
+ title: input.title,
186
+ description: input.content,
187
+ status: input.status ? mapStatusToMAP(input.status) : 'open',
188
+ meta: {
189
+ ...input.metadata,
190
+ ...input.extensions,
191
+ provider: 'opentasks',
192
+ priority: input.priority,
193
+ },
194
+ },
195
+ });
196
+ return taskToProviderNode(task, systemId);
197
+ }
198
+ catch (error) {
199
+ throw new ProviderError('OPERATION_FAILED', `Failed to create MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
200
+ }
201
+ },
202
+ async update(id, updates, _context) {
203
+ const parsed = this.parseUri(id);
204
+ const taskId = parsed?.id ?? id;
205
+ try {
206
+ const { task } = await client.updateTask({
207
+ taskId,
208
+ ...(updates.title !== undefined && { title: updates.title }),
209
+ ...(updates.content !== undefined && { description: updates.content }),
210
+ ...(updates.status !== undefined && { status: mapStatusToMAP(updates.status) }),
211
+ ...(updates.metadata !== undefined && { meta: updates.metadata }),
212
+ });
213
+ return taskToProviderNode(task, systemId);
214
+ }
215
+ catch (error) {
216
+ throw new ProviderError('OPERATION_FAILED', `Failed to update MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
217
+ }
218
+ },
219
+ async delete(id, _context) {
220
+ // MAP doesn't have a delete method — mark as failed/completed instead
221
+ const parsed = this.parseUri(id);
222
+ const taskId = parsed?.id ?? id;
223
+ try {
224
+ await client.updateTask({
225
+ taskId,
226
+ status: 'failed',
227
+ meta: { deleted: true, deletedAt: new Date().toISOString() },
228
+ });
229
+ }
230
+ catch (error) {
231
+ throw new ProviderError('OPERATION_FAILED', `Failed to delete MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
232
+ }
233
+ },
234
+ // =========================================================================
235
+ // TaskManageable Trait
236
+ // =========================================================================
237
+ taskCapabilities,
238
+ async transitionTask(id, action, _context) {
239
+ const parsed = this.parseUri(id);
240
+ const taskId = parsed?.id ?? id;
241
+ try {
242
+ const { task } = await client.updateTask({
243
+ taskId,
244
+ status: actionToMAPStatus(action),
245
+ });
246
+ return taskToProviderNode(task, systemId);
247
+ }
248
+ catch (error) {
249
+ throw new ProviderError('OPERATION_FAILED', `Failed to transition MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
250
+ }
251
+ },
252
+ async readyTasks(options, _context) {
253
+ try {
254
+ const { tasks } = await client.listTasks({
255
+ filter: {
256
+ status: 'open',
257
+ ...(options?.assignee && { assignee: options.assignee }),
258
+ },
259
+ limit: options?.limit,
260
+ });
261
+ let result = tasks.map((task) => taskToProviderNode(task, systemId));
262
+ // Filter by priority if specified (MAP doesn't have native priority filtering)
263
+ if (options?.priority !== undefined) {
264
+ result = result.filter((node) => (node.priority ?? 0) >= options.priority);
265
+ }
266
+ return result;
267
+ }
268
+ catch (error) {
269
+ throw new ProviderError('OPERATION_FAILED', `Failed to query ready MAP tasks: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
270
+ }
271
+ },
272
+ async assignTask(id, assignee, _context) {
273
+ const parsed = this.parseUri(id);
274
+ const taskId = parsed?.id ?? id;
275
+ try {
276
+ const { task } = await client.assignTask(taskId, assignee);
277
+ return taskToProviderNode(task, systemId);
278
+ }
279
+ catch (error) {
280
+ throw new ProviderError('OPERATION_FAILED', `Failed to assign MAP task: ${error instanceof Error ? error.message : String(error)}`, 'map', error instanceof Error ? error : undefined);
281
+ }
282
+ },
283
+ async validActions(id, _context) {
284
+ const node = await this.get(id);
285
+ if (!node)
286
+ return [];
287
+ const status = node.rawData?.status;
288
+ switch (status) {
289
+ case 'open': return ['start', 'block', 'close'];
290
+ case 'in_progress': return ['complete', 'block'];
291
+ case 'blocked': return ['reopen', 'close'];
292
+ case 'completed': return ['reopen'];
293
+ case 'failed': return ['reopen'];
294
+ default: return ['start', 'complete', 'block', 'reopen', 'close'];
295
+ }
296
+ },
297
+ };
298
+ // =========================================================================
299
+ // Watchable Trait (conditional — only if client supports events)
300
+ // =========================================================================
301
+ if (hasEvents) {
302
+ Object.assign(provider, {
303
+ watchGranularity,
304
+ startWatching(callback) {
305
+ watchCallback = callback;
306
+ unsubscribeEvents = client.onTaskEvent((event) => {
307
+ const { type, data } = event;
308
+ switch (type) {
309
+ case 'task.created': {
310
+ const task = data.task;
311
+ if (task) {
312
+ callback({
313
+ kind: 'node',
314
+ event: {
315
+ type: 'created',
316
+ nodeId: task.id,
317
+ uri: `map://${systemId}/${task.id}`,
318
+ node: taskToProviderNode(task, systemId),
319
+ timestamp: new Date().toISOString(),
320
+ },
321
+ });
322
+ }
323
+ break;
324
+ }
325
+ case 'task.assigned':
326
+ case 'task.status': {
327
+ const taskId = data.taskId;
328
+ if (taskId) {
329
+ callback({
330
+ kind: 'node',
331
+ event: {
332
+ type: 'updated',
333
+ nodeId: taskId,
334
+ uri: `map://${systemId}/${taskId}`,
335
+ previousValues: type === 'task.status' ? { status: data.previous } : undefined,
336
+ timestamp: new Date().toISOString(),
337
+ },
338
+ });
339
+ }
340
+ break;
341
+ }
342
+ case 'task.completed': {
343
+ const taskId = data.taskId;
344
+ if (taskId) {
345
+ callback({
346
+ kind: 'node',
347
+ event: {
348
+ type: 'updated',
349
+ nodeId: taskId,
350
+ uri: `map://${systemId}/${taskId}`,
351
+ changedFields: ['status'],
352
+ previousValues: { status: 'in_progress' },
353
+ timestamp: new Date().toISOString(),
354
+ },
355
+ });
356
+ }
357
+ break;
358
+ }
359
+ }
360
+ });
361
+ },
362
+ stopWatching() {
363
+ if (unsubscribeEvents) {
364
+ unsubscribeEvents();
365
+ unsubscribeEvents = null;
366
+ }
367
+ watchCallback = null;
368
+ },
369
+ get isWatching() {
370
+ return watchCallback !== null;
371
+ },
372
+ });
373
+ }
374
+ return provider;
375
+ }
376
+ //# sourceMappingURL=map.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"map.js","sourceRoot":"","sources":["../../src/providers/map.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opentasks",
3
- "version": "0.0.5",
3
+ "version": "0.0.6",
4
4
  "description": "Universal task graph data structure",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -1,8 +0,0 @@
1
- /**
2
- * Tests for CLI Tool Commands
3
- *
4
- * Tests link, query, annotate, create, get, update, delete commands
5
- * by calling the exported functions with a mocked OpenTasksClient.
6
- */
7
- export {};
8
- //# sourceMappingURL=cli-tools.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-tools.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/cli-tools.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}