gitx.do 0.1.1 → 0.1.2

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 (356) 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 +14 -469
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +31 -483
  17. package/dist/index.js.map +1 -1
  18. package/package.json +13 -21
  19. package/dist/cli/commands/add.d.ts +0 -176
  20. package/dist/cli/commands/add.d.ts.map +0 -1
  21. package/dist/cli/commands/add.js +0 -979
  22. package/dist/cli/commands/add.js.map +0 -1
  23. package/dist/cli/commands/blame.d.ts +0 -259
  24. package/dist/cli/commands/blame.d.ts.map +0 -1
  25. package/dist/cli/commands/blame.js +0 -609
  26. package/dist/cli/commands/blame.js.map +0 -1
  27. package/dist/cli/commands/branch.d.ts +0 -249
  28. package/dist/cli/commands/branch.d.ts.map +0 -1
  29. package/dist/cli/commands/branch.js +0 -693
  30. package/dist/cli/commands/branch.js.map +0 -1
  31. package/dist/cli/commands/checkout.d.ts +0 -73
  32. package/dist/cli/commands/checkout.d.ts.map +0 -1
  33. package/dist/cli/commands/checkout.js +0 -725
  34. package/dist/cli/commands/checkout.js.map +0 -1
  35. package/dist/cli/commands/commit.d.ts +0 -182
  36. package/dist/cli/commands/commit.d.ts.map +0 -1
  37. package/dist/cli/commands/commit.js +0 -457
  38. package/dist/cli/commands/commit.js.map +0 -1
  39. package/dist/cli/commands/diff.d.ts +0 -464
  40. package/dist/cli/commands/diff.d.ts.map +0 -1
  41. package/dist/cli/commands/diff.js +0 -959
  42. package/dist/cli/commands/diff.js.map +0 -1
  43. package/dist/cli/commands/log.d.ts +0 -239
  44. package/dist/cli/commands/log.d.ts.map +0 -1
  45. package/dist/cli/commands/log.js +0 -535
  46. package/dist/cli/commands/log.js.map +0 -1
  47. package/dist/cli/commands/merge.d.ts +0 -106
  48. package/dist/cli/commands/merge.d.ts.map +0 -1
  49. package/dist/cli/commands/merge.js +0 -852
  50. package/dist/cli/commands/merge.js.map +0 -1
  51. package/dist/cli/commands/review.d.ts +0 -457
  52. package/dist/cli/commands/review.d.ts.map +0 -1
  53. package/dist/cli/commands/review.js +0 -558
  54. package/dist/cli/commands/review.js.map +0 -1
  55. package/dist/cli/commands/stash.d.ts +0 -157
  56. package/dist/cli/commands/stash.d.ts.map +0 -1
  57. package/dist/cli/commands/stash.js +0 -655
  58. package/dist/cli/commands/stash.js.map +0 -1
  59. package/dist/cli/commands/status.d.ts +0 -269
  60. package/dist/cli/commands/status.d.ts.map +0 -1
  61. package/dist/cli/commands/status.js +0 -492
  62. package/dist/cli/commands/status.js.map +0 -1
  63. package/dist/cli/commands/web.d.ts +0 -199
  64. package/dist/cli/commands/web.d.ts.map +0 -1
  65. package/dist/cli/commands/web.js +0 -697
  66. package/dist/cli/commands/web.js.map +0 -1
  67. package/dist/cli/fs-adapter.d.ts +0 -656
  68. package/dist/cli/fs-adapter.d.ts.map +0 -1
  69. package/dist/cli/fs-adapter.js +0 -1177
  70. package/dist/cli/fs-adapter.js.map +0 -1
  71. package/dist/cli/fsx-cli-adapter.d.ts +0 -359
  72. package/dist/cli/fsx-cli-adapter.d.ts.map +0 -1
  73. package/dist/cli/fsx-cli-adapter.js +0 -619
  74. package/dist/cli/fsx-cli-adapter.js.map +0 -1
  75. package/dist/cli/index.d.ts +0 -387
  76. package/dist/cli/index.d.ts.map +0 -1
  77. package/dist/cli/index.js +0 -579
  78. package/dist/cli/index.js.map +0 -1
  79. package/dist/cli/ui/components/DiffView.d.ts +0 -12
  80. package/dist/cli/ui/components/DiffView.d.ts.map +0 -1
  81. package/dist/cli/ui/components/DiffView.js +0 -11
  82. package/dist/cli/ui/components/DiffView.js.map +0 -1
  83. package/dist/cli/ui/components/ErrorDisplay.d.ts +0 -10
  84. package/dist/cli/ui/components/ErrorDisplay.d.ts.map +0 -1
  85. package/dist/cli/ui/components/ErrorDisplay.js +0 -11
  86. package/dist/cli/ui/components/ErrorDisplay.js.map +0 -1
  87. package/dist/cli/ui/components/FuzzySearch.d.ts +0 -15
  88. package/dist/cli/ui/components/FuzzySearch.d.ts.map +0 -1
  89. package/dist/cli/ui/components/FuzzySearch.js +0 -12
  90. package/dist/cli/ui/components/FuzzySearch.js.map +0 -1
  91. package/dist/cli/ui/components/LoadingSpinner.d.ts +0 -10
  92. package/dist/cli/ui/components/LoadingSpinner.d.ts.map +0 -1
  93. package/dist/cli/ui/components/LoadingSpinner.js +0 -10
  94. package/dist/cli/ui/components/LoadingSpinner.js.map +0 -1
  95. package/dist/cli/ui/components/NavigationList.d.ts +0 -14
  96. package/dist/cli/ui/components/NavigationList.d.ts.map +0 -1
  97. package/dist/cli/ui/components/NavigationList.js +0 -11
  98. package/dist/cli/ui/components/NavigationList.js.map +0 -1
  99. package/dist/cli/ui/components/ScrollableContent.d.ts +0 -13
  100. package/dist/cli/ui/components/ScrollableContent.d.ts.map +0 -1
  101. package/dist/cli/ui/components/ScrollableContent.js +0 -11
  102. package/dist/cli/ui/components/ScrollableContent.js.map +0 -1
  103. package/dist/cli/ui/components/index.d.ts +0 -7
  104. package/dist/cli/ui/components/index.d.ts.map +0 -1
  105. package/dist/cli/ui/components/index.js +0 -9
  106. package/dist/cli/ui/components/index.js.map +0 -1
  107. package/dist/cli/ui/terminal-ui.d.ts +0 -85
  108. package/dist/cli/ui/terminal-ui.d.ts.map +0 -1
  109. package/dist/cli/ui/terminal-ui.js +0 -121
  110. package/dist/cli/ui/terminal-ui.js.map +0 -1
  111. package/dist/do/BashModule.d.ts +0 -871
  112. package/dist/do/BashModule.d.ts.map +0 -1
  113. package/dist/do/BashModule.js +0 -1143
  114. package/dist/do/BashModule.js.map +0 -1
  115. package/dist/do/FsModule.d.ts +0 -612
  116. package/dist/do/FsModule.d.ts.map +0 -1
  117. package/dist/do/FsModule.js +0 -1120
  118. package/dist/do/FsModule.js.map +0 -1
  119. package/dist/do/GitModule.d.ts +0 -635
  120. package/dist/do/GitModule.d.ts.map +0 -1
  121. package/dist/do/GitModule.js +0 -784
  122. package/dist/do/GitModule.js.map +0 -1
  123. package/dist/do/GitRepoDO.d.ts +0 -281
  124. package/dist/do/GitRepoDO.d.ts.map +0 -1
  125. package/dist/do/GitRepoDO.js +0 -479
  126. package/dist/do/GitRepoDO.js.map +0 -1
  127. package/dist/do/bash-ast.d.ts +0 -246
  128. package/dist/do/bash-ast.d.ts.map +0 -1
  129. package/dist/do/bash-ast.js +0 -888
  130. package/dist/do/bash-ast.js.map +0 -1
  131. package/dist/do/container-executor.d.ts +0 -491
  132. package/dist/do/container-executor.d.ts.map +0 -1
  133. package/dist/do/container-executor.js +0 -731
  134. package/dist/do/container-executor.js.map +0 -1
  135. package/dist/do/index.d.ts +0 -53
  136. package/dist/do/index.d.ts.map +0 -1
  137. package/dist/do/index.js +0 -91
  138. package/dist/do/index.js.map +0 -1
  139. package/dist/do/tiered-storage.d.ts +0 -403
  140. package/dist/do/tiered-storage.d.ts.map +0 -1
  141. package/dist/do/tiered-storage.js +0 -689
  142. package/dist/do/tiered-storage.js.map +0 -1
  143. package/dist/do/withBash.d.ts +0 -231
  144. package/dist/do/withBash.d.ts.map +0 -1
  145. package/dist/do/withBash.js +0 -244
  146. package/dist/do/withBash.js.map +0 -1
  147. package/dist/do/withFs.d.ts +0 -237
  148. package/dist/do/withFs.d.ts.map +0 -1
  149. package/dist/do/withFs.js +0 -387
  150. package/dist/do/withFs.js.map +0 -1
  151. package/dist/do/withGit.d.ts +0 -180
  152. package/dist/do/withGit.d.ts.map +0 -1
  153. package/dist/do/withGit.js +0 -271
  154. package/dist/do/withGit.js.map +0 -1
  155. package/dist/durable-object/object-store.d.ts +0 -633
  156. package/dist/durable-object/object-store.d.ts.map +0 -1
  157. package/dist/durable-object/object-store.js +0 -1164
  158. package/dist/durable-object/object-store.js.map +0 -1
  159. package/dist/durable-object/schema.d.ts.map +0 -1
  160. package/dist/durable-object/schema.js.map +0 -1
  161. package/dist/durable-object/wal.d.ts +0 -416
  162. package/dist/durable-object/wal.d.ts.map +0 -1
  163. package/dist/durable-object/wal.js +0 -445
  164. package/dist/durable-object/wal.js.map +0 -1
  165. package/dist/mcp/adapter.d.ts +0 -772
  166. package/dist/mcp/adapter.d.ts.map +0 -1
  167. package/dist/mcp/adapter.js +0 -895
  168. package/dist/mcp/adapter.js.map +0 -1
  169. package/dist/mcp/sandbox/miniflare-evaluator.d.ts +0 -22
  170. package/dist/mcp/sandbox/miniflare-evaluator.d.ts.map +0 -1
  171. package/dist/mcp/sandbox/miniflare-evaluator.js +0 -140
  172. package/dist/mcp/sandbox/miniflare-evaluator.js.map +0 -1
  173. package/dist/mcp/sandbox/object-store-proxy.d.ts +0 -32
  174. package/dist/mcp/sandbox/object-store-proxy.d.ts.map +0 -1
  175. package/dist/mcp/sandbox/object-store-proxy.js +0 -30
  176. package/dist/mcp/sandbox/object-store-proxy.js.map +0 -1
  177. package/dist/mcp/sandbox/template.d.ts +0 -17
  178. package/dist/mcp/sandbox/template.d.ts.map +0 -1
  179. package/dist/mcp/sandbox/template.js +0 -71
  180. package/dist/mcp/sandbox/template.js.map +0 -1
  181. package/dist/mcp/sandbox.d.ts +0 -764
  182. package/dist/mcp/sandbox.d.ts.map +0 -1
  183. package/dist/mcp/sandbox.js +0 -1362
  184. package/dist/mcp/sandbox.js.map +0 -1
  185. package/dist/mcp/sdk-adapter.d.ts +0 -835
  186. package/dist/mcp/sdk-adapter.d.ts.map +0 -1
  187. package/dist/mcp/sdk-adapter.js +0 -974
  188. package/dist/mcp/sdk-adapter.js.map +0 -1
  189. package/dist/mcp/tools/do.d.ts +0 -32
  190. package/dist/mcp/tools/do.d.ts.map +0 -1
  191. package/dist/mcp/tools/do.js +0 -117
  192. package/dist/mcp/tools/do.js.map +0 -1
  193. package/dist/mcp/tools.d.ts +0 -548
  194. package/dist/mcp/tools.d.ts.map +0 -1
  195. package/dist/mcp/tools.js +0 -3170
  196. package/dist/mcp/tools.js.map +0 -1
  197. package/dist/ops/blame.d.ts +0 -551
  198. package/dist/ops/blame.d.ts.map +0 -1
  199. package/dist/ops/blame.js +0 -1037
  200. package/dist/ops/blame.js.map +0 -1
  201. package/dist/ops/branch.d.ts +0 -766
  202. package/dist/ops/branch.d.ts.map +0 -1
  203. package/dist/ops/branch.js +0 -950
  204. package/dist/ops/branch.js.map +0 -1
  205. package/dist/ops/commit-traversal.d.ts +0 -349
  206. package/dist/ops/commit-traversal.d.ts.map +0 -1
  207. package/dist/ops/commit-traversal.js +0 -821
  208. package/dist/ops/commit-traversal.js.map +0 -1
  209. package/dist/ops/commit.d.ts +0 -555
  210. package/dist/ops/commit.d.ts.map +0 -1
  211. package/dist/ops/commit.js +0 -826
  212. package/dist/ops/commit.js.map +0 -1
  213. package/dist/ops/merge-base.d.ts +0 -397
  214. package/dist/ops/merge-base.d.ts.map +0 -1
  215. package/dist/ops/merge-base.js +0 -691
  216. package/dist/ops/merge-base.js.map +0 -1
  217. package/dist/ops/merge.d.ts +0 -855
  218. package/dist/ops/merge.d.ts.map +0 -1
  219. package/dist/ops/merge.js +0 -1551
  220. package/dist/ops/merge.js.map +0 -1
  221. package/dist/ops/tag.d.ts +0 -247
  222. package/dist/ops/tag.d.ts.map +0 -1
  223. package/dist/ops/tag.js +0 -649
  224. package/dist/ops/tag.js.map +0 -1
  225. package/dist/ops/tree-builder.d.ts +0 -178
  226. package/dist/ops/tree-builder.d.ts.map +0 -1
  227. package/dist/ops/tree-builder.js +0 -271
  228. package/dist/ops/tree-builder.js.map +0 -1
  229. package/dist/ops/tree-diff.d.ts +0 -291
  230. package/dist/ops/tree-diff.d.ts.map +0 -1
  231. package/dist/ops/tree-diff.js +0 -705
  232. package/dist/ops/tree-diff.js.map +0 -1
  233. package/dist/pack/delta.d.ts +0 -248
  234. package/dist/pack/delta.d.ts.map +0 -1
  235. package/dist/pack/delta.js +0 -740
  236. package/dist/pack/delta.js.map +0 -1
  237. package/dist/pack/format.d.ts +0 -446
  238. package/dist/pack/format.d.ts.map +0 -1
  239. package/dist/pack/format.js +0 -572
  240. package/dist/pack/format.js.map +0 -1
  241. package/dist/pack/full-generation.d.ts +0 -612
  242. package/dist/pack/full-generation.d.ts.map +0 -1
  243. package/dist/pack/full-generation.js +0 -1378
  244. package/dist/pack/full-generation.js.map +0 -1
  245. package/dist/pack/generation.d.ts +0 -441
  246. package/dist/pack/generation.d.ts.map +0 -1
  247. package/dist/pack/generation.js +0 -707
  248. package/dist/pack/generation.js.map +0 -1
  249. package/dist/pack/index.d.ts +0 -502
  250. package/dist/pack/index.d.ts.map +0 -1
  251. package/dist/pack/index.js +0 -833
  252. package/dist/pack/index.js.map +0 -1
  253. package/dist/refs/branch.d.ts +0 -683
  254. package/dist/refs/branch.d.ts.map +0 -1
  255. package/dist/refs/branch.js +0 -881
  256. package/dist/refs/branch.js.map +0 -1
  257. package/dist/refs/storage.d.ts +0 -833
  258. package/dist/refs/storage.d.ts.map +0 -1
  259. package/dist/refs/storage.js +0 -1023
  260. package/dist/refs/storage.js.map +0 -1
  261. package/dist/refs/tag.d.ts +0 -860
  262. package/dist/refs/tag.d.ts.map +0 -1
  263. package/dist/refs/tag.js +0 -996
  264. package/dist/refs/tag.js.map +0 -1
  265. package/dist/storage/backend.d.ts +0 -425
  266. package/dist/storage/backend.d.ts.map +0 -1
  267. package/dist/storage/backend.js +0 -41
  268. package/dist/storage/backend.js.map +0 -1
  269. package/dist/storage/fsx-adapter.d.ts +0 -204
  270. package/dist/storage/fsx-adapter.d.ts.map +0 -1
  271. package/dist/storage/fsx-adapter.js +0 -518
  272. package/dist/storage/fsx-adapter.js.map +0 -1
  273. package/dist/storage/lru-cache.d.ts +0 -691
  274. package/dist/storage/lru-cache.d.ts.map +0 -1
  275. package/dist/storage/lru-cache.js +0 -813
  276. package/dist/storage/lru-cache.js.map +0 -1
  277. package/dist/storage/object-index.d.ts +0 -585
  278. package/dist/storage/object-index.d.ts.map +0 -1
  279. package/dist/storage/object-index.js +0 -532
  280. package/dist/storage/object-index.js.map +0 -1
  281. package/dist/storage/r2-pack.d.ts +0 -1257
  282. package/dist/storage/r2-pack.d.ts.map +0 -1
  283. package/dist/storage/r2-pack.js +0 -1773
  284. package/dist/storage/r2-pack.js.map +0 -1
  285. package/dist/tiered/cdc-pipeline.d.ts +0 -1888
  286. package/dist/tiered/cdc-pipeline.d.ts.map +0 -1
  287. package/dist/tiered/cdc-pipeline.js +0 -1880
  288. package/dist/tiered/cdc-pipeline.js.map +0 -1
  289. package/dist/tiered/migration.d.ts +0 -1104
  290. package/dist/tiered/migration.d.ts.map +0 -1
  291. package/dist/tiered/migration.js +0 -1217
  292. package/dist/tiered/migration.js.map +0 -1
  293. package/dist/tiered/parquet-writer.d.ts +0 -1145
  294. package/dist/tiered/parquet-writer.d.ts.map +0 -1
  295. package/dist/tiered/parquet-writer.js +0 -1183
  296. package/dist/tiered/parquet-writer.js.map +0 -1
  297. package/dist/tiered/read-path.d.ts +0 -835
  298. package/dist/tiered/read-path.d.ts.map +0 -1
  299. package/dist/tiered/read-path.js +0 -487
  300. package/dist/tiered/read-path.js.map +0 -1
  301. package/dist/types/capability.d.ts +0 -1385
  302. package/dist/types/capability.d.ts.map +0 -1
  303. package/dist/types/capability.js +0 -36
  304. package/dist/types/capability.js.map +0 -1
  305. package/dist/types/index.d.ts +0 -13
  306. package/dist/types/index.d.ts.map +0 -1
  307. package/dist/types/index.js +0 -18
  308. package/dist/types/index.js.map +0 -1
  309. package/dist/types/interfaces.d.ts +0 -673
  310. package/dist/types/interfaces.d.ts.map +0 -1
  311. package/dist/types/interfaces.js +0 -26
  312. package/dist/types/interfaces.js.map +0 -1
  313. package/dist/types/objects.d.ts +0 -692
  314. package/dist/types/objects.d.ts.map +0 -1
  315. package/dist/types/objects.js +0 -837
  316. package/dist/types/objects.js.map +0 -1
  317. package/dist/types/storage.d.ts +0 -603
  318. package/dist/types/storage.d.ts.map +0 -1
  319. package/dist/types/storage.js +0 -191
  320. package/dist/types/storage.js.map +0 -1
  321. package/dist/types/worker-loader.d.ts +0 -60
  322. package/dist/types/worker-loader.d.ts.map +0 -1
  323. package/dist/types/worker-loader.js +0 -62
  324. package/dist/types/worker-loader.js.map +0 -1
  325. package/dist/utils/hash.d.ts +0 -198
  326. package/dist/utils/hash.d.ts.map +0 -1
  327. package/dist/utils/hash.js +0 -272
  328. package/dist/utils/hash.js.map +0 -1
  329. package/dist/utils/sha1.d.ts +0 -325
  330. package/dist/utils/sha1.d.ts.map +0 -1
  331. package/dist/utils/sha1.js +0 -635
  332. package/dist/utils/sha1.js.map +0 -1
  333. package/dist/wire/capabilities.d.ts +0 -1044
  334. package/dist/wire/capabilities.d.ts.map +0 -1
  335. package/dist/wire/capabilities.js +0 -941
  336. package/dist/wire/capabilities.js.map +0 -1
  337. package/dist/wire/path-security.d.ts +0 -157
  338. package/dist/wire/path-security.d.ts.map +0 -1
  339. package/dist/wire/path-security.js +0 -307
  340. package/dist/wire/path-security.js.map +0 -1
  341. package/dist/wire/pkt-line.d.ts +0 -345
  342. package/dist/wire/pkt-line.d.ts.map +0 -1
  343. package/dist/wire/pkt-line.js +0 -381
  344. package/dist/wire/pkt-line.js.map +0 -1
  345. package/dist/wire/receive-pack.d.ts +0 -1059
  346. package/dist/wire/receive-pack.d.ts.map +0 -1
  347. package/dist/wire/receive-pack.js +0 -1414
  348. package/dist/wire/receive-pack.js.map +0 -1
  349. package/dist/wire/smart-http.d.ts +0 -799
  350. package/dist/wire/smart-http.d.ts.map +0 -1
  351. package/dist/wire/smart-http.js +0 -945
  352. package/dist/wire/smart-http.js.map +0 -1
  353. package/dist/wire/upload-pack.d.ts +0 -727
  354. package/dist/wire/upload-pack.d.ts.map +0 -1
  355. package/dist/wire/upload-pack.js +0 -1141
  356. package/dist/wire/upload-pack.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"tag.js","sourceRoot":"","sources":["../../src/refs/tag.ts"],"names":[],"mappings":"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"}
@@ -1,425 +0,0 @@
1
- /**
2
- * @fileoverview Storage Backend Interface for Git Operations
3
- *
4
- * This module defines the `StorageBackend` interface that abstracts over different
5
- * storage implementations. It provides a unified API for:
6
- * - Content-addressable storage (CAS) for Git objects (blobs, trees, commits, tags)
7
- * - Reference management (branches, tags, HEAD)
8
- * - Raw file operations (for index, config, and other Git files)
9
- * - Directory operations
10
- *
11
- * **Implementations**:
12
- * - `FSStorageBackend` - Uses Node.js `fs/promises` for CLI usage
13
- * - `DOStorageBackend` - Uses SQLite in Durable Objects for cloud deployment
14
- *
15
- * @module storage/backend
16
- *
17
- * @example
18
- * ```typescript
19
- * import { StorageBackend } from './storage/backend'
20
- *
21
- * async function createCommit(backend: StorageBackend) {
22
- * // Store a blob
23
- * const blobSha = await backend.putObject('blob', content)
24
- *
25
- * // Store a tree referencing the blob
26
- * const treeSha = await backend.putObject('tree', treeContent)
27
- *
28
- * // Store the commit
29
- * const commitSha = await backend.putObject('commit', commitContent)
30
- *
31
- * // Update the branch ref
32
- * await backend.setRef('refs/heads/main', {
33
- * name: 'refs/heads/main',
34
- * target: commitSha,
35
- * type: 'direct'
36
- * })
37
- * }
38
- * ```
39
- */
40
- import type { ObjectType } from '../types/objects';
41
- import type { Ref } from '../refs/storage';
42
- export type { ObjectType };
43
- /**
44
- * The four Git object types.
45
- *
46
- * @description
47
- * - `blob`: Raw file content
48
- * - `tree`: Directory listing (contains references to blobs and other trees)
49
- * - `commit`: A snapshot pointing to a tree with metadata (author, message, parents)
50
- * - `tag`: An annotated tag pointing to another object with metadata
51
- */
52
- export type ObjectTypeValue = 'blob' | 'tree' | 'commit' | 'tag';
53
- /**
54
- * Result of retrieving a Git object from storage.
55
- *
56
- * @description
57
- * Contains the object type and raw binary content (without Git header).
58
- * The content is the object data only - the header is reconstructed when needed.
59
- */
60
- export interface StoredObjectResult {
61
- /** The type of Git object */
62
- type: ObjectType;
63
- /** Raw binary content of the object (excluding Git header) */
64
- content: Uint8Array;
65
- }
66
- /**
67
- * Storage backend interface for Git operations.
68
- *
69
- * @description
70
- * This interface abstracts over different storage implementations to provide
71
- * a unified API for Git operations. Implementations must handle:
72
- *
73
- * 1. **Content-Addressable Storage (CAS)**: Objects are stored by their SHA-1 hash.
74
- * The hash is computed from the Git object format: "{type} {size}\0{content}".
75
- * Implementations should compute and verify hashes.
76
- *
77
- * 2. **Reference Storage**: Refs can be direct (pointing to a SHA) or symbolic
78
- * (pointing to another ref). Implementations must handle both.
79
- *
80
- * 3. **Raw File Operations**: For Git files that aren't objects (index, config, etc.),
81
- * standard file operations are needed.
82
- *
83
- * 4. **Directory Operations**: For managing the repository structure.
84
- *
85
- * @example
86
- * ```typescript
87
- * // Using the backend for basic operations
88
- * const backend: StorageBackend = createBackend()
89
- *
90
- * // Store an object
91
- * const content = new TextEncoder().encode('Hello, World!')
92
- * const sha = await backend.putObject('blob', content)
93
- *
94
- * // Retrieve it
95
- * const obj = await backend.getObject(sha)
96
- * if (obj) {
97
- * console.log(`Type: ${obj.type}, Size: ${obj.content.length}`)
98
- * }
99
- *
100
- * // Work with refs
101
- * const head = await backend.getRef('HEAD')
102
- * if (head?.type === 'symbolic') {
103
- * console.log(`On branch: ${head.target}`)
104
- * }
105
- * ```
106
- */
107
- export interface StorageBackend {
108
- /**
109
- * Store a Git object and return its SHA-1 hash.
110
- *
111
- * @description
112
- * Computes the SHA-1 hash of the object in Git format (type + size + content),
113
- * stores the object, and returns the hash. If an object with the same SHA
114
- * already exists, this operation is idempotent (no error, returns same SHA).
115
- *
116
- * The SHA is computed from: "{type} {size}\0{content}"
117
- *
118
- * @param type - Object type: 'blob', 'tree', 'commit', or 'tag'
119
- * @param content - Raw object content (without Git header)
120
- * @returns 40-character lowercase hexadecimal SHA-1 hash
121
- *
122
- * @example
123
- * ```typescript
124
- * // Store a blob
125
- * const content = new TextEncoder().encode('file content')
126
- * const sha = await backend.putObject('blob', content)
127
- * console.log(`Stored as: ${sha}`)
128
- *
129
- * // Store a tree (content must be properly formatted)
130
- * const treeSha = await backend.putObject('tree', treeContent)
131
- * ```
132
- */
133
- putObject(type: ObjectType, content: Uint8Array): Promise<string>;
134
- /**
135
- * Retrieve a Git object by its SHA-1 hash.
136
- *
137
- * @description
138
- * Fetches an object from storage and returns its type and content.
139
- * Returns null if the object doesn't exist. The content returned is
140
- * the raw object data WITHOUT the Git header.
141
- *
142
- * @param sha - 40-character SHA-1 hash (case-insensitive)
143
- * @returns Object with type and content, or null if not found
144
- *
145
- * @example
146
- * ```typescript
147
- * const obj = await backend.getObject(sha)
148
- * if (obj) {
149
- * if (obj.type === 'blob') {
150
- * const text = new TextDecoder().decode(obj.content)
151
- * console.log(text)
152
- * }
153
- * }
154
- * ```
155
- */
156
- getObject(sha: string): Promise<StoredObjectResult | null>;
157
- /**
158
- * Check if a Git object exists in storage.
159
- *
160
- * @description
161
- * Efficiently checks for object existence without fetching the full content.
162
- * This is useful for connectivity checks and optimizing transfers.
163
- *
164
- * @param sha - 40-character SHA-1 hash (case-insensitive)
165
- * @returns True if the object exists, false otherwise
166
- *
167
- * @example
168
- * ```typescript
169
- * if (await backend.hasObject(sha)) {
170
- * console.log('Object exists')
171
- * } else {
172
- * console.log('Need to fetch object')
173
- * }
174
- * ```
175
- */
176
- hasObject(sha: string): Promise<boolean>;
177
- /**
178
- * Delete a Git object from storage.
179
- *
180
- * @description
181
- * Removes an object from storage. This operation should be used with caution
182
- * as deleting objects that are still referenced by other objects (e.g., blobs
183
- * referenced by trees) will corrupt the repository.
184
- *
185
- * Note: Most Git operations don't delete objects directly. Use garbage
186
- * collection instead for safe cleanup of unreferenced objects.
187
- *
188
- * @param sha - 40-character SHA-1 hash (case-insensitive)
189
- * @returns Resolves when deletion is complete (no error if object didn't exist)
190
- *
191
- * @example
192
- * ```typescript
193
- * // Only delete if you're sure nothing references this object
194
- * await backend.deleteObject(sha)
195
- * ```
196
- */
197
- deleteObject(sha: string): Promise<void>;
198
- /**
199
- * Get a reference by name.
200
- *
201
- * @description
202
- * Retrieves a Git reference (branch, tag, HEAD, etc.) by its full name.
203
- * Returns null if the reference doesn't exist. Does NOT follow symbolic refs -
204
- * use the RefStorage class for ref resolution.
205
- *
206
- * @param name - Full ref name (e.g., 'HEAD', 'refs/heads/main', 'refs/tags/v1.0.0')
207
- * @returns The reference or null if not found
208
- *
209
- * @example
210
- * ```typescript
211
- * const head = await backend.getRef('HEAD')
212
- * if (head?.type === 'symbolic') {
213
- * console.log(`On branch: ${head.target}`)
214
- * } else if (head?.type === 'direct') {
215
- * console.log(`Detached at: ${head.target}`)
216
- * }
217
- * ```
218
- */
219
- getRef(name: string): Promise<Ref | null>;
220
- /**
221
- * Create or update a reference.
222
- *
223
- * @description
224
- * Sets a reference to point to a target (SHA for direct refs, ref name for symbolic).
225
- * Creates the ref if it doesn't exist, updates it if it does.
226
- *
227
- * Note: This is a low-level operation. For atomic updates with compare-and-swap,
228
- * use the RefStorage class instead.
229
- *
230
- * @param name - Full ref name (e.g., 'HEAD', 'refs/heads/main')
231
- * @param ref - The reference object with name, target, and type
232
- *
233
- * @example
234
- * ```typescript
235
- * // Create/update a branch
236
- * await backend.setRef('refs/heads/feature', {
237
- * name: 'refs/heads/feature',
238
- * target: commitSha,
239
- * type: 'direct'
240
- * })
241
- *
242
- * // Update HEAD to point to a branch
243
- * await backend.setRef('HEAD', {
244
- * name: 'HEAD',
245
- * target: 'refs/heads/main',
246
- * type: 'symbolic'
247
- * })
248
- * ```
249
- */
250
- setRef(name: string, ref: Ref): Promise<void>;
251
- /**
252
- * Delete a reference.
253
- *
254
- * @description
255
- * Removes a reference from storage. Note that HEAD cannot be deleted.
256
- * No error is thrown if the ref doesn't exist.
257
- *
258
- * @param name - Full ref name to delete
259
- *
260
- * @example
261
- * ```typescript
262
- * // Delete a branch
263
- * await backend.deleteRef('refs/heads/old-feature')
264
- *
265
- * // Delete a tag
266
- * await backend.deleteRef('refs/tags/old-release')
267
- * ```
268
- */
269
- deleteRef(name: string): Promise<void>;
270
- /**
271
- * List references matching an optional prefix.
272
- *
273
- * @description
274
- * Returns all references, optionally filtered by a prefix.
275
- * Does not include symbolic refs in the results by default.
276
- *
277
- * @param prefix - Optional prefix to filter refs (e.g., 'refs/heads/', 'refs/tags/')
278
- * @returns Array of matching references
279
- *
280
- * @example
281
- * ```typescript
282
- * // List all branches
283
- * const branches = await backend.listRefs('refs/heads/')
284
- *
285
- * // List all tags
286
- * const tags = await backend.listRefs('refs/tags/')
287
- *
288
- * // List all refs
289
- * const all = await backend.listRefs()
290
- * ```
291
- */
292
- listRefs(prefix?: string): Promise<Ref[]>;
293
- /**
294
- * Read a raw file from the repository.
295
- *
296
- * @description
297
- * Reads a file that isn't a Git object (e.g., index, config, hooks).
298
- * Paths are relative to the Git directory (.git/).
299
- * Returns null if the file doesn't exist.
300
- *
301
- * @param path - Path relative to Git directory (e.g., 'index', 'config', 'hooks/pre-commit')
302
- * @returns File contents as Uint8Array, or null if not found
303
- *
304
- * @example
305
- * ```typescript
306
- * // Read the index file
307
- * const indexData = await backend.readFile('index')
308
- *
309
- * // Read config
310
- * const config = await backend.readFile('config')
311
- * if (config) {
312
- * const text = new TextDecoder().decode(config)
313
- * console.log(text)
314
- * }
315
- * ```
316
- */
317
- readFile(path: string): Promise<Uint8Array | null>;
318
- /**
319
- * Write a raw file to the repository.
320
- *
321
- * @description
322
- * Writes a file that isn't a Git object (e.g., index, config).
323
- * Paths are relative to the Git directory (.git/).
324
- * Creates parent directories if they don't exist.
325
- * Overwrites existing files.
326
- *
327
- * @param path - Path relative to Git directory
328
- * @param content - File contents as Uint8Array
329
- *
330
- * @example
331
- * ```typescript
332
- * // Write config
333
- * const config = new TextEncoder().encode('[core]\n\trepositoryformatversion = 0\n')
334
- * await backend.writeFile('config', config)
335
- *
336
- * // Write index
337
- * await backend.writeFile('index', indexData)
338
- * ```
339
- */
340
- writeFile(path: string, content: Uint8Array): Promise<void>;
341
- /**
342
- * Delete a raw file from the repository.
343
- *
344
- * @description
345
- * Removes a file from the Git directory. No error if file doesn't exist.
346
- *
347
- * @param path - Path relative to Git directory
348
- *
349
- * @example
350
- * ```typescript
351
- * // Remove index.lock after crash
352
- * await backend.deleteFile('index.lock')
353
- * ```
354
- */
355
- deleteFile(path: string): Promise<void>;
356
- /**
357
- * Check if a file or directory exists.
358
- *
359
- * @description
360
- * Checks for the existence of a file or directory at the given path.
361
- * Paths are relative to the Git directory.
362
- *
363
- * @param path - Path relative to Git directory
364
- * @returns True if the path exists (file or directory), false otherwise
365
- *
366
- * @example
367
- * ```typescript
368
- * if (await backend.exists('index.lock')) {
369
- * throw new Error('Another git process is running')
370
- * }
371
- *
372
- * if (!await backend.exists('objects')) {
373
- * console.log('Not a valid git repository')
374
- * }
375
- * ```
376
- */
377
- exists(path: string): Promise<boolean>;
378
- /**
379
- * List contents of a directory.
380
- *
381
- * @description
382
- * Returns the names of files and directories within the specified directory.
383
- * Paths are relative to the Git directory. Returns an empty array if the
384
- * directory doesn't exist.
385
- *
386
- * @param path - Path relative to Git directory
387
- * @returns Array of file and directory names (not full paths)
388
- *
389
- * @example
390
- * ```typescript
391
- * // List pack files
392
- * const packDir = await backend.readdir('objects/pack')
393
- * const packs = packDir.filter(f => f.endsWith('.pack'))
394
- *
395
- * // List loose object prefixes
396
- * const objectDirs = await backend.readdir('objects')
397
- * ```
398
- */
399
- readdir(path: string): Promise<string[]>;
400
- /**
401
- * Create a directory.
402
- *
403
- * @description
404
- * Creates a directory at the specified path. If `recursive` is true,
405
- * creates parent directories as needed. No error if directory already exists.
406
- *
407
- * @param path - Path relative to Git directory
408
- * @param options - Options for directory creation
409
- * @param options.recursive - If true, create parent directories as needed
410
- *
411
- * @example
412
- * ```typescript
413
- * // Create objects directory structure
414
- * await backend.mkdir('objects/pack', { recursive: true })
415
- *
416
- * // Create refs structure
417
- * await backend.mkdir('refs/heads', { recursive: true })
418
- * await backend.mkdir('refs/tags', { recursive: true })
419
- * ```
420
- */
421
- mkdir(path: string, options?: {
422
- recursive?: boolean;
423
- }): Promise<void>;
424
- }
425
- //# sourceMappingURL=backend.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/storage/backend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAA;AAG1C,YAAY,EAAE,UAAU,EAAE,CAAA;AAE1B;;;;;;;;GAQG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAA;AAEhE;;;;;;GAMG;AACH,MAAM,WAAW,kBAAkB;IACjC,6BAA6B;IAC7B,IAAI,EAAE,UAAU,CAAA;IAChB,8DAA8D;IAC9D,OAAO,EAAE,UAAU,CAAA;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,WAAW,cAAc;IAK7B;;;;;;;;;;;;;;;;;;;;;;;;OAwBG;IACH,SAAS,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEjE;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC,CAAA;IAE1D;;;;;;;;;;;;;;;;;;OAkBG;IACH,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAExC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAMxC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAA;IAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE7C;;;;;;;;;;;;;;;;;OAiBG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEtC;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAMzC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAAA;IAElD;;;;;;;;;;;;;;;;;;;;;OAqBG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3D;;;;;;;;;;;;;OAaG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEvC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAMtC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;IAExC;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACtE"}
@@ -1,41 +0,0 @@
1
- /**
2
- * @fileoverview Storage Backend Interface for Git Operations
3
- *
4
- * This module defines the `StorageBackend` interface that abstracts over different
5
- * storage implementations. It provides a unified API for:
6
- * - Content-addressable storage (CAS) for Git objects (blobs, trees, commits, tags)
7
- * - Reference management (branches, tags, HEAD)
8
- * - Raw file operations (for index, config, and other Git files)
9
- * - Directory operations
10
- *
11
- * **Implementations**:
12
- * - `FSStorageBackend` - Uses Node.js `fs/promises` for CLI usage
13
- * - `DOStorageBackend` - Uses SQLite in Durable Objects for cloud deployment
14
- *
15
- * @module storage/backend
16
- *
17
- * @example
18
- * ```typescript
19
- * import { StorageBackend } from './storage/backend'
20
- *
21
- * async function createCommit(backend: StorageBackend) {
22
- * // Store a blob
23
- * const blobSha = await backend.putObject('blob', content)
24
- *
25
- * // Store a tree referencing the blob
26
- * const treeSha = await backend.putObject('tree', treeContent)
27
- *
28
- * // Store the commit
29
- * const commitSha = await backend.putObject('commit', commitContent)
30
- *
31
- * // Update the branch ref
32
- * await backend.setRef('refs/heads/main', {
33
- * name: 'refs/heads/main',
34
- * target: commitSha,
35
- * type: 'direct'
36
- * })
37
- * }
38
- * ```
39
- */
40
- export {};
41
- //# sourceMappingURL=backend.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/storage/backend.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG"}