@cotal-ai/core 0.11.6 → 0.13.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/acls.d.ts +31 -7
- package/dist/acls.d.ts.map +1 -1
- package/dist/acls.js +105 -17
- package/dist/acls.js.map +1 -1
- package/dist/agent-file.js +1 -1
- package/dist/agent-file.js.map +1 -1
- package/dist/auth-provider.d.ts +90 -10
- package/dist/auth-provider.d.ts.map +1 -1
- package/dist/auth-provider.js.map +1 -1
- package/dist/backup-config.d.ts +55 -0
- package/dist/backup-config.d.ts.map +1 -0
- package/dist/backup-config.js +243 -0
- package/dist/backup-config.js.map +1 -0
- package/dist/backup.d.ts +86 -0
- package/dist/backup.d.ts.map +1 -0
- package/dist/backup.js +497 -0
- package/dist/backup.js.map +1 -0
- package/dist/broker-floor.d.ts +34 -0
- package/dist/broker-floor.d.ts.map +1 -0
- package/dist/broker-floor.js +39 -0
- package/dist/broker-floor.js.map +1 -0
- package/dist/canonical.d.ts +24 -0
- package/dist/canonical.d.ts.map +1 -0
- package/dist/canonical.js +159 -0
- package/dist/canonical.js.map +1 -0
- package/dist/channels.d.ts.map +1 -1
- package/dist/channels.js +8 -1
- package/dist/channels.js.map +1 -1
- package/dist/connector.d.ts +4 -0
- package/dist/connector.d.ts.map +1 -1
- package/dist/endpoint-action.d.ts +424 -0
- package/dist/endpoint-action.d.ts.map +1 -0
- package/dist/endpoint-action.js +910 -0
- package/dist/endpoint-action.js.map +1 -0
- package/dist/endpoint-binding.d.ts +344 -0
- package/dist/endpoint-binding.d.ts.map +1 -0
- package/dist/endpoint-binding.js +753 -0
- package/dist/endpoint-binding.js.map +1 -0
- package/dist/endpoint-checkpoint.d.ts +292 -0
- package/dist/endpoint-checkpoint.d.ts.map +1 -0
- package/dist/endpoint-checkpoint.js +818 -0
- package/dist/endpoint-checkpoint.js.map +1 -0
- package/dist/endpoint-cluster.d.ts +95 -0
- package/dist/endpoint-cluster.d.ts.map +1 -0
- package/dist/endpoint-cluster.js +194 -0
- package/dist/endpoint-cluster.js.map +1 -0
- package/dist/endpoint-contract-store.d.ts +90 -0
- package/dist/endpoint-contract-store.d.ts.map +1 -0
- package/dist/endpoint-contract-store.js +348 -0
- package/dist/endpoint-contract-store.js.map +1 -0
- package/dist/endpoint-envelope.d.ts +165 -0
- package/dist/endpoint-envelope.d.ts.map +1 -0
- package/dist/endpoint-envelope.js +346 -0
- package/dist/endpoint-envelope.js.map +1 -0
- package/dist/endpoint-grants.d.ts +123 -0
- package/dist/endpoint-grants.d.ts.map +1 -0
- package/dist/endpoint-grants.js +215 -0
- package/dist/endpoint-grants.js.map +1 -0
- package/dist/endpoint-guard.d.ts +222 -0
- package/dist/endpoint-guard.d.ts.map +1 -0
- package/dist/endpoint-guard.js +468 -0
- package/dist/endpoint-guard.js.map +1 -0
- package/dist/endpoint-handle.d.ts +176 -0
- package/dist/endpoint-handle.d.ts.map +1 -0
- package/dist/endpoint-handle.js +608 -0
- package/dist/endpoint-handle.js.map +1 -0
- package/dist/endpoint-journal.d.ts +225 -0
- package/dist/endpoint-journal.d.ts.map +1 -0
- package/dist/endpoint-journal.js +431 -0
- package/dist/endpoint-journal.js.map +1 -0
- package/dist/endpoint-receipt.d.ts +225 -0
- package/dist/endpoint-receipt.d.ts.map +1 -0
- package/dist/endpoint-receipt.js +417 -0
- package/dist/endpoint-receipt.js.map +1 -0
- package/dist/endpoint-records.d.ts +243 -0
- package/dist/endpoint-records.d.ts.map +1 -0
- package/dist/endpoint-records.js +591 -0
- package/dist/endpoint-records.js.map +1 -0
- package/dist/endpoint-serve.d.ts +176 -0
- package/dist/endpoint-serve.d.ts.map +1 -0
- package/dist/endpoint-serve.js +446 -0
- package/dist/endpoint-serve.js.map +1 -0
- package/dist/endpoint-service.d.ts +518 -0
- package/dist/endpoint-service.d.ts.map +1 -0
- package/dist/endpoint-service.js +973 -0
- package/dist/endpoint-service.js.map +1 -0
- package/dist/endpoint-session.d.ts +398 -0
- package/dist/endpoint-session.d.ts.map +1 -0
- package/dist/endpoint-session.js +834 -0
- package/dist/endpoint-session.js.map +1 -0
- package/dist/endpoint-signing.d.ts +105 -0
- package/dist/endpoint-signing.d.ts.map +1 -0
- package/dist/endpoint-signing.js +190 -0
- package/dist/endpoint-signing.js.map +1 -0
- package/dist/endpoint-subjects.d.ts +222 -0
- package/dist/endpoint-subjects.d.ts.map +1 -0
- package/dist/endpoint-subjects.js +381 -0
- package/dist/endpoint-subjects.js.map +1 -0
- package/dist/endpoint-supervisor.d.ts +19 -0
- package/dist/endpoint-supervisor.d.ts.map +1 -0
- package/dist/endpoint-supervisor.js +12 -0
- package/dist/endpoint-supervisor.js.map +1 -0
- package/dist/endpoint-traits.d.ts +225 -0
- package/dist/endpoint-traits.d.ts.map +1 -0
- package/dist/endpoint-traits.js +469 -0
- package/dist/endpoint-traits.js.map +1 -0
- package/dist/endpoint-verbs.d.ts +277 -0
- package/dist/endpoint-verbs.d.ts.map +1 -0
- package/dist/endpoint-verbs.js +576 -0
- package/dist/endpoint-verbs.js.map +1 -0
- package/dist/endpoint-virtual.d.ts +308 -0
- package/dist/endpoint-virtual.d.ts.map +1 -0
- package/dist/endpoint-virtual.js +440 -0
- package/dist/endpoint-virtual.js.map +1 -0
- package/dist/endpoint-work.d.ts +304 -0
- package/dist/endpoint-work.d.ts.map +1 -0
- package/dist/endpoint-work.js +728 -0
- package/dist/endpoint-work.js.map +1 -0
- package/dist/endpoint.d.ts +66 -22
- package/dist/endpoint.d.ts.map +1 -1
- package/dist/endpoint.js +289 -89
- package/dist/endpoint.js.map +1 -1
- package/dist/evict.d.ts +95 -32
- package/dist/evict.d.ts.map +1 -1
- package/dist/evict.js +193 -3
- package/dist/evict.js.map +1 -1
- package/dist/index.d.ts +29 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +29 -0
- package/dist/index.js.map +1 -1
- package/dist/lease.d.ts +4 -0
- package/dist/lease.d.ts.map +1 -1
- package/dist/lease.js.map +1 -1
- package/dist/members.d.ts +4 -4
- package/dist/members.d.ts.map +1 -1
- package/dist/members.js +12 -12
- package/dist/members.js.map +1 -1
- package/dist/provision.d.ts +78 -20
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +214 -37
- package/dist/provision.js.map +1 -1
- package/dist/runtime.d.ts +3 -0
- package/dist/runtime.d.ts.map +1 -1
- package/dist/safe-pattern.d.ts +33 -0
- package/dist/safe-pattern.d.ts.map +1 -0
- package/dist/safe-pattern.js +486 -0
- package/dist/safe-pattern.js.map +1 -0
- package/dist/schema-profile.d.ts +93 -0
- package/dist/schema-profile.d.ts.map +1 -0
- package/dist/schema-profile.js +284 -0
- package/dist/schema-profile.js.map +1 -0
- package/dist/secret-store.d.ts +46 -0
- package/dist/secret-store.d.ts.map +1 -0
- package/dist/secret-store.js +2 -0
- package/dist/secret-store.js.map +1 -0
- package/dist/space-auth.d.ts +9 -0
- package/dist/space-auth.d.ts.map +1 -0
- package/dist/space-auth.js +126 -0
- package/dist/space-auth.js.map +1 -0
- package/dist/streams.d.ts +14 -10
- package/dist/streams.d.ts.map +1 -1
- package/dist/streams.js +47 -76
- package/dist/streams.js.map +1 -1
- package/dist/subjects.d.ts +100 -40
- package/dist/subjects.d.ts.map +1 -1
- package/dist/subjects.js +136 -60
- package/dist/subjects.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -2
package/dist/provision.js
CHANGED
|
@@ -17,8 +17,13 @@
|
|
|
17
17
|
import { join } from "node:path";
|
|
18
18
|
import { encodeOperator, encodeAccount, encodeUser, fmtCreds, } from "@nats-io/jwt";
|
|
19
19
|
import { createOperator, createAccount, fromPublic, fromSeed } from "@nats-io/nkeys";
|
|
20
|
-
import { token, spacePrefix, chatSubject, assertValidChannel, channelInAllow, principalKey, parsePrincipalKey, deprovisionTargetPrincipal, principalTags, assertInboxConnId, DEV_OWNER, unicastSubject, anycastSubject, controlServiceSubject, CONTROL_PRIVILEGED, CONTROL_SELF_SERVICE, CONTROL_ADMIN, CONTROL_DELIVERY, CONTROL_DELIVERY_ADMIN, chatStream, dmStream, taskStream, dlvStream, inboxStream, chatHistDurable, dmDurable, taskDurable, dlvDurable, presenceBucket, channelBucket, membersBucket, aclBucket, aclKey, membershipBucket, deliveryBucket, managerBucket, MANAGER_LEASE_KEY, connzRequestSubject, accountConnectSubject, accountDisconnectSubject, MEMBERSHIP_INBOX_PREFIX, FANOUT_DURABLE, INBOX_READER_DURABLE, } from "./subjects.js";
|
|
20
|
+
import { token, spacePrefix, chatSubject, assertValidChannel, channelInAllow, principalKey, parsePrincipalKey, deprovisionTargetPrincipal, principalTags, assertInboxConnId, DEV_OWNER, unicastSubject, anycastSubject, controlServiceSubject, CONTROL_PRIVILEGED, CONTROL_SELF_SERVICE, CONTROL_ADMIN, CONTROL_DELIVERY, CONTROL_DELIVERY_ADMIN, CONTROL_AUTH_ADMIN, chatStream, dmStream, taskStream, dlvStream, inboxStream, chatHistDurable, dmDurable, taskDurable, dlvDurable, presenceBucket, channelBucket, membersBucket, aclBucket, aclKey, assertLifecycleToken, membershipBucket, deliveryBucket, managerBucket, MANAGER_LEASE_KEY, connzRequestSubject, accountConnectSubject, accountDisconnectSubject, MEMBERSHIP_INBOX_PREFIX, FANOUT_DURABLE, INBOX_READER_DURABLE, } from "./subjects.js";
|
|
21
|
+
import { epCallerGrantRows, epServeGrantRows, epBaselineGrantRows, spawnCallerCapabilities } from "./endpoint-grants.js";
|
|
22
|
+
import { assertServeGrantMintable, finalizeServeIssuance } from "./endpoint-service.js";
|
|
23
|
+
import { effectsBindGrants, poolOwnerBindGrants } from "./endpoint-binding.js";
|
|
24
|
+
import { rawDigest } from "./canonical.js";
|
|
21
25
|
import { credsClaims } from "./identity.js";
|
|
26
|
+
import { backupProfilePermissions, restoreProfilePermissions, } from "./backup.js";
|
|
22
27
|
const FIVE_MINUTES = 5 * 60;
|
|
23
28
|
/** Bounded lifetime for `standing-renewable` credentials whose renewal owner is ONLINE (D5 slice 5):
|
|
24
29
|
* the holder (or its launcher) re-mints at 75% of the lifetime via the endpoint's creds-source seam,
|
|
@@ -43,8 +48,11 @@ export const CREDENTIAL_LIFETIMES = {
|
|
|
43
48
|
"membership-rw": { class: "standing-renewable", defaultTtlSeconds: STANDING_RENEWABLE_TTL_SEC, renewalOwner: "manager", note: "membership feed writer; seed-less - the manager re-signs .cotal/membership-rw.creds for the SAME nkey, delivery-admin reloadCreds reconnects the rw feed explicitly, and source re-read is only a backstop (D5 slice 5 class 2)" },
|
|
44
49
|
provisioner: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "setup/spawn provisioning window only" },
|
|
45
50
|
deprovisioner: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "target-pinned teardown window only" },
|
|
51
|
+
"retirement-requester": { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "one despawn's retirement request window; request+reply only" },
|
|
46
52
|
operator: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "send/dm/join/probe-style operator command" },
|
|
47
53
|
purger: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "history purge command" },
|
|
54
|
+
backup: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "offline snapshot phase; exact stream and delivery subject, memory-only" },
|
|
55
|
+
restore: { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "offline restore initiation or exact-ID upload phase, memory-only" },
|
|
48
56
|
probe: { class: "one-shot", defaultTtlSeconds: 60, note: "connect-only preflight" },
|
|
49
57
|
"channel-writer": { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "channel registry mutation command" },
|
|
50
58
|
"channel-purger": { class: "mixed", note: "one-shot for CLI, standing inside web; split or renewal required before default exp" },
|
|
@@ -52,9 +60,18 @@ export const CREDENTIAL_LIFETIMES = {
|
|
|
52
60
|
"control-caller-privileged": { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "ps/start control call" },
|
|
53
61
|
"control-caller-admin": { class: "one-shot", defaultTtlSeconds: FIVE_MINUTES, note: "stop/attach admin control call" },
|
|
54
62
|
deployer: { class: "one-shot", note: "manifest deploy spans planning/launch/ledger; needs near-expiry guard or remint before default exp" },
|
|
63
|
+
"endpoint-serve": { class: "standing-renewable", defaultTtlSeconds: STANDING_RENEWABLE_TTL_SEC, renewalOwner: "manager", note: "per-instance endpoint serve credential (SPEC 13.9); the managing authority re-mints on renewal and on takeover (new epoch), and the 13.1 barrier revokes the superseded one" },
|
|
55
64
|
"membership-observer": { class: "rotation-renewed", defaultTtlSeconds: ROTATION_RENEWED_TTL_SEC, renewalOwner: "system-account rotation", note: "$SYS-account CONNZ observer; NOT online-renewable ($SYS seed dies at `up`) - bounded exp, renewed only by rotateSystemAccount + broker restart; doctor warns near expiry" },
|
|
56
65
|
"connection-evictor": { class: "rotation-renewed", defaultTtlSeconds: ROTATION_RENEWED_TTL_SEC, renewalOwner: "system-account rotation", note: "$SYS-account KICK-only live-eviction cred (D5 slice 4); same rotation-renewed posture as the observer" },
|
|
57
66
|
};
|
|
67
|
+
// RUNTIME integrity (the afa715b class): the matrix and every policy freeze at module load
|
|
68
|
+
// (a post-import `defaultTtlSeconds = undefined` would otherwise mint a NON-EXPIRING credential
|
|
69
|
+
// out of a one-shot profile, executed repro), and the mint path below reads a PRIVATE TTL
|
|
70
|
+
// snapshot taken here, never the live export.
|
|
71
|
+
for (const p of Object.values(CREDENTIAL_LIFETIMES))
|
|
72
|
+
Object.freeze(p);
|
|
73
|
+
Object.freeze(CREDENTIAL_LIFETIMES);
|
|
74
|
+
const LIFETIME_TTL_SNAP = new Map(Object.entries(CREDENTIAL_LIFETIMES).map(([k, p]) => [k, p.defaultTtlSeconds]));
|
|
58
75
|
export function credentialLifetime(kind) {
|
|
59
76
|
return CREDENTIAL_LIFETIMES[kind];
|
|
60
77
|
}
|
|
@@ -186,7 +203,7 @@ function userValidDates(kind, opts) {
|
|
|
186
203
|
throw new Error("mintCreds: expiresAt must be a non-negative integer timestamp (seconds)");
|
|
187
204
|
return { exp: opts.expiresAt };
|
|
188
205
|
}
|
|
189
|
-
const ttl = opts.expiresInSeconds ??
|
|
206
|
+
const ttl = opts.expiresInSeconds ?? LIFETIME_TTL_SNAP.get(kind);
|
|
190
207
|
if (ttl === undefined)
|
|
191
208
|
return {};
|
|
192
209
|
if (!Number.isInteger(ttl) || ttl <= 0)
|
|
@@ -198,21 +215,26 @@ function userValidDates(kind, opts) {
|
|
|
198
215
|
* id, so the agent's lane is `local.<id>`. The connection nkey is always the identity's id here (the
|
|
199
216
|
* creds bind to it). User mode does NOT flow through here — the callout mints directly with the
|
|
200
217
|
* server-derived owner + ledger actor. */
|
|
201
|
-
function principalOf(identity, principal) {
|
|
218
|
+
function principalOf(identity, principal, lifecycleUid) {
|
|
202
219
|
return {
|
|
203
220
|
owner: principal?.owner ?? DEV_OWNER,
|
|
204
221
|
actor: principal?.actor ?? identity.id,
|
|
205
222
|
connId: identity.id,
|
|
223
|
+
...(lifecycleUid !== undefined ? { lifecycleUid } : {}),
|
|
206
224
|
};
|
|
207
225
|
}
|
|
208
226
|
/** Onboard an agent for launch (auth mode): pre-create its bind-only DM (+ Plane-3 DELIVER + role
|
|
209
227
|
* TASK) durables, RECORD its read ACL in the durable registry (unless `durableMembership:false`), and
|
|
210
228
|
* mint its scoped creds. Live delivery is the agent's own core subscription — there is no per-instance
|
|
211
229
|
* chat durable. Boot durable MEMBERSHIP is not written here: the agent self-joins its durable channels
|
|
212
|
-
* via the server-side delivery daemon's `ctl.delivery` op at connect. A live-only
|
|
213
|
-
* (`durableMembership:false`, e.g.
|
|
230
|
+
* via the server-side delivery daemon's `ctl.delivery` op at connect. A deliberately live-only
|
|
231
|
+
* launcher (`durableMembership:false`, e.g. `cotal spawn --live-only`) gets no ACL row, so the
|
|
232
|
+
* daemon never authorizes a durable backstop for it. */
|
|
214
233
|
export async function provisionAgent(provisioner, auth, identity, opts = {}) {
|
|
215
|
-
|
|
234
|
+
if (!opts.lifecycleUid)
|
|
235
|
+
throw new Error("provisionAgent: a lifecycleUid is required - the agent's broker footprint is lifecycle-keyed (SPEC 13.1); mint one with mintLifecycleUid() and persist it with the agent");
|
|
236
|
+
const pr = principalOf(identity, opts.principal, opts.lifecycleUid);
|
|
237
|
+
const allowSubscribe = await provisionAgentDurables(provisioner, { owner: pr.owner, actor: pr.actor, lifecycleUid: opts.lifecycleUid }, opts);
|
|
216
238
|
return mintCreds(auth, identity, "agent", { ...opts, allowSubscribe });
|
|
217
239
|
}
|
|
218
240
|
/** The DURABLE half of agent onboarding, principal-keyed and credential-agnostic: pre-create the
|
|
@@ -221,6 +243,7 @@ export async function provisionAgent(provisioner, auth, identity, opts = {}) {
|
|
|
221
243
|
* a user agent's credential is its bearer (callout-minted per connect), never a static cred.
|
|
222
244
|
* Returns the resolved read ACL so both callers scope from the same computed set. */
|
|
223
245
|
export async function provisionAgentDurables(provisioner, pr, opts = {}) {
|
|
246
|
+
const uid = assertLifecycleToken(pr.lifecycleUid); // hard cut: every provisioned footprint is lifecycle-keyed (SPEC 13.1)
|
|
224
247
|
const subscribe = opts.subscribe?.length ? opts.subscribe : ["general"];
|
|
225
248
|
const allowSubscribe = opts.allowSubscribe?.length ? opts.allowSubscribe : subscribe;
|
|
226
249
|
// Reject channel names the wire layer would rewrite (the pre-created filter rides token() too).
|
|
@@ -232,17 +255,17 @@ export async function provisionAgentDurables(provisioner, pr, opts = {}) {
|
|
|
232
255
|
for (const ch of subscribe)
|
|
233
256
|
if (!channelInAllow(allowSubscribe, ch))
|
|
234
257
|
throw new Error(`provisionAgent: subscribe "${ch}" is not within allowSubscribe [${allowSubscribe.join(", ")}]`);
|
|
235
|
-
await provisioner.provisionDmInbox(pr.owner, pr.actor);
|
|
236
|
-
await provisioner.provisionDlvInbox(pr.owner, pr.actor);
|
|
258
|
+
await provisioner.provisionDmInbox(pr.owner, pr.actor, uid);
|
|
259
|
+
await provisioner.provisionDlvInbox(pr.owner, pr.actor, uid);
|
|
237
260
|
// Record the agent's read ACL in the durable registry (the same act as baking it into the JWT) so the
|
|
238
261
|
// server-side delivery daemon can re-authorize this agent's durable entries + validate its runtime
|
|
239
262
|
// durable-joins — it holds no in-memory ledger. The agent SELF-JOINS its durable boot channels via the
|
|
240
|
-
// daemon at connect (no manager-written boot membership). `durableMembership:false` (
|
|
241
|
-
// launcher, e.g.
|
|
263
|
+
// daemon at connect (no manager-written boot membership). `durableMembership:false` (an explicit
|
|
264
|
+
// live-only launcher, e.g. `cotal spawn --live-only`) opts out of the ACL row → the daemon never
|
|
242
265
|
// authorizes a durable backstop for it, so it stays live-only.
|
|
243
|
-
// ACL is keyed by the
|
|
266
|
+
// ACL is keyed by the lifecycle-scoped dot-form <owner>.<actor>.<uid> (per-incarnation read authority).
|
|
244
267
|
if (opts.durableMembership !== false)
|
|
245
|
-
await provisioner.commitAcl(principalKey(pr.owner, pr.actor).key, allowSubscribe);
|
|
268
|
+
await provisioner.commitAcl(principalKey(pr.owner, pr.actor).key, uid, allowSubscribe);
|
|
246
269
|
if (opts.role)
|
|
247
270
|
await provisioner.provisionTaskQueue(opts.role);
|
|
248
271
|
return allowSubscribe;
|
|
@@ -256,16 +279,52 @@ export async function provisionAgentDurables(provisioner, pr, opts = {}) {
|
|
|
256
279
|
* enumerated least-privilege — there is no allow-all cred (the former `manager` is deleted). */
|
|
257
280
|
export async function mintCreds(auth, identity, profile, opts = {}) {
|
|
258
281
|
const signer = fromSeed(new TextEncoder().encode(auth.account.signingSeed));
|
|
259
|
-
const pr = principalOf(identity, opts.principal);
|
|
260
|
-
|
|
282
|
+
const pr = principalOf(identity, opts.principal, opts.lifecycleUid);
|
|
283
|
+
// Serve rows are INTERNAL to mintCreds behind the §13.1 fence: the exported permissionsFor
|
|
284
|
+
// refuses "endpoint-serve" (so a direct caller can never obtain unfenced serve rows), and only
|
|
285
|
+
// this fenced path calls the row builder.
|
|
286
|
+
const perms = profile === "endpoint-serve"
|
|
287
|
+
? endpointServePermissions(auth.space, pr, opts)
|
|
288
|
+
: permissionsFor(profile, auth.space, pr, opts);
|
|
261
289
|
const validDates = userValidDates(profile, opts);
|
|
262
290
|
const userJwt = await encodeUser(profile, fromPublic(identity.id), fromPublic(auth.account.pub),
|
|
263
291
|
// Stamp the principal `tags` so this connection's identity is CONNZ-recoverable by the membership
|
|
264
292
|
// feed — the SAME tags the auth callout stamps (user mode), via core's single-source builder. The
|
|
265
293
|
// JWT `name` stays the profile label (a debug breadcrumb; not a surfaced/queryable CONNZ field).
|
|
266
294
|
{ ...perms, tags: principalTags(pr.owner, pr.actor) }, { signer, ...validDates });
|
|
267
|
-
|
|
268
|
-
|
|
295
|
+
// Build the credential string FULLY before the fence: nothing fallible may run AFTER a winning
|
|
296
|
+
// CAS, or a post-CAS throw would leave a committed ledger row with no released credential (an
|
|
297
|
+
// orphan authority record). fmtCreds only wraps the already-signed JWT with the seed, so it is
|
|
298
|
+
// done here and the fence is the mint's LAST step.
|
|
299
|
+
const creds = new TextDecoder().decode(fmtCreds(userJwt, fromSeed(new TextEncoder().encode(identity.seed))));
|
|
300
|
+
// §13.1 mint fence for the serve credential: the credential is BUILT, but released only when its
|
|
301
|
+
// NORMATIVE ledger row (holderPrincipal/lifecycleUid/sourceChain/state/exp + the currency
|
|
302
|
+
// coordinates) is durably staged and its revision-pinned CAS wins the instance's single issuance
|
|
303
|
+
// gate (still `open` at the authorized epoch + registrationRevision + nameAuthorityRevision). A
|
|
304
|
+
// takeover, re-registration, or name transfer that froze the gate first makes this lose and
|
|
305
|
+
// release nothing. A read is never a fence, so this is a CAS write, not an in-memory mark.
|
|
306
|
+
if (profile === "endpoint-serve") {
|
|
307
|
+
if (!opts.serveIssuance)
|
|
308
|
+
throw new Error("mintCreds: endpoint-serve requires opts.serveIssuance (the durable issuance-gate seam; the mint releases only on its revision-pinned CAS win, SPEC 13.1)");
|
|
309
|
+
await finalizeServeIssuance(opts.serveIssuance, opts.endpointServe, {
|
|
310
|
+
// PER-ISSUED-JWT id (digest of the credential): every issuance (a standing renewal included)
|
|
311
|
+
// has distinct bytes (fresh exp/iat), so it writes a DISTINCT ledger row and never overwrites
|
|
312
|
+
// or resurrects a prior one. The create-only / idempotent-if-identical guarantee lives at the
|
|
313
|
+
// finalize/stage seam (the SAME credential object staged twice), not the mint layer. The
|
|
314
|
+
// stable nkey rides separately as `credentialKey` for broker revocation. KEY-SAFE digest
|
|
315
|
+
// form (`sha256-<hex>`, never the §13.7 `sha256:` artifact form): the id becomes a segment
|
|
316
|
+
// of the durable `epcred.` KV key, whose grammar has no ":" — the digest property (a
|
|
317
|
+
// byte-identical retry maps to the SAME id) is what matters, not the separator.
|
|
318
|
+
credentialId: rawDigest(creds).replace("sha256:", "sha256-"),
|
|
319
|
+
credentialKey: identity.id,
|
|
320
|
+
holderActor: pr.actor,
|
|
321
|
+
// A serve credential is minted directly by the provisioner authority, so its §13.1 issuance
|
|
322
|
+
// lineage is the root anchor (not owner/actor principal components).
|
|
323
|
+
sourceChain: ["root"],
|
|
324
|
+
...(validDates.exp !== undefined ? { exp: validDates.exp } : {}),
|
|
325
|
+
});
|
|
326
|
+
}
|
|
327
|
+
return creds;
|
|
269
328
|
}
|
|
270
329
|
/** Build the NATS user permission object for a profile: a default-deny allow-list scoped to
|
|
271
330
|
* exactly what each profile does. Every profile is now enumerated least-privilege — the former
|
|
@@ -285,6 +344,12 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
285
344
|
// chosen nonce (untrusted), so a metacharacter here would escalate the inbox grant to every inbox.
|
|
286
345
|
// Assert once, for all profiles (each early-returning profile builds its own inbox from pr.connId).
|
|
287
346
|
assertInboxConnId(pr.connId);
|
|
347
|
+
// Extraneous serve-artifact refusal, hoisted ABOVE the profile dispatch: every early-return
|
|
348
|
+
// profile (delivery/supervisor/observer/...) must refuse it too, not just the agent tail, or a
|
|
349
|
+
// misconfigured sensitive mint is silently masked (MintOpts: every other profile refuses it).
|
|
350
|
+
// The "endpoint-serve" profile is excluded so its own arm below keeps the call-mintCreds redirect.
|
|
351
|
+
if (opts.endpointServe && profile !== "endpoint-serve")
|
|
352
|
+
throw new Error(`permissionsFor: endpointServe rides the dedicated "endpoint-serve" profile - a serve credential is per-instance authority (SPEC 13.9), never folded into a "${profile}" cred`);
|
|
288
353
|
if (profile === "delivery")
|
|
289
354
|
return deliveryPermissions(space, pr); // scoped server-side Plane-3 infra
|
|
290
355
|
if (profile === "membership-rw")
|
|
@@ -298,11 +363,31 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
298
363
|
// full principal dot-form for user-mode agents, or a bare static/dev actor id (keyed under
|
|
299
364
|
// DEV_OWNER) — see {@link deprovisionTargetPrincipal}.
|
|
300
365
|
if (!opts.deprovisionTarget)
|
|
301
|
-
throw new Error("permissionsFor: deprovisioner requires opts.deprovisionTarget (the departed
|
|
366
|
+
throw new Error("permissionsFor: deprovisioner requires opts.deprovisionTarget ({principal, lifecycleUid} of the departed incarnation)");
|
|
302
367
|
return deprovisionerPermissions(space, pr, opts.deprovisionTarget);
|
|
303
368
|
}
|
|
369
|
+
if (profile === "retirement-requester") {
|
|
370
|
+
// Ephemeral request+reply on the auth-admin rail (#29 piece 3): publish EXACTLY the
|
|
371
|
+
// requester's own control subject + subscribe its own reply subtree and inbox. No store
|
|
372
|
+
// reads, no barrier/scanner/plane authority - the requester only asks; the auth plane
|
|
373
|
+
// holds every executing right and re-checks the lease at serve time.
|
|
374
|
+
if (!opts.retirementRequester)
|
|
375
|
+
throw new Error("permissionsFor: retirement-requester requires opts.retirementRequester ({owner, actor} of the requesting manager)");
|
|
376
|
+
const req = controlServiceSubject(space, CONTROL_AUTH_ADMIN, opts.retirementRequester.owner, opts.retirementRequester.actor);
|
|
377
|
+
return { pub: { allow: [req] }, sub: { allow: [`${req}.reply.>`, `_INBOX_${pr.connId}.>`] } };
|
|
378
|
+
}
|
|
304
379
|
if (profile === "purger")
|
|
305
380
|
return purgerPermissions(space, pr); // ephemeral history-purge (closure (ii))
|
|
381
|
+
if (profile === "backup") {
|
|
382
|
+
if (!opts.backup)
|
|
383
|
+
throw new Error("permissionsFor: backup requires opts.backup");
|
|
384
|
+
return backupProfilePermissions(space, pr.connId, opts.backup);
|
|
385
|
+
}
|
|
386
|
+
if (profile === "restore") {
|
|
387
|
+
if (!opts.restore)
|
|
388
|
+
throw new Error("permissionsFor: restore requires opts.restore");
|
|
389
|
+
return restoreProfilePermissions(space, pr.connId, opts.restore);
|
|
390
|
+
}
|
|
306
391
|
if (profile === "operator")
|
|
307
392
|
return operatorPermissions(space, pr); // human-CLI client (send/dm/ask) (closure (ii))
|
|
308
393
|
if (profile === "probe")
|
|
@@ -319,6 +404,10 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
319
404
|
return controlCallerPermissions(space, pr, CONTROL_ADMIN); // stop/attach (PR 1.5)
|
|
320
405
|
if (profile === "deployer")
|
|
321
406
|
return deployerPermissions(space, pr, opts.controlTier ?? CONTROL_ADMIN); // spawn -f deploy authority (PR 1.5; user-mode view rides privileged)
|
|
407
|
+
if (profile === "endpoint-serve")
|
|
408
|
+
// Serve rows are emitted ONLY by mintCreds behind the §13.1 issuance fence — never via this
|
|
409
|
+
// exported builder, so a direct signer/callout can't obtain unfenced serve rows (SPEC 13.1/13.9).
|
|
410
|
+
throw new Error("permissionsFor: endpoint-serve rows are emitted only by mintCreds behind the §13.1 issuance fence; call mintCreds");
|
|
322
411
|
const CHAT = chatStream(space), DM = dmStream(space), TASK = taskStream(space);
|
|
323
412
|
const KV = `KV_${presenceBucket(space)}`;
|
|
324
413
|
const CHKV = `KV_${channelBucket(space)}`; // channel registry (read-only for everyone)
|
|
@@ -333,13 +422,17 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
333
422
|
// creates on CHAT + the presence KV. No chat/inst/svc/ctl publish → can't post.
|
|
334
423
|
// observer — sub chat.> only; DM_<space>/svc never named → DMs + anycast structurally
|
|
335
424
|
// invisible (step-6 inbox scoping means it can't sniff deliveries either).
|
|
336
|
-
// admin — sub widened to the
|
|
337
|
-
// and anycast (svc.>) live, PLUS DM-stream read
|
|
338
|
-
//
|
|
339
|
-
//
|
|
340
|
-
//
|
|
425
|
+
// admin — sub widened to the MESSAGING plane, enumerated (SPEC 13.9/13.11): the
|
|
426
|
+
// dashboard's tap also sees DMs (inst.>) and anycast (svc.>) live, PLUS DM-stream read
|
|
427
|
+
// verbs so it can backfill DM history. A deliberate god-view over messaging only: a
|
|
428
|
+
// space-wide `>` would additionally plain-subscribe every v0.4 endpoint request rail
|
|
429
|
+
// (collecting the reply nonces the queue-qualified-only rule protects) and every
|
|
430
|
+
// core-only session frame, so the ep/epe/epf/epj/ept/epr/epw/eps/epc planes are
|
|
431
|
+
// deliberately excluded. DMs are plaintext + ACL-gated, so mint this only for a
|
|
432
|
+
// trusted audit dashboard. CONSUMER.CREATE on DM_<space> is the DM-confidentiality
|
|
433
|
+
// surface — granted here ONLY for this elevated read-only profile, never to agents.
|
|
341
434
|
const sub = profile === "admin"
|
|
342
|
-
? [`${spacePrefix(space)}.>`, inbox]
|
|
435
|
+
? [`${spacePrefix(space)}.chat.>`, `${spacePrefix(space)}.inst.>`, `${spacePrefix(space)}.svc.>`, inbox]
|
|
343
436
|
: [`${spacePrefix(space)}.chat.>`, inbox];
|
|
344
437
|
const allow = [
|
|
345
438
|
"$JS.API.INFO",
|
|
@@ -392,8 +485,11 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
392
485
|
for (const ch of [...allowSubscribe, ...allowPublish])
|
|
393
486
|
assertValidChannel(ch);
|
|
394
487
|
const manager = opts.manager ?? CONTROL_PRIVILEGED;
|
|
395
|
-
|
|
396
|
-
|
|
488
|
+
if (!pr.lifecycleUid)
|
|
489
|
+
throw new Error("permissionsFor(agent): a lifecycleUid is required - the agent's dm/dlv/chathist grants are lifecycle-keyed exact names (SPEC 13.1)");
|
|
490
|
+
const uid = assertLifecycleToken(pr.lifecycleUid);
|
|
491
|
+
const chatHistD = chatHistDurable(pr.owner, pr.actor, uid), dmD = dmDurable(pr.owner, pr.actor, uid);
|
|
492
|
+
const DLV = dlvStream(space), dlvD = dlvDurable(pr.owner, pr.actor, uid); // Plane-3 per-member delivery (bind-only)
|
|
397
493
|
const svcD = opts.role ? taskDurable(opts.role) : undefined;
|
|
398
494
|
const pubAllow = [
|
|
399
495
|
// peer publish — owner+actor identity + channel scope, built from the real builders. Default-deny:
|
|
@@ -480,6 +576,32 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
480
576
|
// broker-enforced half of the tier split; the manager's per-op checks stay on top of it.
|
|
481
577
|
pubAllow.push(controlServiceSubject(space, CONTROL_ADMIN, pr.owner, pr.actor));
|
|
482
578
|
}
|
|
579
|
+
// v0.4 endpoint rails (SPEC §13.9 caller rows). EVERY agent gets the Appendix-B BASELINE set
|
|
580
|
+
// (wildcard describe + delivery join/leave/list + self-mode lifecycle + the reply rail), keyed
|
|
581
|
+
// on the SAME lifecycle uid as the agent's durables; the spawn capability adds the owner-mode
|
|
582
|
+
// manager lifecycle set. Beyond the baseline stays default-deny: only minted capabilities
|
|
583
|
+
// produce rows, each pinning the full caller triple (§13.1 lifecycle UID included; the nonce
|
|
584
|
+
// is the only wildcard token).
|
|
585
|
+
// ONE lifecycle uid keys the whole caller rail (§13.1/§13.2 forge-lock: one credential names one
|
|
586
|
+
// incarnation). `uid` is the already-asserted pr.lifecycleUid; the baseline, the spawn set, AND
|
|
587
|
+
// the explicit capabilities ALL build their caller triple from it. opts.lifecycleUid is a public
|
|
588
|
+
// seam (the IdP-adapter path) that must AGREE, never a second source of truth for the triple: a
|
|
589
|
+
// divergent value would mint two reply rails on one credential, so it fails loud here.
|
|
590
|
+
const epCaller = { owner: pr.owner, actor: pr.actor, uid };
|
|
591
|
+
const baseline = epBaselineGrantRows(space, epCaller);
|
|
592
|
+
pubAllow.push(...baseline.pub);
|
|
593
|
+
const epSub = [...baseline.sub];
|
|
594
|
+
if (opts.capabilities?.includes("spawn"))
|
|
595
|
+
pubAllow.push(...epCallerGrantRows(space, spawnCallerCapabilities(pr.owner), epCaller).pub);
|
|
596
|
+
if (opts.endpointCapabilities?.length) {
|
|
597
|
+
if (opts.lifecycleUid !== undefined && assertLifecycleToken(opts.lifecycleUid) !== uid)
|
|
598
|
+
throw new Error(`permissionsFor: opts.lifecycleUid "${opts.lifecycleUid}" disagrees with the principal's lifecycleUid "${uid}" - one credential names ONE incarnation on the caller rail (SPEC 13.1/13.2)`);
|
|
599
|
+
const rows = epCallerGrantRows(space, opts.endpointCapabilities, epCaller);
|
|
600
|
+
pubAllow.push(...rows.pub);
|
|
601
|
+
for (const s of rows.sub)
|
|
602
|
+
if (!epSub.includes(s))
|
|
603
|
+
epSub.push(s);
|
|
604
|
+
}
|
|
483
605
|
// Explicit create-deny (defense-in-depth over default-deny) on the two streams whose
|
|
484
606
|
// create-time filter_subject is the attack surface — DM (private content) and TASK
|
|
485
607
|
// (cross-role work-stealing). Covers the bare ephemeral form (no trailing token), the
|
|
@@ -517,7 +639,7 @@ export function permissionsFor(profile, space, pr, opts) {
|
|
|
517
639
|
controlReplies.push(`${controlServiceSubject(space, CONTROL_PRIVILEGED, pr.owner, pr.actor)}.reply.>`);
|
|
518
640
|
if (opts.capabilities?.includes("admin"))
|
|
519
641
|
controlReplies.push(`${controlServiceSubject(space, CONTROL_ADMIN, pr.owner, pr.actor)}.reply.>`);
|
|
520
|
-
return { pub: { allow: pubAllow, deny: pubDeny }, sub: { allow: [inbox, deliveryReplies, ...controlReplies, ...subChat] } };
|
|
642
|
+
return { pub: { allow: pubAllow, deny: pubDeny }, sub: { allow: [inbox, deliveryReplies, ...controlReplies, ...subChat, ...epSub] } };
|
|
521
643
|
}
|
|
522
644
|
/** The long-lived SUPERVISOR permission set (closure (ii), residual 2) — the always-on manager daemon
|
|
523
645
|
* (`manager.ts` `this.ep`), carved down from the former allow-all `manager`. THIS is the cred whose
|
|
@@ -740,6 +862,54 @@ function controlCallerPermissions(space, pr, tier) {
|
|
|
740
862
|
sub: { allow: [`_INBOX_${pr.connId}.>`, `${reqSubject}.reply.>`] },
|
|
741
863
|
};
|
|
742
864
|
}
|
|
865
|
+
/** ENDPOINT-SERVE (v0.4, SPEC §13.9 "Serve grants") — the per-instance serve credential:
|
|
866
|
+
* EXACTLY the instance's registered rails and nothing else. Subscribe: the queue-qualified
|
|
867
|
+
* class rail, the plain scatter rail, and the own-instance rail for the FULL registered
|
|
868
|
+
* command set plus the derived `describe`, and the own epoch-pinned timer-fire subjects;
|
|
869
|
+
* publish: the epoch-pinned egress (reply / `epe` events / `ept` schedule requests / `epr`
|
|
870
|
+
* record-write ingress) plus, from the branded snapshot only, the §13.9 bind rows: the shared
|
|
871
|
+
* `eff_<e>` effects bind iff the surface is journal-class and each owned `pool_<e>_<pool>`
|
|
872
|
+
* bind (bind-only + `$JS.API.INFO`; an ephemeral-only poolless endpoint emits none). No agent
|
|
873
|
+
* baseline of any kind — no chat/DM/anycast/presence/ctl, no broad `$JS.>`. The value MUST be the
|
|
874
|
+
* branded ARTIFACT `authorizeServeGrant` returned, and its mint context binds: same space, and
|
|
875
|
+
* the minted principal is the registered owner. This builds the ROWS; the RELEASE fence is the
|
|
876
|
+
* durable issuance-gate CAS `mintCreds` runs (SPEC §13.1) — a raw/copied/diverging value or a
|
|
877
|
+
* foreign space/principal refuses here, and a stale incarnation loses the gate CAS. */
|
|
878
|
+
function endpointServePermissions(space, pr, opts) {
|
|
879
|
+
if (!opts.endpointServe)
|
|
880
|
+
throw new Error("permissionsFor: endpoint-serve requires opts.endpointServe (the authorized serve artifact)");
|
|
881
|
+
// The fence is INSEPARABLE from serve-row emission: a serve credential's rows are only ever
|
|
882
|
+
// valid when released behind the §13.1 issuance CAS, so this builder refuses to emit them
|
|
883
|
+
// without the gate seam — closing the exported-permissionsFor bypass where a direct signer
|
|
884
|
+
// could obtain unfenced serve rows past the brand/space/owner check. `mintCreds` runs the CAS.
|
|
885
|
+
if (!opts.serveIssuance)
|
|
886
|
+
throw new Error("permissionsFor: endpoint-serve requires opts.serveIssuance (serve rows are emitted only behind the §13.1 issuance fence; mintCreds runs its CAS before release)");
|
|
887
|
+
const snap = assertServeGrantMintable(opts.endpointServe, { space, holderOwner: pr.owner });
|
|
888
|
+
// Rail subscribe rows cover the EPHEMERAL commands only (journal commands ride epj, never the
|
|
889
|
+
// request rails) + the derived describe; the descriptor surface stays full. The class comes
|
|
890
|
+
// from the brand-verified artifact surface, not the caller.
|
|
891
|
+
const ephemeralCommands = snap.commands.filter((cmd) => opts.endpointServe.surface[cmd].class === "ephemeral");
|
|
892
|
+
const rows = epServeGrantRows(space, {
|
|
893
|
+
endpoint: snap.endpoint, instanceId: snap.instanceId, epoch: snap.epoch, ephemeralCommands,
|
|
894
|
+
});
|
|
895
|
+
// §13.9:2473 bind rows, from the BRANDED snapshot only (journal class is registered truth,
|
|
896
|
+
// pools are the authorizing provisioner's pre-created durables): a journal-class instance
|
|
897
|
+
// binds the shared `eff_<e>` effects durable, a pool-owning one binds each owned
|
|
898
|
+
// `pool_<e>_<pool>` — all bind-only (INFO/MSG.NEXT/ACK, never create/delete), plus the one
|
|
899
|
+
// `$JS.API.INFO` a pull consumer needs. An ephemeral-only poolless endpoint emits NONE of
|
|
900
|
+
// these rows (default-deny both directions).
|
|
901
|
+
const bindRows = [];
|
|
902
|
+
if (snap.journalClass)
|
|
903
|
+
bindRows.push(...effectsBindGrants(space, snap.endpoint));
|
|
904
|
+
for (const pool of snap.pools)
|
|
905
|
+
bindRows.push(...poolOwnerBindGrants(space, snap.endpoint, pool));
|
|
906
|
+
if (bindRows.length > 0)
|
|
907
|
+
bindRows.push("$JS.API.INFO");
|
|
908
|
+
return {
|
|
909
|
+
pub: { allow: [...rows.pub, ...bindRows] },
|
|
910
|
+
sub: { allow: [...rows.sub, `_INBOX_${pr.connId}.>`] },
|
|
911
|
+
};
|
|
912
|
+
}
|
|
743
913
|
/** DEPLOYER (PR 1.5) — the `cotal spawn -f` manifest-deploy authority. `spawn -f` drives ONE
|
|
744
914
|
* `connectProbe` endpoint that both READS live state (roster/presence watch, channel registry,
|
|
745
915
|
* membership feed, manager-singleton lease) AND control-CALLS the running manager's admin tier
|
|
@@ -761,6 +931,7 @@ function controlCallerPermissions(space, pr, tier) {
|
|
|
761
931
|
function deployerPermissions(space, pr, tier = CONTROL_ADMIN) {
|
|
762
932
|
const PKV = `KV_${presenceBucket(space)}`, CHKV = `KV_${channelBucket(space)}`;
|
|
763
933
|
const MSHIP = `KV_${membershipBucket(space)}`, MGRKV = `KV_${managerBucket(space)}`;
|
|
934
|
+
const DLVKV = `KV_${deliveryBucket(space)}`;
|
|
764
935
|
// Read verbs for a KV bucket SCANNED/WATCHED via an ordered consumer (presence, channel registry, and
|
|
765
936
|
// the membership feed — `readMembership` enumerates keys via `kv.keys()`): existence + kv.get (both
|
|
766
937
|
// STREAM.MSG.GET and keyed DIRECT.GET forms) + the ordered consumer. NO `$KV.<bucket>` publish → no write.
|
|
@@ -786,6 +957,7 @@ function deployerPermissions(space, pr, tier = CONTROL_ADMIN) {
|
|
|
786
957
|
...kvScan(CHKV), // channel registry read (readChannelRegistry + classifyChannels)
|
|
787
958
|
...kvScan(MSHIP), // membership FEED read (readMembership → detectUnmanagedActors) — the membership_ bucket
|
|
788
959
|
...kvPointRead(MGRKV), // manager-singleton lease keyed read (waitManagerReady) — point-get, NO write, NO watch
|
|
960
|
+
...kvPointRead(DLVKV), // delivery-lease keyed read (preserve-state quiescence proof) — point-get, NO write, NO watch
|
|
789
961
|
"$JS.FC.>", // ordered-consumer flow control
|
|
790
962
|
// ONE control tier — launch + ps readiness. Static operator deploy creds ride CONTROL_ADMIN
|
|
791
963
|
// (the historical shape); the user-mode `deployer` VIEW rides CONTROL_PRIVILEGED so the
|
|
@@ -912,21 +1084,24 @@ function provisionerPermissions(space, pr) {
|
|
|
912
1084
|
* the absent ACL) if fired while T is still alive. It CANNOT read T's bodies, impersonate T, reach any peer, or
|
|
913
1085
|
* delete a stream — and it is ephemeral (one per-exit teardown, minted then dropped). Contained and
|
|
914
1086
|
* recoverable (re-provision T). */
|
|
915
|
-
function deprovisionerPermissions(space, pr,
|
|
1087
|
+
function deprovisionerPermissions(space, pr, deprovisionTarget) {
|
|
916
1088
|
const DM = dmStream(space), DLV = dlvStream(space);
|
|
917
|
-
const t = deprovisionTargetPrincipal(
|
|
1089
|
+
const t = deprovisionTargetPrincipal(deprovisionTarget);
|
|
918
1090
|
const target = principalKey(t.owner, t.actor);
|
|
919
1091
|
return {
|
|
920
1092
|
pub: {
|
|
921
1093
|
allow: [
|
|
922
1094
|
"$JS.API.INFO", // jetstreamManager bootstrap
|
|
923
|
-
// Delete the target's two bind-only durables BY EXACT NAME — no `.>`, no cross-agent
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
1095
|
+
// Delete the target LIFECYCLE's two bind-only durables BY EXACT NAME — no `.>`, no cross-agent
|
|
1096
|
+
// reach, and no reach into a same-alias successor: its names carry a different uid, so a
|
|
1097
|
+
// replayed teardown is broker-DENIED there (SPEC 13.1 / Appendix "deprovisioner").
|
|
1098
|
+
`$JS.API.CONSUMER.DELETE.${DM}.${dmDurable(t.owner, t.actor, t.lifecycleUid)}`,
|
|
1099
|
+
`$JS.API.CONSUMER.DELETE.${DLV}.${dlvDurable(t.owner, t.actor, t.lifecycleUid)}`,
|
|
1100
|
+
// Purge the target lifecycle's read-ACL row (own-target exact key only — the reader then treats
|
|
1101
|
+
// it as an unknown owner). `kvm.open` binds the pre-created bucket; the purge rides
|
|
1102
|
+
// `$KV.<aclBucket>.<key>`.
|
|
928
1103
|
`$JS.API.STREAM.INFO.KV_${aclBucket(space)}`,
|
|
929
|
-
`$KV.${aclBucket(space)}.${aclKey(target.key)}`,
|
|
1104
|
+
`$KV.${aclBucket(space)}.${aclKey(target.key, t.lifecycleUid)}`,
|
|
930
1105
|
],
|
|
931
1106
|
},
|
|
932
1107
|
// Replies only: the CONSUMER.DELETE PubAcks + KV purge ack land on the per-connection inbox. NO chat/DM/ctl
|
|
@@ -984,9 +1159,11 @@ function deliveryPermissions(space, pr) {
|
|
|
984
1159
|
// Delivery lease/readiness KV: read the bucket (renew CAS) + write ONLY lease keys.
|
|
985
1160
|
`$JS.API.STREAM.INFO.${DKV}`, `$JS.API.STREAM.MSG.GET.${DKV}`,
|
|
986
1161
|
`$KV.${deliveryBucket(space)}.lease.*`,
|
|
987
|
-
// Plane-3 data writes: dinbox (fan-out target) + dlv (post-auth handoff) for ANY
|
|
988
|
-
//
|
|
989
|
-
|
|
1162
|
+
// Plane-3 data writes: dinbox (fan-out target) + dlv (post-auth handoff) for ANY lifecycle — the
|
|
1163
|
+
// identity slots widen to `.*.*.*` (owner+actor+lifecycleUid: dinbox/dlv are per-LIFECYCLE now,
|
|
1164
|
+
// SPEC 13.1; NATS subject arity is exact, so the old two-token form is broker-denied on every
|
|
1165
|
+
// three-token write).
|
|
1166
|
+
`${p}.dinbox.*.*.*`, `${p}.dlv.*.*.*`,
|
|
990
1167
|
// ctl.delivery control REPLIES ONLY (requests arrive on the sub below; the daemon only ever
|
|
991
1168
|
// m.respond()s to a requester's reply subject `ctl.delivery.<owner>.<actor>.reply.<n>`). Scoped to
|
|
992
1169
|
// the `.reply.>` leaf so the daemon can't publish to the request subjects themselves — tighter than a
|
package/dist/provision.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provision.js","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provision.js","sourceRoot":"","sources":["../src/provision.ts"],"names":[],"mappings":"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"}
|