@hasna/todos 0.11.52 → 0.11.53

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 (210) hide show
  1. package/README.md +14 -1
  2. package/dashboard/dist/assets/{index-C3fBxEWP.js → index-aJefI7kh.js} +1 -1
  3. package/dashboard/dist/index.html +1 -1
  4. package/dist/cli/commands/config-serve-commands.d.ts.map +1 -1
  5. package/dist/cli/commands/machines.d.ts.map +1 -1
  6. package/dist/cli/commands/storage-commands.d.ts +3 -0
  7. package/dist/cli/commands/storage-commands.d.ts.map +1 -0
  8. package/dist/cli/commands/task-commands.d.ts.map +1 -1
  9. package/dist/cli/helpers.d.ts +6 -0
  10. package/dist/cli/helpers.d.ts.map +1 -1
  11. package/dist/cli/index.js +3306 -445
  12. package/dist/contracts.js +289 -8
  13. package/dist/db/artifacts.d.ts.map +1 -1
  14. package/dist/db/builtin-templates.d.ts +0 -1
  15. package/dist/db/builtin-templates.d.ts.map +1 -1
  16. package/dist/db/database.d.ts.map +1 -1
  17. package/dist/db/schema.d.ts.map +1 -1
  18. package/dist/db/tags.d.ts +26 -0
  19. package/dist/db/tags.d.ts.map +1 -0
  20. package/dist/db/task-commits.d.ts +14 -6
  21. package/dist/db/task-commits.d.ts.map +1 -1
  22. package/dist/db/tasks.d.ts +1 -1
  23. package/dist/db/tasks.d.ts.map +1 -1
  24. package/dist/index.d.ts +32 -60
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +2473 -200
  27. package/dist/lib/agent-adapter-docs.d.ts +1 -1
  28. package/dist/lib/agent-adapter-docs.d.ts.map +1 -1
  29. package/dist/lib/agent-coordination.d.ts.map +1 -1
  30. package/dist/lib/agent-run-dispatcher.d.ts +5 -2
  31. package/dist/lib/agent-run-dispatcher.d.ts.map +1 -1
  32. package/dist/lib/agent-workflow-demo.d.ts +1 -1
  33. package/dist/lib/agent-workflow-demo.d.ts.map +1 -1
  34. package/dist/lib/db-backup.d.ts.map +1 -1
  35. package/dist/lib/headless-boundaries.d.ts +2 -2
  36. package/dist/lib/headless-boundaries.d.ts.map +1 -1
  37. package/dist/lib/import-export-bridge.d.ts.map +1 -1
  38. package/dist/lib/inbox-intake.d.ts.map +1 -1
  39. package/dist/lib/issue-importers.d.ts.map +1 -1
  40. package/dist/lib/machine-topology.d.ts +1 -1
  41. package/dist/lib/machine-topology.d.ts.map +1 -1
  42. package/dist/lib/native-storage-status.d.ts +65 -0
  43. package/dist/lib/native-storage-status.d.ts.map +1 -0
  44. package/dist/lib/nl-intake.d.ts.map +1 -1
  45. package/dist/lib/notification-reminders.d.ts.map +1 -1
  46. package/dist/lib/plan-execution.d.ts +1 -0
  47. package/dist/lib/plan-execution.d.ts.map +1 -1
  48. package/dist/lib/release-checks.d.ts.map +1 -1
  49. package/dist/lib/resource-snapshots.d.ts.map +1 -1
  50. package/dist/lib/saved-views.d.ts.map +1 -1
  51. package/dist/lib/secret-redaction.d.ts +1 -1
  52. package/dist/lib/secret-redaction.d.ts.map +1 -1
  53. package/dist/lib/task-scheduling.d.ts +1 -1
  54. package/dist/lib/task-scheduling.d.ts.map +1 -1
  55. package/dist/lib/template-library.d.ts +1 -1
  56. package/dist/lib/template-library.d.ts.map +1 -1
  57. package/dist/lib/user-scaffolds.d.ts.map +1 -1
  58. package/dist/lib/verification-evidence.d.ts +4 -4
  59. package/dist/lib/verification-evidence.d.ts.map +1 -1
  60. package/dist/lib/verification-providers.d.ts +3 -3
  61. package/dist/lib/verification-providers.d.ts.map +1 -1
  62. package/dist/mcp/index.d.ts.map +1 -1
  63. package/dist/mcp/index.js +526 -50
  64. package/dist/mcp/tools/task-crud.d.ts.map +1 -1
  65. package/dist/mcp/tools/task-project-tools.d.ts.map +1 -1
  66. package/dist/registry.js +289 -8
  67. package/dist/release-provenance.json +7 -0
  68. package/dist/server/index.js +552 -52
  69. package/dist/server/serve.d.ts.map +1 -1
  70. package/dist/storage/config.d.ts +86 -0
  71. package/dist/storage/config.d.ts.map +1 -0
  72. package/dist/storage/factory.d.ts +17 -0
  73. package/dist/storage/factory.d.ts.map +1 -0
  74. package/dist/storage/hybrid.d.ts +26 -0
  75. package/dist/storage/hybrid.d.ts.map +1 -0
  76. package/dist/storage/index.d.ts +15 -0
  77. package/dist/storage/index.d.ts.map +1 -1
  78. package/dist/storage/local-sqlite.d.ts.map +1 -1
  79. package/dist/storage/postgres-adapter.d.ts +11 -0
  80. package/dist/storage/postgres-adapter.d.ts.map +1 -0
  81. package/dist/storage/postgres-sync.d.ts +44 -0
  82. package/dist/storage/postgres-sync.d.ts.map +1 -0
  83. package/dist/storage/s3-artifact-sync.d.ts +75 -0
  84. package/dist/storage/s3-artifact-sync.d.ts.map +1 -0
  85. package/dist/storage/s3-artifacts.d.ts +51 -0
  86. package/dist/storage/s3-artifacts.d.ts.map +1 -0
  87. package/dist/storage/sqlite-snapshot.d.ts +5 -0
  88. package/dist/storage/sqlite-snapshot.d.ts.map +1 -0
  89. package/dist/storage.d.ts +2 -1
  90. package/dist/storage.d.ts.map +1 -1
  91. package/dist/storage.js +2053 -10
  92. package/package.json +1 -1
  93. package/dist/cli/brains.d.ts +0 -3
  94. package/dist/cli/brains.d.ts.map +0 -1
  95. package/dist/db/file-locks.d.ts +0 -43
  96. package/dist/db/file-locks.d.ts.map +0 -1
  97. package/dist/db/project-agent-roles.d.ts +0 -34
  98. package/dist/db/project-agent-roles.d.ts.map +0 -1
  99. package/dist/db/task-claim.d.ts +0 -7
  100. package/dist/db/task-claim.d.ts.map +0 -1
  101. package/dist/db/task-workflow.d.ts +0 -7
  102. package/dist/db/task-workflow.d.ts.map +0 -1
  103. package/dist/lib/north-star.d.ts +0 -33
  104. package/dist/lib/north-star.d.ts.map +0 -1
  105. package/dist/lib/public-release-gate.d.ts +0 -57
  106. package/dist/lib/public-release-gate.d.ts.map +0 -1
  107. package/dist/lib/task-runner.d.ts +0 -101
  108. package/dist/lib/task-runner.d.ts.map +0 -1
  109. package/dist/mcp/tools/access-profiles.d.ts +0 -8
  110. package/dist/mcp/tools/access-profiles.d.ts.map +0 -1
  111. package/dist/mcp/tools/activity-audit.d.ts +0 -9
  112. package/dist/mcp/tools/activity-audit.d.ts.map +0 -1
  113. package/dist/mcp/tools/agent-adapter-docs.d.ts +0 -8
  114. package/dist/mcp/tools/agent-adapter-docs.d.ts.map +0 -1
  115. package/dist/mcp/tools/agent-coordination.d.ts +0 -9
  116. package/dist/mcp/tools/agent-coordination.d.ts.map +0 -1
  117. package/dist/mcp/tools/agent-runs.d.ts +0 -9
  118. package/dist/mcp/tools/agent-runs.d.ts.map +0 -1
  119. package/dist/mcp/tools/agent-workflow-demo.d.ts +0 -8
  120. package/dist/mcp/tools/agent-workflow-demo.d.ts.map +0 -1
  121. package/dist/mcp/tools/approval-gates.d.ts +0 -9
  122. package/dist/mcp/tools/approval-gates.d.ts.map +0 -1
  123. package/dist/mcp/tools/artifacts.d.ts +0 -9
  124. package/dist/mcp/tools/artifacts.d.ts.map +0 -1
  125. package/dist/mcp/tools/branch-work-plans.d.ts +0 -8
  126. package/dist/mcp/tools/branch-work-plans.d.ts.map +0 -1
  127. package/dist/mcp/tools/cli-docs.d.ts +0 -8
  128. package/dist/mcp/tools/cli-docs.d.ts.map +0 -1
  129. package/dist/mcp/tools/command-aliases.d.ts +0 -8
  130. package/dist/mcp/tools/command-aliases.d.ts.map +0 -1
  131. package/dist/mcp/tools/context-packs.d.ts +0 -9
  132. package/dist/mcp/tools/context-packs.d.ts.map +0 -1
  133. package/dist/mcp/tools/crypto.d.ts +0 -8
  134. package/dist/mcp/tools/crypto.d.ts.map +0 -1
  135. package/dist/mcp/tools/db-backup.d.ts +0 -8
  136. package/dist/mcp/tools/db-backup.d.ts.map +0 -1
  137. package/dist/mcp/tools/decision-records.d.ts +0 -9
  138. package/dist/mcp/tools/decision-records.d.ts.map +0 -1
  139. package/dist/mcp/tools/dependency-graph.d.ts +0 -9
  140. package/dist/mcp/tools/dependency-graph.d.ts.map +0 -1
  141. package/dist/mcp/tools/failure-triage.d.ts +0 -9
  142. package/dist/mcp/tools/failure-triage.d.ts.map +0 -1
  143. package/dist/mcp/tools/feature-manifest.d.ts +0 -8
  144. package/dist/mcp/tools/feature-manifest.d.ts.map +0 -1
  145. package/dist/mcp/tools/git-traceability.d.ts +0 -9
  146. package/dist/mcp/tools/git-traceability.d.ts.map +0 -1
  147. package/dist/mcp/tools/goal.d.ts +0 -9
  148. package/dist/mcp/tools/goal.d.ts.map +0 -1
  149. package/dist/mcp/tools/handoff-packets.d.ts +0 -9
  150. package/dist/mcp/tools/handoff-packets.d.ts.map +0 -1
  151. package/dist/mcp/tools/import-export-bridge.d.ts +0 -9
  152. package/dist/mcp/tools/import-export-bridge.d.ts.map +0 -1
  153. package/dist/mcp/tools/inbox-intake.d.ts +0 -9
  154. package/dist/mcp/tools/inbox-intake.d.ts.map +0 -1
  155. package/dist/mcp/tools/issue-importers.d.ts +0 -9
  156. package/dist/mcp/tools/issue-importers.d.ts.map +0 -1
  157. package/dist/mcp/tools/json-schemas.d.ts +0 -8
  158. package/dist/mcp/tools/json-schemas.d.ts.map +0 -1
  159. package/dist/mcp/tools/machine-topology.d.ts +0 -8
  160. package/dist/mcp/tools/machine-topology.d.ts.map +0 -1
  161. package/dist/mcp/tools/mention-resolver.d.ts +0 -9
  162. package/dist/mcp/tools/mention-resolver.d.ts.map +0 -1
  163. package/dist/mcp/tools/nl-intake.d.ts +0 -9
  164. package/dist/mcp/tools/nl-intake.d.ts.map +0 -1
  165. package/dist/mcp/tools/notification-reminders.d.ts +0 -9
  166. package/dist/mcp/tools/notification-reminders.d.ts.map +0 -1
  167. package/dist/mcp/tools/parity.d.ts +0 -8
  168. package/dist/mcp/tools/parity.d.ts.map +0 -1
  169. package/dist/mcp/tools/plan-execution.d.ts +0 -9
  170. package/dist/mcp/tools/plan-execution.d.ts.map +0 -1
  171. package/dist/mcp/tools/policy-packs.d.ts +0 -9
  172. package/dist/mcp/tools/policy-packs.d.ts.map +0 -1
  173. package/dist/mcp/tools/project-bootstrap.d.ts +0 -8
  174. package/dist/mcp/tools/project-bootstrap.d.ts.map +0 -1
  175. package/dist/mcp/tools/release-checks.d.ts +0 -8
  176. package/dist/mcp/tools/release-checks.d.ts.map +0 -1
  177. package/dist/mcp/tools/release-notes.d.ts +0 -9
  178. package/dist/mcp/tools/release-notes.d.ts.map +0 -1
  179. package/dist/mcp/tools/report-exports.d.ts +0 -9
  180. package/dist/mcp/tools/report-exports.d.ts.map +0 -1
  181. package/dist/mcp/tools/resource-subscriptions.d.ts +0 -8
  182. package/dist/mcp/tools/resource-subscriptions.d.ts.map +0 -1
  183. package/dist/mcp/tools/run-records.d.ts +0 -9
  184. package/dist/mcp/tools/run-records.d.ts.map +0 -1
  185. package/dist/mcp/tools/sandbox.d.ts +0 -8
  186. package/dist/mcp/tools/sandbox.d.ts.map +0 -1
  187. package/dist/mcp/tools/saved-views.d.ts +0 -9
  188. package/dist/mcp/tools/saved-views.d.ts.map +0 -1
  189. package/dist/mcp/tools/secret-redaction.d.ts +0 -8
  190. package/dist/mcp/tools/secret-redaction.d.ts.map +0 -1
  191. package/dist/mcp/tools/task-dedupe.d.ts +0 -9
  192. package/dist/mcp/tools/task-dedupe.d.ts.map +0 -1
  193. package/dist/mcp/tools/task-scheduling.d.ts +0 -9
  194. package/dist/mcp/tools/task-scheduling.d.ts.map +0 -1
  195. package/dist/mcp/tools/template-library.d.ts +0 -8
  196. package/dist/mcp/tools/template-library.d.ts.map +0 -1
  197. package/dist/mcp/tools/terminal-notifications.d.ts +0 -9
  198. package/dist/mcp/tools/terminal-notifications.d.ts.map +0 -1
  199. package/dist/mcp/tools/todos-md.d.ts +0 -8
  200. package/dist/mcp/tools/todos-md.d.ts.map +0 -1
  201. package/dist/mcp/tools/user-scaffolds.d.ts +0 -8
  202. package/dist/mcp/tools/user-scaffolds.d.ts.map +0 -1
  203. package/dist/mcp/tools/verification.d.ts +0 -9
  204. package/dist/mcp/tools/verification.d.ts.map +0 -1
  205. package/dist/mcp/tools/webhooks.d.ts +0 -8
  206. package/dist/mcp/tools/webhooks.d.ts.map +0 -1
  207. package/dist/mcp/tools/workspace-trust.d.ts +0 -8
  208. package/dist/mcp/tools/workspace-trust.d.ts.map +0 -1
  209. package/dist/test/no-network.d.ts +0 -7
  210. package/dist/test/no-network.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/server/serve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AA+B9C,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAMnD,CAAC;AA8CF,wBAAgB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,SAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,QAAQ,CASjF;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAYjE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;EAwB1D;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAyb3H"}
1
+ {"version":3,"file":"serve.d.ts","sourceRoot":"","sources":["../../src/server/serve.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AA+B9C,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW7C,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAMnD,CAAC;AA8CF,wBAAgB,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,SAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,QAAQ,CASjF;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,GAAG,IAAI,CAYjE;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;EAwB1D;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAub3H"}
@@ -0,0 +1,86 @@
1
+ export type TodosStorageMode = "local" | "remote" | "hybrid";
2
+ export type TodosStorageEnv = Record<string, string | undefined>;
3
+ export declare const TODOS_STORAGE_TABLES: readonly ["todos_sync_records", "todos_sync_cursors"];
4
+ export declare const STORAGE_TABLES: readonly ["todos_sync_records", "todos_sync_cursors"];
5
+ export type TodosStorageTable = typeof TODOS_STORAGE_TABLES[number];
6
+ export interface TodosPostgresStorageConfig {
7
+ provider: "postgres";
8
+ url: string;
9
+ ssl: boolean;
10
+ schema?: string;
11
+ }
12
+ export interface TodosS3StorageConfig {
13
+ provider: "s3";
14
+ bucket: string;
15
+ prefix: string;
16
+ region?: string;
17
+ endpoint?: string;
18
+ forcePathStyle: boolean;
19
+ }
20
+ export interface TodosSyncConfig {
21
+ batchSize: number;
22
+ dryRun: boolean;
23
+ }
24
+ export interface TodosStorageConfig {
25
+ service: "todos";
26
+ mode: TodosStorageMode;
27
+ database?: TodosPostgresStorageConfig;
28
+ objectStorage?: TodosS3StorageConfig;
29
+ sync: TodosSyncConfig;
30
+ }
31
+ export declare const TODOS_STORAGE_ENV: {
32
+ readonly mode: "HASNA_TODOS_STORAGE_MODE";
33
+ readonly databaseUrl: "HASNA_TODOS_DATABASE_URL";
34
+ readonly databaseSsl: "HASNA_TODOS_DATABASE_SSL";
35
+ readonly databaseSchema: "HASNA_TODOS_DATABASE_SCHEMA";
36
+ readonly s3Bucket: "HASNA_TODOS_S3_BUCKET";
37
+ readonly s3Prefix: "HASNA_TODOS_S3_PREFIX";
38
+ readonly awsRegion: "HASNA_TODOS_AWS_REGION";
39
+ readonly s3Endpoint: "HASNA_TODOS_S3_ENDPOINT";
40
+ readonly s3ForcePathStyle: "HASNA_TODOS_S3_FORCE_PATH_STYLE";
41
+ readonly s3AccessKeyId: "HASNA_TODOS_S3_ACCESS_KEY_ID";
42
+ readonly s3SecretAccessKey: "HASNA_TODOS_S3_SECRET_ACCESS_KEY";
43
+ readonly s3SessionToken: "HASNA_TODOS_S3_SESSION_TOKEN";
44
+ readonly syncBatchSize: "HASNA_TODOS_SYNC_BATCH_SIZE";
45
+ readonly syncDryRun: "HASNA_TODOS_SYNC_DRY_RUN";
46
+ };
47
+ export declare const TODOS_STORAGE_FALLBACK_ENV: {
48
+ readonly mode: "TODOS_STORAGE_MODE";
49
+ readonly databaseUrl: "TODOS_DATABASE_URL";
50
+ readonly databaseSsl: "TODOS_DATABASE_SSL";
51
+ readonly databaseSchema: "TODOS_DATABASE_SCHEMA";
52
+ readonly s3Bucket: "TODOS_S3_BUCKET";
53
+ readonly s3Prefix: "TODOS_S3_PREFIX";
54
+ readonly awsRegion: "TODOS_AWS_REGION";
55
+ readonly s3Endpoint: "TODOS_S3_ENDPOINT";
56
+ readonly s3ForcePathStyle: "TODOS_S3_FORCE_PATH_STYLE";
57
+ readonly s3AccessKeyId: "TODOS_S3_ACCESS_KEY_ID";
58
+ readonly s3SecretAccessKey: "TODOS_S3_SECRET_ACCESS_KEY";
59
+ readonly s3SessionToken: "TODOS_S3_SESSION_TOKEN";
60
+ readonly syncBatchSize: "TODOS_SYNC_BATCH_SIZE";
61
+ readonly syncDryRun: "TODOS_SYNC_DRY_RUN";
62
+ };
63
+ export declare const CANONICAL_TODOS_RDS_CLUSTER = "hasna-xyz-infra-apps-prod-postgres";
64
+ export declare const CANONICAL_TODOS_RDS_DATABASE = "todos";
65
+ export declare const CANONICAL_TODOS_RDS_RUNTIME_PATH = "hasna/xyz/opensource/todos/prod/rds";
66
+ export interface CanonicalTodosRdsConfig {
67
+ cluster: typeof CANONICAL_TODOS_RDS_CLUSTER;
68
+ database: typeof CANONICAL_TODOS_RDS_DATABASE;
69
+ runtimeSecretPath: typeof CANONICAL_TODOS_RDS_RUNTIME_PATH;
70
+ primaryEnv: typeof TODOS_STORAGE_ENV.databaseUrl;
71
+ fallbackEnv: typeof TODOS_STORAGE_FALLBACK_ENV.databaseUrl;
72
+ }
73
+ export declare function getCanonicalTodosRdsConfig(): CanonicalTodosRdsConfig;
74
+ export declare function loadTodosStorageConfig(env?: TodosStorageEnv): TodosStorageConfig;
75
+ export declare function loadStorageConfig(env?: TodosStorageEnv): TodosStorageConfig;
76
+ export declare function isTodosRemoteStorageEnabled(config: TodosStorageConfig): boolean;
77
+ export declare function assertTodosRemoteStorageConfig(config: TodosStorageConfig): void;
78
+ export declare function parseStorageMode(value: string | undefined): TodosStorageMode;
79
+ export declare function getTodosStorageMode(env?: TodosStorageEnv): TodosStorageMode;
80
+ export declare function getStorageMode(env?: TodosStorageEnv): TodosStorageMode;
81
+ export declare function getTodosStorageDatabaseEnv(env?: TodosStorageEnv): string;
82
+ export declare function getStorageDatabaseEnv(env?: TodosStorageEnv): string;
83
+ export declare function getTodosStorageDatabaseUrl(env?: TodosStorageEnv): string | undefined;
84
+ export declare function getStorageDatabaseUrl(env?: TodosStorageEnv): string | undefined;
85
+ export declare function getTodosStorageEnvName(env: TodosStorageEnv, key: keyof typeof TODOS_STORAGE_ENV): string;
86
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/storage/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { TodosStorageAdapter } from "./interfaces.js";
2
+ import { type CreateLocalSqliteTodosStorageAdapterOptions } from "./local-sqlite.js";
3
+ import { type CreateHybridTodosStorageAdapterOptions } from "./hybrid.js";
4
+ import type { PostgresTodosSyncStore, TodosPostgresQueryClient } from "./postgres-sync.js";
5
+ import { type TodosStorageConfig, type TodosStorageEnv } from "./config.js";
6
+ export interface CreateTodosStorageAdapterOptions {
7
+ config?: TodosStorageConfig;
8
+ env?: TodosStorageEnv;
9
+ local?: CreateLocalSqliteTodosStorageAdapterOptions;
10
+ remoteAdapter?: TodosStorageAdapter;
11
+ hybridAdapter?: TodosStorageAdapter;
12
+ postgresClient?: TodosPostgresQueryClient;
13
+ postgresSyncStore?: PostgresTodosSyncStore;
14
+ hybrid?: Omit<CreateHybridTodosStorageAdapterOptions, "local" | "postgresClient" | "syncStore">;
15
+ }
16
+ export declare function createTodosStorageAdapter(options?: CreateTodosStorageAdapterOptions): TodosStorageAdapter;
17
+ //# sourceMappingURL=factory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/storage/factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAwC,KAAK,2CAA2C,EAAE,MAAM,mBAAmB,CAAC;AAC3H,OAAO,EAEL,KAAK,sCAAsC,EAC5C,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAC3F,OAAO,EAGL,KAAK,kBAAkB,EACvB,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,gCAAgC;IAC/C,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,GAAG,CAAC,EAAE,eAAe,CAAC;IACtB,KAAK,CAAC,EAAE,2CAA2C,CAAC;IACpD,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,aAAa,CAAC,EAAE,mBAAmB,CAAC;IACpC,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,MAAM,CAAC,EAAE,IAAI,CAAC,sCAAsC,EAAE,OAAO,GAAG,gBAAgB,GAAG,WAAW,CAAC,CAAC;CACjG;AAED,wBAAgB,yBAAyB,CAAC,OAAO,GAAE,gCAAqC,GAAG,mBAAmB,CAkB7G"}
@@ -0,0 +1,26 @@
1
+ import { type PostgresTodosSyncPushResult, type PostgresTodosSyncStore, type PullPostgresTodosSnapshotOptions, type TodosPostgresQueryClient } from "./postgres-sync.js";
2
+ import { type CreateLocalSqliteTodosStorageAdapterOptions } from "./local-sqlite.js";
3
+ import type { TodosStorageAdapter, TodosStorageContext, TodosStorageImportResult } from "./interfaces.js";
4
+ export interface HybridTodosStorageSyncResult {
5
+ pulled: TodosStorageImportResult;
6
+ pushed: PostgresTodosSyncPushResult;
7
+ }
8
+ export interface HybridTodosRemoteSync {
9
+ ensureSchema(): Promise<void>;
10
+ pushSnapshot(context?: TodosStorageContext): Promise<PostgresTodosSyncPushResult>;
11
+ pullSnapshot(options?: PullPostgresTodosSnapshotOptions, context?: TodosStorageContext): Promise<TodosStorageImportResult>;
12
+ syncOnce(options?: PullPostgresTodosSnapshotOptions, context?: TodosStorageContext): Promise<HybridTodosStorageSyncResult>;
13
+ }
14
+ export interface HybridTodosStorageAdapter extends TodosStorageAdapter {
15
+ readonly kind: "hybrid";
16
+ readonly remote: HybridTodosRemoteSync;
17
+ }
18
+ export interface CreateHybridTodosStorageAdapterOptions {
19
+ localAdapter?: TodosStorageAdapter;
20
+ local?: CreateLocalSqliteTodosStorageAdapterOptions;
21
+ syncStore?: PostgresTodosSyncStore;
22
+ postgresClient?: TodosPostgresQueryClient;
23
+ sourceMachineId?: string;
24
+ }
25
+ export declare function createHybridTodosStorageAdapter(options: CreateHybridTodosStorageAdapterOptions): HybridTodosStorageAdapter;
26
+ //# sourceMappingURL=hybrid.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hybrid.d.ts","sourceRoot":"","sources":["../../src/storage/hybrid.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,sBAAsB,EAC3B,KAAK,gCAAgC,EACrC,KAAK,wBAAwB,EAC9B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAEL,KAAK,2CAA2C,EACjD,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,wBAAwB,EAEzB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,wBAAwB,CAAC;IACjC,MAAM,EAAE,2BAA2B,CAAC;CACrC;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,YAAY,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,2BAA2B,CAAC,CAAC;IAClF,YAAY,CAAC,OAAO,CAAC,EAAE,gCAAgC,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAC3H,QAAQ,CAAC,OAAO,CAAC,EAAE,gCAAgC,EAAE,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,4BAA4B,CAAC,CAAC;CAC5H;AAED,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,qBAAqB,CAAC;CACxC;AAED,MAAM,WAAW,sCAAsC;IACrD,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,KAAK,CAAC,EAAE,2CAA2C,CAAC;IACpD,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,wBAAgB,+BAA+B,CAC7C,OAAO,EAAE,sCAAsC,GAC9C,yBAAyB,CAqD3B"}
@@ -1,4 +1,19 @@
1
1
  export type { MaybePromise, ActiveWorkItem, TodosActiveWorkFilter, TodosAgentUpdateInput, TodosAgentStore, TodosAuditStore, TodosPlanStore, TodosProjectStore, TodosStorageAdapter, TodosStorageCapabilities, TodosStorageContext, TodosStorageImportResult, TodosStorageKind, TodosStorageSnapshot, TodosSyncStore, TodosTaskClaimFilter, TodosTaskCompletionOptions, TodosTaskFailureOptions, TodosTaskFailureResult, TodosTaskListStore, TodosTaskStore, TodosTemplateStore, UpdateTemplateInput, } from "./interfaces.js";
2
+ export { CANONICAL_TODOS_RDS_CLUSTER, CANONICAL_TODOS_RDS_DATABASE, CANONICAL_TODOS_RDS_RUNTIME_PATH, STORAGE_TABLES, TODOS_STORAGE_ENV, TODOS_STORAGE_FALLBACK_ENV, TODOS_STORAGE_TABLES, assertTodosRemoteStorageConfig, getCanonicalTodosRdsConfig, getStorageDatabaseEnv, getStorageDatabaseUrl, getStorageMode, getTodosStorageDatabaseEnv, getTodosStorageDatabaseUrl, getTodosStorageEnvName, getTodosStorageMode, isTodosRemoteStorageEnabled, loadStorageConfig, loadTodosStorageConfig, parseStorageMode, } from "./config.js";
3
+ export type { CanonicalTodosRdsConfig, TodosPostgresStorageConfig, TodosS3StorageConfig, TodosStorageConfig, TodosStorageEnv, TodosStorageMode, TodosStorageTable, TodosSyncConfig, } from "./config.js";
4
+ export { createTodosStorageAdapter } from "./factory.js";
5
+ export type { CreateTodosStorageAdapterOptions } from "./factory.js";
6
+ export { createHybridTodosStorageAdapter } from "./hybrid.js";
7
+ export type { CreateHybridTodosStorageAdapterOptions, HybridTodosRemoteSync, HybridTodosStorageAdapter, HybridTodosStorageSyncResult, } from "./hybrid.js";
2
8
  export { createLocalSqliteTodosStorageAdapter } from "./local-sqlite.js";
3
9
  export type { CreateLocalSqliteTodosStorageAdapterOptions } from "./local-sqlite.js";
10
+ export { exportSqliteTodosStorageSnapshot, importSqliteTodosStorageSnapshot, } from "./sqlite-snapshot.js";
11
+ export { DEFAULT_TODOS_POSTGRES_CURSOR_TABLE, DEFAULT_TODOS_POSTGRES_SYNC_TABLE, PostgresTodosSyncStore, createPostgresTodosSyncStore, postgresTodosSyncSchemaSql, } from "./postgres-sync.js";
12
+ export { createPostgresTodosStorageAdapter } from "./postgres-adapter.js";
13
+ export type { CreatePostgresTodosStorageAdapterOptions } from "./postgres-adapter.js";
14
+ export type { CreatePostgresTodosSyncStoreOptions, PostgresTodosSyncPushResult, PullPostgresTodosSnapshotOptions, TodosPostgresQueryClient, TodosPostgresQueryResult, TodosPostgresSyncRecordRow, TodosPostgresSyncRecordType, } from "./postgres-sync.js";
15
+ export { buildS3ObjectKey, buildS3ObjectUrl, createTodosS3ArtifactStore, signAwsV4Request, } from "./s3-artifacts.js";
16
+ export type { PutTodosS3ObjectInput, SignAwsV4RequestInput, SignedAwsV4Request, TodosAwsCredentials, TodosS3ArtifactStore, TodosS3ArtifactStoreOptions, TodosS3ObjectRef, } from "./s3-artifacts.js";
17
+ export { downloadRunArtifactsFromS3, planRunArtifactsS3Sync, uploadRunArtifactsToS3, } from "./s3-artifact-sync.js";
18
+ export type { DownloadRunArtifactsFromS3Options, PlanRunArtifactsS3SyncOptions, TodosRunArtifactRemoteRef, TodosRunArtifactSyncFilter, TodosRunArtifactSyncPlan, TodosRunArtifactSyncResult, UploadRunArtifactsToS3Options, } from "./s3-artifact-sync.js";
4
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,YAAY,EAAE,2CAA2C,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/storage/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,gCAAgC,EAChC,cAAc,EACd,iBAAiB,EACjB,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,YAAY,EACV,uBAAuB,EACvB,0BAA0B,EAC1B,oBAAoB,EACpB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,GAChB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAC;AACzD,YAAY,EAAE,gCAAgC,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,+BAA+B,EAAE,MAAM,aAAa,CAAC;AAC9D,YAAY,EACV,sCAAsC,EACtC,qBAAqB,EACrB,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,oCAAoC,EAAE,MAAM,mBAAmB,CAAC;AACzE,YAAY,EAAE,2CAA2C,EAAE,MAAM,mBAAmB,CAAC;AACrF,OAAO,EACL,gCAAgC,EAChC,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,mCAAmC,EACnC,iCAAiC,EACjC,sBAAsB,EACtB,4BAA4B,EAC5B,0BAA0B,GAC3B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iCAAiC,EAAE,MAAM,uBAAuB,CAAC;AAC1E,YAAY,EAAE,wCAAwC,EAAE,MAAM,uBAAuB,CAAC;AACtF,YAAY,EACV,mCAAmC,EACnC,2BAA2B,EAC3B,gCAAgC,EAChC,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,0BAA0B,EAC1B,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,YAAY,EACV,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,2BAA2B,EAC3B,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,0BAA0B,EAC1B,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EACV,iCAAiC,EACjC,6BAA6B,EAC7B,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,GAC9B,MAAM,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"local-sqlite.d.ts","sourceRoot":"","sources":["../../src/storage/local-sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA6D3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAE3D,MAAM,WAAW,2CAA2C;IAC1D,EAAE,CAAC,EAAE,QAAQ,CAAC;CACf;AAED,wBAAgB,oCAAoC,CAClD,OAAO,GAAE,2CAAgD,GACxD,mBAAmB,CAmFrB"}
1
+ {"version":3,"file":"local-sqlite.d.ts","sourceRoot":"","sources":["../../src/storage/local-sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA6D3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAM3D,MAAM,WAAW,2CAA2C;IAC1D,EAAE,CAAC,EAAE,QAAQ,CAAC;CACf;AAED,wBAAgB,oCAAoC,CAClD,OAAO,GAAE,2CAAgD,GACxD,mBAAmB,CAqFrB"}
@@ -0,0 +1,11 @@
1
+ import type { TodosStorageAdapter } from "./interfaces.js";
2
+ import { type TodosPostgresQueryClient } from "./postgres-sync.js";
3
+ export interface CreatePostgresTodosStorageAdapterOptions {
4
+ client: TodosPostgresQueryClient;
5
+ service?: string;
6
+ sourceMachineId?: string;
7
+ tableName?: string;
8
+ cursorTableName?: string;
9
+ }
10
+ export declare function createPostgresTodosStorageAdapter(options: CreatePostgresTodosStorageAdapterOptions): TodosStorageAdapter;
11
+ //# sourceMappingURL=postgres-adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-adapter.d.ts","sourceRoot":"","sources":["../../src/storage/postgres-adapter.ts"],"names":[],"mappings":"AAwBA,OAAO,KAAK,EAIV,mBAAmB,EASpB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIL,KAAK,wBAAwB,EAE9B,MAAM,oBAAoB,CAAC;AAI5B,MAAM,WAAW,wCAAwC;IACvD,MAAM,EAAE,wBAAwB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAiBD,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,wCAAwC,GAChD,mBAAmB,CA6FrB"}
@@ -0,0 +1,44 @@
1
+ import type { TodosStorageContext, TodosStorageSnapshot } from "./interfaces.js";
2
+ export type TodosPostgresSyncRecordType = "tasks" | "projects" | "plans" | "agents" | "task_lists" | "templates" | "audit_history";
3
+ export interface TodosPostgresQueryResult<T = Record<string, unknown>> {
4
+ rows: T[];
5
+ }
6
+ export interface TodosPostgresQueryClient {
7
+ query<T = Record<string, unknown>>(sql: string, values?: readonly unknown[]): Promise<TodosPostgresQueryResult<T>>;
8
+ }
9
+ export interface CreatePostgresTodosSyncStoreOptions {
10
+ service?: string;
11
+ sourceMachineId?: string;
12
+ tableName?: string;
13
+ cursorTableName?: string;
14
+ }
15
+ export interface PullPostgresTodosSnapshotOptions {
16
+ since?: string;
17
+ objectTypes?: TodosPostgresSyncRecordType[];
18
+ }
19
+ export interface PostgresTodosSyncPushResult {
20
+ records: number;
21
+ objectTypes: Partial<Record<TodosPostgresSyncRecordType, number>>;
22
+ }
23
+ export interface TodosPostgresSyncRecordRow {
24
+ object_type: TodosPostgresSyncRecordType;
25
+ payload: unknown;
26
+ }
27
+ export declare const DEFAULT_TODOS_POSTGRES_SYNC_TABLE = "todos_sync_records";
28
+ export declare const DEFAULT_TODOS_POSTGRES_CURSOR_TABLE = "todos_sync_cursors";
29
+ export declare function postgresTodosSyncSchemaSql(tableName?: string, cursorTableName?: string): string[];
30
+ export declare class PostgresTodosSyncStore {
31
+ private readonly client;
32
+ private readonly service;
33
+ private readonly sourceMachineId?;
34
+ private readonly tableName;
35
+ private readonly cursorTableName;
36
+ constructor(client: TodosPostgresQueryClient, options?: CreatePostgresTodosSyncStoreOptions);
37
+ ensureSchema(): Promise<void>;
38
+ pushSnapshot(snapshot: TodosStorageSnapshot, context?: TodosStorageContext): Promise<PostgresTodosSyncPushResult>;
39
+ pullSnapshot(options?: PullPostgresTodosSnapshotOptions): Promise<TodosStorageSnapshot>;
40
+ getCursor(name: string): Promise<string | null>;
41
+ setCursor(name: string, value: string): Promise<void>;
42
+ }
43
+ export declare function createPostgresTodosSyncStore(client: TodosPostgresQueryClient, options?: CreatePostgresTodosSyncStoreOptions): PostgresTodosSyncStore;
44
+ //# sourceMappingURL=postgres-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postgres-sync.d.ts","sourceRoot":"","sources":["../../src/storage/postgres-sync.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAEzB,MAAM,MAAM,2BAA2B,GACnC,OAAO,GACP,UAAU,GACV,OAAO,GACP,QAAQ,GACR,YAAY,GACZ,WAAW,GACX,eAAe,CAAC;AAEpB,MAAM,WAAW,wBAAwB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,IAAI,EAAE,CAAC,EAAE,CAAC;CACX;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,SAAS,OAAO,EAAE,GAC1B,OAAO,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,mCAAmC;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gCAAgC;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,2BAA2B,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC,CAAC;CACnE;AAED,MAAM,WAAW,0BAA0B;IACzC,WAAW,EAAE,2BAA2B,CAAC;IACzC,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,eAAO,MAAM,iCAAiC,uBAAuB,CAAC;AACtE,eAAO,MAAM,mCAAmC,uBAAuB,CAAC;AAExE,wBAAgB,0BAA0B,CACxC,SAAS,SAAoC,EAC7C,eAAe,SAAsC,GACpD,MAAM,EAAE,CAwBV;AAED,qBAAa,sBAAsB;IAO/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IANzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAGtB,MAAM,EAAE,wBAAwB,EACjD,OAAO,GAAE,mCAAwC;IAU7C,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAM7B,YAAY,CAChB,QAAQ,EAAE,oBAAoB,EAC9B,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,2BAA2B,CAAC;IAiCjC,YAAY,CAAC,OAAO,GAAE,gCAAqC,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAsB3F,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAQ/C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAU5D;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,wBAAwB,EAChC,OAAO,GAAE,mCAAwC,GAChD,sBAAsB,CAExB"}
@@ -0,0 +1,75 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import type { TodosS3ArtifactStore } from "./s3-artifacts.js";
3
+ export interface TodosRunArtifactRemoteRef {
4
+ provider: "s3";
5
+ bucket: string;
6
+ key: string;
7
+ relative_path: string;
8
+ url: string;
9
+ sha256: string;
10
+ size_bytes: number;
11
+ uploaded_at?: string;
12
+ downloaded_at?: string;
13
+ }
14
+ export interface TodosRunArtifactSyncFilter {
15
+ runId?: string;
16
+ taskId?: string;
17
+ limit?: number;
18
+ includeAlreadySynced?: boolean;
19
+ }
20
+ export interface TodosRunArtifactSyncResult {
21
+ uploaded: number;
22
+ downloaded: number;
23
+ skipped: number;
24
+ errors: string[];
25
+ artifacts: Array<{
26
+ id: string;
27
+ run_id: string;
28
+ task_id: string;
29
+ key: string;
30
+ sha256: string;
31
+ size_bytes: number;
32
+ }>;
33
+ }
34
+ export interface TodosRunArtifactSyncPlan {
35
+ direction: "upload" | "download";
36
+ dry_run: true;
37
+ no_network: true;
38
+ total: number;
39
+ uploadable: number;
40
+ downloadable: number;
41
+ skipped: number;
42
+ errors: string[];
43
+ artifacts: Array<{
44
+ id: string;
45
+ run_id: string;
46
+ task_id: string;
47
+ status: "uploadable" | "downloadable" | "already_remote" | "local_ok" | "missing_local" | "metadata_only" | "missing_remote_ref";
48
+ sha256: string | null;
49
+ size_bytes: number | null;
50
+ remote_key?: string;
51
+ }>;
52
+ }
53
+ export interface UploadRunArtifactsToS3Options {
54
+ store: TodosS3ArtifactStore;
55
+ db?: Database;
56
+ filter?: TodosRunArtifactSyncFilter;
57
+ now?: () => Date;
58
+ }
59
+ export interface DownloadRunArtifactsFromS3Options {
60
+ store: TodosS3ArtifactStore;
61
+ db?: Database;
62
+ filter?: Omit<TodosRunArtifactSyncFilter, "includeAlreadySynced">;
63
+ force?: boolean;
64
+ now?: () => Date;
65
+ }
66
+ export interface PlanRunArtifactsS3SyncOptions {
67
+ db?: Database;
68
+ filter?: TodosRunArtifactSyncFilter;
69
+ direction: "upload" | "download";
70
+ force?: boolean;
71
+ }
72
+ export declare function uploadRunArtifactsToS3(options: UploadRunArtifactsToS3Options): Promise<TodosRunArtifactSyncResult>;
73
+ export declare function planRunArtifactsS3Sync(options: PlanRunArtifactsS3SyncOptions): TodosRunArtifactSyncPlan;
74
+ export declare function downloadRunArtifactsFromS3(options: DownloadRunArtifactsFromS3Options): Promise<TodosRunArtifactSyncResult>;
75
+ //# sourceMappingURL=s3-artifact-sync.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3-artifact-sync.d.ts","sourceRoot":"","sources":["../../src/storage/s3-artifact-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ import type { TodosS3StorageConfig } from "./config.js";
2
+ export interface TodosAwsCredentials {
3
+ accessKeyId: string;
4
+ secretAccessKey: string;
5
+ sessionToken?: string;
6
+ }
7
+ export interface TodosS3ArtifactStoreOptions {
8
+ config: TodosS3StorageConfig;
9
+ credentials: TodosAwsCredentials;
10
+ fetch?: typeof fetch;
11
+ now?: () => Date;
12
+ }
13
+ export interface PutTodosS3ObjectInput {
14
+ key: string;
15
+ body: BodyInit | Uint8Array | string;
16
+ contentType?: string;
17
+ metadata?: Record<string, string>;
18
+ }
19
+ export interface TodosS3ObjectRef {
20
+ bucket: string;
21
+ key: string;
22
+ url: string;
23
+ etag?: string;
24
+ }
25
+ export interface TodosS3ArtifactStore {
26
+ objectKey(relativePath: string): string;
27
+ objectUrl(relativePath: string): URL;
28
+ putObject(input: PutTodosS3ObjectInput): Promise<TodosS3ObjectRef>;
29
+ getObject(relativePath: string): Promise<Response>;
30
+ deleteObject(relativePath: string): Promise<void>;
31
+ }
32
+ export declare function createTodosS3ArtifactStore(options: TodosS3ArtifactStoreOptions): TodosS3ArtifactStore;
33
+ export declare function buildS3ObjectKey(config: Pick<TodosS3StorageConfig, "prefix">, relativePath: string): string;
34
+ export declare function buildS3ObjectUrl(config: TodosS3StorageConfig, key: string): URL;
35
+ export interface SignAwsV4RequestInput {
36
+ method: string;
37
+ url: URL;
38
+ region: string;
39
+ service: string;
40
+ headers?: Record<string, string>;
41
+ body?: Uint8Array;
42
+ credentials: TodosAwsCredentials;
43
+ now: Date;
44
+ }
45
+ export interface SignedAwsV4Request {
46
+ headers: Record<string, string>;
47
+ canonicalRequest: string;
48
+ stringToSign: string;
49
+ }
50
+ export declare function signAwsV4Request(input: SignAwsV4RequestInput): SignedAwsV4Request;
51
+ //# sourceMappingURL=s3-artifacts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"s3-artifacts.d.ts","sourceRoot":"","sources":["../../src/storage/s3-artifacts.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAExD,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,oBAAoB,CAAC;IAC7B,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,MAAM,CAAC;IACrC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;IACxC,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,GAAG,CAAC;IACrC,SAAS,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnE,SAAS,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnD,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACnD;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,oBAAoB,CAkErG;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,IAAI,CAAC,oBAAoB,EAAE,QAAQ,CAAC,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM,CAI3G;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAQ/E;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,GAAG,CAAC;IACT,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,mBAAmB,CAAC;IACjC,GAAG,EAAE,IAAI,CAAC;CACX;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,kBAAkB,CA8CjF"}
@@ -0,0 +1,5 @@
1
+ import type { Database } from "bun:sqlite";
2
+ import type { TodosStorageImportResult, TodosStorageSnapshot } from "./interfaces.js";
3
+ export declare function exportSqliteTodosStorageSnapshot(db?: Database): TodosStorageSnapshot;
4
+ export declare function importSqliteTodosStorageSnapshot(snapshot: TodosStorageSnapshot, db?: Database): TodosStorageImportResult;
5
+ //# sourceMappingURL=sqlite-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sqlite-snapshot.d.ts","sourceRoot":"","sources":["../../src/storage/sqlite-snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAoB,MAAM,YAAY,CAAC;AAS7D,OAAO,KAAK,EACV,wBAAwB,EACxB,oBAAoB,EACrB,MAAM,iBAAiB,CAAC;AAkDzB,wBAAgB,gCAAgC,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,oBAAoB,CAapF;AAED,wBAAgB,gCAAgC,CAC9C,QAAQ,EAAE,oBAAoB,EAC9B,EAAE,CAAC,EAAE,QAAQ,GACZ,wBAAwB,CA2C1B"}
package/dist/storage.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export type { MaybePromise, ActiveWorkItem, TodosActiveWorkFilter, TodosAgentUpdateInput, TodosAgentStore, TodosAuditStore, TodosPlanStore, TodosProjectStore, TodosStorageAdapter, TodosStorageCapabilities, TodosStorageContext, TodosStorageImportResult, TodosStorageKind, TodosStorageSnapshot, TodosSyncStore, TodosTaskClaimFilter, TodosTaskCompletionOptions, TodosTaskFailureOptions, TodosTaskFailureResult, TodosTaskListStore, TodosTaskStore, TodosTemplateStore, UpdateTemplateInput, } from "./storage/index.js";
2
- export { createLocalSqliteTodosStorageAdapter } from "./storage/index.js";
2
+ export { CANONICAL_TODOS_RDS_CLUSTER, CANONICAL_TODOS_RDS_DATABASE, CANONICAL_TODOS_RDS_RUNTIME_PATH, STORAGE_TABLES, TODOS_STORAGE_ENV, TODOS_STORAGE_FALLBACK_ENV, TODOS_STORAGE_TABLES, assertTodosRemoteStorageConfig, createLocalSqliteTodosStorageAdapter, createHybridTodosStorageAdapter, createTodosStorageAdapter, exportSqliteTodosStorageSnapshot, importSqliteTodosStorageSnapshot, isTodosRemoteStorageEnabled, loadTodosStorageConfig, parseStorageMode, planRunArtifactsS3Sync, createPostgresTodosStorageAdapter, createPostgresTodosSyncStore, createTodosS3ArtifactStore, postgresTodosSyncSchemaSql, signAwsV4Request, uploadRunArtifactsToS3, downloadRunArtifactsFromS3, getCanonicalTodosRdsConfig, getStorageDatabaseEnv, getStorageDatabaseUrl, getStorageMode, getTodosStorageDatabaseEnv, getTodosStorageDatabaseUrl, getTodosStorageEnvName, getTodosStorageMode, buildS3ObjectKey, buildS3ObjectUrl, loadStorageConfig, } from "./storage/index.js";
3
3
  export type { CreateLocalSqliteTodosStorageAdapterOptions } from "./storage/index.js";
4
+ export type { CanonicalTodosRdsConfig, CreateHybridTodosStorageAdapterOptions, CreatePostgresTodosStorageAdapterOptions, CreatePostgresTodosSyncStoreOptions, CreateTodosStorageAdapterOptions, DownloadRunArtifactsFromS3Options, HybridTodosRemoteSync, HybridTodosStorageAdapter, HybridTodosStorageSyncResult, PostgresTodosSyncPushResult, PlanRunArtifactsS3SyncOptions, PullPostgresTodosSnapshotOptions, PutTodosS3ObjectInput, SignAwsV4RequestInput, SignedAwsV4Request, TodosAwsCredentials, TodosPostgresQueryClient, TodosPostgresQueryResult, TodosPostgresSyncRecordRow, TodosPostgresSyncRecordType, TodosPostgresStorageConfig, TodosS3StorageConfig, TodosS3ArtifactStore, TodosS3ArtifactStoreOptions, TodosS3ObjectRef, TodosRunArtifactRemoteRef, TodosRunArtifactSyncFilter, TodosRunArtifactSyncPlan, TodosRunArtifactSyncResult, TodosStorageConfig, TodosStorageEnv, TodosStorageMode, TodosStorageTable, TodosSyncConfig, UploadRunArtifactsToS3Options, } from "./storage/index.js";
4
5
  //# sourceMappingURL=storage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,oCAAoC,EAAE,MAAM,oBAAoB,CAAC;AAC1E,YAAY,EAAE,2CAA2C,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../src/storage.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,YAAY,EACZ,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,eAAe,EACf,eAAe,EACf,cAAc,EACd,iBAAiB,EACjB,mBAAmB,EACnB,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,oBAAoB,EACpB,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,kBAAkB,EAClB,cAAc,EACd,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,EAC5B,gCAAgC,EAChC,cAAc,EACd,iBAAiB,EACjB,0BAA0B,EAC1B,oBAAoB,EACpB,8BAA8B,EAC9B,oCAAoC,EACpC,+BAA+B,EAC/B,yBAAyB,EACzB,gCAAgC,EAChC,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,EAChB,sBAAsB,EACtB,iCAAiC,EACjC,4BAA4B,EAC5B,0BAA0B,EAC1B,0BAA0B,EAC1B,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,0BAA0B,EAC1B,qBAAqB,EACrB,qBAAqB,EACrB,cAAc,EACd,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EAAE,2CAA2C,EAAE,MAAM,oBAAoB,CAAC;AACtF,YAAY,EACV,uBAAuB,EACvB,sCAAsC,EACtC,wCAAwC,EACxC,mCAAmC,EACnC,gCAAgC,EAChC,iCAAiC,EACjC,qBAAqB,EACrB,yBAAyB,EACzB,4BAA4B,EAC5B,2BAA2B,EAC3B,6BAA6B,EAC7B,gCAAgC,EAChC,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,wBAAwB,EACxB,wBAAwB,EACxB,0BAA0B,EAC1B,2BAA2B,EAC3B,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,2BAA2B,EAC3B,gBAAgB,EAChB,yBAAyB,EACzB,0BAA0B,EAC1B,wBAAwB,EACxB,0BAA0B,EAC1B,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,6BAA6B,GAC9B,MAAM,oBAAoB,CAAC"}