gitx.do 0.1.1 → 0.1.3

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 (376) hide show
  1. package/README.md +40 -353
  2. package/dist/do/logger.d.ts +50 -0
  3. package/dist/do/logger.d.ts.map +1 -0
  4. package/dist/do/logger.js +122 -0
  5. package/dist/do/logger.js.map +1 -0
  6. package/dist/{durable-object → do}/schema.d.ts +3 -3
  7. package/dist/do/schema.d.ts.map +1 -0
  8. package/dist/{durable-object → do}/schema.js +4 -3
  9. package/dist/do/schema.js.map +1 -0
  10. package/dist/do/types.d.ts +267 -0
  11. package/dist/do/types.d.ts.map +1 -0
  12. package/dist/do/types.js +62 -0
  13. package/dist/do/types.js.map +1 -0
  14. package/dist/index.d.ts +15 -469
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +39 -481
  17. package/dist/index.js.map +1 -1
  18. package/dist/mcp/auth.d.ts +77 -0
  19. package/dist/mcp/auth.d.ts.map +1 -0
  20. package/dist/mcp/auth.js +278 -0
  21. package/dist/mcp/auth.js.map +1 -0
  22. package/dist/mcp/index.d.ts +13 -0
  23. package/dist/mcp/index.d.ts.map +1 -0
  24. package/dist/mcp/index.js +19 -0
  25. package/dist/mcp/index.js.map +1 -0
  26. package/dist/mcp/server.d.ts +200 -0
  27. package/dist/mcp/server.d.ts.map +1 -0
  28. package/dist/mcp/server.js +275 -0
  29. package/dist/mcp/server.js.map +1 -0
  30. package/dist/mcp/tool-registry.d.ts +47 -0
  31. package/dist/mcp/tool-registry.d.ts.map +1 -0
  32. package/dist/mcp/tool-registry.js +284 -0
  33. package/dist/mcp/tool-registry.js.map +1 -0
  34. package/dist/mcp/tools.d.ts +103 -515
  35. package/dist/mcp/tools.d.ts.map +1 -1
  36. package/dist/mcp/tools.js +676 -3087
  37. package/dist/mcp/tools.js.map +1 -1
  38. package/dist/mcp/types.d.ts +124 -0
  39. package/dist/mcp/types.d.ts.map +1 -0
  40. package/dist/mcp/types.js +9 -0
  41. package/dist/mcp/types.js.map +1 -0
  42. package/package.json +19 -21
  43. package/dist/cli/commands/add.d.ts +0 -176
  44. package/dist/cli/commands/add.d.ts.map +0 -1
  45. package/dist/cli/commands/add.js +0 -979
  46. package/dist/cli/commands/add.js.map +0 -1
  47. package/dist/cli/commands/blame.d.ts +0 -259
  48. package/dist/cli/commands/blame.d.ts.map +0 -1
  49. package/dist/cli/commands/blame.js +0 -609
  50. package/dist/cli/commands/blame.js.map +0 -1
  51. package/dist/cli/commands/branch.d.ts +0 -249
  52. package/dist/cli/commands/branch.d.ts.map +0 -1
  53. package/dist/cli/commands/branch.js +0 -693
  54. package/dist/cli/commands/branch.js.map +0 -1
  55. package/dist/cli/commands/checkout.d.ts +0 -73
  56. package/dist/cli/commands/checkout.d.ts.map +0 -1
  57. package/dist/cli/commands/checkout.js +0 -725
  58. package/dist/cli/commands/checkout.js.map +0 -1
  59. package/dist/cli/commands/commit.d.ts +0 -182
  60. package/dist/cli/commands/commit.d.ts.map +0 -1
  61. package/dist/cli/commands/commit.js +0 -457
  62. package/dist/cli/commands/commit.js.map +0 -1
  63. package/dist/cli/commands/diff.d.ts +0 -464
  64. package/dist/cli/commands/diff.d.ts.map +0 -1
  65. package/dist/cli/commands/diff.js +0 -959
  66. package/dist/cli/commands/diff.js.map +0 -1
  67. package/dist/cli/commands/log.d.ts +0 -239
  68. package/dist/cli/commands/log.d.ts.map +0 -1
  69. package/dist/cli/commands/log.js +0 -535
  70. package/dist/cli/commands/log.js.map +0 -1
  71. package/dist/cli/commands/merge.d.ts +0 -106
  72. package/dist/cli/commands/merge.d.ts.map +0 -1
  73. package/dist/cli/commands/merge.js +0 -852
  74. package/dist/cli/commands/merge.js.map +0 -1
  75. package/dist/cli/commands/review.d.ts +0 -457
  76. package/dist/cli/commands/review.d.ts.map +0 -1
  77. package/dist/cli/commands/review.js +0 -558
  78. package/dist/cli/commands/review.js.map +0 -1
  79. package/dist/cli/commands/stash.d.ts +0 -157
  80. package/dist/cli/commands/stash.d.ts.map +0 -1
  81. package/dist/cli/commands/stash.js +0 -655
  82. package/dist/cli/commands/stash.js.map +0 -1
  83. package/dist/cli/commands/status.d.ts +0 -269
  84. package/dist/cli/commands/status.d.ts.map +0 -1
  85. package/dist/cli/commands/status.js +0 -492
  86. package/dist/cli/commands/status.js.map +0 -1
  87. package/dist/cli/commands/web.d.ts +0 -199
  88. package/dist/cli/commands/web.d.ts.map +0 -1
  89. package/dist/cli/commands/web.js +0 -697
  90. package/dist/cli/commands/web.js.map +0 -1
  91. package/dist/cli/fs-adapter.d.ts +0 -656
  92. package/dist/cli/fs-adapter.d.ts.map +0 -1
  93. package/dist/cli/fs-adapter.js +0 -1177
  94. package/dist/cli/fs-adapter.js.map +0 -1
  95. package/dist/cli/fsx-cli-adapter.d.ts +0 -359
  96. package/dist/cli/fsx-cli-adapter.d.ts.map +0 -1
  97. package/dist/cli/fsx-cli-adapter.js +0 -619
  98. package/dist/cli/fsx-cli-adapter.js.map +0 -1
  99. package/dist/cli/index.d.ts +0 -387
  100. package/dist/cli/index.d.ts.map +0 -1
  101. package/dist/cli/index.js +0 -579
  102. package/dist/cli/index.js.map +0 -1
  103. package/dist/cli/ui/components/DiffView.d.ts +0 -12
  104. package/dist/cli/ui/components/DiffView.d.ts.map +0 -1
  105. package/dist/cli/ui/components/DiffView.js +0 -11
  106. package/dist/cli/ui/components/DiffView.js.map +0 -1
  107. package/dist/cli/ui/components/ErrorDisplay.d.ts +0 -10
  108. package/dist/cli/ui/components/ErrorDisplay.d.ts.map +0 -1
  109. package/dist/cli/ui/components/ErrorDisplay.js +0 -11
  110. package/dist/cli/ui/components/ErrorDisplay.js.map +0 -1
  111. package/dist/cli/ui/components/FuzzySearch.d.ts +0 -15
  112. package/dist/cli/ui/components/FuzzySearch.d.ts.map +0 -1
  113. package/dist/cli/ui/components/FuzzySearch.js +0 -12
  114. package/dist/cli/ui/components/FuzzySearch.js.map +0 -1
  115. package/dist/cli/ui/components/LoadingSpinner.d.ts +0 -10
  116. package/dist/cli/ui/components/LoadingSpinner.d.ts.map +0 -1
  117. package/dist/cli/ui/components/LoadingSpinner.js +0 -10
  118. package/dist/cli/ui/components/LoadingSpinner.js.map +0 -1
  119. package/dist/cli/ui/components/NavigationList.d.ts +0 -14
  120. package/dist/cli/ui/components/NavigationList.d.ts.map +0 -1
  121. package/dist/cli/ui/components/NavigationList.js +0 -11
  122. package/dist/cli/ui/components/NavigationList.js.map +0 -1
  123. package/dist/cli/ui/components/ScrollableContent.d.ts +0 -13
  124. package/dist/cli/ui/components/ScrollableContent.d.ts.map +0 -1
  125. package/dist/cli/ui/components/ScrollableContent.js +0 -11
  126. package/dist/cli/ui/components/ScrollableContent.js.map +0 -1
  127. package/dist/cli/ui/components/index.d.ts +0 -7
  128. package/dist/cli/ui/components/index.d.ts.map +0 -1
  129. package/dist/cli/ui/components/index.js +0 -9
  130. package/dist/cli/ui/components/index.js.map +0 -1
  131. package/dist/cli/ui/terminal-ui.d.ts +0 -85
  132. package/dist/cli/ui/terminal-ui.d.ts.map +0 -1
  133. package/dist/cli/ui/terminal-ui.js +0 -121
  134. package/dist/cli/ui/terminal-ui.js.map +0 -1
  135. package/dist/do/BashModule.d.ts +0 -871
  136. package/dist/do/BashModule.d.ts.map +0 -1
  137. package/dist/do/BashModule.js +0 -1143
  138. package/dist/do/BashModule.js.map +0 -1
  139. package/dist/do/FsModule.d.ts +0 -612
  140. package/dist/do/FsModule.d.ts.map +0 -1
  141. package/dist/do/FsModule.js +0 -1120
  142. package/dist/do/FsModule.js.map +0 -1
  143. package/dist/do/GitModule.d.ts +0 -635
  144. package/dist/do/GitModule.d.ts.map +0 -1
  145. package/dist/do/GitModule.js +0 -784
  146. package/dist/do/GitModule.js.map +0 -1
  147. package/dist/do/GitRepoDO.d.ts +0 -281
  148. package/dist/do/GitRepoDO.d.ts.map +0 -1
  149. package/dist/do/GitRepoDO.js +0 -479
  150. package/dist/do/GitRepoDO.js.map +0 -1
  151. package/dist/do/bash-ast.d.ts +0 -246
  152. package/dist/do/bash-ast.d.ts.map +0 -1
  153. package/dist/do/bash-ast.js +0 -888
  154. package/dist/do/bash-ast.js.map +0 -1
  155. package/dist/do/container-executor.d.ts +0 -491
  156. package/dist/do/container-executor.d.ts.map +0 -1
  157. package/dist/do/container-executor.js +0 -731
  158. package/dist/do/container-executor.js.map +0 -1
  159. package/dist/do/index.d.ts +0 -53
  160. package/dist/do/index.d.ts.map +0 -1
  161. package/dist/do/index.js +0 -91
  162. package/dist/do/index.js.map +0 -1
  163. package/dist/do/tiered-storage.d.ts +0 -403
  164. package/dist/do/tiered-storage.d.ts.map +0 -1
  165. package/dist/do/tiered-storage.js +0 -689
  166. package/dist/do/tiered-storage.js.map +0 -1
  167. package/dist/do/withBash.d.ts +0 -231
  168. package/dist/do/withBash.d.ts.map +0 -1
  169. package/dist/do/withBash.js +0 -244
  170. package/dist/do/withBash.js.map +0 -1
  171. package/dist/do/withFs.d.ts +0 -237
  172. package/dist/do/withFs.d.ts.map +0 -1
  173. package/dist/do/withFs.js +0 -387
  174. package/dist/do/withFs.js.map +0 -1
  175. package/dist/do/withGit.d.ts +0 -180
  176. package/dist/do/withGit.d.ts.map +0 -1
  177. package/dist/do/withGit.js +0 -271
  178. package/dist/do/withGit.js.map +0 -1
  179. package/dist/durable-object/object-store.d.ts +0 -633
  180. package/dist/durable-object/object-store.d.ts.map +0 -1
  181. package/dist/durable-object/object-store.js +0 -1164
  182. package/dist/durable-object/object-store.js.map +0 -1
  183. package/dist/durable-object/schema.d.ts.map +0 -1
  184. package/dist/durable-object/schema.js.map +0 -1
  185. package/dist/durable-object/wal.d.ts +0 -416
  186. package/dist/durable-object/wal.d.ts.map +0 -1
  187. package/dist/durable-object/wal.js +0 -445
  188. package/dist/durable-object/wal.js.map +0 -1
  189. package/dist/mcp/adapter.d.ts +0 -772
  190. package/dist/mcp/adapter.d.ts.map +0 -1
  191. package/dist/mcp/adapter.js +0 -895
  192. package/dist/mcp/adapter.js.map +0 -1
  193. package/dist/mcp/sandbox/miniflare-evaluator.d.ts +0 -22
  194. package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +0 -1
  195. package/dist/mcp/sandbox/miniflare-evaluator.js +0 -140
  196. package/dist/mcp/sandbox/miniflare-evaluator.js.map +0 -1
  197. package/dist/mcp/sandbox/object-store-proxy.d.ts +0 -32
  198. package/dist/mcp/sandbox/object-store-proxy.d.ts.map +0 -1
  199. package/dist/mcp/sandbox/object-store-proxy.js +0 -30
  200. package/dist/mcp/sandbox/object-store-proxy.js.map +0 -1
  201. package/dist/mcp/sandbox/template.d.ts +0 -17
  202. package/dist/mcp/sandbox/template.d.ts.map +0 -1
  203. package/dist/mcp/sandbox/template.js +0 -71
  204. package/dist/mcp/sandbox/template.js.map +0 -1
  205. package/dist/mcp/sandbox.d.ts +0 -764
  206. package/dist/mcp/sandbox.d.ts.map +0 -1
  207. package/dist/mcp/sandbox.js +0 -1362
  208. package/dist/mcp/sandbox.js.map +0 -1
  209. package/dist/mcp/sdk-adapter.d.ts +0 -835
  210. package/dist/mcp/sdk-adapter.d.ts.map +0 -1
  211. package/dist/mcp/sdk-adapter.js +0 -974
  212. package/dist/mcp/sdk-adapter.js.map +0 -1
  213. package/dist/mcp/tools/do.d.ts +0 -32
  214. package/dist/mcp/tools/do.d.ts.map +0 -1
  215. package/dist/mcp/tools/do.js +0 -117
  216. package/dist/mcp/tools/do.js.map +0 -1
  217. package/dist/ops/blame.d.ts +0 -551
  218. package/dist/ops/blame.d.ts.map +0 -1
  219. package/dist/ops/blame.js +0 -1037
  220. package/dist/ops/blame.js.map +0 -1
  221. package/dist/ops/branch.d.ts +0 -766
  222. package/dist/ops/branch.d.ts.map +0 -1
  223. package/dist/ops/branch.js +0 -950
  224. package/dist/ops/branch.js.map +0 -1
  225. package/dist/ops/commit-traversal.d.ts +0 -349
  226. package/dist/ops/commit-traversal.d.ts.map +0 -1
  227. package/dist/ops/commit-traversal.js +0 -821
  228. package/dist/ops/commit-traversal.js.map +0 -1
  229. package/dist/ops/commit.d.ts +0 -555
  230. package/dist/ops/commit.d.ts.map +0 -1
  231. package/dist/ops/commit.js +0 -826
  232. package/dist/ops/commit.js.map +0 -1
  233. package/dist/ops/merge-base.d.ts +0 -397
  234. package/dist/ops/merge-base.d.ts.map +0 -1
  235. package/dist/ops/merge-base.js +0 -691
  236. package/dist/ops/merge-base.js.map +0 -1
  237. package/dist/ops/merge.d.ts +0 -855
  238. package/dist/ops/merge.d.ts.map +0 -1
  239. package/dist/ops/merge.js +0 -1551
  240. package/dist/ops/merge.js.map +0 -1
  241. package/dist/ops/tag.d.ts +0 -247
  242. package/dist/ops/tag.d.ts.map +0 -1
  243. package/dist/ops/tag.js +0 -649
  244. package/dist/ops/tag.js.map +0 -1
  245. package/dist/ops/tree-builder.d.ts +0 -178
  246. package/dist/ops/tree-builder.d.ts.map +0 -1
  247. package/dist/ops/tree-builder.js +0 -271
  248. package/dist/ops/tree-builder.js.map +0 -1
  249. package/dist/ops/tree-diff.d.ts +0 -291
  250. package/dist/ops/tree-diff.d.ts.map +0 -1
  251. package/dist/ops/tree-diff.js +0 -705
  252. package/dist/ops/tree-diff.js.map +0 -1
  253. package/dist/pack/delta.d.ts +0 -248
  254. package/dist/pack/delta.d.ts.map +0 -1
  255. package/dist/pack/delta.js +0 -740
  256. package/dist/pack/delta.js.map +0 -1
  257. package/dist/pack/format.d.ts +0 -446
  258. package/dist/pack/format.d.ts.map +0 -1
  259. package/dist/pack/format.js +0 -572
  260. package/dist/pack/format.js.map +0 -1
  261. package/dist/pack/full-generation.d.ts +0 -612
  262. package/dist/pack/full-generation.d.ts.map +0 -1
  263. package/dist/pack/full-generation.js +0 -1378
  264. package/dist/pack/full-generation.js.map +0 -1
  265. package/dist/pack/generation.d.ts +0 -441
  266. package/dist/pack/generation.d.ts.map +0 -1
  267. package/dist/pack/generation.js +0 -707
  268. package/dist/pack/generation.js.map +0 -1
  269. package/dist/pack/index.d.ts +0 -502
  270. package/dist/pack/index.d.ts.map +0 -1
  271. package/dist/pack/index.js +0 -833
  272. package/dist/pack/index.js.map +0 -1
  273. package/dist/refs/branch.d.ts +0 -683
  274. package/dist/refs/branch.d.ts.map +0 -1
  275. package/dist/refs/branch.js +0 -881
  276. package/dist/refs/branch.js.map +0 -1
  277. package/dist/refs/storage.d.ts +0 -833
  278. package/dist/refs/storage.d.ts.map +0 -1
  279. package/dist/refs/storage.js +0 -1023
  280. package/dist/refs/storage.js.map +0 -1
  281. package/dist/refs/tag.d.ts +0 -860
  282. package/dist/refs/tag.d.ts.map +0 -1
  283. package/dist/refs/tag.js +0 -996
  284. package/dist/refs/tag.js.map +0 -1
  285. package/dist/storage/backend.d.ts +0 -425
  286. package/dist/storage/backend.d.ts.map +0 -1
  287. package/dist/storage/backend.js +0 -41
  288. package/dist/storage/backend.js.map +0 -1
  289. package/dist/storage/fsx-adapter.d.ts +0 -204
  290. package/dist/storage/fsx-adapter.d.ts.map +0 -1
  291. package/dist/storage/fsx-adapter.js +0 -518
  292. package/dist/storage/fsx-adapter.js.map +0 -1
  293. package/dist/storage/lru-cache.d.ts +0 -691
  294. package/dist/storage/lru-cache.d.ts.map +0 -1
  295. package/dist/storage/lru-cache.js +0 -813
  296. package/dist/storage/lru-cache.js.map +0 -1
  297. package/dist/storage/object-index.d.ts +0 -585
  298. package/dist/storage/object-index.d.ts.map +0 -1
  299. package/dist/storage/object-index.js +0 -532
  300. package/dist/storage/object-index.js.map +0 -1
  301. package/dist/storage/r2-pack.d.ts +0 -1257
  302. package/dist/storage/r2-pack.d.ts.map +0 -1
  303. package/dist/storage/r2-pack.js +0 -1773
  304. package/dist/storage/r2-pack.js.map +0 -1
  305. package/dist/tiered/cdc-pipeline.d.ts +0 -1888
  306. package/dist/tiered/cdc-pipeline.d.ts.map +0 -1
  307. package/dist/tiered/cdc-pipeline.js +0 -1880
  308. package/dist/tiered/cdc-pipeline.js.map +0 -1
  309. package/dist/tiered/migration.d.ts +0 -1104
  310. package/dist/tiered/migration.d.ts.map +0 -1
  311. package/dist/tiered/migration.js +0 -1217
  312. package/dist/tiered/migration.js.map +0 -1
  313. package/dist/tiered/parquet-writer.d.ts +0 -1145
  314. package/dist/tiered/parquet-writer.d.ts.map +0 -1
  315. package/dist/tiered/parquet-writer.js +0 -1183
  316. package/dist/tiered/parquet-writer.js.map +0 -1
  317. package/dist/tiered/read-path.d.ts +0 -835
  318. package/dist/tiered/read-path.d.ts.map +0 -1
  319. package/dist/tiered/read-path.js +0 -487
  320. package/dist/tiered/read-path.js.map +0 -1
  321. package/dist/types/capability.d.ts +0 -1385
  322. package/dist/types/capability.d.ts.map +0 -1
  323. package/dist/types/capability.js +0 -36
  324. package/dist/types/capability.js.map +0 -1
  325. package/dist/types/index.d.ts +0 -13
  326. package/dist/types/index.d.ts.map +0 -1
  327. package/dist/types/index.js +0 -18
  328. package/dist/types/index.js.map +0 -1
  329. package/dist/types/interfaces.d.ts +0 -673
  330. package/dist/types/interfaces.d.ts.map +0 -1
  331. package/dist/types/interfaces.js +0 -26
  332. package/dist/types/interfaces.js.map +0 -1
  333. package/dist/types/objects.d.ts +0 -692
  334. package/dist/types/objects.d.ts.map +0 -1
  335. package/dist/types/objects.js +0 -837
  336. package/dist/types/objects.js.map +0 -1
  337. package/dist/types/storage.d.ts +0 -603
  338. package/dist/types/storage.d.ts.map +0 -1
  339. package/dist/types/storage.js +0 -191
  340. package/dist/types/storage.js.map +0 -1
  341. package/dist/types/worker-loader.d.ts +0 -60
  342. package/dist/types/worker-loader.d.ts.map +0 -1
  343. package/dist/types/worker-loader.js +0 -62
  344. package/dist/types/worker-loader.js.map +0 -1
  345. package/dist/utils/hash.d.ts +0 -198
  346. package/dist/utils/hash.d.ts.map +0 -1
  347. package/dist/utils/hash.js +0 -272
  348. package/dist/utils/hash.js.map +0 -1
  349. package/dist/utils/sha1.d.ts +0 -325
  350. package/dist/utils/sha1.d.ts.map +0 -1
  351. package/dist/utils/sha1.js +0 -635
  352. package/dist/utils/sha1.js.map +0 -1
  353. package/dist/wire/capabilities.d.ts +0 -1044
  354. package/dist/wire/capabilities.d.ts.map +0 -1
  355. package/dist/wire/capabilities.js +0 -941
  356. package/dist/wire/capabilities.js.map +0 -1
  357. package/dist/wire/path-security.d.ts +0 -157
  358. package/dist/wire/path-security.d.ts.map +0 -1
  359. package/dist/wire/path-security.js +0 -307
  360. package/dist/wire/path-security.js.map +0 -1
  361. package/dist/wire/pkt-line.d.ts +0 -345
  362. package/dist/wire/pkt-line.d.ts.map +0 -1
  363. package/dist/wire/pkt-line.js +0 -381
  364. package/dist/wire/pkt-line.js.map +0 -1
  365. package/dist/wire/receive-pack.d.ts +0 -1059
  366. package/dist/wire/receive-pack.d.ts.map +0 -1
  367. package/dist/wire/receive-pack.js +0 -1414
  368. package/dist/wire/receive-pack.js.map +0 -1
  369. package/dist/wire/smart-http.d.ts +0 -799
  370. package/dist/wire/smart-http.d.ts.map +0 -1
  371. package/dist/wire/smart-http.js +0 -945
  372. package/dist/wire/smart-http.js.map +0 -1
  373. package/dist/wire/upload-pack.d.ts +0 -727
  374. package/dist/wire/upload-pack.d.ts.map +0 -1
  375. package/dist/wire/upload-pack.js +0 -1141
  376. package/dist/wire/upload-pack.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"object-store.js","sourceRoot":"","sources":["../../src/durable-object/object-store.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/durable-object/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAMH;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,GAAG,EAAE;QACH;;;;;;;;;;;;;;;WAeG;QACH,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,GAAG;YAAE,OAAO,IAAI,OAAO,EAAE,CAAA;SAAE,CAAA;KACpE,CAAA;CACF;AAMD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,cAAc,IAAI,CAAA;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,eAAO,MAAM,UAAU,83HA8FtB,CAAA;AAeD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,qBAAa,aAAa;IAMZ,OAAO,CAAC,OAAO;IAL3B;;;;OAIG;gBACiB,OAAO,EAAE,oBAAoB;IAEjD;;;;;;;;;;;OAWG;IACG,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvC;;;;;;;;;;;;;;OAcG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC;IAKzC;;;;;;;;;;;;;;;;;;OAkBG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;CASzC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/durable-object/schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAqDH,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAA;AAE/B;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8FzB,CAAA;AAED;;;;;;GAMG;AACH,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,CAAC,CAAA;AAE/H,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,OAAO,aAAa;IAMJ;IALpB;;;;OAIG;IACH,YAAoB,OAA6B;QAA7B,YAAO,GAAP,OAAO,CAAsB;IAAG,CAAC;IAErD;;;;;;;;;;;OAWG;IACH,KAAK,CAAC,gBAAgB;QACpB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,KAAK,CAAC,gBAAgB;QACpB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;QAC3C,OAAO,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,cAAc;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAClC,mDAAmD,CACpD,CAAA;QACD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,EAAwB,CAAA;QACrD,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAE1C,OAAO,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAA;IACnE,CAAC;CACF"}
@@ -1,416 +0,0 @@
1
- /**
2
- * @fileoverview Write-Ahead Log (WAL) Manager for Transaction Durability
3
- *
4
- * This module provides a Write-Ahead Log implementation for ensuring durability
5
- * and crash recovery in the Git object storage. All operations are logged before
6
- * being applied, allowing recovery after failures.
7
- *
8
- * **Key Features**:
9
- * - Transaction support with begin/commit/rollback semantics
10
- * - Checkpoint creation for efficient recovery
11
- * - WAL truncation after successful checkpoints
12
- * - Unflushed entry recovery for crash recovery
13
- *
14
- * @module durable-object/wal
15
- *
16
- * @example
17
- * ```typescript
18
- * import { WALManager } from './durable-object/wal'
19
- *
20
- * const wal = new WALManager(storage)
21
- *
22
- * // Simple operation logging
23
- * const entryId = await wal.append('PUT', payload)
24
- *
25
- * // Transaction support
26
- * const txId = await wal.beginTransaction()
27
- * await wal.append('PUT', payload1, txId)
28
- * await wal.append('PUT', payload2, txId)
29
- * await wal.commitTransaction(txId)
30
- *
31
- * // Create checkpoint for recovery point
32
- * const checkpoint = await wal.createCheckpoint()
33
- * ```
34
- */
35
- import { DurableObjectStorage } from './schema';
36
- /**
37
- * Types of operations that can be logged to the WAL.
38
- *
39
- * @description
40
- * - `PUT`: Object creation or update
41
- * - `DELETE`: Object deletion
42
- * - `UPDATE`: Object modification
43
- * - `BATCH`: Multiple operations grouped together
44
- * - `TX_BEGIN`: Transaction start marker
45
- * - `TX_COMMIT`: Transaction commit marker
46
- * - `TX_ROLLBACK`: Transaction rollback marker
47
- */
48
- export type WALOperationType = 'PUT' | 'DELETE' | 'UPDATE' | 'BATCH' | 'TX_BEGIN' | 'TX_COMMIT' | 'TX_ROLLBACK';
49
- /**
50
- * Possible states for a transaction.
51
- *
52
- * @description
53
- * - `ACTIVE`: Transaction is in progress
54
- * - `COMMITTED`: Transaction has been committed successfully
55
- * - `ROLLED_BACK`: Transaction has been rolled back
56
- */
57
- export type TransactionState = 'ACTIVE' | 'COMMITTED' | 'ROLLED_BACK';
58
- /**
59
- * A single entry in the Write-Ahead Log.
60
- *
61
- * @description
62
- * Represents one logged operation with its metadata.
63
- * Entries are ordered by ID for replay during recovery.
64
- *
65
- * @example
66
- * ```typescript
67
- * const entry: WALEntry = {
68
- * id: 42,
69
- * operation: 'PUT',
70
- * payload: new Uint8Array([...]),
71
- * transactionId: 'tx-abc123',
72
- * createdAt: 1704067200000,
73
- * flushed: false
74
- * }
75
- * ```
76
- */
77
- export interface WALEntry {
78
- /** Unique sequential ID for ordering */
79
- id: number;
80
- /** Type of operation logged */
81
- operation: WALOperationType;
82
- /** Binary payload containing operation details */
83
- payload: Uint8Array;
84
- /** Transaction ID if part of a transaction, null otherwise */
85
- transactionId: string | null;
86
- /** Unix timestamp (milliseconds) when entry was created */
87
- createdAt: number;
88
- /** Whether this entry has been flushed (persisted durably) */
89
- flushed: boolean;
90
- }
91
- /**
92
- * Transaction metadata tracking state and operations.
93
- *
94
- * @description
95
- * Tracks the state of a transaction and all operations performed within it.
96
- * Used for commit/rollback logic and recovery.
97
- *
98
- * @example
99
- * ```typescript
100
- * const tx: Transaction = {
101
- * id: 'tx-abc123',
102
- * state: 'ACTIVE',
103
- * startedAt: 1704067200000,
104
- * operations: [42, 43, 44] // WAL entry IDs
105
- * }
106
- * ```
107
- */
108
- export interface Transaction {
109
- /** Unique transaction identifier */
110
- id: string;
111
- /** Current state of the transaction */
112
- state: TransactionState;
113
- /** Unix timestamp (milliseconds) when transaction started */
114
- startedAt: number;
115
- /** Array of WAL entry IDs belonging to this transaction */
116
- operations: number[];
117
- }
118
- /**
119
- * A checkpoint representing a consistent point in the WAL.
120
- *
121
- * @description
122
- * Checkpoints mark points where all prior operations have been
123
- * successfully applied. They enable efficient recovery by allowing
124
- * truncation of old WAL entries.
125
- *
126
- * @example
127
- * ```typescript
128
- * const checkpoint: Checkpoint = {
129
- * id: 5,
130
- * walPosition: 150, // All entries up to 150 are committed
131
- * createdAt: 1704067200000,
132
- * metadata: 'Daily checkpoint'
133
- * }
134
- * ```
135
- */
136
- export interface Checkpoint {
137
- /** Unique checkpoint ID */
138
- id: number;
139
- /** WAL position (entry ID) at checkpoint creation */
140
- walPosition: number;
141
- /** Unix timestamp (milliseconds) when checkpoint was created */
142
- createdAt: number;
143
- /** Optional descriptive metadata */
144
- metadata: string | null;
145
- }
146
- /**
147
- * Write-Ahead Log Manager for transaction durability.
148
- *
149
- * @description
150
- * Provides durability guarantees by logging all operations before they are applied.
151
- * Supports transactions with begin/commit/rollback semantics and checkpoint management.
152
- *
153
- * **Usage Pattern**:
154
- * 1. Log operations using `append()` before applying them
155
- * 2. Use transactions for atomic multi-operation changes
156
- * 3. Create checkpoints periodically for efficient recovery
157
- * 4. Truncate WAL after successful checkpoints
158
- *
159
- * @example
160
- * ```typescript
161
- * const wal = new WALManager(storage)
162
- *
163
- * // Single operation
164
- * const payload = new TextEncoder().encode(JSON.stringify({ sha: 'abc123' }))
165
- * const id = await wal.append('PUT', payload)
166
- *
167
- * // Transaction
168
- * const txId = await wal.beginTransaction()
169
- * try {
170
- * await wal.append('PUT', payload1, txId)
171
- * await wal.append('PUT', payload2, txId)
172
- * await wal.commitTransaction(txId)
173
- * } catch (e) {
174
- * await wal.rollbackTransaction(txId)
175
- * throw e
176
- * }
177
- *
178
- * // Checkpoint and cleanup
179
- * const checkpoint = await wal.createCheckpoint()
180
- * await wal.truncateBeforeCheckpoint(checkpoint)
181
- * ```
182
- */
183
- export declare class WALManager {
184
- /** Durable Object storage interface */
185
- private storage;
186
- /** In-memory transaction tracking */
187
- private transactions;
188
- /** Current WAL position for entry ID assignment */
189
- private currentWalPosition;
190
- /**
191
- * Create a new WALManager.
192
- *
193
- * @param storage - Durable Object storage interface with SQL support
194
- */
195
- constructor(storage: DurableObjectStorage);
196
- /**
197
- * Append an operation to the WAL.
198
- *
199
- * @description
200
- * Logs an operation to the WAL before it is applied. Operations can
201
- * optionally be associated with a transaction for atomic commit/rollback.
202
- *
203
- * @param operation - The type of operation being logged
204
- * @param payload - Binary data describing the operation (usually JSON-encoded)
205
- * @param transactionId - Optional transaction ID to associate with this operation
206
- * @returns The ID of the appended WAL entry
207
- *
208
- * @example
209
- * ```typescript
210
- * // Simple append
211
- * const payload = new TextEncoder().encode(JSON.stringify({
212
- * sha: 'abc123',
213
- * type: 'blob',
214
- * timestamp: Date.now()
215
- * }))
216
- * const entryId = await wal.append('PUT', payload)
217
- *
218
- * // Append within transaction
219
- * const txId = await wal.beginTransaction()
220
- * await wal.append('PUT', payload, txId)
221
- * ```
222
- */
223
- append(operation: WALOperationType, payload: Uint8Array, transactionId?: string): Promise<number>;
224
- /**
225
- * Flush all unflushed WAL entries.
226
- *
227
- * @description
228
- * Marks all unflushed entries as flushed, indicating they have been
229
- * durably persisted. This is typically called before creating a checkpoint.
230
- *
231
- * @returns The number of entries that were flushed
232
- *
233
- * @example
234
- * ```typescript
235
- * const count = await wal.flush()
236
- * console.log(`Flushed ${count} entries`)
237
- * ```
238
- */
239
- flush(): Promise<number>;
240
- /**
241
- * Recover unflushed WAL entries for replay.
242
- *
243
- * @description
244
- * Returns all unflushed WAL entries in order for replay during
245
- * crash recovery. Entries should be replayed in order by ID.
246
- *
247
- * @returns Array of unflushed WAL entries sorted by ID
248
- *
249
- * @example
250
- * ```typescript
251
- * const entries = await wal.recover()
252
- * for (const entry of entries) {
253
- * console.log(`Replaying ${entry.operation} ${entry.id}`)
254
- * // Apply the operation...
255
- * }
256
- * ```
257
- */
258
- recover(): Promise<WALEntry[]>;
259
- /**
260
- * Begin a new transaction.
261
- *
262
- * @description
263
- * Starts a new transaction and returns its ID. Operations appended
264
- * with this transaction ID will be atomically committed or rolled back.
265
- *
266
- * @returns The unique transaction ID
267
- *
268
- * @example
269
- * ```typescript
270
- * const txId = await wal.beginTransaction()
271
- * try {
272
- * await wal.append('PUT', payload1, txId)
273
- * await wal.append('DELETE', payload2, txId)
274
- * await wal.commitTransaction(txId)
275
- * } catch (e) {
276
- * await wal.rollbackTransaction(txId)
277
- * }
278
- * ```
279
- */
280
- beginTransaction(): Promise<string>;
281
- /**
282
- * Commit a transaction.
283
- *
284
- * @description
285
- * Commits all operations in the transaction, making them permanent.
286
- * After commit, the transaction cannot be rolled back.
287
- *
288
- * @param transactionId - The transaction ID to commit
289
- * @throws Error if transaction not found or not active
290
- *
291
- * @example
292
- * ```typescript
293
- * const txId = await wal.beginTransaction()
294
- * await wal.append('PUT', payload, txId)
295
- * await wal.commitTransaction(txId)
296
- * // Transaction is now committed
297
- * ```
298
- */
299
- commitTransaction(transactionId: string): Promise<void>;
300
- /**
301
- * Rollback a transaction.
302
- *
303
- * @description
304
- * Rolls back all operations in the transaction, undoing their effects.
305
- * After rollback, the transaction is marked as rolled back.
306
- *
307
- * @param transactionId - The transaction ID to rollback
308
- * @throws Error if transaction not found or not active
309
- *
310
- * @example
311
- * ```typescript
312
- * const txId = await wal.beginTransaction()
313
- * try {
314
- * await wal.append('PUT', payload, txId)
315
- * throw new Error('Something went wrong')
316
- * } catch (e) {
317
- * await wal.rollbackTransaction(txId)
318
- * // All operations in transaction are undone
319
- * }
320
- * ```
321
- */
322
- rollbackTransaction(transactionId: string): Promise<void>;
323
- /**
324
- * Get the state of a transaction.
325
- *
326
- * @description
327
- * Returns the current state of a transaction, checking both in-memory
328
- * cache and persistent storage.
329
- *
330
- * @param transactionId - The transaction ID to check
331
- * @returns Transaction state or null if not found
332
- *
333
- * @example
334
- * ```typescript
335
- * const state = await wal.getTransactionState(txId)
336
- * if (state === 'COMMITTED') {
337
- * console.log('Transaction was committed')
338
- * }
339
- * ```
340
- */
341
- getTransactionState(transactionId: string): Promise<TransactionState | null>;
342
- /**
343
- * Create a checkpoint at the current WAL position.
344
- *
345
- * @description
346
- * Creates a checkpoint marking a consistent point where all prior
347
- * operations have been successfully applied. Flushes pending entries first.
348
- *
349
- * @param metadata - Optional descriptive metadata for the checkpoint
350
- * @returns The created checkpoint
351
- *
352
- * @example
353
- * ```typescript
354
- * // Create checkpoint after batch of operations
355
- * const checkpoint = await wal.createCheckpoint('Post-push checkpoint')
356
- * console.log(`Checkpoint at position ${checkpoint.walPosition}`)
357
- * ```
358
- */
359
- createCheckpoint(metadata?: string): Promise<Checkpoint>;
360
- /**
361
- * Get the most recent checkpoint.
362
- *
363
- * @description
364
- * Returns the last checkpoint created, or null if none exist.
365
- * Useful for determining where to start recovery.
366
- *
367
- * @returns The last checkpoint or null
368
- *
369
- * @example
370
- * ```typescript
371
- * const lastCheckpoint = await wal.getLastCheckpoint()
372
- * if (lastCheckpoint) {
373
- * console.log(`Last checkpoint at position ${lastCheckpoint.walPosition}`)
374
- * }
375
- * ```
376
- */
377
- getLastCheckpoint(): Promise<Checkpoint | null>;
378
- /**
379
- * Truncate WAL entries before a checkpoint.
380
- *
381
- * @description
382
- * Removes all WAL entries before (and including) the checkpoint position
383
- * that have been flushed. This reclaims space after a successful checkpoint.
384
- *
385
- * **Note**: Only truncates flushed entries to avoid data loss.
386
- *
387
- * @param checkpoint - The checkpoint to truncate before
388
- *
389
- * @example
390
- * ```typescript
391
- * const checkpoint = await wal.createCheckpoint()
392
- * // After verifying all operations are applied...
393
- * await wal.truncateBeforeCheckpoint(checkpoint)
394
- * ```
395
- */
396
- truncateBeforeCheckpoint(checkpoint: Checkpoint): Promise<void>;
397
- /**
398
- * Get the count of unflushed WAL entries.
399
- *
400
- * @description
401
- * Returns the number of WAL entries that have not yet been flushed.
402
- * Useful for monitoring WAL growth and deciding when to flush.
403
- *
404
- * @returns Number of unflushed entries
405
- *
406
- * @example
407
- * ```typescript
408
- * const count = await wal.getUnflushedCount()
409
- * if (count > 1000) {
410
- * await wal.flush()
411
- * }
412
- * ```
413
- */
414
- getUnflushedCount(): Promise<number>;
415
- }
416
- //# sourceMappingURL=wal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"wal.d.ts","sourceRoot":"","sources":["../../src/durable-object/wal.ts"],"names":[],"mappings":"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"}