@hasna/todos 0.11.49 → 0.11.51

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 (581) hide show
  1. package/dist/capabilities.d.ts +32 -0
  2. package/dist/capabilities.d.ts.map +1 -0
  3. package/dist/cli/brains.d.ts +3 -0
  4. package/dist/cli/brains.d.ts.map +1 -0
  5. package/dist/cli/commands/agent-commands.d.ts +3 -0
  6. package/dist/cli/commands/agent-commands.d.ts.map +1 -0
  7. package/dist/cli/commands/agent-reliability-commands.d.ts +3 -0
  8. package/dist/cli/commands/agent-reliability-commands.d.ts.map +1 -0
  9. package/dist/cli/commands/api-key-commands.d.ts +3 -0
  10. package/dist/cli/commands/api-key-commands.d.ts.map +1 -0
  11. package/dist/cli/commands/audit-ledger-commands.d.ts +3 -0
  12. package/dist/cli/commands/audit-ledger-commands.d.ts.map +1 -0
  13. package/dist/cli/commands/capacity-commands.d.ts +3 -0
  14. package/dist/cli/commands/capacity-commands.d.ts.map +1 -0
  15. package/dist/cli/commands/config-serve-commands.d.ts +3 -0
  16. package/dist/cli/commands/config-serve-commands.d.ts.map +1 -0
  17. package/dist/cli/commands/dispatch.d.ts +3 -0
  18. package/dist/cli/commands/dispatch.d.ts.map +1 -0
  19. package/dist/cli/commands/environment-snapshots.d.ts +3 -0
  20. package/dist/cli/commands/environment-snapshots.d.ts.map +1 -0
  21. package/dist/cli/commands/help-commands.d.ts +3 -0
  22. package/dist/cli/commands/help-commands.d.ts.map +1 -0
  23. package/dist/cli/commands/knowledge-commands.d.ts +3 -0
  24. package/dist/cli/commands/knowledge-commands.d.ts.map +1 -0
  25. package/dist/cli/commands/local-backup-commands.d.ts +3 -0
  26. package/dist/cli/commands/local-backup-commands.d.ts.map +1 -0
  27. package/dist/cli/commands/local-snapshot-commands.d.ts +3 -0
  28. package/dist/cli/commands/local-snapshot-commands.d.ts.map +1 -0
  29. package/dist/cli/commands/machines.d.ts +3 -0
  30. package/dist/cli/commands/machines.d.ts.map +1 -0
  31. package/dist/cli/commands/mcp-hooks-commands.d.ts +3 -0
  32. package/dist/cli/commands/mcp-hooks-commands.d.ts.map +1 -0
  33. package/dist/cli/commands/onboarding-commands.d.ts +3 -0
  34. package/dist/cli/commands/onboarding-commands.d.ts.map +1 -0
  35. package/dist/cli/commands/plan-template-commands.d.ts +3 -0
  36. package/dist/cli/commands/plan-template-commands.d.ts.map +1 -0
  37. package/dist/cli/commands/project-commands.d.ts +3 -0
  38. package/dist/cli/commands/project-commands.d.ts.map +1 -0
  39. package/dist/cli/commands/query-commands.d.ts +3 -0
  40. package/dist/cli/commands/query-commands.d.ts.map +1 -0
  41. package/dist/cli/commands/release-compatibility-commands.d.ts +3 -0
  42. package/dist/cli/commands/release-compatibility-commands.d.ts.map +1 -0
  43. package/dist/cli/commands/retrospective-commands.d.ts +3 -0
  44. package/dist/cli/commands/retrospective-commands.d.ts.map +1 -0
  45. package/dist/cli/commands/review-queue-commands.d.ts +3 -0
  46. package/dist/cli/commands/review-queue-commands.d.ts.map +1 -0
  47. package/dist/cli/commands/risk-commands.d.ts +3 -0
  48. package/dist/cli/commands/risk-commands.d.ts.map +1 -0
  49. package/dist/cli/commands/roadmap-commands.d.ts +3 -0
  50. package/dist/cli/commands/roadmap-commands.d.ts.map +1 -0
  51. package/dist/cli/commands/scale-hardening-commands.d.ts +3 -0
  52. package/dist/cli/commands/scale-hardening-commands.d.ts.map +1 -0
  53. package/dist/cli/commands/sdk-fixture-commands.d.ts +3 -0
  54. package/dist/cli/commands/sdk-fixture-commands.d.ts.map +1 -0
  55. package/dist/cli/commands/task-commands.d.ts +3 -0
  56. package/dist/cli/commands/task-commands.d.ts.map +1 -0
  57. package/dist/cli/commands/usage-ledger-commands.d.ts +3 -0
  58. package/dist/cli/commands/usage-ledger-commands.d.ts.map +1 -0
  59. package/dist/cli/components/App.d.ts +2 -0
  60. package/dist/cli/components/App.d.ts.map +1 -0
  61. package/dist/cli/components/Dashboard.d.ts +9 -0
  62. package/dist/cli/components/Dashboard.d.ts.map +1 -0
  63. package/dist/cli/components/Header.d.ts +8 -0
  64. package/dist/cli/components/Header.d.ts.map +1 -0
  65. package/dist/cli/components/ProjectList.d.ts +8 -0
  66. package/dist/cli/components/ProjectList.d.ts.map +1 -0
  67. package/dist/cli/components/SearchView.d.ts +10 -0
  68. package/dist/cli/components/SearchView.d.ts.map +1 -0
  69. package/dist/cli/components/TaskDetail.d.ts +7 -0
  70. package/dist/cli/components/TaskDetail.d.ts.map +1 -0
  71. package/dist/cli/components/TaskForm.d.ts +15 -0
  72. package/dist/cli/components/TaskForm.d.ts.map +1 -0
  73. package/dist/cli/components/TaskList.d.ts +8 -0
  74. package/dist/cli/components/TaskList.d.ts.map +1 -0
  75. package/dist/cli/helpers.d.ts +22 -0
  76. package/dist/cli/helpers.d.ts.map +1 -0
  77. package/dist/cli/index.d.ts +3 -0
  78. package/dist/cli/index.d.ts.map +1 -0
  79. package/dist/cli/index.js +243 -18
  80. package/dist/cli-mcp-parity.d.ts +41 -0
  81. package/dist/cli-mcp-parity.d.ts.map +1 -0
  82. package/dist/contracts.d.ts +87 -0
  83. package/dist/contracts.d.ts.map +1 -0
  84. package/dist/contracts.js +18707 -0
  85. package/dist/db/agent-metrics.d.ts +135 -0
  86. package/dist/db/agent-metrics.d.ts.map +1 -0
  87. package/dist/db/agent-names.d.ts +24 -0
  88. package/dist/db/agent-names.d.ts.map +1 -0
  89. package/dist/db/agents.d.ts +84 -0
  90. package/dist/db/agents.d.ts.map +1 -0
  91. package/dist/db/api-keys.d.ts +28 -0
  92. package/dist/db/api-keys.d.ts.map +1 -0
  93. package/dist/db/artifacts.d.ts +60 -0
  94. package/dist/db/artifacts.d.ts.map +1 -0
  95. package/dist/db/audit.d.ts +52 -0
  96. package/dist/db/audit.d.ts.map +1 -0
  97. package/dist/db/boards.d.ts +56 -0
  98. package/dist/db/boards.d.ts.map +1 -0
  99. package/dist/db/budgets.d.ts +27 -0
  100. package/dist/db/budgets.d.ts.map +1 -0
  101. package/dist/db/builtin-templates.d.ts +41 -0
  102. package/dist/db/builtin-templates.d.ts.map +1 -0
  103. package/dist/db/calendar.d.ts +52 -0
  104. package/dist/db/calendar.d.ts.map +1 -0
  105. package/dist/db/checklists.d.ts +13 -0
  106. package/dist/db/checklists.d.ts.map +1 -0
  107. package/dist/db/checkpoints.d.ts +55 -0
  108. package/dist/db/checkpoints.d.ts.map +1 -0
  109. package/dist/db/comments.d.ts +11 -0
  110. package/dist/db/comments.d.ts.map +1 -0
  111. package/dist/db/custom-fields.d.ts +43 -0
  112. package/dist/db/custom-fields.d.ts.map +1 -0
  113. package/dist/db/cycles.d.ts +78 -0
  114. package/dist/db/cycles.d.ts.map +1 -0
  115. package/dist/db/database.d.ts +13 -0
  116. package/dist/db/database.d.ts.map +1 -0
  117. package/dist/db/dispatches.d.ts +15 -0
  118. package/dist/db/dispatches.d.ts.map +1 -0
  119. package/dist/db/file-locks.d.ts +43 -0
  120. package/dist/db/file-locks.d.ts.map +1 -0
  121. package/dist/db/handoffs.d.ts +76 -0
  122. package/dist/db/handoffs.d.ts.map +1 -0
  123. package/dist/db/inbox.d.ts +47 -0
  124. package/dist/db/inbox.d.ts.map +1 -0
  125. package/dist/db/kg.d.ts +70 -0
  126. package/dist/db/kg.d.ts.map +1 -0
  127. package/dist/db/labels.d.ts +30 -0
  128. package/dist/db/labels.d.ts.map +1 -0
  129. package/dist/db/locks.d.ts +14 -0
  130. package/dist/db/locks.d.ts.map +1 -0
  131. package/dist/db/machines.d.ts +59 -0
  132. package/dist/db/machines.d.ts.map +1 -0
  133. package/dist/db/migrations.d.ts +2 -0
  134. package/dist/db/migrations.d.ts.map +1 -0
  135. package/dist/db/orgs.d.ts +13 -0
  136. package/dist/db/orgs.d.ts.map +1 -0
  137. package/dist/db/patrol.d.ts +35 -0
  138. package/dist/db/patrol.d.ts.map +1 -0
  139. package/dist/db/plans.d.ts +8 -0
  140. package/dist/db/plans.d.ts.map +1 -0
  141. package/dist/db/project-agent-roles.d.ts +34 -0
  142. package/dist/db/project-agent-roles.d.ts.map +1 -0
  143. package/dist/db/project-knowledge.d.ts +88 -0
  144. package/dist/db/project-knowledge.d.ts.map +1 -0
  145. package/dist/db/project-risks.d.ts +139 -0
  146. package/dist/db/project-risks.d.ts.map +1 -0
  147. package/dist/db/projects.d.ts +54 -0
  148. package/dist/db/projects.d.ts.map +1 -0
  149. package/dist/db/retrospectives.d.ts +98 -0
  150. package/dist/db/retrospectives.d.ts.map +1 -0
  151. package/dist/db/schema.d.ts +5 -0
  152. package/dist/db/schema.d.ts.map +1 -0
  153. package/dist/db/sessions.d.ts +8 -0
  154. package/dist/db/sessions.d.ts.map +1 -0
  155. package/dist/db/snapshots.d.ts +37 -0
  156. package/dist/db/snapshots.d.ts.map +1 -0
  157. package/dist/db/task-claim.d.ts +7 -0
  158. package/dist/db/task-claim.d.ts.map +1 -0
  159. package/dist/db/task-commits.d.ts +106 -0
  160. package/dist/db/task-commits.d.ts.map +1 -0
  161. package/dist/db/task-crud.d.ts +13 -0
  162. package/dist/db/task-crud.d.ts.map +1 -0
  163. package/dist/db/task-files.d.ts +74 -0
  164. package/dist/db/task-files.d.ts.map +1 -0
  165. package/dist/db/task-graph.d.ts +27 -0
  166. package/dist/db/task-graph.d.ts.map +1 -0
  167. package/dist/db/task-lifecycle.d.ts +96 -0
  168. package/dist/db/task-lifecycle.d.ts.map +1 -0
  169. package/dist/db/task-lists.d.ts +10 -0
  170. package/dist/db/task-lists.d.ts.map +1 -0
  171. package/dist/db/task-relations.d.ts +170 -0
  172. package/dist/db/task-relations.d.ts.map +1 -0
  173. package/dist/db/task-relationships.d.ts +36 -0
  174. package/dist/db/task-relationships.d.ts.map +1 -0
  175. package/dist/db/task-runs.d.ts +133 -0
  176. package/dist/db/task-runs.d.ts.map +1 -0
  177. package/dist/db/task-status.d.ts +65 -0
  178. package/dist/db/task-status.d.ts.map +1 -0
  179. package/dist/db/task-workflow.d.ts +7 -0
  180. package/dist/db/task-workflow.d.ts.map +1 -0
  181. package/dist/db/tasks.d.ts +15 -0
  182. package/dist/db/tasks.d.ts.map +1 -0
  183. package/dist/db/templates.d.ts +98 -0
  184. package/dist/db/templates.d.ts.map +1 -0
  185. package/dist/db/traces.d.ts +38 -0
  186. package/dist/db/traces.d.ts.map +1 -0
  187. package/dist/db/webhooks.d.ts +29 -0
  188. package/dist/db/webhooks.d.ts.map +1 -0
  189. package/dist/index.d.ts +312 -0
  190. package/dist/index.d.ts.map +1 -0
  191. package/dist/index.js +40515 -0
  192. package/dist/json-contracts.d.ts +56 -0
  193. package/dist/json-contracts.d.ts.map +1 -0
  194. package/dist/lib/access-profiles.d.ts +27 -0
  195. package/dist/lib/access-profiles.d.ts.map +1 -0
  196. package/dist/lib/activity-audit.d.ts +67 -0
  197. package/dist/lib/activity-audit.d.ts.map +1 -0
  198. package/dist/lib/activity-timeline.d.ts +43 -0
  199. package/dist/lib/activity-timeline.d.ts.map +1 -0
  200. package/dist/lib/agent-adapter-docs.d.ts +71 -0
  201. package/dist/lib/agent-adapter-docs.d.ts.map +1 -0
  202. package/dist/lib/agent-coordination.d.ts +52 -0
  203. package/dist/lib/agent-coordination.d.ts.map +1 -0
  204. package/dist/lib/agent-replay-simulator.d.ts +66 -0
  205. package/dist/lib/agent-replay-simulator.d.ts.map +1 -0
  206. package/dist/lib/agent-run-dispatcher.d.ts +114 -0
  207. package/dist/lib/agent-run-dispatcher.d.ts.map +1 -0
  208. package/dist/lib/agent-tasks.d.ts +11 -0
  209. package/dist/lib/agent-tasks.d.ts.map +1 -0
  210. package/dist/lib/agent-workflow-demo.d.ts +87 -0
  211. package/dist/lib/agent-workflow-demo.d.ts.map +1 -0
  212. package/dist/lib/approval-gates.d.ts +52 -0
  213. package/dist/lib/approval-gates.d.ts.map +1 -0
  214. package/dist/lib/artifact-store.d.ts +125 -0
  215. package/dist/lib/artifact-store.d.ts.map +1 -0
  216. package/dist/lib/audit-ledger.d.ts +59 -0
  217. package/dist/lib/audit-ledger.d.ts.map +1 -0
  218. package/dist/lib/auto-assign.d.ts +23 -0
  219. package/dist/lib/auto-assign.d.ts.map +1 -0
  220. package/dist/lib/branch-work-plans.d.ts +46 -0
  221. package/dist/lib/branch-work-plans.d.ts.map +1 -0
  222. package/dist/lib/burndown.d.ts +18 -0
  223. package/dist/lib/burndown.d.ts.map +1 -0
  224. package/dist/lib/capacity-forecasts.d.ts +70 -0
  225. package/dist/lib/capacity-forecasts.d.ts.map +1 -0
  226. package/dist/lib/claude-tasks.d.ts +20 -0
  227. package/dist/lib/claude-tasks.d.ts.map +1 -0
  228. package/dist/lib/cli-completions.d.ts +9 -0
  229. package/dist/lib/cli-completions.d.ts.map +1 -0
  230. package/dist/lib/cli-help.d.ts +38 -0
  231. package/dist/lib/cli-help.d.ts.map +1 -0
  232. package/dist/lib/cli-manpage.d.ts +7 -0
  233. package/dist/lib/cli-manpage.d.ts.map +1 -0
  234. package/dist/lib/cli-mcp-parity.d.ts +40 -0
  235. package/dist/lib/cli-mcp-parity.d.ts.map +1 -0
  236. package/dist/lib/cli-reference.d.ts +46 -0
  237. package/dist/lib/cli-reference.d.ts.map +1 -0
  238. package/dist/lib/command-aliases.d.ts +60 -0
  239. package/dist/lib/command-aliases.d.ts.map +1 -0
  240. package/dist/lib/completion-guard.d.ts +17 -0
  241. package/dist/lib/completion-guard.d.ts.map +1 -0
  242. package/dist/lib/config.d.ts +410 -0
  243. package/dist/lib/config.d.ts.map +1 -0
  244. package/dist/lib/context-packs.d.ts +163 -0
  245. package/dist/lib/context-packs.d.ts.map +1 -0
  246. package/dist/lib/db-backup.d.ts +40 -0
  247. package/dist/lib/db-backup.d.ts.map +1 -0
  248. package/dist/lib/decision-records.d.ts +153 -0
  249. package/dist/lib/decision-records.d.ts.map +1 -0
  250. package/dist/lib/dependency-graph.d.ts +73 -0
  251. package/dist/lib/dependency-graph.d.ts.map +1 -0
  252. package/dist/lib/dispatch-formatter.d.ts +21 -0
  253. package/dist/lib/dispatch-formatter.d.ts.map +1 -0
  254. package/dist/lib/dispatch.d.ts +28 -0
  255. package/dist/lib/dispatch.d.ts.map +1 -0
  256. package/dist/lib/doctor.d.ts +46 -0
  257. package/dist/lib/doctor.d.ts.map +1 -0
  258. package/dist/lib/environment-snapshots.d.ts +111 -0
  259. package/dist/lib/environment-snapshots.d.ts.map +1 -0
  260. package/dist/lib/event-hooks.d.ts +58 -0
  261. package/dist/lib/event-hooks.d.ts.map +1 -0
  262. package/dist/lib/external-issue-importers.d.ts +60 -0
  263. package/dist/lib/external-issue-importers.d.ts.map +1 -0
  264. package/dist/lib/extract.d.ts +108 -0
  265. package/dist/lib/extract.d.ts.map +1 -0
  266. package/dist/lib/failure-triage.d.ts +64 -0
  267. package/dist/lib/failure-triage.d.ts.map +1 -0
  268. package/dist/lib/feature-manifest.d.ts +100 -0
  269. package/dist/lib/feature-manifest.d.ts.map +1 -0
  270. package/dist/lib/gatherer.d.ts +16 -0
  271. package/dist/lib/gatherer.d.ts.map +1 -0
  272. package/dist/lib/git-traceability.d.ts +43 -0
  273. package/dist/lib/git-traceability.d.ts.map +1 -0
  274. package/dist/lib/github.d.ts +25 -0
  275. package/dist/lib/github.d.ts.map +1 -0
  276. package/dist/lib/goal-workflow.d.ts +86 -0
  277. package/dist/lib/goal-workflow.d.ts.map +1 -0
  278. package/dist/lib/handoff-packets.d.ts +74 -0
  279. package/dist/lib/handoff-packets.d.ts.map +1 -0
  280. package/dist/lib/headless-boundaries.d.ts +30 -0
  281. package/dist/lib/headless-boundaries.d.ts.map +1 -0
  282. package/dist/lib/import-export-bridge.d.ts +91 -0
  283. package/dist/lib/import-export-bridge.d.ts.map +1 -0
  284. package/dist/lib/inbox-intake.d.ts +73 -0
  285. package/dist/lib/inbox-intake.d.ts.map +1 -0
  286. package/dist/lib/issue-importers.d.ts +78 -0
  287. package/dist/lib/issue-importers.d.ts.map +1 -0
  288. package/dist/lib/json-schemas.d.ts +66 -0
  289. package/dist/lib/json-schemas.d.ts.map +1 -0
  290. package/dist/lib/local-backups.d.ts +129 -0
  291. package/dist/lib/local-backups.d.ts.map +1 -0
  292. package/dist/lib/local-bridge.d.ts +81 -0
  293. package/dist/lib/local-bridge.d.ts.map +1 -0
  294. package/dist/lib/local-encryption.d.ts +105 -0
  295. package/dist/lib/local-encryption.d.ts.map +1 -0
  296. package/dist/lib/local-extensions.d.ts +92 -0
  297. package/dist/lib/local-extensions.d.ts.map +1 -0
  298. package/dist/lib/local-fields.d.ts +33 -0
  299. package/dist/lib/local-fields.d.ts.map +1 -0
  300. package/dist/lib/local-notifications.d.ts +55 -0
  301. package/dist/lib/local-notifications.d.ts.map +1 -0
  302. package/dist/lib/local-reports.d.ts +149 -0
  303. package/dist/lib/local-reports.d.ts.map +1 -0
  304. package/dist/lib/local-snapshots.d.ts +66 -0
  305. package/dist/lib/local-snapshots.d.ts.map +1 -0
  306. package/dist/lib/logger.d.ts +11 -0
  307. package/dist/lib/logger.d.ts.map +1 -0
  308. package/dist/lib/machine-topology.d.ts +59 -0
  309. package/dist/lib/machine-topology.d.ts.map +1 -0
  310. package/dist/lib/mention-resolver.d.ts +43 -0
  311. package/dist/lib/mention-resolver.d.ts.map +1 -0
  312. package/dist/lib/model-config.d.ts +14 -0
  313. package/dist/lib/model-config.d.ts.map +1 -0
  314. package/dist/lib/natural-language-intake.d.ts +56 -0
  315. package/dist/lib/natural-language-intake.d.ts.map +1 -0
  316. package/dist/lib/nl-intake.d.ts +61 -0
  317. package/dist/lib/nl-intake.d.ts.map +1 -0
  318. package/dist/lib/north-star.d.ts +33 -0
  319. package/dist/lib/north-star.d.ts.map +1 -0
  320. package/dist/lib/notification-reminders.d.ts +107 -0
  321. package/dist/lib/notification-reminders.d.ts.map +1 -0
  322. package/dist/lib/onboarding-fixtures.d.ts +31 -0
  323. package/dist/lib/onboarding-fixtures.d.ts.map +1 -0
  324. package/dist/lib/package-version.d.ts +2 -0
  325. package/dist/lib/package-version.d.ts.map +1 -0
  326. package/dist/lib/plan-execution.d.ts +71 -0
  327. package/dist/lib/plan-execution.d.ts.map +1 -0
  328. package/dist/lib/policy-packs.d.ts +87 -0
  329. package/dist/lib/policy-packs.d.ts.map +1 -0
  330. package/dist/lib/project-bootstrap.d.ts +35 -0
  331. package/dist/lib/project-bootstrap.d.ts.map +1 -0
  332. package/dist/lib/public-release-gate.d.ts +57 -0
  333. package/dist/lib/public-release-gate.d.ts.map +1 -0
  334. package/dist/lib/recurrence.d.ts +10 -0
  335. package/dist/lib/recurrence.d.ts.map +1 -0
  336. package/dist/lib/redaction.d.ts +12 -0
  337. package/dist/lib/redaction.d.ts.map +1 -0
  338. package/dist/lib/release-checks.d.ts +34 -0
  339. package/dist/lib/release-checks.d.ts.map +1 -0
  340. package/dist/lib/release-compatibility.d.ts +59 -0
  341. package/dist/lib/release-compatibility.d.ts.map +1 -0
  342. package/dist/lib/release-notes.d.ts +81 -0
  343. package/dist/lib/release-notes.d.ts.map +1 -0
  344. package/dist/lib/report-exports.d.ts +49 -0
  345. package/dist/lib/report-exports.d.ts.map +1 -0
  346. package/dist/lib/resource-snapshots.d.ts +37 -0
  347. package/dist/lib/resource-snapshots.d.ts.map +1 -0
  348. package/dist/lib/retention-cleanup.d.ts +63 -0
  349. package/dist/lib/retention-cleanup.d.ts.map +1 -0
  350. package/dist/lib/review-queues.d.ts +98 -0
  351. package/dist/lib/review-queues.d.ts.map +1 -0
  352. package/dist/lib/roadmaps.d.ts +133 -0
  353. package/dist/lib/roadmaps.d.ts.map +1 -0
  354. package/dist/lib/run-records.d.ts +94 -0
  355. package/dist/lib/run-records.d.ts.map +1 -0
  356. package/dist/lib/runner-sandbox.d.ts +50 -0
  357. package/dist/lib/runner-sandbox.d.ts.map +1 -0
  358. package/dist/lib/sandbox-profiles.d.ts +33 -0
  359. package/dist/lib/sandbox-profiles.d.ts.map +1 -0
  360. package/dist/lib/saved-search-views.d.ts +60 -0
  361. package/dist/lib/saved-search-views.d.ts.map +1 -0
  362. package/dist/lib/saved-views.d.ts +53 -0
  363. package/dist/lib/saved-views.d.ts.map +1 -0
  364. package/dist/lib/scale-hardening.d.ts +74 -0
  365. package/dist/lib/scale-hardening.d.ts.map +1 -0
  366. package/dist/lib/sdk-integration-fixtures.d.ts +65 -0
  367. package/dist/lib/sdk-integration-fixtures.d.ts.map +1 -0
  368. package/dist/lib/search.d.ts +17 -0
  369. package/dist/lib/search.d.ts.map +1 -0
  370. package/dist/lib/secret-redaction.d.ts +45 -0
  371. package/dist/lib/secret-redaction.d.ts.map +1 -0
  372. package/dist/lib/sync-types.d.ts +16 -0
  373. package/dist/lib/sync-types.d.ts.map +1 -0
  374. package/dist/lib/sync-utils.d.ts +14 -0
  375. package/dist/lib/sync-utils.d.ts.map +1 -0
  376. package/dist/lib/sync.d.ts +9 -0
  377. package/dist/lib/sync.d.ts.map +1 -0
  378. package/dist/lib/task-contracts.d.ts +75 -0
  379. package/dist/lib/task-contracts.d.ts.map +1 -0
  380. package/dist/lib/task-dedupe.d.ts +46 -0
  381. package/dist/lib/task-dedupe.d.ts.map +1 -0
  382. package/dist/lib/task-runner.d.ts +101 -0
  383. package/dist/lib/task-runner.d.ts.map +1 -0
  384. package/dist/lib/task-scheduling.d.ts +69 -0
  385. package/dist/lib/task-scheduling.d.ts.map +1 -0
  386. package/dist/lib/template-library.d.ts +47 -0
  387. package/dist/lib/template-library.d.ts.map +1 -0
  388. package/dist/lib/terminal-notifications.d.ts +53 -0
  389. package/dist/lib/terminal-notifications.d.ts.map +1 -0
  390. package/dist/lib/tmux.d.ts +28 -0
  391. package/dist/lib/tmux.d.ts.map +1 -0
  392. package/dist/lib/todos-md.d.ts +21 -0
  393. package/dist/lib/todos-md.d.ts.map +1 -0
  394. package/dist/lib/tui-dashboard.d.ts +49 -0
  395. package/dist/lib/tui-dashboard.d.ts.map +1 -0
  396. package/dist/lib/usage-ledger.d.ts +82 -0
  397. package/dist/lib/usage-ledger.d.ts.map +1 -0
  398. package/dist/lib/user-scaffolds.d.ts +73 -0
  399. package/dist/lib/user-scaffolds.d.ts.map +1 -0
  400. package/dist/lib/verification-evidence.d.ts +93 -0
  401. package/dist/lib/verification-evidence.d.ts.map +1 -0
  402. package/dist/lib/verification-providers.d.ts +76 -0
  403. package/dist/lib/verification-providers.d.ts.map +1 -0
  404. package/dist/lib/workflow-prompts.d.ts +38 -0
  405. package/dist/lib/workflow-prompts.d.ts.map +1 -0
  406. package/dist/lib/workflow-states.d.ts +70 -0
  407. package/dist/lib/workflow-states.d.ts.map +1 -0
  408. package/dist/lib/workspace-trust.d.ts +38 -0
  409. package/dist/lib/workspace-trust.d.ts.map +1 -0
  410. package/dist/mcp/http.d.ts +13 -0
  411. package/dist/mcp/http.d.ts.map +1 -0
  412. package/dist/mcp/index.d.ts +5 -0
  413. package/dist/mcp/index.d.ts.map +1 -0
  414. package/dist/mcp/index.js +39 -12
  415. package/dist/mcp/token-utils.d.ts +15 -0
  416. package/dist/mcp/token-utils.d.ts.map +1 -0
  417. package/dist/mcp/tools/access-profiles.d.ts +8 -0
  418. package/dist/mcp/tools/access-profiles.d.ts.map +1 -0
  419. package/dist/mcp/tools/activity-audit.d.ts +9 -0
  420. package/dist/mcp/tools/activity-audit.d.ts.map +1 -0
  421. package/dist/mcp/tools/agent-adapter-docs.d.ts +8 -0
  422. package/dist/mcp/tools/agent-adapter-docs.d.ts.map +1 -0
  423. package/dist/mcp/tools/agent-coordination.d.ts +9 -0
  424. package/dist/mcp/tools/agent-coordination.d.ts.map +1 -0
  425. package/dist/mcp/tools/agent-runs.d.ts +9 -0
  426. package/dist/mcp/tools/agent-runs.d.ts.map +1 -0
  427. package/dist/mcp/tools/agent-workflow-demo.d.ts +8 -0
  428. package/dist/mcp/tools/agent-workflow-demo.d.ts.map +1 -0
  429. package/dist/mcp/tools/agents.d.ts +16 -0
  430. package/dist/mcp/tools/agents.d.ts.map +1 -0
  431. package/dist/mcp/tools/approval-gates.d.ts +9 -0
  432. package/dist/mcp/tools/approval-gates.d.ts.map +1 -0
  433. package/dist/mcp/tools/artifacts.d.ts +9 -0
  434. package/dist/mcp/tools/artifacts.d.ts.map +1 -0
  435. package/dist/mcp/tools/branch-work-plans.d.ts +8 -0
  436. package/dist/mcp/tools/branch-work-plans.d.ts.map +1 -0
  437. package/dist/mcp/tools/cli-docs.d.ts +8 -0
  438. package/dist/mcp/tools/cli-docs.d.ts.map +1 -0
  439. package/dist/mcp/tools/code-tools.d.ts +15 -0
  440. package/dist/mcp/tools/code-tools.d.ts.map +1 -0
  441. package/dist/mcp/tools/command-aliases.d.ts +8 -0
  442. package/dist/mcp/tools/command-aliases.d.ts.map +1 -0
  443. package/dist/mcp/tools/context-packs.d.ts +9 -0
  444. package/dist/mcp/tools/context-packs.d.ts.map +1 -0
  445. package/dist/mcp/tools/crypto.d.ts +8 -0
  446. package/dist/mcp/tools/crypto.d.ts.map +1 -0
  447. package/dist/mcp/tools/db-backup.d.ts +8 -0
  448. package/dist/mcp/tools/db-backup.d.ts.map +1 -0
  449. package/dist/mcp/tools/decision-records.d.ts +9 -0
  450. package/dist/mcp/tools/decision-records.d.ts.map +1 -0
  451. package/dist/mcp/tools/dependency-graph.d.ts +9 -0
  452. package/dist/mcp/tools/dependency-graph.d.ts.map +1 -0
  453. package/dist/mcp/tools/dispatch.d.ts +9 -0
  454. package/dist/mcp/tools/dispatch.d.ts.map +1 -0
  455. package/dist/mcp/tools/environment-snapshots.d.ts +8 -0
  456. package/dist/mcp/tools/environment-snapshots.d.ts.map +1 -0
  457. package/dist/mcp/tools/failure-triage.d.ts +9 -0
  458. package/dist/mcp/tools/failure-triage.d.ts.map +1 -0
  459. package/dist/mcp/tools/feature-manifest.d.ts +8 -0
  460. package/dist/mcp/tools/feature-manifest.d.ts.map +1 -0
  461. package/dist/mcp/tools/git-traceability.d.ts +9 -0
  462. package/dist/mcp/tools/git-traceability.d.ts.map +1 -0
  463. package/dist/mcp/tools/goal.d.ts +9 -0
  464. package/dist/mcp/tools/goal.d.ts.map +1 -0
  465. package/dist/mcp/tools/handoff-packets.d.ts +9 -0
  466. package/dist/mcp/tools/handoff-packets.d.ts.map +1 -0
  467. package/dist/mcp/tools/import-export-bridge.d.ts +9 -0
  468. package/dist/mcp/tools/import-export-bridge.d.ts.map +1 -0
  469. package/dist/mcp/tools/inbox-intake.d.ts +9 -0
  470. package/dist/mcp/tools/inbox-intake.d.ts.map +1 -0
  471. package/dist/mcp/tools/issue-importers.d.ts +9 -0
  472. package/dist/mcp/tools/issue-importers.d.ts.map +1 -0
  473. package/dist/mcp/tools/json-schemas.d.ts +8 -0
  474. package/dist/mcp/tools/json-schemas.d.ts.map +1 -0
  475. package/dist/mcp/tools/machine-topology.d.ts +8 -0
  476. package/dist/mcp/tools/machine-topology.d.ts.map +1 -0
  477. package/dist/mcp/tools/machines.d.ts +8 -0
  478. package/dist/mcp/tools/machines.d.ts.map +1 -0
  479. package/dist/mcp/tools/mention-resolver.d.ts +9 -0
  480. package/dist/mcp/tools/mention-resolver.d.ts.map +1 -0
  481. package/dist/mcp/tools/nl-intake.d.ts +9 -0
  482. package/dist/mcp/tools/nl-intake.d.ts.map +1 -0
  483. package/dist/mcp/tools/notification-reminders.d.ts +9 -0
  484. package/dist/mcp/tools/notification-reminders.d.ts.map +1 -0
  485. package/dist/mcp/tools/parity.d.ts +8 -0
  486. package/dist/mcp/tools/parity.d.ts.map +1 -0
  487. package/dist/mcp/tools/plan-execution.d.ts +9 -0
  488. package/dist/mcp/tools/plan-execution.d.ts.map +1 -0
  489. package/dist/mcp/tools/policy-packs.d.ts +9 -0
  490. package/dist/mcp/tools/policy-packs.d.ts.map +1 -0
  491. package/dist/mcp/tools/project-bootstrap.d.ts +8 -0
  492. package/dist/mcp/tools/project-bootstrap.d.ts.map +1 -0
  493. package/dist/mcp/tools/release-checks.d.ts +8 -0
  494. package/dist/mcp/tools/release-checks.d.ts.map +1 -0
  495. package/dist/mcp/tools/release-notes.d.ts +9 -0
  496. package/dist/mcp/tools/release-notes.d.ts.map +1 -0
  497. package/dist/mcp/tools/report-exports.d.ts +9 -0
  498. package/dist/mcp/tools/report-exports.d.ts.map +1 -0
  499. package/dist/mcp/tools/resource-subscriptions.d.ts +8 -0
  500. package/dist/mcp/tools/resource-subscriptions.d.ts.map +1 -0
  501. package/dist/mcp/tools/run-records.d.ts +9 -0
  502. package/dist/mcp/tools/run-records.d.ts.map +1 -0
  503. package/dist/mcp/tools/sandbox.d.ts +8 -0
  504. package/dist/mcp/tools/sandbox.d.ts.map +1 -0
  505. package/dist/mcp/tools/saved-views.d.ts +9 -0
  506. package/dist/mcp/tools/saved-views.d.ts.map +1 -0
  507. package/dist/mcp/tools/secret-redaction.d.ts +8 -0
  508. package/dist/mcp/tools/secret-redaction.d.ts.map +1 -0
  509. package/dist/mcp/tools/task-adv-tools.d.ts +20 -0
  510. package/dist/mcp/tools/task-adv-tools.d.ts.map +1 -0
  511. package/dist/mcp/tools/task-auto-tools.d.ts +20 -0
  512. package/dist/mcp/tools/task-auto-tools.d.ts.map +1 -0
  513. package/dist/mcp/tools/task-crud.d.ts +20 -0
  514. package/dist/mcp/tools/task-crud.d.ts.map +1 -0
  515. package/dist/mcp/tools/task-dedupe.d.ts +9 -0
  516. package/dist/mcp/tools/task-dedupe.d.ts.map +1 -0
  517. package/dist/mcp/tools/task-meta-tools.d.ts +12 -0
  518. package/dist/mcp/tools/task-meta-tools.d.ts.map +1 -0
  519. package/dist/mcp/tools/task-project-tools.d.ts +20 -0
  520. package/dist/mcp/tools/task-project-tools.d.ts.map +1 -0
  521. package/dist/mcp/tools/task-rel-tools.d.ts +19 -0
  522. package/dist/mcp/tools/task-rel-tools.d.ts.map +1 -0
  523. package/dist/mcp/tools/task-resources.d.ts +13 -0
  524. package/dist/mcp/tools/task-resources.d.ts.map +1 -0
  525. package/dist/mcp/tools/task-scheduling.d.ts +9 -0
  526. package/dist/mcp/tools/task-scheduling.d.ts.map +1 -0
  527. package/dist/mcp/tools/task-workflow-tools.d.ts +20 -0
  528. package/dist/mcp/tools/task-workflow-tools.d.ts.map +1 -0
  529. package/dist/mcp/tools/template-library.d.ts +8 -0
  530. package/dist/mcp/tools/template-library.d.ts.map +1 -0
  531. package/dist/mcp/tools/templates.d.ts +9 -0
  532. package/dist/mcp/tools/templates.d.ts.map +1 -0
  533. package/dist/mcp/tools/terminal-notifications.d.ts +9 -0
  534. package/dist/mcp/tools/terminal-notifications.d.ts.map +1 -0
  535. package/dist/mcp/tools/todos-md.d.ts +8 -0
  536. package/dist/mcp/tools/todos-md.d.ts.map +1 -0
  537. package/dist/mcp/tools/user-scaffolds.d.ts +8 -0
  538. package/dist/mcp/tools/user-scaffolds.d.ts.map +1 -0
  539. package/dist/mcp/tools/verification.d.ts +9 -0
  540. package/dist/mcp/tools/verification.d.ts.map +1 -0
  541. package/dist/mcp/tools/webhooks.d.ts +8 -0
  542. package/dist/mcp/tools/webhooks.d.ts.map +1 -0
  543. package/dist/mcp/tools/workflow-prompts.d.ts +3 -0
  544. package/dist/mcp/tools/workflow-prompts.d.ts.map +1 -0
  545. package/dist/mcp/tools/workspace-trust.d.ts +8 -0
  546. package/dist/mcp/tools/workspace-trust.d.ts.map +1 -0
  547. package/dist/mcp.d.ts +42 -0
  548. package/dist/mcp.d.ts.map +1 -0
  549. package/dist/mcp.js +555 -0
  550. package/dist/registry.d.ts +35 -0
  551. package/dist/registry.d.ts.map +1 -0
  552. package/dist/registry.js +18880 -0
  553. package/dist/sdk/client.d.ts +383 -0
  554. package/dist/sdk/client.d.ts.map +1 -0
  555. package/dist/sdk/index.d.ts +14 -0
  556. package/dist/sdk/index.d.ts.map +1 -0
  557. package/dist/sdk/types.d.ts +198 -0
  558. package/dist/sdk/types.d.ts.map +1 -0
  559. package/dist/sdk.d.ts +19 -0
  560. package/dist/sdk.d.ts.map +1 -0
  561. package/dist/server/index.d.ts +9 -0
  562. package/dist/server/index.d.ts.map +1 -0
  563. package/dist/server/index.js +39 -12
  564. package/dist/server/routes.d.ts +86 -0
  565. package/dist/server/routes.d.ts.map +1 -0
  566. package/dist/server/serve.d.ts +39 -0
  567. package/dist/server/serve.d.ts.map +1 -0
  568. package/dist/storage/index.d.ts +4 -0
  569. package/dist/storage/index.d.ts.map +1 -0
  570. package/dist/storage/interfaces.d.ts +185 -0
  571. package/dist/storage/interfaces.d.ts.map +1 -0
  572. package/dist/storage/local-sqlite.d.ts +7 -0
  573. package/dist/storage/local-sqlite.d.ts.map +1 -0
  574. package/dist/storage.d.ts +4 -0
  575. package/dist/storage.d.ts.map +1 -0
  576. package/dist/storage.js +8881 -0
  577. package/dist/test/no-network.d.ts +7 -0
  578. package/dist/test/no-network.d.ts.map +1 -0
  579. package/dist/types/index.d.ts +1032 -0
  580. package/dist/types/index.d.ts.map +1 -0
  581. package/package.json +1 -1
package/dist/cli/index.js CHANGED
@@ -3553,6 +3553,26 @@ function ensureSchema(db) {
3553
3553
  )`);
3554
3554
  ensureIndex("CREATE INDEX IF NOT EXISTS idx_task_verifications_task ON task_verifications(task_id)");
3555
3555
  ensureIndex("CREATE INDEX IF NOT EXISTS idx_task_verifications_status ON task_verifications(status)");
3556
+ ensureTable("artifacts", `
3557
+ CREATE TABLE artifacts (
3558
+ id TEXT PRIMARY KEY,
3559
+ entity_type TEXT NOT NULL,
3560
+ entity_id TEXT NOT NULL,
3561
+ name TEXT,
3562
+ storage_mode TEXT NOT NULL DEFAULT 'copy',
3563
+ source_path TEXT,
3564
+ local_path TEXT,
3565
+ content_hash TEXT,
3566
+ mime_type TEXT,
3567
+ size_bytes INTEGER,
3568
+ redaction_status TEXT NOT NULL DEFAULT 'none',
3569
+ metadata TEXT DEFAULT '{}',
3570
+ created_at TEXT NOT NULL DEFAULT (datetime('now')),
3571
+ updated_at TEXT NOT NULL DEFAULT (datetime('now')),
3572
+ deleted_at TEXT
3573
+ )`);
3574
+ ensureIndex("CREATE INDEX IF NOT EXISTS idx_artifacts_entity ON artifacts(entity_type, entity_id)");
3575
+ ensureIndex("CREATE INDEX IF NOT EXISTS idx_artifacts_deleted ON artifacts(deleted_at)");
3556
3576
  ensureTable("task_runs", `
3557
3577
  CREATE TABLE task_runs (
3558
3578
  id TEXT PRIMARY KEY,
@@ -4513,6 +4533,11 @@ function resolvePartialId(db, table, partialId) {
4513
4533
  if (nameRow)
4514
4534
  return nameRow.id;
4515
4535
  }
4536
+ if (table === "agents") {
4537
+ const nameRow = db.query("SELECT id FROM agents WHERE lower(name) = ?").get(partialId.toLowerCase());
4538
+ if (nameRow)
4539
+ return nameRow.id;
4540
+ }
4516
4541
  return null;
4517
4542
  }
4518
4543
  var LOCK_EXPIRY_MINUTES = 30, _db = null, ALLOWED_TABLES;
@@ -9239,8 +9264,8 @@ var init_boards = __esm(() => {
9239
9264
 
9240
9265
  // src/lib/artifact-store.ts
9241
9266
  import { createHash as createHash2 } from "crypto";
9242
- import { existsSync as existsSync6, mkdirSync as mkdirSync4, readFileSync as readFileSync3, statSync as statSync2, writeFileSync as writeFileSync2 } from "fs";
9243
- import { dirname as dirname5, join as join5, resolve as resolve6 } from "path";
9267
+ import { existsSync as existsSync6, mkdirSync as mkdirSync4, readFileSync as readFileSync3, rmSync, statSync as statSync2, writeFileSync as writeFileSync2 } from "fs";
9268
+ import { basename, dirname as dirname5, join as join5, resolve as resolve6 } from "path";
9244
9269
  import { tmpdir } from "os";
9245
9270
  function isInMemoryDb2(path) {
9246
9271
  return path === ":memory:" || path.startsWith("file::memory:");
@@ -10680,11 +10705,11 @@ function autoDetectProject(opts) {
10680
10705
  return;
10681
10706
  const gitRoot = detectGitRoot();
10682
10707
  if (gitRoot) {
10683
- return ensureProject(basename(gitRoot), gitRoot);
10708
+ return ensureProject(basename2(gitRoot), gitRoot);
10684
10709
  }
10685
10710
  return;
10686
10711
  }
10687
- function basename(p) {
10712
+ function basename2(p) {
10688
10713
  return p.replace(/.*[/\\]/, "");
10689
10714
  }
10690
10715
  function autoProject(opts) {
@@ -10776,7 +10801,8 @@ function resolvePlanId(input) {
10776
10801
  function registerTaskCommands(program2) {
10777
10802
  program2.command("add <title>").description("Create a new task").option("-d, --description <text>", "Task description").option("-p, --priority <level>", "Priority: low, medium, high, critical").option("--parent <id>", "Parent task ID").option("-t, --tags <tags>", "Comma-separated tags").option("--tag <tags>", "Comma-separated tags (alias for --tags)").option("--plan <id>", "Assign to a plan").option("--assign <agent>", "Assign to agent").option("--status <status>", "Initial status").option("--list <id>", "Task list ID").option("--task-list <id>", "Task list ID (alias for --list)").option("--estimated <minutes>", "Estimated time in minutes").option("--sla-minutes <minutes>", "SLA minutes before unfinished work is escalated").option("--sla <minutes>", "Alias for --sla-minutes").option("--approval", "Require approval before completion").option("--recurrence <rule>", "Recurrence rule, e.g. 'every day', 'every weekday', 'every 2 weeks'").option("--due <date>", "Due date (ISO string or YYYY-MM-DD)").option("--reason <text>", "Why this task exists").option("--project <id>", "Assign to project by ID or slug (overrides auto-detect)").action((title, opts) => {
10778
10803
  const globalOpts = program2.opts();
10779
- const projectId = opts.project ? resolveProjectIdOrSlug(opts.project) : autoProject(globalOpts);
10804
+ const explicitProject = opts.project || globalOpts.project;
10805
+ const projectId = explicitProject ? resolveProjectIdOrSlug(explicitProject) : autoProject(globalOpts);
10780
10806
  opts.tags = opts.tags || opts.tag;
10781
10807
  opts.list = opts.list || opts.taskList;
10782
10808
  const taskListId = opts.list ? (() => {
@@ -13387,7 +13413,7 @@ __export(exports_project_bootstrap, {
13387
13413
  bootstrapProject: () => bootstrapProject
13388
13414
  });
13389
13415
  import { existsSync as existsSync9, readFileSync as readFileSync5, statSync as statSync3 } from "fs";
13390
- import { basename as basename2, dirname as dirname6, resolve as resolve8 } from "path";
13416
+ import { basename as basename3, dirname as dirname6, resolve as resolve8 } from "path";
13391
13417
  function safeStat(path) {
13392
13418
  try {
13393
13419
  return statSync3(path);
@@ -13428,9 +13454,9 @@ function readPackageJson(path) {
13428
13454
  }
13429
13455
  function packageDisplayName(name, fallbackPath) {
13430
13456
  if (!name)
13431
- return basename2(fallbackPath);
13457
+ return basename3(fallbackPath);
13432
13458
  const withoutScope = name.startsWith("@") ? name.split("/")[1] : name;
13433
- return withoutScope || basename2(fallbackPath);
13459
+ return withoutScope || basename3(fallbackPath);
13434
13460
  }
13435
13461
  function workspaceMarker(root, rootPackage) {
13436
13462
  if (!root)
@@ -14476,6 +14502,8 @@ __export(exports_local_encryption, {
14476
14502
  decryptString: () => decryptString,
14477
14503
  decryptBridgeBundle: () => decryptBridgeBundle,
14478
14504
  createEncryptedBridgeBundle: () => createEncryptedBridgeBundle,
14505
+ assertExportProfileAllowed: () => assertExportProfileAllowed,
14506
+ applyExportProfile: () => applyExportProfile,
14479
14507
  TODOS_ENCRYPTION_SCHEMA_VERSION: () => TODOS_ENCRYPTION_SCHEMA_VERSION,
14480
14508
  TODOS_ENCRYPTED_VALUE_KIND: () => TODOS_ENCRYPTED_VALUE_KIND,
14481
14509
  TODOS_ENCRYPTED_BRIDGE_KIND: () => TODOS_ENCRYPTED_BRIDGE_KIND,
@@ -14697,6 +14725,25 @@ function decryptBridgeBundle(bundle, env = process.env) {
14697
14725
  }, env);
14698
14726
  return JSON.parse(plaintext);
14699
14727
  }
14728
+ function assertExportProfileAllowed(profile) {
14729
+ if (profile === "plaintext" || profile === "redacted" || profile === "encrypted")
14730
+ return profile;
14731
+ throw new Error(`Unknown export profile: ${profile}. Allowed: plaintext, redacted, encrypted.`);
14732
+ }
14733
+ function applyExportProfile(data2, options = {}) {
14734
+ const profile = assertExportProfileAllowed(options.profile ?? "redacted");
14735
+ const warnings = [];
14736
+ if (profile === "plaintext") {
14737
+ if (!options.acknowledge_plaintext) {
14738
+ warnings.push("Export profile 'plaintext' includes unredacted data; pass acknowledge_plaintext=true to confirm.");
14739
+ }
14740
+ return { profile, data: data2, warnings };
14741
+ }
14742
+ if (profile === "encrypted") {
14743
+ return { profile, data: encryptSensitiveFields(data2, { profile: DEFAULT_ENCRYPTION_PROFILE, env: options.env }), warnings };
14744
+ }
14745
+ return { profile, data: redactValue(data2), warnings };
14746
+ }
14700
14747
  var TODOS_ENCRYPTED_VALUE_KIND = "hasna.todos.encrypted-value", TODOS_ENCRYPTED_BRIDGE_KIND = "hasna.todos.encrypted-bridge", TODOS_ENCRYPTION_SCHEMA_VERSION = 1, DEFAULT_ENCRYPTION_PROFILE = "default", DEFAULT_ENCRYPTION_KEY_ENV = "TODOS_ENCRYPTION_KEY", EncryptionKeyUnavailableError, EncryptedPayloadError;
14701
14748
  var init_local_encryption = __esm(() => {
14702
14749
  init_config();
@@ -14993,7 +15040,7 @@ __export(exports_project_commands, {
14993
15040
  registerProjectCommands: () => registerProjectCommands
14994
15041
  });
14995
15042
  import chalk4 from "chalk";
14996
- import { basename as basename3, resolve as resolve10 } from "path";
15043
+ import { basename as basename4, resolve as resolve10 } from "path";
14997
15044
  function collectOption(value, previous = []) {
14998
15045
  return [...previous, value];
14999
15046
  }
@@ -15297,7 +15344,7 @@ function registerProjectCommands(program2) {
15297
15344
  const globalOpts = program2.opts();
15298
15345
  if (opts.add) {
15299
15346
  const projectPath = resolve10(opts.add);
15300
- const name = opts.name || basename3(projectPath);
15347
+ const name = opts.name || basename4(projectPath);
15301
15348
  const existing = getProjectByPath(projectPath);
15302
15349
  let project;
15303
15350
  if (existing) {
@@ -17616,7 +17663,7 @@ __export(exports_local_extensions, {
17616
17663
  });
17617
17664
  import { createHash as createHash5, createVerify } from "crypto";
17618
17665
  import { existsSync as existsSync12, readdirSync as readdirSync3, readFileSync as readFileSync7, statSync as statSync5 } from "fs";
17619
- import { basename as basename4, join as join10, resolve as resolve11 } from "path";
17666
+ import { basename as basename5, join as join10, resolve as resolve11 } from "path";
17620
17667
  function isObject(value) {
17621
17668
  return Boolean(value && typeof value === "object" && !Array.isArray(value));
17622
17669
  }
@@ -18081,7 +18128,7 @@ function removeLocalExtension(name) {
18081
18128
  return true;
18082
18129
  }
18083
18130
  function renderExtensionSummary(record) {
18084
- return `${record.name}@${record.version} ${record.status} ${basename4(record.source)} ${record.signature_verified ? "signed" : "unsigned"}`;
18131
+ return `${record.name}@${record.version} ${record.status} ${basename5(record.source)} ${record.signature_verified ? "signed" : "unsigned"}`;
18085
18132
  }
18086
18133
  var BUILTIN_CLI_COMMANDS;
18087
18134
  var init_local_extensions = __esm(() => {
@@ -19276,7 +19323,7 @@ __export(exports_doctor, {
19276
19323
  runTodosDoctor: () => runTodosDoctor
19277
19324
  });
19278
19325
  import { chmodSync, copyFileSync, existsSync as existsSync13, mkdirSync as mkdirSync6, statSync as statSync6 } from "fs";
19279
- import { basename as basename5, dirname as dirname7, join as join11 } from "path";
19326
+ import { basename as basename6, dirname as dirname7, join as join11 } from "path";
19280
19327
  function tableExists(db, table) {
19281
19328
  return Boolean(db.query("SELECT name FROM sqlite_master WHERE type='table' AND name=?").get(table));
19282
19329
  }
@@ -19433,13 +19480,13 @@ function createBackup(dbPath) {
19433
19480
  if (!existsSync13(dbPath))
19434
19481
  return;
19435
19482
  const stamp = now().replace(/[:.]/g, "-");
19436
- const backupDir = join11(dirname7(dbPath), `${basename5(dbPath)}.backup-${stamp}`);
19483
+ const backupDir = join11(dirname7(dbPath), `${basename6(dbPath)}.backup-${stamp}`);
19437
19484
  const files = [];
19438
19485
  mkdirSync6(backupDir, { recursive: true });
19439
19486
  for (const source2 of [dbPath, `${dbPath}-wal`, `${dbPath}-shm`]) {
19440
19487
  if (!existsSync13(source2))
19441
19488
  continue;
19442
- const target = join11(backupDir, basename5(source2));
19489
+ const target = join11(backupDir, basename6(source2));
19443
19490
  copyFileSync(source2, target);
19444
19491
  files.push(target);
19445
19492
  }
@@ -25045,7 +25092,7 @@ __export(exports_mention_resolver, {
25045
25092
  resolveMentions: () => resolveMentions
25046
25093
  });
25047
25094
  import { existsSync as existsSync14, readdirSync as readdirSync4, readFileSync as readFileSync8, statSync as statSync7 } from "fs";
25048
- import { basename as basename6, isAbsolute, join as join13, relative as relative5, resolve as resolve14, sep as sep2 } from "path";
25095
+ import { basename as basename7, isAbsolute, join as join13, relative as relative5, resolve as resolve14, sep as sep2 } from "path";
25049
25096
  function blankResolution(parsed) {
25050
25097
  return {
25051
25098
  input: parsed.input,
@@ -25184,7 +25231,7 @@ function walkSourceFiles(root, current = root, files = []) {
25184
25231
  }
25185
25232
  if (!entry.isFile())
25186
25233
  continue;
25187
- const extension = `.${basename6(entry.name).split(".").pop() || ""}`;
25234
+ const extension = `.${basename7(entry.name).split(".").pop() || ""}`;
25188
25235
  if (SOURCE_EXTENSIONS.has(extension) && statSync7(absolutePath).size <= 512 * 1024) {
25189
25236
  files.push(absolutePath);
25190
25237
  }
@@ -32921,13 +32968,27 @@ var init_task_meta_tools = __esm(() => {
32921
32968
  var exports_agent_run_dispatcher = {};
32922
32969
  __export(exports_agent_run_dispatcher, {
32923
32970
  upsertAgentRunAdapter: () => upsertAgentRunAdapter,
32971
+ saveAgentAdapters: () => saveAgentAdapters,
32924
32972
  runNextAgentDispatch: () => runNextAgentDispatch,
32925
32973
  retryAgentRunDispatch: () => retryAgentRunDispatch,
32974
+ retryAgentRun: () => retryAgentRun,
32975
+ resetAgentAdapterCache: () => resetAgentAdapterCache,
32926
32976
  removeAgentRunAdapter: () => removeAgentRunAdapter,
32927
32977
  queueAgentRun: () => queueAgentRun,
32978
+ loadAgentAdapters: () => loadAgentAdapters,
32979
+ listAgentRuns: () => listAgentRuns,
32928
32980
  listAgentRunQueue: () => listAgentRunQueue,
32929
32981
  listAgentRunAdapters: () => listAgentRunAdapters,
32930
- cancelAgentRunDispatch: () => cancelAgentRunDispatch
32982
+ getDefaultAgentAdapters: () => getDefaultAgentAdapters,
32983
+ getAgentRun: () => getAgentRun,
32984
+ getAgentAdapter: () => getAgentAdapter,
32985
+ failAgentRun: () => failAgentRun,
32986
+ enqueueAgentRun: () => enqueueAgentRun,
32987
+ completeAgentRun: () => completeAgentRun,
32988
+ claimNextAgentRun: () => claimNextAgentRun,
32989
+ cancelAgentRunDispatch: () => cancelAgentRunDispatch,
32990
+ cancelAgentRun: () => cancelAgentRun,
32991
+ AGENT_RUN_SCHEMA_VERSION: () => AGENT_RUN_SCHEMA_VERSION
32931
32992
  });
32932
32993
  function dispatcherFromRun(run) {
32933
32994
  const value = run.metadata["agent_run_dispatcher"];
@@ -33115,6 +33176,119 @@ async function runNextAgentDispatch(input = {}, db) {
33115
33176
  }, d);
33116
33177
  return { run_id: next.run.id, task_id: next.run.task_id, command, dry_run: false, status, exit_code: exitCode, output_summary: outputSummary };
33117
33178
  }
33179
+ function listAgentRuns(filter = {}, db) {
33180
+ let runs = listAgentRunQueue(db);
33181
+ if (filter.task_id)
33182
+ runs = runs.filter((r) => r.task_id === filter.task_id);
33183
+ if (filter.status)
33184
+ runs = runs.filter((r) => r.status === filter.status);
33185
+ if (filter.agent_id)
33186
+ runs = runs.filter((r) => r.agent_id === filter.agent_id);
33187
+ if (filter.limit && filter.limit > 0)
33188
+ runs = runs.slice(0, filter.limit);
33189
+ return runs;
33190
+ }
33191
+ function retryAgentRun(runId, db) {
33192
+ return retryAgentRunDispatch(runId, db);
33193
+ }
33194
+ function toAgentRun(item) {
33195
+ const md = item.run.metadata || {};
33196
+ return {
33197
+ id: item.run.id,
33198
+ task_id: item.run.task_id,
33199
+ agent_id: item.run.agent_id,
33200
+ adapter: item.dispatcher.adapter ?? null,
33201
+ status: item.dispatcher.state,
33202
+ command: item.dispatcher.command ?? null,
33203
+ evidence: md["agent_run_evidence"] ?? {},
33204
+ queued_at: item.dispatcher.queued_at,
33205
+ started_at: item.dispatcher.started_at ?? null,
33206
+ completed_at: item.dispatcher.completed_at ?? null,
33207
+ metadata: md
33208
+ };
33209
+ }
33210
+ function queuedRunById(runId, db) {
33211
+ const d = db || getDatabase();
33212
+ const run = getTaskRun(resolveTaskRunId(runId, d), d);
33213
+ if (!run)
33214
+ return null;
33215
+ const item = { run, dispatcher: dispatcherFromRun(run) };
33216
+ return item.dispatcher ? item : null;
33217
+ }
33218
+ function enqueueAgentRun(input, db) {
33219
+ const command = input.command || resolveAdapter(input.adapter)?.command || `agent-run:${input.adapter ?? "custom"}`;
33220
+ const queued = queueAgentRun({
33221
+ task_id: input.task_id,
33222
+ agent_id: input.agent_id,
33223
+ adapter: input.adapter,
33224
+ command,
33225
+ metadata: {
33226
+ ...input.metadata,
33227
+ ...input.plan_id ? { plan_id: input.plan_id } : {},
33228
+ ...input.evidence ? { agent_run_evidence: input.evidence } : {}
33229
+ }
33230
+ }, db);
33231
+ return toAgentRun(queued);
33232
+ }
33233
+ function claimNextAgentRun(agentId, options = {}, db) {
33234
+ const d = db || getDatabase();
33235
+ const next = listAgentRunQueue(d).find((item) => item.dispatcher.state === "queued" && (!options.adapter || item.dispatcher.adapter === options.adapter));
33236
+ if (!next)
33237
+ return null;
33238
+ const dispatcher = { ...next.dispatcher, state: "running", started_at: new Date().toISOString() };
33239
+ const updated = updateDispatcherMetadata(next.run.id, dispatcher, d);
33240
+ if (agentId)
33241
+ d.run("UPDATE task_runs SET agent_id = ?, updated_at = ? WHERE id = ?", [agentId, now(), next.run.id]);
33242
+ const reread = getTaskRun(next.run.id, d) ?? updated;
33243
+ return toAgentRun({ run: reread, dispatcher });
33244
+ }
33245
+ function completeAgentRun(runId, evidence = {}, db) {
33246
+ const d = db || getDatabase();
33247
+ const item = queuedRunById(runId, d);
33248
+ if (!item)
33249
+ throw new Error(`Agent run not found: ${runId}`);
33250
+ const dispatcher = { ...item.dispatcher, state: "completed", completed_at: new Date().toISOString() };
33251
+ updateDispatcherMetadata(item.run.id, dispatcher, d);
33252
+ const md = { ...item.run.metadata || {}, agent_run_evidence: { ...item.run.metadata?.["agent_run_evidence"], ...evidence } };
33253
+ d.run("UPDATE task_runs SET metadata = ? WHERE id = ?", [JSON.stringify(md), item.run.id]);
33254
+ finishTaskRun({ run_id: item.run.id, status: "completed", summary: "agent run completed", agent_id: item.run.agent_id ?? undefined }, d);
33255
+ return toAgentRun({ run: getTaskRun(item.run.id, d), dispatcher });
33256
+ }
33257
+ function failAgentRun(runId, error, db) {
33258
+ const d = db || getDatabase();
33259
+ const item = queuedRunById(runId, d);
33260
+ if (!item)
33261
+ throw new Error(`Agent run not found: ${runId}`);
33262
+ const dispatcher = { ...item.dispatcher, state: "failed", completed_at: new Date().toISOString(), last_error: error };
33263
+ updateDispatcherMetadata(item.run.id, dispatcher, d);
33264
+ finishTaskRun({ run_id: item.run.id, status: "failed", summary: error || "agent run failed", agent_id: item.run.agent_id ?? undefined }, d);
33265
+ return toAgentRun({ run: getTaskRun(item.run.id, d), dispatcher });
33266
+ }
33267
+ function cancelAgentRun(runId, db) {
33268
+ return toAgentRun(cancelAgentRunDispatch(runId, db));
33269
+ }
33270
+ function getAgentRun(runId, db) {
33271
+ const item = queuedRunById(runId, db);
33272
+ return item ? toAgentRun(item) : null;
33273
+ }
33274
+ function loadAgentAdapters() {
33275
+ return listAgentRunAdapters();
33276
+ }
33277
+ function saveAgentAdapters(adapters) {
33278
+ const config = loadConfig();
33279
+ const map = {};
33280
+ for (const a of adapters)
33281
+ map[a.name] = a;
33282
+ saveConfig({ ...config, agent_run_adapters: map });
33283
+ }
33284
+ function getAgentAdapter(name) {
33285
+ return loadConfig().agent_run_adapters?.[name] ?? null;
33286
+ }
33287
+ function getDefaultAgentAdapters() {
33288
+ return listAgentRunAdapters();
33289
+ }
33290
+ function resetAgentAdapterCache() {}
33291
+ var AGENT_RUN_SCHEMA_VERSION = "todos.agent_run.v1";
33118
33292
  var init_agent_run_dispatcher = __esm(() => {
33119
33293
  init_task_runs();
33120
33294
  init_database();
@@ -33129,7 +33303,9 @@ __export(exports_verification_providers, {
33129
33303
  upsertVerificationProvider: () => upsertVerificationProvider,
33130
33304
  runVerificationProvider: () => runVerificationProvider,
33131
33305
  removeVerificationProvider: () => removeVerificationProvider,
33306
+ listVerificationRecords: () => listVerificationRecords,
33132
33307
  listVerificationProviders: () => listVerificationProviders,
33308
+ getVerificationRecord: () => getVerificationRecord,
33133
33309
  discoverVerificationProviderCapabilities: () => discoverVerificationProviderCapabilities
33134
33310
  });
33135
33311
  import { existsSync as existsSync15, readFileSync as readFileSync10 } from "fs";
@@ -33347,6 +33523,53 @@ async function runVerificationProvider(input, db) {
33347
33523
  }
33348
33524
  return result;
33349
33525
  }
33526
+ function verificationRowToRecord(row) {
33527
+ return {
33528
+ id: String(row["id"]),
33529
+ task_id: String(row["task_id"]),
33530
+ command: String(row["command"] ?? ""),
33531
+ status: row["status"] ?? "unknown",
33532
+ output_summary: row["output_summary"] ?? null,
33533
+ artifact_path: row["artifact_path"] ?? null,
33534
+ agent_id: row["agent_id"] ?? null,
33535
+ run_at: String(row["run_at"] ?? ""),
33536
+ created_at: String(row["created_at"] ?? ""),
33537
+ evidence: {
33538
+ command: row["command"] ?? null,
33539
+ status: row["status"] ?? "unknown",
33540
+ output_summary: row["output_summary"] ?? null,
33541
+ artifact_path: row["artifact_path"] ?? null,
33542
+ agent_id: row["agent_id"] ?? null,
33543
+ run_record_id: null
33544
+ }
33545
+ };
33546
+ }
33547
+ function getVerificationRecord(id, db) {
33548
+ const d = db || getDatabase();
33549
+ const row = d.query("SELECT * FROM task_verifications WHERE id = ?").get(id);
33550
+ return row ? verificationRowToRecord(row) : null;
33551
+ }
33552
+ function listVerificationRecords(filter = {}, db) {
33553
+ const d = db || getDatabase();
33554
+ const conditions = [];
33555
+ const params = [];
33556
+ if (filter.task_id) {
33557
+ conditions.push("task_id = ?");
33558
+ params.push(filter.task_id);
33559
+ }
33560
+ if (filter.agent_id) {
33561
+ conditions.push("agent_id = ?");
33562
+ params.push(filter.agent_id);
33563
+ }
33564
+ if (filter.status) {
33565
+ conditions.push("status = ?");
33566
+ params.push(filter.status);
33567
+ }
33568
+ const where = conditions.length > 0 ? `WHERE ${conditions.join(" AND ")}` : "";
33569
+ const limitClause = filter.limit && filter.limit > 0 ? ` LIMIT ${Math.floor(filter.limit)}` : "";
33570
+ const rows = d.query(`SELECT * FROM task_verifications ${where} ORDER BY run_at DESC, created_at DESC${limitClause}`).all(...params);
33571
+ return rows.map(verificationRowToRecord);
33572
+ }
33350
33573
  var DEFAULT_RETRY, DEFAULT_CAPABILITIES;
33351
33574
  var init_verification_providers = __esm(() => {
33352
33575
  init_task_commits();
@@ -42993,6 +43216,8 @@ Dashboard not found at: ${dashboardDir}`);
42993
43216
  return handleMcpHttpRequest2(req, buildServer2);
42994
43217
  }
42995
43218
  if (method === "OPTIONS") {
43219
+ const reqOrigin2 = req.headers.get("origin") || undefined;
43220
+ const allowed = reqOrigin2 && (reqOrigin2 === `http://localhost:${port}` || reqOrigin2 === "http://localhost:0");
42996
43221
  return new Response(null, {
42997
43222
  headers: corsHeaders || {
42998
43223
  Vary: "Origin"
@@ -0,0 +1,41 @@
1
+ export type TodosCliMcpParityDomain = "tasks" | "references" | "knowledge" | "risks" | "retrospectives" | "agent-reliability" | "local-reports" | "local-backups" | "local-fields" | "workflow-states" | "dedupe" | "verification-providers" | "projects" | "plans" | "roadmaps" | "capacity" | "audit-ledger" | "release-compatibility" | "usage-ledger" | "terminal-dashboard" | "scale-hardening" | "templates" | "workspace-trust" | "secret-safety" | "retention-cleanup" | "runner-sandbox" | "extensions" | "workflow-prompts" | "policy-packs" | "approval-gates" | "review-queues" | "local-event-hooks" | "terminal-notifications" | "branch-work-plans" | "natural-language-intake" | "encryption" | "agent-runs" | "source-index" | "calendar" | "kanban-boards" | "time-tracking" | "handoffs" | "runs" | "comments" | "search" | "context-packs" | "release-notes" | "environment-snapshots" | "onboarding" | "local-snapshots" | "imports" | "exports";
2
+ export type TodosCliMcpParityStatus = "matched" | "intentional-gap";
3
+ export interface CreateCliMcpParityManifestOptions {
4
+ version?: string;
5
+ generatedAt?: string;
6
+ }
7
+ export interface TodosCliMcpParityPackageSource {
8
+ packageName: "@hasna/todos";
9
+ repository: "hasna/todos";
10
+ version: string;
11
+ }
12
+ export interface TodosCliMcpParityEntry {
13
+ domain: TodosCliMcpParityDomain;
14
+ cliCommands: string[];
15
+ mcpTools: string[];
16
+ jsonContracts: string[];
17
+ errorContracts: string[];
18
+ status: TodosCliMcpParityStatus;
19
+ intentionalGaps?: TodosCliMcpParityGap[];
20
+ gapReason?: string;
21
+ example: {
22
+ cli: string;
23
+ mcpTool?: string;
24
+ };
25
+ }
26
+ export interface TodosCliMcpParityGap {
27
+ cliCommand: string;
28
+ reason: string;
29
+ }
30
+ export interface TodosCliMcpParityManifest {
31
+ schemaVersion: 1;
32
+ generatedAt: string;
33
+ package: TodosCliMcpParityPackageSource;
34
+ localOnly: true;
35
+ noNetworkRequired: true;
36
+ parity: TodosCliMcpParityEntry[];
37
+ }
38
+ export declare const TODOS_CLI_MCP_PARITY: TodosCliMcpParityEntry[];
39
+ export declare function createCliMcpParityManifest(options?: CreateCliMcpParityManifestOptions): TodosCliMcpParityManifest;
40
+ export declare const TODOS_CLI_MCP_PARITY_MANIFEST: TodosCliMcpParityManifest;
41
+ //# sourceMappingURL=cli-mcp-parity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-mcp-parity.d.ts","sourceRoot":"","sources":["../src/cli-mcp-parity.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,uBAAuB,GAC/B,OAAO,GACP,YAAY,GACZ,WAAW,GACX,OAAO,GACP,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,eAAe,GACf,cAAc,GACd,iBAAiB,GACjB,QAAQ,GACR,wBAAwB,GACxB,UAAU,GACV,OAAO,GACP,UAAU,GACV,UAAU,GACV,cAAc,GACd,uBAAuB,GACvB,cAAc,GACd,oBAAoB,GACpB,iBAAiB,GACjB,WAAW,GACX,iBAAiB,GACjB,eAAe,GACf,mBAAmB,GACnB,gBAAgB,GAChB,YAAY,GACZ,kBAAkB,GAClB,cAAc,GACd,gBAAgB,GAChB,eAAe,GACf,mBAAmB,GACnB,wBAAwB,GACxB,mBAAmB,GACnB,yBAAyB,GACzB,YAAY,GACZ,YAAY,GACZ,cAAc,GACd,UAAU,GACV,eAAe,GACf,eAAe,GACf,UAAU,GACV,MAAM,GACN,UAAU,GACV,QAAQ,GACR,eAAe,GACf,eAAe,GACf,uBAAuB,GACvB,YAAY,GACZ,iBAAiB,GACjB,SAAS,GACT,SAAS,CAAC;AAEd,MAAM,MAAM,uBAAuB,GAAG,SAAS,GAAG,iBAAiB,CAAC;AAEpE,MAAM,WAAW,iCAAiC;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,8BAA8B;IAC7C,WAAW,EAAE,cAAc,CAAC;IAC5B,UAAU,EAAE,aAAa,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,uBAAuB,CAAC;IAChC,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,MAAM,EAAE,uBAAuB,CAAC;IAChC,eAAe,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE;QACP,GAAG,EAAE,MAAM,CAAC;QACZ,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,yBAAyB;IACxC,aAAa,EAAE,CAAC,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,8BAA8B,CAAC;IACxC,SAAS,EAAE,IAAI,CAAC;IAChB,iBAAiB,EAAE,IAAI,CAAC;IACxB,MAAM,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAUD,eAAO,MAAM,oBAAoB,EAAE,sBAAsB,EAusCxD,CAAC;AAYF,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,yBAAyB,CAW3B;AAED,eAAO,MAAM,6BAA6B,2BAExC,CAAC"}
@@ -0,0 +1,87 @@
1
+ export { TODOS_JSON_CONTRACTS, TODOS_JSON_CONTRACTS_MANIFEST, createJsonContractsManifest, getJsonContract, validateJsonContract, } from "./json-contracts.js";
2
+ export { TODOS_ONBOARDING_FIXTURE_LIBRARY_VERSION, TODOS_ONBOARDING_FIXTURE_SOURCE, getOnboardingFixture, getOnboardingFixtureBundle, importOnboardingFixture, listOnboardingFixtures, writeOnboardingFixtureFiles, } from "./lib/onboarding-fixtures.js";
3
+ export { LOCAL_BACKUP_CHECKSUM_ALGORITHM, TODOS_LOCAL_BACKUP_KIND, TODOS_LOCAL_BACKUP_SCHEMA_VERSION, TODOS_LOCAL_INTEGRITY_KIND, TODOS_LOCAL_INTEGRITY_SCHEMA_VERSION, checkLocalIntegrity, createLocalBackup, readLocalBackupFile, restoreLocalBackup, verifyLocalBackup, writeLocalBackupFile, } from "./lib/local-backups.js";
4
+ export { TODOS_LOCAL_BRIDGE_KIND, TODOS_LOCAL_BRIDGE_SCHEMA_VERSION, createLocalBridgeBundle, importLocalBridgeBundle, validateLocalBridgeBundle, } from "./lib/local-bridge.js";
5
+ export { TODOS_LOCAL_SNAPSHOT_SCHEMA_VERSION, getLocalSnapshot, listLocalSnapshotResources, pollLocalSnapshots, renderLocalSnapshotMarkdown, } from "./lib/local-snapshots.js";
6
+ export { TODOS_SDK_INTEGRATION_FIXTURE_GENERATED_AT, TODOS_SDK_INTEGRATION_FIXTURE_SCHEMA_VERSION, createSdkIntegrationFixturePack, listSdkIntegrationExamples, writeSdkIntegrationFixtures, } from "./lib/sdk-integration-fixtures.js";
7
+ export { approveReviewItem, claimReviewItem, listReviewQueue, listReviewRoutingRules, removeReviewRoutingRule, reopenReviewItem, requestReviewQueue, returnReviewItem, upsertReviewRoutingRule, } from "./lib/review-queues.js";
8
+ export { LOCAL_ROADMAP_SCHEMA_VERSION, createMilestone, createRoadmap, deleteMilestone, deleteRoadmap, exportRoadmapBundle, getRoadmap, importRoadmapBundle, listMilestones, listReleaseGroups, listRoadmaps, renderRoadmapMarkdown, summarizeMilestone, summarizeRoadmap, updateMilestone, updateRoadmap, upsertReleaseGroup, } from "./lib/roadmaps.js";
9
+ export { LOCAL_AUDIT_LEDGER_HASH_ALGORITHM, LOCAL_AUDIT_LEDGER_SCHEMA_VERSION, getLocalAuditLedger, listLocalAuditLedgerCheckpoints, renderLocalAuditLedgerMarkdown, sealLocalAuditLedger, verifyLocalAuditLedger, } from "./lib/audit-ledger.js";
10
+ export { LOCAL_RELEASE_COMPATIBILITY_SCHEMA_VERSION, createReleaseCompatibilityReport, renderReleaseCompatibilityMarkdown, } from "./lib/release-compatibility.js";
11
+ export { EXTERNAL_ISSUE_IMPORT_SCHEMA_VERSION, importExternalIssues, } from "./lib/external-issue-importers.js";
12
+ export { LOCAL_NOTIFICATION_SCHEMA_VERSION, checkLocalNotifications, } from "./lib/local-notifications.js";
13
+ export { LOCAL_USAGE_LEDGER_SCHEMA_VERSION, createLocalUsageLedger, renderLocalUsageLedgerMarkdown, } from "./lib/usage-ledger.js";
14
+ export { LOCAL_REPORT_SCHEMA_VERSION, LOCAL_REPORT_TYPES, createLocalReport, listLocalReportTypes, renderLocalReportMarkdown, } from "./lib/local-reports.js";
15
+ export { DEFAULT_ENCRYPTION_KEY_ENV, DEFAULT_ENCRYPTION_PROFILE, TODOS_ENCRYPTED_BRIDGE_KIND, TODOS_ENCRYPTED_VALUE_KIND, TODOS_ENCRYPTION_SCHEMA_VERSION, createEncryptedBridgeBundle, decryptBridgeBundle, decryptString, decryptValue, encryptSensitiveFields, encryptString, encryptValue, encryptionProfileStatus, isEncryptedBridgeBundle, isEncryptedValue, listEncryptionProfiles, removeEncryptionProfile, upsertEncryptionProfile, } from "./lib/local-encryption.js";
16
+ export type { CreateJsonContractsManifestOptions, JsonContractValidationIssue, JsonContractValidationResult, TodosJsonContractPackageSource, TodosJsonContractsManifest, TodosJsonFieldContract, TodosJsonFieldType, TodosJsonObjectContract, TodosJsonStability, TodosJsonSurface, } from "./json-contracts.js";
17
+ export type { LocalAuditLedger, LocalAuditLedgerEntry, LocalAuditLedgerInput, LocalAuditLedgerScope, LocalAuditLedgerSource, LocalAuditLedgerVerifyResult, SealLocalAuditLedgerInput, } from "./lib/audit-ledger.js";
18
+ export type { CreateReleaseCompatibilityReportOptions, ReleaseCompatibilityCheck, ReleaseCompatibilityReport, ReleaseCompatibilityStatus, } from "./lib/release-compatibility.js";
19
+ export type { ExternalIssueExistingMatch, ExternalIssueImportInput, ExternalIssueImportResult, ExternalIssueProvider, ExternalIssueRecord, } from "./lib/external-issue-importers.js";
20
+ export type { CheckLocalNotificationsInput, CheckLocalNotificationsResult, LocalNotificationAlert, LocalNotificationKind, LocalNotificationQuietHours, LocalNotificationSeverity, } from "./lib/local-notifications.js";
21
+ export type { UsageLedgerOptions, UsageLedgerQuotaInput, UsageLedgerQuotaResult, UsageLedgerReport, } from "./lib/usage-ledger.js";
22
+ export type { LocalReport, LocalReportAgentSummary, LocalReportBlockedTask, LocalReportOptions, LocalReportPlanSummary, LocalReportRunSummary, LocalReportTaskSummary, LocalReportTaskView, LocalReportType, LocalReportVerificationSummary, } from "./lib/local-reports.js";
23
+ export type { ImportOnboardingFixtureOptions, OnboardingFixture, OnboardingFixtureSummary, WriteOnboardingFixtureResult, } from "./lib/onboarding-fixtures.js";
24
+ export type { CreateLocalBackupOptions, LocalBackupBundle, LocalBackupManifest, LocalBackupRestoreResult, LocalBackupSqliteIntegrity, LocalBackupVerification, LocalIntegrityReport, RestoreLocalBackupOptions, } from "./lib/local-backups.js";
25
+ export type { ExportLocalBridgeOptions, LocalBridgeImportConflict, LocalBridgeImportResult, LocalBridgeValidationResult, TodosLocalBridgeBundle, TodosLocalBridgeData, TodosLocalBridgePackageSource, TodosLocalBridgeSource, } from "./lib/local-bridge.js";
26
+ export type { LocalSnapshot, LocalSnapshotCatalogEntry, LocalSnapshotOptions, LocalSnapshotPollResult, LocalSnapshotType, } from "./lib/local-snapshots.js";
27
+ export type { SdkIntegrationExample, SdkIntegrationExampleSurface, SdkIntegrationFixtureDatabase, SdkIntegrationFixturePack, WriteSdkIntegrationFixturesResult, } from "./lib/sdk-integration-fixtures.js";
28
+ export type { ClaimReviewInput, DecideReviewInput, RequestReviewQueueInput, ReviewQueueHistoryEntry, ReviewQueueItem, ReviewQueueListOptions, ReviewQueueMetadata, ReviewQueueState, UpsertReviewRoutingRuleInput, } from "./lib/review-queues.js";
29
+ export type { CreateMilestoneInput, CreateRoadmapInput, ImportRoadmapBundleResult, LocalMilestoneConfig, LocalMilestoneStatus, LocalReleaseGroupConfig, LocalRoadmapConfig, LocalRoadmapStatus, LocalRoadmapStoreConfig, MilestoneSummary, RoadmapBundle, RoadmapProgressSummary, RoadmapSummary, UpdateMilestoneInput, UpdateRoadmapInput, UpsertReleaseGroupInput, } from "./lib/roadmaps.js";
30
+ export type { CapacityProfileQuery, ForecastRiskFlag, LocalCapacityProfileConfig, LocalCapacityStoreConfig, PlanningForecast, PlanningForecastInput, PlanningForecastTask, UpsertCapacityProfileInput, } from "./lib/capacity-forecasts.js";
31
+ export type { EncryptedLocalBridgeBundle, LocalEncryptionEnvelope, UpsertEncryptionProfileInput, } from "./lib/local-encryption.js";
32
+ import type { DispatchStatus, PlanStatus, TaskPriority, TaskStatus } from "./types/index.js";
33
+ import type { TodosJsonContractsManifest } from "./json-contracts.js";
34
+ export type TodosHttpMethod = "GET" | "POST" | "PATCH" | "DELETE";
35
+ export type TodosContractStability = "stable" | "experimental";
36
+ export interface CreateContractsManifestOptions {
37
+ version?: string;
38
+ generatedAt?: string;
39
+ }
40
+ export interface TodosContractPackageSource {
41
+ packageName: "@hasna/todos";
42
+ repository: "hasna/todos";
43
+ version: string;
44
+ }
45
+ export interface TodosJsonSchema {
46
+ type: string;
47
+ properties?: Record<string, unknown>;
48
+ required?: string[];
49
+ additionalProperties?: boolean;
50
+ items?: TodosJsonSchema;
51
+ }
52
+ export interface TodosApiRouteContract {
53
+ id: string;
54
+ method: TodosHttpMethod;
55
+ path: string;
56
+ description: string;
57
+ auth: "optional-api-key" | "api-key";
58
+ requestSchema: TodosJsonSchema | null;
59
+ responseSchema: TodosJsonSchema;
60
+ tags: string[];
61
+ stability: TodosContractStability;
62
+ }
63
+ export interface TodosErrorContract {
64
+ code: string;
65
+ name: string;
66
+ suggestion: string;
67
+ httpStatus: number | null;
68
+ }
69
+ export interface TodosContractsManifest {
70
+ schemaVersion: 1;
71
+ generatedAt: string;
72
+ package: TodosContractPackageSource;
73
+ values: {
74
+ taskStatuses: readonly TaskStatus[];
75
+ taskPriorities: readonly TaskPriority[];
76
+ planStatuses: readonly PlanStatus[];
77
+ dispatchStatuses: readonly DispatchStatus[];
78
+ };
79
+ apiRoutes: TodosApiRouteContract[];
80
+ errorCodes: TodosErrorContract[];
81
+ jsonOutputs: TodosJsonContractsManifest;
82
+ }
83
+ export declare const TODOS_API_ROUTES: TodosApiRouteContract[];
84
+ export declare const TODOS_ERROR_CODES: TodosErrorContract[];
85
+ export declare function createContractsManifest(options?: CreateContractsManifestOptions): TodosContractsManifest;
86
+ export declare const TODOS_CONTRACTS: TodosContractsManifest;
87
+ //# sourceMappingURL=contracts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../src/contracts.ts"],"names":[],"mappings":"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"}