@hasna/todos 0.15.52 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/CHANGELOG.md +1993 -0
  2. package/README.md +356 -42
  3. package/dist/ai-tools.d.ts.map +1 -1
  4. package/dist/ai.d.ts.map +1 -1
  5. package/dist/cli/cloud-router.d.ts +162 -72
  6. package/dist/cli/cloud-router.d.ts.map +1 -1
  7. package/dist/cli/commands/agent-commands.d.ts.map +1 -1
  8. package/dist/cli/commands/config-serve-commands.d.ts.map +1 -1
  9. package/dist/cli/commands/delegate.d.ts.map +1 -1
  10. package/dist/cli/commands/environment-snapshots.d.ts.map +1 -1
  11. package/dist/cli/commands/machines-api.d.ts +4 -0
  12. package/dist/cli/commands/machines-api.d.ts.map +1 -0
  13. package/dist/cli/commands/machines.d.ts.map +1 -1
  14. package/dist/cli/commands/mcp-hooks-commands.d.ts.map +1 -1
  15. package/dist/cli/commands/plan-commands.d.ts +3 -0
  16. package/dist/cli/commands/plan-commands.d.ts.map +1 -0
  17. package/dist/cli/commands/plan-template-commands.d.ts.map +1 -1
  18. package/dist/cli/commands/pr-group-commands.d.ts.map +1 -1
  19. package/dist/cli/commands/project-commands.d.ts.map +1 -1
  20. package/dist/cli/commands/query-commands.d.ts.map +1 -1
  21. package/dist/cli/commands/storage-commands.d.ts.map +1 -1
  22. package/dist/cli/commands/task-list-commands.d.ts +3 -0
  23. package/dist/cli/commands/task-list-commands.d.ts.map +1 -0
  24. package/dist/cli/commands/template-commands.d.ts +3 -0
  25. package/dist/cli/commands/template-commands.d.ts.map +1 -0
  26. package/dist/cli/helpers.d.ts.map +1 -1
  27. package/dist/cli/index.js +22072 -15949
  28. package/dist/cli/machine-api.d.ts +7 -0
  29. package/dist/cli/machine-api.d.ts.map +1 -0
  30. package/dist/cli/plan-read-api.d.ts +6 -0
  31. package/dist/cli/plan-read-api.d.ts.map +1 -0
  32. package/dist/cli/project-api.d.ts +119 -0
  33. package/dist/cli/project-api.d.ts.map +1 -0
  34. package/dist/cli/stage-a.d.ts +25 -5
  35. package/dist/cli/stage-a.d.ts.map +1 -1
  36. package/dist/cli/task-query-api.d.ts +21 -0
  37. package/dist/cli/task-query-api.d.ts.map +1 -0
  38. package/dist/cli/template-api.d.ts +7 -0
  39. package/dist/cli/template-api.d.ts.map +1 -0
  40. package/dist/cli/template-remote.d.ts +90 -0
  41. package/dist/cli/template-remote.d.ts.map +1 -0
  42. package/dist/cli-mcp-parity.d.ts.map +1 -1
  43. package/dist/contracts.js +908 -291
  44. package/dist/db/agents.d.ts +8 -0
  45. package/dist/db/agents.d.ts.map +1 -1
  46. package/dist/db/builtin-templates.d.ts +2 -33
  47. package/dist/db/builtin-templates.d.ts.map +1 -1
  48. package/dist/db/database.d.ts +6 -0
  49. package/dist/db/database.d.ts.map +1 -1
  50. package/dist/db/handoffs.d.ts.map +1 -1
  51. package/dist/db/identity-mapping.d.ts +25 -0
  52. package/dist/db/identity-mapping.d.ts.map +1 -1
  53. package/dist/db/machines.d.ts.map +1 -1
  54. package/dist/db/migrations.d.ts.map +1 -1
  55. package/dist/db/plans.d.ts.map +1 -1
  56. package/dist/db/retrospectives.d.ts.map +1 -1
  57. package/dist/db/schema.d.ts.map +1 -1
  58. package/dist/db/task-crud.d.ts.map +1 -1
  59. package/dist/db/task-lists.d.ts.map +1 -1
  60. package/dist/db/task-runs.d.ts +2 -0
  61. package/dist/db/task-runs.d.ts.map +1 -1
  62. package/dist/index.d.ts +2 -2
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +4341 -1756
  65. package/dist/lib/assignee-validation.d.ts.map +1 -1
  66. package/dist/lib/builtin-template-library.d.ts +32 -0
  67. package/dist/lib/builtin-template-library.d.ts.map +1 -0
  68. package/dist/lib/cli-reference.d.ts.map +1 -1
  69. package/dist/lib/config.d.ts +10 -13
  70. package/dist/lib/config.d.ts.map +1 -1
  71. package/dist/lib/db-backup.d.ts +1 -1
  72. package/dist/lib/db-backup.d.ts.map +1 -1
  73. package/dist/lib/env.d.ts +18 -0
  74. package/dist/lib/env.d.ts.map +1 -0
  75. package/dist/lib/environment-snapshots.d.ts.map +1 -1
  76. package/dist/lib/feature-manifest.d.ts.map +1 -1
  77. package/dist/lib/gatherer.d.ts.map +1 -1
  78. package/dist/lib/headless-boundaries.d.ts +4 -3
  79. package/dist/lib/headless-boundaries.d.ts.map +1 -1
  80. package/dist/lib/local-encryption.d.ts +12 -0
  81. package/dist/lib/local-encryption.d.ts.map +1 -1
  82. package/dist/lib/local-opt-in.d.ts +104 -0
  83. package/dist/lib/local-opt-in.d.ts.map +1 -0
  84. package/dist/lib/paths.d.ts +20 -1
  85. package/dist/lib/paths.d.ts.map +1 -1
  86. package/dist/lib/plan-artifacts.d.ts +1 -0
  87. package/dist/lib/plan-artifacts.d.ts.map +1 -1
  88. package/dist/lib/plan-client-boundary.d.ts +2 -0
  89. package/dist/lib/plan-client-boundary.d.ts.map +1 -0
  90. package/dist/lib/plan-schedule.d.ts +6 -0
  91. package/dist/lib/plan-schedule.d.ts.map +1 -0
  92. package/dist/lib/project-panel.d.ts +6 -0
  93. package/dist/lib/project-panel.d.ts.map +1 -1
  94. package/dist/lib/project-receipt.d.ts +3 -0
  95. package/dist/lib/project-receipt.d.ts.map +1 -0
  96. package/dist/lib/sandbox-profiles.d.ts.map +1 -1
  97. package/dist/lib/shared-plan-artifacts.d.ts +14 -0
  98. package/dist/lib/shared-plan-artifacts.d.ts.map +1 -0
  99. package/dist/lib/sync.d.ts.map +1 -1
  100. package/dist/lib/task-list-client-boundary.d.ts +3 -0
  101. package/dist/lib/task-list-client-boundary.d.ts.map +1 -0
  102. package/dist/lib/task-routing.d.ts.map +1 -1
  103. package/dist/lib/template-client-boundary.d.ts +2 -0
  104. package/dist/lib/template-client-boundary.d.ts.map +1 -0
  105. package/dist/mcp/index.d.ts +53 -0
  106. package/dist/mcp/index.d.ts.map +1 -1
  107. package/dist/mcp/index.js +50124 -60838
  108. package/dist/mcp/plan-api.d.ts +6 -0
  109. package/dist/mcp/plan-api.d.ts.map +1 -0
  110. package/dist/mcp/remote-authority.d.ts +49 -0
  111. package/dist/mcp/remote-authority.d.ts.map +1 -0
  112. package/dist/mcp/task-coordination-api.d.ts +15 -0
  113. package/dist/mcp/task-coordination-api.d.ts.map +1 -0
  114. package/dist/mcp/task-list-api.d.ts +8 -0
  115. package/dist/mcp/task-list-api.d.ts.map +1 -0
  116. package/dist/mcp/token-utils.d.ts.map +1 -1
  117. package/dist/mcp/tools/agents.d.ts.map +1 -1
  118. package/dist/mcp/tools/environment-snapshots.d.ts.map +1 -1
  119. package/dist/mcp/tools/machines.d.ts.map +1 -1
  120. package/dist/mcp/tools/task-adv-tools.d.ts.map +1 -1
  121. package/dist/mcp/tools/task-auto-tools.d.ts.map +1 -1
  122. package/dist/mcp/tools/task-crud.d.ts.map +1 -1
  123. package/dist/mcp/tools/task-meta-tools.d.ts.map +1 -1
  124. package/dist/mcp/tools/task-project-tools.d.ts.map +1 -1
  125. package/dist/mcp/tools/task-resources.d.ts.map +1 -1
  126. package/dist/mcp/tools/templates.d.ts.map +1 -1
  127. package/dist/mcp.d.ts +2 -2
  128. package/dist/mcp.d.ts.map +1 -1
  129. package/dist/mcp.js +45 -19
  130. package/dist/project-registration.js +3349 -645
  131. package/dist/registry.js +909 -292
  132. package/dist/release-provenance.json +6 -6
  133. package/dist/sdk/client.d.ts +53 -4
  134. package/dist/sdk/client.d.ts.map +1 -1
  135. package/dist/sdk/index.d.ts +2 -0
  136. package/dist/sdk/index.d.ts.map +1 -1
  137. package/dist/sdk/index.js +1253 -1088
  138. package/dist/sdk/resolve.d.ts +101 -0
  139. package/dist/sdk/resolve.d.ts.map +1 -0
  140. package/dist/sdk/types.d.ts +17 -2
  141. package/dist/sdk/types.d.ts.map +1 -1
  142. package/dist/sdk/v1.generated.d.ts +334 -3
  143. package/dist/sdk/v1.generated.d.ts.map +1 -1
  144. package/dist/server/auth-posture.d.ts +66 -7
  145. package/dist/server/auth-posture.d.ts.map +1 -1
  146. package/dist/server/client-ip.d.ts +39 -0
  147. package/dist/server/client-ip.d.ts.map +1 -0
  148. package/dist/server/cloud.d.ts +2 -1
  149. package/dist/server/cloud.d.ts.map +1 -1
  150. package/dist/server/index.d.ts +1 -1
  151. package/dist/server/index.js +24758 -16687
  152. package/dist/server/openapi.d.ts +2514 -469
  153. package/dist/server/openapi.d.ts.map +1 -1
  154. package/dist/server/port.d.ts +2 -2
  155. package/dist/server/port.d.ts.map +1 -1
  156. package/dist/server/rate-limit-config.d.ts +6 -0
  157. package/dist/server/rate-limit-config.d.ts.map +1 -0
  158. package/dist/server/routes.d.ts +3 -6
  159. package/dist/server/routes.d.ts.map +1 -1
  160. package/dist/server/serve.d.ts +2 -6
  161. package/dist/server/serve.d.ts.map +1 -1
  162. package/dist/server/v1.d.ts +3 -1
  163. package/dist/server/v1.d.ts.map +1 -1
  164. package/dist/storage/atomic-project-migration.d.ts +53 -0
  165. package/dist/storage/atomic-project-migration.d.ts.map +1 -0
  166. package/dist/storage/index.d.ts +4 -2
  167. package/dist/storage/index.d.ts.map +1 -1
  168. package/dist/storage/interfaces.d.ts +135 -3
  169. package/dist/storage/interfaces.d.ts.map +1 -1
  170. package/dist/storage/local-sqlite.d.ts.map +1 -1
  171. package/dist/storage/machine-registry.d.ts +36 -0
  172. package/dist/storage/machine-registry.d.ts.map +1 -0
  173. package/dist/storage/postgres-adapter.d.ts.map +1 -1
  174. package/dist/storage/postgres-sync.d.ts +2 -2
  175. package/dist/storage/postgres-sync.d.ts.map +1 -1
  176. package/dist/storage/run-artifact-creation-upload.d.ts +50 -0
  177. package/dist/storage/run-artifact-creation-upload.d.ts.map +1 -0
  178. package/dist/storage/s3-artifact-sync.d.ts +18 -0
  179. package/dist/storage/s3-artifact-sync.d.ts.map +1 -1
  180. package/dist/storage/sqlite-snapshot.d.ts +2 -0
  181. package/dist/storage/sqlite-snapshot.d.ts.map +1 -1
  182. package/dist/storage.d.ts +2 -2
  183. package/dist/storage.d.ts.map +1 -1
  184. package/dist/storage.js +3154 -350
  185. package/dist/task-manifest/postgres.d.ts +1 -1
  186. package/dist/task-manifest/sqlite.d.ts +1 -1
  187. package/dist/task-manifest.js +250 -73
  188. package/dist/task-subtree-transfer.js +198 -4
  189. package/dist/testing.d.ts +90 -29
  190. package/dist/testing.d.ts.map +1 -1
  191. package/dist/testing.js +34 -10
  192. package/dist/types/index.d.ts +43 -4
  193. package/dist/types/index.d.ts.map +1 -1
  194. package/docs/PLAN_API.md +93 -0
  195. package/docs/TASK_LIST_API.md +58 -0
  196. package/docs/TASK_QUERY_API.md +14 -0
  197. package/docs/TEMPLATE_API.md +18 -0
  198. package/docs/native-storage.md +405 -0
  199. package/package.json +18 -15
  200. package/postinstall.js +52 -1
  201. package/dashboard/dist/assets/index-BNQ4gJua.js +0 -342
  202. package/dashboard/dist/assets/index-DjzvHUWt.css +0 -1
  203. package/dashboard/dist/index.html +0 -13
  204. package/dashboard/dist/logo.jpg +0 -0
  205. package/dist/mcp/tools/code-tools.d.ts +0 -15
  206. package/dist/mcp/tools/code-tools.d.ts.map +0 -1
@@ -0,0 +1,7 @@
1
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
2
+ import type { Machine } from "../types/index.js";
3
+ import { type MachineRegistryInput, type MachineRegistryReceipt } from "../storage/machine-registry.js";
4
+ export declare function cloudMachines(client: HasnaStorageClient): Promise<Machine[]>;
5
+ export declare function localMachineOptions(options?: Record<string, unknown>): Record<string, unknown>;
6
+ export declare function cloudMachineAction(client: HasnaStorageClient, input: MachineRegistryInput): Promise<MachineRegistryReceipt>;
7
+ //# sourceMappingURL=machine-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"machine-api.d.ts","sourceRoot":"","sources":["../../src/cli/machine-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAoB,KAAK,oBAAoB,EAAE,KAAK,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAW1H,wBAAsB,aAAa,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAOlF;AACD,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAIlG;AACD,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,EAAE,oBAAoB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CA0BjI"}
@@ -0,0 +1,6 @@
1
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
2
+ import { type Task, type PlanComment } from "../types/index.js";
3
+ /** Explicit versioned evidence prevents older APIs silently ignoring archived/subtask filters. */
4
+ export declare function readCompletePlanTasks(client: HasnaStorageClient, planId: string, includeArchived?: boolean): Promise<Task[]>;
5
+ export declare function readCompletePlanComments(client: HasnaStorageClient, planId: string): Promise<PlanComment[]>;
6
+ //# sourceMappingURL=plan-read-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plan-read-api.d.ts","sourceRoot":"","sources":["../../src/cli/plan-read-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAGL,KAAK,IAAI,EACT,KAAK,WAAW,EACjB,MAAM,mBAAmB,CAAC;AAM3B,kGAAkG;AAClG,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,MAAM,EACd,eAAe,UAAQ,GACtB,OAAO,CAAC,IAAI,EAAE,CAAC,CAuDjB;AACD,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,EAAE,CAAC,CAwCxB"}
@@ -0,0 +1,119 @@
1
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
2
+ import type { Project } from "../types/index.js";
3
+ export declare function cloudProjectPanel(client: HasnaStorageClient, project: Project, limit: number): Promise<{
4
+ id: string;
5
+ kind: "custom" | "knowledge" | "actions" | "files" | "mailery" | "conversations" | "mementos" | "reports" | "documents" | "overview" | "tasks" | "timeline" | "risks";
6
+ provider: {
7
+ id: string;
8
+ kind: "custom" | "knowledge" | "render" | "actions" | "todos" | "files" | "mailery" | "conversations" | "mementos" | "reports" | "contracts";
9
+ name?: string | undefined;
10
+ externalId?: string | undefined;
11
+ sourcePackage?: string | undefined;
12
+ };
13
+ schema: "hasna.project_panel.v1";
14
+ createdAt: string;
15
+ resourceRefs: {
16
+ id: string;
17
+ kind: "app" | "email" | "feedback" | "report" | "run" | "unknown" | "file" | "url" | "model" | "workflow" | "budget" | "task" | "project" | "repo" | "loop" | "action" | "event" | "integration" | "session" | "machine" | "tool" | "document" | "artifact" | "knowledge" | "conversation" | "dashboard" | "render" | "panel" | "commit" | "branch" | "pull_request" | "issue" | "comment" | "verification" | "finding" | "context_pack" | "proof_bundle" | "memento" | "eval" | "cost" | "alert" | "incident" | "release" | "rollout" | "announcement" | "audience";
18
+ tags: string[];
19
+ name?: string | undefined;
20
+ uri?: string | undefined;
21
+ externalId?: string | undefined;
22
+ sourcePackage?: string | undefined;
23
+ }[];
24
+ evidenceRefs: {
25
+ id: string;
26
+ kind?: "report" | "video" | "file" | "url" | "artifact" | "other" | "command_output" | "screenshot" | "log" | "diff" | "har" | "test_result" | "metric" | "trace" | undefined;
27
+ sha256?: string | undefined;
28
+ uri?: string | undefined;
29
+ summary?: string | undefined;
30
+ }[];
31
+ projectId: string;
32
+ actions: {
33
+ id: string;
34
+ kind: "app" | "email" | "feedback" | "report" | "run" | "unknown" | "file" | "url" | "model" | "workflow" | "budget" | "task" | "project" | "repo" | "loop" | "action" | "event" | "integration" | "session" | "machine" | "tool" | "document" | "artifact" | "knowledge" | "conversation" | "dashboard" | "render" | "panel" | "commit" | "branch" | "pull_request" | "issue" | "comment" | "verification" | "finding" | "context_pack" | "proof_bundle" | "memento" | "eval" | "cost" | "alert" | "incident" | "release" | "rollout" | "announcement" | "audience";
35
+ tags: string[];
36
+ name?: string | undefined;
37
+ uri?: string | undefined;
38
+ externalId?: string | undefined;
39
+ sourcePackage?: string | undefined;
40
+ }[];
41
+ state: "error" | "ready" | "unavailable" | "stale" | "empty" | "loading" | "auth_required";
42
+ title: string;
43
+ items: {
44
+ id: string;
45
+ resourceRefs: {
46
+ id: string;
47
+ kind: "app" | "email" | "feedback" | "report" | "run" | "unknown" | "file" | "url" | "model" | "workflow" | "budget" | "task" | "project" | "repo" | "loop" | "action" | "event" | "integration" | "session" | "machine" | "tool" | "document" | "artifact" | "knowledge" | "conversation" | "dashboard" | "render" | "panel" | "commit" | "branch" | "pull_request" | "issue" | "comment" | "verification" | "finding" | "context_pack" | "proof_bundle" | "memento" | "eval" | "cost" | "alert" | "incident" | "release" | "rollout" | "announcement" | "audience";
48
+ tags: string[];
49
+ name?: string | undefined;
50
+ uri?: string | undefined;
51
+ externalId?: string | undefined;
52
+ sourcePackage?: string | undefined;
53
+ }[];
54
+ evidenceRefs: {
55
+ id: string;
56
+ kind?: "report" | "video" | "file" | "url" | "artifact" | "other" | "command_output" | "screenshot" | "log" | "diff" | "har" | "test_result" | "metric" | "trace" | undefined;
57
+ sha256?: string | undefined;
58
+ uri?: string | undefined;
59
+ summary?: string | undefined;
60
+ }[];
61
+ priority: "unknown" | "low" | "medium" | "high" | "critical";
62
+ title: string;
63
+ status?: string | undefined;
64
+ metadata?: Record<string, unknown> | undefined;
65
+ summary?: string | undefined;
66
+ timestamp?: string | undefined;
67
+ }[];
68
+ freshness: "unknown" | "fresh" | "stale";
69
+ generatedAt: string;
70
+ metrics: {
71
+ id: string;
72
+ value: string | number | boolean;
73
+ status: "unknown" | "critical" | "good" | "warning";
74
+ resourceRefs: {
75
+ id: string;
76
+ kind: "app" | "email" | "feedback" | "report" | "run" | "unknown" | "file" | "url" | "model" | "workflow" | "budget" | "task" | "project" | "repo" | "loop" | "action" | "event" | "integration" | "session" | "machine" | "tool" | "document" | "artifact" | "knowledge" | "conversation" | "dashboard" | "render" | "panel" | "commit" | "branch" | "pull_request" | "issue" | "comment" | "verification" | "finding" | "context_pack" | "proof_bundle" | "memento" | "eval" | "cost" | "alert" | "incident" | "release" | "rollout" | "announcement" | "audience";
77
+ tags: string[];
78
+ name?: string | undefined;
79
+ uri?: string | undefined;
80
+ externalId?: string | undefined;
81
+ sourcePackage?: string | undefined;
82
+ }[];
83
+ label: string;
84
+ unit?: string | undefined;
85
+ }[];
86
+ warnings: string[];
87
+ updatedAt?: string | null | undefined;
88
+ metadata?: Record<string, unknown> | undefined;
89
+ summary?: string | undefined;
90
+ stateReason?: string | undefined;
91
+ renderFragment?: {
92
+ imports: {
93
+ id: string;
94
+ optional: boolean;
95
+ kind: "local" | "url" | "provider" | "package";
96
+ specifier: string;
97
+ path?: string | undefined;
98
+ provider?: "custom" | "knowledge" | "render" | "actions" | "todos" | "files" | "mailery" | "conversations" | "mementos" | "reports" | "contracts" | undefined;
99
+ uri?: string | undefined;
100
+ packageName?: string | undefined;
101
+ resourceRef?: {
102
+ id: string;
103
+ kind: "app" | "email" | "feedback" | "report" | "run" | "unknown" | "file" | "url" | "model" | "workflow" | "budget" | "task" | "project" | "repo" | "loop" | "action" | "event" | "integration" | "session" | "machine" | "tool" | "document" | "artifact" | "knowledge" | "conversation" | "dashboard" | "render" | "panel" | "commit" | "branch" | "pull_request" | "issue" | "comment" | "verification" | "finding" | "context_pack" | "proof_bundle" | "memento" | "eval" | "cost" | "alert" | "incident" | "release" | "rollout" | "announcement" | "audience";
104
+ tags: string[];
105
+ name?: string | undefined;
106
+ uri?: string | undefined;
107
+ externalId?: string | undefined;
108
+ sourcePackage?: string | undefined;
109
+ } | undefined;
110
+ schemaId?: string | undefined;
111
+ integrity?: string | undefined;
112
+ }[];
113
+ renderer: "custom" | "json_render" | "react_flow" | "markdown" | "html";
114
+ spec: Record<string, unknown>;
115
+ title?: string | undefined;
116
+ entry?: string | undefined;
117
+ } | undefined;
118
+ }>;
119
+ //# sourceMappingURL=project-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-api.d.ts","sourceRoot":"","sources":["../../src/cli/project-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAQ,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAIvD,wBAAsB,iBAAiB,CAAC,MAAM,EAAC,kBAAkB,EAAC,OAAO,EAAC,OAAO,EAAC,KAAK,EAAC,MAAM;;;;;;YAe80zgB,CAAC;kBAAwC,CAAC;qBAA2C,CAAC;;;;;;;;YAAotB,CAAC;WAAiC,CAAC;kBAAwC,CAAC;qBAA2C,CAAC;;;;YAAmF,CAAC;cAAwL,CAAC;WAAiC,CAAC;eAAqC,CAAC;;;;;;;YAA2qB,CAAC;WAAiC,CAAC;kBAAwC,CAAC;qBAA2C,CAAC;;;;;;;;;;gBAAi0B,CAAC;eAAqC,CAAC;sBAA4C,CAAC;yBAA+C,CAAC;;;;gBAAmG,CAAC;kBAA4L,CAAC;eAAqC,CAAC;mBAAyC,CAAC;;;;cAA8I,CAAC;gBAAsC,CAAC;eAAsD,CAAC;iBAAuC,CAAC;;;;;;;;;;;;gBAA83B,CAAC;eAAqC,CAAC;sBAA4C,CAAC;yBAA+C,CAAC;;;YAAsE,CAAC;;;;;;;;;;;;;gBAA0a,CAAC;oBAA0C,CAAC;eAAqK,CAAC;uBAA6C,CAAC;uBAA6C,CAAC;;;;oBAA0oB,CAAC;mBAAyC,CAAC;0BAAgD,CAAC;6BAAmD,CAAC;;oBAAqE,CAAC;qBAA2C,CAAC;;;;aAAwK,CAAC;aAAmC,CAAC;;GAD14ghB"}
@@ -1,5 +1,6 @@
1
1
  import { Command } from "commander";
2
2
  import { type TodosRemoteCommandCapability } from "./cloud-router.js";
3
+ import { todosLocalModeNotice } from "../lib/local-opt-in.js";
3
4
  type Env = Record<string, string | undefined>;
4
5
  export type TodosCliAuthorityInitialization = {
5
6
  route: "local";
@@ -17,11 +18,31 @@ export type TodosCliCommandOwner = "diagnostic" | "remote-http" | "local-only";
17
18
  * Stage A is intentionally pure: it decides the authority route without
18
19
  * mutating the caller's environment. The executable applies an admitted local
19
20
  * redaction decision before importing command modules so any later
20
- * `getTodosCloudClient()` call cannot reconstruct hosted routing from the
21
- * ambient API pair. The retired storage-mode variables are never written here —
22
- * they are banned (owner directive 2026-08-15), and the HTTP selector is
23
- * HASNA_TODOS_API_URL + HASNA_TODOS_API_KEY, which the redaction blanks.
21
+ * `getTodosCloudClient()` call cannot reconstruct hosted routing.
22
+ *
23
+ * The load-bearing line is the OPT-IN, not the redaction. Since the credential
24
+ * chain moved into @hasna/contracts (hasna/apps#1720) a key can arrive from the
25
+ * macOS Keychain or from `~/.hasna/todos/config/credentials`, neither of which
26
+ * an environment dictionary can redact — so clearing the API variables alone
27
+ * would leave a later `getTodosCloudClient()` resolving a real hosted client
28
+ * for a command that was admitted precisely because it must stay local.
29
+ * `HASNA_TODOS_LOCAL=1` is answered BEFORE the resolver runs, so it is what
30
+ * actually holds the decision; the variables are cleared alongside it so a
31
+ * child process inherits an environment that says the same thing.
32
+ *
33
+ * DELETED, not blanked: a declared-but-blank authority variable is normalised
34
+ * to absent by this package's own resolver seam, but the inherited environment
35
+ * is read by other consumers too, and @hasna/contracts refuses a
36
+ * declared-but-blank variable loudly. Deleting is the one spelling that means
37
+ * "absent" everywhere, so a blank can never turn "no cloud client" into a hard
38
+ * error.
24
39
  */
40
+ export { todosLocalModeNotice };
41
+ /**
42
+ * Print {@link todosLocalModeNotice} once for a run that resolved to the local
43
+ * store. A no-op for every hosted route, so a hosted run's stderr stays empty.
44
+ */
45
+ export declare function announceTodosCliLocalMode(authority: TodosCliAuthorityInitialization, write?: (line: string) => void): boolean;
25
46
  export declare function applyTodosCliAuthorityEnvironment(authority: TodosCliAuthorityInitialization, env?: Env): void;
26
47
  export declare const TODOS_CLI_COMMAND_ALIASES: {
27
48
  readonly onboarding: readonly ["demo-fixtures"];
@@ -84,5 +105,4 @@ export declare function getUnavailableTodosCliRemoteMetadataCommand(route: Todos
84
105
  * client for remote-supported commands.
85
106
  */
86
107
  export declare function initializeTodosCliAuthority(args?: string[], env?: Env): TodosCliAuthorityInitialization;
87
- export {};
88
108
  //# sourceMappingURL=stage-a.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"stage-a.d.ts","sourceRoot":"","sources":["../../src/cli/stage-a.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAQ,MAAM,WAAW,CAAC;AAC1C,OAAO,EAKL,KAAK,4BAA4B,EAClC,MAAM,mBAAmB,CAAC;AAE3B,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAE9C,MAAM,MAAM,+BAA+B,GACvC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,oBAAoB,CAAA;CAAE,GACzE;IAAE,KAAK,EAAE,mBAAmB,CAAC;IAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC1D;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,CAAC;AAE/E;;;;;;;;GAQG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,+BAA+B,EAC1C,GAAG,GAAE,GAAwB,GAC5B,IAAI,CAMN;AAyBD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;CA8BgB,CAAC;AAkFvD,wBAAgB,kCAAkC,IAAI,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAE9F;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,GACxE,OAAO,CAOT;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,GACxE,IAAI,CAUN;AAED;;;;;;;;GAQG;AACH,wBAAgB,2CAA2C,CACzD,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,EACzE,IAAI,GAAE,SAAS,MAAM,EAAO,GAC3B,MAAM,GAAG,IAAI,CAYf;AA2XD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,GAAE,MAAM,EAA0B,EACtC,GAAG,GAAE,GAAwB,GAC5B,+BAA+B,CAkCjC"}
1
+ {"version":3,"file":"stage-a.d.ts","sourceRoot":"","sources":["../../src/cli/stage-a.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAQ,MAAM,WAAW,CAAC;AAC1C,OAAO,EAKL,KAAK,4BAA4B,EAClC,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAE9C,MAAM,MAAM,+BAA+B,GACvC;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,WAAW,EAAE,IAAI,CAAC;IAAC,WAAW,CAAC,EAAE,oBAAoB,CAAA;CAAE,GACzE;IAAE,KAAK,EAAE,mBAAmB,CAAC;IAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC1D;IAAE,KAAK,EAAE,aAAa,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAElD,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG,aAAa,GAAG,YAAY,CAAC;AAE/E;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,EAAE,oBAAoB,EAAE,CAAC;AAEhC;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,SAAS,EAAE,+BAA+B,EAC1C,KAAK,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAkD,GAC1E,OAAO,CAIT;AAED,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,+BAA+B,EAC1C,GAAG,GAAE,GAAwB,GAC5B,IAAI,CAWN;AAyBD,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;CA8BgB,CAAC;AAoFvD,wBAAgB,kCAAkC,IAAI,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAE9F;AAED;;;;;;;GAOG;AACH,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,GACxE,OAAO,CAOT;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,GACxE,IAAI,CAUN;AAED;;;;;;;;GAQG;AACH,wBAAgB,2CAA2C,CACzD,KAAK,EAAE,+BAA+B,CAAC,OAAO,CAAC,EAC/C,kBAAkB,GAAE,WAAW,CAAC,4BAA4B,CAAa,EACzE,IAAI,GAAE,SAAS,MAAM,EAAO,GAC3B,MAAM,GAAG,IAAI,CAYf;AA+XD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CACzC,IAAI,GAAE,MAAM,EAA0B,EACtC,GAAG,GAAE,GAAwB,GAC5B,+BAA+B,CA6DjC"}
@@ -0,0 +1,21 @@
1
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
2
+ import type { Task } from "../types/index.js";
3
+ type Query = {
4
+ project_id?: string;
5
+ status?: string;
6
+ assigned_to?: string;
7
+ agent_id?: string;
8
+ include_subtasks?: boolean;
9
+ };
10
+ /** Exhaust an advertised total; never present a capped or changing page as complete. */
11
+ export declare function cloudQueryTasks(client: HasnaStorageClient, query?: Query): Promise<Task[]>;
12
+ export declare function cloudQueryBlockingDeps(client: HasnaStorageClient, tasks: readonly Task[]): Promise<Map<string, Task[]>>;
13
+ export declare function taskTimestamp(value: unknown): number;
14
+ /** A local calendar day; advancing the date also handles 23/25-hour DST days. */
15
+ export declare function taskDayWindow(daysAgo?: number, now?: Date): {
16
+ start: Date;
17
+ end: Date;
18
+ date: string;
19
+ };
20
+ export {};
21
+ //# sourceMappingURL=task-query-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-query-api.d.ts","sourceRoot":"","sources":["../../src/cli/task-query-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAI9C,KAAK,KAAK,GAAG;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAC3H,wFAAwF;AACxF,wBAAsB,eAAe,CAAC,MAAM,EAAE,kBAAkB,EAAE,KAAK,GAAE,KAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,CAqBpG;AAED,wBAAsB,sBAAsB,CAAC,MAAM,EAAC,kBAAkB,EAAC,KAAK,EAAC,SAAS,IAAI,EAAE,gCAkB3F;AACD,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAMpD;AAED,iFAAiF;AACjF,wBAAgB,aAAa,CAAC,OAAO,SAAI,EAAE,GAAG,OAAa,GAAG;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,GAAG,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CAQnG"}
@@ -0,0 +1,7 @@
1
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
2
+ import type { TodosTemplateHistory, TodosTemplateInitialization } from "../storage/interfaces.js";
3
+ export declare function initializeSharedTemplates(client: HasnaStorageClient): Promise<TodosTemplateInitialization>;
4
+ export declare function readSharedTemplateHistory(client: HasnaStorageClient, id: string): Promise<TodosTemplateHistory>;
5
+ export declare function listSharedTemplates(client: HasnaStorageClient, projectId?: string): Promise<import("../types/index.js").TaskTemplate[]>;
6
+ export declare function updateSharedTemplate(client: HasnaStorageClient, id: string, patch: import("../storage/interfaces.js").UpdateTemplateInput): Promise<import("../types/index.js").TemplateWithTasks>;
7
+ //# sourceMappingURL=template-api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-api.d.ts","sourceRoot":"","sources":["../../src/cli/template-api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EACV,oBAAoB,EACpB,2BAA2B,EAC5B,MAAM,0BAA0B,CAAC;AAElC,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,2BAA2B,CAAC,CA6CtC;AAED,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,kBAAkB,EAC1B,EAAE,EAAE,MAAM,GACT,OAAO,CAAC,oBAAoB,CAAC,CAmD/B;AAED,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,kBAAkB,EAC1B,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,OAAO,mBAAmB,EAAE,YAAY,EAAE,CAAC,CA2BrD;AAED,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,kBAAkB,EAC1B,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,OAAO,0BAA0B,EAAE,mBAAmB,GAC5D,OAAO,CAAC,OAAO,mBAAmB,EAAE,iBAAiB,CAAC,CA6BxD"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Hosted-only reusable-template operations, shared by the CLI `template*`
3
+ * verbs and the MCP template tools.
4
+ *
5
+ * These were private to `src/cli/commands/template-commands.ts`; the MCP tools
6
+ * had no cloud arm at all and went straight to `db/templates.js` (T1 §4:
7
+ * "Direct CLI<->MCP parity break"). Extracting them keeps ONE remote
8
+ * implementation of the template contract instead of a second copy behind the
9
+ * MCP door — this module never imports commander, chalk or `db/*`, so the MCP
10
+ * bin can use it without pulling the CLI renderer or `bun:sqlite` in.
11
+ */
12
+ import type { TemplatePreview } from "../db/templates.js";
13
+ import type { Task, TemplateWithTasks } from "../types/index.js";
14
+ import type { HasnaStorageClient } from "@hasna/contracts/client/storage";
15
+ export declare function requireTemplateClient(): HasnaStorageClient;
16
+ export declare function resolveRemoteTemplate(client: HasnaStorageClient, ref: string): Promise<TemplateWithTasks | null>;
17
+ export interface TemplateApplyProgress {
18
+ tasks: Task[];
19
+ dependencies: Array<{
20
+ task_id: string;
21
+ depends_on: string;
22
+ }>;
23
+ pending: string | null;
24
+ }
25
+ export declare class TemplateApplyError extends Error {
26
+ readonly progress: TemplateApplyProgress;
27
+ constructor(progress: TemplateApplyProgress);
28
+ }
29
+ export declare function preflightTemplate(client: HasnaStorageClient, template: TemplateWithTasks, variables: Record<string, string>, seen?: Set<string>): Promise<void>;
30
+ export interface RemoteTemplateApplication {
31
+ tasks: Task[];
32
+ }
33
+ export interface RemoteTemplateOverrides {
34
+ title?: string;
35
+ description?: string;
36
+ priority?: TemplateWithTasks["priority"];
37
+ }
38
+ export interface RemoteTemplateApplicationOptions {
39
+ /** Actor recorded by the hosted authority for task creation. */
40
+ actorAgentId?: string;
41
+ /** Assignee that must survive the authoritative create/readback cycle. */
42
+ assignedTo?: string;
43
+ /** Canonical task-list ID applied to every task created from the template. */
44
+ taskListId?: string;
45
+ /** Top-level single-task overrides; not propagated into included templates. */
46
+ overrides?: RemoteTemplateOverrides;
47
+ }
48
+ export declare function normalizeTemplateDescription(value: string | null | undefined): string | null;
49
+ /**
50
+ * Keep cloud preview output byte-for-byte compatible with the canonical local
51
+ * preview contract. Preview intentionally shows only the template's direct
52
+ * checklist steps; execution handles included templates separately.
53
+ */
54
+ export declare function previewRemoteTemplate(template: TemplateWithTasks, variables?: Record<string, string>): TemplatePreview;
55
+ /**
56
+ * /v1/templates/:id returns the complete template, including ordered checklist
57
+ * steps. Strip storage-only fields so cloud exports round-trip through the
58
+ * canonical template-import contract just like local exports.
59
+ */
60
+ export declare function exportRemoteTemplate(template: TemplateWithTasks): {
61
+ name: string;
62
+ title_pattern: string;
63
+ description: string | null;
64
+ priority: "low" | "medium" | "high" | "critical";
65
+ tags: string[];
66
+ variables: import("../index.js").TemplateVariable[];
67
+ project_id: string | null;
68
+ plan_id: string | null;
69
+ metadata: Record<string, unknown>;
70
+ tasks: {
71
+ position: number;
72
+ title_pattern: string;
73
+ description: string | null;
74
+ priority: "low" | "medium" | "high" | "critical";
75
+ tags: string[];
76
+ task_type: string | null;
77
+ condition: string | null;
78
+ include_template_id: string | null;
79
+ depends_on_positions: number[];
80
+ metadata: Record<string, unknown>;
81
+ }[];
82
+ };
83
+ /**
84
+ * Apply the reusable-template contract through the hosted /v1 API without
85
+ * opening local storage. This deliberately shares the variable and condition
86
+ * language with the SQLite implementation while resolving included templates
87
+ * through authenticated cloud reads.
88
+ */
89
+ export declare function createRemoteTemplateTasks(cloud: HasnaStorageClient, template: TemplateWithTasks, projectId: string | undefined, variables: Record<string, string>, options?: RemoteTemplateApplicationOptions, visited?: Set<string>, progress?: TemplateApplyProgress): Promise<RemoteTemplateApplication>;
90
+ //# sourceMappingURL=template-remote.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"template-remote.d.ts","sourceRoot":"","sources":["../../src/cli/template-remote.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAe1E,wBAAgB,qBAAqB,IAAI,kBAAkB,CAQ1D;AACD,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,kBAAkB,EAC1B,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAYnC;AACD,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,YAAY,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AACD,qBAAa,kBAAmB,SAAQ,KAAK;IAC/B,QAAQ,CAAC,QAAQ,EAAE,qBAAqB;gBAA/B,QAAQ,EAAE,qBAAqB;CAKrD;AACD,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,kBAAkB,EAC1B,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,IAAI,cAAoB,GACvB,OAAO,CAAC,IAAI,CAAC,CAuBf;AACD,MAAM,WAAW,yBAAyB;IACxC,KAAK,EAAE,IAAI,EAAE,CAAC;CACf;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,iBAAiB,CAAC,UAAU,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,gCAAgC;IAC/C,gEAAgE;IAChE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,MAAM,GAAG,IAAI,CAEf;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACjC,eAAe,CAqDjB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB;;;;;;;;;;;;;;;;;;;;;;EAwB/D;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,KAAK,EAAE,kBAAkB,EACzB,QAAQ,EAAE,iBAAiB,EAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACjC,OAAO,GAAE,gCAAqC,EAC9C,OAAO,cAAoB,EAC3B,QAAQ,GAAE,qBAIT,GACA,OAAO,CAAC,yBAAyB,CAAC,CAmIpC"}
@@ -1 +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,EAmsCxD,CAAC;AAYF,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,yBAAyB,CAW3B;AAED,eAAO,MAAM,6BAA6B,2BAExC,CAAC"}
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,EAysCxD,CAAC;AAYF,wBAAgB,0BAA0B,CACxC,OAAO,GAAE,iCAAsC,GAC9C,yBAAyB,CAW3B;AAED,eAAO,MAAM,6BAA6B,2BAExC,CAAC"}