@substrat-run/adapter-cloudflare 0.89.0 → 0.90.1
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/dist/control-plane-do.d.ts +8 -0
- package/dist/control-plane-do.d.ts.map +1 -1
- package/dist/control-plane-do.js +25 -1
- package/dist/control-plane-do.js.map +1 -1
- package/dist/host.d.ts +15 -2
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +97 -5
- package/dist/host.js.map +1 -1
- package/dist/scope-do.d.ts +1 -0
- package/dist/scope-do.d.ts.map +1 -1
- package/dist/scope-do.js +117 -17
- package/dist/scope-do.js.map +1 -1
- package/package.json +4 -4
package/dist/scope-do.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DurableObject } from 'cloudflare:workers';
|
|
2
2
|
import { ATTACHMENT_ADDED, ATTACHMENT_REMOVED, attachmentRecord, domainEvent, domainEventInput, eventId, instant, objectRef, toWireFailure, grantRefFromProof, principalId, platformRequestInput, platformRequestId, MAX_PENDING_PLATFORM_REQUESTS, platformRequest, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, listLimitOf, requestFingerprint, substratError, } from '@substrat-run/contracts';
|
|
3
|
-
import { ulid, assertAllowed, ConnectionSealingKeyUnavailableError, noSealingKeyMessage, sealTo, assertReadOnlyQuery, entitlementDenial, platformRequestHistoryQuery, PLATFORM_REQUEST_COLUMNS, denialListQuery, denialSummaryQuery, denialTotalsQuery, DENIAL_WINDOW_QUERY, mapDenialRow, mapDenialBucketRow, PermissionDenied, createAtomic, NotSearchable, isSearchIndexTable, searchIndexDdl, searchIndexMigrations, searchIndexPlans, NotListable, listIndexMigrations, listIndexPlans, listQuery, cursorOf, searchLimit, searchMatchExpression, searchQuery, IDEMPOTENCY_DDL, assertIdempotencyKey, idempotencyLookupQuery, idempotencyPruneStatement, idempotencyRecordStatement, idempotencyOptedOutMessage, replayFor, entityVersionQuery, entityVersionOf, assertIfMatch, OUTBOX_ENTITY_INDEX, } from '@substrat-run/kernel';
|
|
3
|
+
import { ulid, assertAllowed, ConnectionSealingKeyUnavailableError, noSealingKeyMessage, sealTo, assertReadOnlyQuery, entitlementDenial, platformRequestHistoryQuery, PLATFORM_REQUEST_COLUMNS, denialListQuery, denialSummaryQuery, denialTotalsQuery, DENIAL_WINDOW_QUERY, mapDenialRow, mapDenialBucketRow, PermissionDenied, assertImpersonationWrites, impersonationStampOf, createAtomic, NotSearchable, isSearchIndexTable, searchIndexDdl, searchIndexMigrations, searchIndexPlans, NotListable, listIndexMigrations, listIndexPlans, listQuery, cursorOf, searchLimit, searchMatchExpression, searchQuery, IDEMPOTENCY_DDL, assertIdempotencyKey, idempotencyLookupQuery, idempotencyPruneStatement, idempotencyRecordStatement, idempotencyOptedOutMessage, replayFor, entityVersionQuery, entityVersionOf, assertIfMatch, OUTBOX_ENTITY_INDEX, } from '@substrat-run/kernel';
|
|
4
4
|
import { OperationQueue } from './serialization.js';
|
|
5
5
|
import { doScopedSql } from './sql.js';
|
|
6
6
|
import { createDoTupleChecker, createLocalControlPlaneReader } from './checker.js';
|
|
@@ -23,6 +23,10 @@ const KERNEL_DDL = `
|
|
|
23
23
|
-- K-34: the checks the emitting operation passed (JSON [{permission, grant?}]).
|
|
24
24
|
-- NULL on rows written before the field existed -- honestly unrecorded, not empty.
|
|
25
25
|
authorization TEXT,
|
|
26
|
+
-- K-42: the staff actor + session an impersonated operation ran under (JSON
|
|
27
|
+
-- session/by). NULL is the ordinary case -- nobody was impersonating -- and the
|
|
28
|
+
-- actor column above stays the principal the permission model answered about.
|
|
29
|
+
impersonation TEXT,
|
|
26
30
|
drained_at TEXT
|
|
27
31
|
);
|
|
28
32
|
-- platform-intents.md: durable intents a vertical enqueues (ctx.requestPlatform) for the platform
|
|
@@ -33,6 +37,8 @@ const KERNEL_DDL = `
|
|
|
33
37
|
kind TEXT NOT NULL,
|
|
34
38
|
payload TEXT NOT NULL,
|
|
35
39
|
requested_by TEXT NOT NULL,
|
|
40
|
+
-- K-42: the staff actor + session, when the intent was raised under one.
|
|
41
|
+
impersonation TEXT,
|
|
36
42
|
status TEXT NOT NULL DEFAULT 'pending',
|
|
37
43
|
attempts INTEGER NOT NULL DEFAULT 0,
|
|
38
44
|
last_error TEXT,
|
|
@@ -57,6 +63,8 @@ const KERNEL_DDL = `
|
|
|
57
63
|
tenant_id TEXT NOT NULL,
|
|
58
64
|
scope_id TEXT,
|
|
59
65
|
operation TEXT,
|
|
66
|
+
-- K-42: WHICH of the two actors was refused is exactly what this log is for.
|
|
67
|
+
impersonation TEXT,
|
|
60
68
|
at TEXT NOT NULL,
|
|
61
69
|
drained_at TEXT
|
|
62
70
|
);
|
|
@@ -286,6 +294,7 @@ function rowToPlatformRequest(r) {
|
|
|
286
294
|
kind: r.kind,
|
|
287
295
|
payload: JSON.parse(r.payload),
|
|
288
296
|
requestedBy: JSON.parse(r.requested_by),
|
|
297
|
+
impersonation: r.impersonation == null ? null : JSON.parse(r.impersonation),
|
|
289
298
|
status: r.status,
|
|
290
299
|
attempts: r.attempts,
|
|
291
300
|
lastError: r.last_error,
|
|
@@ -455,6 +464,13 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
455
464
|
// intent settled before this column reads as "nobody classified this" rather
|
|
456
465
|
// than claiming an origin the drain never decided.
|
|
457
466
|
'ALTER TABLE _substrat_platform_requests ADD COLUMN last_failure TEXT',
|
|
467
|
+
// K-42: the two-actor stamp on the three spine tables that record who did
|
|
468
|
+
// what, for a scope DO created before impersonation existed. Nullable
|
|
469
|
+
// everywhere, and the null means "nobody was impersonating" rather than
|
|
470
|
+
// "unrecorded" — every one of those rows predates the possibility.
|
|
471
|
+
'ALTER TABLE _substrat_outbox ADD COLUMN impersonation TEXT',
|
|
472
|
+
'ALTER TABLE _substrat_platform_requests ADD COLUMN impersonation TEXT',
|
|
473
|
+
'ALTER TABLE _substrat_denials ADD COLUMN impersonation TEXT',
|
|
458
474
|
]) {
|
|
459
475
|
try {
|
|
460
476
|
this.sql.exec(alter);
|
|
@@ -829,19 +845,27 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
829
845
|
* sent an `If-Match` and does not see it refuses the success. An old DO
|
|
830
846
|
* cannot set the acknowledgement, which is exactly how the skew is caught.
|
|
831
847
|
*/
|
|
832
|
-
invokeOptions
|
|
848
|
+
invokeOptions,
|
|
849
|
+
/**
|
|
850
|
+
* K-42: the session this call runs under, resolved by the coordinator from
|
|
851
|
+
* the directory (which this DO cannot read) and passed WHOLE rather than as
|
|
852
|
+
* an id. The coordinator has already checked it is live, unexpired and for
|
|
853
|
+
* this scope; the DO uses it for the two-actor stamp and for the read-only
|
|
854
|
+
* bound, and nothing here can be reached without it having been minted.
|
|
855
|
+
*/
|
|
856
|
+
impersonation) {
|
|
833
857
|
if (!failureEnvelope) {
|
|
834
858
|
// Legacy path, byte-for-byte what it was: rewrapped so a non-plain error (a
|
|
835
859
|
// ZodError, whose `message` is a getter) still arrives with its message.
|
|
836
860
|
try {
|
|
837
|
-
return await this.invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions);
|
|
861
|
+
return await this.invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions, impersonation);
|
|
838
862
|
}
|
|
839
863
|
catch (err) {
|
|
840
864
|
throw toRpcError(err);
|
|
841
865
|
}
|
|
842
866
|
}
|
|
843
867
|
try {
|
|
844
|
-
return await this.invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions);
|
|
868
|
+
return await this.invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions, impersonation);
|
|
845
869
|
}
|
|
846
870
|
catch (err) {
|
|
847
871
|
// The ONE place the error keeps its structure: flattened here, rebuilt by the
|
|
@@ -851,7 +875,9 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
851
875
|
}
|
|
852
876
|
}
|
|
853
877
|
/** The operation path itself. Throws; `invoke` decides how that reaches the caller. */
|
|
854
|
-
async invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions
|
|
878
|
+
async invokeOrThrow(operation, input, principal, tenantId, scopeId, connectionId, requiredEntitlement, systemModuleId, invokeOptions,
|
|
879
|
+
/** K-42: the session, resolved coordinator-side. See `invoke` above. */
|
|
880
|
+
impersonation) {
|
|
855
881
|
await this.ensureMigrations();
|
|
856
882
|
const handler = this.operations.get(operation);
|
|
857
883
|
// `not_found`, not a bare throw (#113): every vertical hand-matched this message
|
|
@@ -930,12 +956,23 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
930
956
|
// The envelope return (below) is the DO↔coordinator wire for it; both sides
|
|
931
957
|
// live in this package and deploy as one script, so the shape never skews.
|
|
932
958
|
const signals = { platformRequests: 0 };
|
|
959
|
+
/**
|
|
960
|
+
* K-42: how a read-only session is made to BE read-only.
|
|
961
|
+
*
|
|
962
|
+
* Thrown on success, so the transaction never commits — the same
|
|
963
|
+
* mechanism `queryScope`'s console uses, for the same reason: the DO's
|
|
964
|
+
* `exec` exposes no read-only flag, so refusing to commit is the only
|
|
965
|
+
* enforcement that survives a handler writing rows with plain SQL.
|
|
966
|
+
* `ctx.emit` and the other effecting verbs refuse outright as well; that
|
|
967
|
+
* is the half a support engineer sees, this is the half that holds.
|
|
968
|
+
*/
|
|
969
|
+
const rollback = new Error('read-only impersonation rollback');
|
|
933
970
|
// The async transaction is the K-4 boundary: guards + handler + emits
|
|
934
971
|
// commit together, or a throw (from either) rolls domain writes AND
|
|
935
972
|
// emitted events back as one — verified across `await` in workerd.
|
|
936
973
|
try {
|
|
937
974
|
await this.ctx.storage.transaction(async () => {
|
|
938
|
-
const ctx = this.operationContext(principal, tenantId, scopeId, undefined, connectionId, systemModuleId, signals);
|
|
975
|
+
const ctx = this.operationContext(principal, tenantId, scopeId, undefined, connectionId, systemModuleId, signals, impersonation);
|
|
939
976
|
// #116: a retry is answered from the recording, and nothing else runs
|
|
940
977
|
// — not the guards, not the handler, not the permission check inside
|
|
941
978
|
// it. Keyed by SUBJECT, so a caller only ever reaches its own
|
|
@@ -981,9 +1018,37 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
981
1018
|
const prune = idempotencyPruneStatement(at);
|
|
982
1019
|
this.sql.exec(prune.sql, ...prune.params);
|
|
983
1020
|
}
|
|
1021
|
+
if (impersonation?.mode === 'read-only')
|
|
1022
|
+
throw rollback;
|
|
984
1023
|
});
|
|
985
1024
|
}
|
|
986
1025
|
catch (err) {
|
|
1026
|
+
// The read-only unwind, not a failure: `result` was assigned before the
|
|
1027
|
+
// throw and is the answer, while every row the handler wrote is gone.
|
|
1028
|
+
//
|
|
1029
|
+
// The acknowledgements ride along unchanged, because they are about
|
|
1030
|
+
// whether this DO UNDERSTOOD the arguments, not about what committed —
|
|
1031
|
+
// and a coordinator that sent `If-Match` to a read-only session must not
|
|
1032
|
+
// be told the host is too old to have evaluated it. The version reported
|
|
1033
|
+
// is the rolled-back one, which is the honest answer: nothing moved.
|
|
1034
|
+
if (err === rollback) {
|
|
1035
|
+
return {
|
|
1036
|
+
result,
|
|
1037
|
+
platformRequests: 0,
|
|
1038
|
+
impersonation: { honoured: true },
|
|
1039
|
+
...(idempotencyKey !== undefined
|
|
1040
|
+
? { idempotency: { keyHonoured: true, replayed } }
|
|
1041
|
+
: {}),
|
|
1042
|
+
...(guardedRef
|
|
1043
|
+
? {
|
|
1044
|
+
concurrency: {
|
|
1045
|
+
version: committedVersion,
|
|
1046
|
+
ifMatchChecked: invokeOptions?.ifMatch !== undefined,
|
|
1047
|
+
},
|
|
1048
|
+
}
|
|
1049
|
+
: {}),
|
|
1050
|
+
};
|
|
1051
|
+
}
|
|
987
1052
|
// K-35: the transaction has rolled back; record a refused check now, as its own
|
|
988
1053
|
// write (outside that transaction), so the denial survives the rollback.
|
|
989
1054
|
if (err instanceof PermissionDenied) {
|
|
@@ -991,7 +1056,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
991
1056
|
? { kind: 'system', id: systemModuleId }
|
|
992
1057
|
: connectionId
|
|
993
1058
|
? { kind: 'connection', id: connectionId }
|
|
994
|
-
: { kind: 'principal', id: principal }, tenantId, operation, err);
|
|
1059
|
+
: { kind: 'principal', id: principal }, tenantId, operation, err, impersonation);
|
|
995
1060
|
}
|
|
996
1061
|
// The ORIGINAL error, deliberately: `invoke` flattens it for the envelope
|
|
997
1062
|
// (which keeps its code and extensions) or rewraps it for the legacy throw
|
|
@@ -1007,6 +1072,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1007
1072
|
return {
|
|
1008
1073
|
result,
|
|
1009
1074
|
platformRequests: signals.platformRequests,
|
|
1075
|
+
...(impersonation ? { impersonation: { honoured: true } } : {}),
|
|
1010
1076
|
// The acknowledgement the coordinator's skew check reads (#116), on the
|
|
1011
1077
|
// same reasoning as `ifMatchChecked` below and with a sharper failure: a
|
|
1012
1078
|
// DO too old to know about keys would EXECUTE THE OPERATION AGAIN and
|
|
@@ -1415,9 +1481,18 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1415
1481
|
throw new Error(`too many pending platform requests (${pending}); the delivery retries once some have drained`);
|
|
1416
1482
|
}
|
|
1417
1483
|
const id = platformRequestId.parse(ulid());
|
|
1484
|
+
// K-42: the intent inherits the SOURCE EVENT's stamp rather than being written
|
|
1485
|
+
// unstamped. Nobody is impersonating at this moment — the drain runs long after
|
|
1486
|
+
// the session's invoke returned — but the intent exists BECAUSE of an event that
|
|
1487
|
+
// was raised under one, and the platform drain is where an operator asks who
|
|
1488
|
+
// caused an outbound effect. Read here rather than passed over the RPC: the DO
|
|
1489
|
+
// owns the outbox, so a coordinator cannot claim a stamp or drop one.
|
|
1490
|
+
const source = this.sql
|
|
1491
|
+
.exec('SELECT impersonation FROM _substrat_outbox WHERE id = ?', eventId)
|
|
1492
|
+
.toArray()[0];
|
|
1418
1493
|
this.sql.exec(`INSERT INTO _substrat_platform_requests
|
|
1419
|
-
(id, kind, payload, requested_by, status, attempts, requested_at)
|
|
1420
|
-
VALUES (?, ?, ?, ?, 'pending', 0, ?)`, id, kind, payload, requestedBy, instant.parse(new Date().toISOString()));
|
|
1494
|
+
(id, kind, payload, requested_by, impersonation, status, attempts, requested_at)
|
|
1495
|
+
VALUES (?, ?, ?, ?, ?, 'pending', 0, ?)`, id, kind, payload, requestedBy, source?.impersonation ?? null, instant.parse(new Date().toISOString()));
|
|
1421
1496
|
this.recordExecutorAttempt(eventId, deliveryId, null, null);
|
|
1422
1497
|
return id;
|
|
1423
1498
|
}
|
|
@@ -1764,7 +1839,8 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1764
1839
|
* catch after the storage transaction has rolled back, so this write is its own and
|
|
1765
1840
|
* survives — the whole point, since the denial is the write the operation could not make.
|
|
1766
1841
|
*/
|
|
1767
|
-
|
|
1842
|
+
/** K-42: the session a refused call ran under travels with the denial row. */
|
|
1843
|
+
recordDenial(subject, tenantId, operation, err, impersonation) {
|
|
1768
1844
|
// Only an ENFORCED denial (assertAllowed, which attaches the checked permission +
|
|
1769
1845
|
// node) is recorded. A module's own hand-thrown `new PermissionDenied('…')` carries
|
|
1770
1846
|
// no permission key and is left to the module.
|
|
@@ -1776,8 +1852,8 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1776
1852
|
? { connection: subject.id }
|
|
1777
1853
|
: subject.id;
|
|
1778
1854
|
this.sql.exec(`INSERT INTO _substrat_denials
|
|
1779
|
-
(id, actor, permission, tenant_id, scope_id, operation, at)
|
|
1780
|
-
VALUES (?, ?, ?, ?, ?, ?, ?)`, ulid(), JSON.stringify(actor), err.permission, err.node.tenantId, err.node.scopeId ?? null, operation, new Date().toISOString());
|
|
1855
|
+
(id, actor, permission, tenant_id, scope_id, operation, impersonation, at)
|
|
1856
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?)`, ulid(), JSON.stringify(actor), err.permission, err.node.tenantId, err.node.scopeId ?? null, operation, impersonation ? JSON.stringify(impersonationStampOf(impersonation)) : null, new Date().toISOString());
|
|
1781
1857
|
}
|
|
1782
1858
|
parseOutboxRow(row) {
|
|
1783
1859
|
return domainEvent.parse({
|
|
@@ -1792,13 +1868,26 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1792
1868
|
piiClass: row.pii_class,
|
|
1793
1869
|
...(row.subject_id ? { subjectId: row.subject_id } : {}),
|
|
1794
1870
|
...(row.authorization ? { authorization: JSON.parse(row.authorization) } : {}),
|
|
1871
|
+
// K-42: the stamp survives the read, so a consumer's event and an executor's
|
|
1872
|
+
// are the same fact the stored row is. Absent rather than null when nobody
|
|
1873
|
+
// was impersonating, because `DomainEvent.impersonation` is optional — the
|
|
1874
|
+
// shape module code never sees is also the shape it cannot branch on.
|
|
1875
|
+
...(row.impersonation ? { impersonation: JSON.parse(row.impersonation) } : {}),
|
|
1795
1876
|
payload: row.payload === null ? undefined : JSON.parse(row.payload),
|
|
1796
1877
|
});
|
|
1797
1878
|
}
|
|
1798
1879
|
// -- operation context (port of operationContext) -------------------------
|
|
1799
1880
|
operationContext(principal, tenantId, scopeId, systemActor, connectionId, systemModuleId,
|
|
1800
1881
|
/** #458: per-invoke tally of `ctx.requestPlatform` calls; absent for consumer dispatch. */
|
|
1801
|
-
signals
|
|
1882
|
+
signals,
|
|
1883
|
+
/**
|
|
1884
|
+
* K-42: the session this operation runs under, resolved by the coordinator
|
|
1885
|
+
* from the directory and handed down. Read here and nowhere module code can
|
|
1886
|
+
* reach — a vertical that could see it could branch on it, and "hide this row
|
|
1887
|
+
* when support is looking" is the one behaviour this feature must make
|
|
1888
|
+
* impossible.
|
|
1889
|
+
*/
|
|
1890
|
+
impersonation) {
|
|
1802
1891
|
const checker = this.checker;
|
|
1803
1892
|
const relations = this.relations;
|
|
1804
1893
|
const searchPlans = this.searchPlans;
|
|
@@ -1833,6 +1922,10 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1833
1922
|
// invoke, so this does not leak across operations). `emit` snapshots it; a
|
|
1834
1923
|
// system/override actor is unconditionally allowed, so its checks are not recorded.
|
|
1835
1924
|
const passed = [];
|
|
1925
|
+
// K-42: the two-actor stamp, computed once per operation. Every record this
|
|
1926
|
+
// operation writes about who did what carries it, and module code can
|
|
1927
|
+
// neither add it nor drop it.
|
|
1928
|
+
const stamp = impersonation ? impersonationStampOf(impersonation) : undefined;
|
|
1836
1929
|
/**
|
|
1837
1930
|
* The scope host's half of `ctx.atomic` (#770) — everything else is the
|
|
1838
1931
|
* kernel's (`createAtomic`).
|
|
@@ -1879,6 +1972,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1879
1972
|
sql: doScopedSql(sql),
|
|
1880
1973
|
now: () => at,
|
|
1881
1974
|
emit: (event) => {
|
|
1975
|
+
assertImpersonationWrites(impersonation, 'ctx.emit');
|
|
1882
1976
|
const parsed = domainEventInput.parse(event);
|
|
1883
1977
|
const full = domainEvent.parse({
|
|
1884
1978
|
...parsed,
|
|
@@ -1888,13 +1982,16 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1888
1982
|
scopeId,
|
|
1889
1983
|
actor: systemActor ?? derivedActor,
|
|
1890
1984
|
...(passed.length ? { authorization: passed.map((p) => ({ ...p })) } : {}),
|
|
1985
|
+
...(stamp ? { impersonation: stamp } : {}),
|
|
1891
1986
|
});
|
|
1892
1987
|
sql.exec(`INSERT INTO _substrat_outbox
|
|
1893
1988
|
(id, type, schema_version, occurred_at, tenant_id, scope_id, actor,
|
|
1894
|
-
entity_type, entity_id, pii_class, subject_id, authorization,
|
|
1895
|
-
|
|
1989
|
+
entity_type, entity_id, pii_class, subject_id, authorization,
|
|
1990
|
+
impersonation, payload)
|
|
1991
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, full.id, full.type, full.schemaVersion, full.occurredAt, full.tenantId, full.scopeId, JSON.stringify(full.actor), full.entity.entityType, full.entity.entityId, full.piiClass, full.subjectId ?? null, full.authorization ? JSON.stringify(full.authorization) : null, full.impersonation ? JSON.stringify(full.impersonation) : null, full.payload === undefined ? null : JSON.stringify(full.payload));
|
|
1896
1992
|
},
|
|
1897
1993
|
requestPlatform: (request) => {
|
|
1994
|
+
assertImpersonationWrites(impersonation, 'ctx.requestPlatform');
|
|
1898
1995
|
const input = platformRequestInput.parse(request);
|
|
1899
1996
|
// Backpressure (platform-intents.md): refuse when the scope already holds too many pending
|
|
1900
1997
|
// intents, so a stuck or runaway vertical cannot flood the platform drain.
|
|
@@ -1907,8 +2004,8 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1907
2004
|
const id = platformRequestId.parse(ulid());
|
|
1908
2005
|
const requestedBy = systemActor ?? derivedActor;
|
|
1909
2006
|
sql.exec(`INSERT INTO _substrat_platform_requests
|
|
1910
|
-
(id, kind, payload, requested_by, status, attempts, requested_at)
|
|
1911
|
-
VALUES (?, ?, ?, ?, 'pending', 0, ?)`, id, input.kind, JSON.stringify(input.payload ?? null), JSON.stringify(requestedBy), at);
|
|
2007
|
+
(id, kind, payload, requested_by, impersonation, status, attempts, requested_at)
|
|
2008
|
+
VALUES (?, ?, ?, ?, ?, 'pending', 0, ?)`, id, input.kind, JSON.stringify(input.payload ?? null), JSON.stringify(requestedBy), stamp ? JSON.stringify(stamp) : null, at);
|
|
1912
2009
|
if (signals)
|
|
1913
2010
|
signals.platformRequests += 1;
|
|
1914
2011
|
return id;
|
|
@@ -1977,6 +2074,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1977
2074
|
* than elevates.
|
|
1978
2075
|
*/
|
|
1979
2076
|
grant: async (principal, permission, entity) => {
|
|
2077
|
+
assertImpersonationWrites(impersonation, 'ctx.grant');
|
|
1980
2078
|
const held = await runCheck(permission, entity);
|
|
1981
2079
|
if (!held.allowed) {
|
|
1982
2080
|
throw new PermissionDenied(`cannot grant '${permission}' on ${entity.entityType}:${entity.entityId} — ` +
|
|
@@ -1985,6 +2083,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1985
2083
|
sql.exec(`INSERT OR IGNORE INTO _substrat_tuples (subject, relation, object) VALUES (?, ?, ?)`, `principal:${principal}`, `granted:${permission}`, `${entity.entityType}:${entity.entityId}`);
|
|
1986
2084
|
},
|
|
1987
2085
|
revoke: async (principal, permission, entity) => {
|
|
2086
|
+
assertImpersonationWrites(impersonation, 'ctx.revoke');
|
|
1988
2087
|
const held = await runCheck(permission, entity);
|
|
1989
2088
|
if (!held.allowed) {
|
|
1990
2089
|
throw new PermissionDenied(`cannot revoke '${permission}' on ${entity.entityType}:${entity.entityId} — ` +
|
|
@@ -1994,6 +2093,7 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
1994
2093
|
},
|
|
1995
2094
|
atomic: createAtomic(runSub, { passed, signals }),
|
|
1996
2095
|
link: (child, parent) => {
|
|
2096
|
+
assertImpersonationWrites(impersonation, 'ctx.link');
|
|
1997
2097
|
const allowed = relations.get(child.entityType);
|
|
1998
2098
|
if (!allowed?.has(parent.entityType)) {
|
|
1999
2099
|
throw new Error(`undeclared entity relation: ${child.entityType} → ${parent.entityType} ` +
|
package/dist/scope-do.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope-do.js","sourceRoot":"","sources":["../src/scope-do.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scope-do.js","sourceRoot":"","sources":["../src/scope-do.ts"],"names":[],"mappings":"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"}
|