@bjornpagen/bumbledb-log 0.20.2 → 1.0.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/README.md +275 -114
- package/dist/admin.d.ts +24 -0
- package/dist/admin.d.ts.map +1 -0
- package/dist/admin.js +12 -0
- package/dist/admin.js.map +1 -0
- package/dist/bridge.d.ts +30 -0
- package/dist/bridge.d.ts.map +1 -0
- package/dist/bridge.js +92 -0
- package/dist/bridge.js.map +1 -0
- package/dist/codes.d.ts +11 -0
- package/dist/codes.d.ts.map +1 -0
- package/dist/codes.js +53 -0
- package/dist/codes.js.map +1 -0
- package/dist/command.d.ts +21 -0
- package/dist/command.d.ts.map +1 -0
- package/dist/command.js +12 -0
- package/dist/command.js.map +1 -0
- package/dist/errors.d.ts +78 -197
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +144 -114
- package/dist/errors.js.map +1 -1
- package/dist/history.d.ts +22 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +12 -0
- package/dist/history.js.map +1 -0
- package/dist/identity.d.ts +144 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +223 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +24 -31
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +16 -21
- package/dist/index.js.map +1 -1
- package/dist/machine.d.ts +151 -0
- package/dist/machine.d.ts.map +1 -0
- package/dist/machine.js +1128 -0
- package/dist/machine.js.map +1 -0
- package/dist/migration-ops.d.ts +20 -0
- package/dist/migration-ops.d.ts.map +1 -0
- package/dist/migration-ops.js +7 -0
- package/dist/migration-ops.js.map +1 -0
- package/dist/migrations/bin.d.ts +3 -0
- package/dist/migrations/bin.d.ts.map +1 -0
- package/dist/migrations/bin.js +43 -0
- package/dist/migrations/bin.js.map +1 -0
- package/dist/migrations/canonical.d.ts +40 -0
- package/dist/migrations/canonical.d.ts.map +1 -0
- package/dist/migrations/canonical.js +156 -0
- package/dist/migrations/canonical.js.map +1 -0
- package/dist/migrations/cli.d.ts +32 -0
- package/dist/migrations/cli.d.ts.map +1 -0
- package/dist/migrations/cli.js +147 -0
- package/dist/migrations/cli.js.map +1 -0
- package/dist/migrations/codec.d.ts +74 -0
- package/dist/migrations/codec.d.ts.map +1 -0
- package/dist/migrations/codec.js +2 -0
- package/dist/migrations/codec.js.map +1 -0
- package/dist/migrations/decode.d.ts +16 -0
- package/dist/migrations/decode.d.ts.map +1 -0
- package/dist/migrations/decode.js +302 -0
- package/dist/migrations/decode.js.map +1 -0
- package/dist/migrations/diff.d.ts +39 -0
- package/dist/migrations/diff.d.ts.map +1 -0
- package/dist/migrations/diff.js +385 -0
- package/dist/migrations/diff.js.map +1 -0
- package/dist/migrations/expr.d.ts +22 -0
- package/dist/migrations/expr.d.ts.map +1 -0
- package/dist/migrations/expr.js +228 -0
- package/dist/migrations/expr.js.map +1 -0
- package/dist/migrations/fail.d.ts +34 -0
- package/dist/migrations/fail.d.ts.map +1 -0
- package/dist/migrations/fail.js +69 -0
- package/dist/migrations/fail.js.map +1 -0
- package/dist/migrations/fsops.d.ts +37 -0
- package/dist/migrations/fsops.d.ts.map +1 -0
- package/dist/migrations/fsops.js +222 -0
- package/dist/migrations/fsops.js.map +1 -0
- package/dist/migrations/generate.d.ts +11 -0
- package/dist/migrations/generate.d.ts.map +1 -0
- package/dist/migrations/generate.js +479 -0
- package/dist/migrations/generate.js.map +1 -0
- package/dist/migrations/index.d.ts +25 -0
- package/dist/migrations/index.d.ts.map +1 -0
- package/dist/migrations/index.js +6 -0
- package/dist/migrations/index.js.map +1 -0
- package/dist/migrations/intent.d.ts +86 -0
- package/dist/migrations/intent.d.ts.map +1 -0
- package/dist/migrations/intent.js +97 -0
- package/dist/migrations/intent.js.map +1 -0
- package/dist/migrations/lock.d.ts +27 -0
- package/dist/migrations/lock.d.ts.map +1 -0
- package/dist/migrations/lock.js +14 -0
- package/dist/migrations/lock.js.map +1 -0
- package/dist/migrations/native.d.ts +37 -0
- package/dist/migrations/native.d.ts.map +1 -0
- package/dist/migrations/native.js +135 -0
- package/dist/migrations/native.js.map +1 -0
- package/dist/migrations/repo.d.ts +38 -0
- package/dist/migrations/repo.d.ts.map +1 -0
- package/dist/migrations/repo.js +191 -0
- package/dist/migrations/repo.js.map +1 -0
- package/dist/migrations/theory.d.ts +21 -0
- package/dist/migrations/theory.d.ts.map +1 -0
- package/dist/migrations/theory.js +107 -0
- package/dist/migrations/theory.js.map +1 -0
- package/dist/migrations/types.d.ts +243 -0
- package/dist/migrations/types.d.ts.map +1 -0
- package/dist/migrations/types.js +2 -0
- package/dist/migrations/types.js.map +1 -0
- package/dist/migrations/workflow.d.ts +11 -0
- package/dist/migrations/workflow.d.ts.map +1 -0
- package/dist/migrations/workflow.js +14 -0
- package/dist/migrations/workflow.js.map +1 -0
- package/dist/native.d.ts +600 -0
- package/dist/native.d.ts.map +1 -0
- package/dist/native.js +8 -0
- package/dist/native.js.map +1 -0
- package/dist/options.d.ts +106 -0
- package/dist/options.d.ts.map +1 -0
- package/dist/options.js +2 -0
- package/dist/options.js.map +1 -0
- package/dist/outcome.d.ts +291 -0
- package/dist/outcome.d.ts.map +1 -0
- package/dist/outcome.js +2 -0
- package/dist/outcome.js.map +1 -0
- package/dist/production.d.ts +12 -0
- package/dist/production.d.ts.map +1 -0
- package/dist/production.js +29 -0
- package/dist/production.js.map +1 -0
- package/dist/schema.d.ts +10 -0
- package/dist/schema.d.ts.map +1 -0
- package/dist/schema.js +9 -0
- package/dist/schema.js.map +1 -0
- package/dist/surface.d.ts +80 -0
- package/dist/surface.d.ts.map +1 -0
- package/dist/surface.js +2 -0
- package/dist/surface.js.map +1 -0
- package/dist/tenants.d.ts +20 -52
- package/dist/tenants.d.ts.map +1 -1
- package/dist/tenants.js +11 -330
- package/dist/tenants.js.map +1 -1
- package/pack-provenance.json +7 -0
- package/package.json +20 -23
- package/dist/braids.d.ts +0 -28
- package/dist/braids.d.ts.map +0 -1
- package/dist/braids.js +0 -45
- package/dist/braids.js.map +0 -1
- package/dist/bytes.d.ts +0 -26
- package/dist/bytes.d.ts.map +0 -1
- package/dist/bytes.js +0 -86
- package/dist/bytes.js.map +0 -1
- package/dist/chain.d.ts +0 -56
- package/dist/chain.d.ts.map +0 -1
- package/dist/chain.js +0 -137
- package/dist/chain.js.map +0 -1
- package/dist/codec.d.ts +0 -71
- package/dist/codec.d.ts.map +0 -1
- package/dist/codec.js +0 -179
- package/dist/codec.js.map +0 -1
- package/dist/descriptor.d.ts +0 -61
- package/dist/descriptor.d.ts.map +0 -1
- package/dist/descriptor.js +0 -160
- package/dist/descriptor.js.map +0 -1
- package/dist/keys.d.ts +0 -52
- package/dist/keys.d.ts.map +0 -1
- package/dist/keys.js +0 -166
- package/dist/keys.js.map +0 -1
- package/dist/manifest.d.ts +0 -42
- package/dist/manifest.d.ts.map +0 -1
- package/dist/manifest.js +0 -116
- package/dist/manifest.js.map +0 -1
- package/dist/replica.d.ts +0 -154
- package/dist/replica.d.ts.map +0 -1
- package/dist/replica.js +0 -820
- package/dist/replica.js.map +0 -1
- package/dist/store-s3.d.ts +0 -31
- package/dist/store-s3.d.ts.map +0 -1
- package/dist/store-s3.js +0 -299
- package/dist/store-s3.js.map +0 -1
- package/dist/store.d.ts +0 -129
- package/dist/store.d.ts.map +0 -1
- package/dist/store.js +0 -577
- package/dist/store.js.map +0 -1
- package/dist/tilde-family.json +0 -21
- package/dist/vector.d.ts +0 -31
- package/dist/vector.d.ts.map +0 -1
- package/dist/vector.js +0 -87
- package/dist/vector.js.map +0 -1
- package/dist/writer.d.ts +0 -106
- package/dist/writer.d.ts.map +0 -1
- package/dist/writer.js +0 -677
- package/dist/writer.js.map +0 -1
package/dist/identity.js
ADDED
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Log-layer identity values: small owned immutable data, never handles.
|
|
3
|
+
* `DatabaseId`/`IncarnationId`/`RequestId`/`OperationId` are Uuid-backed
|
|
4
|
+
* roles (canonical UUID); digests are full 32-byte roles
|
|
5
|
+
* (64 lowercase hex). The distinct roles are nominal brands: an entity ID is
|
|
6
|
+
* not a request ID, and neither is a history coordinate. Parsers here are
|
|
7
|
+
* the bounded log boundary codecs for HTTP/session tokens — pure, `Result`-
|
|
8
|
+
* returning, no I/O, no mint/generate; `SchemaId` and `Uuid` remain
|
|
9
|
+
* core-owned imports. Retry uses the caller-supplied bytes again.
|
|
10
|
+
*/
|
|
11
|
+
import { Uuid } from "@bjornpagen/bumbledb";
|
|
12
|
+
import { Result } from "effect";
|
|
13
|
+
import { invalidInput } from "#errors.ts";
|
|
14
|
+
const U64_MAX = 0xffffffffffffffffn;
|
|
15
|
+
function lowercaseHex(raw, length) {
|
|
16
|
+
if (raw.length !== length) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
for (let i = 0; i < raw.length; i++) {
|
|
20
|
+
const code = raw.charCodeAt(i);
|
|
21
|
+
const digit = code >= 0x30 && code <= 0x39;
|
|
22
|
+
const lower = code >= 0x61 && code <= 0x66;
|
|
23
|
+
if (!digit && !lower) {
|
|
24
|
+
return false;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
function canonicalUuid(operation, raw) {
|
|
30
|
+
return Uuid.isUuid(raw) ? Result.succeed(raw) : Result.fail(invalidInput(operation));
|
|
31
|
+
}
|
|
32
|
+
function hex64(operation, raw) {
|
|
33
|
+
return lowercaseHex(raw, 64) ? Result.succeed(raw) : Result.fail(invalidInput(operation));
|
|
34
|
+
}
|
|
35
|
+
function u64(operation, raw) {
|
|
36
|
+
if (raw.length === 0 || raw.length > 20 || (raw.length > 1 && raw.startsWith("0"))) {
|
|
37
|
+
return Result.fail(invalidInput(operation));
|
|
38
|
+
}
|
|
39
|
+
for (let i = 0; i < raw.length; i++) {
|
|
40
|
+
const code = raw.charCodeAt(i);
|
|
41
|
+
if (code < 0x30 || code > 0x39) {
|
|
42
|
+
return Result.fail(invalidInput(operation));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
const value = BigInt(raw);
|
|
46
|
+
return value <= U64_MAX ? Result.succeed(value) : Result.fail(invalidInput(operation));
|
|
47
|
+
}
|
|
48
|
+
export const DatabaseId = {
|
|
49
|
+
parse(raw) {
|
|
50
|
+
return Result.map(canonicalUuid("DatabaseId.parse", raw), (hex) => hex);
|
|
51
|
+
},
|
|
52
|
+
from(id) {
|
|
53
|
+
return Result.map(canonicalUuid("DatabaseId.from", id), (hex) => hex);
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
export const IncarnationId = {
|
|
57
|
+
parse(raw) {
|
|
58
|
+
return Result.map(canonicalUuid("IncarnationId.parse", raw), (hex) => hex);
|
|
59
|
+
},
|
|
60
|
+
from(id) {
|
|
61
|
+
return Result.map(canonicalUuid("IncarnationId.from", id), (hex) => hex);
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
export const RequestId = {
|
|
65
|
+
/** The explicit pure nominal conversion over the core's canonical bytes. */
|
|
66
|
+
from(id) {
|
|
67
|
+
return Result.map(canonicalUuid("RequestId.from", id), (hex) => hex);
|
|
68
|
+
},
|
|
69
|
+
parse(raw) {
|
|
70
|
+
return Result.map(canonicalUuid("RequestId.parse", raw), (hex) => hex);
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
export const OperationId = {
|
|
74
|
+
from(id) {
|
|
75
|
+
return Result.map(canonicalUuid("OperationId.from", id), (hex) => hex);
|
|
76
|
+
},
|
|
77
|
+
parse(raw) {
|
|
78
|
+
return Result.map(canonicalUuid("OperationId.parse", raw), (hex) => hex);
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
export const ReceiptEpoch = {
|
|
82
|
+
from(raw) {
|
|
83
|
+
if (typeof raw !== "bigint" || raw <= 0n || raw > U64_MAX) {
|
|
84
|
+
return Result.fail(invalidInput("ReceiptEpoch.from"));
|
|
85
|
+
}
|
|
86
|
+
return Result.succeed(raw);
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
export const CommandDigest = {
|
|
90
|
+
fromHex(raw) {
|
|
91
|
+
return Result.map(hex64("CommandDigest.fromHex", raw), (hex) => hex);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
export const DecisionDigest = {
|
|
95
|
+
fromHex(raw) {
|
|
96
|
+
return Result.map(hex64("DecisionDigest.fromHex", raw), (hex) => hex);
|
|
97
|
+
}
|
|
98
|
+
};
|
|
99
|
+
export const RootId = {
|
|
100
|
+
fromString(raw) {
|
|
101
|
+
const operation = "RootId.fromString";
|
|
102
|
+
if (raw.length === 0 || raw.length > 128) {
|
|
103
|
+
return Result.fail(invalidInput(operation));
|
|
104
|
+
}
|
|
105
|
+
for (let i = 0; i < raw.length; i++) {
|
|
106
|
+
const code = raw.charCodeAt(i);
|
|
107
|
+
const digit = code >= 0x30 && code <= 0x39;
|
|
108
|
+
const lower = code >= 0x61 && code <= 0x7a;
|
|
109
|
+
const dash = code === 0x2d;
|
|
110
|
+
if (!digit && !lower && !dash) {
|
|
111
|
+
return Result.fail(invalidInput(operation));
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
return Result.succeed(raw);
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
export const PlanSetDigest = {
|
|
118
|
+
fromHex(raw) {
|
|
119
|
+
return Result.map(hex64("PlanSetDigest.fromHex", raw), (hex) => hex);
|
|
120
|
+
}
|
|
121
|
+
};
|
|
122
|
+
/**
|
|
123
|
+
* The schema identity is core-owned; the log validates only the canonical
|
|
124
|
+
* 64-lowercase-hex spelling when a token crosses its own HTTP boundary.
|
|
125
|
+
*/
|
|
126
|
+
export function parseSchemaId(raw) {
|
|
127
|
+
return Result.map(hex64("parseSchemaId", raw), (hex) => hex);
|
|
128
|
+
}
|
|
129
|
+
// Canonical bounded token spellings. `:`-joined fixed-width fields; every
|
|
130
|
+
// parser refuses malformed widths, uppercase, and noncanonical integers.
|
|
131
|
+
export function renderDecisionStamp(stamp) {
|
|
132
|
+
return `${stamp.seq.toString(10)}:${stamp.hash}`;
|
|
133
|
+
}
|
|
134
|
+
export function parseDecisionStamp(raw) {
|
|
135
|
+
const operation = "parseDecisionStamp";
|
|
136
|
+
if (typeof raw !== "string" || raw.length > 96) {
|
|
137
|
+
return Result.fail(invalidInput(operation));
|
|
138
|
+
}
|
|
139
|
+
const parts = raw.split(":");
|
|
140
|
+
const seqRaw = parts[0];
|
|
141
|
+
const hashRaw = parts[1];
|
|
142
|
+
if (parts.length !== 2 || seqRaw === undefined || hashRaw === undefined) {
|
|
143
|
+
return Result.fail(invalidInput(operation));
|
|
144
|
+
}
|
|
145
|
+
return Result.flatMap(u64(operation, seqRaw), (seq) => Result.map(hex64(operation, hashRaw), (hash) => ({ seq, hash: hash })));
|
|
146
|
+
}
|
|
147
|
+
export function renderStateStamp(stamp) {
|
|
148
|
+
return `${stamp.incarnation}:${stamp.dataRevision.toString(10)}`;
|
|
149
|
+
}
|
|
150
|
+
export function parseStateStamp(raw) {
|
|
151
|
+
const operation = "parseStateStamp";
|
|
152
|
+
if (typeof raw !== "string" || raw.length > 64) {
|
|
153
|
+
return Result.fail(invalidInput(operation));
|
|
154
|
+
}
|
|
155
|
+
const parts = raw.split(":");
|
|
156
|
+
const incarnationRaw = parts[0];
|
|
157
|
+
const revisionRaw = parts[1];
|
|
158
|
+
if (parts.length !== 2 || incarnationRaw === undefined || revisionRaw === undefined) {
|
|
159
|
+
return Result.fail(invalidInput(operation));
|
|
160
|
+
}
|
|
161
|
+
return Result.flatMap(canonicalUuid(operation, incarnationRaw), (incarnation) => Result.map(u64(operation, revisionRaw), (dataRevision) => ({
|
|
162
|
+
incarnation: incarnation,
|
|
163
|
+
dataRevision
|
|
164
|
+
})));
|
|
165
|
+
}
|
|
166
|
+
export function renderDatabaseIdentity(identity) {
|
|
167
|
+
return `${identity.databaseId}:${identity.incarnationId}:${identity.schemaId}`;
|
|
168
|
+
}
|
|
169
|
+
export function parseDatabaseIdentity(raw) {
|
|
170
|
+
const operation = "parseDatabaseIdentity";
|
|
171
|
+
if (typeof raw !== "string" || raw.length > 144) {
|
|
172
|
+
return Result.fail(invalidInput(operation));
|
|
173
|
+
}
|
|
174
|
+
const parts = raw.split(":");
|
|
175
|
+
const databaseRaw = parts[0];
|
|
176
|
+
const incarnationRaw = parts[1];
|
|
177
|
+
const schemaRaw = parts[2];
|
|
178
|
+
if (parts.length !== 3 || databaseRaw === undefined || incarnationRaw === undefined || schemaRaw === undefined) {
|
|
179
|
+
return Result.fail(invalidInput(operation));
|
|
180
|
+
}
|
|
181
|
+
return Result.flatMap(canonicalUuid(operation, databaseRaw), (databaseId) => Result.flatMap(canonicalUuid(operation, incarnationRaw), (incarnationId) => Result.map(parseSchemaId(schemaRaw), (schemaId) => ({
|
|
182
|
+
databaseId: databaseId,
|
|
183
|
+
incarnationId: incarnationId,
|
|
184
|
+
schemaId
|
|
185
|
+
}))));
|
|
186
|
+
}
|
|
187
|
+
export function renderCommandRef(ref) {
|
|
188
|
+
return `${renderDatabaseIdentity(ref.identity)}:${ref.id.receiptEpoch.toString(10)}:${ref.id.requestId}:${ref.digest}`;
|
|
189
|
+
}
|
|
190
|
+
export function parseCommandRef(raw) {
|
|
191
|
+
const operation = "parseCommandRef";
|
|
192
|
+
if (typeof raw !== "string" || raw.length > 288) {
|
|
193
|
+
return Result.fail(invalidInput(operation));
|
|
194
|
+
}
|
|
195
|
+
const parts = raw.split(":");
|
|
196
|
+
if (parts.length !== 6) {
|
|
197
|
+
return Result.fail(invalidInput(operation));
|
|
198
|
+
}
|
|
199
|
+
const [databaseRaw, incarnationRaw, schemaRaw, epochRaw, requestRaw, digestRaw] = parts;
|
|
200
|
+
if (databaseRaw === undefined ||
|
|
201
|
+
incarnationRaw === undefined ||
|
|
202
|
+
schemaRaw === undefined ||
|
|
203
|
+
epochRaw === undefined ||
|
|
204
|
+
requestRaw === undefined ||
|
|
205
|
+
digestRaw === undefined) {
|
|
206
|
+
return Result.fail(invalidInput(operation));
|
|
207
|
+
}
|
|
208
|
+
return Result.flatMap(parseDatabaseIdentity(`${databaseRaw}:${incarnationRaw}:${schemaRaw}`), (identity) => Result.flatMap(u64(operation, epochRaw), (epochValue) => Result.flatMap(ReceiptEpoch.from(epochValue), (receiptEpoch) => Result.flatMap(RequestId.parse(requestRaw), (requestId) => Result.map(CommandDigest.fromHex(digestRaw), (digest) => ({
|
|
209
|
+
identity,
|
|
210
|
+
id: { receiptEpoch, requestId },
|
|
211
|
+
digest
|
|
212
|
+
}))))));
|
|
213
|
+
}
|
|
214
|
+
export function sameIdentity(a, b) {
|
|
215
|
+
return a.databaseId === b.databaseId && a.incarnationId === b.incarnationId && a.schemaId === b.schemaId;
|
|
216
|
+
}
|
|
217
|
+
export function sameCommandRef(a, b) {
|
|
218
|
+
return (sameIdentity(a.identity, b.identity) &&
|
|
219
|
+
a.id.receiptEpoch === b.id.receiptEpoch &&
|
|
220
|
+
a.id.requestId === b.id.requestId &&
|
|
221
|
+
a.digest === b.digest);
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,34 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @bjornpagen/bumbledb-log —
|
|
3
|
-
* bumbledb
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* are the peer `@bjornpagen/bumbledb`'s own exports, never re-exported
|
|
12
|
-
* here.
|
|
2
|
+
* @bjornpagen/bumbledb-log — durable named application commands over the
|
|
3
|
+
* bumbledb core: LocalHistory (one LMDB transaction), HostedHistory (one
|
|
4
|
+
* S3 HEAD over immutable decisions), sealed commands with retained refs,
|
|
5
|
+
* published snapshots satisfying the core QueryReader, one native-backed
|
|
6
|
+
* TenantCache, and explicit maintenance/migration operations. Effect-only;
|
|
7
|
+
* the one protocol implementation is crates/bumbledb-log behind the shared
|
|
8
|
+
* native runtime. Core types (ChangeSet, QueryReader, ExecutionPolicy,
|
|
9
|
+
* DbError, …) are the peer @bjornpagen/bumbledb's own exports, never
|
|
10
|
+
* re-exported here.
|
|
13
11
|
*/
|
|
14
|
-
export type {
|
|
15
|
-
export {
|
|
16
|
-
export type {
|
|
17
|
-
export {
|
|
18
|
-
export
|
|
19
|
-
export {
|
|
20
|
-
export
|
|
21
|
-
export {
|
|
22
|
-
export type {
|
|
23
|
-
export {
|
|
24
|
-
export type {
|
|
25
|
-
export {
|
|
26
|
-
export type {
|
|
27
|
-
export {
|
|
28
|
-
export
|
|
29
|
-
export { openTenants } from "./tenants.js";
|
|
30
|
-
export type { CheckpointOrder } from "./vector.js";
|
|
31
|
-
export { Overflow, Vector } from "./vector.js";
|
|
32
|
-
export type { Batch, BraidOutcome, Commit, CommitReceipt, CommitSplit, Deposition, Durability, EmptyCommit, Landing, Writer } from "./writer.js";
|
|
33
|
-
export { openWriter } from "./writer.js";
|
|
12
|
+
export type { AdminIdentityOptions, BackupDestination } from "./admin.js";
|
|
13
|
+
export { backup, checkpoint, collectGarbage, erase, pinRestorePoint, releaseRestorePoint, restore, retireReceipts, rotateReceiptEpoch, verifyBackup } from "./admin.js";
|
|
14
|
+
export type { ProtocolCode } from "./codes.js";
|
|
15
|
+
export { protocolErrorCodes } from "./codes.js";
|
|
16
|
+
export { Command } from "./command.js";
|
|
17
|
+
export type { LogError, ProtocolReason } from "./errors.js";
|
|
18
|
+
export { ProtocolError } from "./errors.js";
|
|
19
|
+
export { HostedHistory, LocalHistory } from "./history.js";
|
|
20
|
+
export type { CommandId, CommandRef, DatabaseIdentity, DecisionStamp, Freshness, OperationRef, ReadConsistency, StateStamp } from "./identity.js";
|
|
21
|
+
export { CommandDigest, DatabaseId, DecisionDigest, IncarnationId, OperationId, PlanSetDigest, parseCommandRef, parseDatabaseIdentity, parseDecisionStamp, parseSchemaId, parseStateStamp, ReceiptEpoch, RequestId, RootId, renderCommandRef, renderDatabaseIdentity, renderDecisionStamp, renderStateStamp, sameCommandRef, sameIdentity } from "./identity.js";
|
|
22
|
+
export type { CreationOptions, HistoryBinding, HostedBinding, HostedCreateOptions, HostedCredentials, HostedOpenOptions, HostedOrigin, LocalBinding, LocalCreateOptions, LocalOpenOptions, ReadOptions, RuntimeExpectation, SubmitOptions } from "./options.js";
|
|
23
|
+
export type { AbortReport, AccessMode, ActivationRef, ActivationReport, AdminOutcome, BackupReport, BackupVerification, CacheInspection, CacheSlotReport, ChangeSummary, CheckpointReport, CommandResult, CommandScalar, ErasureReport, GcReport, GeneratedMigrations, HistoryInspection, InitializeValue, LocalMaterializationHealth, MigrateValue, MigrationRef, MigrationStatus, PublicationPhase, ReceiptPolicyReport, ReceiptRetirementReport, ReceiptRotationReport, ResidualCopy, ResolveOutcome, RestorePointReport, RestoreReport, RootReleaseReport, SourceAccessReport, SubmitOutcome, TerminalOutcome, TerminalReceipt } from "./outcome.js";
|
|
24
|
+
export type { Command as CommandValue, CommandInput, History, HistoryBorrow, Precondition, PublishedSnapshot } from "./surface.js";
|
|
25
|
+
export type { TenantCacheOptions } from "./tenants.js";
|
|
26
|
+
export { TenantCache } from "./tenants.js";
|
|
34
27
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,YAAY,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAA;AACxE,OAAO,EACN,MAAM,EACN,UAAU,EACV,cAAc,EACd,KAAK,EACL,eAAe,EACf,mBAAmB,EACnB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC7C,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AACzD,YAAY,EACX,SAAS,EACT,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,YAAY,EACZ,eAAe,EACf,UAAU,EACV,MAAM,cAAc,CAAA;AACrB,OAAO,EACN,aAAa,EACb,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,SAAS,EACT,MAAM,EACN,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,MAAM,cAAc,CAAA;AACrB,YAAY,EACX,eAAe,EACf,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,MAAM,aAAa,CAAA;AACpB,YAAY,EACX,WAAW,EACX,UAAU,EACV,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,aAAa,EACb,aAAa,EACb,aAAa,EACb,QAAQ,EACR,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,0BAA0B,EAC1B,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,eAAe,EACf,MAAM,aAAa,CAAA;AACpB,YAAY,EACX,OAAO,IAAI,YAAY,EACvB,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,EACZ,iBAAiB,EACjB,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -1,24 +1,19 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @bjornpagen/bumbledb-log —
|
|
3
|
-
* bumbledb
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* are the peer `@bjornpagen/bumbledb`'s own exports, never re-exported
|
|
12
|
-
* here.
|
|
2
|
+
* @bjornpagen/bumbledb-log — durable named application commands over the
|
|
3
|
+
* bumbledb core: LocalHistory (one LMDB transaction), HostedHistory (one
|
|
4
|
+
* S3 HEAD over immutable decisions), sealed commands with retained refs,
|
|
5
|
+
* published snapshots satisfying the core QueryReader, one native-backed
|
|
6
|
+
* TenantCache, and explicit maintenance/migration operations. Effect-only;
|
|
7
|
+
* the one protocol implementation is crates/bumbledb-log behind the shared
|
|
8
|
+
* native runtime. Core types (ChangeSet, QueryReader, ExecutionPolicy,
|
|
9
|
+
* DbError, …) are the peer @bjornpagen/bumbledb's own exports, never
|
|
10
|
+
* re-exported here.
|
|
13
11
|
*/
|
|
14
|
-
export {
|
|
15
|
-
export {
|
|
16
|
-
export {
|
|
17
|
-
export {
|
|
18
|
-
export {
|
|
19
|
-
export {
|
|
20
|
-
export {
|
|
21
|
-
export { openTenants } from "#tenants.ts";
|
|
22
|
-
export { Overflow, Vector } from "#vector.ts";
|
|
23
|
-
export { openWriter } from "#writer.ts";
|
|
12
|
+
export { backup, checkpoint, collectGarbage, erase, pinRestorePoint, releaseRestorePoint, restore, retireReceipts, rotateReceiptEpoch, verifyBackup } from "#admin.ts";
|
|
13
|
+
export { protocolErrorCodes } from "#codes.ts";
|
|
14
|
+
export { Command } from "#command.ts";
|
|
15
|
+
export { ProtocolError } from "#errors.ts";
|
|
16
|
+
export { HostedHistory, LocalHistory } from "#history.ts";
|
|
17
|
+
export { CommandDigest, DatabaseId, DecisionDigest, IncarnationId, OperationId, PlanSetDigest, parseCommandRef, parseDatabaseIdentity, parseDecisionStamp, parseSchemaId, parseStateStamp, ReceiptEpoch, RequestId, RootId, renderCommandRef, renderDatabaseIdentity, renderDecisionStamp, renderStateStamp, sameCommandRef, sameIdentity } from "#identity.ts";
|
|
18
|
+
export { TenantCache } from "#tenants.ts";
|
|
24
19
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACN,MAAM,EACN,UAAU,EACV,cAAc,EACd,KAAK,EACL,eAAe,EACf,mBAAmB,EACnB,OAAO,EACP,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,MAAM,WAAW,CAAA;AAElB,OAAO,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAA;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AAErC,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAA;AAC1C,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAWzD,OAAO,EACN,aAAa,EACb,UAAU,EACV,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,SAAS,EACT,MAAM,EACN,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,MAAM,cAAc,CAAA;AA8DrB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The one thin Effect layer over the internal native history machine.
|
|
3
|
+
* Everything here is language adaptation: capability bookkeeping, wire
|
|
4
|
+
* conversion, certainty preservation and scope ownership. No protocol
|
|
5
|
+
* transition, CAS, catch-up, retry loop, checkpoint, GC step, lock, or
|
|
6
|
+
* cache-eviction decision is implemented in JavaScript — those live in the
|
|
7
|
+
* one Rust machine reached through the C09 executor. The factory takes the
|
|
8
|
+
* wire and the core integration seam so authored tests can drive the layer
|
|
9
|
+
* deterministically; production binds the real addon in `#production.ts`.
|
|
10
|
+
*/
|
|
11
|
+
import type { AnySchema, DbError, ExecutionPolicy, ExecutionSession, NativeRuntime, SchemaId } from "@bjornpagen/bumbledb";
|
|
12
|
+
import type { Capability, ChangeSet, CompleteResult, QueryReader, RuntimeHandle, SnapshotHandle } from "@bjornpagen/bumbledb/internal/log";
|
|
13
|
+
import type { Scope } from "effect";
|
|
14
|
+
import { Effect } from "effect";
|
|
15
|
+
import type { LogError } from "./errors.js";
|
|
16
|
+
import type { OperationId, RootId } from "./identity.js";
|
|
17
|
+
import type { LogNative } from "./native.js";
|
|
18
|
+
import type { HistoryBinding, HostedBinding, HostedCreateOptions, HostedCredentials, HostedOpenOptions, LocalBinding, LocalCreateOptions, LocalOpenOptions, TenantCacheOptions } from "./options.js";
|
|
19
|
+
import type { AbortReport, ActivationRef, ActivationReport, AdminOutcome, BackupReport, BackupVerification, CheckpointReport, ErasureReport, GcReport, GeneratedMigrations, InitializeValue, MigrateValue, MigrationRef, MigrationStatus, ReceiptRetirementReport, ReceiptRotationReport, RestorePointReport, RestoreReport, RootReleaseReport } from "./outcome.js";
|
|
20
|
+
import type { Command, CommandInput, History, TenantCache } from "./surface.js";
|
|
21
|
+
export interface PublishedReadCapability<S extends AnySchema> {
|
|
22
|
+
/** Self-contained (closure-captured) methods; never `this`-dependent. */
|
|
23
|
+
readonly get: QueryReader<S>["get"];
|
|
24
|
+
/** Core QueryReader.execute — yields the CompleteResult owner. */
|
|
25
|
+
readonly execute: QueryReader<S>["execute"];
|
|
26
|
+
readonly session: (work: ExecutionPolicy) => Effect.Effect<ExecutionSession<S>, DbError, Scope.Scope>;
|
|
27
|
+
}
|
|
28
|
+
/** Published execute result: the core CompleteResult, not a copied page. */
|
|
29
|
+
export type PublishedCompleteResult<A> = CompleteResult<A>;
|
|
30
|
+
/** The exact shape the core's landed `internalChanges` accessor returns. */
|
|
31
|
+
export interface CoreChangesView {
|
|
32
|
+
readonly handle: unknown;
|
|
33
|
+
readonly schemaId: SchemaId;
|
|
34
|
+
readonly closed: boolean;
|
|
35
|
+
}
|
|
36
|
+
export interface CoreIntegration {
|
|
37
|
+
/**
|
|
38
|
+
* Wrap a published core snapshot Capability in the exact core QueryReader
|
|
39
|
+
* (`internalPublishedReader` in production).
|
|
40
|
+
*/
|
|
41
|
+
reader<S extends AnySchema>(core: SnapshotHandle | Capability, schema: S): PublishedReadCapability<S>;
|
|
42
|
+
/**
|
|
43
|
+
* The core's private ChangeSet registry accessor (`internalChanges`):
|
|
44
|
+
* `undefined` for a foreign dynamic object, `closed` mirrors the native
|
|
45
|
+
* capability state, and `handle` is the retained native change — the
|
|
46
|
+
* exact accepted bytes, never a reconstruction.
|
|
47
|
+
*/
|
|
48
|
+
changes(value: ChangeSet<AnySchema> | object): CoreChangesView | undefined;
|
|
49
|
+
/** The core schema lowering (`lower`) the native boundary admits. */
|
|
50
|
+
schemaSpec(schema: AnySchema): unknown;
|
|
51
|
+
/** The acquired shared runtime capability (core `runtimeHandle`). */
|
|
52
|
+
runtime(): Effect.Effect<RuntimeHandle, DbError, NativeRuntime>;
|
|
53
|
+
}
|
|
54
|
+
export type LogWire = LogNative;
|
|
55
|
+
export interface LogMachine {
|
|
56
|
+
readonly LocalHistory: {
|
|
57
|
+
open<S extends AnySchema>(binding: LocalBinding, schema: S, options: LocalOpenOptions): OpenEffect<S>;
|
|
58
|
+
create<S extends AnySchema>(binding: LocalBinding, schema: S, options: LocalCreateOptions): OpenEffect<S>;
|
|
59
|
+
};
|
|
60
|
+
readonly HostedHistory: {
|
|
61
|
+
open<S extends AnySchema>(binding: HostedBinding, schema: S, options: HostedOpenOptions): OpenEffect<S>;
|
|
62
|
+
create<S extends AnySchema>(binding: HostedBinding, schema: S, options: HostedCreateOptions): OpenEffect<S>;
|
|
63
|
+
};
|
|
64
|
+
readonly Command: {
|
|
65
|
+
seal<S extends AnySchema>(input: CommandInput<S>, work: ExecutionPolicy): Effect.Effect<Command<S>, LogError, Scope.Scope>;
|
|
66
|
+
encode<S extends AnySchema>(command: Command<S>, work: ExecutionPolicy): Effect.Effect<Uint8Array, LogError>;
|
|
67
|
+
decode<S extends AnySchema>(bytes: Uint8Array, schema: S, work: ExecutionPolicy): Effect.Effect<Command<S>, LogError, NativeRuntimeService | Scope.Scope>;
|
|
68
|
+
};
|
|
69
|
+
readonly TenantCache: {
|
|
70
|
+
make<S extends AnySchema>(schema: S, options: TenantCacheOptions): Effect.Effect<TenantCache<S>, LogError, NativeRuntimeService | Scope.Scope>;
|
|
71
|
+
};
|
|
72
|
+
readonly admin: AdminOperations;
|
|
73
|
+
readonly migrations: MigrationOperations;
|
|
74
|
+
}
|
|
75
|
+
type NativeRuntimeService = NativeRuntime;
|
|
76
|
+
type OpenEffect<S extends AnySchema> = Effect.Effect<History<S>, LogError, NativeRuntimeService | Scope.Scope>;
|
|
77
|
+
/**
|
|
78
|
+
* Optional tenant-open input for admin/migration verbs: the core schema
|
|
79
|
+
* whose lowered `SchemaSpec` the native side needs whenever it must open
|
|
80
|
+
* the local materialization and the tenant is not already open in the
|
|
81
|
+
* runtime's registry. Absent stays a typed native refusal (not-started);
|
|
82
|
+
* this layer never invents a descriptor.
|
|
83
|
+
*/
|
|
84
|
+
export interface TenantOpenOptions {
|
|
85
|
+
readonly schema?: AnySchema;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Optional target-location inputs for `activateMigration`/`abortMigration`:
|
|
89
|
+
* the SOURCE binding (locates the stable `<dir>/targets` namespace) and the
|
|
90
|
+
* TARGET's core schema. Absent stays a typed native refusal.
|
|
91
|
+
*/
|
|
92
|
+
export interface MigrationTargetOptions extends TenantOpenOptions {
|
|
93
|
+
readonly binding?: HistoryBinding;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* The generated migrations including the mandatory snapshot chain
|
|
97
|
+
* (empty-base first, then each entry's target). Digests alone cannot
|
|
98
|
+
* reconstruct descriptors; empty source is not a compile shortcut.
|
|
99
|
+
*/
|
|
100
|
+
export type MigrationPlansInput = GeneratedMigrations;
|
|
101
|
+
export interface AdminIdentityOptions extends ExecutionPolicy, TenantOpenOptions {
|
|
102
|
+
readonly operationId: OperationId;
|
|
103
|
+
}
|
|
104
|
+
export interface AdminOperations {
|
|
105
|
+
checkpoint(binding: HistoryBinding, options: AdminIdentityOptions): Effect.Effect<AdminOutcome<CheckpointReport>, never, NativeRuntimeService>;
|
|
106
|
+
pinRestorePoint(binding: HistoryBinding, options: AdminIdentityOptions & {
|
|
107
|
+
readonly label: string;
|
|
108
|
+
}): Effect.Effect<AdminOutcome<RestorePointReport>, never, NativeRuntimeService>;
|
|
109
|
+
releaseRestorePoint(binding: HistoryBinding, options: AdminIdentityOptions & {
|
|
110
|
+
readonly root: RootId;
|
|
111
|
+
}): Effect.Effect<AdminOutcome<RootReleaseReport>, never, NativeRuntimeService>;
|
|
112
|
+
rotateReceiptEpoch(binding: HistoryBinding, options: AdminIdentityOptions): Effect.Effect<AdminOutcome<ReceiptRotationReport>, never, NativeRuntimeService>;
|
|
113
|
+
retireReceipts(binding: HistoryBinding, options: AdminIdentityOptions & {
|
|
114
|
+
readonly through: bigint;
|
|
115
|
+
}): Effect.Effect<AdminOutcome<ReceiptRetirementReport>, never, NativeRuntimeService>;
|
|
116
|
+
collectGarbage(binding: HistoryBinding, options: AdminIdentityOptions): Effect.Effect<AdminOutcome<GcReport>, never, NativeRuntimeService>;
|
|
117
|
+
backup(binding: HistoryBinding, options: AdminIdentityOptions & {
|
|
118
|
+
readonly destination: BackupDestination;
|
|
119
|
+
}): Effect.Effect<AdminOutcome<BackupReport>, never, NativeRuntimeService>;
|
|
120
|
+
verifyBackup(destination: BackupDestination, options: ExecutionPolicy & {
|
|
121
|
+
readonly backup?: OperationId;
|
|
122
|
+
}): Effect.Effect<BackupVerification, LogError, NativeRuntimeService>;
|
|
123
|
+
restore(source: BackupDestination, target: HistoryBinding, options: AdminIdentityOptions & {
|
|
124
|
+
readonly backup?: OperationId;
|
|
125
|
+
}): Effect.Effect<AdminOutcome<RestoreReport>, never, NativeRuntimeService>;
|
|
126
|
+
erase(binding: HistoryBinding, options: AdminIdentityOptions & {
|
|
127
|
+
readonly retainRoots: readonly RootId[];
|
|
128
|
+
}): Effect.Effect<AdminOutcome<ErasureReport>, never, NativeRuntimeService>;
|
|
129
|
+
}
|
|
130
|
+
export type BackupDestination = {
|
|
131
|
+
readonly kind: "filesystem";
|
|
132
|
+
readonly directory: string;
|
|
133
|
+
} | {
|
|
134
|
+
readonly kind: "s3";
|
|
135
|
+
readonly bucket: string;
|
|
136
|
+
readonly prefix: string;
|
|
137
|
+
readonly region?: string;
|
|
138
|
+
readonly credentials?: HostedCredentials;
|
|
139
|
+
};
|
|
140
|
+
export interface MigrationOperations {
|
|
141
|
+
migrationStatus(binding: HistoryBinding, plans: MigrationPlansInput, work: ExecutionPolicy & TenantOpenOptions): Effect.Effect<MigrationStatus, LogError, NativeRuntimeService>;
|
|
142
|
+
initialize(binding: HistoryBinding, plans: MigrationPlansInput, options: AdminIdentityOptions): Effect.Effect<AdminOutcome<InitializeValue>, never, NativeRuntimeService>;
|
|
143
|
+
migrate(binding: HistoryBinding, plans: MigrationPlansInput, options: AdminIdentityOptions & {
|
|
144
|
+
readonly to?: string;
|
|
145
|
+
}): Effect.Effect<AdminOutcome<MigrateValue>, never, NativeRuntimeService>;
|
|
146
|
+
activateMigration(ref: ActivationRef, options: ExecutionPolicy & MigrationTargetOptions): Effect.Effect<AdminOutcome<ActivationReport>, never, NativeRuntimeService>;
|
|
147
|
+
abortMigration(ref: MigrationRef, options: ExecutionPolicy & MigrationTargetOptions): Effect.Effect<AdminOutcome<AbortReport>, never, NativeRuntimeService>;
|
|
148
|
+
}
|
|
149
|
+
export declare function makeLogMachine(wire: LogWire, core: CoreIntegration): LogMachine;
|
|
150
|
+
export {};
|
|
151
|
+
//# sourceMappingURL=machine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"machine.d.ts","sourceRoot":"","sources":["../src/machine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,KAAK,EACX,SAAS,EACT,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,QAAQ,EACR,MAAM,sBAAsB,CAAA;AAE7B,OAAO,KAAK,EACX,UAAU,EACV,SAAS,EACT,cAAc,EACd,WAAW,EACX,aAAa,EACb,cAAc,EACd,MAAM,mCAAmC,CAAA;AAE1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAA;AAGvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAE1C,OAAO,KAAK,EASX,WAAW,EAKX,MAAM,EAEN,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAqBX,SAAS,EAgBT,MAAM,YAAY,CAAA;AACnB,OAAO,KAAK,EAEX,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAGhB,kBAAkB,EAClB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EACX,WAAW,EACX,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAElB,gBAAgB,EAGhB,aAAa,EACb,QAAQ,EACR,mBAAmB,EAEnB,eAAe,EAEf,YAAY,EACZ,YAAY,EACZ,eAAe,EAEf,uBAAuB,EACvB,qBAAqB,EAErB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EAKjB,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAoC,WAAW,EAAE,MAAM,aAAa,CAAA;AAIhH,MAAM,WAAW,uBAAuB,CAAC,CAAC,SAAS,SAAS;IAC3D,yEAAyE;IACzE,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACnC,kEAAkE;IAClE,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;IAC3C,QAAQ,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,eAAe,KAAK,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;CACrG;AAED,4EAA4E;AAC5E,MAAM,MAAM,uBAAuB,CAAC,CAAC,IAAI,cAAc,CAAC,CAAC,CAAC,CAAA;AAE1D,4EAA4E;AAC5E,MAAM,WAAW,eAAe;IAC/B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;IACxB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAA;CACxB;AAED,MAAM,WAAW,eAAe;IAC/B;;;OAGG;IACH,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,IAAI,EAAE,cAAc,GAAG,UAAU,EAAE,MAAM,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAA;IACrG;;;;;OAKG;IACH,OAAO,CAAC,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,GAAG,MAAM,GAAG,eAAe,GAAG,SAAS,CAAA;IAC1E,qEAAqE;IACrE,UAAU,CAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;IACtC,qEAAqE;IACrE,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,OAAO,EAAE,aAAa,CAAC,CAAA;CAC/D;AAED,MAAM,MAAM,OAAO,GAAG,SAAS,CAAA;AA4V/B,MAAM,WAAW,UAAU;IAC1B,QAAQ,CAAC,YAAY,EAAE;QACtB,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACrG,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;KACzG,CAAA;IACD,QAAQ,CAAC,aAAa,EAAE;QACvB,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,iBAAiB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;QACvG,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,mBAAmB,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;KAC3G,CAAA;IACD,QAAQ,CAAC,OAAO,EAAE;QACjB,IAAI,CAAC,CAAC,SAAS,SAAS,EACvB,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,EACtB,IAAI,EAAE,eAAe,GACnB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QACnD,MAAM,CAAC,CAAC,SAAS,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;QAC5G,MAAM,CAAC,CAAC,SAAS,SAAS,EACzB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,CAAC,EACT,IAAI,EAAE,eAAe,GACnB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;KAC1E,CAAA;IACD,QAAQ,CAAC,WAAW,EAAE;QACrB,IAAI,CAAC,CAAC,SAAS,SAAS,EACvB,MAAM,EAAE,CAAC,EACT,OAAO,EAAE,kBAAkB,GACzB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;KAC9E,CAAA;IACD,QAAQ,CAAC,KAAK,EAAE,eAAe,CAAA;IAC/B,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAA;CACxC;AAED,KAAK,oBAAoB,GAAG,aAAa,CAAA;AAEzC,KAAK,UAAU,CAAC,CAAC,SAAS,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,oBAAoB,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;AAE9G;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,CAAA;CAC3B;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAuB,SAAQ,iBAAiB;IAChE,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAA;CACjC;AAED;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,CAAA;AAErD,MAAM,WAAW,oBAAqB,SAAQ,eAAe,EAAE,iBAAiB;IAC/E,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAA;CACjC;AAED,MAAM,WAAW,eAAe;IAC/B,UAAU,CACT,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAC3B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC7E,eAAe,CACd,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GACxD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC/E,mBAAmB,CAClB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,GACvD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC9E,kBAAkB,CACjB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAC3B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,qBAAqB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAClF,cAAc,CACb,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,GAC1D,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IACpF,cAAc,CACb,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAC3B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IACrE,MAAM,CACL,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAA;KAAE,GACzE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IACzE,YAAY,CACX,WAAW,EAAE,iBAAiB,EAC9B,OAAO,EAAE,eAAe,GAAG;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAC1D,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAA;IACpE,OAAO,CACN,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAC/D,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC1E,KAAK,CACJ,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,CAAA;KAAE,GACzE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;CAC1E;AAED,MAAM,MAAM,iBAAiB,GAC1B;IAAE,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC3D;IACA,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAA;IACnB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;IACvB,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,WAAW,CAAC,EAAE,iBAAiB,CAAA;CACvC,CAAA;AAEJ,MAAM,WAAW,mBAAmB;IACnC,eAAe,CACd,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,mBAAmB,EAC1B,IAAI,EAAE,eAAe,GAAG,iBAAiB,GACvC,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAA;IACjE,UAAU,CACT,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,oBAAoB,GAC3B,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC5E,OAAO,CACN,OAAO,EAAE,cAAc,EACvB,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,oBAAoB,GAAG;QAAE,QAAQ,CAAC,EAAE,CAAC,EAAE,MAAM,CAAA;KAAE,GACtD,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IACzE,iBAAiB,CAChB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,eAAe,GAAG,sBAAsB,GAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,gBAAgB,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;IAC7E,cAAc,CACb,GAAG,EAAE,YAAY,EACjB,OAAO,EAAE,eAAe,GAAG,sBAAsB,GAC/C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAA;CACxE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,eAAe,GAAG,UAAU,CAyjC/E"}
|