@substrat-run/adapter-cloudflare 0.22.0 → 0.24.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/dist/scope-do.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { DurableObject } from 'cloudflare:workers';
2
- import { domainEvent, domainEventInput, eventId, instant, objectRef, principalId, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, } from '@substrat-run/contracts';
3
- import { ulid, assertReadOnlyQuery, } from '@substrat-run/kernel';
2
+ import { domainEvent, domainEventInput, eventId, instant, objectRef, grantRefFromProof, principalId, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, } from '@substrat-run/contracts';
3
+ import { ulid, assertReadOnlyQuery, PermissionDenied, } 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';
@@ -20,6 +20,23 @@ const KERNEL_DDL = `
20
20
  pii_class TEXT NOT NULL,
21
21
  subject_id TEXT,
22
22
  payload TEXT,
23
+ -- K-34: the checks the emitting operation passed (JSON [{permission, grant?}]).
24
+ -- NULL on rows written before the field existed -- honestly unrecorded, not empty.
25
+ authorization TEXT,
26
+ drained_at TEXT
27
+ );
28
+ -- K-35: refused permission checks. A denial rolls its operation back, so it is
29
+ -- recorded here OUTSIDE that transaction, on the deny path -- the one event where an
30
+ -- actor's intent and the permission model visibly disagree, witnessed by no other log.
31
+ -- Drains rather than expires (K-24's split): drained_at marks a shipped row.
32
+ CREATE TABLE IF NOT EXISTS _substrat_denials (
33
+ id TEXT PRIMARY KEY,
34
+ actor TEXT NOT NULL,
35
+ permission TEXT NOT NULL,
36
+ tenant_id TEXT NOT NULL,
37
+ scope_id TEXT,
38
+ operation TEXT,
39
+ at TEXT NOT NULL,
23
40
  drained_at TEXT
24
41
  );
25
42
  CREATE TABLE IF NOT EXISTS _substrat_migrations (
@@ -94,6 +111,21 @@ const KERNEL_DDL = `
94
111
  key TEXT PRIMARY KEY,
95
112
  value TEXT NOT NULL
96
113
  );
114
+ -- The tenant's entitlements PROJECTED into this scope (#304), so a hosted vertical
115
+ -- reads plan/quota/expiry at request time from local storage instead of a forbidden
116
+ -- control-plane binding — the same projection-on-write model as roles/tuples above,
117
+ -- settling kernel open-question 5 (cache = the projection, invalidated by the fan-out).
118
+ -- No audit columns (granted_at/granted_by stay control-plane-side) and no tombstone:
119
+ -- applyProjection full-replaces, so a revoked grant is simply absent from the next
120
+ -- snapshot. Empty until projected — a console-managed scope reads over RPC instead.
121
+ CREATE TABLE IF NOT EXISTS _substrat_entitlements (
122
+ tenant_id TEXT NOT NULL,
123
+ entitlement_key TEXT NOT NULL,
124
+ expires_at TEXT,
125
+ quota INTEGER,
126
+ plan TEXT,
127
+ PRIMARY KEY (tenant_id, entitlement_key)
128
+ );
97
129
  `;
98
130
  /**
99
131
  * Workers RPC carries only a plain `Error`'s message/name/stack faithfully; a
@@ -229,6 +261,10 @@ export function defineScopeDO(modules, bareOps) {
229
261
  // consumer dead-letter.
230
262
  'ALTER TABLE _substrat_deliveries ADD COLUMN attempts INTEGER NOT NULL DEFAULT 0',
231
263
  'ALTER TABLE _substrat_deliveries ADD COLUMN next_attempt_at TEXT',
264
+ // K-34: the authorization column on a scope DO created before it existed. Nullable,
265
+ // so legacy outbox rows read as "unrecorded". (_substrat_denials is a new table,
266
+ // covered by KERNEL_DDL's IF NOT EXISTS with no ALTER.)
267
+ 'ALTER TABLE _substrat_outbox ADD COLUMN authorization TEXT',
232
268
  ]) {
233
269
  try {
234
270
  this.sql.exec(alter);
@@ -436,11 +472,32 @@ export function defineScopeDO(modules, bareOps) {
436
472
  * this scope's tenant and vertical; the DO uses it for the permission
437
473
  * subject and the event actor, so those two can never disagree.
438
474
  */
439
- connectionId) {
475
+ connectionId,
476
+ /**
477
+ * The SKU the operation's module requires (#304), passed by the coordinator from its
478
+ * `operationEntitlement` map. Enforced HERE only for a scope-local (hosted) scope,
479
+ * where the control plane is unreachable by the sandbox contract and the projected
480
+ * entitlements are the source of truth. A console-managed scope is gated on the
481
+ * coordinator against the shared CP, so this is left undefined / a no-op there.
482
+ */
483
+ requiredEntitlement) {
440
484
  await this.ensureMigrations();
441
485
  const handler = this.operations.get(operation);
442
486
  if (!handler)
443
487
  throw new Error(`unknown operation: ${operation}`);
488
+ // #304 entitlement gate, scope-local path: fail closed on the projected view exactly as
489
+ // the coordinator fails closed against the CP. Only active once entitlements have been
490
+ // projected (the `entitlements_enforced` marker) — before that the scope trusts upstream,
491
+ // exactly as it did pre-#304, so a not-yet-back-filled scope is never wrongly denied.
492
+ if (requiredEntitlement && this.permissionSource() === 'local' && this.entitlementsEnforced()) {
493
+ const held = this.sql
494
+ .exec(`SELECT 1 FROM _substrat_entitlements
495
+ WHERE tenant_id = ? AND entitlement_key = ? AND (expires_at IS NULL OR expires_at > ?)`, tenantId, requiredEntitlement, new Date().toISOString())
496
+ .toArray()[0];
497
+ if (!held) {
498
+ throw new Error(`operation not entitled: ${operation} — tenant does not hold '${requiredEntitlement}'`);
499
+ }
500
+ }
444
501
  return this.queue.enqueue(async () => {
445
502
  let result;
446
503
  // The async transaction is the K-4 boundary: guards + handler + emits
@@ -454,6 +511,11 @@ export function defineScopeDO(modules, bareOps) {
454
511
  });
455
512
  }
456
513
  catch (err) {
514
+ // K-35: the transaction has rolled back; record a refused check now, as its own
515
+ // write (outside that transaction), so the denial survives the rollback.
516
+ if (err instanceof PermissionDenied) {
517
+ this.recordDenial(connectionId ? { kind: 'connection', id: connectionId } : { kind: 'principal', id: principal }, tenantId, operation, err);
518
+ }
457
519
  throw toRpcError(err);
458
520
  }
459
521
  // Post-commit: drain the outbox to consumers, each delivery its own txn.
@@ -795,6 +857,22 @@ export function defineScopeDO(modules, bareOps) {
795
857
  return;
796
858
  }
797
859
  }
860
+ /**
861
+ * K-35: record a refused check into the scope's denial log. Called from the invoke
862
+ * catch after the storage transaction has rolled back, so this write is its own and
863
+ * survives — the whole point, since the denial is the write the operation could not make.
864
+ */
865
+ recordDenial(subject, tenantId, operation, err) {
866
+ // Only an ENFORCED denial (assertAllowed, which attaches the checked permission +
867
+ // node) is recorded. A module's own hand-thrown `new PermissionDenied('…')` carries
868
+ // no permission key and is left to the module.
869
+ if (!err.permission || !err.node)
870
+ return;
871
+ const actor = subject.kind === 'connection' ? { connection: subject.id } : subject.id;
872
+ this.sql.exec(`INSERT INTO _substrat_denials
873
+ (id, actor, permission, tenant_id, scope_id, operation, at)
874
+ VALUES (?, ?, ?, ?, ?, ?, ?)`, ulid(), JSON.stringify(actor), err.permission, err.node.tenantId, err.node.scopeId ?? null, operation, new Date().toISOString());
875
+ }
798
876
  parseOutboxRow(row) {
799
877
  return domainEvent.parse({
800
878
  id: row.id,
@@ -807,6 +885,7 @@ export function defineScopeDO(modules, bareOps) {
807
885
  entity: { entityType: row.entity_type, entityId: row.entity_id },
808
886
  piiClass: row.pii_class,
809
887
  ...(row.subject_id ? { subjectId: row.subject_id } : {}),
888
+ ...(row.authorization ? { authorization: JSON.parse(row.authorization) } : {}),
810
889
  payload: row.payload === null ? undefined : JSON.parse(row.payload),
811
890
  });
812
891
  }
@@ -815,6 +894,14 @@ export function defineScopeDO(modules, bareOps) {
815
894
  const checker = this.checker;
816
895
  const relations = this.relations;
817
896
  const sql = this.sql;
897
+ // #304: entitlement reads pick the same local-vs-RPC reader the permission checker
898
+ // uses (projected scope → local table; console-managed → CP over RPC), resolved per
899
+ // call so a scope that flips to 'local' is picked up without rebuilding the context.
900
+ const entitlementReader = () => this.controlPlaneReader();
901
+ // K-34: the checks that passed in THIS operation (a fresh context is built per
902
+ // invoke, so this does not leak across operations). `emit` snapshots it; a
903
+ // system/override actor is unconditionally allowed, so its checks are not recorded.
904
+ const passed = [];
818
905
  return {
819
906
  tenantId,
820
907
  scopeId,
@@ -829,26 +916,38 @@ export function defineScopeDO(modules, bareOps) {
829
916
  tenantId,
830
917
  scopeId,
831
918
  actor: systemActor ?? (connectionId ? { connection: connectionId } : principal),
919
+ ...(passed.length ? { authorization: passed.map((p) => ({ ...p })) } : {}),
832
920
  });
833
921
  sql.exec(`INSERT INTO _substrat_outbox
834
922
  (id, type, schema_version, occurred_at, tenant_id, scope_id, actor,
835
- entity_type, entity_id, pii_class, subject_id, payload)
836
- 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.payload === undefined ? null : JSON.stringify(full.payload));
923
+ entity_type, entity_id, pii_class, subject_id, authorization, payload)
924
+ 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.payload === undefined ? null : JSON.stringify(full.payload));
837
925
  },
838
- check: (permission, entity) => systemActor
839
- ? Promise.resolve({
840
- allowed: true,
841
- proof: [
842
- {
843
- subject: objectRef.parse(`system:${systemActor.system.replace(/[^a-zA-Z0-9_.-]/g, '-')}`),
844
- relation: `granted:${permission}`,
845
- object: objectRef.parse(`scope:${scopeId}`),
846
- },
847
- ],
848
- })
849
- : checker.check(connectionId
926
+ check: async (permission, entity) => {
927
+ if (systemActor) {
928
+ return {
929
+ allowed: true,
930
+ proof: [
931
+ {
932
+ subject: objectRef.parse(`system:${systemActor.system.replace(/[^a-zA-Z0-9_.-]/g, '-')}`),
933
+ relation: `granted:${permission}`,
934
+ object: objectRef.parse(`scope:${scopeId}`),
935
+ },
936
+ ],
937
+ };
938
+ }
939
+ const decision = await checker.check(connectionId
850
940
  ? { kind: 'connection', id: connectionId }
851
- : { kind: 'principal', id: principal }, permission, { tenantId, scopeId }, entity),
941
+ : { kind: 'principal', id: principal }, permission, { tenantId, scopeId }, entity);
942
+ if (decision.allowed) {
943
+ const grant = grantRefFromProof(permission, decision.proof);
944
+ const entry = grant ? { permission, grant } : { permission };
945
+ if (!passed.some((p) => p.permission === entry.permission && p.grant === entry.grant)) {
946
+ passed.push(entry);
947
+ }
948
+ }
949
+ return decision;
950
+ },
852
951
  link: (child, parent) => {
853
952
  const allowed = relations.get(child.entityType);
854
953
  if (!allowed?.has(parent.entityType)) {
@@ -858,8 +957,21 @@ export function defineScopeDO(modules, bareOps) {
858
957
  sql.exec(`INSERT OR IGNORE INTO _substrat_tuples (subject, relation, object)
859
958
  VALUES (?, 'parent', ?)`, `${child.entityType}:${child.entityId}`, `${parent.entityType}:${parent.entityId}`);
860
959
  },
960
+ entitlement: async (key) => {
961
+ const held = await entitlementReader().listEntitlements(tenantId);
962
+ return held.find((e) => e.key === key) ?? null;
963
+ },
964
+ entitlements: () => entitlementReader().listEntitlements(tenantId),
861
965
  };
862
966
  }
967
+ /** True once this scope has had entitlements projected at least once (#304) — the switch
968
+ * from trust-upstream to strict fail-closed entitlement enforcement on the local path. */
969
+ entitlementsEnforced() {
970
+ const row = this.sql
971
+ .exec(`SELECT value FROM _substrat_meta WHERE key = 'entitlements_enforced'`)
972
+ .toArray()[0];
973
+ return row?.value === '1';
974
+ }
863
975
  /** 'local' once this scope has been projected, else 'control-plane' (default). */
864
976
  permissionSource() {
865
977
  const row = this.sql
@@ -882,14 +994,30 @@ export function defineScopeDO(modules, bareOps) {
882
994
  return createLocalControlPlaneReader(this.sql);
883
995
  }
884
996
  const stub = ns.get(ns.idFromName('control-plane'));
997
+ // The CP DO's `listEntitlements` returns raw rows (all keys, incl. expired) — a
998
+ // different shape than the reader's view, so it is reached through a raw cast and
999
+ // filtered/mapped here. Expiry is applied at read, matching the local reader.
1000
+ const rawStub = stub;
885
1001
  return {
886
1002
  tenantTuples: (tenantId, subject, relationPrefix) => stub.tenantTuples(tenantId, subject, relationPrefix),
887
1003
  getRole: (tenantId, key) => stub.getRole(tenantId, key),
1004
+ listEntitlements: async (tenantId) => {
1005
+ const now = new Date().toISOString();
1006
+ return (await rawStub.listEntitlements(tenantId))
1007
+ .filter((r) => r.expires_at === null || r.expires_at > now)
1008
+ .map((r) => ({
1009
+ key: r.entitlement_key,
1010
+ plan: r.plan,
1011
+ quota: r.quota,
1012
+ expiresAt: r.expires_at,
1013
+ }));
1014
+ },
888
1015
  };
889
1016
  };
890
1017
  return {
891
1018
  tenantTuples: (tenantId, subject, relationPrefix) => pick().tenantTuples(tenantId, subject, relationPrefix),
892
1019
  getRole: (tenantId, key) => pick().getRole(tenantId, key),
1020
+ listEntitlements: (tenantId) => pick().listEntitlements(tenantId),
893
1021
  };
894
1022
  }
895
1023
  // -- scope-local permission projection (docs/design/scope-local-permissions.md) --
@@ -930,7 +1058,13 @@ export function defineScopeDO(modules, bareOps) {
930
1058
  * and the reconciliation sweep both call it (scope-local-permissions.md Phase 2).
931
1059
  * One enqueued unit, so no half-applied projection is ever visible to a check.
932
1060
  */
933
- async applyProjection(tenantId, roles, tuples) {
1061
+ async applyProjection(tenantId, roles, tuples,
1062
+ /** The tenant's entitlements (#304) — projected alongside roles/tuples so a hosted
1063
+ * vertical reads them locally. **Preserve-on-undefined**: omitting it (a role-only
1064
+ * re-projection like the restore repair) leaves the projected entitlements untouched,
1065
+ * while passing a list — even `[]` — full-replaces them. This keeps pre-#304 callers
1066
+ * from silently wiping a scope's entitlements. */
1067
+ entitlements) {
934
1068
  await this.queue.enqueue(() => {
935
1069
  this.sql.exec(`DELETE FROM _substrat_roles WHERE tenant_id = ?`, tenantId);
936
1070
  for (const r of roles) {
@@ -943,6 +1077,20 @@ export function defineScopeDO(modules, bareOps) {
943
1077
  (tenant_id, subject, relation, object, expires_at, revoked_at)
944
1078
  VALUES (?, ?, ?, ?, ?, ?)`, tenantId, t.subject, t.relation, t.object, t.expires_at, t.revoked_at);
945
1079
  }
1080
+ if (entitlements !== undefined) {
1081
+ this.sql.exec(`DELETE FROM _substrat_entitlements WHERE tenant_id = ?`, tenantId);
1082
+ for (const e of entitlements) {
1083
+ this.sql.exec(`INSERT OR REPLACE INTO _substrat_entitlements
1084
+ (tenant_id, entitlement_key, expires_at, quota, plan)
1085
+ VALUES (?, ?, ?, ?, ?)`, tenantId, e.entitlement_key, e.expires_at, e.quota, e.plan);
1086
+ }
1087
+ // #304: once a scope has been projected WITH entitlements even once, its gate
1088
+ // switches from trust-upstream to strict fail-closed (a missing/expired key
1089
+ // denies). Left unset, a scope provisioned before #304 keeps trusting upstream
1090
+ // until a projection (fanOut / reconcile / re-provision) back-fills it — so the
1091
+ // enforcement flip is per-scope and never strands an un-back-filled scope.
1092
+ this.sql.exec(`INSERT OR REPLACE INTO _substrat_meta (key, value) VALUES ('entitlements_enforced', '1')`);
1093
+ }
946
1094
  this.sql.exec(`INSERT OR REPLACE INTO _substrat_meta (key, value) VALUES ('permission_source', 'local')`);
947
1095
  });
948
1096
  }
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@substrat-run/adapter-cloudflare",
3
- "version": "0.22.0",
3
+ "version": "0.24.0",
4
4
  "description": "Cloudflare Durable-Object scope host (D-14): DO-per-scope, real kernel semantics on Workers",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
@@ -26,8 +26,8 @@
26
26
  "dist"
27
27
  ],
28
28
  "dependencies": {
29
- "@substrat-run/kernel": "^0.22.0",
30
- "@substrat-run/contracts": "^0.22.0"
29
+ "@substrat-run/kernel": "^0.24.0",
30
+ "@substrat-run/contracts": "^0.24.0"
31
31
  },
32
32
  "devDependencies": {
33
33
  "@cloudflare/vitest-pool-workers": "^0.8.19",
@@ -35,7 +35,7 @@
35
35
  "wrangler": "^4.110.0",
36
36
  "typescript": "^7.0.0",
37
37
  "vitest": "^3.0.0",
38
- "@substrat-run/contract-tests": "^0.22.0"
38
+ "@substrat-run/contract-tests": "^0.24.0"
39
39
  },
40
40
  "publishConfig": {
41
41
  "access": "public"