@microdelta/history 0.2.0 → 0.3.0

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 (36) hide show
  1. package/README.md +5 -4
  2. package/dist/api/history.alpha.d.ts +2 -2
  3. package/dist/api/history.root.raw.alpha.d.ts +50 -4
  4. package/dist/api/history.root.raw.beta.d.ts +6 -0
  5. package/dist/api/history.root.raw.public.d.ts +6 -0
  6. package/dist/api/history.root.raw.untrimmed.d.ts +50 -4
  7. package/dist/api/history.shared.alpha.d.ts +50 -4
  8. package/dist/api/history.shared.beta.d.ts +6 -0
  9. package/dist/api/history.shared.public.d.ts +6 -0
  10. package/dist/api/history.shared.untrimmed.d.ts +50 -4
  11. package/dist/api/history.untrimmed.d.ts +2 -2
  12. package/dist/src/durable/contracts.d.ts +4 -2
  13. package/dist/src/durable/contracts.d.ts.map +1 -1
  14. package/dist/src/durable/errors.d.ts +20 -4
  15. package/dist/src/durable/errors.d.ts.map +1 -1
  16. package/dist/src/durable/errors.js +13 -8
  17. package/dist/src/durable/errors.js.map +1 -1
  18. package/dist/src/durable/index.d.ts.map +1 -1
  19. package/dist/src/durable/index.js +80 -72
  20. package/dist/src/durable/index.js.map +1 -1
  21. package/dist/src/durable/schema.d.ts +13 -11
  22. package/dist/src/durable/schema.d.ts.map +1 -1
  23. package/dist/src/durable/schema.js +32 -23
  24. package/dist/src/durable/schema.js.map +1 -1
  25. package/dist/src/durable/selected-index.d.ts.map +1 -1
  26. package/dist/src/durable/selected-index.js +16 -4
  27. package/dist/src/durable/selected-index.js.map +1 -1
  28. package/dist/src/durable/sqlite-boundary.d.ts +11 -0
  29. package/dist/src/durable/sqlite-boundary.d.ts.map +1 -0
  30. package/dist/src/durable/sqlite-boundary.js +79 -0
  31. package/dist/src/durable/sqlite-boundary.js.map +1 -0
  32. package/dist/src/index.d.ts +2 -2
  33. package/dist/src/index.d.ts.map +1 -1
  34. package/dist/src/index.js +1 -1
  35. package/dist/src/index.js.map +1 -1
  36. package/package.json +3 -3
package/README.md CHANGED
@@ -25,9 +25,10 @@ single-file schema, distinct from the legacy Store, with:
25
25
 
26
26
  It stores Resolution's provenance and Supervision's journal records as
27
27
  versioned opaque records and never decides reuse eligibility, freshness or
28
- operation meaning. The durable schema is at version 2. Files at any other
29
- version, including version 1 files written before environment-scoped
30
- acceptances, promotions and the journal existed, are rejected by version; stored
31
- data is never migrated by guessing. See the
28
+ operation meaning. The durable schema is at version 3, which rejects replacement
29
+ of immutable records through primary keys, secondary unique keys and SQLite row
30
+ identity aliases. Existing version 1 and version 2 durable files, and files at
31
+ any other unsupported version, are explicitly rejected; no migration is
32
+ provided. The separate legacy Store schema is unchanged. See the
32
33
  [package map](../../docs/package-map.md) and the
33
34
  [durable History evidence record](../../docs/validation/m3-durable-history-2026-09-27.md).
@@ -1,3 +1,3 @@
1
1
  /** Entry-specific exports preserve one History type identity per release tier. */
2
- export { AttemptConflictError, AttemptStateError, DuplicateRowError, FingerprintAlgorithmMismatchError, HistoryClockError, HistoryIntegrityError, HistorySchemaError, InvalidStorePatchError, JournalConflictError, JournalVersionError, MissingRowError, StaleWriterError, createMemoryStore, openDurableHistory } from './history.shared.alpha.js';
3
- export type { Divergence, FieldRow, Fingerprint, GenerationPatch, GenerationRow, GenerationState, IAbandonRequest, IAcceptanceRecord, IAcceptanceRequest, IAddressSegment, IAttemptRecord, IAttemptRequest, IAttemptState, IClockCapability, ICompletedEnvelope, ICompletedNavigationReader, ICompletedProjectionReader, ICompletedResultReader, ICompletedResultReference, IDurableHistory, IDurableHistoryOptions, IHistoryScope, IJournalAddress, IJournalCommit, IJournalDeclaration, IJournalFormat, IJournalQuery, IJournalRecord, IJournalWrite, IOperation, IOperationJournal, IPromotionQuery, IPromotionRecord, IPromotionRequest, IRecoveryOutcome, IResultVerification, IScopedSubject, ISelectedFact, ISelectedFingerprintRequest, ISelectedFingerprintResolution, ISelectedNode, ISelectedReadRequest, ISha256Capability, ISqliteCapability, ISqliteConnection, ISqliteRow, ISqliteRunResult, ISqliteStatement, ISqliteSynchronousResult, ISqliteValue, IStageRequest, IValueProjectionDescriptor, IValueProjectionFact, IValueProjectionMember, IValueProjectionTraversal, IVersionedRecord, IVersionedSubject, IWriterAcquisition, IWriterAcquisitionRequest, IWriterContention, IWriterLease, IWriterRenewal, Identity, MemoryStoreOptions, Outcome, Path, RecordedRead, ResultKey, Store, StoreMetadata, Subject, SubjectPatch, SubjectRow } from './history.shared.alpha.js';
2
+ export { AttemptConflictError, AttemptStateError, DuplicateRowError, FingerprintAlgorithmMismatchError, HistoryBusyError, HistoryClockError, HistoryIntegrityError, HistorySchemaError, InvalidStorePatchError, JournalConflictError, JournalVersionError, MissingRowError, StaleWriterError, createMemoryStore, openDurableHistory } from './history.shared.alpha.js';
3
+ export type { Divergence, FieldRow, Fingerprint, GenerationPatch, GenerationRow, GenerationState, IAbandonRequest, IAcceptanceRecord, IAcceptanceRequest, IAddressSegment, IAttemptRecord, IAttemptRequest, IAttemptState, IClockCapability, ICompletedEnvelope, ICompletedNavigationReader, ICompletedProjectionReader, ICompletedResultReader, ICompletedResultReference, IDurableHistory, IDurableHistoryOptions, IHistoryScope, IJournalAddress, IJournalCommit, IJournalDeclaration, IJournalFormat, IJournalQuery, IJournalRecord, IJournalWrite, IOperation, IOperationJournal, IPromotionQuery, IPromotionRecord, IPromotionRequest, IRecoveryOutcome, IResultVerification, IScopedSubject, ISelectedFact, ISelectedFingerprintRequest, ISelectedFingerprintResolution, ISelectedNode, ISelectedReadRequest, ISha256Capability, ISqliteCapability, ISqliteConnection, ISqliteOpenOptions, ISqliteRow, ISqliteRunResult, ISqliteStatement, ISqliteSynchronousResult, ISqliteValue, IStageRequest, IValueProjectionDescriptor, IValueProjectionFact, IValueProjectionMember, IValueProjectionTraversal, IVersionedRecord, IVersionedSubject, IWriterAcquisition, IWriterAcquisitionRequest, IWriterContention, IWriterLease, IWriterRenewal, Identity, MemoryStoreOptions, Outcome, Path, RecordedRead, ResultKey, Store, StoreMetadata, Subject, SubjectPatch, SubjectRow } from './history.shared.alpha.js';
@@ -110,6 +110,21 @@ export declare interface GenerationRow {
110
110
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
111
111
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
112
112
 
113
+ /**
114
+ * A History-owned SQLite operation exhausted Machine's bounded busy wait.
115
+ * The exact host failure is retained as `cause`, so callers can distinguish
116
+ * contention from corruption or a stale writer without losing host detail.
117
+ * History wraps only failures raised at its SQLite capability boundary, never
118
+ * an application callback that happened to throw a Machine busy error.
119
+ * @alpha
120
+ */
121
+ export declare class HistoryBusyError extends Error {
122
+ /** The exact Machine failure that History received. */
123
+ readonly cause: SqliteBusyError;
124
+ /** Create History's boundary failure while retaining the original host error. */
125
+ constructor(message: string, cause: SqliteBusyError);
126
+ }
127
+
113
128
  /**
114
129
  * The injected clock failed to produce a nonnegative safe-integer epoch
115
130
  * millisecond reading, so the time-dependent operation was refused unchanged.
@@ -396,8 +411,10 @@ export declare type Identity = {
396
411
  * changes. Acquisition and renewal, the lease operations a waiter repeats,
397
412
  * report it as their `contended` outcome ({@link IWriterContention}), so
398
413
  * contention is never mistaken for ownership or staleness (PUB-005). Any other
399
- * operation fails with Machine's `SqliteBusyError`. Whether to try again is
400
- * always the caller's policy, never History's.
414
+ * History-owned SQLite operation, including opening and reads, fails with
415
+ * `HistoryBusyError` whose cause is the exact Machine `SqliteBusyError`.
416
+ * Callback-thrown failures retain their identity and do not become contention
417
+ * outcomes. Whether to try again is always the caller's policy, never History's.
401
418
  * @alpha
402
419
  */
403
420
  export declare interface IDurableHistory {
@@ -883,13 +900,13 @@ declare interface ISnapshotCapability {
883
900
  */
884
901
  export declare interface ISqliteCapability {
885
902
  /** Open or create the database file at `location` and return its owned connection. */
886
- openSqlite(location: string): ISqliteConnection;
903
+ openSqlite(location: string, options?: ISqliteOpenOptions): ISqliteConnection;
887
904
  }
888
905
 
889
906
  /**
890
907
  * An open connection to one persistent local SQLite database file. The caller
891
908
  * that opened it owns it and must close it. The host selects durable
892
- * configuration for every connection: write-ahead logging, FULL synchronous
909
+ * configuration for every connection: selected persistent journaling, FULL synchronous
893
910
  * commits, enforced foreign keys and a bounded wait on a locked database.
894
911
  * Callers supply every SQL statement and schema; the connection has no
895
912
  * knowledge of what the tables mean. A statement, exec or transaction that
@@ -928,6 +945,18 @@ export declare interface ISqliteConnection {
928
945
  close(): void;
929
946
  }
930
947
 
948
+ /** Host journal selection for dedicated storage; schema and retention remain caller-owned. @alpha */
949
+ export declare interface ISqliteOpenOptions {
950
+ /**
951
+ * WAL is the default. DELETE uses rollback journaling with FULL synchronous
952
+ * commits, allowing side-effect-free readers but permitting reader/writer
953
+ * contention. DELETE refuses existing WAL files instead of changing them.
954
+ * Cooperative owners must keep the pathname and journal layout stable from
955
+ * preflight through opening and for the lifetime of every handle.
956
+ */
957
+ readonly journalMode: 'wal' | 'delete';
958
+ }
959
+
931
960
  /**
932
961
  * One result row keyed by result column name. Rows are transport data owned by
933
962
  * the caller; they carry no driver type, prototype behavior or live link to
@@ -1269,6 +1298,23 @@ export declare type ResultKey = {
1269
1298
  subjectHash: string;
1270
1299
  };
1271
1300
 
1301
+ /**
1302
+ * The SQLite capability gave up waiting for another connection, possibly in
1303
+ * another process, to release a lock it needs. A host raises it, instead of
1304
+ * any driver-specific error, when its bounded busy wait is exhausted while
1305
+ * opening a store or running a statement or transaction. The failed operation
1306
+ * had no effect, so the caller may retry it or report contention to its own
1307
+ * caller; telling a busy store apart from a broken one is the purpose of this
1308
+ * type. Hosts never use it for corruption, misuse or other failures.
1309
+ * @alpha
1310
+ */
1311
+ declare class SqliteBusyError extends Error {
1312
+ /** How long, in milliseconds, the host waited before giving up. */
1313
+ readonly waitedMilliseconds: number;
1314
+ /** Create a busy-exhaustion failure that records the wait that was spent. */
1315
+ constructor(message: string, waitedMilliseconds: number, options?: ErrorOptions);
1316
+ }
1317
+
1272
1318
  /**
1273
1319
  * A presented writer lease no longer matches the durable holder, fence or
1274
1320
  * unexpired lease, so the mutation was rejected with no change other than the
@@ -94,6 +94,8 @@ export declare interface GenerationRow {
94
94
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
95
95
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
96
96
 
97
+ /* Excluded from this release type: HistoryBusyError */
98
+
97
99
  /* Excluded from this release type: HistoryClockError */
98
100
 
99
101
  /* Excluded from this release type: HistoryIntegrityError */
@@ -223,6 +225,8 @@ declare interface ISnapshotCapability {
223
225
 
224
226
  /* Excluded from this release type: ISqliteConnection */
225
227
 
228
+ /* Excluded from this release type: ISqliteOpenOptions */
229
+
226
230
  /* Excluded from this release type: ISqliteRow */
227
231
 
228
232
  /* Excluded from this release type: ISqliteRunResult */
@@ -332,6 +336,8 @@ export declare type ResultKey = {
332
336
  subjectHash: string;
333
337
  };
334
338
 
339
+ /* Excluded from this release type: SqliteBusyError */
340
+
335
341
  /* Excluded from this release type: StaleWriterError */
336
342
 
337
343
  /**
@@ -94,6 +94,8 @@ export declare interface GenerationRow {
94
94
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
95
95
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
96
96
 
97
+ /* Excluded from this release type: HistoryBusyError */
98
+
97
99
  /* Excluded from this release type: HistoryClockError */
98
100
 
99
101
  /* Excluded from this release type: HistoryIntegrityError */
@@ -223,6 +225,8 @@ declare interface ISnapshotCapability {
223
225
 
224
226
  /* Excluded from this release type: ISqliteConnection */
225
227
 
228
+ /* Excluded from this release type: ISqliteOpenOptions */
229
+
226
230
  /* Excluded from this release type: ISqliteRow */
227
231
 
228
232
  /* Excluded from this release type: ISqliteRunResult */
@@ -332,6 +336,8 @@ export declare type ResultKey = {
332
336
  subjectHash: string;
333
337
  };
334
338
 
339
+ /* Excluded from this release type: SqliteBusyError */
340
+
335
341
  /* Excluded from this release type: StaleWriterError */
336
342
 
337
343
  /**
@@ -110,6 +110,21 @@ export declare interface GenerationRow {
110
110
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
111
111
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
112
112
 
113
+ /**
114
+ * A History-owned SQLite operation exhausted Machine's bounded busy wait.
115
+ * The exact host failure is retained as `cause`, so callers can distinguish
116
+ * contention from corruption or a stale writer without losing host detail.
117
+ * History wraps only failures raised at its SQLite capability boundary, never
118
+ * an application callback that happened to throw a Machine busy error.
119
+ * @alpha
120
+ */
121
+ export declare class HistoryBusyError extends Error {
122
+ /** The exact Machine failure that History received. */
123
+ readonly cause: SqliteBusyError;
124
+ /** Create History's boundary failure while retaining the original host error. */
125
+ constructor(message: string, cause: SqliteBusyError);
126
+ }
127
+
113
128
  /**
114
129
  * The injected clock failed to produce a nonnegative safe-integer epoch
115
130
  * millisecond reading, so the time-dependent operation was refused unchanged.
@@ -396,8 +411,10 @@ export declare type Identity = {
396
411
  * changes. Acquisition and renewal, the lease operations a waiter repeats,
397
412
  * report it as their `contended` outcome ({@link IWriterContention}), so
398
413
  * contention is never mistaken for ownership or staleness (PUB-005). Any other
399
- * operation fails with Machine's `SqliteBusyError`. Whether to try again is
400
- * always the caller's policy, never History's.
414
+ * History-owned SQLite operation, including opening and reads, fails with
415
+ * `HistoryBusyError` whose cause is the exact Machine `SqliteBusyError`.
416
+ * Callback-thrown failures retain their identity and do not become contention
417
+ * outcomes. Whether to try again is always the caller's policy, never History's.
401
418
  * @alpha
402
419
  */
403
420
  export declare interface IDurableHistory {
@@ -883,13 +900,13 @@ declare interface ISnapshotCapability {
883
900
  */
884
901
  export declare interface ISqliteCapability {
885
902
  /** Open or create the database file at `location` and return its owned connection. */
886
- openSqlite(location: string): ISqliteConnection;
903
+ openSqlite(location: string, options?: ISqliteOpenOptions): ISqliteConnection;
887
904
  }
888
905
 
889
906
  /**
890
907
  * An open connection to one persistent local SQLite database file. The caller
891
908
  * that opened it owns it and must close it. The host selects durable
892
- * configuration for every connection: write-ahead logging, FULL synchronous
909
+ * configuration for every connection: selected persistent journaling, FULL synchronous
893
910
  * commits, enforced foreign keys and a bounded wait on a locked database.
894
911
  * Callers supply every SQL statement and schema; the connection has no
895
912
  * knowledge of what the tables mean. A statement, exec or transaction that
@@ -928,6 +945,18 @@ export declare interface ISqliteConnection {
928
945
  close(): void;
929
946
  }
930
947
 
948
+ /** Host journal selection for dedicated storage; schema and retention remain caller-owned. @alpha */
949
+ export declare interface ISqliteOpenOptions {
950
+ /**
951
+ * WAL is the default. DELETE uses rollback journaling with FULL synchronous
952
+ * commits, allowing side-effect-free readers but permitting reader/writer
953
+ * contention. DELETE refuses existing WAL files instead of changing them.
954
+ * Cooperative owners must keep the pathname and journal layout stable from
955
+ * preflight through opening and for the lifetime of every handle.
956
+ */
957
+ readonly journalMode: 'wal' | 'delete';
958
+ }
959
+
931
960
  /**
932
961
  * One result row keyed by result column name. Rows are transport data owned by
933
962
  * the caller; they carry no driver type, prototype behavior or live link to
@@ -1270,6 +1299,23 @@ export declare type ResultKey = {
1270
1299
  subjectHash: string;
1271
1300
  };
1272
1301
 
1302
+ /**
1303
+ * The SQLite capability gave up waiting for another connection, possibly in
1304
+ * another process, to release a lock it needs. A host raises it, instead of
1305
+ * any driver-specific error, when its bounded busy wait is exhausted while
1306
+ * opening a store or running a statement or transaction. The failed operation
1307
+ * had no effect, so the caller may retry it or report contention to its own
1308
+ * caller; telling a busy store apart from a broken one is the purpose of this
1309
+ * type. Hosts never use it for corruption, misuse or other failures.
1310
+ * @alpha
1311
+ */
1312
+ declare class SqliteBusyError extends Error {
1313
+ /** How long, in milliseconds, the host waited before giving up. */
1314
+ readonly waitedMilliseconds: number;
1315
+ /** Create a busy-exhaustion failure that records the wait that was spent. */
1316
+ constructor(message: string, waitedMilliseconds: number, options?: ErrorOptions);
1317
+ }
1318
+
1273
1319
  /**
1274
1320
  * A presented writer lease no longer matches the durable holder, fence or
1275
1321
  * unexpired lease, so the mutation was rejected with no change other than the
@@ -106,6 +106,21 @@ export declare interface GenerationRow {
106
106
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
107
107
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
108
108
 
109
+ /**
110
+ * A History-owned SQLite operation exhausted Machine's bounded busy wait.
111
+ * The exact host failure is retained as `cause`, so callers can distinguish
112
+ * contention from corruption or a stale writer without losing host detail.
113
+ * History wraps only failures raised at its SQLite capability boundary, never
114
+ * an application callback that happened to throw a Machine busy error.
115
+ * @alpha
116
+ */
117
+ export declare class HistoryBusyError extends Error {
118
+ /** The exact Machine failure that History received. */
119
+ readonly cause: SqliteBusyError;
120
+ /** Create History's boundary failure while retaining the original host error. */
121
+ constructor(message: string, cause: SqliteBusyError);
122
+ }
123
+
109
124
  /**
110
125
  * The injected clock failed to produce a nonnegative safe-integer epoch
111
126
  * millisecond reading, so the time-dependent operation was refused unchanged.
@@ -392,8 +407,10 @@ export declare type Identity = {
392
407
  * changes. Acquisition and renewal, the lease operations a waiter repeats,
393
408
  * report it as their `contended` outcome ({@link IWriterContention}), so
394
409
  * contention is never mistaken for ownership or staleness (PUB-005). Any other
395
- * operation fails with Machine's `SqliteBusyError`. Whether to try again is
396
- * always the caller's policy, never History's.
410
+ * History-owned SQLite operation, including opening and reads, fails with
411
+ * `HistoryBusyError` whose cause is the exact Machine `SqliteBusyError`.
412
+ * Callback-thrown failures retain their identity and do not become contention
413
+ * outcomes. Whether to try again is always the caller's policy, never History's.
397
414
  * @alpha
398
415
  */
399
416
  export declare interface IDurableHistory {
@@ -879,13 +896,13 @@ declare interface ISnapshotCapability {
879
896
  */
880
897
  export declare interface ISqliteCapability {
881
898
  /** Open or create the database file at `location` and return its owned connection. */
882
- openSqlite(location: string): ISqliteConnection;
899
+ openSqlite(location: string, options?: ISqliteOpenOptions): ISqliteConnection;
883
900
  }
884
901
 
885
902
  /**
886
903
  * An open connection to one persistent local SQLite database file. The caller
887
904
  * that opened it owns it and must close it. The host selects durable
888
- * configuration for every connection: write-ahead logging, FULL synchronous
905
+ * configuration for every connection: selected persistent journaling, FULL synchronous
889
906
  * commits, enforced foreign keys and a bounded wait on a locked database.
890
907
  * Callers supply every SQL statement and schema; the connection has no
891
908
  * knowledge of what the tables mean. A statement, exec or transaction that
@@ -924,6 +941,18 @@ export declare interface ISqliteConnection {
924
941
  close(): void;
925
942
  }
926
943
 
944
+ /** Host journal selection for dedicated storage; schema and retention remain caller-owned. @alpha */
945
+ export declare interface ISqliteOpenOptions {
946
+ /**
947
+ * WAL is the default. DELETE uses rollback journaling with FULL synchronous
948
+ * commits, allowing side-effect-free readers but permitting reader/writer
949
+ * contention. DELETE refuses existing WAL files instead of changing them.
950
+ * Cooperative owners must keep the pathname and journal layout stable from
951
+ * preflight through opening and for the lifetime of every handle.
952
+ */
953
+ readonly journalMode: 'wal' | 'delete';
954
+ }
955
+
927
956
  /**
928
957
  * One result row keyed by result column name. Rows are transport data owned by
929
958
  * the caller; they carry no driver type, prototype behavior or live link to
@@ -1265,6 +1294,23 @@ export declare type ResultKey = {
1265
1294
  subjectHash: string;
1266
1295
  };
1267
1296
 
1297
+ /**
1298
+ * The SQLite capability gave up waiting for another connection, possibly in
1299
+ * another process, to release a lock it needs. A host raises it, instead of
1300
+ * any driver-specific error, when its bounded busy wait is exhausted while
1301
+ * opening a store or running a statement or transaction. The failed operation
1302
+ * had no effect, so the caller may retry it or report contention to its own
1303
+ * caller; telling a busy store apart from a broken one is the purpose of this
1304
+ * type. Hosts never use it for corruption, misuse or other failures.
1305
+ * @alpha
1306
+ */
1307
+ declare class SqliteBusyError extends Error {
1308
+ /** How long, in milliseconds, the host waited before giving up. */
1309
+ readonly waitedMilliseconds: number;
1310
+ /** Create a busy-exhaustion failure that records the wait that was spent. */
1311
+ constructor(message: string, waitedMilliseconds: number, options?: ErrorOptions);
1312
+ }
1313
+
1268
1314
  /**
1269
1315
  * A presented writer lease no longer matches the durable holder, fence or
1270
1316
  * unexpired lease, so the mutation was rejected with no change other than the
@@ -90,6 +90,8 @@ export declare interface GenerationRow {
90
90
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
91
91
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
92
92
 
93
+ /* Excluded from this release type: HistoryBusyError */
94
+
93
95
  /* Excluded from this release type: HistoryClockError */
94
96
 
95
97
  /* Excluded from this release type: HistoryIntegrityError */
@@ -219,6 +221,8 @@ declare interface ISnapshotCapability {
219
221
 
220
222
  /* Excluded from this release type: ISqliteConnection */
221
223
 
224
+ /* Excluded from this release type: ISqliteOpenOptions */
225
+
222
226
  /* Excluded from this release type: ISqliteRow */
223
227
 
224
228
  /* Excluded from this release type: ISqliteRunResult */
@@ -328,6 +332,8 @@ export declare type ResultKey = {
328
332
  subjectHash: string;
329
333
  };
330
334
 
335
+ /* Excluded from this release type: SqliteBusyError */
336
+
331
337
  /* Excluded from this release type: StaleWriterError */
332
338
 
333
339
  /**
@@ -90,6 +90,8 @@ export declare interface GenerationRow {
90
90
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
91
91
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
92
92
 
93
+ /* Excluded from this release type: HistoryBusyError */
94
+
93
95
  /* Excluded from this release type: HistoryClockError */
94
96
 
95
97
  /* Excluded from this release type: HistoryIntegrityError */
@@ -219,6 +221,8 @@ declare interface ISnapshotCapability {
219
221
 
220
222
  /* Excluded from this release type: ISqliteConnection */
221
223
 
224
+ /* Excluded from this release type: ISqliteOpenOptions */
225
+
222
226
  /* Excluded from this release type: ISqliteRow */
223
227
 
224
228
  /* Excluded from this release type: ISqliteRunResult */
@@ -328,6 +332,8 @@ export declare type ResultKey = {
328
332
  subjectHash: string;
329
333
  };
330
334
 
335
+ /* Excluded from this release type: SqliteBusyError */
336
+
331
337
  /* Excluded from this release type: StaleWriterError */
332
338
 
333
339
  /**
@@ -106,6 +106,21 @@ export declare interface GenerationRow {
106
106
  /** Retained lifecycle states interpreted by repository and claim, not by storage. @public */
107
107
  export declare type GenerationState = 'claimed' | 'current' | 'superseded' | 'abandoned';
108
108
 
109
+ /**
110
+ * A History-owned SQLite operation exhausted Machine's bounded busy wait.
111
+ * The exact host failure is retained as `cause`, so callers can distinguish
112
+ * contention from corruption or a stale writer without losing host detail.
113
+ * History wraps only failures raised at its SQLite capability boundary, never
114
+ * an application callback that happened to throw a Machine busy error.
115
+ * @alpha
116
+ */
117
+ export declare class HistoryBusyError extends Error {
118
+ /** The exact Machine failure that History received. */
119
+ readonly cause: SqliteBusyError;
120
+ /** Create History's boundary failure while retaining the original host error. */
121
+ constructor(message: string, cause: SqliteBusyError);
122
+ }
123
+
109
124
  /**
110
125
  * The injected clock failed to produce a nonnegative safe-integer epoch
111
126
  * millisecond reading, so the time-dependent operation was refused unchanged.
@@ -392,8 +407,10 @@ export declare type Identity = {
392
407
  * changes. Acquisition and renewal, the lease operations a waiter repeats,
393
408
  * report it as their `contended` outcome ({@link IWriterContention}), so
394
409
  * contention is never mistaken for ownership or staleness (PUB-005). Any other
395
- * operation fails with Machine's `SqliteBusyError`. Whether to try again is
396
- * always the caller's policy, never History's.
410
+ * History-owned SQLite operation, including opening and reads, fails with
411
+ * `HistoryBusyError` whose cause is the exact Machine `SqliteBusyError`.
412
+ * Callback-thrown failures retain their identity and do not become contention
413
+ * outcomes. Whether to try again is always the caller's policy, never History's.
397
414
  * @alpha
398
415
  */
399
416
  export declare interface IDurableHistory {
@@ -879,13 +896,13 @@ declare interface ISnapshotCapability {
879
896
  */
880
897
  export declare interface ISqliteCapability {
881
898
  /** Open or create the database file at `location` and return its owned connection. */
882
- openSqlite(location: string): ISqliteConnection;
899
+ openSqlite(location: string, options?: ISqliteOpenOptions): ISqliteConnection;
883
900
  }
884
901
 
885
902
  /**
886
903
  * An open connection to one persistent local SQLite database file. The caller
887
904
  * that opened it owns it and must close it. The host selects durable
888
- * configuration for every connection: write-ahead logging, FULL synchronous
905
+ * configuration for every connection: selected persistent journaling, FULL synchronous
889
906
  * commits, enforced foreign keys and a bounded wait on a locked database.
890
907
  * Callers supply every SQL statement and schema; the connection has no
891
908
  * knowledge of what the tables mean. A statement, exec or transaction that
@@ -924,6 +941,18 @@ export declare interface ISqliteConnection {
924
941
  close(): void;
925
942
  }
926
943
 
944
+ /** Host journal selection for dedicated storage; schema and retention remain caller-owned. @alpha */
945
+ export declare interface ISqliteOpenOptions {
946
+ /**
947
+ * WAL is the default. DELETE uses rollback journaling with FULL synchronous
948
+ * commits, allowing side-effect-free readers but permitting reader/writer
949
+ * contention. DELETE refuses existing WAL files instead of changing them.
950
+ * Cooperative owners must keep the pathname and journal layout stable from
951
+ * preflight through opening and for the lifetime of every handle.
952
+ */
953
+ readonly journalMode: 'wal' | 'delete';
954
+ }
955
+
927
956
  /**
928
957
  * One result row keyed by result column name. Rows are transport data owned by
929
958
  * the caller; they carry no driver type, prototype behavior or live link to
@@ -1266,6 +1295,23 @@ export declare type ResultKey = {
1266
1295
  subjectHash: string;
1267
1296
  };
1268
1297
 
1298
+ /**
1299
+ * The SQLite capability gave up waiting for another connection, possibly in
1300
+ * another process, to release a lock it needs. A host raises it, instead of
1301
+ * any driver-specific error, when its bounded busy wait is exhausted while
1302
+ * opening a store or running a statement or transaction. The failed operation
1303
+ * had no effect, so the caller may retry it or report contention to its own
1304
+ * caller; telling a busy store apart from a broken one is the purpose of this
1305
+ * type. Hosts never use it for corruption, misuse or other failures.
1306
+ * @alpha
1307
+ */
1308
+ declare class SqliteBusyError extends Error {
1309
+ /** How long, in milliseconds, the host waited before giving up. */
1310
+ readonly waitedMilliseconds: number;
1311
+ /** Create a busy-exhaustion failure that records the wait that was spent. */
1312
+ constructor(message: string, waitedMilliseconds: number, options?: ErrorOptions);
1313
+ }
1314
+
1269
1315
  /**
1270
1316
  * A presented writer lease no longer matches the durable holder, fence or
1271
1317
  * unexpired lease, so the mutation was rejected with no change other than the
@@ -1,3 +1,3 @@
1
1
  /** Entry-specific exports preserve one History type identity per release tier. */
2
- export { AttemptConflictError, AttemptStateError, DuplicateRowError, FingerprintAlgorithmMismatchError, HistoryClockError, HistoryIntegrityError, HistorySchemaError, InvalidStorePatchError, JournalConflictError, JournalVersionError, MissingRowError, StaleWriterError, createMemoryStore, openDurableHistory } from './history.shared.untrimmed.js';
3
- export type { Divergence, FieldRow, Fingerprint, GenerationPatch, GenerationRow, GenerationState, IAbandonRequest, IAcceptanceRecord, IAcceptanceRequest, IAddressSegment, IAttemptRecord, IAttemptRequest, IAttemptState, IClockCapability, ICompletedEnvelope, ICompletedNavigationReader, ICompletedProjectionReader, ICompletedResultReader, ICompletedResultReference, IDurableHistory, IDurableHistoryOptions, IHistoryScope, IJournalAddress, IJournalCommit, IJournalDeclaration, IJournalFormat, IJournalQuery, IJournalRecord, IJournalWrite, IOperation, IOperationJournal, IPromotionQuery, IPromotionRecord, IPromotionRequest, IRecoveryOutcome, IResultVerification, IScopedSubject, ISelectedFact, ISelectedFingerprintRequest, ISelectedFingerprintResolution, ISelectedNode, ISelectedReadRequest, ISha256Capability, ISqliteCapability, ISqliteConnection, ISqliteRow, ISqliteRunResult, ISqliteStatement, ISqliteSynchronousResult, ISqliteValue, IStageRequest, IValueProjectionDescriptor, IValueProjectionFact, IValueProjectionMember, IValueProjectionTraversal, IVersionedRecord, IVersionedSubject, IWriterAcquisition, IWriterAcquisitionRequest, IWriterContention, IWriterLease, IWriterRenewal, Identity, MemoryStoreOptions, Outcome, Path, RecordedRead, ResultKey, Store, StoreMetadata, Subject, SubjectPatch, SubjectRow } from './history.shared.untrimmed.js';
2
+ export { AttemptConflictError, AttemptStateError, DuplicateRowError, FingerprintAlgorithmMismatchError, HistoryBusyError, HistoryClockError, HistoryIntegrityError, HistorySchemaError, InvalidStorePatchError, JournalConflictError, JournalVersionError, MissingRowError, StaleWriterError, createMemoryStore, openDurableHistory } from './history.shared.untrimmed.js';
3
+ export type { Divergence, FieldRow, Fingerprint, GenerationPatch, GenerationRow, GenerationState, IAbandonRequest, IAcceptanceRecord, IAcceptanceRequest, IAddressSegment, IAttemptRecord, IAttemptRequest, IAttemptState, IClockCapability, ICompletedEnvelope, ICompletedNavigationReader, ICompletedProjectionReader, ICompletedResultReader, ICompletedResultReference, IDurableHistory, IDurableHistoryOptions, IHistoryScope, IJournalAddress, IJournalCommit, IJournalDeclaration, IJournalFormat, IJournalQuery, IJournalRecord, IJournalWrite, IOperation, IOperationJournal, IPromotionQuery, IPromotionRecord, IPromotionRequest, IRecoveryOutcome, IResultVerification, IScopedSubject, ISelectedFact, ISelectedFingerprintRequest, ISelectedFingerprintResolution, ISelectedNode, ISelectedReadRequest, ISha256Capability, ISqliteCapability, ISqliteConnection, ISqliteOpenOptions, ISqliteRow, ISqliteRunResult, ISqliteStatement, ISqliteSynchronousResult, ISqliteValue, IStageRequest, IValueProjectionDescriptor, IValueProjectionFact, IValueProjectionMember, IValueProjectionTraversal, IVersionedRecord, IVersionedSubject, IWriterAcquisition, IWriterAcquisitionRequest, IWriterContention, IWriterLease, IWriterRenewal, Identity, MemoryStoreOptions, Outcome, Path, RecordedRead, ResultKey, Store, StoreMetadata, Subject, SubjectPatch, SubjectRow } from './history.shared.untrimmed.js';
@@ -524,8 +524,10 @@ export interface IDurableHistoryOptions {
524
524
  * changes. Acquisition and renewal, the lease operations a waiter repeats,
525
525
  * report it as their `contended` outcome ({@link IWriterContention}), so
526
526
  * contention is never mistaken for ownership or staleness (PUB-005). Any other
527
- * operation fails with Machine's `SqliteBusyError`. Whether to try again is
528
- * always the caller's policy, never History's.
527
+ * History-owned SQLite operation, including opening and reads, fails with
528
+ * `HistoryBusyError` whose cause is the exact Machine `SqliteBusyError`.
529
+ * Callback-thrown failures retain their identity and do not become contention
530
+ * outcomes. Whether to try again is always the caller's policy, never History's.
529
531
  * @alpha
530
532
  */
531
533
  export interface IDurableHistory {
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/durable/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../../src/durable/contracts.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,29 @@
1
1
  /**
2
2
  * Distinct failure classes of the durable History authority. Diagnostics must
3
- * distinguish stale ownership, conflicting execution identity, invalid
4
- * lifecycle transitions, unsupported storage, journal compare-and-set
5
- * conflicts, undeclared journal record versions and integrity failures rather
6
- * than report a generic miss (execution.md, required validation fixtures).
3
+ * distinguish exhausted SQLite contention, stale ownership, conflicting
4
+ * execution identity, invalid lifecycle transitions, unsupported storage,
5
+ * journal compare-and-set conflicts, undeclared journal record versions and
6
+ * integrity failures rather than report a generic miss (execution.md,
7
+ * required validation fixtures).
7
8
  * None of these classes extends `TypeError`, so a reader never mistakes a
8
9
  * storage failure for Value's rejection of a selection's shape.
9
10
  * @packageDocumentation
10
11
  */
12
+ import type { SqliteBusyError } from '@microdelta/machine';
13
+ /**
14
+ * A History-owned SQLite operation exhausted Machine's bounded busy wait.
15
+ * The exact host failure is retained as `cause`, so callers can distinguish
16
+ * contention from corruption or a stale writer without losing host detail.
17
+ * History wraps only failures raised at its SQLite capability boundary, never
18
+ * an application callback that happened to throw a Machine busy error.
19
+ * @alpha
20
+ */
21
+ export declare class HistoryBusyError extends Error {
22
+ /** The exact Machine failure that History received. */
23
+ readonly cause: SqliteBusyError;
24
+ /** Create History's boundary failure while retaining the original host error. */
25
+ constructor(message: string, cause: SqliteBusyError);
26
+ }
11
27
  /**
12
28
  * The store's contents contradict History's invariants or the caller's exact
13
29
  * reference: a malformed, missing or wrong-scope reference, a dangling
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/durable/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,6DAA6D;gBAC1C,OAAO,EAAE,MAAM;CAInC;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,2DAA2D;gBACxC,OAAO,EAAE,MAAM;CAInC;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,oEAAoE;gBACjD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,uEAAuE;gBACpD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,wEAAwE;gBACrD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,wDAAwD;gBACrC,OAAO,EAAE,MAAM;CAInC;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,oEAAoE;gBACjD,OAAO,EAAE,MAAM;CAInC;AAED;;;;;;;GAOG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,sEAAsE;gBACnD,OAAO,EAAE,MAAM;CAInC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../src/durable/errors.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D;;;;;;;GAOG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,uDAAuD;IACvD,SAAwB,KAAK,EAAE,eAAe,CAAC;IAE/C,iFAAiF;gBAC9D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe;CAI3D;AAED;;;;;;;GAOG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAC9C,6DAA6D;gBAC1C,OAAO,EAAE,MAAM;CAInC;AAED;;;;;GAKG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,2DAA2D;gBACxC,OAAO,EAAE,MAAM;CAInC;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IACzC,oEAAoE;gBACjD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,uEAAuE;gBACpD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,wEAAwE;gBACrD,OAAO,EAAE,MAAM;CAInC;AAED;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;IAC1C,wDAAwD;gBACrC,OAAO,EAAE,MAAM;CAInC;AAED;;;;;;;GAOG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,oEAAoE;gBACjD,OAAO,EAAE,MAAM;CAInC;AAED;;;;;;;GAOG;AACH,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,sEAAsE;gBACnD,OAAO,EAAE,MAAM;CAInC"}