@substrat-run/adapter-sqlite 0.14.0 → 0.17.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 +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +345 -17
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -8,7 +8,7 @@ database for fail-closed scope addressing, and a kernel-stamped event outbox. It
|
|
|
8
8
|
a mock: it is the adapter that local development and CI run on, and the reason the
|
|
9
9
|
self-host/escrow story is literally true (single-node, but runnable).
|
|
10
10
|
|
|
11
|
-
**Full documentation: https://substrat.
|
|
11
|
+
**Full documentation: https://substrat.net/reference/adapter-sqlite**
|
|
12
12
|
|
|
13
13
|
## Usage
|
|
14
14
|
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type ConnectionId, type PlatformActorId, type PrincipalId, type ScopeId, type TenantId } from '@substrat-run/contracts';
|
|
1
|
+
import { type ConnectionId, type PlatformActorId, type PrincipalId, type ScopeDump, type ScopeId, type TenantId } from '@substrat-run/contracts';
|
|
2
2
|
import { type ExecutorDeadLetter, type ExecutorDrainReport, type ExecutorHandler, type ExecutorRetryPolicy, type ConnectorHandler, type ConnectorOptions, type FetchLike, type SecretBox, type HostAdmin, type ModuleRegistration, type OperationHandler, type PermissionChecker, type ProvisionScopeInput, type ScopeHost, type ScopeStub } from '@substrat-run/kernel';
|
|
3
3
|
export interface SqliteScopeHostOptions {
|
|
4
4
|
/** Directory holding one SQLite file per scope plus the directory database. */
|
|
@@ -64,6 +64,12 @@ export declare class SqliteScopeHost implements ScopeHost {
|
|
|
64
64
|
registerModule(registration: ModuleRegistration): void;
|
|
65
65
|
defineOperation<I, O>(name: string, handler: OperationHandler<I, O>): void;
|
|
66
66
|
provisionScope(actor: PlatformActorId, input: ProvisionScopeInput): Promise<void>;
|
|
67
|
+
importScope(actor: PlatformActorId, input: ProvisionScopeInput, dump: ScopeDump): Promise<void>;
|
|
68
|
+
snapshotScope(actor: PlatformActorId, tenantId: TenantId, scopeId: ScopeId, opts?: {
|
|
69
|
+
kind?: string;
|
|
70
|
+
expiresAt?: string;
|
|
71
|
+
}): Promise<ScopeId>;
|
|
72
|
+
deleteSnapshot(actor: PlatformActorId, tenantId: TenantId, scopeId: ScopeId): Promise<void>;
|
|
67
73
|
getScope(principal: PrincipalId, tenantId: TenantId, scopeId: ScopeId): Promise<ScopeStub>;
|
|
68
74
|
/**
|
|
69
75
|
* A scope stub whose authority is a CONNECTION (#97).
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { mkdirSync } from 'node:fs';
|
|
1
|
+
import { mkdirSync, rmSync } from 'node:fs';
|
|
2
2
|
import { join } from 'node:path';
|
|
3
3
|
import Database from 'better-sqlite3';
|
|
4
|
-
import { accessLogEntry, adminLogEntry, createTenantInput, domainEvent, domainEventInput, eventId, identityLink, identityPool, instant, connection, connectionGrant, connectionSecret, subjectRef, createConnectionInput, moduleManifest, createOrgInput, promotionAcknowledgement, bindHostnameInput, hostnameBinding, publishVersionInput, routeTarget, registerVerticalInput, vertical as verticalSchema, verticalChannel, verticalVersion, objectRef, org as orgSchema, orgMembership, principalId, resolvedIdentity, roleDefinition, scope as scopeSchema, tenant as tenantSchema, tenantRole, SCOPE_TABLE_PAGE_DEFAULT, SCOPE_TABLE_PAGE_MAX, } from '@substrat-run/contracts';
|
|
5
|
-
import { asPrincipal, resolveScopeRecord, ulid, backoffAt, resolveRetryPolicy, unconfiguredSecretBox, } from '@substrat-run/kernel';
|
|
4
|
+
import { accessLogEntry, adminLogEntry, createTenantInput, domainEvent, domainEventInput, eventId, identityLink, identityPool, instant, connection, connectionGrant, connectionSecret, subjectRef, createConnectionInput, moduleManifest, createOrgInput, promotionAcknowledgement, bindHostnameInput, channelHistoryEntry, hostnameBinding, publishVersionInput, AUTO_ADMISSION_NOTE, routeTarget, registerVerticalInput, vertical as verticalSchema, verticalChannel, verticalVersion, objectRef, org as orgSchema, orgMembership, principalId, resolvedIdentity, roleDefinition, scope as scopeSchema, tenant as tenantSchema, tenantRole, SCOPE_TABLE_PAGE_DEFAULT, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, } from '@substrat-run/contracts';
|
|
5
|
+
import { asPrincipal, assertReadOnlyQuery, resolveScopeRecord, ulid, backoffAt, resolveRetryPolicy, unconfiguredSecretBox, } from '@substrat-run/kernel';
|
|
6
6
|
import { ScopeActor } from './actor.js';
|
|
7
7
|
import { createTupleChecker } from './checker.js';
|
|
8
8
|
const KERNEL_DDL = `
|
|
@@ -179,6 +179,13 @@ export class SqliteScopeHost {
|
|
|
179
179
|
migration_error TEXT,
|
|
180
180
|
migration_attempts INTEGER NOT NULL DEFAULT 0,
|
|
181
181
|
migration_last_attempt_at TEXT,
|
|
182
|
+
-- Fork provenance (preview-and-snapshots.md §3): the scope this one was
|
|
183
|
+
-- copied from, and when. Both null for a normally-provisioned scope.
|
|
184
|
+
forked_from TEXT,
|
|
185
|
+
forked_at TEXT,
|
|
186
|
+
-- Retention horizon for forks (preview-and-snapshots.md §3): the GC sweep
|
|
187
|
+
-- reaps a fork past this instant. Null = no expiry.
|
|
188
|
+
expires_at TEXT,
|
|
182
189
|
created_at TEXT NOT NULL
|
|
183
190
|
);
|
|
184
191
|
-- The hostname map (K-26). A single environment-wide router resolves against
|
|
@@ -225,6 +232,10 @@ export class SqliteScopeHost {
|
|
|
225
232
|
-- A builder's pending publish request (marketplace-publish.md §5): ISO timestamp when
|
|
226
233
|
-- the owner asked to be listed, awaiting staff review. NULL = none / resolved.
|
|
227
234
|
publish_requested_at TEXT,
|
|
235
|
+
-- New installs BLOCKED (staff kill-switch). 1 = hidden from the install catalog
|
|
236
|
+
-- and provisioning refuses, for everyone including the owner. Existing scopes
|
|
237
|
+
-- keep running — this gates provisioning, not serving.
|
|
238
|
+
installs_blocked INTEGER NOT NULL DEFAULT 0,
|
|
228
239
|
created_at TEXT NOT NULL
|
|
229
240
|
);
|
|
230
241
|
-- admission: 'pending' until the gates pass. A push is not a deploy, and
|
|
@@ -253,6 +264,22 @@ export class SqliteScopeHost {
|
|
|
253
264
|
updated_at TEXT NOT NULL,
|
|
254
265
|
PRIMARY KEY (vertical_slug, channel)
|
|
255
266
|
);
|
|
267
|
+
-- The promotion timeline (append-only). The channel row remembers only where it
|
|
268
|
+
-- points now; this remembers every move — what went live, what it replaced, who
|
|
269
|
+
-- and exactly when. "at" is the PITR anchor a data rollback would rewind to
|
|
270
|
+
-- (preview-and-snapshots.md §7). Never updated, never deleted except with the
|
|
271
|
+
-- vertical itself.
|
|
272
|
+
CREATE TABLE IF NOT EXISTS vertical_channel_history (
|
|
273
|
+
id TEXT PRIMARY KEY,
|
|
274
|
+
vertical_slug TEXT NOT NULL,
|
|
275
|
+
channel TEXT NOT NULL,
|
|
276
|
+
version_id TEXT NOT NULL,
|
|
277
|
+
from_version_id TEXT,
|
|
278
|
+
actor TEXT NOT NULL,
|
|
279
|
+
at TEXT NOT NULL
|
|
280
|
+
);
|
|
281
|
+
CREATE INDEX IF NOT EXISTS vch_vertical_channel
|
|
282
|
+
ON vertical_channel_history (vertical_slug, channel);
|
|
256
283
|
-- Organizations inside a tenant (K-22). Membership tuples point at these and
|
|
257
284
|
-- grantToOrg targets them. Before this the id was a free-form string with no
|
|
258
285
|
-- record, so a typo addressed a phantom org. The tenant_id column is also
|
|
@@ -619,11 +646,11 @@ export class SqliteScopeHost {
|
|
|
619
646
|
this.directory
|
|
620
647
|
.prepare(`INSERT INTO scopes
|
|
621
648
|
(scope_id, tenant_id, parent_scope_id, slug, kind, name, vertical,
|
|
622
|
-
storage_shape, jurisdiction, status, created_at)
|
|
649
|
+
storage_shape, jurisdiction, status, forked_from, forked_at, expires_at, created_at)
|
|
623
650
|
-- 'provisioning', not 'active' (K-31): the directory row exists before the
|
|
624
651
|
-- vertical has created the scope DO, and only activateScope says it has.
|
|
625
|
-
VALUES (?, ?, NULL, ?, ?, ?, ?, ?, ?, 'provisioning', ?)`)
|
|
626
|
-
.run(input.scopeId, input.tenantId, record.slug, record.kind, record.name, record.vertical, record.storageShape, record.jurisdiction, new Date().toISOString());
|
|
652
|
+
VALUES (?, ?, NULL, ?, ?, ?, ?, ?, ?, 'provisioning', ?, ?, ?, ?)`)
|
|
653
|
+
.run(input.scopeId, input.tenantId, record.slug, record.kind, record.name, record.vertical, record.storageShape, record.jurisdiction, record.forkedFrom, record.forkedAt, record.expiresAt, new Date().toISOString());
|
|
627
654
|
}
|
|
628
655
|
const rt = this.runtime(input.tenantId, input.scopeId);
|
|
629
656
|
await this.applyPendingMigrations(rt);
|
|
@@ -632,6 +659,102 @@ export class SqliteScopeHost {
|
|
|
632
659
|
this.recordAdmin(actor, 'provisionScope', { tenantId: input.tenantId, scopeId: input.scopeId, vertical: record.vertical }, null, record);
|
|
633
660
|
}
|
|
634
661
|
}
|
|
662
|
+
async importScope(actor, input, dump) {
|
|
663
|
+
// Create the destination scope (directory row + storage). Its migration step
|
|
664
|
+
// creates some tables; the dump then replaces them wholesale, so the end state
|
|
665
|
+
// is the dump, not whatever the local module set would have built. Provenance is
|
|
666
|
+
// stamped from the dump unless the caller already set it (§3: a fork always
|
|
667
|
+
// records where it came from).
|
|
668
|
+
await this.provisionScope(actor, {
|
|
669
|
+
...input,
|
|
670
|
+
forkedFrom: input.forkedFrom ?? dump.scopeId,
|
|
671
|
+
forkedAt: input.forkedAt ?? dump.capturedAt,
|
|
672
|
+
});
|
|
673
|
+
const rt = this.runtime(input.tenantId, input.scopeId);
|
|
674
|
+
const db = rt.db;
|
|
675
|
+
const load = db.transaction((tables) => {
|
|
676
|
+
// Drop the provisioned schema — the dump's schema is authoritative. Only real
|
|
677
|
+
// tables (never `sqlite_*` internals, which are auto-managed and un-droppable).
|
|
678
|
+
const existing = db
|
|
679
|
+
.prepare(`SELECT name FROM sqlite_master WHERE type = 'table' AND name NOT LIKE 'sqlite_%'`)
|
|
680
|
+
.all();
|
|
681
|
+
for (const { name } of existing)
|
|
682
|
+
db.exec(`DROP TABLE IF EXISTS "${name}"`);
|
|
683
|
+
for (const t of tables) {
|
|
684
|
+
db.exec(t.ddl);
|
|
685
|
+
if (t.rows.length === 0)
|
|
686
|
+
continue;
|
|
687
|
+
const cols = t.columns.map((c) => `"${c}"`).join(', ');
|
|
688
|
+
const placeholders = t.columns.map(() => '?').join(', ');
|
|
689
|
+
const stmt = db.prepare(`INSERT INTO "${t.name}" (${cols}) VALUES (${placeholders})`);
|
|
690
|
+
for (const row of t.rows)
|
|
691
|
+
stmt.run(...row);
|
|
692
|
+
}
|
|
693
|
+
});
|
|
694
|
+
load(dump.tables);
|
|
695
|
+
// The frontier came in with the dump — refresh the cached applied-migration set so
|
|
696
|
+
// a later bind/migrate builds on the imported state, not the provisioning state.
|
|
697
|
+
rt.appliedMigrations.clear();
|
|
698
|
+
for (const r of db.prepare('SELECT module_id, version FROM _substrat_migrations').all()) {
|
|
699
|
+
rt.appliedMigrations.add(`${r.module_id}@${r.version}`);
|
|
700
|
+
}
|
|
701
|
+
await this.admin.activateScope(actor, input.tenantId, input.scopeId);
|
|
702
|
+
this.recordAdmin(actor, 'importScope', { tenantId: input.tenantId, scopeId: input.scopeId }, null, { sourceScopeId: dump.scopeId, tables: dump.tables.length, capturedAt: dump.capturedAt });
|
|
703
|
+
}
|
|
704
|
+
async snapshotScope(actor, tenantId, scopeId, opts) {
|
|
705
|
+
const source = await this.admin.getScopeRecord(actor, tenantId, scopeId);
|
|
706
|
+
if (!source)
|
|
707
|
+
throw new Error(`unknown scope ${scopeId} in tenant ${tenantId}`);
|
|
708
|
+
const dump = await this.admin.exportScope(actor, tenantId, scopeId);
|
|
709
|
+
const snapshotId = ulid();
|
|
710
|
+
await this.importScope(actor, {
|
|
711
|
+
tenantId,
|
|
712
|
+
scopeId: snapshotId,
|
|
713
|
+
kind: opts?.kind ?? 'archive',
|
|
714
|
+
vertical: source.vertical,
|
|
715
|
+
jurisdiction: source.jurisdiction,
|
|
716
|
+
expiresAt: opts?.expiresAt,
|
|
717
|
+
// forkedFrom/forkedAt are stamped from the dump by importScope.
|
|
718
|
+
}, dump);
|
|
719
|
+
// Bind the snapshot to the source's current version so it is a runnable copy at the
|
|
720
|
+
// same frontier (a fresh bind, so it never re-triggers the snapshot path).
|
|
721
|
+
if (source.verticalVersionId) {
|
|
722
|
+
await this.admin.bindScopeVersion(actor, tenantId, snapshotId, source.verticalVersionId);
|
|
723
|
+
}
|
|
724
|
+
return snapshotId;
|
|
725
|
+
}
|
|
726
|
+
async deleteSnapshot(actor, tenantId, scopeId) {
|
|
727
|
+
// The refusal that keeps this narrow: only a FORK may be hard-deleted. Everything
|
|
728
|
+
// else keeps the platform's tombstone-only rule.
|
|
729
|
+
const rec = await this.admin.getScopeRecord(actor, tenantId, scopeId);
|
|
730
|
+
if (!rec)
|
|
731
|
+
throw new Error(`unknown scope ${scopeId} in tenant ${tenantId}`);
|
|
732
|
+
if (!rec.forkedFrom) {
|
|
733
|
+
throw new Error(`scope ${scopeId} is not a fork (forkedFrom is null) — only snapshots may be deleted; ` +
|
|
734
|
+
`archive a primary scope instead`);
|
|
735
|
+
}
|
|
736
|
+
// Close and evict the runtime handle before touching the file.
|
|
737
|
+
const key = `${tenantId}/${scopeId}`;
|
|
738
|
+
const rt = this.scopes.get(key);
|
|
739
|
+
if (rt) {
|
|
740
|
+
rt.db.close();
|
|
741
|
+
this.scopes.delete(key);
|
|
742
|
+
this.scopesById.delete(scopeId);
|
|
743
|
+
}
|
|
744
|
+
// Order is the retry story: hostnames first (a reaped preview URL must stop
|
|
745
|
+
// resolving), then the STORAGE, then the directory row — so a crash mid-way leaves
|
|
746
|
+
// a visible row over empty storage (re-running deleteSnapshot converges), never
|
|
747
|
+
// orphaned bytes with no record (the §9 hazard).
|
|
748
|
+
this.directory.prepare('DELETE FROM hostnames WHERE scope_id = ?').run(scopeId);
|
|
749
|
+
rmSync(join(this.dir, `${tenantId}__${scopeId}.sqlite`), { force: true });
|
|
750
|
+
this.directory.prepare('DELETE FROM scopes WHERE scope_id = ?').run(scopeId);
|
|
751
|
+
this.recordAdmin(actor, 'deleteSnapshot', { tenantId, scopeId }, null, {
|
|
752
|
+
forkedFrom: rec.forkedFrom,
|
|
753
|
+
forkedAt: rec.forkedAt,
|
|
754
|
+
expiresAt: rec.expiresAt,
|
|
755
|
+
kind: rec.kind,
|
|
756
|
+
});
|
|
757
|
+
}
|
|
635
758
|
async getScope(principal, tenantId, scopeId) {
|
|
636
759
|
const row = this.directory
|
|
637
760
|
.prepare('SELECT tenant_id, status FROM scopes WHERE scope_id = ?')
|
|
@@ -1069,6 +1192,7 @@ export class SqliteScopeHost {
|
|
|
1069
1192
|
...(r.install_spec ? JSON.parse(r.install_spec) : {}),
|
|
1070
1193
|
listed: !!r.listed,
|
|
1071
1194
|
...(r.publish_requested_at ? { publishRequestedAt: r.publish_requested_at } : {}),
|
|
1195
|
+
installsBlocked: !!r.installs_blocked,
|
|
1072
1196
|
createdAt: r.created_at,
|
|
1073
1197
|
});
|
|
1074
1198
|
const readVertical = (slugValue) => {
|
|
@@ -1145,6 +1269,9 @@ export class SqliteScopeHost {
|
|
|
1145
1269
|
schemaVersion: r.schema_version,
|
|
1146
1270
|
verticalVersionId: r.vertical_version_id,
|
|
1147
1271
|
migrationFailure: mapMigrationFailure(r),
|
|
1272
|
+
forkedFrom: r.forked_from,
|
|
1273
|
+
forkedAt: r.forked_at,
|
|
1274
|
+
expiresAt: r.expires_at,
|
|
1148
1275
|
createdAt: r.created_at,
|
|
1149
1276
|
});
|
|
1150
1277
|
// Scope lifecycle transition (control-plane.md §4.2): validate ownership,
|
|
@@ -1361,6 +1488,16 @@ export class SqliteScopeHost {
|
|
|
1361
1488
|
.run(status, note ?? null, hostname);
|
|
1362
1489
|
this.recordAdmin(actor, 'setHostnameStatus', { tenantId: row.tenant_id, scopeId: row.scope_id }, { status: row.status }, { status, note: note ?? null });
|
|
1363
1490
|
},
|
|
1491
|
+
unbindHostname: async (actor, raw) => {
|
|
1492
|
+
const hostname = raw.toLowerCase(); // DNS is case-insensitive; the map is normalized
|
|
1493
|
+
const row = this.directory
|
|
1494
|
+
.prepare('SELECT tenant_id, scope_id, status FROM hostnames WHERE hostname = ?')
|
|
1495
|
+
.get(hostname);
|
|
1496
|
+
if (!row)
|
|
1497
|
+
return; // idempotent, and a no-op is not audited
|
|
1498
|
+
this.directory.prepare('DELETE FROM hostnames WHERE hostname = ?').run(hostname);
|
|
1499
|
+
this.recordAdmin(actor, 'unbindHostname', { tenantId: row.tenant_id, scopeId: row.scope_id }, { hostname, status: row.status }, null);
|
|
1500
|
+
},
|
|
1364
1501
|
listHostnames: async (actor, filter) => {
|
|
1365
1502
|
const where = [];
|
|
1366
1503
|
const params = [];
|
|
@@ -1435,6 +1572,15 @@ export class SqliteScopeHost {
|
|
|
1435
1572
|
this.directory
|
|
1436
1573
|
.prepare('UPDATE verticals SET env_spec = ?, install_spec = ? WHERE slug = ?')
|
|
1437
1574
|
.run(envSpecJson, installSpecJson, parsed.slug);
|
|
1575
|
+
// For BUILTIN verticals `listed` is seed metadata too (derived from the catalog's
|
|
1576
|
+
// `connected` flag), so it refreshes alongside — without this, rows registered
|
|
1577
|
+
// before they were listable stay unlisted forever (the empty-marketplace bug).
|
|
1578
|
+
// A pushed vertical's `listed` is the staff publish decision — never touched.
|
|
1579
|
+
if (parsed.source === 'builtin') {
|
|
1580
|
+
this.directory
|
|
1581
|
+
.prepare('UPDATE verticals SET listed = ? WHERE slug = ?')
|
|
1582
|
+
.run(parsed.listed ? 1 : 0, parsed.slug);
|
|
1583
|
+
}
|
|
1438
1584
|
return;
|
|
1439
1585
|
}
|
|
1440
1586
|
if (existing.ownerTenant !== parsed.ownerTenant) {
|
|
@@ -1456,18 +1602,25 @@ export class SqliteScopeHost {
|
|
|
1456
1602
|
},
|
|
1457
1603
|
publishVersion: async (actor, input) => {
|
|
1458
1604
|
const parsed = publishVersionInput.parse(input);
|
|
1459
|
-
|
|
1605
|
+
const owning = readVertical(parsed.verticalSlug);
|
|
1606
|
+
if (!owning) {
|
|
1460
1607
|
throw new Error(`unknown vertical '${parsed.verticalSlug}'`);
|
|
1461
1608
|
}
|
|
1462
|
-
// Lands PENDING
|
|
1463
|
-
//
|
|
1609
|
+
// Lands PENDING — a push is not a deploy — except for a PRIVATE vertical
|
|
1610
|
+
// (tenant-owned, not listed), whose blast radius is its own tenant: there the
|
|
1611
|
+
// sandbox contract is the gate and the version self-admits, noted so the
|
|
1612
|
+
// publish seam can tell a staff vouch from this shortcut.
|
|
1613
|
+
const selfAdmits = owning.ownerTenant !== null && !owning.listed;
|
|
1464
1614
|
this.directory
|
|
1465
1615
|
.prepare(`INSERT INTO vertical_versions
|
|
1466
1616
|
(id, vertical_slug, version, manifest_digest, permission_digest,
|
|
1467
1617
|
migration_digest, deployment_ref, admission, admission_note, created_at)
|
|
1468
|
-
VALUES (?, ?, ?, ?, ?, ?, ?,
|
|
1469
|
-
.run(parsed.id, parsed.verticalSlug, parsed.version, parsed.manifestDigest, parsed.permissionDigest, parsed.migrationDigest, parsed.deploymentRef, new Date().toISOString());
|
|
1470
|
-
this.recordAdmin(actor, 'publishVersion', { tenantId: null }, null,
|
|
1618
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`)
|
|
1619
|
+
.run(parsed.id, parsed.verticalSlug, parsed.version, parsed.manifestDigest, parsed.permissionDigest, parsed.migrationDigest, parsed.deploymentRef, selfAdmits ? 'admitted' : 'pending', selfAdmits ? AUTO_ADMISSION_NOTE : null, new Date().toISOString());
|
|
1620
|
+
this.recordAdmin(actor, 'publishVersion', { tenantId: null }, null, {
|
|
1621
|
+
...parsed,
|
|
1622
|
+
admission: selfAdmits ? 'admitted' : 'pending',
|
|
1623
|
+
});
|
|
1471
1624
|
},
|
|
1472
1625
|
listVersions: async (actor, verticalSlug) => {
|
|
1473
1626
|
const rows = this.directory
|
|
@@ -1480,6 +1633,19 @@ export class SqliteScopeHost {
|
|
|
1480
1633
|
const existing = readVertical(slug);
|
|
1481
1634
|
if (!existing)
|
|
1482
1635
|
throw new Error(`unknown vertical '${slug}'`);
|
|
1636
|
+
// Listing is the moment other tenants start trusting this code, so the
|
|
1637
|
+
// version they would install must carry a real staff vouch — an auto-admitted
|
|
1638
|
+
// prod version has never been read by anyone but its author.
|
|
1639
|
+
if (listed) {
|
|
1640
|
+
const prod = this.directory
|
|
1641
|
+
.prepare("SELECT version_id FROM vertical_channels WHERE vertical_slug = ? AND channel = 'prod'")
|
|
1642
|
+
.get(slug);
|
|
1643
|
+
const prodVersion = prod ? readVersion(prod.version_id) : undefined;
|
|
1644
|
+
if (prodVersion?.admissionNote === AUTO_ADMISSION_NOTE) {
|
|
1645
|
+
throw new Error(`vertical '${slug}' prod version ${prodVersion.id} is auto-admitted (private self-serve) — ` +
|
|
1646
|
+
`a staff admit must vouch for it before listing`);
|
|
1647
|
+
}
|
|
1648
|
+
}
|
|
1483
1649
|
// Resolve any pending publish request either way, and set the flag.
|
|
1484
1650
|
this.directory
|
|
1485
1651
|
.prepare('UPDATE verticals SET listed = ?, publish_requested_at = NULL WHERE slug = ?')
|
|
@@ -1493,12 +1659,53 @@ export class SqliteScopeHost {
|
|
|
1493
1659
|
this.directory.prepare('UPDATE verticals SET publish_requested_at = ? WHERE slug = ?').run(new Date().toISOString(), slug);
|
|
1494
1660
|
this.recordAdmin(actor, 'requestPublish', { tenantId: null }, null, { slug });
|
|
1495
1661
|
},
|
|
1662
|
+
setVerticalInstallsBlocked: async (actor, slug, blocked) => {
|
|
1663
|
+
const existing = readVertical(slug);
|
|
1664
|
+
if (!existing)
|
|
1665
|
+
throw new Error(`unknown vertical '${slug}'`);
|
|
1666
|
+
this.directory
|
|
1667
|
+
.prepare('UPDATE verticals SET installs_blocked = ? WHERE slug = ?')
|
|
1668
|
+
.run(blocked ? 1 : 0, slug);
|
|
1669
|
+
this.recordAdmin(actor, 'setVerticalInstallsBlocked', { tenantId: null }, { installsBlocked: existing.installsBlocked }, { installsBlocked: blocked });
|
|
1670
|
+
},
|
|
1671
|
+
deleteVertical: async (actor, slug) => {
|
|
1672
|
+
const existing = readVertical(slug);
|
|
1673
|
+
if (!existing)
|
|
1674
|
+
throw new Error(`unknown vertical '${slug}'`);
|
|
1675
|
+
// Refuse while any scope is bound: a deleted registry row would strand those
|
|
1676
|
+
// scopes' version pins and routing. The count names the blast radius.
|
|
1677
|
+
const bound = this.directory
|
|
1678
|
+
.prepare('SELECT COUNT(*) AS n FROM scopes WHERE vertical = ?')
|
|
1679
|
+
.get(slug);
|
|
1680
|
+
if (bound.n > 0) {
|
|
1681
|
+
throw new Error(`vertical '${slug}' still backs ${bound.n} scope(s) — delete or rebind them first`);
|
|
1682
|
+
}
|
|
1683
|
+
// Deployed dispatch scripts are NOT reaped here — they become orphans for the
|
|
1684
|
+
// cleanup script (#248), never destroyed alongside a registry row.
|
|
1685
|
+
this.directory.prepare('DELETE FROM vertical_channels WHERE vertical_slug = ?').run(slug);
|
|
1686
|
+
this.directory.prepare('DELETE FROM vertical_channel_history WHERE vertical_slug = ?').run(slug);
|
|
1687
|
+
this.directory.prepare('DELETE FROM vertical_versions WHERE vertical_slug = ?').run(slug);
|
|
1688
|
+
this.directory.prepare('DELETE FROM verticals WHERE slug = ?').run(slug);
|
|
1689
|
+
this.recordAdmin(actor, 'deleteVertical', { tenantId: null }, { slug, source: existing.source, ownerTenant: existing.ownerTenant }, null);
|
|
1690
|
+
},
|
|
1496
1691
|
admitVersion: async (actor, versionId) => {
|
|
1497
1692
|
const v = readVersion(versionId);
|
|
1498
1693
|
if (!v)
|
|
1499
1694
|
throw new Error(`unknown version ${versionId}`);
|
|
1500
|
-
if (v.admission === 'admitted')
|
|
1501
|
-
|
|
1695
|
+
if (v.admission === 'admitted') {
|
|
1696
|
+
// Idempotent — except an AUTO-admitted version, which this upgrades to a
|
|
1697
|
+
// manual vouch by clearing the note (what the publish seam requires).
|
|
1698
|
+
if (v.admissionNote !== AUTO_ADMISSION_NOTE)
|
|
1699
|
+
return;
|
|
1700
|
+
this.directory
|
|
1701
|
+
.prepare('UPDATE vertical_versions SET admission_note = NULL WHERE id = ?')
|
|
1702
|
+
.run(versionId);
|
|
1703
|
+
this.recordAdmin(actor, 'admitVersion', { tenantId: null }, { admission: v.admission, note: v.admissionNote }, {
|
|
1704
|
+
admission: 'admitted',
|
|
1705
|
+
note: null,
|
|
1706
|
+
});
|
|
1707
|
+
return;
|
|
1708
|
+
}
|
|
1502
1709
|
if (v.admission === 'rejected') {
|
|
1503
1710
|
throw new Error(`version ${versionId} was rejected — publish a new one`);
|
|
1504
1711
|
}
|
|
@@ -1554,11 +1761,47 @@ export class SqliteScopeHost {
|
|
|
1554
1761
|
`${incoming.migrationDigest}) — acknowledge it explicitly to promote`);
|
|
1555
1762
|
}
|
|
1556
1763
|
}
|
|
1764
|
+
const promotedAt = new Date().toISOString();
|
|
1557
1765
|
this.directory
|
|
1558
1766
|
.prepare(`INSERT INTO vertical_channels (vertical_slug, channel, version_id, updated_at)
|
|
1559
1767
|
VALUES (?, ?, ?, ?)
|
|
1560
1768
|
ON CONFLICT (vertical_slug, channel) DO UPDATE SET version_id = ?, updated_at = ?`)
|
|
1561
|
-
.run(verticalSlug, channel, versionId,
|
|
1769
|
+
.run(verticalSlug, channel, versionId, promotedAt, versionId, promotedAt);
|
|
1770
|
+
// The timeline row: what makes rollback a choice among recorded moments, and
|
|
1771
|
+
// `at` the PITR anchor a data rollback would rewind to.
|
|
1772
|
+
this.directory
|
|
1773
|
+
.prepare(`INSERT INTO vertical_channel_history
|
|
1774
|
+
(id, vertical_slug, channel, version_id, from_version_id, actor, at)
|
|
1775
|
+
VALUES (?, ?, ?, ?, ?, ?, ?)`)
|
|
1776
|
+
.run(ulid(), verticalSlug, channel, versionId, outgoing?.id ?? null, actor, promotedAt);
|
|
1777
|
+
// For a PRIVATE vertical, prod IS what the owner's apps run: re-point the
|
|
1778
|
+
// owning tenant's live scopes in the same act, so merge-to-main (push +
|
|
1779
|
+
// promote) is a complete deploy and a rollback promote reaches the running
|
|
1780
|
+
// app. D-30's lockstep concern is a SHARED vertical's many tenants, which a
|
|
1781
|
+
// private vertical cannot have — this fires for no one else. Snapshots and
|
|
1782
|
+
// forks (forked_from set) keep their frontier untouched, and a rebind that
|
|
1783
|
+
// crosses a migration digest snapshots first (fork-before-promote, §4).
|
|
1784
|
+
if (channel === 'prod') {
|
|
1785
|
+
const owning = readVertical(verticalSlug);
|
|
1786
|
+
if (owning && owning.ownerTenant !== null && !owning.listed) {
|
|
1787
|
+
const bound = this.directory
|
|
1788
|
+
.prepare(`SELECT scope_id, tenant_id, vertical_version_id FROM scopes
|
|
1789
|
+
WHERE vertical = ? AND tenant_id = ? AND status = 'active' AND forked_from IS NULL`)
|
|
1790
|
+
.all(verticalSlug, owning.ownerTenant);
|
|
1791
|
+
for (const s of bound) {
|
|
1792
|
+
if (s.vertical_version_id === versionId)
|
|
1793
|
+
continue;
|
|
1794
|
+
const prev = s.vertical_version_id ? readVersion(s.vertical_version_id) : undefined;
|
|
1795
|
+
if (prev && prev.migrationDigest !== incoming.migrationDigest) {
|
|
1796
|
+
await this.snapshotScope(actor, s.tenant_id, s.scope_id);
|
|
1797
|
+
}
|
|
1798
|
+
this.directory
|
|
1799
|
+
.prepare('UPDATE scopes SET vertical_version_id = ?, vertical = ? WHERE scope_id = ?')
|
|
1800
|
+
.run(versionId, verticalSlug, s.scope_id);
|
|
1801
|
+
this.recordAdmin(actor, 'bindScopeVersion', { tenantId: s.tenant_id, scopeId: s.scope_id }, prev ? { versionId: prev.id, version: prev.version } : null, { versionId, vertical: verticalSlug, version: incoming.version, via: 'promoteVersion' });
|
|
1802
|
+
}
|
|
1803
|
+
}
|
|
1804
|
+
}
|
|
1562
1805
|
// The acknowledgement is recorded, not just enforced: that is what turns
|
|
1563
1806
|
// "someone reviewed the permission change" into evidence.
|
|
1564
1807
|
this.recordAdmin(actor, 'promoteVersion', { tenantId: null, vertical: verticalSlug }, outgoing ? { versionId: outgoing.id, version: outgoing.version } : null, { channel, versionId, version: incoming.version, acknowledged: ack });
|
|
@@ -1575,7 +1818,26 @@ export class SqliteScopeHost {
|
|
|
1575
1818
|
updatedAt: r.updated_at,
|
|
1576
1819
|
}));
|
|
1577
1820
|
},
|
|
1578
|
-
|
|
1821
|
+
listChannelHistory: async (actor, verticalSlug, channel) => {
|
|
1822
|
+
const rows = (channel
|
|
1823
|
+
? this.directory
|
|
1824
|
+
.prepare('SELECT * FROM vertical_channel_history WHERE vertical_slug = ? AND channel = ? ORDER BY id DESC')
|
|
1825
|
+
.all(verticalSlug, channel)
|
|
1826
|
+
: this.directory
|
|
1827
|
+
.prepare('SELECT * FROM vertical_channel_history WHERE vertical_slug = ? ORDER BY id DESC')
|
|
1828
|
+
.all(verticalSlug));
|
|
1829
|
+
this.recordAccess(actor, 'listChannelHistory', {}, { verticalSlug, channel }, rows.length);
|
|
1830
|
+
return rows.map((r) => channelHistoryEntry.parse({
|
|
1831
|
+
id: r.id,
|
|
1832
|
+
verticalSlug: r.vertical_slug,
|
|
1833
|
+
channel: r.channel,
|
|
1834
|
+
versionId: r.version_id,
|
|
1835
|
+
fromVersionId: r.from_version_id,
|
|
1836
|
+
actor: r.actor,
|
|
1837
|
+
at: r.at,
|
|
1838
|
+
}));
|
|
1839
|
+
},
|
|
1840
|
+
bindScopeVersion: async (actor, tenantId, scopeId, versionId, opts) => {
|
|
1579
1841
|
const v = readVersion(versionId);
|
|
1580
1842
|
if (!v)
|
|
1581
1843
|
throw new Error(`unknown version ${versionId}`);
|
|
@@ -1586,11 +1848,20 @@ export class SqliteScopeHost {
|
|
|
1586
1848
|
throw new Error(`version ${versionId} is ${v.admission}, not admitted — it cannot be bound to a scope`);
|
|
1587
1849
|
}
|
|
1588
1850
|
const scope = this.directory
|
|
1589
|
-
.prepare('SELECT tenant_id FROM scopes WHERE scope_id = ?')
|
|
1851
|
+
.prepare('SELECT tenant_id, vertical_version_id FROM scopes WHERE scope_id = ?')
|
|
1590
1852
|
.get(scopeId);
|
|
1591
1853
|
if (!scope || scope.tenant_id !== tenantId) {
|
|
1592
1854
|
throw new Error(`unknown scope ${scopeId} in tenant ${tenantId}`);
|
|
1593
1855
|
}
|
|
1856
|
+
// Fork-before-promote (§4): snapshot the pre-migration data if this rebind
|
|
1857
|
+
// crosses a migration boundary. Gated on a real digest change — a code-only
|
|
1858
|
+
// rebind snapshots nothing — and on the caller opting in (until GC ships).
|
|
1859
|
+
if (opts?.snapshot && scope.vertical_version_id) {
|
|
1860
|
+
const outgoing = readVersion(scope.vertical_version_id);
|
|
1861
|
+
if (outgoing && outgoing.migrationDigest !== v.migrationDigest) {
|
|
1862
|
+
await this.snapshotScope(actor, tenantId, scopeId);
|
|
1863
|
+
}
|
|
1864
|
+
}
|
|
1594
1865
|
this.directory
|
|
1595
1866
|
.prepare('UPDATE scopes SET vertical_version_id = ?, vertical = ? WHERE scope_id = ?')
|
|
1596
1867
|
.run(versionId, v.verticalSlug, scopeId);
|
|
@@ -1778,6 +2049,59 @@ export class SqliteScopeHost {
|
|
|
1778
2049
|
this.recordAccess(actor, 'readScopeTable', { tenantId, scopeId }, { table: input.table, limit, offset }, rows.length);
|
|
1779
2050
|
return { table: input.table, columns, rows, rowCount, limit, offset };
|
|
1780
2051
|
},
|
|
2052
|
+
queryScope: async (actor, tenantId, scopeId, input) => {
|
|
2053
|
+
const db = this.scopeDbFor(tenantId, scopeId);
|
|
2054
|
+
// Layer 1, shared: the kernel's textual gate (single statement, read verbs
|
|
2055
|
+
// only) — the checked statement is the one that runs.
|
|
2056
|
+
const sql = assertReadOnlyQuery(input.sql);
|
|
2057
|
+
// Layer 2, authoritative: sqlite3_stmt_readonly via better-sqlite3. prepare()
|
|
2058
|
+
// itself rejects multi-statement strings and bad SQL with the driver's message.
|
|
2059
|
+
const stmt = db.prepare(sql);
|
|
2060
|
+
if (!stmt.readonly)
|
|
2061
|
+
throw new Error('read-only console: statement is not read-only');
|
|
2062
|
+
if (!stmt.reader)
|
|
2063
|
+
return { columns: [], rows: [], truncated: false };
|
|
2064
|
+
stmt.raw(true);
|
|
2065
|
+
const rows = [];
|
|
2066
|
+
let truncated = false;
|
|
2067
|
+
// Iterate rather than .all(): the row cap bounds what leaves the DB, so an
|
|
2068
|
+
// over-broad SELECT costs a screenful, not the table.
|
|
2069
|
+
for (const row of stmt.iterate()) {
|
|
2070
|
+
if (rows.length >= SCOPE_QUERY_ROW_MAX) {
|
|
2071
|
+
truncated = true;
|
|
2072
|
+
break;
|
|
2073
|
+
}
|
|
2074
|
+
rows.push(row.map(cellToJson));
|
|
2075
|
+
}
|
|
2076
|
+
const columns = stmt.columns().map((c) => c.name);
|
|
2077
|
+
// The statement itself is the logged argument — the K-24 access log is the
|
|
2078
|
+
// evidence trail for what staff read, and here the read IS the SQL.
|
|
2079
|
+
this.recordAccess(actor, 'queryScope', { tenantId, scopeId }, { sql }, rows.length);
|
|
2080
|
+
return { columns, rows, truncated };
|
|
2081
|
+
},
|
|
2082
|
+
exportScope: async (actor, tenantId, scopeId) => {
|
|
2083
|
+
// K-3: cross-check the pair before opening anything (same as the introspection reads).
|
|
2084
|
+
const db = this.scopeDbFor(tenantId, scopeId);
|
|
2085
|
+
// Every real table, keeping the `_substrat_*` spine but dropping SQLite's own
|
|
2086
|
+
// `sqlite_*` internals — those are auto-managed and `CREATE TABLE sqlite_*` is
|
|
2087
|
+
// rejected on reload. `sql` is the CREATE statement, replayed to rebuild the schema.
|
|
2088
|
+
const defs = db
|
|
2089
|
+
.prepare(`SELECT name, sql FROM sqlite_master
|
|
2090
|
+
WHERE type = 'table' AND name NOT LIKE 'sqlite_%' AND sql IS NOT NULL
|
|
2091
|
+
ORDER BY name`)
|
|
2092
|
+
.all();
|
|
2093
|
+
const tables = defs.map(({ name, sql }) => {
|
|
2094
|
+
// `.raw(true)` gives positional rows; cells stay as-is (blobs are Buffers, not
|
|
2095
|
+
// nulled as in a UI read) so the dump is byte-faithful. The name is from the live
|
|
2096
|
+
// schema, never user input, so the quoted identifier is safe.
|
|
2097
|
+
const stmt = db.prepare(`SELECT * FROM "${name}"`).raw(true);
|
|
2098
|
+
const rows = stmt.all();
|
|
2099
|
+
const columns = stmt.columns().map((c) => c.name);
|
|
2100
|
+
return { name, ddl: sql, columns, rows };
|
|
2101
|
+
});
|
|
2102
|
+
this.recordAccess(actor, 'exportScope', { tenantId, scopeId }, null, tables.length);
|
|
2103
|
+
return { tenantId, scopeId, capturedAt: new Date().toISOString(), tables };
|
|
2104
|
+
},
|
|
1781
2105
|
activateScope: async (actor, tenantId, scopeId) => {
|
|
1782
2106
|
// Idempotent on `active`, unaudited because nothing changed. Provisioning is
|
|
1783
2107
|
// a two-phase creation that the reconciliation sweep re-runs (K-31), so a
|
|
@@ -2287,6 +2611,7 @@ export class SqliteScopeHost {
|
|
|
2287
2611
|
this.ensureColumn(this.directory, 'verticals', 'install_spec', 'install_spec TEXT');
|
|
2288
2612
|
this.ensureColumn(this.directory, 'verticals', 'listed', 'listed INTEGER NOT NULL DEFAULT 0');
|
|
2289
2613
|
this.ensureColumn(this.directory, 'verticals', 'publish_requested_at', 'publish_requested_at TEXT');
|
|
2614
|
+
this.ensureColumn(this.directory, 'verticals', 'installs_blocked', 'installs_blocked INTEGER NOT NULL DEFAULT 0');
|
|
2290
2615
|
const existing = new Set(this.directory.prepare('PRAGMA table_info(scopes)').all().map((c) => c.name));
|
|
2291
2616
|
for (const [column, ddl] of [
|
|
2292
2617
|
['parent_scope_id', 'parent_scope_id TEXT'],
|
|
@@ -2299,6 +2624,9 @@ export class SqliteScopeHost {
|
|
|
2299
2624
|
['migration_error', 'migration_error TEXT'],
|
|
2300
2625
|
['migration_attempts', 'migration_attempts INTEGER NOT NULL DEFAULT 0'],
|
|
2301
2626
|
['migration_last_attempt_at', 'migration_last_attempt_at TEXT'],
|
|
2627
|
+
['forked_from', 'forked_from TEXT'],
|
|
2628
|
+
['forked_at', 'forked_at TEXT'],
|
|
2629
|
+
['expires_at', 'expires_at TEXT'],
|
|
2302
2630
|
]) {
|
|
2303
2631
|
if (!existing.has(column))
|
|
2304
2632
|
this.directory.exec(`ALTER TABLE scopes ADD COLUMN ${ddl}`);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@substrat-run/adapter-sqlite",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.17.0",
|
|
4
4
|
"description": "Pure-SQLite scope host — real kernel semantics with no Cloudflare dependency (D-14): local dev, CI, self-host/escrow",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"repository": {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "git+https://github.com/substrat-run/substrat.git",
|
|
9
9
|
"directory": "packages/adapter-sqlite"
|
|
10
10
|
},
|
|
11
|
-
"homepage": "https://
|
|
11
|
+
"homepage": "https://substrat.net/reference/adapter-sqlite",
|
|
12
12
|
"type": "module",
|
|
13
13
|
"main": "./dist/index.js",
|
|
14
14
|
"types": "./dist/index.d.ts",
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
],
|
|
24
24
|
"dependencies": {
|
|
25
25
|
"better-sqlite3": "^12.0.0",
|
|
26
|
-
"@substrat-run/
|
|
27
|
-
"@substrat-run/
|
|
26
|
+
"@substrat-run/kernel": "^0.17.0",
|
|
27
|
+
"@substrat-run/contracts": "^0.17.0"
|
|
28
28
|
},
|
|
29
29
|
"devDependencies": {
|
|
30
30
|
"@types/better-sqlite3": "^7.6.0",
|
|
31
31
|
"typescript": "^7.0.0",
|
|
32
32
|
"vitest": "^3.0.0",
|
|
33
|
-
"@substrat-run/contract-tests": "^0.
|
|
33
|
+
"@substrat-run/contract-tests": "^0.17.0"
|
|
34
34
|
},
|
|
35
35
|
"publishConfig": {
|
|
36
36
|
"access": "public"
|