@cotal-ai/core 0.12.0 → 0.13.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/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 +8 -0
- package/dist/auth-provider.d.ts.map +1 -1
- package/dist/auth-provider.js.map +1 -1
- package/dist/backup.d.ts.map +1 -1
- package/dist/backup.js +6 -4
- package/dist/backup.js.map +1 -1
- 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/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 +25 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +25 -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 +70 -18
- package/dist/provision.d.ts.map +1 -1
- package/dist/provision.js +194 -33
- package/dist/provision.js.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/streams.d.ts +13 -8
- package/dist/streams.d.ts.map +1 -1
- package/dist/streams.js +35 -18
- 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 +3 -1
package/dist/acls.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Durable read-ACL registry — read/write helpers over the per-space ACL KV bucket
|
|
3
|
-
* (`cotal_acl_<space>`). One {@link AclRecord} per
|
|
3
|
+
* (`cotal_acl_<space>`). One {@link AclRecord} per LIFECYCLE under {@link aclKey}
|
|
4
|
+
* (`<owner>.<actor>.<lifecycleUid>`, SPEC §13.1), holding that incarnation's
|
|
4
5
|
* current read ACL (`allowSubscribe`). This is the **keystone** that lets the Plane-3 trusted reader
|
|
5
6
|
* run in a stateless, server-side **delivery daemon**: the reader re-authorizes every durable entry
|
|
6
7
|
* against the owner's ACL read FRESH from here (not the manager's in-memory ledger), so a daemon
|
|
@@ -26,10 +27,31 @@ export declare function openAclRegistry(nc: import("@nats-io/transport-node").Na
|
|
|
26
27
|
* `allowSubscribe` as-is, **including `[]`** (a known no-read policy → DROP). The CAS revision is
|
|
27
28
|
* returned alongside for a read-modify-write.
|
|
28
29
|
*/
|
|
29
|
-
export declare function readAcl(kv: KV, owner: string): Promise<{
|
|
30
|
+
export declare function readAcl(kv: KV, owner: string, lifecycleUid: string): Promise<{
|
|
30
31
|
record: AclRecord;
|
|
31
32
|
revision: number;
|
|
32
33
|
} | undefined>;
|
|
34
|
+
/** Error for an alias with MORE than one live ACL row: §13.1's invariant is at most one live
|
|
35
|
+
* lifecycle per alias, so two rows are split-brain evidence (a reservation breach or an unfinished
|
|
36
|
+
* teardown), and an alias-level authorizer MUST refuse loudly rather than pick one. */
|
|
37
|
+
export declare class AmbiguousAclAlias extends Error {
|
|
38
|
+
readonly principal: string;
|
|
39
|
+
readonly lifecycleUids: string[];
|
|
40
|
+
constructor(principal: string, lifecycleUids: string[]);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Resolve an ALIAS (`<owner>.<actor>` dot-form) to its single live lifecycle-keyed ACL row — the
|
|
44
|
+
* bounded prefix enumeration for callers that hold no lifecycle UID (a runtime durable-join authz).
|
|
45
|
+
* Returns `undefined` when NO live row exists (unknown alias — the caller DEFERS/refuses), the row +
|
|
46
|
+
* its uid when exactly ONE does, and THROWS {@link AmbiguousAclAlias} on two or more: taking
|
|
47
|
+
* first-match would let a stale row authorize (or de-authorize) the successor. Keys that do not parse
|
|
48
|
+
* as `<owner>.<actor>.<uid>` are ignored (foreign shapes never authorize).
|
|
49
|
+
*/
|
|
50
|
+
export declare function readAclForAlias(kv: KV, principal: string): Promise<{
|
|
51
|
+
record: AclRecord;
|
|
52
|
+
revision: number;
|
|
53
|
+
lifecycleUid: string;
|
|
54
|
+
} | undefined>;
|
|
33
55
|
/**
|
|
34
56
|
* Record (set) an owner's read ACL — a single ATOMIC CAS put of the full value, never
|
|
35
57
|
* create-then-populate, so a present record is always complete and `[]` always means "no-read", never
|
|
@@ -37,9 +59,11 @@ export declare function readAcl(kv: KV, owner: string): Promise<{
|
|
|
37
59
|
* effect: writing the same `allowSubscribe` is harmless. Use `allowSubscribe: []` to revoke all reads
|
|
38
60
|
* (the reader then DROPS the owner's entries) — distinct from {@link deleteAcl}, which removes the row.
|
|
39
61
|
*/
|
|
40
|
-
export declare function commitAcl(kv: KV, owner: string, allowSubscribe: string[]): Promise<AclRecord>;
|
|
41
|
-
/** Permanently remove
|
|
42
|
-
* AFTER invalidating creds).
|
|
43
|
-
*
|
|
44
|
-
|
|
62
|
+
export declare function commitAcl(kv: KV, owner: string, lifecycleUid: string, allowSubscribe: string[]): Promise<AclRecord>;
|
|
63
|
+
/** Permanently remove one LIFECYCLE's ACL row (GC / footprint deletion — revocation deletes the
|
|
64
|
+
* footprint AFTER invalidating creds). Lifecycle-exact by construction: a replayed delete for a
|
|
65
|
+
* retired lifecycle names a key the successor's row does not share. Distinct from a
|
|
66
|
+
* `commitAcl(kv, owner, uid, [])` write, which keeps a present "no-read" record so the reader DROPS
|
|
67
|
+
* (vs. DEFER for an absent owner). */
|
|
68
|
+
export declare function deleteAcl(kv: KV, owner: string, lifecycleUid: string): Promise<void>;
|
|
45
69
|
//# sourceMappingURL=acls.d.ts.map
|
package/dist/acls.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acls.d.ts","sourceRoot":"","sources":["../src/acls.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"acls.d.ts","sourceRoot":"","sources":["../src/acls.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAO,KAAK,EAAE,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C;mGACmG;AACnG,wBAAsB,eAAe,CACnC,EAAE,EAAE,OAAO,yBAAyB,EAAE,cAAc,EACpD,KAAK,EAAE,MAAM,EACb,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,OAAO,CAAC,EAAE,CAAC,CAGb;AAED;;;;;;GAMG;AACH,wBAAsB,OAAO,CAC3B,EAAE,EAAE,EAAE,EACN,KAAK,EAAE,MAAM,EACb,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAU9D;AAED;;wFAEwF;AACxF,qBAAa,iBAAkB,SAAQ,KAAK;IAExC,QAAQ,CAAC,SAAS,EAAE,MAAM;IAC1B,QAAQ,CAAC,aAAa,EAAE,MAAM,EAAE;gBADvB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE;CAOnC;AAED;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAAC,CAuBpF;AAsBD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CA+CzH;AAED;;;;uCAIuC;AACvC,wBAAsB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1F"}
|
package/dist/acls.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Durable read-ACL registry — read/write helpers over the per-space ACL KV bucket
|
|
3
|
-
* (`cotal_acl_<space>`). One {@link AclRecord} per
|
|
3
|
+
* (`cotal_acl_<space>`). One {@link AclRecord} per LIFECYCLE under {@link aclKey}
|
|
4
|
+
* (`<owner>.<actor>.<lifecycleUid>`, SPEC §13.1), holding that incarnation's
|
|
4
5
|
* current read ACL (`allowSubscribe`). This is the **keystone** that lets the Plane-3 trusted reader
|
|
5
6
|
* run in a stateless, server-side **delivery daemon**: the reader re-authorizes every durable entry
|
|
6
7
|
* against the owner's ACL read FRESH from here (not the manager's in-memory ledger), so a daemon
|
|
@@ -13,7 +14,7 @@
|
|
|
13
14
|
* record (a genuinely-unknown owner — the reader DEFERS, never drops).
|
|
14
15
|
*/
|
|
15
16
|
import { Kvm } from "@nats-io/kv";
|
|
16
|
-
import { aclBucket, aclKey } from "./subjects.js";
|
|
17
|
+
import { aclBucket, aclKey, aclAliasFilter, parseLifecycleSubjectKey } from "./subjects.js";
|
|
17
18
|
/** Open the ACL registry bucket. Auth mode OPENs the bucket pre-created at `cotal up`; a privileged
|
|
18
19
|
* caller may pass `{ create: true }` to lazily CREATE it. Mirrors {@link openMembersRegistry}. */
|
|
19
20
|
export async function openAclRegistry(nc, space, opts = {}) {
|
|
@@ -27,8 +28,8 @@ export async function openAclRegistry(nc, space, opts = {}) {
|
|
|
27
28
|
* `allowSubscribe` as-is, **including `[]`** (a known no-read policy → DROP). The CAS revision is
|
|
28
29
|
* returned alongside for a read-modify-write.
|
|
29
30
|
*/
|
|
30
|
-
export async function readAcl(kv, owner) {
|
|
31
|
-
const e = await kv.get(aclKey(owner));
|
|
31
|
+
export async function readAcl(kv, owner, lifecycleUid) {
|
|
32
|
+
const e = await kv.get(aclKey(owner, lifecycleUid));
|
|
32
33
|
if (!e || e.operation === "DEL" || e.operation === "PURGE")
|
|
33
34
|
return undefined;
|
|
34
35
|
try {
|
|
@@ -41,6 +42,72 @@ export async function readAcl(kv, owner) {
|
|
|
41
42
|
return undefined;
|
|
42
43
|
}
|
|
43
44
|
}
|
|
45
|
+
/** Error for an alias with MORE than one live ACL row: §13.1's invariant is at most one live
|
|
46
|
+
* lifecycle per alias, so two rows are split-brain evidence (a reservation breach or an unfinished
|
|
47
|
+
* teardown), and an alias-level authorizer MUST refuse loudly rather than pick one. */
|
|
48
|
+
export class AmbiguousAclAlias extends Error {
|
|
49
|
+
principal;
|
|
50
|
+
lifecycleUids;
|
|
51
|
+
constructor(principal, lifecycleUids) {
|
|
52
|
+
super(`read-ACL alias "${principal}" resolves to ${lifecycleUids.length} live lifecycle rows (${lifecycleUids.join(", ")}); ` +
|
|
53
|
+
`at most one lifecycle may be live per alias (SPEC 13.1) - refusing to authorize on a first-match guess`);
|
|
54
|
+
this.principal = principal;
|
|
55
|
+
this.lifecycleUids = lifecycleUids;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Resolve an ALIAS (`<owner>.<actor>` dot-form) to its single live lifecycle-keyed ACL row — the
|
|
60
|
+
* bounded prefix enumeration for callers that hold no lifecycle UID (a runtime durable-join authz).
|
|
61
|
+
* Returns `undefined` when NO live row exists (unknown alias — the caller DEFERS/refuses), the row +
|
|
62
|
+
* its uid when exactly ONE does, and THROWS {@link AmbiguousAclAlias} on two or more: taking
|
|
63
|
+
* first-match would let a stale row authorize (or de-authorize) the successor. Keys that do not parse
|
|
64
|
+
* as `<owner>.<actor>.<uid>` are ignored (foreign shapes never authorize).
|
|
65
|
+
*/
|
|
66
|
+
export async function readAclForAlias(kv, principal) {
|
|
67
|
+
// HONESTY (SPEC 13.1 residual, panel-locked): "at most one live lifecycle per alias" is
|
|
68
|
+
// fail-loud + exact-name teardown, NOT a broker occupancy CAS (reservation lands with P2).
|
|
69
|
+
// A FAILED detached teardown leaves the predecessor's row live; a same-alias successor then
|
|
70
|
+
// hits AmbiguousAclAlias on every durable-join and stays LIVE-ONLY until an operator re-runs
|
|
71
|
+
// the exact-uid deprovision (or a future D30/D33 reconciler, which does not exist yet). The
|
|
72
|
+
// fail direction is deliberate: refuse beats silently inheriting a predecessor's ACL.
|
|
73
|
+
const first = await enumerateLiveAclRows(kv, principal);
|
|
74
|
+
if (first.length > 1)
|
|
75
|
+
throw new AmbiguousAclAlias(principal, first.map((l) => l.lifecycleUid).sort());
|
|
76
|
+
// POST-SCAN RE-VERIFY (panel bar, TOCTOU close): `kv.keys()` is a point-in-time snapshot
|
|
77
|
+
// bounded by the stream sequence at consumer-create, so a successor row COMMITTED AFTER that
|
|
78
|
+
// snapshot is invisible to the first pass — a genuinely dual-live alias would resolve as the
|
|
79
|
+
// lone (possibly predecessor) row instead of refusing. Enumerate a SECOND time and act on the
|
|
80
|
+
// fresh pass: a row that appeared makes the alias ambiguous (refuse), a row that vanished
|
|
81
|
+
// makes it absent (defer). Two live rows in EITHER pass refuse. Bounded at two passes — an
|
|
82
|
+
// alias replaced BETWEEN the passes (disjoint singles) also refuses, and the caller's retry
|
|
83
|
+
// resolves against the settled state; anything stronger is the P2 occupancy reservation.
|
|
84
|
+
const second = await enumerateLiveAclRows(kv, principal);
|
|
85
|
+
if (second.length > 1)
|
|
86
|
+
throw new AmbiguousAclAlias(principal, second.map((l) => l.lifecycleUid).sort());
|
|
87
|
+
if (second.length === 0)
|
|
88
|
+
return undefined;
|
|
89
|
+
if (first.length === 1 && first[0].lifecycleUid !== second[0].lifecycleUid)
|
|
90
|
+
throw new AmbiguousAclAlias(principal, [first[0].lifecycleUid, second[0].lifecycleUid].sort());
|
|
91
|
+
return { record: second[0].record, revision: second[0].revision, lifecycleUid: second[0].lifecycleUid };
|
|
92
|
+
}
|
|
93
|
+
/** One live-row enumeration pass for {@link readAclForAlias}: LIVE rows, not keys — each candidate
|
|
94
|
+
* key is resolved through {@link readAcl} (which filters DEL/PURGE markers and garbled values)
|
|
95
|
+
* BEFORE it counts toward ambiguity. The pinned @nats-io/kv keys() already skips DEL/PURGE
|
|
96
|
+
* markers, so the re-read is belt-and-suspenders — but the refusal invariant is ">=2 LIVE rows",
|
|
97
|
+
* and counting raw iterator keys would let a client-version drift (a keys() that surfaces
|
|
98
|
+
* markers) fail-closed the NORMAL deprovision-then-respawn path. */
|
|
99
|
+
async function enumerateLiveAclRows(kv, principal) {
|
|
100
|
+
const live = [];
|
|
101
|
+
for await (const key of await kv.keys(aclAliasFilter(principal))) {
|
|
102
|
+
const parsed = parseLifecycleSubjectKey(key);
|
|
103
|
+
if (!parsed || `${parsed.owner}.${parsed.actor}` !== principal)
|
|
104
|
+
continue;
|
|
105
|
+
const row = await readAcl(kv, principal, parsed.lifecycleUid);
|
|
106
|
+
if (row !== undefined)
|
|
107
|
+
live.push({ lifecycleUid: parsed.lifecycleUid, ...row });
|
|
108
|
+
}
|
|
109
|
+
return live;
|
|
110
|
+
}
|
|
44
111
|
/**
|
|
45
112
|
* Record (set) an owner's read ACL — a single ATOMIC CAS put of the full value, never
|
|
46
113
|
* create-then-populate, so a present record is always complete and `[]` always means "no-read", never
|
|
@@ -48,10 +115,11 @@ export async function readAcl(kv, owner) {
|
|
|
48
115
|
* effect: writing the same `allowSubscribe` is harmless. Use `allowSubscribe: []` to revoke all reads
|
|
49
116
|
* (the reader then DROPS the owner's entries) — distinct from {@link deleteAcl}, which removes the row.
|
|
50
117
|
*/
|
|
51
|
-
export async function commitAcl(kv, owner, allowSubscribe) {
|
|
52
|
-
const key = aclKey(owner);
|
|
118
|
+
export async function commitAcl(kv, owner, lifecycleUid, allowSubscribe) {
|
|
119
|
+
const key = aclKey(owner, lifecycleUid);
|
|
120
|
+
let lastErr;
|
|
53
121
|
for (let attempt = 0; attempt < 5; attempt++) {
|
|
54
|
-
const cur = await readAcl(kv, owner);
|
|
122
|
+
const cur = await readAcl(kv, owner, lifecycleUid);
|
|
55
123
|
const next = {
|
|
56
124
|
allowSubscribe: [...allowSubscribe],
|
|
57
125
|
revision: (cur?.record.revision ?? 0) + 1,
|
|
@@ -63,24 +131,44 @@ export async function commitAcl(kv, owner, allowSubscribe) {
|
|
|
63
131
|
await kv.create(key, data);
|
|
64
132
|
return next;
|
|
65
133
|
}
|
|
66
|
-
catch {
|
|
67
|
-
|
|
134
|
+
catch (e) {
|
|
135
|
+
lastErr = e;
|
|
136
|
+
// Either we lost a create race, or the row is PRESENT but garbled — readAcl reports both
|
|
137
|
+
// as `undefined` (DEFER), and a garbled row would make this create conflict on every
|
|
138
|
+
// attempt (the owner stays wedged until purge). CAS-overwrite at the raw revision: the
|
|
139
|
+
// atomic full-value put restores the "present record is always complete" invariant.
|
|
140
|
+
try {
|
|
141
|
+
const raw = await kv.get(key);
|
|
142
|
+
if (raw) {
|
|
143
|
+
await kv.update(key, data, raw.revision);
|
|
144
|
+
return next;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
catch (e2) {
|
|
148
|
+
lastErr = e2;
|
|
149
|
+
}
|
|
150
|
+
continue; // raced a concurrent writer — re-read and retry
|
|
68
151
|
}
|
|
69
152
|
}
|
|
70
153
|
try {
|
|
71
154
|
await kv.update(key, data, cur.revision);
|
|
72
155
|
return next;
|
|
73
156
|
}
|
|
74
|
-
catch {
|
|
75
|
-
|
|
157
|
+
catch (e) {
|
|
158
|
+
lastErr = e; // revision moved under us — re-read and retry
|
|
159
|
+
continue;
|
|
76
160
|
}
|
|
77
161
|
}
|
|
78
|
-
|
|
162
|
+
// Carry the last underlying KV failure: without it the operator sees only this wrapper and the
|
|
163
|
+
// actual cause (timeout, permission, sequence conflict) is permanently lost.
|
|
164
|
+
throw new Error(`acl CAS exhausted retries for ${owner}${lastErr ? ` - last error: ${lastErr instanceof Error ? lastErr.message : String(lastErr)}` : ""}`, lastErr instanceof Error ? { cause: lastErr } : undefined);
|
|
79
165
|
}
|
|
80
|
-
/** Permanently remove
|
|
81
|
-
* AFTER invalidating creds).
|
|
82
|
-
*
|
|
83
|
-
|
|
84
|
-
|
|
166
|
+
/** Permanently remove one LIFECYCLE's ACL row (GC / footprint deletion — revocation deletes the
|
|
167
|
+
* footprint AFTER invalidating creds). Lifecycle-exact by construction: a replayed delete for a
|
|
168
|
+
* retired lifecycle names a key the successor's row does not share. Distinct from a
|
|
169
|
+
* `commitAcl(kv, owner, uid, [])` write, which keeps a present "no-read" record so the reader DROPS
|
|
170
|
+
* (vs. DEFER for an absent owner). */
|
|
171
|
+
export async function deleteAcl(kv, owner, lifecycleUid) {
|
|
172
|
+
await kv.purge(aclKey(owner, lifecycleUid));
|
|
85
173
|
}
|
|
86
174
|
//# sourceMappingURL=acls.js.map
|
package/dist/acls.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acls.js","sourceRoot":"","sources":["../src/acls.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"acls.js","sourceRoot":"","sources":["../src/acls.ts"],"names":[],"mappings":"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"}
|
package/dist/agent-file.js
CHANGED
|
@@ -38,7 +38,7 @@ function parseFrontmatter(src, path) {
|
|
|
38
38
|
doc = parseYaml(src);
|
|
39
39
|
}
|
|
40
40
|
catch (e) {
|
|
41
|
-
throw new Error(`agent file ${path}: invalid YAML frontmatter
|
|
41
|
+
throw new Error(`agent file ${path}: invalid YAML frontmatter; ${e.message}`);
|
|
42
42
|
}
|
|
43
43
|
if (doc === null || doc === undefined)
|
|
44
44
|
return {};
|
package/dist/agent-file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-file.js","sourceRoot":"","sources":["../src/agent-file.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAEtE,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AA2DtF;;;2FAG2F;AAC3F,SAAS,gBAAgB,CAAC,GAAW,EAAE,IAAY;IACjD,IAAI,GAAY,CAAC;IACjB,IAAI,CAAC;QACH,GAAG,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,cAAc,IAAI,
|
|
1
|
+
{"version":3,"file":"agent-file.js","sourceRoot":"","sources":["../src/agent-file.ts"],"names":[],"mappings":"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"}
|
package/dist/auth-provider.d.ts
CHANGED
|
@@ -105,6 +105,10 @@ export interface AuthProvider extends Extension {
|
|
|
105
105
|
/** The spawning principal (`<owner>.<actor>` dot-form) — the grant's audit link. */
|
|
106
106
|
parent?: string;
|
|
107
107
|
label?: string;
|
|
108
|
+
/** The incarnation's lifecycle UID (SPEC §13.1). Recorded on the ledger row so the auth
|
|
109
|
+
* callout mints this agent's lifecycle-keyed grants (`dm_…-<uid>`/`dlv_…-<uid>`/
|
|
110
|
+
* `chathist_…-<uid>`) from the SAME value its provisioned broker footprint carries. */
|
|
111
|
+
lifecycleUid: string;
|
|
108
112
|
}): Promise<{
|
|
109
113
|
actorToken: string;
|
|
110
114
|
sentinelCreds: string;
|
|
@@ -185,6 +189,10 @@ export interface AuthTrustFingerprint {
|
|
|
185
189
|
export interface RetainedAgentAuthority {
|
|
186
190
|
owner: string;
|
|
187
191
|
actor: string;
|
|
192
|
+
/** The incarnation UID the CURRENT ledger row carries. The manager binds it against the inventory
|
|
193
|
+
* identity's uid before any spawn, so a retained record aimed at a different incarnation fails at
|
|
194
|
+
* pre-effect validation rather than at the broker after the child is already running (SPEC §13.1). */
|
|
195
|
+
lifecycleUid: string;
|
|
188
196
|
scope: string[];
|
|
189
197
|
allowSubscribe: string[];
|
|
190
198
|
allowPublish: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-provider.d.ts","sourceRoot":"","sources":["../src/auth-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,WAAW,YAAa,SAAQ,SAAS;IAC7C,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC;IAC/B;;;;;;;OAOG;IACH,aAAa,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC9D;;;;;;;;;;;;;;OAcG;IACH,eAAe,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5J;;;;;;OAMG;IACH,aAAa,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzF;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,WAAW,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAC7G;;;;;;;OAOG;IACH,UAAU,CAAC,IAAI,EAAE;QACf,KAAK,EAAE,WAAW,CAAC;QACnB,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,oFAAoF;QACpF,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-provider.d.ts","sourceRoot":"","sources":["../src/auth-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-provider.js","sourceRoot":"","sources":["../src/auth-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-provider.js","sourceRoot":"","sources":["../src/auth-provider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,eAAe,CAAC;AAyKzD;;iGAEiG;AACjG,MAAM,UAAU,mBAAmB;IACjC,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAe,eAAe,CAAC,CAAC;IAC9D,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,yKAAyK,CAC1K,CAAC;IACJ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,uCAAuC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAClI,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;AACtB,CAAC"}
|
package/dist/backup.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../src/backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,YAAY,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAmB,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC/E,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EAC1B,MAAM,oBAAoB,CAAC;AA2B5B,qBAAa,oBAAqB,SAAQ,KAAK;IAChB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM;IAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM;gBAAlE,OAAO,EAAE,MAAM,EAAW,IAAI,CAAC,EAAE,MAAM,YAAA,EAAW,OAAO,CAAC,EAAE,MAAM,YAAA;CAI/E;AAED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAED,MAAM,WAAW,6BAA6B;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,KAAK,EAAE,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAwDD;;gCAEgC;AAChC,wBAAsB,sBAAsB,CAC1C,EAAE,EAAE,cAAc,EAClB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,6BAA6B,GAClC,OAAO,CAAC,sBAAsB,CAAC,CA+GjC;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;6EAC6E;AAC7E,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,cAAc,EAClB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACzC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EACxC,SAAS,SAA8B,GACtC,OAAO,CAAC,oBAAoB,CAAC,CAe/B;AAED,oFAAoF;AACpF,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,oBAAoB,EAC7B,KAAK,EAAE,UAAU,EACjB,SAAS,SAA8B,GACtC,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,EAAE,iBAAiB,CAAC;CAC1B;AAED,+EAA+E;AAC/E,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,cAAc,EAClB,OAAO,EAAE,oBAAoB,EAC7B,SAAS,SAA8B,GACtC,OAAO,CAAC,mBAAmB,CAAC,CAY9B;AAED,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB,EAAE,MAAM,CAAC;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,EAAE,IAAI,CAAC,iBAAiB,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC,CAAC;CAC7E;
|
|
1
|
+
{"version":3,"file":"backup.d.ts","sourceRoot":"","sources":["../src/backup.ts"],"names":[],"mappings":"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"}
|
package/dist/backup.js
CHANGED
|
@@ -231,8 +231,10 @@ export async function finalizeStreamRestore(nc, session, timeoutMs = DEFAULT_TRA
|
|
|
231
231
|
function principalFromDurable(name, prefix) {
|
|
232
232
|
if (!name.startsWith(prefix))
|
|
233
233
|
return undefined;
|
|
234
|
-
|
|
235
|
-
|
|
234
|
+
// Lifecycle-keyed durables (SPEC §13.1): dm_/dlv_ names carry the uid — `<owner>-<actor>-<lifecycleUid>`
|
|
235
|
+
// (owner/actor are `[A-Za-z0-9_]`, the uid is `[a-z0-9]`, so exactly three dash-separated tokens).
|
|
236
|
+
const match = /^([A-Za-z0-9_]+)-([A-Za-z0-9_]+)-([a-z0-9]+)$/.exec(name.slice(prefix.length));
|
|
237
|
+
return match ? { owner: match[1], actor: match[2], lifecycleUid: match[3] } : undefined;
|
|
236
238
|
}
|
|
237
239
|
function expectedConsumerConfig(space, stream, name) {
|
|
238
240
|
if (stream === chatStream(space) && name === FANOUT_DURABLE)
|
|
@@ -242,12 +244,12 @@ function expectedConsumerConfig(space, stream, name) {
|
|
|
242
244
|
if (stream === dmStream(space)) {
|
|
243
245
|
const principal = principalFromDurable(name, "dm_");
|
|
244
246
|
if (principal)
|
|
245
|
-
return dmDurableConfig(space, principal.owner, principal.actor);
|
|
247
|
+
return dmDurableConfig(space, principal.owner, principal.actor, principal.lifecycleUid);
|
|
246
248
|
}
|
|
247
249
|
if (stream === dlvStream(space)) {
|
|
248
250
|
const principal = principalFromDurable(name, "dlv_");
|
|
249
251
|
if (principal)
|
|
250
|
-
return dlvDurableConfig(space, principal.owner, principal.actor);
|
|
252
|
+
return dlvDurableConfig(space, principal.owner, principal.actor, principal.lifecycleUid);
|
|
251
253
|
}
|
|
252
254
|
if (stream === taskStream(space) && /^svc_[A-Za-z0-9_-]+$/.test(name))
|
|
253
255
|
return { ...taskDurableConfig(space, name.slice("svc_".length)), deliver_policy: DeliverPolicy.All };
|
package/dist/backup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../src/backup.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../src/backup.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The control-surface broker floor (SPEC §13.12, D10).
|
|
3
|
+
*
|
|
4
|
+
* The endpoint surface REQUIRES NATS server >= 2.12: message schedules back durable timers,
|
|
5
|
+
* and per-subject create-CAS backs canonical acceptance. There is no sweeper fallback and no
|
|
6
|
+
* degraded mode; below the floor (or when a required capability is absent, e.g. the
|
|
7
|
+
* offline-assets downgrade) startup fails loud. Only 2.12 schedule semantics may be assumed
|
|
8
|
+
* (same-subject replacement) — never the 2.14 stop-plus-publish path.
|
|
9
|
+
*/
|
|
10
|
+
/** The minimum broker for the endpoint control surface. Runtime-frozen (the afa715b class): a
|
|
11
|
+
* post-import `minor = 0` would silently bypass the mandatory 2.12 startup gate. */
|
|
12
|
+
export declare const BROKER_FLOOR: Readonly<{
|
|
13
|
+
readonly major: 2;
|
|
14
|
+
readonly minor: 12;
|
|
15
|
+
}>;
|
|
16
|
+
/** Structural slice of a NATS connection: the pre-auth INFO carries the server version. */
|
|
17
|
+
export interface BrokerInfoSource {
|
|
18
|
+
info?: {
|
|
19
|
+
version?: string;
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
/** Parse a nats-server version string ("2.12.3", "2.12.0-beta.1") into comparable parts. */
|
|
23
|
+
export declare function parseServerVersion(v: string): {
|
|
24
|
+
major: number;
|
|
25
|
+
minor: number;
|
|
26
|
+
patch: number;
|
|
27
|
+
} | null;
|
|
28
|
+
/** True iff the version meets the control-surface floor. */
|
|
29
|
+
export declare function meetsBrokerFloor(version: string): boolean;
|
|
30
|
+
/** Startup gate: throw (loud, fail-closed) unless the connected broker meets the floor.
|
|
31
|
+
* Call before creating or serving any control-surface resource. A missing/unparseable
|
|
32
|
+
* version is a refusal, not a pass — no fallbacks. */
|
|
33
|
+
export declare function requireBrokerFloor(nc: BrokerInfoSource): void;
|
|
34
|
+
//# sourceMappingURL=broker-floor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"broker-floor.d.ts","sourceRoot":"","sources":["../src/broker-floor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;qFACqF;AACrF,eAAO,MAAM,YAAY;;;EAAkD,CAAC;AAE5E,2FAA2F;AAC3F,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC7B;AAED,4FAA4F;AAC5F,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAIpG;AAED,4DAA4D;AAC5D,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKzD;AAED;;uDAEuD;AACvD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,gBAAgB,GAAG,IAAI,CAM7D"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The control-surface broker floor (SPEC §13.12, D10).
|
|
3
|
+
*
|
|
4
|
+
* The endpoint surface REQUIRES NATS server >= 2.12: message schedules back durable timers,
|
|
5
|
+
* and per-subject create-CAS backs canonical acceptance. There is no sweeper fallback and no
|
|
6
|
+
* degraded mode; below the floor (or when a required capability is absent, e.g. the
|
|
7
|
+
* offline-assets downgrade) startup fails loud. Only 2.12 schedule semantics may be assumed
|
|
8
|
+
* (same-subject replacement) — never the 2.14 stop-plus-publish path.
|
|
9
|
+
*/
|
|
10
|
+
/** The minimum broker for the endpoint control surface. Runtime-frozen (the afa715b class): a
|
|
11
|
+
* post-import `minor = 0` would silently bypass the mandatory 2.12 startup gate. */
|
|
12
|
+
export const BROKER_FLOOR = Object.freeze({ major: 2, minor: 12 });
|
|
13
|
+
/** Parse a nats-server version string ("2.12.3", "2.12.0-beta.1") into comparable parts. */
|
|
14
|
+
export function parseServerVersion(v) {
|
|
15
|
+
const m = /^(\d+)\.(\d+)\.(\d+)/.exec(v.trim());
|
|
16
|
+
if (!m)
|
|
17
|
+
return null;
|
|
18
|
+
return { major: Number(m[1]), minor: Number(m[2]), patch: Number(m[3]) };
|
|
19
|
+
}
|
|
20
|
+
/** True iff the version meets the control-surface floor. */
|
|
21
|
+
export function meetsBrokerFloor(version) {
|
|
22
|
+
const p = parseServerVersion(version);
|
|
23
|
+
if (!p)
|
|
24
|
+
return false;
|
|
25
|
+
if (p.major !== BROKER_FLOOR.major)
|
|
26
|
+
return p.major > BROKER_FLOOR.major;
|
|
27
|
+
return p.minor >= BROKER_FLOOR.minor;
|
|
28
|
+
}
|
|
29
|
+
/** Startup gate: throw (loud, fail-closed) unless the connected broker meets the floor.
|
|
30
|
+
* Call before creating or serving any control-surface resource. A missing/unparseable
|
|
31
|
+
* version is a refusal, not a pass — no fallbacks. */
|
|
32
|
+
export function requireBrokerFloor(nc) {
|
|
33
|
+
const version = nc.info?.version;
|
|
34
|
+
if (!version)
|
|
35
|
+
throw new Error("control surface: connected broker reports no server version; refusing to start (floor is nats-server >= 2.12)");
|
|
36
|
+
if (!meetsBrokerFloor(version))
|
|
37
|
+
throw new Error(`control surface: nats-server ${version} is below the required floor 2.12; upgrade the broker (no degraded mode exists)`);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=broker-floor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"broker-floor.js","sourceRoot":"","sources":["../src/broker-floor.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;qFACqF;AACrF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAW,CAAC,CAAC;AAO5E,4FAA4F;AAC5F,MAAM,UAAU,kBAAkB,CAAC,CAAS;IAC1C,MAAM,CAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAChD,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC3E,CAAC;AAED,4DAA4D;AAC5D,MAAM,UAAU,gBAAgB,CAAC,OAAe;IAC9C,MAAM,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,IAAI,CAAC,CAAC,KAAK,KAAK,YAAY,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;IACxE,OAAO,CAAC,CAAC,KAAK,IAAI,YAAY,CAAC,KAAK,CAAC;AACvC,CAAC;AAED;;uDAEuD;AACvD,MAAM,UAAU,kBAAkB,CAAC,EAAoB;IACrD,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;IACjC,IAAI,CAAC,OAAO;QACV,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAC;IACnI,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,gCAAgC,OAAO,iFAAiF,CAAC,CAAC;AAC9I,CAAC"}
|