@substrat-run/adapter-cloudflare 0.40.0 → 0.41.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/control-plane-do.d.ts +39 -2
- package/dist/control-plane-do.d.ts.map +1 -1
- package/dist/control-plane-do.js +68 -3
- package/dist/control-plane-do.js.map +1 -1
- package/dist/host.d.ts +27 -2
- package/dist/host.d.ts.map +1 -1
- package/dist/host.js +148 -7
- package/dist/host.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/r2.d.ts +49 -0
- package/dist/r2.d.ts.map +1 -0
- package/dist/r2.js +121 -0
- package/dist/r2.js.map +1 -0
- package/dist/scope-do.d.ts.map +1 -1
- package/dist/scope-do.js +176 -2
- package/dist/scope-do.js.map +1 -1
- package/package.json +4 -4
package/dist/r2.js
ADDED
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
/** Bound an untrusted upstream body for an error message, marking the cut (#307). */
|
|
2
|
+
function bounded(body, max = 2000) {
|
|
3
|
+
return body.length <= max ? body : `${body.slice(0, max)} … [truncated, ${body.length - max} chars omitted]`;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* The deterministic R2 bucket NAME for a blob store. Unlike D1 (where the ledger's ref is
|
|
7
|
+
* a CF-assigned id), R2 addresses buckets by name — so the deterministic name IS the ref,
|
|
8
|
+
* and determinism is what makes a crashed retry converge: recreate the same name, get
|
|
9
|
+
* told it exists, resolve to it. Lowercased to R2's name alphabet; over-long inputs keep
|
|
10
|
+
* a stable hash tail so the name stays unique AND deterministic within R2's 63-char cap.
|
|
11
|
+
*/
|
|
12
|
+
export async function blobStoreBucketName(tenantId, vertical, binding) {
|
|
13
|
+
const raw = `blob-${vertical}-${binding}-${tenantId}`
|
|
14
|
+
.toLowerCase()
|
|
15
|
+
.replace(/[^a-z0-9-]+/g, '-')
|
|
16
|
+
.replace(/-+/g, '-');
|
|
17
|
+
if (raw.length <= 63)
|
|
18
|
+
return raw;
|
|
19
|
+
const digest = await crypto.subtle.digest('SHA-256', new TextEncoder().encode(raw));
|
|
20
|
+
const tail = [...new Uint8Array(digest)]
|
|
21
|
+
.slice(0, 8)
|
|
22
|
+
.map((b) => b.toString(16).padStart(2, '0'))
|
|
23
|
+
.join('');
|
|
24
|
+
return `${raw.slice(0, 46)}-${tail}`;
|
|
25
|
+
}
|
|
26
|
+
export function createR2BlobStores(opts) {
|
|
27
|
+
const fetchImpl = opts.fetch ?? ((input, init) => globalThis.fetch(input, init));
|
|
28
|
+
const base = `https://api.cloudflare.com/client/v4/accounts/${opts.accountId}/r2/buckets`;
|
|
29
|
+
const auth = { authorization: `Bearer ${opts.apiToken}` };
|
|
30
|
+
const readEnvelope = async (res, what) => {
|
|
31
|
+
const text = await res.text().catch(() => '');
|
|
32
|
+
let env;
|
|
33
|
+
try {
|
|
34
|
+
env = text ? JSON.parse(text) : undefined;
|
|
35
|
+
}
|
|
36
|
+
catch {
|
|
37
|
+
// Non-JSON upstream body — fall through to the status-based error below.
|
|
38
|
+
}
|
|
39
|
+
if (!res.ok || !env?.success) {
|
|
40
|
+
const msg = env?.errors?.map((e) => e.message).filter(Boolean).join('; ') || bounded(text);
|
|
41
|
+
const err = new Error(`Cloudflare ${what} failed (${res.status}): ${msg || 'unknown error'}`);
|
|
42
|
+
err.status = res.status;
|
|
43
|
+
throw err;
|
|
44
|
+
}
|
|
45
|
+
return env;
|
|
46
|
+
};
|
|
47
|
+
return {
|
|
48
|
+
async create(name) {
|
|
49
|
+
const res = await fetchImpl(base, {
|
|
50
|
+
method: 'POST',
|
|
51
|
+
headers: { ...auth, 'content-type': 'application/json' },
|
|
52
|
+
body: JSON.stringify({ name }),
|
|
53
|
+
});
|
|
54
|
+
if (!res.ok) {
|
|
55
|
+
// A name that already exists is the crashed-retry path converging, not a failure.
|
|
56
|
+
// R2 signals it with 409/10004; confirm the bucket is really there rather than
|
|
57
|
+
// trusting the code, so an unrelated 409 stays an error.
|
|
58
|
+
if (res.status === 409) {
|
|
59
|
+
const probe = await fetchImpl(`${base}/${encodeURIComponent(name)}`, { headers: auth });
|
|
60
|
+
if (probe.ok) {
|
|
61
|
+
await probe.text().catch(() => '');
|
|
62
|
+
return name;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
await readEnvelope(res, 'R2 bucket create'); // throws with the upstream detail
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
await readEnvelope(res, 'R2 bucket create');
|
|
69
|
+
}
|
|
70
|
+
return name;
|
|
71
|
+
},
|
|
72
|
+
async remove(ref) {
|
|
73
|
+
const res = await fetchImpl(`${base}/${encodeURIComponent(ref)}`, {
|
|
74
|
+
method: 'DELETE',
|
|
75
|
+
headers: auth,
|
|
76
|
+
});
|
|
77
|
+
// Idempotent: an already-gone bucket is a success.
|
|
78
|
+
if (res.status === 404) {
|
|
79
|
+
await res.text().catch(() => '');
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
await readEnvelope(res, 'R2 bucket delete');
|
|
83
|
+
},
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The WORKER-side open (#473): wrap the tenant's real `r2_bucket` binding — looked up as
|
|
88
|
+
* `env[blobStoreBindingName(binding, tenantId)]` — in the kernel's `TenantBlobStore`
|
|
89
|
+
* shape, so the attachment surface reads identically against live R2 in the worker and a
|
|
90
|
+
* per-tenant directory on the pure adapter.
|
|
91
|
+
*/
|
|
92
|
+
export function r2TenantBlobStore(bucket) {
|
|
93
|
+
const r2 = bucket;
|
|
94
|
+
return {
|
|
95
|
+
put: async (key, body, opts) => {
|
|
96
|
+
await r2.put(key, body, opts?.contentType ? { httpMetadata: { contentType: opts.contentType } } : undefined);
|
|
97
|
+
},
|
|
98
|
+
get: async (key) => {
|
|
99
|
+
const obj = await r2.get(key);
|
|
100
|
+
if (!obj)
|
|
101
|
+
return null;
|
|
102
|
+
const body = new Uint8Array(await obj.arrayBuffer());
|
|
103
|
+
const contentType = obj.httpMetadata?.contentType;
|
|
104
|
+
return contentType !== undefined ? { body, contentType } : { body };
|
|
105
|
+
},
|
|
106
|
+
delete: async (key) => {
|
|
107
|
+
await r2.delete(key);
|
|
108
|
+
},
|
|
109
|
+
list: async (prefix) => {
|
|
110
|
+
const keys = [];
|
|
111
|
+
let cursor;
|
|
112
|
+
do {
|
|
113
|
+
const page = await r2.list({ prefix, ...(cursor ? { cursor } : {}) });
|
|
114
|
+
keys.push(...page.objects.map((o) => o.key));
|
|
115
|
+
cursor = page.truncated ? page.cursor : undefined;
|
|
116
|
+
} while (cursor);
|
|
117
|
+
return keys.sort();
|
|
118
|
+
},
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=r2.js.map
|
package/dist/r2.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"r2.js","sourceRoot":"","sources":["../src/r2.ts"],"names":[],"mappings":"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"}
|
package/dist/scope-do.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope-do.d.ts","sourceRoot":"","sources":["../src/scope-do.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"scope-do.d.ts","sourceRoot":"","sources":["../src/scope-do.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAkCnD,OAAO,EAOL,KAAK,kBAAkB,EAEvB,KAAK,gBAAgB,EAGtB,MAAM,sBAAsB,CAAC;AAM9B;;;;;;;;;;;;;GAaG;AAEH,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,sBAAsB,CAAC;CACxC;AAuOD;uEACuE;AACvE,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAUD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CA+CxD;AAED,wBAAgB,aAAa,CAC3B,OAAO,EAAE,kBAAkB,EAAE,EAC7B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,GACxD,KAAK,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,UAAU,KAAK,aAAa,CA+pDjE"}
|
package/dist/scope-do.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { DurableObject } from 'cloudflare:workers';
|
|
2
|
-
import { domainEvent, domainEventInput, eventId, instant, objectRef, grantRefFromProof, principalId, platformRequestInput, platformRequestId, MAX_PENDING_PLATFORM_REQUESTS, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, } from '@substrat-run/contracts';
|
|
3
|
-
import { ulid, assertReadOnlyQuery, PermissionDenied, } from '@substrat-run/kernel';
|
|
2
|
+
import { ATTACHMENT_ADDED, ATTACHMENT_REMOVED, attachmentRecord, domainEvent, domainEventInput, eventId, instant, objectRef, grantRefFromProof, principalId, platformRequestInput, platformRequestId, MAX_PENDING_PLATFORM_REQUESTS, SCOPE_TABLE_PAGE_MAX, SCOPE_QUERY_ROW_MAX, } from '@substrat-run/contracts';
|
|
3
|
+
import { ulid, assertAllowed, 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';
|
|
@@ -165,6 +165,24 @@ const KERNEL_DDL = `
|
|
|
165
165
|
scope_id TEXT,
|
|
166
166
|
PRIMARY KEY (tenant_id, provider, external_id)
|
|
167
167
|
);
|
|
168
|
+
-- Attachment metadata facts (#473): one row per object in the per-tenant blob store,
|
|
169
|
+
-- keyed to the owning entity a module manifest declared as an attachmentTarget. Lives
|
|
170
|
+
-- INSIDE the scope database on purpose — scope pull / restore / PITR carry the rows
|
|
171
|
+
-- like any other scope fact; sha256 is the integrity witness for the bytes outside.
|
|
172
|
+
CREATE TABLE IF NOT EXISTS _substrat_attachments (
|
|
173
|
+
id TEXT PRIMARY KEY,
|
|
174
|
+
entity_type TEXT NOT NULL,
|
|
175
|
+
entity_id TEXT NOT NULL,
|
|
176
|
+
filename TEXT NOT NULL,
|
|
177
|
+
content_type TEXT NOT NULL,
|
|
178
|
+
size INTEGER NOT NULL,
|
|
179
|
+
sha256 TEXT NOT NULL,
|
|
180
|
+
visibility TEXT NOT NULL,
|
|
181
|
+
created_by TEXT NOT NULL,
|
|
182
|
+
created_at TEXT NOT NULL
|
|
183
|
+
);
|
|
184
|
+
CREATE INDEX IF NOT EXISTS _substrat_attachments_entity
|
|
185
|
+
ON _substrat_attachments (entity_type, entity_id);
|
|
168
186
|
`;
|
|
169
187
|
/**
|
|
170
188
|
* Workers RPC carries only a plain `Error`'s message/name/stack faithfully; a
|
|
@@ -273,6 +291,8 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
273
291
|
predicates = new Map();
|
|
274
292
|
withdrawn = new Map();
|
|
275
293
|
relations = new Map();
|
|
294
|
+
/** entityType → the declared attachment gate (#473): read key + write key (default: read). */
|
|
295
|
+
attachmentTargets = new Map();
|
|
276
296
|
checker;
|
|
277
297
|
systemPrincipal = principalId.parse(ulid());
|
|
278
298
|
applied = new Set();
|
|
@@ -350,6 +370,22 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
350
370
|
parents.add(rel.parentType);
|
|
351
371
|
this.relations.set(rel.entityType, parents);
|
|
352
372
|
}
|
|
373
|
+
// Attachment targets (#473): entityType → the gate the attachment surface enforces.
|
|
374
|
+
// Re-declaring with the same gate is idempotent; a different gate is refused —
|
|
375
|
+
// ambiguous authority must not depend on registration order (mirror of the pure
|
|
376
|
+
// adapter, which validates the same way).
|
|
377
|
+
for (const target of manifest.attachmentTargets) {
|
|
378
|
+
const gate = {
|
|
379
|
+
read: target.readPermission,
|
|
380
|
+
write: target.writePermission ?? target.readPermission,
|
|
381
|
+
};
|
|
382
|
+
const existing = this.attachmentTargets.get(target.entityType);
|
|
383
|
+
if (existing && (existing.read !== gate.read || existing.write !== gate.write)) {
|
|
384
|
+
throw new Error(`conflicting attachmentTargets for '${target.entityType}': ` +
|
|
385
|
+
`(${existing.read}/${existing.write}) vs (${gate.read}/${gate.write})`);
|
|
386
|
+
}
|
|
387
|
+
this.attachmentTargets.set(target.entityType, gate);
|
|
388
|
+
}
|
|
353
389
|
for (const name of manifest.withdraws ?? []) {
|
|
354
390
|
this.withdrawn.set(name, manifest.id);
|
|
355
391
|
this.operations.delete(name);
|
|
@@ -579,6 +615,144 @@ export function defineScopeDO(modules, bareOps) {
|
|
|
579
615
|
return { result, platformRequests: signals.platformRequests };
|
|
580
616
|
});
|
|
581
617
|
}
|
|
618
|
+
// -- attachments (#473): the metadata half of the attachment surface --------
|
|
619
|
+
// The coordinator (worker) holds the bytes and the per-tenant R2 binding; this
|
|
620
|
+
// DO holds the permission gate and the metadata fact, under the same per-scope
|
|
621
|
+
// serialization and transactional (row + spine event) semantics as an invoke.
|
|
622
|
+
// Bytes never cross this boundary — only the small record does.
|
|
623
|
+
attachmentGate(entityType) {
|
|
624
|
+
const gate = this.attachmentTargets.get(entityType);
|
|
625
|
+
if (!gate) {
|
|
626
|
+
throw new Error(`no registered module declares '${entityType}' in attachmentTargets — attachments ` +
|
|
627
|
+
`bind only to declared entity types`);
|
|
628
|
+
}
|
|
629
|
+
return gate;
|
|
630
|
+
}
|
|
631
|
+
attachmentRow(attachmentId) {
|
|
632
|
+
const row = this.sql
|
|
633
|
+
.exec('SELECT * FROM _substrat_attachments WHERE id = ?', attachmentId)
|
|
634
|
+
.toArray()[0];
|
|
635
|
+
if (!row)
|
|
636
|
+
return null;
|
|
637
|
+
return attachmentRecord.parse({
|
|
638
|
+
id: row.id,
|
|
639
|
+
entity: { entityType: row.entity_type, entityId: row.entity_id },
|
|
640
|
+
filename: row.filename,
|
|
641
|
+
contentType: row.content_type,
|
|
642
|
+
size: Number(row.size),
|
|
643
|
+
sha256: row.sha256,
|
|
644
|
+
visibility: row.visibility,
|
|
645
|
+
createdBy: row.created_by,
|
|
646
|
+
createdAt: row.created_at,
|
|
647
|
+
});
|
|
648
|
+
}
|
|
649
|
+
/** Record an uploaded attachment: write gate + row + `attachment.added`, one txn. */
|
|
650
|
+
async attachmentAdd(record, principal, tenantId, scopeId) {
|
|
651
|
+
await this.ensureMigrations();
|
|
652
|
+
const parsed = attachmentRecord.parse(record);
|
|
653
|
+
const gate = this.attachmentGate(parsed.entity.entityType);
|
|
654
|
+
return this.queue.enqueue(async () => {
|
|
655
|
+
try {
|
|
656
|
+
await this.ctx.storage.transaction(async () => {
|
|
657
|
+
const ctx = this.operationContext(principal, tenantId, scopeId);
|
|
658
|
+
assertAllowed(await ctx.check(gate.write, parsed.entity));
|
|
659
|
+
this.sql.exec(`INSERT INTO _substrat_attachments
|
|
660
|
+
(id, entity_type, entity_id, filename, content_type, size, sha256,
|
|
661
|
+
visibility, created_by, created_at)
|
|
662
|
+
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, parsed.id, parsed.entity.entityType, parsed.entity.entityId, parsed.filename, parsed.contentType, parsed.size, parsed.sha256, parsed.visibility, parsed.createdBy, parsed.createdAt);
|
|
663
|
+
ctx.emit({
|
|
664
|
+
type: ATTACHMENT_ADDED,
|
|
665
|
+
schemaVersion: 1,
|
|
666
|
+
entity: parsed.entity,
|
|
667
|
+
piiClass: 'none',
|
|
668
|
+
payload: { attachment: parsed },
|
|
669
|
+
});
|
|
670
|
+
});
|
|
671
|
+
}
|
|
672
|
+
catch (err) {
|
|
673
|
+
if (err instanceof PermissionDenied) {
|
|
674
|
+
this.recordDenial({ kind: 'principal', id: principal }, tenantId, 'attachments.upload', err);
|
|
675
|
+
}
|
|
676
|
+
throw toRpcError(err);
|
|
677
|
+
}
|
|
678
|
+
await this.dispatch(tenantId, scopeId);
|
|
679
|
+
return parsed;
|
|
680
|
+
});
|
|
681
|
+
}
|
|
682
|
+
/** Records for one entity, newest first — read gate first. */
|
|
683
|
+
async attachmentList(entity, principal, tenantId, scopeId) {
|
|
684
|
+
await this.ensureMigrations();
|
|
685
|
+
const gate = this.attachmentGate(entity.entityType);
|
|
686
|
+
try {
|
|
687
|
+
const ctx = this.operationContext(principal, tenantId, scopeId);
|
|
688
|
+
assertAllowed(await ctx.check(gate.read, entity));
|
|
689
|
+
}
|
|
690
|
+
catch (err) {
|
|
691
|
+
if (err instanceof PermissionDenied) {
|
|
692
|
+
this.recordDenial({ kind: 'principal', id: principal }, tenantId, 'attachments.list', err);
|
|
693
|
+
}
|
|
694
|
+
throw toRpcError(err);
|
|
695
|
+
}
|
|
696
|
+
const rows = this.sql
|
|
697
|
+
.exec(`SELECT id FROM _substrat_attachments WHERE entity_type = ? AND entity_id = ?
|
|
698
|
+
ORDER BY id DESC`, entity.entityType, entity.entityId)
|
|
699
|
+
.toArray();
|
|
700
|
+
return rows.map((r) => this.attachmentRow(r.id)).filter((r) => r !== null);
|
|
701
|
+
}
|
|
702
|
+
/**
|
|
703
|
+
* Authorize one attachment (`read` before bytes are served, `write` before a remove is
|
|
704
|
+
* attempted elsewhere) and return its record — null for an id this scope does not know.
|
|
705
|
+
*/
|
|
706
|
+
async attachmentAuthorize(attachmentId, mode, principal, tenantId, scopeId) {
|
|
707
|
+
await this.ensureMigrations();
|
|
708
|
+
const record = this.attachmentRow(attachmentId);
|
|
709
|
+
if (!record)
|
|
710
|
+
return null;
|
|
711
|
+
const gate = this.attachmentGate(record.entity.entityType);
|
|
712
|
+
try {
|
|
713
|
+
const ctx = this.operationContext(principal, tenantId, scopeId);
|
|
714
|
+
assertAllowed(await ctx.check(mode === 'read' ? gate.read : gate.write, record.entity));
|
|
715
|
+
}
|
|
716
|
+
catch (err) {
|
|
717
|
+
if (err instanceof PermissionDenied) {
|
|
718
|
+
this.recordDenial({ kind: 'principal', id: principal }, tenantId, 'attachments.open', err);
|
|
719
|
+
}
|
|
720
|
+
throw toRpcError(err);
|
|
721
|
+
}
|
|
722
|
+
return record;
|
|
723
|
+
}
|
|
724
|
+
/** Remove an attachment's metadata fact: write gate + delete + `attachment.removed`. */
|
|
725
|
+
async attachmentRemove(attachmentId, principal, tenantId, scopeId) {
|
|
726
|
+
await this.ensureMigrations();
|
|
727
|
+
return this.queue.enqueue(async () => {
|
|
728
|
+
const record = this.attachmentRow(attachmentId);
|
|
729
|
+
if (!record)
|
|
730
|
+
return null;
|
|
731
|
+
const gate = this.attachmentGate(record.entity.entityType);
|
|
732
|
+
try {
|
|
733
|
+
await this.ctx.storage.transaction(async () => {
|
|
734
|
+
const ctx = this.operationContext(principal, tenantId, scopeId);
|
|
735
|
+
assertAllowed(await ctx.check(gate.write, record.entity));
|
|
736
|
+
this.sql.exec('DELETE FROM _substrat_attachments WHERE id = ?', attachmentId);
|
|
737
|
+
ctx.emit({
|
|
738
|
+
type: ATTACHMENT_REMOVED,
|
|
739
|
+
schemaVersion: 1,
|
|
740
|
+
entity: record.entity,
|
|
741
|
+
piiClass: 'none',
|
|
742
|
+
payload: { attachment: record },
|
|
743
|
+
});
|
|
744
|
+
});
|
|
745
|
+
}
|
|
746
|
+
catch (err) {
|
|
747
|
+
if (err instanceof PermissionDenied) {
|
|
748
|
+
this.recordDenial({ kind: 'principal', id: principal }, tenantId, 'attachments.remove', err);
|
|
749
|
+
}
|
|
750
|
+
throw toRpcError(err);
|
|
751
|
+
}
|
|
752
|
+
await this.dispatch(tenantId, scopeId);
|
|
753
|
+
return record;
|
|
754
|
+
});
|
|
755
|
+
}
|
|
582
756
|
/**
|
|
583
757
|
* Whether this scope holds a live `system:<moduleId>` grant (#383) — the switch
|
|
584
758
|
* that decides if a module's schedules run here at all. Absent on a foreign
|
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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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@substrat-run/adapter-cloudflare",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.41.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.
|
|
30
|
-
"@substrat-run/contracts": "^0.
|
|
29
|
+
"@substrat-run/kernel": "^0.41.0",
|
|
30
|
+
"@substrat-run/contracts": "^0.41.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.
|
|
38
|
+
"@substrat-run/contract-tests": "^0.41.0"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public"
|