borgmcp-server 0.1.1 → 0.1.4
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 +69 -22
- package/dist/cli.js +62 -11
- package/dist/cli.js.map +1 -1
- package/dist/coordination-api.d.ts +2 -1
- package/dist/coordination-api.js +232 -18
- package/dist/coordination-api.js.map +1 -1
- package/dist/credentials.d.ts +10 -2
- package/dist/credentials.js +44 -6
- package/dist/credentials.js.map +1 -1
- package/dist/debug-log.d.ts +77 -0
- package/dist/debug-log.js +125 -0
- package/dist/debug-log.js.map +1 -0
- package/dist/https-server.d.ts +3 -0
- package/dist/https-server.js +80 -4
- package/dist/https-server.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/migrations.d.ts +4 -0
- package/dist/migrations.js +71 -0
- package/dist/migrations.js.map +1 -1
- package/dist/operator-error.d.ts +2 -1
- package/dist/operator-error.js +23 -5
- package/dist/operator-error.js.map +1 -1
- package/dist/role-section.d.ts +14 -0
- package/dist/role-section.js +87 -0
- package/dist/role-section.js.map +1 -0
- package/dist/service.d.ts +10 -3
- package/dist/service.js +218 -15
- package/dist/service.js.map +1 -1
- package/dist/start-options.d.ts +5 -1
- package/dist/start-options.js +17 -3
- package/dist/start-options.js.map +1 -1
- package/dist/store.d.ts +65 -1
- package/dist/store.js +398 -26
- package/dist/store.js.map +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/src/cli.ts +61 -11
- package/src/coordination-api.ts +236 -14
- package/src/credentials.ts +71 -5
- package/src/debug-log.ts +165 -0
- package/src/https-server.ts +75 -2
- package/src/index.ts +1 -1
- package/src/migrations.ts +74 -0
- package/src/operator-error.ts +40 -6
- package/src/role-section.ts +108 -0
- package/src/service.ts +239 -18
- package/src/start-options.ts +21 -4
- package/src/store.ts +462 -28
package/dist/service.js
CHANGED
|
@@ -3,15 +3,17 @@ import { lstat, open, readFile, unlink } from "node:fs/promises";
|
|
|
3
3
|
import { homedir } from "node:os";
|
|
4
4
|
import { join } from "node:path";
|
|
5
5
|
import { bootstrapServer, loadDigestKey, loadTlsPrivateKey, } from "./bootstrap.js";
|
|
6
|
-
import { CredentialAuthority, CredentialDigester } from "./credentials.js";
|
|
6
|
+
import { CredentialAuthority, CredentialDigester, } from "./credentials.js";
|
|
7
7
|
import { CoordinationApi } from "./coordination-api.js";
|
|
8
|
+
import { createDebugLogger, disabledDebugLogger } from "./debug-log.js";
|
|
9
|
+
import { MigrationCompatibilityError } from "./migrations.js";
|
|
8
10
|
import { createEnrollmentExchange } from "./enrollment.js";
|
|
9
11
|
import { DEFAULT_SERVICE_LIMITS, startHttpsServer, } from "./https-server.js";
|
|
10
12
|
import { createPart2ProtocolInfo } from "./protocol-draft.js";
|
|
11
13
|
import { resolveBindOptions } from "./network-policy.js";
|
|
12
|
-
import { operatorErrors } from "./operator-error.js";
|
|
14
|
+
import { invitationCubeAmbiguousError, operatorErrors, } from "./operator-error.js";
|
|
13
15
|
import { parseStartOptions } from "./start-options.js";
|
|
14
|
-
import { DEFAULT_STORAGE_LIMITS, openStore } from "./store.js";
|
|
16
|
+
import { DEFAULT_STORAGE_LIMITS, openStore, preparePrivateDataDirectory, InvitationCubeAmbiguousError, InvitationCubeNotFoundError, } from "./store.js";
|
|
15
17
|
const guardedRuntimeFailures = new Set();
|
|
16
18
|
let nodeServerTestHooks;
|
|
17
19
|
export function installNodeServerTestHooks(hooks) {
|
|
@@ -27,16 +29,26 @@ export function createNodeServerService(dependencies) {
|
|
|
27
29
|
async start(args) {
|
|
28
30
|
const shutdown = dependencies.installShutdownHandlers?.();
|
|
29
31
|
let bind;
|
|
32
|
+
let debugLogger = disabledDebugLogger;
|
|
30
33
|
let dataDirectory;
|
|
31
34
|
let storageLimits;
|
|
32
35
|
try {
|
|
33
36
|
throwIfShutdown(shutdown?.signal);
|
|
34
37
|
await dependencies.onStartupPhase?.("pre-lock");
|
|
35
38
|
throwIfShutdown(shutdown?.signal);
|
|
36
|
-
|
|
37
|
-
|
|
39
|
+
const parsed = parseStartOptions(args);
|
|
40
|
+
bind = parsed.bind;
|
|
41
|
+
debugLogger = createDebugLogger(parsed.logLevel === "debug" ? dependencies.debugOutput : undefined);
|
|
42
|
+
const resolvedBind = resolveBindOptions(bind);
|
|
43
|
+
const bindMode = resolvedBind.mode;
|
|
38
44
|
dataDirectory = dependencies.environment.BORG_SERVER_DATA_DIR;
|
|
39
45
|
storageLimits = resolveStorageLimits(dependencies.environment);
|
|
46
|
+
debugLogger.emit({
|
|
47
|
+
event: "startup",
|
|
48
|
+
bindMode,
|
|
49
|
+
port: resolvedBind.port,
|
|
50
|
+
dataDirectory: dataDirectory === undefined ? "tls_only" : "configured",
|
|
51
|
+
});
|
|
40
52
|
if (bindMode === "lan" && dataDirectory !== undefined) {
|
|
41
53
|
await assertLanCaKeyOffline(dataDirectory);
|
|
42
54
|
throwIfShutdown(shutdown?.signal);
|
|
@@ -60,7 +72,7 @@ export function createNodeServerService(dependencies) {
|
|
|
60
72
|
}
|
|
61
73
|
let runtimeLock;
|
|
62
74
|
try {
|
|
63
|
-
runtimeLock = dataDirectory === undefined ? undefined : await acquireRuntimeLock(dataDirectory);
|
|
75
|
+
runtimeLock = dataDirectory === undefined ? undefined : await acquireRuntimeLock(dataDirectory, "server");
|
|
64
76
|
await dependencies.onStartupPhase?.("post-lock");
|
|
65
77
|
throwIfShutdown(shutdown?.signal);
|
|
66
78
|
}
|
|
@@ -111,8 +123,8 @@ export function createNodeServerService(dependencies) {
|
|
|
111
123
|
finally {
|
|
112
124
|
digestKey.fill(0);
|
|
113
125
|
}
|
|
114
|
-
authority = new CredentialAuthority(authRuntime.credentials, digester);
|
|
115
|
-
coordinationApi = new CoordinationApi(authRuntime, authority);
|
|
126
|
+
authority = new CredentialAuthority(authRuntime.credentials, digester, () => new Date(), undefined, debugLogger);
|
|
127
|
+
coordinationApi = new CoordinationApi(authRuntime, authority, debugLogger);
|
|
116
128
|
}
|
|
117
129
|
await dependencies.onStartupPhase?.("pre-listen");
|
|
118
130
|
throwIfShutdown(shutdown?.signal);
|
|
@@ -140,6 +152,7 @@ export function createNodeServerService(dependencies) {
|
|
|
140
152
|
...(coordinationApi === undefined
|
|
141
153
|
? {}
|
|
142
154
|
: { handleCoordination: (request) => coordinationApi.handle(request) }),
|
|
155
|
+
debugLogger,
|
|
143
156
|
});
|
|
144
157
|
throwIfShutdown(shutdown?.signal);
|
|
145
158
|
}
|
|
@@ -164,6 +177,7 @@ export function createNodeServerService(dependencies) {
|
|
|
164
177
|
try {
|
|
165
178
|
throwIfShutdown(shutdown?.signal);
|
|
166
179
|
dependencies.onStarted(running.origin);
|
|
180
|
+
debugLogger.emit({ event: "lifecycle", action: "listening" });
|
|
167
181
|
await dependencies.waitForShutdown(running, shutdown?.signal);
|
|
168
182
|
}
|
|
169
183
|
catch (error) {
|
|
@@ -172,6 +186,7 @@ export function createNodeServerService(dependencies) {
|
|
|
172
186
|
}
|
|
173
187
|
try {
|
|
174
188
|
await teardownRuntime({ running, authRuntime, digester, runtimeLock });
|
|
189
|
+
debugLogger.emit({ event: "lifecycle", action: "stopped" });
|
|
175
190
|
}
|
|
176
191
|
catch (cleanupError) {
|
|
177
192
|
shutdown?.dispose();
|
|
@@ -270,12 +285,66 @@ const startOnlyService = createNodeServerService({
|
|
|
270
285
|
return handlers;
|
|
271
286
|
},
|
|
272
287
|
waitForShutdown,
|
|
288
|
+
debugOutput: (line) => console.error(line),
|
|
273
289
|
});
|
|
274
290
|
export const nodeServerService = {
|
|
275
291
|
start: startOnlyService.start,
|
|
276
|
-
setup: () =>
|
|
292
|
+
setup: (options) => setupNodeServerInstallation(dataDirectory, resolveSetupBindHost(serverEnvironment), options),
|
|
277
293
|
...createOfflineCredentialService(dataDirectory),
|
|
278
294
|
};
|
|
295
|
+
const managedInstallationFiles = Object.freeze([
|
|
296
|
+
"borg.db",
|
|
297
|
+
"borg.db-wal",
|
|
298
|
+
"borg.db-shm",
|
|
299
|
+
"borg.db-journal",
|
|
300
|
+
"credential-digest.key",
|
|
301
|
+
"ca.key",
|
|
302
|
+
"ca.crt",
|
|
303
|
+
"server.key",
|
|
304
|
+
"server.crt",
|
|
305
|
+
"server.json",
|
|
306
|
+
]);
|
|
307
|
+
export async function setupNodeServerInstallation(setupDataDirectory, bindHost, options) {
|
|
308
|
+
const directory = await preparePrivateDataDirectory(setupDataDirectory);
|
|
309
|
+
const runtimeLock = await acquireRuntimeLock(directory);
|
|
310
|
+
let invitationLock;
|
|
311
|
+
try {
|
|
312
|
+
invitationLock = await acquireInvitationMintLock(directory);
|
|
313
|
+
const existing = await inspectManagedInstallation(directory);
|
|
314
|
+
if (existing.length !== 0 && !options.reinitialize)
|
|
315
|
+
throw operatorErrors.INSTALLATION_EXISTS;
|
|
316
|
+
if (options.reinitialize) {
|
|
317
|
+
for (const path of existing)
|
|
318
|
+
await unlink(path);
|
|
319
|
+
}
|
|
320
|
+
return await bootstrapServer(directory, bindHost);
|
|
321
|
+
}
|
|
322
|
+
finally {
|
|
323
|
+
if (invitationLock === undefined)
|
|
324
|
+
await runtimeLock.release();
|
|
325
|
+
else
|
|
326
|
+
await invitationLock.release().finally(() => runtimeLock.release());
|
|
327
|
+
}
|
|
328
|
+
}
|
|
329
|
+
async function inspectManagedInstallation(directory) {
|
|
330
|
+
const existing = [];
|
|
331
|
+
for (const name of managedInstallationFiles) {
|
|
332
|
+
const path = join(directory, name);
|
|
333
|
+
try {
|
|
334
|
+
const metadata = await lstat(path);
|
|
335
|
+
if (metadata.isSymbolicLink())
|
|
336
|
+
throw operatorErrors.DATA_PATH_SYMLINK;
|
|
337
|
+
if (!metadata.isFile())
|
|
338
|
+
throw new Error("Managed installation paths must be regular files.");
|
|
339
|
+
existing.push(path);
|
|
340
|
+
}
|
|
341
|
+
catch (error) {
|
|
342
|
+
if (error.code !== "ENOENT")
|
|
343
|
+
throw error;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
return existing;
|
|
347
|
+
}
|
|
279
348
|
function resolveSetupBindHost(environment) {
|
|
280
349
|
return resolveBindOptions({
|
|
281
350
|
...(environment.BORG_SERVER_BIND_HOST === undefined
|
|
@@ -287,9 +356,11 @@ function resolveSetupBindHost(environment) {
|
|
|
287
356
|
export function createOfflineCredentialService(offlineDataDirectory) {
|
|
288
357
|
const withAuthority = async (operation) => {
|
|
289
358
|
const runtimeLock = await acquireRuntimeLock(offlineDataDirectory);
|
|
359
|
+
let invitationLock;
|
|
290
360
|
let runtime;
|
|
291
361
|
let digester;
|
|
292
362
|
try {
|
|
363
|
+
invitationLock = await acquireInvitationMintLock(offlineDataDirectory);
|
|
293
364
|
runtime = await openStore({ path: join(offlineDataDirectory, "borg.db") });
|
|
294
365
|
const digestKey = await loadDigestKey(join(offlineDataDirectory, "credential-digest.key"));
|
|
295
366
|
digester = new CredentialDigester(digestKey);
|
|
@@ -299,7 +370,44 @@ export function createOfflineCredentialService(offlineDataDirectory) {
|
|
|
299
370
|
finally {
|
|
300
371
|
digester?.destroy();
|
|
301
372
|
runtime?.close();
|
|
302
|
-
|
|
373
|
+
if (invitationLock === undefined)
|
|
374
|
+
await runtimeLock.release();
|
|
375
|
+
else
|
|
376
|
+
await invitationLock.release().finally(() => runtimeLock.release());
|
|
377
|
+
}
|
|
378
|
+
};
|
|
379
|
+
const withInvitationAuthority = async (operation) => {
|
|
380
|
+
const invitationLock = await acquireInvitationMintLock(offlineDataDirectory);
|
|
381
|
+
let offlineRuntimeLock;
|
|
382
|
+
let runtime;
|
|
383
|
+
let digester;
|
|
384
|
+
try {
|
|
385
|
+
const runtimeState = await invitationRuntimeState(offlineDataDirectory);
|
|
386
|
+
if (runtimeState === "offline")
|
|
387
|
+
offlineRuntimeLock = await acquireRuntimeLock(offlineDataDirectory);
|
|
388
|
+
runtime = await openStore({
|
|
389
|
+
path: join(offlineDataDirectory, "borg.db"),
|
|
390
|
+
migrationMode: runtimeState === "live" ? "require-current" : "apply",
|
|
391
|
+
});
|
|
392
|
+
const digestKey = await loadDigestKey(join(offlineDataDirectory, "credential-digest.key"));
|
|
393
|
+
digester = new CredentialDigester(digestKey);
|
|
394
|
+
digestKey.fill(0);
|
|
395
|
+
return operation(new CredentialAuthority(runtime.credentials, digester));
|
|
396
|
+
}
|
|
397
|
+
catch (error) {
|
|
398
|
+
if (error instanceof MigrationCompatibilityError)
|
|
399
|
+
throw operatorErrors.INVITATION_SCHEMA_MISMATCH;
|
|
400
|
+
if (isSqliteContention(error))
|
|
401
|
+
throw operatorErrors.INVITATION_CONTENTION;
|
|
402
|
+
throw error;
|
|
403
|
+
}
|
|
404
|
+
finally {
|
|
405
|
+
digester?.destroy();
|
|
406
|
+
runtime?.close();
|
|
407
|
+
if (offlineRuntimeLock === undefined)
|
|
408
|
+
await invitationLock.release();
|
|
409
|
+
else
|
|
410
|
+
await offlineRuntimeLock.release().finally(() => invitationLock.release());
|
|
303
411
|
}
|
|
304
412
|
};
|
|
305
413
|
return {
|
|
@@ -318,13 +426,26 @@ export function createOfflineCredentialService(offlineDataDirectory) {
|
|
|
318
426
|
throw operatorErrors.GRANT_NOT_FOUND;
|
|
319
427
|
}
|
|
320
428
|
}),
|
|
321
|
-
createClientInvitation: (recoveryCredential) =>
|
|
322
|
-
|
|
429
|
+
createClientInvitation: (recoveryCredential, cubeSelector, access) => withInvitationAuthority((authority) => {
|
|
430
|
+
if (cubeSelector === undefined && access !== undefined) {
|
|
431
|
+
throw operatorErrors.INVITATION_CUBE_SELECTOR_INVALID;
|
|
432
|
+
}
|
|
433
|
+
const selector = cubeSelector === undefined ? undefined : parseInvitationCubeSelector(cubeSelector);
|
|
434
|
+
const invitation = selector === undefined
|
|
435
|
+
? authority.createInvitation(recoveryCredential, 15 * 60_000)
|
|
436
|
+
: authority.createCubeInvitation(recoveryCredential, selector, access ?? "write", 15 * 60_000);
|
|
323
437
|
if (invitation === null)
|
|
324
438
|
throw operatorErrors.RECOVERY_INVALID;
|
|
325
439
|
return invitation;
|
|
440
|
+
}).catch((error) => {
|
|
441
|
+
if (error instanceof InvitationCubeNotFoundError)
|
|
442
|
+
throw operatorErrors.INVITATION_CUBE_NOT_FOUND;
|
|
443
|
+
if (error instanceof InvitationCubeAmbiguousError) {
|
|
444
|
+
throw invitationCubeAmbiguousError(error.candidateIds);
|
|
445
|
+
}
|
|
446
|
+
throw error;
|
|
326
447
|
}),
|
|
327
|
-
replaceOwnerInvitation: (recoveryCredential) =>
|
|
448
|
+
replaceOwnerInvitation: (recoveryCredential) => withInvitationAuthority((authority) => {
|
|
328
449
|
const invitation = authority.replaceOwnerInvitation(recoveryCredential, 15 * 60_000);
|
|
329
450
|
if (invitation === null)
|
|
330
451
|
throw operatorErrors.RECOVERY_INVALID;
|
|
@@ -332,6 +453,16 @@ export function createOfflineCredentialService(offlineDataDirectory) {
|
|
|
332
453
|
}),
|
|
333
454
|
};
|
|
334
455
|
}
|
|
456
|
+
const canonicalCubeUuid = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/u;
|
|
457
|
+
const uuidLikeCubeSelector = /^[0-9a-fA-F-]{32,36}$/u;
|
|
458
|
+
function parseInvitationCubeSelector(value) {
|
|
459
|
+
if (canonicalCubeUuid.test(value))
|
|
460
|
+
return { kind: "id", value };
|
|
461
|
+
if (value.length === 0 || value.length > 120 || uuidLikeCubeSelector.test(value)) {
|
|
462
|
+
throw operatorErrors.INVITATION_CUBE_SELECTOR_INVALID;
|
|
463
|
+
}
|
|
464
|
+
return { kind: "name", value };
|
|
465
|
+
}
|
|
335
466
|
async function teardownRuntime(resources) {
|
|
336
467
|
try {
|
|
337
468
|
await resources.running?.close();
|
|
@@ -369,13 +500,13 @@ export function isFatalTeardownError(error) {
|
|
|
369
500
|
function fatalTeardownError(primary, cleanup) {
|
|
370
501
|
return new FatalTeardownError(fatalTeardownCapability, primary, cleanup);
|
|
371
502
|
}
|
|
372
|
-
export async function acquireRuntimeLock(runtimeDataDirectory) {
|
|
503
|
+
export async function acquireRuntimeLock(runtimeDataDirectory, purpose = "exclusive-admin") {
|
|
373
504
|
const path = join(runtimeDataDirectory, "runtime.lock");
|
|
374
505
|
const nonce = randomUUID();
|
|
375
506
|
try {
|
|
376
507
|
const handle = await open(path, "wx", 0o600);
|
|
377
508
|
try {
|
|
378
|
-
await handle.writeFile(JSON.stringify({ pid: process.pid, nonce }));
|
|
509
|
+
await handle.writeFile(JSON.stringify({ pid: process.pid, nonce, purpose }));
|
|
379
510
|
}
|
|
380
511
|
catch (error) {
|
|
381
512
|
await handle.close();
|
|
@@ -419,6 +550,78 @@ export async function acquireRuntimeLock(runtimeDataDirectory) {
|
|
|
419
550
|
throw operatorErrors.RUNTIME_LOCK_STALE;
|
|
420
551
|
}
|
|
421
552
|
}
|
|
553
|
+
export async function acquireInvitationMintLock(runtimeDataDirectory) {
|
|
554
|
+
const path = join(runtimeDataDirectory, "invitation-mint.lock");
|
|
555
|
+
const nonce = randomUUID();
|
|
556
|
+
try {
|
|
557
|
+
const handle = await open(path, "wx", 0o600);
|
|
558
|
+
try {
|
|
559
|
+
await handle.writeFile(JSON.stringify({ pid: process.pid, nonce }));
|
|
560
|
+
}
|
|
561
|
+
catch (error) {
|
|
562
|
+
await handle.close();
|
|
563
|
+
await unlink(path).catch(() => undefined);
|
|
564
|
+
throw error;
|
|
565
|
+
}
|
|
566
|
+
return {
|
|
567
|
+
release: async () => {
|
|
568
|
+
await handle.close();
|
|
569
|
+
try {
|
|
570
|
+
const current = JSON.parse(await readFile(path, "utf8"));
|
|
571
|
+
if (current.nonce === nonce)
|
|
572
|
+
await unlink(path);
|
|
573
|
+
}
|
|
574
|
+
catch (error) {
|
|
575
|
+
if (error.code !== "ENOENT")
|
|
576
|
+
throw error;
|
|
577
|
+
}
|
|
578
|
+
},
|
|
579
|
+
};
|
|
580
|
+
}
|
|
581
|
+
catch (error) {
|
|
582
|
+
if (error.code !== "EEXIST")
|
|
583
|
+
throw error;
|
|
584
|
+
throw operatorErrors.INVITATION_BUSY;
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
async function invitationRuntimeState(runtimeDataDirectory) {
|
|
588
|
+
const path = join(runtimeDataDirectory, "runtime.lock");
|
|
589
|
+
let metadata;
|
|
590
|
+
try {
|
|
591
|
+
metadata = await lstat(path);
|
|
592
|
+
}
|
|
593
|
+
catch (error) {
|
|
594
|
+
if (error.code === "ENOENT")
|
|
595
|
+
return "offline";
|
|
596
|
+
throw error;
|
|
597
|
+
}
|
|
598
|
+
if (!metadata.isFile() || metadata.isSymbolicLink() || (metadata.mode & 0o077) !== 0) {
|
|
599
|
+
throw operatorErrors.RUNTIME_LOCK_UNSAFE;
|
|
600
|
+
}
|
|
601
|
+
let pid;
|
|
602
|
+
let purpose;
|
|
603
|
+
try {
|
|
604
|
+
const value = JSON.parse(await readFile(path, "utf8"));
|
|
605
|
+
if (!Number.isSafeInteger(value.pid) || value.pid <= 0)
|
|
606
|
+
throw new Error();
|
|
607
|
+
pid = value.pid;
|
|
608
|
+
purpose = value.purpose;
|
|
609
|
+
}
|
|
610
|
+
catch {
|
|
611
|
+
throw operatorErrors.RUNTIME_LOCK_INVALID;
|
|
612
|
+
}
|
|
613
|
+
if (!processIsAlive(pid))
|
|
614
|
+
throw operatorErrors.RUNTIME_LOCK_STALE;
|
|
615
|
+
if (purpose !== "server")
|
|
616
|
+
throw operatorErrors.RUNTIME_ACTIVE;
|
|
617
|
+
return "live";
|
|
618
|
+
}
|
|
619
|
+
function isSqliteContention(error) {
|
|
620
|
+
if (typeof error !== "object" || error === null)
|
|
621
|
+
return false;
|
|
622
|
+
const value = error;
|
|
623
|
+
return value.code === "ERR_SQLITE_ERROR" && (value.errcode === 5 || value.errcode === 6);
|
|
624
|
+
}
|
|
422
625
|
function processIsAlive(pid) {
|
|
423
626
|
try {
|
|
424
627
|
process.kill(pid, 0);
|
package/dist/service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/dist/start-options.d.ts
CHANGED
|
@@ -1,2 +1,6 @@
|
|
|
1
1
|
import type { BindOptionsInput } from "./network-policy.js";
|
|
2
|
-
export
|
|
2
|
+
export interface ParsedStartOptions {
|
|
3
|
+
readonly bind: BindOptionsInput;
|
|
4
|
+
readonly logLevel?: "debug";
|
|
5
|
+
}
|
|
6
|
+
export declare function parseStartOptions(args: readonly string[]): ParsedStartOptions;
|
package/dist/start-options.js
CHANGED
|
@@ -3,6 +3,7 @@ export function parseStartOptions(args) {
|
|
|
3
3
|
let host;
|
|
4
4
|
let port;
|
|
5
5
|
let lanConsent = false;
|
|
6
|
+
let logLevel;
|
|
6
7
|
for (let index = 0; index < args.length; index += 1) {
|
|
7
8
|
const argument = args[index];
|
|
8
9
|
if (argument === "--lan") {
|
|
@@ -28,12 +29,25 @@ export function parseStartOptions(args) {
|
|
|
28
29
|
index += 1;
|
|
29
30
|
continue;
|
|
30
31
|
}
|
|
32
|
+
if (argument === "--log-level") {
|
|
33
|
+
if (logLevel !== undefined)
|
|
34
|
+
throw operatorErrors.START_LOG_LEVEL_DUPLICATE;
|
|
35
|
+
const value = requiredValue(args, index, "START_LOG_LEVEL_MISSING");
|
|
36
|
+
if (value !== "debug")
|
|
37
|
+
throw operatorErrors.START_LOG_LEVEL_INVALID;
|
|
38
|
+
logLevel = value;
|
|
39
|
+
index += 1;
|
|
40
|
+
continue;
|
|
41
|
+
}
|
|
31
42
|
throw operatorErrors.START_OPTION_UNKNOWN;
|
|
32
43
|
}
|
|
33
44
|
return {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
45
|
+
bind: {
|
|
46
|
+
...(host === undefined ? {} : { host }),
|
|
47
|
+
...(port === undefined ? {} : { port }),
|
|
48
|
+
...(lanConsent ? { lanConsent: true } : {}),
|
|
49
|
+
},
|
|
50
|
+
...(logLevel === undefined ? {} : { logLevel }),
|
|
37
51
|
};
|
|
38
52
|
}
|
|
39
53
|
function requiredValue(args, index, code) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"start-options.js","sourceRoot":"","sources":["../src/start-options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAA0B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"start-options.js","sourceRoot":"","sources":["../src/start-options.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAA0B,MAAM,qBAAqB,CAAC;AAO7E,MAAM,UAAU,iBAAiB,CAAC,IAAuB;IACvD,IAAI,IAAwB,CAAC;IAC7B,IAAI,IAAwB,CAAC;IAC7B,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,IAAI,QAA6B,CAAC;IAElC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,IAAI,UAAU;gBAAE,MAAM,cAAc,CAAC,mBAAmB,CAAC;YACzD,UAAU,GAAG,IAAI,CAAC;YAClB,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,cAAc,CAAC,oBAAoB,CAAC;YAClE,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC;YACxD,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,IAAI,IAAI,KAAK,SAAS;gBAAE,MAAM,cAAc,CAAC,oBAAoB,CAAC;YAClE,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,oBAAoB,CAAC,CAAC;YAC/D,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;gBAAE,MAAM,cAAc,CAAC,kBAAkB,CAAC;YACnE,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACrB,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QACD,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC/B,IAAI,QAAQ,KAAK,SAAS;gBAAE,MAAM,cAAc,CAAC,yBAAyB,CAAC;YAC3E,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,yBAAyB,CAAC,CAAC;YACpE,IAAI,KAAK,KAAK,OAAO;gBAAE,MAAM,cAAc,CAAC,uBAAuB,CAAC;YACpE,QAAQ,GAAG,KAAK,CAAC;YACjB,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QACD,MAAM,cAAc,CAAC,oBAAoB,CAAC;IAC5C,CAAC;IAED,OAAO;QACL,IAAI,EAAE;YACJ,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;YACvC,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;YACvC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C;QACD,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;KAChD,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAuB,EAAE,KAAa,EAAE,IAAuB;IACpF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC9B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,cAAc,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
|
package/dist/store.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type Principal } from "./principal.js";
|
|
2
|
+
import { type RoleSectionPatchOp } from "./role-section.js";
|
|
2
3
|
export type CubeAccess = "read" | "write" | "manage";
|
|
3
4
|
export interface CubeRecord {
|
|
4
5
|
readonly id: string;
|
|
@@ -63,8 +64,12 @@ export interface RoleRecord {
|
|
|
63
64
|
readonly cube_id: string;
|
|
64
65
|
readonly name: string;
|
|
65
66
|
readonly short_description: string;
|
|
67
|
+
readonly detailed_description: string;
|
|
66
68
|
readonly is_default: boolean;
|
|
69
|
+
readonly is_mandatory: boolean;
|
|
67
70
|
readonly is_human_seat: boolean;
|
|
71
|
+
readonly can_broadcast: boolean;
|
|
72
|
+
readonly receives_all_direct: boolean;
|
|
68
73
|
readonly role_class: "queen" | "worker";
|
|
69
74
|
readonly created_at: string;
|
|
70
75
|
}
|
|
@@ -75,6 +80,7 @@ export interface DroneRecord {
|
|
|
75
80
|
readonly label: string;
|
|
76
81
|
readonly last_seen: string;
|
|
77
82
|
readonly hostname: string | null;
|
|
83
|
+
readonly posture: "observer" | "participant";
|
|
78
84
|
readonly created_at: string;
|
|
79
85
|
}
|
|
80
86
|
export interface StoreDiagnostics {
|
|
@@ -89,6 +95,7 @@ export interface OpenStoreOptions {
|
|
|
89
95
|
readonly capacityProbe?: () => StorageCapacity;
|
|
90
96
|
readonly cubeLimits?: CubeLimits;
|
|
91
97
|
readonly mutationHook?: (phase: string) => void;
|
|
98
|
+
readonly migrationMode?: "apply" | "require-current";
|
|
92
99
|
}
|
|
93
100
|
export interface CubeLimits {
|
|
94
101
|
readonly maxCubesPerClient: number;
|
|
@@ -126,6 +133,19 @@ export interface StoredSecretDigest extends DigestPair {
|
|
|
126
133
|
export interface StoredInvitationDigest extends StoredSecretDigest {
|
|
127
134
|
readonly purpose: "owner" | "client";
|
|
128
135
|
readonly ownerEpoch: number | null;
|
|
136
|
+
readonly cubeId: string | null;
|
|
137
|
+
readonly access: CubeAccess | null;
|
|
138
|
+
}
|
|
139
|
+
export interface InvitationCubeScope {
|
|
140
|
+
readonly cubeId: string;
|
|
141
|
+
readonly cubeName: string;
|
|
142
|
+
readonly access: CubeAccess;
|
|
143
|
+
}
|
|
144
|
+
export declare class InvitationCubeNotFoundError extends Error {
|
|
145
|
+
}
|
|
146
|
+
export declare class InvitationCubeAmbiguousError extends Error {
|
|
147
|
+
readonly candidateIds: readonly string[];
|
|
148
|
+
constructor(candidateIds: readonly string[]);
|
|
129
149
|
}
|
|
130
150
|
export interface EnrollmentClaimResult {
|
|
131
151
|
readonly purpose: "owner" | "client";
|
|
@@ -147,7 +167,12 @@ export interface CredentialStore {
|
|
|
147
167
|
readonly digest: DigestPair;
|
|
148
168
|
readonly expiresAt: string;
|
|
149
169
|
readonly purpose: "owner" | "client";
|
|
150
|
-
|
|
170
|
+
readonly cubeSelector?: {
|
|
171
|
+
readonly kind: "id" | "name";
|
|
172
|
+
readonly value: string;
|
|
173
|
+
};
|
|
174
|
+
readonly access?: CubeAccess;
|
|
175
|
+
}) => InvitationCubeScope | null;
|
|
151
176
|
readonly findInvitation: (lookup: Buffer) => StoredInvitationDigest | null;
|
|
152
177
|
readonly claimInvitation: (input: {
|
|
153
178
|
readonly invitationId: string;
|
|
@@ -176,6 +201,9 @@ export interface ScopedStore {
|
|
|
176
201
|
readonly appendActivity: (cubeId: string, message: string) => ActivityRecord;
|
|
177
202
|
readonly readActivity: (cubeId: string, limit: number) => ActivityRecord[];
|
|
178
203
|
readonly listRoles: (cubeId: string) => RoleRecord[];
|
|
204
|
+
readonly createRole: (cubeId: string, input: CreateRoleInput) => RoleRecord;
|
|
205
|
+
readonly updateRole: (cubeId: string, roleId: string, input: UpdateRoleInput) => RoleRecord;
|
|
206
|
+
readonly patchRoleSection: (cubeId: string, roleId: string, input: RoleSectionPatchOp) => RoleRecord;
|
|
179
207
|
readonly listDrones: (cubeId: string) => DroneRecord[];
|
|
180
208
|
readonly appendLog: (cubeId: string, input: {
|
|
181
209
|
readonly message: string;
|
|
@@ -193,6 +221,26 @@ export interface ScopedStore {
|
|
|
193
221
|
readonly subscribeActivity: (cubeId: string, listener: (entry: EnrichedActivityRecord) => void) => (() => void);
|
|
194
222
|
readonly attachSeat: (input: SeatAttachInput) => SeatAttachRecord;
|
|
195
223
|
}
|
|
224
|
+
export interface CreateRoleInput {
|
|
225
|
+
readonly name: string;
|
|
226
|
+
readonly shortDescription?: string;
|
|
227
|
+
readonly detailedDescription?: string;
|
|
228
|
+
readonly isDefault?: boolean;
|
|
229
|
+
readonly isMandatory?: boolean;
|
|
230
|
+
readonly isHumanSeat?: boolean;
|
|
231
|
+
readonly canBroadcast?: boolean;
|
|
232
|
+
readonly receivesAllDirect?: boolean;
|
|
233
|
+
}
|
|
234
|
+
export interface UpdateRoleInput {
|
|
235
|
+
readonly name?: string;
|
|
236
|
+
readonly shortDescription?: string;
|
|
237
|
+
readonly detailedDescription?: string;
|
|
238
|
+
readonly isDefault?: boolean;
|
|
239
|
+
readonly isMandatory?: boolean;
|
|
240
|
+
readonly isHumanSeat?: boolean;
|
|
241
|
+
readonly canBroadcast?: boolean;
|
|
242
|
+
readonly receivesAllDirect?: boolean;
|
|
243
|
+
}
|
|
196
244
|
export interface CreateCubeInput {
|
|
197
245
|
readonly retryKey: string;
|
|
198
246
|
readonly name: string;
|
|
@@ -233,6 +281,7 @@ export interface SeatAttachRecord {
|
|
|
233
281
|
readonly sessionId: string;
|
|
234
282
|
readonly expiresAt: string;
|
|
235
283
|
readonly generation: number;
|
|
284
|
+
readonly posture: "observer" | "participant";
|
|
236
285
|
readonly reattached: boolean;
|
|
237
286
|
readonly revokedSessionIds: readonly string[];
|
|
238
287
|
}
|
|
@@ -304,6 +353,18 @@ export declare class ScopedStoreError extends Error {
|
|
|
304
353
|
readonly code = "NOT_FOUND";
|
|
305
354
|
constructor();
|
|
306
355
|
}
|
|
356
|
+
export declare class RoleConflictError extends Error {
|
|
357
|
+
readonly code = "ROLE_ALREADY_EXISTS";
|
|
358
|
+
constructor();
|
|
359
|
+
}
|
|
360
|
+
export declare class DefaultRoleRequiredError extends Error {
|
|
361
|
+
readonly code = "DEFAULT_ROLE_REQUIRED";
|
|
362
|
+
constructor();
|
|
363
|
+
}
|
|
364
|
+
export declare class RoleSectionConflictError extends Error {
|
|
365
|
+
readonly code = "ROLE_SECTION_CONFLICT";
|
|
366
|
+
constructor();
|
|
367
|
+
}
|
|
307
368
|
export declare class CursorExpiredError extends Error {
|
|
308
369
|
readonly code = "CURSOR_EXPIRED";
|
|
309
370
|
constructor();
|
|
@@ -325,3 +386,6 @@ export declare class CreateCubeConflictError extends Error {
|
|
|
325
386
|
constructor();
|
|
326
387
|
}
|
|
327
388
|
export declare function openStore(options: OpenStoreOptions): Promise<StoreRuntime>;
|
|
389
|
+
export declare function preparePrivateDataDirectory(path: string): Promise<string>;
|
|
390
|
+
export declare const MAX_ROLE_DETAILED_DESCRIPTION_CHARS = 51200;
|
|
391
|
+
export declare function assertRoleTextWriteAllowed(value: string, previous?: string): void;
|