@claudexor/journal 3.11.0 → 3.12.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 (49) hide show
  1. package/dist/append-batch.d.ts +2 -0
  2. package/dist/append-batch.d.ts.map +1 -1
  3. package/dist/append-batch.js +4 -0
  4. package/dist/append-batch.js.map +1 -1
  5. package/dist/frame-codec.d.ts +54 -0
  6. package/dist/frame-codec.d.ts.map +1 -1
  7. package/dist/frame-codec.js +167 -87
  8. package/dist/frame-codec.js.map +1 -1
  9. package/dist/frame-reader.d.ts +30 -0
  10. package/dist/frame-reader.d.ts.map +1 -0
  11. package/dist/frame-reader.js +97 -0
  12. package/dist/frame-reader.js.map +1 -0
  13. package/dist/index.d.ts +34 -44
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +81 -156
  16. package/dist/index.js.map +1 -1
  17. package/dist/journal-background-compaction.d.ts +7 -2
  18. package/dist/journal-background-compaction.d.ts.map +1 -1
  19. package/dist/journal-background-compaction.js +79 -78
  20. package/dist/journal-background-compaction.js.map +1 -1
  21. package/dist/journal-compaction-chunks.d.ts +29 -0
  22. package/dist/journal-compaction-chunks.d.ts.map +1 -0
  23. package/dist/journal-compaction-chunks.js +112 -0
  24. package/dist/journal-compaction-chunks.js.map +1 -0
  25. package/dist/journal-compaction.d.ts +27 -5
  26. package/dist/journal-compaction.d.ts.map +1 -1
  27. package/dist/journal-compaction.js +22 -4
  28. package/dist/journal-compaction.js.map +1 -1
  29. package/dist/journal-core.d.ts +96 -0
  30. package/dist/journal-core.d.ts.map +1 -0
  31. package/dist/journal-core.js +173 -0
  32. package/dist/journal-core.js.map +1 -0
  33. package/dist/journal-files.d.ts +0 -1
  34. package/dist/journal-files.d.ts.map +1 -1
  35. package/dist/journal-files.js +0 -9
  36. package/dist/journal-files.js.map +1 -1
  37. package/dist/journal-fold.d.ts +47 -0
  38. package/dist/journal-fold.d.ts.map +1 -0
  39. package/dist/journal-fold.js +81 -0
  40. package/dist/journal-fold.js.map +1 -0
  41. package/dist/journal-recovery.d.ts +18 -6
  42. package/dist/journal-recovery.d.ts.map +1 -1
  43. package/dist/journal-recovery.js +46 -30
  44. package/dist/journal-recovery.js.map +1 -1
  45. package/dist/read-only-preparation.d.ts +7 -0
  46. package/dist/read-only-preparation.d.ts.map +1 -1
  47. package/dist/read-only-preparation.js +98 -41
  48. package/dist/read-only-preparation.js.map +1 -1
  49. package/package.json +2 -2
@@ -1,4 +1,5 @@
1
1
  import { type JournalRecord } from "./frame-codec.js";
2
+ import type { JournalFold } from "./journal-fold.js";
2
3
  export interface JournalPreparationReceipt {
3
4
  fingerprint: string;
4
5
  preparationIdentity: string;
@@ -20,6 +21,9 @@ export type PreparedJournalRecovery = {
20
21
  reason: string;
21
22
  discardedTailBytes: number;
22
23
  };
24
+ /** Chain state (`epoch`/`nextSeq`/`previousFrameHash`) is the disk state after
25
+ * the last frame; `records` is the retained set after the optional fold, and
26
+ * `retiredCount`/`retiredBytes` say what that fold dropped while replaying. */
23
27
  export interface PreparedJournalInspection {
24
28
  receipt: JournalPreparationReceipt;
25
29
  recovery: PreparedJournalRecovery;
@@ -28,6 +32,8 @@ export interface PreparedJournalInspection {
28
32
  nextSeq: number;
29
33
  previousFrameHash: string;
30
34
  knownFileBytes: number;
35
+ retiredCount: number;
36
+ retiredBytes: number;
31
37
  }
32
38
  export declare function inspectPreparedJournal(input: {
33
39
  rootDir: string;
@@ -36,6 +42,7 @@ export declare function inspectPreparedJournal(input: {
36
42
  intentPath: string;
37
43
  partition: string;
38
44
  initialEpoch: string;
45
+ fold?: JournalFold;
39
46
  }): PreparedJournalInspection;
40
47
  export declare function fingerprintPreparedJournal(rootDir: string, partitionDir: string): Pick<JournalPreparationReceipt, "fingerprint" | "preparationIdentity">;
41
48
  //# sourceMappingURL=read-only-preparation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read-only-preparation.d.ts","sourceRoot":"","sources":["../src/read-only-preparation.ts"],"names":[],"mappings":"AAcA,OAAO,EAA2B,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE/E,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,IAAI,GAAG;QACrB,IAAI,EAAE,+BAA+B,CAAC;QACtC,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAC/C;IACE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEN,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,yBAAyB,CAAC;IACnC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;CACxB;AAkBD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;CACtB,GAAG,yBAAyB,CAgF5B;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GACnB,IAAI,CAAC,yBAAyB,EAAE,aAAa,GAAG,qBAAqB,CAAC,CAMxE"}
1
+ {"version":3,"file":"read-only-preparation.d.ts","sourceRoot":"","sources":["../src/read-only-preparation.ts"],"names":[],"mappings":"AAcA,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,cAAc,EAAE,IAAI,GAAG;QACrB,IAAI,EAAE,+BAA+B,CAAC;QACtC,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC;CACH;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,kBAAkB,EAAE,MAAM,CAAA;CAAE,GAC/C;IACE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,MAAM,EAAE,MAAM,CAAC;IACf,kBAAkB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEN;;+EAE+E;AAC/E,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,yBAAyB,CAAC;IACnC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AA6BD,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB,GAAG,yBAAyB,CAuF5B;AAyBD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,GACnB,IAAI,CAAC,yBAAyB,EAAE,aAAa,GAAG,qBAAqB,CAAC,CAMxE"}
@@ -1,58 +1,73 @@
1
1
  import { createHash } from "node:crypto";
2
- import { closeSync, constants, fstatSync, lstatSync, openSync, readFileSync, readdirSync, readlinkSync, realpathSync, } from "node:fs";
2
+ import { closeSync, constants, fstatSync, lstatSync, openSync, readSync, readdirSync, readlinkSync, realpathSync, } from "node:fs";
3
3
  import { dirname, join, resolve, sep } from "node:path";
4
- import { ZERO_HASH, replayFrames } from "./frame-codec.js";
4
+ import { ZERO_HASH } from "./frame-codec.js";
5
+ import { readFrames } from "./frame-reader.js";
6
+ /** Bytes are retained only for files small enough to be an append intent; the
7
+ * journal itself is hashed in chunks and later decoded positionally. */
8
+ const RETAINED_FILE_BYTES = 1024;
9
+ const HASH_CHUNK_BYTES = 1024 * 1024;
5
10
  export function inspectPreparedJournal(input) {
6
11
  const tree = snapshotTree(input.rootDir, input.partitionDir);
7
- const journalBytes = tree.files.get(input.journalPath);
8
- const intentBytes = tree.files.get(input.intentPath);
12
+ const journal = tree.files.get(input.journalPath);
13
+ const intent = tree.files.get(input.intentPath);
9
14
  const unexpected = [...tree.entries].filter((path) => path !== input.journalPath && path !== input.intentPath);
10
15
  let problem = tree.problems[0] ?? null;
11
16
  let byteOffset = 0;
12
17
  let deferredRepair = null;
13
- if (!problem &&
14
- journalBytes === undefined &&
15
- (intentBytes !== undefined || tree.partitionExists)) {
16
- if (intentBytes !== undefined || unexpected.length > 0) {
18
+ if (!problem && journal === undefined && (intent !== undefined || tree.partitionExists)) {
19
+ if (intent !== undefined || unexpected.length > 0) {
17
20
  problem = "journal file is missing while partition state exists";
18
21
  }
19
22
  }
20
- let logicalBytes = journalBytes ?? Buffer.alloc(0);
21
- if (!problem && intentBytes !== undefined) {
23
+ const size = journal?.size ?? 0;
24
+ let prefix = null;
25
+ if (!problem && intent !== undefined) {
22
26
  try {
23
- const intent = parseIntent(intentBytes);
24
- const prefix = replayFrames(logicalBytes.subarray(0, intent.offset), input.partition);
25
- if (intent.offset > logicalBytes.length ||
26
- logicalBytes.length > intent.offset + intent.length ||
27
- prefix.error ||
28
- prefix.incompleteOffset !== null) {
27
+ prefix = parseIntent(intent);
28
+ if (prefix.offset > size || size > prefix.offset + prefix.length) {
29
29
  problem = "append intent does not match the journal prefix";
30
- byteOffset = intent.offset;
31
- }
32
- else {
33
- deferredRepair = {
34
- kind: "discard_unacknowledged_append",
35
- discardedBytes: logicalBytes.length - intent.offset,
36
- };
37
- logicalBytes = logicalBytes.subarray(0, intent.offset);
30
+ byteOffset = prefix.offset;
38
31
  }
39
32
  }
40
33
  catch (error) {
41
34
  problem = `append intent is malformed: ${safeMessage(error)}`;
42
35
  }
43
36
  }
44
- const decoded = replayFrames(logicalBytes, input.partition);
45
- if (!problem && decoded.incompleteOffset !== null) {
37
+ let decoded = null;
38
+ if (!problem && journal !== undefined) {
39
+ try {
40
+ decoded = readObservedJournal(input.journalPath, journal, input.partition, {
41
+ limit: prefix?.offset,
42
+ fold: input.fold,
43
+ });
44
+ }
45
+ catch (error) {
46
+ problem = `journal cannot be read safely: ${safeMessage(error)}`;
47
+ }
48
+ }
49
+ if (!problem && prefix && decoded) {
50
+ if (decoded.error || decoded.incompleteOffset !== null) {
51
+ problem = "append intent does not match the journal prefix";
52
+ byteOffset = prefix.offset;
53
+ }
54
+ else {
55
+ deferredRepair = {
56
+ kind: "discard_unacknowledged_append",
57
+ discardedBytes: size - prefix.offset,
58
+ };
59
+ }
60
+ }
61
+ if (!problem && decoded?.incompleteOffset != null) {
46
62
  problem = "unexplained suffix without append intent";
47
63
  byteOffset = decoded.incompleteOffset;
48
64
  }
49
- if (!problem && decoded.error) {
65
+ if (!problem && decoded?.error) {
50
66
  problem = decoded.error.reason;
51
67
  byteOffset = decoded.error.offset;
52
68
  }
53
- const records = problem ? [] : decoded.records;
54
- const last = records.at(-1);
55
- const virtual = !tree.rootExists || !tree.partitionExists || journalBytes === undefined;
69
+ const ready = !problem && decoded ? decoded : null;
70
+ const virtual = !tree.rootExists || !tree.partitionExists || journal === undefined;
56
71
  return {
57
72
  receipt: {
58
73
  fingerprint: tree.fingerprint,
@@ -68,13 +83,33 @@ export function inspectPreparedJournal(input) {
68
83
  discardedTailBytes: 0,
69
84
  }
70
85
  : { status: "ready", discardedTailBytes: 0 },
71
- records,
72
- epoch: last?.epoch ?? input.initialEpoch,
73
- nextSeq: (last?.seq ?? 0) + 1,
74
- previousFrameHash: last?.frameHash ?? ZERO_HASH,
75
- knownFileBytes: logicalBytes.length,
86
+ records: ready?.retained ?? [],
87
+ epoch: ready?.epoch ?? input.initialEpoch,
88
+ nextSeq: ready?.nextSeq ?? 1,
89
+ previousFrameHash: ready?.previousFrameHash ?? ZERO_HASH,
90
+ knownFileBytes: deferredRepair ? prefix.offset : size,
91
+ retiredCount: ready?.retiredCount ?? 0,
92
+ retiredBytes: ready?.retiredBytes ?? 0,
76
93
  };
77
94
  }
95
+ /** Decode the journal that the tree walk already observed: the descriptor must
96
+ * still be the same file before and after the positional read. */
97
+ function readObservedJournal(path, observed, partition, options) {
98
+ const fd = openSync(path, constants.O_RDONLY | constants.O_NOFOLLOW);
99
+ try {
100
+ if (observationMetadata(fstatSync(fd, { bigint: true })) !== observed.observation) {
101
+ throw new Error("journal changed since it was inspected");
102
+ }
103
+ const decoded = readFrames(fd, partition, options);
104
+ if (observationMetadata(fstatSync(fd, { bigint: true })) !== observed.observation) {
105
+ throw new Error("journal changed while being decoded");
106
+ }
107
+ return decoded;
108
+ }
109
+ finally {
110
+ closeSync(fd);
111
+ }
112
+ }
78
113
  export function fingerprintPreparedJournal(rootDir, partitionDir) {
79
114
  const observed = snapshotTree(rootDir, partitionDir);
80
115
  return {
@@ -237,7 +272,8 @@ function inspectEntry(path, label, contentHash, identityHash, files, problems, a
237
272
  observationMetadata(opened) !== observationMetadata(stat)) {
238
273
  throw new Error("pathname identity changed while being read");
239
274
  }
240
- const bytes = readFileSync(fd);
275
+ const retain = opened.size <= BigInt(RETAINED_FILE_BYTES);
276
+ const bytes = hashDescriptor(fd, contentHash, retain);
241
277
  const after = fstatSync(fd, { bigint: true });
242
278
  if (BigInt(bytes.length) !== opened.size ||
243
279
  observationMetadata(opened) !== observationMetadata(after)) {
@@ -247,8 +283,11 @@ function inspectEntry(path, label, contentHash, identityHash, files, problems, a
247
283
  if (observationMetadata(stat) !== observationMetadata(namedAfter)) {
248
284
  throw new Error("pathname identity changed after being read");
249
285
  }
250
- files.set(path, bytes);
251
- contentHash.update(bytes);
286
+ files.set(path, {
287
+ size: Number(opened.size),
288
+ observation: observationMetadata(opened),
289
+ ...(retain ? { bytes: bytes.retained } : {}),
290
+ });
252
291
  }
253
292
  finally {
254
293
  closeSync(fd);
@@ -261,6 +300,24 @@ function inspectEntry(path, label, contentHash, identityHash, files, problems, a
261
300
  }
262
301
  return { kind: "file", stat };
263
302
  }
303
+ /** Stream the descriptor through the content hash in bounded chunks. The
304
+ * fingerprint is the digest of the same byte sequence a whole-file read would
305
+ * hash, without retaining the file. */
306
+ function hashDescriptor(fd, contentHash, retain) {
307
+ const chunk = Buffer.allocUnsafe(HASH_CHUNK_BYTES);
308
+ const kept = [];
309
+ let length = 0;
310
+ for (;;) {
311
+ const read = readSync(fd, chunk, 0, chunk.length, length);
312
+ if (read === 0)
313
+ break;
314
+ contentHash.update(chunk.subarray(0, read));
315
+ if (retain)
316
+ kept.push(Buffer.from(chunk.subarray(0, read)));
317
+ length += read;
318
+ }
319
+ return { length, retained: retain ? Buffer.concat(kept) : Buffer.alloc(0) };
320
+ }
264
321
  function finishSnapshot(input) {
265
322
  const fingerprint = input.contentHash.digest("hex");
266
323
  input.identityHash.update(`content\0${fingerprint}\0`);
@@ -345,10 +402,10 @@ function entryType(stat) {
345
402
  return "symlink";
346
403
  return "other";
347
404
  }
348
- function parseIntent(bytes) {
349
- if (bytes.length > 1024)
405
+ function parseIntent(intent) {
406
+ if (!intent.bytes || intent.size > RETAINED_FILE_BYTES)
350
407
  throw new Error("unsafe file");
351
- const value = JSON.parse(bytes.toString("utf8"));
408
+ const value = JSON.parse(intent.bytes.toString("utf8"));
352
409
  if (!isRecord(value) ||
353
410
  value.v !== 1 ||
354
411
  !Number.isSafeInteger(value.offset) ||
@@ -1 +1 @@
1
- {"version":3,"file":"read-only-preparation.js","sourceRoot":"","sources":["../src/read-only-preparation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"read-only-preparation.js","sourceRoot":"","sources":["../src/read-only-preparation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@claudexor/journal",
3
- "version": "3.11.0",
3
+ "version": "3.12.1",
4
4
  "license": "MIT",
5
5
  "description": "Checksummed append-only durable journal for daemon command and lifecycle state.",
6
6
  "type": "module",
@@ -16,7 +16,7 @@
16
16
  "dist"
17
17
  ],
18
18
  "dependencies": {
19
- "@claudexor/util": "3.11.0"
19
+ "@claudexor/util": "3.12.1"
20
20
  },
21
21
  "repository": {
22
22
  "type": "git",