@bjornpagen/bumbledb 1.0.1 → 1.2.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.
- package/COOKBOOK.md +176 -36
- package/README.md +70 -26
- package/dist/capacity.d.ts +15 -55
- package/dist/capacity.d.ts.map +1 -1
- package/dist/capacity.js +63 -12
- package/dist/capacity.js.map +1 -1
- package/dist/changes.d.ts +28 -6
- package/dist/changes.d.ts.map +1 -1
- package/dist/changes.js +119 -71
- package/dist/changes.js.map +1 -1
- package/dist/closed.d.ts +23 -51
- package/dist/closed.d.ts.map +1 -1
- package/dist/closed.js +110 -168
- package/dist/closed.js.map +1 -1
- package/dist/codec.d.ts +8 -14
- package/dist/codec.d.ts.map +1 -1
- package/dist/codec.js +113 -188
- package/dist/codec.js.map +1 -1
- package/dist/compile.d.ts +17 -18
- package/dist/compile.d.ts.map +1 -1
- package/dist/compile.js +41 -20
- package/dist/compile.js.map +1 -1
- package/dist/db-native.d.ts +76 -41
- package/dist/db-native.d.ts.map +1 -1
- package/dist/db-native.js +8 -0
- package/dist/db-native.js.map +1 -1
- package/dist/db.d.ts +61 -26
- package/dist/db.d.ts.map +1 -1
- package/dist/db.js +152 -85
- package/dist/db.js.map +1 -1
- package/dist/errors.d.ts +11 -3
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +13 -1
- package/dist/errors.js.map +1 -1
- package/dist/face.d.ts +19 -25
- package/dist/face.d.ts.map +1 -1
- package/dist/face.js +30 -24
- package/dist/face.js.map +1 -1
- package/dist/fields.d.ts +13 -26
- package/dist/fields.d.ts.map +1 -1
- package/dist/fields.js +89 -116
- package/dist/fields.js.map +1 -1
- package/dist/immutable.d.ts +10 -0
- package/dist/immutable.d.ts.map +1 -0
- package/dist/immutable.js +75 -0
- package/dist/immutable.js.map +1 -0
- package/dist/index.d.ts +16 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/internal/log.d.ts +6 -4
- package/dist/internal/log.d.ts.map +1 -1
- package/dist/internal/log.js +3 -1
- package/dist/internal/log.js.map +1 -1
- package/dist/law.d.ts +11 -11
- package/dist/law.d.ts.map +1 -1
- package/dist/law.js +1 -1
- package/dist/law.js.map +1 -1
- package/dist/lower.d.ts.map +1 -1
- package/dist/lower.js +11 -6
- package/dist/lower.js.map +1 -1
- package/dist/migration.d.ts +2 -3
- package/dist/migration.d.ts.map +1 -1
- package/dist/migration.js +5 -5
- package/dist/migration.js.map +1 -1
- package/dist/native.d.ts +2 -2
- package/dist/native.d.ts.map +1 -1
- package/dist/native.js.map +1 -1
- package/dist/query/atom.d.ts +1 -1
- package/dist/query/atom.d.ts.map +1 -1
- package/dist/query/atom.js.map +1 -1
- package/dist/query/description.d.ts +33 -0
- package/dist/query/description.d.ts.map +1 -0
- package/dist/query/description.js +302 -0
- package/dist/query/description.js.map +1 -0
- package/dist/query/lower.d.ts +60 -4
- package/dist/query/lower.d.ts.map +1 -1
- package/dist/query/lower.js +126 -161
- package/dist/query/lower.js.map +1 -1
- package/dist/query/parse-ir.d.ts +7 -2
- package/dist/query/parse-ir.d.ts.map +1 -1
- package/dist/query/parse-ir.js +240 -53
- package/dist/query/parse-ir.js.map +1 -1
- package/dist/query/run.d.ts.map +1 -1
- package/dist/query/run.js +8 -10
- package/dist/query/run.js.map +1 -1
- package/dist/query/scope.d.ts +3 -4
- package/dist/query/scope.d.ts.map +1 -1
- package/dist/query/scope.js +5 -10
- package/dist/query/scope.js.map +1 -1
- package/dist/relation.d.ts +22 -48
- package/dist/relation.d.ts.map +1 -1
- package/dist/relation.js +30 -82
- package/dist/relation.js.map +1 -1
- package/dist/result.d.ts +10 -25
- package/dist/result.d.ts.map +1 -1
- package/dist/result.js +7 -12
- package/dist/result.js.map +1 -1
- package/dist/rows.d.ts +11 -14
- package/dist/rows.d.ts.map +1 -1
- package/dist/rows.js +49 -237
- package/dist/rows.js.map +1 -1
- package/dist/runtime-codes.d.ts +1 -1
- package/dist/runtime-codes.d.ts.map +1 -1
- package/dist/runtime-codes.js +1 -2
- package/dist/runtime-codes.js.map +1 -1
- package/dist/runtime-errors.d.ts +27 -15
- package/dist/runtime-errors.d.ts.map +1 -1
- package/dist/runtime-errors.js +44 -8
- package/dist/runtime-errors.js.map +1 -1
- package/dist/runtime-native.d.ts +16 -34
- package/dist/runtime-native.d.ts.map +1 -1
- package/dist/runtime-native.js.map +1 -1
- package/dist/runtime.d.ts +11 -28
- package/dist/runtime.d.ts.map +1 -1
- package/dist/runtime.js +14 -54
- package/dist/runtime.js.map +1 -1
- package/dist/schema.d.ts +9 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +85 -24
- package/dist/schema.js.map +1 -1
- package/dist/selection.d.ts +27 -0
- package/dist/selection.d.ts.map +1 -0
- package/dist/selection.js +104 -0
- package/dist/selection.js.map +1 -0
- package/dist/shape.d.ts +6 -9
- package/dist/shape.d.ts.map +1 -1
- package/dist/statements.d.ts +17 -52
- package/dist/statements.d.ts.map +1 -1
- package/dist/statements.js +92 -111
- package/dist/statements.js.map +1 -1
- package/dist/values.d.ts +25 -0
- package/dist/values.d.ts.map +1 -0
- package/dist/values.js +203 -0
- package/dist/values.js.map +1 -0
- package/pack-provenance.json +3 -3
- package/package.json +4 -4
- package/src/capacity.ts +86 -76
- package/src/changes.ts +225 -94
- package/src/closed.ts +161 -314
- package/src/codec.ts +123 -213
- package/src/compile.ts +61 -38
- package/src/db-native.ts +73 -68
- package/src/db.ts +268 -165
- package/src/errors.ts +16 -1
- package/src/face.ts +44 -74
- package/src/fields.ts +100 -146
- package/src/immutable.ts +76 -0
- package/src/index.ts +38 -31
- package/src/internal/log.ts +4 -5
- package/src/law.ts +14 -14
- package/src/lower.ts +13 -10
- package/src/migration.ts +5 -12
- package/src/native.ts +2 -1
- package/src/query/atom.ts +1 -0
- package/src/query/description.ts +394 -0
- package/src/query/lower.ts +139 -173
- package/src/query/parse-ir.ts +247 -54
- package/src/query/run.ts +15 -9
- package/src/query/scope.ts +10 -18
- package/src/relation.ts +58 -142
- package/src/result.ts +16 -45
- package/src/rows.ts +57 -250
- package/src/runtime-codes.ts +1 -2
- package/src/runtime-errors.ts +48 -8
- package/src/runtime-native.ts +13 -46
- package/src/runtime.ts +51 -119
- package/src/schema.ts +99 -29
- package/src/selection.ts +124 -0
- package/src/shape.ts +9 -9
- package/src/statements.ts +138 -189
- package/src/values.ts +223 -0
package/dist/compile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../src/compile.ts"],"names":[],"mappings":"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"}
|
package/dist/db-native.d.ts
CHANGED
|
@@ -2,21 +2,21 @@
|
|
|
2
2
|
* Private database bridge over worker-owned core snapshots and results.
|
|
3
3
|
* The implementation lives in `ts/crate/src/`; this is not a public API.
|
|
4
4
|
* Every verb runs on the shared bounded executor, registers under its
|
|
5
|
-
* operation
|
|
6
|
-
* and completes through the registered callback; `runtimeCancel` cancels
|
|
5
|
+
* operation ownership and completes through the registered callback; `runtimeCancel` cancels
|
|
7
6
|
* and joins any of them. Close verbs report the real drain outcome through
|
|
8
7
|
* `CloseWire`.
|
|
9
8
|
*/
|
|
9
|
+
import type { ChangeCounts } from "./changes.js";
|
|
10
10
|
import type { DbHandle, ParsedQuery, QueryParam, SealedDescriptor, Violation } from "./native.js";
|
|
11
11
|
import { native } from "./native.js";
|
|
12
12
|
import type { CellValue } from "./rows.js";
|
|
13
|
-
import type { CloseWire, OperationHandle,
|
|
13
|
+
import type { CloseWire, OperationHandle, RuntimeHandle } from "./runtime-native.js";
|
|
14
14
|
import type { SchemaSpec } from "./spec.js";
|
|
15
15
|
export interface SnapshotHandle {
|
|
16
16
|
readonly __snapshot: unique symbol;
|
|
17
17
|
}
|
|
18
|
-
export interface
|
|
19
|
-
readonly
|
|
18
|
+
export interface PreparedHandle {
|
|
19
|
+
readonly __prepared: unique symbol;
|
|
20
20
|
}
|
|
21
21
|
export interface ResultHandle {
|
|
22
22
|
readonly __result: unique symbol;
|
|
@@ -30,6 +30,9 @@ export interface DraftHandle {
|
|
|
30
30
|
export interface ChangesHandle {
|
|
31
31
|
readonly __changes: unique symbol;
|
|
32
32
|
}
|
|
33
|
+
export interface ChangesCursorHandle {
|
|
34
|
+
readonly __changesCursor: unique symbol;
|
|
35
|
+
}
|
|
33
36
|
/** The core-local witness: catalog/store identity plus generation, never a StateStamp. */
|
|
34
37
|
export interface WitnessWire {
|
|
35
38
|
readonly store: string;
|
|
@@ -56,13 +59,24 @@ export type ApplyOutcomeWire = {
|
|
|
56
59
|
readonly witnessed: WitnessWire;
|
|
57
60
|
readonly current: WitnessWire;
|
|
58
61
|
};
|
|
62
|
+
export type JudgeOutcomeWire = {
|
|
63
|
+
readonly tag: "admitted";
|
|
64
|
+
readonly base: WitnessWire;
|
|
65
|
+
readonly changes: ChangeCounts;
|
|
66
|
+
} | {
|
|
67
|
+
readonly tag: "invariant-rejected";
|
|
68
|
+
readonly base: WitnessWire;
|
|
69
|
+
readonly changes: ChangeCounts;
|
|
70
|
+
readonly violations: readonly Violation[];
|
|
71
|
+
} | {
|
|
72
|
+
readonly tag: "moved";
|
|
73
|
+
readonly witnessed: WitnessWire;
|
|
74
|
+
readonly current: WitnessWire;
|
|
75
|
+
};
|
|
59
76
|
/** Bounded database diagnostics: measurements, never retained row payloads. */
|
|
60
77
|
export interface DbInspectionWire {
|
|
61
78
|
readonly generation: bigint;
|
|
62
|
-
readonly
|
|
63
|
-
readonly populatedBytes: bigint;
|
|
64
|
-
readonly diskBytes: bigint;
|
|
65
|
-
readonly residentEstimateBytes: bigint;
|
|
79
|
+
readonly storage: import("./db.js").StorageInspection;
|
|
66
80
|
readonly retainedOperations: bigint;
|
|
67
81
|
}
|
|
68
82
|
export interface SnapshotWire {
|
|
@@ -72,80 +86,101 @@ export interface SnapshotWire {
|
|
|
72
86
|
export interface ChangesWire {
|
|
73
87
|
readonly changes: ChangesHandle;
|
|
74
88
|
readonly fingerprint: string;
|
|
89
|
+
readonly counts: ChangeCounts;
|
|
90
|
+
readonly byteLength: bigint;
|
|
91
|
+
}
|
|
92
|
+
export interface ChangeRecordWire {
|
|
93
|
+
readonly relation: number;
|
|
94
|
+
readonly kind: "add" | "remove";
|
|
95
|
+
readonly values: readonly CellValue[];
|
|
75
96
|
}
|
|
76
97
|
export interface MutationReportWire {
|
|
77
98
|
readonly submitted: bigint;
|
|
78
99
|
readonly changed: bigint;
|
|
79
100
|
}
|
|
80
101
|
interface DbBridge {
|
|
81
|
-
/**
|
|
82
|
-
runtimeSchemaCompile(runtime: RuntimeHandle,
|
|
102
|
+
/** Schema admission/compilation; take yields detached descriptor data. */
|
|
103
|
+
runtimeSchemaCompile(runtime: RuntimeHandle, spec: SchemaSpec, callback: () => void): OperationHandle;
|
|
83
104
|
runtimeSchemaTake(operation: OperationHandle): SealedDescriptor;
|
|
84
105
|
/** Coherent owned snapshot acquisition off a managed database. */
|
|
85
|
-
runtimeDbSnapshot(db: DbHandle,
|
|
106
|
+
runtimeDbSnapshot(db: DbHandle, callback: () => void): OperationHandle;
|
|
86
107
|
runtimeSnapshotTake(operation: OperationHandle): SnapshotWire;
|
|
87
108
|
runtimeSnapshotClose(snapshot: SnapshotHandle, callback: (report: CloseWire) => void): void;
|
|
88
|
-
/**
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
109
|
+
/** One compiled query, with an independent share of the snapshot pin. */
|
|
110
|
+
runtimeSnapshotPrepare(snapshot: SnapshotHandle, query: ParsedQuery, callback: () => void): OperationHandle;
|
|
111
|
+
runtimePreparedTake(operation: OperationHandle): PreparedHandle;
|
|
112
|
+
runtimePreparedClose(prepared: PreparedHandle, callback: (report: CloseWire) => void): void;
|
|
113
|
+
runtimePreparedReleaseMemory(prepared: PreparedHandle, callback: () => void): OperationHandle;
|
|
92
114
|
/** Exact-key point read; take yields one owned row or null (absent). */
|
|
93
|
-
runtimeSnapshotGet(snapshot: SnapshotHandle,
|
|
115
|
+
runtimeSnapshotGet(snapshot: SnapshotHandle, relationId: number, keyStatementId: number, keyCells: readonly CellValue[], callback: () => void): OperationHandle;
|
|
94
116
|
runtimeRowTake(operation: OperationHandle): readonly CellValue[] | null;
|
|
95
117
|
/**
|
|
96
|
-
* Complete
|
|
97
|
-
*
|
|
98
|
-
* session variant reuses the caller's session. Either way the result is
|
|
118
|
+
* Complete execution. One-shot preparation drops before publication;
|
|
119
|
+
* explicit preparation reuses its compiled plan and scratch. The result is
|
|
99
120
|
* sealed and independent only after ALL evaluation succeeded.
|
|
100
121
|
*/
|
|
101
|
-
runtimeSnapshotExecute(snapshot: SnapshotHandle,
|
|
102
|
-
|
|
122
|
+
runtimeSnapshotExecute(snapshot: SnapshotHandle, query: ParsedQuery, params: readonly QueryParam[], callback: () => void): OperationHandle;
|
|
123
|
+
runtimePreparedExecute(prepared: PreparedHandle, params: readonly QueryParam[], callback: () => void): OperationHandle;
|
|
103
124
|
runtimeResultTake(operation: OperationHandle): ResultHandle;
|
|
104
125
|
runtimeResultClose(result: ResultHandle, callback: (report: CloseWire) => void): void;
|
|
105
126
|
/**
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
* backing available. Take yields owned row arrays.
|
|
127
|
+
* Explicit full materialization into final native row arrays.
|
|
128
|
+
* Failure leaves the sealed backing available.
|
|
109
129
|
*/
|
|
110
|
-
runtimeResultCollect(result: ResultHandle,
|
|
130
|
+
runtimeResultCollect(result: ResultHandle, callback: () => void): OperationHandle;
|
|
111
131
|
runtimeRowsTake(operation: OperationHandle): readonly (readonly CellValue[])[];
|
|
112
132
|
/**
|
|
113
133
|
* Atomic spend: moves the completed result's backing storage into one
|
|
114
134
|
* private cursor. A second transfer, or transfer racing collect,
|
|
115
135
|
* refuses (SpentHandle) before touching the backing.
|
|
116
136
|
*/
|
|
117
|
-
runtimeResultCursor(result: ResultHandle,
|
|
137
|
+
runtimeResultCursor(result: ResultHandle, callback: () => void): OperationHandle;
|
|
118
138
|
runtimeCursorTake(operation: OperationHandle): CursorHandle;
|
|
119
|
-
/** One
|
|
120
|
-
runtimeCursorNext(cursor: CursorHandle,
|
|
139
|
+
/** One bounded delivery batch; null is EOF. Execution is already complete. */
|
|
140
|
+
runtimeCursorNext(cursor: CursorHandle, callback: () => void): OperationHandle;
|
|
121
141
|
runtimePageTake(operation: OperationHandle): readonly (readonly CellValue[])[] | null;
|
|
122
142
|
runtimeCursorClose(cursor: CursorHandle, callback: (report: CloseWire) => void): void;
|
|
123
143
|
/** Database-free draft acquisition (schema compiled/checked on the executor). */
|
|
124
|
-
runtimeDraftOpen(runtime: RuntimeHandle,
|
|
144
|
+
runtimeDraftOpen(runtime: RuntimeHandle, spec: SchemaSpec, callback: () => void): OperationHandle;
|
|
125
145
|
runtimeDraftTake(operation: OperationHandle): DraftHandle;
|
|
126
146
|
/**
|
|
127
147
|
* One bounded ingestion chunk (rows × arity cells, row-major, sealed
|
|
128
|
-
* field order).
|
|
129
|
-
*
|
|
148
|
+
* field order). Rows are owned by the draft until finish. Failure spends
|
|
149
|
+
* the draft and starts tracked
|
|
130
150
|
* drain natively.
|
|
131
151
|
*/
|
|
132
|
-
runtimeDraftInsert(draft: DraftHandle,
|
|
133
|
-
runtimeDraftDelete(draft: DraftHandle,
|
|
152
|
+
runtimeDraftInsert(draft: DraftHandle, relationId: number, rows: bigint, cells: readonly CellValue[], callback: () => void): OperationHandle;
|
|
153
|
+
runtimeDraftDelete(draft: DraftHandle, relationId: number, rows: bigint, cells: readonly CellValue[], callback: () => void): OperationHandle;
|
|
134
154
|
runtimeReportTake(operation: OperationHandle): MutationReportWire;
|
|
135
155
|
/** Consumes the draft into an immutable schema-bound ChangeSet (one command, add-wins normalization). */
|
|
136
|
-
runtimeDraftFinish(draft: DraftHandle,
|
|
156
|
+
runtimeDraftFinish(draft: DraftHandle, callback: () => void): OperationHandle;
|
|
137
157
|
runtimeChangesTake(operation: OperationHandle): ChangesWire;
|
|
138
158
|
runtimeDraftClose(draft: DraftHandle, callback: (report: CloseWire) => void): void;
|
|
139
159
|
runtimeChangesClose(changes: ChangesHandle, callback: (report: CloseWire) => void): void;
|
|
160
|
+
/** Owned immutable bytes; parsing checks canonical order and the supplied schema. */
|
|
161
|
+
runtimeChangesBytes(changes: ChangesHandle, callback: () => void): OperationHandle;
|
|
162
|
+
runtimeChangesParse(runtime: RuntimeHandle, spec: SchemaSpec, bytes: Uint8Array, callback: () => void): OperationHandle;
|
|
163
|
+
/** One command's add-wins composition, not sequential application. */
|
|
164
|
+
runtimeChangesCompose(left: ChangesHandle, right: ChangesHandle, callback: () => void): OperationHandle;
|
|
165
|
+
/** Independent bounded traversal; never spends the immutable source. */
|
|
166
|
+
runtimeChangesCursor(changes: ChangesHandle, callback: () => void): OperationHandle;
|
|
167
|
+
runtimeChangesCursorTake(operation: OperationHandle): ChangesCursorHandle;
|
|
168
|
+
runtimeChangesCursorNext(cursor: ChangesCursorHandle, callback: () => void): OperationHandle;
|
|
169
|
+
runtimeChangePageTake(operation: OperationHandle): readonly ChangeRecordWire[] | null;
|
|
170
|
+
runtimeChangesCursorClose(cursor: ChangesCursorHandle, callback: (report: CloseWire) => void): void;
|
|
140
171
|
/** One immutable final-state admission/commit under the managed owner. */
|
|
141
|
-
runtimeDbApply(db: DbHandle,
|
|
172
|
+
runtimeDbApply(db: DbHandle, changes: ChangesHandle, expected: ExpectedWire, callback: () => void): OperationHandle;
|
|
142
173
|
runtimeApplyTake(operation: OperationHandle): ApplyOutcomeWire;
|
|
143
|
-
|
|
174
|
+
/** Same candidate admission as apply, aborted on its worker before returning. */
|
|
175
|
+
runtimeDbJudge(db: DbHandle, changes: ChangesHandle, expected: ExpectedWire, callback: () => void): OperationHandle;
|
|
176
|
+
runtimeJudgeTake(operation: OperationHandle): JudgeOutcomeWire;
|
|
177
|
+
runtimeDbInspect(db: DbHandle, callback: () => void): OperationHandle;
|
|
178
|
+
runtimeDbClearCache(db: DbHandle, callback: () => void): OperationHandle;
|
|
144
179
|
runtimeDbInspectTake(operation: OperationHandle): DbInspectionWire;
|
|
145
180
|
/** Shared canonical row codec (also the log/migration encoding). */
|
|
146
|
-
runtimeEncodeRows(runtime: RuntimeHandle,
|
|
181
|
+
runtimeEncodeRows(runtime: RuntimeHandle, spec: SchemaSpec, relationId: number, rows: bigint, cells: readonly CellValue[], callback: () => void): OperationHandle;
|
|
147
182
|
runtimeBytesTake(operation: OperationHandle): Uint8Array;
|
|
148
|
-
runtimeDecodeRows(runtime: RuntimeHandle,
|
|
183
|
+
runtimeDecodeRows(runtime: RuntimeHandle, spec: SchemaSpec, relationId: number, bytes: Uint8Array, callback: () => void): OperationHandle;
|
|
149
184
|
/**
|
|
150
185
|
* Read-only migration-codec integration over native `schema_file` and
|
|
151
186
|
* `migration::{plan, manifest}` through the shared executor: bounded
|
|
@@ -153,8 +188,8 @@ interface DbBridge {
|
|
|
153
188
|
* cancellable operation. Neither verb opens, initializes, freezes or
|
|
154
189
|
* migrates a database.
|
|
155
190
|
*/
|
|
156
|
-
runtimeMigrationSchema(runtime: RuntimeHandle,
|
|
157
|
-
runtimeMigrationRead(runtime: RuntimeHandle,
|
|
191
|
+
runtimeMigrationSchema(runtime: RuntimeHandle, spec: SchemaSpec, callback: () => void): OperationHandle;
|
|
192
|
+
runtimeMigrationRead(runtime: RuntimeHandle, request: Uint8Array, callback: () => void): OperationHandle;
|
|
158
193
|
}
|
|
159
194
|
export declare const dbNative: typeof native & DbBridge;
|
|
160
195
|
export {};
|
package/dist/db-native.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-native.d.ts","sourceRoot":"","sources":["../src/db-native.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"db-native.d.ts","sourceRoot":"","sources":["../src/db-native.ts"],"names":[],"mappings":"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"}
|
package/dist/db-native.js
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Private database bridge over worker-owned core snapshots and results.
|
|
3
|
+
* The implementation lives in `ts/crate/src/`; this is not a public API.
|
|
4
|
+
* Every verb runs on the shared bounded executor, registers under its
|
|
5
|
+
* operation ownership and completes through the registered callback; `runtimeCancel` cancels
|
|
6
|
+
* and joins any of them. Close verbs report the real drain outcome through
|
|
7
|
+
* `CloseWire`.
|
|
8
|
+
*/
|
|
1
9
|
import { native } from "#native.ts";
|
|
2
10
|
// The fresh-addon roster test pins this private declaration exactly as it
|
|
3
11
|
// pins #runtime-native.ts's; the two casts re-type the SAME single binding.
|
package/dist/db-native.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-native.js","sourceRoot":"","sources":["../src/db-native.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"db-native.js","sourceRoot":"","sources":["../src/db-native.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EAAE,MAAM,EAAE,MAAM,YAAY,CAAA;AAqOnC,0EAA0E;AAC1E,4EAA4E;AAC5E,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAkC,CAAA"}
|
package/dist/db.d.ts
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
import type { Scope } from "effect";
|
|
2
2
|
import { Effect, Option } from "effect";
|
|
3
|
-
import type { ChangeSet } from "./changes.js";
|
|
3
|
+
import type { ChangeCounts, ChangeSet } from "./changes.js";
|
|
4
4
|
import type { SchemaId } from "./compile.js";
|
|
5
5
|
import type { Violation } from "./native.js";
|
|
6
6
|
import type { ParamsRecord } from "./query/scope.js";
|
|
7
7
|
import type { Fact } from "./relation.js";
|
|
8
8
|
import type { CompleteResult } from "./result.js";
|
|
9
|
-
import type {
|
|
9
|
+
import type { NativeRuntime } from "./runtime.js";
|
|
10
10
|
import type { CloseReport } from "./runtime-errors.js";
|
|
11
11
|
import { DbError } from "./runtime-errors.js";
|
|
12
12
|
import type { AnySchema } from "./schema.js";
|
|
13
13
|
import type { Key, QueryTemplate, Rel } from "./shape.js";
|
|
14
|
+
import type { KeyStatement } from "./statements.js";
|
|
14
15
|
/**
|
|
15
16
|
* The core surface: `Db.create`/`Db.open`, scoped coherent
|
|
16
|
-
* `Snapshot`s, reusable `
|
|
17
|
+
* `Snapshot`s, reusable `PreparedQuery`s, the shared `QueryReader`
|
|
17
18
|
* capability, one immutable final-state `apply`, bounded `inspect` and
|
|
18
19
|
* honest `close`. Effect-only: every method constructs a lazy effect; all
|
|
19
|
-
* native work runs on the
|
|
20
|
-
*
|
|
20
|
+
* native work runs on the shared executor with cooperative cancellation.
|
|
21
|
+
* Resources are scoped with `CloseFailure`-defect
|
|
21
22
|
* finalizers. There is no Promise/sync/disposal twin, no transaction
|
|
22
23
|
* callback, no per-row fiber and no Proxy row anywhere.
|
|
23
24
|
*
|
|
@@ -32,15 +33,15 @@ interface CoreWitness {
|
|
|
32
33
|
readonly store: string;
|
|
33
34
|
readonly generation: bigint;
|
|
34
35
|
}
|
|
35
|
-
type
|
|
36
|
+
type WriteExpected = {
|
|
36
37
|
readonly kind: "any";
|
|
37
38
|
} | {
|
|
38
39
|
readonly kind: "exact";
|
|
39
40
|
readonly at: CoreWitness;
|
|
40
41
|
};
|
|
41
|
-
/**
|
|
42
|
-
type
|
|
43
|
-
readonly expected:
|
|
42
|
+
/** Expected-state intent shared by judgment and application. */
|
|
43
|
+
type WriteOptions = {
|
|
44
|
+
readonly expected: WriteExpected;
|
|
44
45
|
};
|
|
45
46
|
type ApplyOutcome = {
|
|
46
47
|
readonly kind: "accepted";
|
|
@@ -56,14 +57,39 @@ type ApplyOutcome = {
|
|
|
56
57
|
readonly witnessed: CoreWitness;
|
|
57
58
|
readonly current: CoreWitness;
|
|
58
59
|
};
|
|
59
|
-
/**
|
|
60
|
+
/** A judgment against the actual current base, not a promise about a later apply.
|
|
61
|
+
* A moved witness is unjudged and therefore carries no made-up change counts.
|
|
62
|
+
*/
|
|
63
|
+
type JudgeOutcome = {
|
|
64
|
+
readonly kind: "admitted";
|
|
65
|
+
readonly base: CoreWitness;
|
|
66
|
+
readonly changes: ChangeCounts;
|
|
67
|
+
} | {
|
|
68
|
+
readonly kind: "invariant-rejected";
|
|
69
|
+
readonly base: CoreWitness;
|
|
70
|
+
readonly changes: ChangeCounts;
|
|
71
|
+
readonly violations: readonly Violation[];
|
|
72
|
+
} | {
|
|
73
|
+
readonly kind: "moved";
|
|
74
|
+
readonly witnessed: CoreWitness;
|
|
75
|
+
readonly current: CoreWitness;
|
|
76
|
+
};
|
|
77
|
+
/** Storage measurements, not heap usage or mapped-page residency. */
|
|
78
|
+
interface StorageInspection {
|
|
79
|
+
/** Reserved virtual address range for the LMDB mapping. */
|
|
80
|
+
readonly virtualMapBytes: bigint;
|
|
81
|
+
/** File length; may include sparse regions and free pages. */
|
|
82
|
+
readonly populatedFileBytes: bigint;
|
|
83
|
+
/** LMDB's non-free branch, leaf and overflow pages. Not resident RAM. */
|
|
84
|
+
readonly nonFreePageBytes: bigint;
|
|
85
|
+
/** Allocated filesystem blocks, or null when the OS cannot report them. */
|
|
86
|
+
readonly allocatedDiskBytes: bigint | null;
|
|
87
|
+
}
|
|
88
|
+
/** Database diagnostics: measurements, never retained rows. */
|
|
60
89
|
interface DbInspection {
|
|
61
90
|
readonly schemaId: SchemaId;
|
|
62
91
|
readonly generation: bigint;
|
|
63
|
-
readonly
|
|
64
|
-
readonly populatedBytes: bigint;
|
|
65
|
-
readonly diskBytes: bigint;
|
|
66
|
-
readonly residentEstimateBytes: bigint;
|
|
92
|
+
readonly storage: StorageInspection;
|
|
67
93
|
readonly retainedOperations: bigint;
|
|
68
94
|
}
|
|
69
95
|
/**
|
|
@@ -74,23 +100,32 @@ interface DbInspection {
|
|
|
74
100
|
* no writable authority — never a `Db`, an `apply`, or a raw transaction.
|
|
75
101
|
*/
|
|
76
102
|
interface QueryReader<S extends AnySchema> {
|
|
77
|
-
get<
|
|
78
|
-
execute<P extends ParamsRecord, A>(query: QueryTemplate<S, P, A>, params: P
|
|
103
|
+
get<K extends KeyStatement<Rel<S>, readonly string[]>>(key: K, value: NoInfer<Key<K>>): Effect.Effect<Option.Option<Fact<K["owner"]>>, DbError>;
|
|
104
|
+
execute<P extends ParamsRecord, A>(query: QueryTemplate<S, P, A>, params: P): Effect.Effect<CompleteResult<A>, DbError, Scope.Scope>;
|
|
105
|
+
prepare<P extends ParamsRecord, A>(query: QueryTemplate<S, P, A>): Effect.Effect<PreparedQuery<P, A>, DbError, Scope.Scope>;
|
|
79
106
|
}
|
|
80
107
|
interface Snapshot<S extends AnySchema> extends QueryReader<S> {
|
|
81
108
|
readonly witness: CoreWitness;
|
|
82
|
-
session(work: ExecutionPolicy): Effect.Effect<ExecutionSession<S>, DbError, Scope.Scope>;
|
|
83
109
|
close(): Effect.Effect<CloseReport>;
|
|
84
110
|
}
|
|
85
|
-
|
|
86
|
-
|
|
111
|
+
/** One compiled plan and its reusable buffers, pinned to the preparing snapshot.
|
|
112
|
+
* Closing it releases its own state, not the snapshot or completed results.
|
|
113
|
+
*/
|
|
114
|
+
interface PreparedQuery<P extends ParamsRecord, A> {
|
|
115
|
+
execute(params: P): Effect.Effect<CompleteResult<A>, DbError, Scope.Scope>;
|
|
116
|
+
/** Drop reusable execution buffers, keeping the compiled query and snapshot. */
|
|
117
|
+
releaseMemory(): Effect.Effect<void, DbError>;
|
|
87
118
|
close(): Effect.Effect<CloseReport>;
|
|
88
119
|
}
|
|
89
120
|
interface Db<S extends AnySchema> {
|
|
90
121
|
readonly schemaId: SchemaId;
|
|
91
|
-
snapshot(
|
|
92
|
-
apply(changes: ChangeSet<S>, options:
|
|
93
|
-
|
|
122
|
+
snapshot(): Effect.Effect<Snapshot<S>, DbError, Scope.Scope>;
|
|
123
|
+
apply(changes: ChangeSet<S>, options: WriteOptions): Effect.Effect<ApplyOutcome, DbError>;
|
|
124
|
+
/** Briefly acquires the writer, judges and aborts. Stores no facts or generation. */
|
|
125
|
+
judge(changes: ChangeSet<S>, options: WriteOptions): Effect.Effect<JudgeOutcome, DbError>;
|
|
126
|
+
inspect(): Effect.Effect<DbInspection, DbError>;
|
|
127
|
+
/** Clear shared query caches without invalidating live snapshots or results. */
|
|
128
|
+
clearCache(): Effect.Effect<void, DbError>;
|
|
94
129
|
close(): Effect.Effect<CloseReport>;
|
|
95
130
|
}
|
|
96
131
|
/**
|
|
@@ -100,8 +135,8 @@ interface Db<S extends AnySchema> {
|
|
|
100
135
|
* implementation as `Schema.compile` — prior compilation is optional.
|
|
101
136
|
*/
|
|
102
137
|
declare const Db: Readonly<{
|
|
103
|
-
create<S extends AnySchema>(path: string, schema: S
|
|
104
|
-
open<S extends AnySchema>(path: string, schema: S
|
|
138
|
+
create<S extends AnySchema>(path: string, schema: S): Effect.Effect<Db<S>, DbError, NativeRuntime | Scope.Scope>;
|
|
139
|
+
open<S extends AnySchema>(path: string, schema: S): Effect.Effect<Db<S>, DbError, NativeRuntime | Scope.Scope>;
|
|
105
140
|
}>;
|
|
106
141
|
/**
|
|
107
142
|
* Private log integration: wraps a published core snapshot
|
|
@@ -117,8 +152,8 @@ declare const Db: Readonly<{
|
|
|
117
152
|
declare function internalPublishedReader<S extends AnySchema>(core: object, theory: S): {
|
|
118
153
|
readonly get: QueryReader<S>["get"];
|
|
119
154
|
readonly execute: QueryReader<S>["execute"];
|
|
120
|
-
readonly
|
|
155
|
+
readonly prepare: QueryReader<S>["prepare"];
|
|
121
156
|
};
|
|
122
|
-
export type {
|
|
157
|
+
export type { ApplyOutcome, CoreWitness, DbInspection, JudgeOutcome, PreparedQuery, QueryReader, Snapshot, StorageInspection, WriteExpected, WriteOptions };
|
|
123
158
|
export { Db, internalPublishedReader };
|
|
124
159
|
//# sourceMappingURL=db.d.ts.map
|
package/dist/db.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../src/db.ts"],"names":[],"mappings":"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"}
|