gitx.do 0.0.1

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 (167) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +156 -0
  3. package/dist/durable-object/object-store.d.ts +113 -0
  4. package/dist/durable-object/object-store.d.ts.map +1 -0
  5. package/dist/durable-object/object-store.js +387 -0
  6. package/dist/durable-object/object-store.js.map +1 -0
  7. package/dist/durable-object/schema.d.ts +17 -0
  8. package/dist/durable-object/schema.d.ts.map +1 -0
  9. package/dist/durable-object/schema.js +43 -0
  10. package/dist/durable-object/schema.js.map +1 -0
  11. package/dist/durable-object/wal.d.ts +111 -0
  12. package/dist/durable-object/wal.d.ts.map +1 -0
  13. package/dist/durable-object/wal.js +200 -0
  14. package/dist/durable-object/wal.js.map +1 -0
  15. package/dist/index.d.ts +24 -0
  16. package/dist/index.d.ts.map +1 -0
  17. package/dist/index.js +101 -0
  18. package/dist/index.js.map +1 -0
  19. package/dist/mcp/adapter.d.ts +231 -0
  20. package/dist/mcp/adapter.d.ts.map +1 -0
  21. package/dist/mcp/adapter.js +502 -0
  22. package/dist/mcp/adapter.js.map +1 -0
  23. package/dist/mcp/sandbox.d.ts +261 -0
  24. package/dist/mcp/sandbox.d.ts.map +1 -0
  25. package/dist/mcp/sandbox.js +983 -0
  26. package/dist/mcp/sandbox.js.map +1 -0
  27. package/dist/mcp/sdk-adapter.d.ts +413 -0
  28. package/dist/mcp/sdk-adapter.d.ts.map +1 -0
  29. package/dist/mcp/sdk-adapter.js +672 -0
  30. package/dist/mcp/sdk-adapter.js.map +1 -0
  31. package/dist/mcp/tools.d.ts +133 -0
  32. package/dist/mcp/tools.d.ts.map +1 -0
  33. package/dist/mcp/tools.js +1604 -0
  34. package/dist/mcp/tools.js.map +1 -0
  35. package/dist/ops/blame.d.ts +148 -0
  36. package/dist/ops/blame.d.ts.map +1 -0
  37. package/dist/ops/blame.js +754 -0
  38. package/dist/ops/blame.js.map +1 -0
  39. package/dist/ops/branch.d.ts +215 -0
  40. package/dist/ops/branch.d.ts.map +1 -0
  41. package/dist/ops/branch.js +608 -0
  42. package/dist/ops/branch.js.map +1 -0
  43. package/dist/ops/commit-traversal.d.ts +209 -0
  44. package/dist/ops/commit-traversal.d.ts.map +1 -0
  45. package/dist/ops/commit-traversal.js +755 -0
  46. package/dist/ops/commit-traversal.js.map +1 -0
  47. package/dist/ops/commit.d.ts +221 -0
  48. package/dist/ops/commit.d.ts.map +1 -0
  49. package/dist/ops/commit.js +606 -0
  50. package/dist/ops/commit.js.map +1 -0
  51. package/dist/ops/merge-base.d.ts +223 -0
  52. package/dist/ops/merge-base.d.ts.map +1 -0
  53. package/dist/ops/merge-base.js +581 -0
  54. package/dist/ops/merge-base.js.map +1 -0
  55. package/dist/ops/merge.d.ts +385 -0
  56. package/dist/ops/merge.d.ts.map +1 -0
  57. package/dist/ops/merge.js +1203 -0
  58. package/dist/ops/merge.js.map +1 -0
  59. package/dist/ops/tag.d.ts +182 -0
  60. package/dist/ops/tag.d.ts.map +1 -0
  61. package/dist/ops/tag.js +608 -0
  62. package/dist/ops/tag.js.map +1 -0
  63. package/dist/ops/tree-builder.d.ts +82 -0
  64. package/dist/ops/tree-builder.d.ts.map +1 -0
  65. package/dist/ops/tree-builder.js +246 -0
  66. package/dist/ops/tree-builder.js.map +1 -0
  67. package/dist/ops/tree-diff.d.ts +243 -0
  68. package/dist/ops/tree-diff.d.ts.map +1 -0
  69. package/dist/ops/tree-diff.js +657 -0
  70. package/dist/ops/tree-diff.js.map +1 -0
  71. package/dist/pack/delta.d.ts +68 -0
  72. package/dist/pack/delta.d.ts.map +1 -0
  73. package/dist/pack/delta.js +343 -0
  74. package/dist/pack/delta.js.map +1 -0
  75. package/dist/pack/format.d.ts +84 -0
  76. package/dist/pack/format.d.ts.map +1 -0
  77. package/dist/pack/format.js +261 -0
  78. package/dist/pack/format.js.map +1 -0
  79. package/dist/pack/full-generation.d.ts +327 -0
  80. package/dist/pack/full-generation.d.ts.map +1 -0
  81. package/dist/pack/full-generation.js +1159 -0
  82. package/dist/pack/full-generation.js.map +1 -0
  83. package/dist/pack/generation.d.ts +118 -0
  84. package/dist/pack/generation.d.ts.map +1 -0
  85. package/dist/pack/generation.js +459 -0
  86. package/dist/pack/generation.js.map +1 -0
  87. package/dist/pack/index.d.ts +181 -0
  88. package/dist/pack/index.d.ts.map +1 -0
  89. package/dist/pack/index.js +552 -0
  90. package/dist/pack/index.js.map +1 -0
  91. package/dist/refs/branch.d.ts +224 -0
  92. package/dist/refs/branch.d.ts.map +1 -0
  93. package/dist/refs/branch.js +170 -0
  94. package/dist/refs/branch.js.map +1 -0
  95. package/dist/refs/storage.d.ts +208 -0
  96. package/dist/refs/storage.d.ts.map +1 -0
  97. package/dist/refs/storage.js +421 -0
  98. package/dist/refs/storage.js.map +1 -0
  99. package/dist/refs/tag.d.ts +230 -0
  100. package/dist/refs/tag.d.ts.map +1 -0
  101. package/dist/refs/tag.js +188 -0
  102. package/dist/refs/tag.js.map +1 -0
  103. package/dist/storage/lru-cache.d.ts +188 -0
  104. package/dist/storage/lru-cache.d.ts.map +1 -0
  105. package/dist/storage/lru-cache.js +410 -0
  106. package/dist/storage/lru-cache.js.map +1 -0
  107. package/dist/storage/object-index.d.ts +140 -0
  108. package/dist/storage/object-index.d.ts.map +1 -0
  109. package/dist/storage/object-index.js +166 -0
  110. package/dist/storage/object-index.js.map +1 -0
  111. package/dist/storage/r2-pack.d.ts +394 -0
  112. package/dist/storage/r2-pack.d.ts.map +1 -0
  113. package/dist/storage/r2-pack.js +1062 -0
  114. package/dist/storage/r2-pack.js.map +1 -0
  115. package/dist/tiered/cdc-pipeline.d.ts +316 -0
  116. package/dist/tiered/cdc-pipeline.d.ts.map +1 -0
  117. package/dist/tiered/cdc-pipeline.js +771 -0
  118. package/dist/tiered/cdc-pipeline.js.map +1 -0
  119. package/dist/tiered/migration.d.ts +242 -0
  120. package/dist/tiered/migration.d.ts.map +1 -0
  121. package/dist/tiered/migration.js +592 -0
  122. package/dist/tiered/migration.js.map +1 -0
  123. package/dist/tiered/parquet-writer.d.ts +248 -0
  124. package/dist/tiered/parquet-writer.d.ts.map +1 -0
  125. package/dist/tiered/parquet-writer.js +555 -0
  126. package/dist/tiered/parquet-writer.js.map +1 -0
  127. package/dist/tiered/read-path.d.ts +141 -0
  128. package/dist/tiered/read-path.d.ts.map +1 -0
  129. package/dist/tiered/read-path.js +204 -0
  130. package/dist/tiered/read-path.js.map +1 -0
  131. package/dist/types/objects.d.ts +53 -0
  132. package/dist/types/objects.d.ts.map +1 -0
  133. package/dist/types/objects.js +291 -0
  134. package/dist/types/objects.js.map +1 -0
  135. package/dist/types/storage.d.ts +117 -0
  136. package/dist/types/storage.d.ts.map +1 -0
  137. package/dist/types/storage.js +8 -0
  138. package/dist/types/storage.js.map +1 -0
  139. package/dist/utils/hash.d.ts +31 -0
  140. package/dist/utils/hash.d.ts.map +1 -0
  141. package/dist/utils/hash.js +60 -0
  142. package/dist/utils/hash.js.map +1 -0
  143. package/dist/utils/sha1.d.ts +26 -0
  144. package/dist/utils/sha1.d.ts.map +1 -0
  145. package/dist/utils/sha1.js +127 -0
  146. package/dist/utils/sha1.js.map +1 -0
  147. package/dist/wire/capabilities.d.ts +236 -0
  148. package/dist/wire/capabilities.d.ts.map +1 -0
  149. package/dist/wire/capabilities.js +437 -0
  150. package/dist/wire/capabilities.js.map +1 -0
  151. package/dist/wire/pkt-line.d.ts +67 -0
  152. package/dist/wire/pkt-line.d.ts.map +1 -0
  153. package/dist/wire/pkt-line.js +145 -0
  154. package/dist/wire/pkt-line.js.map +1 -0
  155. package/dist/wire/receive-pack.d.ts +302 -0
  156. package/dist/wire/receive-pack.d.ts.map +1 -0
  157. package/dist/wire/receive-pack.js +885 -0
  158. package/dist/wire/receive-pack.js.map +1 -0
  159. package/dist/wire/smart-http.d.ts +321 -0
  160. package/dist/wire/smart-http.d.ts.map +1 -0
  161. package/dist/wire/smart-http.js +654 -0
  162. package/dist/wire/smart-http.js.map +1 -0
  163. package/dist/wire/upload-pack.d.ts +333 -0
  164. package/dist/wire/upload-pack.d.ts.map +1 -0
  165. package/dist/wire/upload-pack.js +850 -0
  166. package/dist/wire/upload-pack.js.map +1 -0
  167. package/package.json +61 -0
@@ -0,0 +1,261 @@
1
+ /**
2
+ * Git Packfile Format Implementation
3
+ *
4
+ * The packfile format is used by git for efficient storage and transfer of objects.
5
+ * Format:
6
+ * - 4 bytes: "PACK" signature
7
+ * - 4 bytes: version number (network byte order, big-endian)
8
+ * - 4 bytes: number of objects (network byte order)
9
+ * - N objects: each object has header + compressed data
10
+ * - 20 bytes: SHA-1 checksum of all preceding content
11
+ *
12
+ * Object header encoding:
13
+ * - First byte: (MSB) continuation bit | 3-bit type | 4-bit size LSB
14
+ * - Subsequent bytes: (MSB) continuation bit | 7-bit size
15
+ *
16
+ * Object types:
17
+ * - 1: commit
18
+ * - 2: tree
19
+ * - 3: blob
20
+ * - 4: tag
21
+ * - 6: ofs_delta (offset delta)
22
+ * - 7: ref_delta (reference delta)
23
+ */
24
+ import pako from 'pako';
25
+ import { sha1 } from '../utils/sha1';
26
+ // Constants
27
+ export const PACK_SIGNATURE = 'PACK';
28
+ export const PACK_VERSION = 2;
29
+ // Pack object types
30
+ export var PackObjectType;
31
+ (function (PackObjectType) {
32
+ PackObjectType[PackObjectType["OBJ_COMMIT"] = 1] = "OBJ_COMMIT";
33
+ PackObjectType[PackObjectType["OBJ_TREE"] = 2] = "OBJ_TREE";
34
+ PackObjectType[PackObjectType["OBJ_BLOB"] = 3] = "OBJ_BLOB";
35
+ PackObjectType[PackObjectType["OBJ_TAG"] = 4] = "OBJ_TAG";
36
+ PackObjectType[PackObjectType["OBJ_OFS_DELTA"] = 6] = "OBJ_OFS_DELTA";
37
+ PackObjectType[PackObjectType["OBJ_REF_DELTA"] = 7] = "OBJ_REF_DELTA";
38
+ })(PackObjectType || (PackObjectType = {}));
39
+ // Type conversion utilities
40
+ export function packObjectTypeToString(type) {
41
+ switch (type) {
42
+ case PackObjectType.OBJ_COMMIT:
43
+ return 'commit';
44
+ case PackObjectType.OBJ_TREE:
45
+ return 'tree';
46
+ case PackObjectType.OBJ_BLOB:
47
+ return 'blob';
48
+ case PackObjectType.OBJ_TAG:
49
+ return 'tag';
50
+ case PackObjectType.OBJ_OFS_DELTA:
51
+ return 'ofs_delta';
52
+ case PackObjectType.OBJ_REF_DELTA:
53
+ return 'ref_delta';
54
+ default:
55
+ throw new Error(`Invalid pack object type: ${type}`);
56
+ }
57
+ }
58
+ export function stringToPackObjectType(str) {
59
+ switch (str) {
60
+ case 'commit':
61
+ return PackObjectType.OBJ_COMMIT;
62
+ case 'tree':
63
+ return PackObjectType.OBJ_TREE;
64
+ case 'blob':
65
+ return PackObjectType.OBJ_BLOB;
66
+ case 'tag':
67
+ return PackObjectType.OBJ_TAG;
68
+ default:
69
+ throw new Error(`Invalid object type string: ${str}`);
70
+ }
71
+ }
72
+ // Variable-length integer encoding (similar to Git's varint encoding)
73
+ export function encodeVarint(value) {
74
+ const bytes = [];
75
+ // Encode value in 7-bit chunks with continuation bit
76
+ do {
77
+ let byte = value & 0x7f;
78
+ value >>>= 7;
79
+ if (value > 0) {
80
+ byte |= 0x80; // Set continuation bit
81
+ }
82
+ bytes.push(byte);
83
+ } while (value > 0);
84
+ return new Uint8Array(bytes);
85
+ }
86
+ export function decodeVarint(data, offset) {
87
+ let value = 0;
88
+ let shift = 0;
89
+ let bytesRead = 0;
90
+ // Maximum bytes for a 64-bit varint is 10 (ceil(64/7))
91
+ // For JavaScript's safe integer range, 8 bytes is sufficient
92
+ const MAX_VARINT_BYTES = 10;
93
+ while (true) {
94
+ if (offset + bytesRead >= data.length) {
95
+ throw new Error(`Varint decoding failed: unexpected end of data at offset ${offset + bytesRead}`);
96
+ }
97
+ if (bytesRead >= MAX_VARINT_BYTES) {
98
+ throw new Error(`Varint decoding failed: exceeded maximum length of ${MAX_VARINT_BYTES} bytes (possible infinite loop or corrupted data)`);
99
+ }
100
+ const byte = data[offset + bytesRead];
101
+ bytesRead++;
102
+ value |= (byte & 0x7f) << shift;
103
+ if ((byte & 0x80) === 0) {
104
+ break;
105
+ }
106
+ shift += 7;
107
+ }
108
+ return { value, bytesRead };
109
+ }
110
+ /**
111
+ * Encode object type and size into pack object header format
112
+ *
113
+ * First byte: MSB continuation bit | 3-bit type | 4-bit size LSB
114
+ * Subsequent bytes: MSB continuation bit | 7-bit size continuation
115
+ */
116
+ export function encodeTypeAndSize(type, size) {
117
+ const bytes = [];
118
+ // First byte: continuation bit (if needed) | type (3 bits) | size low 4 bits
119
+ let firstByte = (type << 4) | (size & 0x0f);
120
+ size >>>= 4;
121
+ if (size > 0) {
122
+ firstByte |= 0x80; // Set continuation bit
123
+ }
124
+ bytes.push(firstByte);
125
+ // Subsequent bytes: continuation bit | 7 bits of size
126
+ while (size > 0) {
127
+ let byte = size & 0x7f;
128
+ size >>>= 7;
129
+ if (size > 0) {
130
+ byte |= 0x80;
131
+ }
132
+ bytes.push(byte);
133
+ }
134
+ return new Uint8Array(bytes);
135
+ }
136
+ export function decodeTypeAndSize(data, offset) {
137
+ // Maximum bytes for type+size header (first byte + continuation bytes)
138
+ // Similar to varint, limit to prevent infinite loops
139
+ const MAX_HEADER_BYTES = 10;
140
+ if (offset >= data.length) {
141
+ throw new Error(`decodeTypeAndSize failed: offset ${offset} is beyond data length ${data.length}`);
142
+ }
143
+ let bytesRead = 0;
144
+ const firstByte = data[offset + bytesRead];
145
+ bytesRead++;
146
+ // Extract type (bits 4-6 of first byte)
147
+ const type = ((firstByte >> 4) & 0x07);
148
+ // Extract initial size (low 4 bits)
149
+ let size = firstByte & 0x0f;
150
+ let shift = 4;
151
+ // Read continuation bytes if MSB is set
152
+ if (firstByte & 0x80) {
153
+ while (true) {
154
+ if (offset + bytesRead >= data.length) {
155
+ throw new Error(`decodeTypeAndSize failed: unexpected end of data at offset ${offset + bytesRead}`);
156
+ }
157
+ if (bytesRead >= MAX_HEADER_BYTES) {
158
+ throw new Error(`decodeTypeAndSize failed: exceeded maximum header length of ${MAX_HEADER_BYTES} bytes (possible infinite loop or corrupted data)`);
159
+ }
160
+ const byte = data[offset + bytesRead];
161
+ bytesRead++;
162
+ size |= (byte & 0x7f) << shift;
163
+ shift += 7;
164
+ if ((byte & 0x80) === 0) {
165
+ break;
166
+ }
167
+ }
168
+ }
169
+ return { type, size, bytesRead };
170
+ }
171
+ /**
172
+ * Parse pack file header
173
+ * @param data - The packfile data
174
+ * @returns Parsed header information
175
+ */
176
+ export function parsePackHeader(data) {
177
+ if (data.length < 12) {
178
+ throw new Error('Packfile header too short: expected at least 12 bytes');
179
+ }
180
+ // Read signature (4 bytes)
181
+ const signature = String.fromCharCode(data[0], data[1], data[2], data[3]);
182
+ if (signature !== PACK_SIGNATURE) {
183
+ throw new Error(`Invalid pack signature: expected "${PACK_SIGNATURE}", got "${signature}"`);
184
+ }
185
+ // Read version (4 bytes, big-endian)
186
+ const version = (data[4] << 24) | (data[5] << 16) | (data[6] << 8) | data[7];
187
+ if (version !== 2) {
188
+ throw new Error(`Unsupported pack version: ${version} (only version 2 is supported)`);
189
+ }
190
+ // Read object count (4 bytes, big-endian)
191
+ const objectCount = (data[8] << 24) | (data[9] << 16) | (data[10] << 8) | data[11];
192
+ return { signature, version, objectCount };
193
+ }
194
+ /**
195
+ * Parse individual pack object header
196
+ * Note: This only parses the header, not the compressed data
197
+ */
198
+ export function parsePackObject(data, offset) {
199
+ const { type, size, bytesRead } = decodeTypeAndSize(data, offset);
200
+ return {
201
+ type,
202
+ size,
203
+ headerSize: bytesRead
204
+ };
205
+ }
206
+ /**
207
+ * Create a packfile from a list of objects
208
+ * @param objects - Array of objects to pack
209
+ * @returns Complete packfile as Uint8Array
210
+ */
211
+ export function createPackfile(objects) {
212
+ const parts = [];
213
+ // Create header
214
+ const header = new Uint8Array(12);
215
+ // Signature: "PACK"
216
+ header[0] = 0x50; // P
217
+ header[1] = 0x41; // A
218
+ header[2] = 0x43; // C
219
+ header[3] = 0x4b; // K
220
+ // Version: 2 (big-endian)
221
+ header[4] = 0;
222
+ header[5] = 0;
223
+ header[6] = 0;
224
+ header[7] = 2;
225
+ // Object count (big-endian)
226
+ const count = objects.length;
227
+ header[8] = (count >> 24) & 0xff;
228
+ header[9] = (count >> 16) & 0xff;
229
+ header[10] = (count >> 8) & 0xff;
230
+ header[11] = count & 0xff;
231
+ parts.push(header);
232
+ // Add each object
233
+ for (const obj of objects) {
234
+ const type = stringToPackObjectType(obj.type);
235
+ const typeAndSize = encodeTypeAndSize(type, obj.data.length);
236
+ // Compress the data using zlib deflate
237
+ const compressed = pako.deflate(obj.data);
238
+ parts.push(typeAndSize);
239
+ parts.push(compressed);
240
+ }
241
+ // Calculate total length
242
+ let totalLength = 0;
243
+ for (const part of parts) {
244
+ totalLength += part.length;
245
+ }
246
+ // Combine all parts
247
+ const packData = new Uint8Array(totalLength);
248
+ let offset = 0;
249
+ for (const part of parts) {
250
+ packData.set(part, offset);
251
+ offset += part.length;
252
+ }
253
+ // Calculate SHA-1 checksum of the pack data
254
+ const checksum = sha1(packData);
255
+ // Create final packfile with checksum
256
+ const finalPack = new Uint8Array(packData.length + 20);
257
+ finalPack.set(packData, 0);
258
+ finalPack.set(checksum, packData.length);
259
+ return finalPack;
260
+ }
261
+ //# sourceMappingURL=format.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.js","sourceRoot":"","sources":["../../src/pack/format.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,327 @@
1
+ /**
2
+ * Full Packfile Generation
3
+ *
4
+ * This module provides comprehensive packfile generation capabilities including:
5
+ * - Complete pack generation from object sets
6
+ * - Delta chain optimization
7
+ * - Pack ordering strategies
8
+ * - Large repository handling
9
+ * - Incremental pack updates
10
+ */
11
+ import { PackObjectType } from './format';
12
+ /**
13
+ * An object that can be packed
14
+ */
15
+ export interface PackableObject {
16
+ sha: string;
17
+ type: PackObjectType;
18
+ data: Uint8Array;
19
+ path?: string;
20
+ timestamp?: number;
21
+ }
22
+ /**
23
+ * A set of objects to be packed
24
+ */
25
+ export interface PackableObjectSet {
26
+ objects: PackableObject[];
27
+ roots?: string[];
28
+ }
29
+ /**
30
+ * Options for full pack generation
31
+ */
32
+ export interface FullPackOptions {
33
+ enableDeltaCompression?: boolean;
34
+ maxDeltaDepth?: number;
35
+ windowSize?: number;
36
+ compressionLevel?: number;
37
+ orderingStrategy?: PackOrderingStrategy;
38
+ }
39
+ /**
40
+ * Result of full pack generation
41
+ */
42
+ export interface GeneratedFullPack {
43
+ packData: Uint8Array;
44
+ checksum: Uint8Array;
45
+ stats: FullPackStats;
46
+ }
47
+ /**
48
+ * Statistics from pack generation
49
+ */
50
+ export interface FullPackStats {
51
+ totalObjects: number;
52
+ deltaObjects: number;
53
+ totalSize: number;
54
+ compressedSize: number;
55
+ compressionRatio: number;
56
+ maxDeltaDepth: number;
57
+ generationTimeMs: number;
58
+ }
59
+ /**
60
+ * Progress information during pack generation
61
+ */
62
+ export interface PackGenerationProgress {
63
+ phase: 'scanning' | 'sorting' | 'compressing' | 'writing' | 'complete';
64
+ objectsProcessed: number;
65
+ totalObjects: number;
66
+ bytesWritten: number;
67
+ currentObject?: string;
68
+ }
69
+ /**
70
+ * Configuration for delta chain optimization
71
+ */
72
+ export interface DeltaChainConfig {
73
+ maxDepth?: number;
74
+ minSavingsThreshold?: number;
75
+ windowSize?: number;
76
+ minMatchLength?: number;
77
+ }
78
+ /**
79
+ * Result of delta chain optimization
80
+ */
81
+ export interface OptimizedDeltaChain {
82
+ chains: DeltaChainInfo[];
83
+ totalSavings: number;
84
+ baseSelections: Map<string, string>;
85
+ }
86
+ /**
87
+ * Information about a single delta chain
88
+ */
89
+ export interface DeltaChainInfo {
90
+ baseSha: string;
91
+ baseType: PackObjectType;
92
+ objectSha: string;
93
+ objectType: PackObjectType;
94
+ depth: number;
95
+ savings: number;
96
+ }
97
+ /**
98
+ * Pack ordering strategies
99
+ */
100
+ export declare enum PackOrderingStrategy {
101
+ TYPE_FIRST = "type_first",
102
+ SIZE_DESCENDING = "size_descending",
103
+ RECENCY = "recency",
104
+ PATH_BASED = "path_based",
105
+ DELTA_OPTIMIZED = "delta_optimized"
106
+ }
107
+ /**
108
+ * Configuration for ordering strategy
109
+ */
110
+ export interface OrderingStrategyConfig {
111
+ primaryStrategy?: PackOrderingStrategy;
112
+ secondaryStrategy?: PackOrderingStrategy;
113
+ deltaChains?: Map<string, string>;
114
+ preferSamePath?: boolean;
115
+ }
116
+ /**
117
+ * Result of applying ordering strategy
118
+ */
119
+ export interface OrderedObjectSet {
120
+ objects: PackableObject[];
121
+ orderingApplied: PackOrderingStrategy;
122
+ }
123
+ /**
124
+ * Configuration for large repository handling
125
+ */
126
+ export interface LargeRepoConfig {
127
+ maxMemoryUsage?: number;
128
+ chunkSize?: number;
129
+ enableStreaming?: boolean;
130
+ parallelDeltaComputation?: boolean;
131
+ workerCount?: number;
132
+ }
133
+ /**
134
+ * Options for incremental pack updates
135
+ */
136
+ export interface IncrementalUpdateOptions {
137
+ generateThinPack?: boolean;
138
+ externalBases?: Set<string>;
139
+ reuseDeltas?: boolean;
140
+ reoptimizeDeltas?: boolean;
141
+ }
142
+ /**
143
+ * Result of incremental pack update
144
+ */
145
+ export interface IncrementalPackResult {
146
+ packData: Uint8Array;
147
+ addedObjects: number;
148
+ skippedObjects: number;
149
+ reusedDeltas: number;
150
+ deltaReferences: string[];
151
+ isThin: boolean;
152
+ missingBases: string[];
153
+ }
154
+ /**
155
+ * Result of pack diff computation
156
+ */
157
+ export interface PackDiff {
158
+ added: string[];
159
+ removed: string[];
160
+ unchanged: string[];
161
+ }
162
+ /**
163
+ * Result of pack merge
164
+ */
165
+ export interface MergedPack {
166
+ objects: PackableObject[];
167
+ stats: FullPackStats;
168
+ }
169
+ /**
170
+ * Result of base selection
171
+ */
172
+ export interface BaseSelectionResult {
173
+ selections: Map<string, string>;
174
+ savings: Map<string, number>;
175
+ }
176
+ /**
177
+ * Object dependency graph
178
+ */
179
+ export interface ObjectDependencyGraph {
180
+ getDependencies(sha: string): string[];
181
+ getDependents(sha: string): string[];
182
+ hasCycles(): boolean;
183
+ topologicalSort(): string[];
184
+ nodes: string[];
185
+ edges: Array<{
186
+ from: string;
187
+ to: string;
188
+ }>;
189
+ }
190
+ /**
191
+ * Result of pack validation
192
+ */
193
+ export interface PackValidationResult {
194
+ valid: boolean;
195
+ errors: string[];
196
+ stats?: PackValidationStats;
197
+ deltaChainStats?: DeltaChainStats;
198
+ }
199
+ /**
200
+ * Pack validation statistics
201
+ */
202
+ export interface PackValidationStats {
203
+ objectCount: number;
204
+ headerValid: boolean;
205
+ checksumValid: boolean;
206
+ }
207
+ /**
208
+ * Delta chain statistics
209
+ */
210
+ export interface DeltaChainStats {
211
+ maxDepth: number;
212
+ averageDepth: number;
213
+ totalChains: number;
214
+ }
215
+ /**
216
+ * Generate a complete packfile from an object set
217
+ */
218
+ export declare function generateFullPackfile(objectSet: PackableObjectSet): Uint8Array;
219
+ /**
220
+ * Optimize delta chains for a set of objects
221
+ */
222
+ export declare function optimizeDeltaChains(objects: PackableObject[], config?: DeltaChainConfig): OptimizedDeltaChain;
223
+ /**
224
+ * Apply an ordering strategy to objects
225
+ */
226
+ export declare function applyOrderingStrategy(objects: PackableObject[], strategy: PackOrderingStrategy, config?: OrderingStrategyConfig): OrderedObjectSet;
227
+ /**
228
+ * Compute object dependencies
229
+ */
230
+ export declare function computeObjectDependencies(objects: PackableObject[]): ObjectDependencyGraph;
231
+ /**
232
+ * Select optimal base objects for delta compression
233
+ */
234
+ export declare function selectOptimalBases(objects: PackableObject[], options?: {
235
+ preferSamePath?: boolean;
236
+ }): BaseSelectionResult;
237
+ /**
238
+ * Validate pack integrity
239
+ */
240
+ export declare function validatePackIntegrity(packData: Uint8Array, options?: {
241
+ validateDeltas?: boolean;
242
+ collectStats?: boolean;
243
+ }): PackValidationResult;
244
+ /**
245
+ * Full pack generator with streaming and progress support
246
+ */
247
+ export declare class FullPackGenerator {
248
+ private objects;
249
+ private options;
250
+ private progressCallback?;
251
+ constructor(options?: FullPackOptions);
252
+ get objectCount(): number;
253
+ addObject(object: PackableObject): void;
254
+ addObjectSet(objectSet: PackableObjectSet): void;
255
+ onProgress(callback: (progress: PackGenerationProgress) => void): void;
256
+ generate(): GeneratedFullPack;
257
+ reset(): void;
258
+ private reportProgress;
259
+ }
260
+ /**
261
+ * Delta chain optimizer
262
+ */
263
+ export declare class DeltaChainOptimizer {
264
+ private objects;
265
+ private config;
266
+ constructor(config?: DeltaChainConfig);
267
+ addObject(object: PackableObject): void;
268
+ buildGraph(): {
269
+ nodes: PackableObject[];
270
+ edges: Array<{
271
+ from: string;
272
+ to: string;
273
+ }>;
274
+ };
275
+ computeSavings(): Map<string, number>;
276
+ optimize(): OptimizedDeltaChain;
277
+ }
278
+ /**
279
+ * Handler for large repositories
280
+ */
281
+ export declare class LargeRepositoryHandler {
282
+ private objects;
283
+ private config;
284
+ private progressCallback?;
285
+ private memoryCallback?;
286
+ constructor(config?: LargeRepoConfig);
287
+ setObjects(objects: PackableObject[]): void;
288
+ onProgress(callback: (progress: PackGenerationProgress) => void): void;
289
+ onMemoryUsage(callback: (usage: number) => void): void;
290
+ partitionObjects(objects: PackableObject[]): PackableObject[][];
291
+ generatePack(): GeneratedFullPack;
292
+ }
293
+ /**
294
+ * Streaming pack writer
295
+ */
296
+ export declare class StreamingPackWriter {
297
+ private chunkCallback?;
298
+ private outputStream?;
299
+ private chunks;
300
+ private objectCount;
301
+ private expectedCount;
302
+ constructor(options?: {
303
+ outputStream?: {
304
+ write: (chunk: Uint8Array) => Promise<void>;
305
+ };
306
+ highWaterMark?: number;
307
+ });
308
+ onChunk(callback: (chunk: Uint8Array) => void): void;
309
+ writeHeader(objectCount: number): void;
310
+ writeObject(object: PackableObject): void;
311
+ finalize(): Promise<void>;
312
+ private emitChunk;
313
+ }
314
+ /**
315
+ * Incremental pack updater
316
+ */
317
+ export declare class IncrementalPackUpdater {
318
+ private existingObjects;
319
+ private existingShas;
320
+ private options;
321
+ constructor(options?: IncrementalUpdateOptions);
322
+ setExistingObjects(objects: PackableObject[]): void;
323
+ addObjects(newObjects: PackableObject[]): IncrementalPackResult;
324
+ computeDiff(oldObjects: PackableObject[], newObjects: PackableObject[]): PackDiff;
325
+ mergePacks(packs: PackableObject[][]): MergedPack;
326
+ }
327
+ //# sourceMappingURL=full-generation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"full-generation.d.ts","sourceRoot":"","sources":["../../src/pack/full-generation.ts"],"names":[],"mappings":"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"}