@laserdata/laser-sdk 0.2.0 → 0.3.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/README.md +5 -5
- package/dist/agent/reliable-consumer.d.ts.map +1 -1
- package/dist/agent/reliable-consumer.js +1 -0
- package/dist/agent/reliable-consumer.js.map +1 -1
- package/dist/agent/workflow.d.ts +2 -0
- package/dist/agent/workflow.d.ts.map +1 -1
- package/dist/agent/workflow.js +114 -13
- package/dist/agent/workflow.js.map +1 -1
- package/dist/bridges/a2a.d.ts +1 -1
- package/dist/bridges/a2a.js +1 -1
- package/dist/client/capabilities.d.ts +6 -1
- package/dist/client/capabilities.d.ts.map +1 -1
- package/dist/client/capabilities.js +18 -12
- package/dist/client/capabilities.js.map +1 -1
- package/dist/client/errors.d.ts +6 -1
- package/dist/client/errors.d.ts.map +1 -1
- package/dist/client/errors.js +5 -0
- package/dist/client/errors.js.map +1 -1
- package/dist/client/laser.js +1 -1
- package/dist/client/laser.js.map +1 -1
- package/dist/client/managed.d.ts +3 -1
- package/dist/client/managed.d.ts.map +1 -1
- package/dist/client/managed.js +2 -2
- package/dist/client/managed.js.map +1 -1
- package/dist/iggy/apache-iggy.d.ts +6 -2
- package/dist/iggy/apache-iggy.d.ts.map +1 -1
- package/dist/iggy/apache-iggy.js +10 -4
- package/dist/iggy/apache-iggy.js.map +1 -1
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/managed/batch.d.ts.map +1 -1
- package/dist/managed/batch.js +23 -2
- package/dist/managed/batch.js.map +1 -1
- package/dist/managed/destinations.d.ts +20 -6
- package/dist/managed/destinations.d.ts.map +1 -1
- package/dist/managed/destinations.js +131 -6
- package/dist/managed/destinations.js.map +1 -1
- package/dist/managed/kv.d.ts +33 -6
- package/dist/managed/kv.d.ts.map +1 -1
- package/dist/managed/kv.js +99 -17
- package/dist/managed/kv.js.map +1 -1
- package/dist/wire/authz.d.ts +2 -2
- package/dist/wire/authz.d.ts.map +1 -1
- package/dist/wire/authz.js +43 -20
- package/dist/wire/authz.js.map +1 -1
- package/dist/wire/checkpoint.d.ts +22 -4
- package/dist/wire/checkpoint.d.ts.map +1 -1
- package/dist/wire/checkpoint.js +102 -20
- package/dist/wire/checkpoint.js.map +1 -1
- package/dist/wire/codes.d.ts +5 -0
- package/dist/wire/codes.d.ts.map +1 -1
- package/dist/wire/codes.js +8 -0
- package/dist/wire/codes.js.map +1 -1
- package/dist/wire/commands.d.ts +6 -3
- package/dist/wire/commands.d.ts.map +1 -1
- package/dist/wire/commands.js +15 -5
- package/dist/wire/commands.js.map +1 -1
- package/dist/wire/hello.d.ts +1 -0
- package/dist/wire/hello.d.ts.map +1 -1
- package/dist/wire/hello.js +2 -1
- package/dist/wire/hello.js.map +1 -1
- package/dist/wire/http.d.ts +23 -1
- package/dist/wire/http.d.ts.map +1 -1
- package/dist/wire/http.js +77 -5
- package/dist/wire/http.js.map +1 -1
- package/dist/wire/kv.d.ts +35 -0
- package/dist/wire/kv.d.ts.map +1 -1
- package/dist/wire/kv.js +178 -18
- package/dist/wire/kv.js.map +1 -1
- package/dist/wire/limits.d.ts +3 -0
- package/dist/wire/limits.d.ts.map +1 -1
- package/dist/wire/limits.js +3 -0
- package/dist/wire/limits.js.map +1 -1
- package/dist/wire/mutation.d.ts +10 -0
- package/dist/wire/mutation.d.ts.map +1 -1
- package/dist/wire/mutation.js +14 -0
- package/dist/wire/mutation.js.map +1 -1
- package/dist/wire/source.d.ts +0 -1
- package/dist/wire/source.d.ts.map +1 -1
- package/dist/wire/source.js +2 -8
- package/dist/wire/source.js.map +1 -1
- package/dist/wire/topology.d.ts +2 -0
- package/dist/wire/topology.d.ts.map +1 -1
- package/dist/wire/topology.js +8 -3
- package/dist/wire/topology.js.map +1 -1
- package/package.json +2 -2
package/dist/managed/kv.d.ts
CHANGED
|
@@ -2,10 +2,14 @@ import type { Capabilities } from "../client/capabilities.js";
|
|
|
2
2
|
import { type ManagedTransport } from "../client/managed.js";
|
|
3
3
|
import type { Codec } from "../stream/codecs.js";
|
|
4
4
|
import { type KvEntry, type KvMetadata, type KvNamespaceInfo, type KvPage } from "../wire/kv.js";
|
|
5
|
-
|
|
5
|
+
import type { MutationPosition } from "../wire/mutation.js";
|
|
6
|
+
/** A granted revocable lease: the fencing token, the TTL the store granted,
|
|
7
|
+
* and the mutation position at which the answering fold applied the grant or
|
|
8
|
+
* renewal (the barrier a takeover read passes to `getEntryAtLeast`). */
|
|
6
9
|
export interface Lease {
|
|
7
10
|
readonly token: bigint;
|
|
8
11
|
readonly grantedTtlMicros: bigint;
|
|
12
|
+
readonly position: MutationPosition;
|
|
9
13
|
}
|
|
10
14
|
export type KvBackend = ManagedTransport;
|
|
11
15
|
/** A namespace-scoped managed key-value view. */
|
|
@@ -17,21 +21,43 @@ export declare class Kv {
|
|
|
17
21
|
static namespaces(backend: KvBackend, getCapabilities: () => Promise<Capabilities>): Promise<readonly KvNamespaceInfo[]>;
|
|
18
22
|
get(key: Uint8Array): Promise<Uint8Array | undefined>;
|
|
19
23
|
getEntry(key: Uint8Array): Promise<KvEntry | undefined>;
|
|
24
|
+
/** Barriered read: resolves only once the answering fold has applied at
|
|
25
|
+
* least `minPosition` (the position a `Lease` grant or renewal returned). A
|
|
26
|
+
* fold that does not catch up fails with the typed `stale` error, never an
|
|
27
|
+
* absent value. Needs the `kvFencedLeases` capability: a pre-fencing server
|
|
28
|
+
* would silently ignore the barrier. */
|
|
29
|
+
getEntryAtLeast(key: Uint8Array, minPosition: MutationPosition): Promise<KvEntry | undefined>;
|
|
20
30
|
/** Decodes a value with the supplied codec, or returns undefined. */
|
|
21
31
|
getAs<T>(key: Uint8Array, codec: Codec<T>): Promise<T | undefined>;
|
|
22
32
|
getTyped<T>(key: Uint8Array, decodeValue: (value: unknown) => T): Promise<T | undefined>;
|
|
23
33
|
/** Starts a value write or compare-and-swap request. */
|
|
24
34
|
set(key: Uint8Array): KvSetRequest;
|
|
25
|
-
/** Starts a compare-and-swap
|
|
26
|
-
|
|
35
|
+
/** Starts a compare-and-swap that requires a live lease at
|
|
36
|
+
* (`fenceNamespace`, `fenceKey`) and a fence sequence still equal to
|
|
37
|
+
* `fenceToken`. */
|
|
38
|
+
casFenced(key: Uint8Array, fenceNamespace: string, fenceKey: Uint8Array, fenceToken: bigint): KvCasFencedRequest;
|
|
27
39
|
delete(key: Uint8Array): Promise<boolean>;
|
|
28
40
|
exists(key: Uint8Array): Promise<KvMetadata | undefined>;
|
|
29
41
|
/** Changes an entry expiry without rewriting its value. */
|
|
30
42
|
expire(key: Uint8Array, expiresAtMicros?: bigint): Promise<bigint>;
|
|
31
43
|
/** Applies a codec-specific merge patch and returns the new version. */
|
|
32
44
|
patch(key: Uint8Array, patch: Uint8Array): Promise<bigint>;
|
|
33
|
-
lease(
|
|
34
|
-
|
|
45
|
+
/** Acquires a revocable lease as `holderId` (a stable node or worker id). A
|
|
46
|
+
* live lease always conflicts: extend with `renewLease`, never by
|
|
47
|
+
* re-acquiring. `leaseTtlMicros` is a requested maximum within
|
|
48
|
+
* `MIN_LEASE_TTL_MICROS`..=`MAX_LEASE_TTL_MICROS`. The store may grant less and
|
|
49
|
+
* never more, so anything outside that range throws `InvalidError` before the
|
|
50
|
+
* round trip, and a holder needing longer renews. Needs the `kvFencedLeases`
|
|
51
|
+
* capability. */
|
|
52
|
+
lease(key: Uint8Array, holderId: string, leaseTtlMicros: bigint): Promise<Lease>;
|
|
53
|
+
/** Extends a held lease without changing its token. `leaseTtlMicros` obeys the
|
|
54
|
+
* same range as `lease`. An expired, released, or re-acquired lease fails with
|
|
55
|
+
* the typed lease-lost error: stop the protected work, a new epoch needs a
|
|
56
|
+
* fresh `lease`. */
|
|
57
|
+
renewLease(key: Uint8Array, holderId: string, token: bigint, leaseTtlMicros: bigint): Promise<Lease>;
|
|
58
|
+
/** Releases a held lease early, presenting the same `holderId` and its
|
|
59
|
+
* token. Resolves `true` when a held lease was released. */
|
|
60
|
+
release(key: Uint8Array, holderId: string, token: bigint): Promise<boolean>;
|
|
35
61
|
/** Starts an atomic value copy that preserves remaining expiry. */
|
|
36
62
|
copyTo(key: Uint8Array, toKey: Uint8Array): KvCopyRequest;
|
|
37
63
|
moveTo(key: Uint8Array, toKey: Uint8Array): KvCopyRequest;
|
|
@@ -69,12 +95,13 @@ export declare class KvCasFencedRequest {
|
|
|
69
95
|
private readonly getCapabilities;
|
|
70
96
|
private readonly namespace;
|
|
71
97
|
private readonly key;
|
|
98
|
+
private readonly fenceNamespace;
|
|
72
99
|
private readonly fenceKey;
|
|
73
100
|
private readonly fenceToken;
|
|
74
101
|
private value;
|
|
75
102
|
private expiresAtMicros;
|
|
76
103
|
private expect;
|
|
77
|
-
constructor(backend: KvBackend, getCapabilities: () => Promise<Capabilities>, namespace: string, key: Uint8Array, fenceKey: Uint8Array, fenceToken: bigint);
|
|
104
|
+
constructor(backend: KvBackend, getCapabilities: () => Promise<Capabilities>, namespace: string, key: Uint8Array, fenceNamespace: string, fenceKey: Uint8Array, fenceToken: bigint);
|
|
78
105
|
bytes(payload: Uint8Array): this;
|
|
79
106
|
encodeWith<T>(codec: Codec<T>, value: T): this;
|
|
80
107
|
json(value: unknown): this;
|
package/dist/managed/kv.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/managed/kv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;
|
|
1
|
+
{"version":3,"file":"kv.d.ts","sourceRoot":"","sources":["../../src/managed/kv.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AAS7D,OAAO,EAAkB,KAAK,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAE5E,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAsBhD,OAAO,EAEL,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,KAAK,eAAe,EAEpB,KAAK,MAAM,EAGZ,MAAM,eAAe,CAAA;AAEtB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAE3D;;wEAEwE;AACxE,MAAM,WAAW,KAAK;IACpB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAA;CACpC;AAED,MAAM,MAAM,SAAS,GAAG,gBAAgB,CAAA;AAgExC,iDAAiD;AACjD,qBAAa,EAAE;IAEX,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM;IAH5B,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EACpD,SAAS,EAAE,MAAM,EACxB;IAEJ,OAAa,UAAU,CACrB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,GAC3C,OAAO,CAAC,SAAS,eAAe,EAAE,CAAC,CAGrC;IAEK,GAAG,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAG1D;IAEK,QAAQ,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAQ5D;IAED;;;;4CAIwC;IAClC,eAAe,CACnB,GAAG,EAAE,UAAU,EACf,WAAW,EAAE,gBAAgB,GAC5B,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC,CAY9B;IAED,qEAAqE;IAC/D,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAGvE;IAEK,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAE7F;IAED,wDAAwD;IACxD,GAAG,CAAC,GAAG,EAAE,UAAU,GAAG,YAAY,CAEjC;IAED;;uBAEmB;IACnB,SAAS,CACP,GAAG,EAAE,UAAU,EACf,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,UAAU,EACpB,UAAU,EAAE,MAAM,GACjB,kBAAkB,CAWpB;IAEK,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAQ9C;IAEK,MAAM,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAQ7D;IAED,2DAA2D;IACrD,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASvE;IAED,wEAAwE;IAClE,KAAK,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAS/D;IAED;;;;;;qBAMiB;IACX,KAAK,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAsCrF;IAED;;;wBAGoB;IACd,UAAU,CACd,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,KAAK,CAAC,CAuBhB;IAED;gEAC4D;IACtD,OAAO,CAAC,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUhF;IAED,mEAAmE;IACnE,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,aAAa,CASxD;IAED,MAAM,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,aAAa,CASxD;IAED,uEAAuE;IACjE,OAAO,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,EAAE,CAAC,CAiBvF;IAED,qCAAqC;IACrC,UAAU,IAAI,mBAAmB,CAEhC;IAED,IAAI,IAAI,aAAa,CAEpB;CACF;AAED,gDAAgD;AAChD,qBAAa,YAAY;IAMrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IARtB,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAuB;IAErC,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EAC5C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,UAAU,EAC9B;IAEJ,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAG7C;IAED,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAKzB;IAED,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAGnC;IAED,qFAAqF;IACrF,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,GAAE,MAAmC,GAAG,IAAI,CAE3E;IAED,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAGnC;IAED,YAAY,IAAI,IAAI,CAGnB;IAEK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAW1B;IAED,2EAA2E;IACrE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAoB9B;CACF;AAED,oEAAoE;AACpE,qBAAa,kBAAkB;IAM3B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,cAAc;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAX7B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,eAAe,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAAuB;IAErC,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EAC5C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,UAAU,EACf,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,UAAU,EACpB,UAAU,EAAE,MAAM,EACjC;IAEJ,KAAK,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CAG7C;IAED,IAAI,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAKzB;IAED,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAGnC;IAED,qFAAqF;IACrF,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,GAAE,MAAmC,GAAG,IAAI,CAE3E;IAED,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAGnC;IAED,YAAY,IAAI,IAAI,CAGnB;IAED,uEAAuE;IACjE,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CA6B9B;CACF;AAED,qCAAqC;AACrC,qBAAa,aAAa;IAUtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAX5B,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,UAAU,CAAwB;IAE1C,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EAC5C,SAAS,EAAE,MAAM,EAChC;IAEJ,6DAA6D;IAC7D,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAGzC;IAED,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAI9C;IAED,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGnC;IAED,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAGrB;IAED,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG/B;IAEK,KAAK,IAAI,OAAO,CAAC,MAAM,CAAC,CAW7B;IAED,kDAAkD;IAC5C,OAAO,IAAI,OAAO,CAAC,SAAS,OAAO,EAAE,CAAC,CAiB3C;IAED,OAAO,CAAC,OAAO;CAqBhB;AAED,qCAAqC;AACrC,qBAAa,mBAAmB;IAQ5B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAT5B,OAAO,CAAC,WAAW,CAAwB;IAC3C,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,QAAQ,CAAwB;IACxC,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,OAAO,CAAC,iBAAiB,CAAoB;IAE7C,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EAC5C,SAAS,EAAE,MAAM,EAChC;IAEJ,YAAY,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAGzC;IAED,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAG/B;IAED,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI,CAI9C;IAED,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGnC;IAEK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAkB5B;CACF;AAED,2CAA2C;AAC3C,qBAAa,aAAa;IAItB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAR/B,OAAO,CAAC,mBAAmB,CAAoB;IAE/C,YACmB,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,EAC5C,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,OAAO,EACpC;IAEJ,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAGrC;IAEK,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAY5B;CACF"}
|
package/dist/managed/kv.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { InvalidError, KvExecutionError, ProtocolError, UnsupportedError } from "../client/errors.js";
|
|
1
|
+
import { AmbiguousMutationError, InvalidError, KvExecutionError, ProtocolError, TransportError, UnsupportedError } from "../client/errors.js";
|
|
2
2
|
import { executeManaged } from "../client/managed.js";
|
|
3
3
|
import { executeBatch } from "./batch.js";
|
|
4
4
|
import { jsonCodec } from "../stream/codecs.js";
|
|
5
|
-
import { KvCasCommand, KvCasFencedCommand, KvCopyCommand, KvDeleteCommand, KvDeleteManyCommand, KvExistsCommand, KvExpireCommand, KvGetCommand, KvLeaseCommand, KvMoveCommand, KvNamespacesCommand, KvPatchCommand, KvReleaseCommand, KvScanCommand, KvSetCommand } from "../wire/commands.js";
|
|
5
|
+
import { KvCasCommand, KvCasFencedCommand, KvCopyCommand, KvDeleteCommand, KvDeleteManyCommand, KvExistsCommand, KvExpireCommand, KvGetCommand, KvLeaseCommand, KvLeaseRenewCommand, KvMoveCommand, KvNamespacesCommand, KvPatchCommand, KvReleaseCommand, KvScanCommand, KvSetCommand } from "../wire/commands.js";
|
|
6
6
|
import { validateNamespace } from "../wire/kv.js";
|
|
7
7
|
import { DEFAULT_SCAN_LIMIT, MAX_KEY_BYTES, MAX_VALUE_BYTES } from "../wire/limits.js";
|
|
8
|
-
async function executeKv(backend, capabilities, namespace, command, request) {
|
|
8
|
+
async function executeKv(backend, capabilities, namespace, command, request, options) {
|
|
9
9
|
if (namespace !== undefined)
|
|
10
10
|
validateNamespace(namespace);
|
|
11
|
-
const reply = await executeManaged(backend, capabilities, command, request);
|
|
11
|
+
const reply = await executeManaged(backend, capabilities, command, request, options);
|
|
12
12
|
if (reply.kind === "ok")
|
|
13
13
|
return reply.outcome;
|
|
14
14
|
if (reply.kind === "err") {
|
|
@@ -20,6 +20,15 @@ async function executeKv(backend, capabilities, namespace, command, request) {
|
|
|
20
20
|
commandCode: command.code
|
|
21
21
|
});
|
|
22
22
|
}
|
|
23
|
+
const MAX_TIMER_MILLIS = 2147483647n;
|
|
24
|
+
async function waitForLeaseExpiry(leaseTtlMicros) {
|
|
25
|
+
let millis = (leaseTtlMicros + 999n) / 1000n;
|
|
26
|
+
while (millis > 0n) {
|
|
27
|
+
const chunk = millis > MAX_TIMER_MILLIS ? MAX_TIMER_MILLIS : millis;
|
|
28
|
+
await new Promise((resolve) => setTimeout(resolve, Number(chunk)));
|
|
29
|
+
millis -= chunk;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
23
32
|
function unexpected(op, outcome) {
|
|
24
33
|
return new ProtocolError(`kv ${op}: unexpected reply outcome \`${outcome.kind}\``);
|
|
25
34
|
}
|
|
@@ -70,6 +79,25 @@ export class Kv {
|
|
|
70
79
|
return outcome.entry;
|
|
71
80
|
throw unexpected("get", outcome);
|
|
72
81
|
}
|
|
82
|
+
/** Barriered read: resolves only once the answering fold has applied at
|
|
83
|
+
* least `minPosition` (the position a `Lease` grant or renewal returned). A
|
|
84
|
+
* fold that does not catch up fails with the typed `stale` error, never an
|
|
85
|
+
* absent value. Needs the `kvFencedLeases` capability: a pre-fencing server
|
|
86
|
+
* would silently ignore the barrier. */
|
|
87
|
+
async getEntryAtLeast(key, minPosition) {
|
|
88
|
+
const capabilities = await this.getCapabilities();
|
|
89
|
+
if (!capabilities.kv.fencedLeases) {
|
|
90
|
+
throw new UnsupportedError("the fenced-lease contract is not advertised by this deployment");
|
|
91
|
+
}
|
|
92
|
+
const outcome = await executeKv(this.backend, capabilities, this.namespace, KvGetCommand, {
|
|
93
|
+
namespace: this.namespace,
|
|
94
|
+
key: validatedKey(key),
|
|
95
|
+
minPosition
|
|
96
|
+
});
|
|
97
|
+
if (outcome.kind === "value")
|
|
98
|
+
return outcome.entry;
|
|
99
|
+
throw unexpected("get", outcome);
|
|
100
|
+
}
|
|
73
101
|
/** Decodes a value with the supplied codec, or returns undefined. */
|
|
74
102
|
async getAs(key, codec) {
|
|
75
103
|
const value = await this.get(key);
|
|
@@ -82,9 +110,12 @@ export class Kv {
|
|
|
82
110
|
set(key) {
|
|
83
111
|
return new KvSetRequest(this.backend, this.getCapabilities, this.namespace, validatedKey(key));
|
|
84
112
|
}
|
|
85
|
-
/** Starts a compare-and-swap
|
|
86
|
-
|
|
87
|
-
|
|
113
|
+
/** Starts a compare-and-swap that requires a live lease at
|
|
114
|
+
* (`fenceNamespace`, `fenceKey`) and a fence sequence still equal to
|
|
115
|
+
* `fenceToken`. */
|
|
116
|
+
casFenced(key, fenceNamespace, fenceKey, fenceToken) {
|
|
117
|
+
validateNamespace(fenceNamespace);
|
|
118
|
+
return new KvCasFencedRequest(this.backend, this.getCapabilities, this.namespace, validatedKey(key), fenceNamespace, validatedKey(fenceKey), fenceToken);
|
|
88
119
|
}
|
|
89
120
|
async delete(key) {
|
|
90
121
|
const capabilities = await this.getCapabilities();
|
|
@@ -130,24 +161,72 @@ export class Kv {
|
|
|
130
161
|
return outcome.version;
|
|
131
162
|
throw unexpected("patch", outcome);
|
|
132
163
|
}
|
|
133
|
-
|
|
164
|
+
/** Acquires a revocable lease as `holderId` (a stable node or worker id). A
|
|
165
|
+
* live lease always conflicts: extend with `renewLease`, never by
|
|
166
|
+
* re-acquiring. `leaseTtlMicros` is a requested maximum within
|
|
167
|
+
* `MIN_LEASE_TTL_MICROS`..=`MAX_LEASE_TTL_MICROS`. The store may grant less and
|
|
168
|
+
* never more, so anything outside that range throws `InvalidError` before the
|
|
169
|
+
* round trip, and a holder needing longer renews. Needs the `kvFencedLeases`
|
|
170
|
+
* capability. */
|
|
171
|
+
async lease(key, holderId, leaseTtlMicros) {
|
|
134
172
|
const capabilities = await this.getCapabilities();
|
|
135
|
-
|
|
173
|
+
let outcome;
|
|
174
|
+
try {
|
|
175
|
+
outcome = await executeKv(this.backend, capabilities, this.namespace, KvLeaseCommand, {
|
|
176
|
+
namespace: this.namespace,
|
|
177
|
+
key: validatedKey(key),
|
|
178
|
+
leaseTtlMicros,
|
|
179
|
+
holderId
|
|
180
|
+
}, { retryAfterReconnect: false });
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
if (!(error instanceof AmbiguousMutationError) &&
|
|
184
|
+
!(error instanceof TransportError && error.retryable)) {
|
|
185
|
+
throw error;
|
|
186
|
+
}
|
|
187
|
+
await waitForLeaseExpiry(leaseTtlMicros);
|
|
188
|
+
throw new AmbiguousMutationError("lease acquisition outcome is unknown; its requested TTL elapsed before retry was allowed", { cause: error });
|
|
189
|
+
}
|
|
190
|
+
if (outcome.kind === "leased") {
|
|
191
|
+
return {
|
|
192
|
+
token: outcome.leaseToken,
|
|
193
|
+
grantedTtlMicros: outcome.grantedTtlMicros,
|
|
194
|
+
position: outcome.position
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
throw unexpected("lease", outcome);
|
|
198
|
+
}
|
|
199
|
+
/** Extends a held lease without changing its token. `leaseTtlMicros` obeys the
|
|
200
|
+
* same range as `lease`. An expired, released, or re-acquired lease fails with
|
|
201
|
+
* the typed lease-lost error: stop the protected work, a new epoch needs a
|
|
202
|
+
* fresh `lease`. */
|
|
203
|
+
async renewLease(key, holderId, token, leaseTtlMicros) {
|
|
204
|
+
const capabilities = await this.getCapabilities();
|
|
205
|
+
const outcome = await executeKv(this.backend, capabilities, this.namespace, KvLeaseRenewCommand, {
|
|
136
206
|
namespace: this.namespace,
|
|
137
207
|
key: validatedKey(key),
|
|
208
|
+
holderId,
|
|
209
|
+
leaseToken: token,
|
|
138
210
|
leaseTtlMicros
|
|
139
211
|
});
|
|
140
|
-
if (outcome.kind === "
|
|
141
|
-
return {
|
|
212
|
+
if (outcome.kind === "renewed") {
|
|
213
|
+
return {
|
|
214
|
+
token: outcome.leaseToken,
|
|
215
|
+
grantedTtlMicros: outcome.grantedTtlMicros,
|
|
216
|
+
position: outcome.position
|
|
217
|
+
};
|
|
142
218
|
}
|
|
143
|
-
throw unexpected("
|
|
219
|
+
throw unexpected("renewLease", outcome);
|
|
144
220
|
}
|
|
145
|
-
|
|
221
|
+
/** Releases a held lease early, presenting the same `holderId` and its
|
|
222
|
+
* token. Resolves `true` when a held lease was released. */
|
|
223
|
+
async release(key, holderId, token) {
|
|
146
224
|
const capabilities = await this.getCapabilities();
|
|
147
225
|
const outcome = await executeKv(this.backend, capabilities, this.namespace, KvReleaseCommand, {
|
|
148
226
|
namespace: this.namespace,
|
|
149
227
|
key: validatedKey(key),
|
|
150
|
-
leaseToken: token
|
|
228
|
+
leaseToken: token,
|
|
229
|
+
holderId
|
|
151
230
|
});
|
|
152
231
|
if (outcome.kind === "released")
|
|
153
232
|
return outcome.wasHeld;
|
|
@@ -273,16 +352,18 @@ export class KvCasFencedRequest {
|
|
|
273
352
|
getCapabilities;
|
|
274
353
|
namespace;
|
|
275
354
|
key;
|
|
355
|
+
fenceNamespace;
|
|
276
356
|
fenceKey;
|
|
277
357
|
fenceToken;
|
|
278
358
|
value = new Uint8Array();
|
|
279
359
|
expiresAtMicros;
|
|
280
360
|
expect;
|
|
281
|
-
constructor(backend, getCapabilities, namespace, key, fenceKey, fenceToken) {
|
|
361
|
+
constructor(backend, getCapabilities, namespace, key, fenceNamespace, fenceKey, fenceToken) {
|
|
282
362
|
this.backend = backend;
|
|
283
363
|
this.getCapabilities = getCapabilities;
|
|
284
364
|
this.namespace = namespace;
|
|
285
365
|
this.key = key;
|
|
366
|
+
this.fenceNamespace = fenceNamespace;
|
|
286
367
|
this.fenceKey = fenceKey;
|
|
287
368
|
this.fenceToken = fenceToken;
|
|
288
369
|
}
|
|
@@ -319,8 +400,8 @@ export class KvCasFencedRequest {
|
|
|
319
400
|
throw new InvalidError("commit() needs a precondition: call expectVersion(..) or expectAbsent()");
|
|
320
401
|
}
|
|
321
402
|
const capabilities = await this.getCapabilities();
|
|
322
|
-
if (!capabilities.kv.
|
|
323
|
-
throw new UnsupportedError("fenced
|
|
403
|
+
if (!capabilities.kv.fencedLeases) {
|
|
404
|
+
throw new UnsupportedError("the fenced-lease contract is not advertised by this deployment");
|
|
324
405
|
}
|
|
325
406
|
validatedValue(this.value);
|
|
326
407
|
const outcome = await executeKv(this.backend, capabilities, this.namespace, KvCasFencedCommand, {
|
|
@@ -328,6 +409,7 @@ export class KvCasFencedRequest {
|
|
|
328
409
|
key: this.key,
|
|
329
410
|
value: this.value,
|
|
330
411
|
expect: this.expect,
|
|
412
|
+
fenceNamespace: this.fenceNamespace,
|
|
331
413
|
fenceKey: this.fenceKey,
|
|
332
414
|
fenceToken: this.fenceToken,
|
|
333
415
|
...(this.expiresAtMicros !== undefined ? { expiresAtMicros: this.expiresAtMicros } : {})
|
package/dist/managed/kv.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kv.js","sourceRoot":"","sources":["../../src/managed/kv.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"kv.js","sourceRoot":"","sources":["../../src/managed/kv.ts"],"names":[],"mappings":"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"}
|
package/dist/wire/authz.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type CborMap } from "./cbor.js";
|
|
2
2
|
export type Effect = "allow" | "deny";
|
|
3
|
-
export type Feature = "kv" | "memory" | "projection" | "fork" | "graph" | "query" | "agent" | "workflow" | "authz" | "unrecognized";
|
|
3
|
+
export type Feature = "kv" | "memory" | "projection" | "fork" | "graph" | "query" | "agent" | "workflow" | "destination" | "checkpoint" | "authz" | "kv_lease" | "kv_fence" | "unrecognized";
|
|
4
4
|
export type Action = "read" | "write" | "delete" | "admin" | "unrecognized";
|
|
5
5
|
export type ResourceKind = "all" | "literal" | "prefix";
|
|
6
6
|
export interface ResourcePattern {
|
|
@@ -29,7 +29,7 @@ export declare function encodeRole(role: Role): Map<string, unknown>;
|
|
|
29
29
|
export declare function decodeRole(map: CborMap, context: string): Role;
|
|
30
30
|
export declare function validateRoleName(name: string): void;
|
|
31
31
|
export declare function featureAction(code: number): readonly [Feature, Action] | undefined;
|
|
32
|
-
export declare const ACTION_COUNT
|
|
32
|
+
export declare const ACTION_COUNT = 5;
|
|
33
33
|
export declare function actionIndex(feature: Feature, action: Action): number;
|
|
34
34
|
export declare function grantsAllow(grants: readonly Grant[], feature: Feature, action: Action, resource?: string): boolean;
|
|
35
35
|
export declare function delegatedAllow(agent: readonly Grant[], user: readonly Grant[], feature: Feature, action: Action, resource?: string): boolean;
|
package/dist/wire/authz.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authz.d.ts","sourceRoot":"","sources":["../../src/wire/authz.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,OAAO,EAAoD,MAAM,WAAW,CAAA;
|
|
1
|
+
{"version":3,"file":"authz.d.ts","sourceRoot":"","sources":["../../src/wire/authz.ts"],"names":[],"mappings":"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"}
|
package/dist/wire/authz.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CodecError, InvalidError } from "../client/errors.js";
|
|
2
2
|
import { expectMap, expectString, field, singleVariantTag } from "./cbor.js";
|
|
3
|
-
import { AGDX_AGENT_CANCEL_CODE, AGDX_AGENT_LIST_CODE, AGDX_AGENT_STATUS_CODE, AGDX_AGENT_SUBMIT_CODE, AGDX_DECODE_RECORD_CODE, AGDX_FORK_CREATE_CODE, AGDX_FORK_DELETE_CODE, AGDX_FORK_LIST_CODE, AGDX_FORK_PROMOTE_CODE, AGDX_FORK_PUT_CODE, AGDX_GET_PROJECTION_CODE, AGDX_GET_SCHEMA_CODE, AGDX_GRAPH_NEIGHBORS_CODE, AGDX_GRAPH_QUERY_CODE, AGDX_GRAPH_UPSERT_CODE, AGDX_KV_CAS_CODE, AGDX_KV_CAS_FENCED_CODE, AGDX_KV_COPY_CODE, AGDX_KV_DELETE_CODE, AGDX_KV_DELETE_MANY_CODE, AGDX_KV_EXISTS_CODE, AGDX_KV_EXPIRE_CODE, AGDX_KV_GET_CODE, AGDX_KV_LEASE_CODE, AGDX_KV_MOVE_CODE, AGDX_KV_NAMESPACES_CODE, AGDX_KV_PATCH_CODE, AGDX_KV_RELEASE_CODE, AGDX_KV_SCAN_CODE, AGDX_KV_SET_CODE, AGDX_LIST_PROJECTIONS_CODE, AGDX_LIST_SCHEMAS_CODE, AGDX_QUERY_CODE, AGDX_REGISTER_SCHEMA_CODE, AUTHZ_OP_VERSION } from "./codes.js";
|
|
3
|
+
import { AGDX_AGENT_CANCEL_CODE, AGDX_AGENT_LIST_CODE, AGDX_AGENT_STATUS_CODE, AGDX_AGENT_SUBMIT_CODE, AGDX_DECODE_RECORD_CODE, AGDX_DESTINATION_GET_CODE, AGDX_DESTINATION_LIST_CODE, AGDX_FORK_CREATE_CODE, AGDX_FORK_DELETE_CODE, AGDX_FORK_LIST_CODE, AGDX_FORK_PROMOTE_CODE, AGDX_FORK_PUT_CODE, AGDX_GET_PROJECTION_CODE, AGDX_GET_SCHEMA_CODE, AGDX_GRAPH_NEIGHBORS_CODE, AGDX_GRAPH_QUERY_CODE, AGDX_GRAPH_UPSERT_CODE, AGDX_KV_CAS_CODE, AGDX_KV_CAS_FENCED_CODE, AGDX_KV_COPY_CODE, AGDX_KV_DELETE_CODE, AGDX_KV_DELETE_MANY_CODE, AGDX_KV_EXISTS_CODE, AGDX_KV_EXPIRE_CODE, AGDX_KV_GET_CODE, AGDX_KV_LEASE_CODE, AGDX_KV_LEASE_RENEW_CODE, AGDX_KV_MOVE_CODE, AGDX_KV_NAMESPACES_CODE, AGDX_KV_PATCH_CODE, AGDX_KV_RELEASE_CODE, AGDX_KV_SCAN_CODE, AGDX_KV_SET_CODE, AGDX_LIST_PROJECTIONS_CODE, AGDX_LIST_SCHEMAS_CODE, AGDX_QUERY_CODE, AGDX_QUERY_ROUTE_LIST_CODE, AGDX_REGISTER_SCHEMA_CODE, AUTHZ_OP_VERSION } from "./codes.js";
|
|
4
4
|
import { MAX_ROLE_NAME_BYTES } from "./limits.js";
|
|
5
5
|
function parseEffect(word, context) {
|
|
6
6
|
if (word !== "allow" && word !== "deny") {
|
|
@@ -17,7 +17,11 @@ const KNOWN_FEATURES = new Set([
|
|
|
17
17
|
"query",
|
|
18
18
|
"agent",
|
|
19
19
|
"workflow",
|
|
20
|
-
"
|
|
20
|
+
"destination",
|
|
21
|
+
"checkpoint",
|
|
22
|
+
"authz",
|
|
23
|
+
"kv_lease",
|
|
24
|
+
"kv_fence"
|
|
21
25
|
]);
|
|
22
26
|
function parseFeature(word) {
|
|
23
27
|
return KNOWN_FEATURES.has(word) ? word : "unrecognized";
|
|
@@ -112,6 +116,10 @@ export function featureAction(code) {
|
|
|
112
116
|
switch (code) {
|
|
113
117
|
case AGDX_QUERY_CODE:
|
|
114
118
|
return ["query", "read"];
|
|
119
|
+
case AGDX_DESTINATION_GET_CODE:
|
|
120
|
+
case AGDX_DESTINATION_LIST_CODE:
|
|
121
|
+
case AGDX_QUERY_ROUTE_LIST_CODE:
|
|
122
|
+
return ["destination", "read"];
|
|
115
123
|
case AGDX_GET_PROJECTION_CODE:
|
|
116
124
|
case AGDX_LIST_PROJECTIONS_CODE:
|
|
117
125
|
case AGDX_GET_SCHEMA_CODE:
|
|
@@ -125,6 +133,9 @@ export function featureAction(code) {
|
|
|
125
133
|
case AGDX_KV_NAMESPACES_CODE:
|
|
126
134
|
case AGDX_KV_EXISTS_CODE:
|
|
127
135
|
return ["kv", "read"];
|
|
136
|
+
// A fenced CAS additionally requires `kv_fence:read` on its coordination
|
|
137
|
+
// namespace. This map carries the primary target-namespace grant and the
|
|
138
|
+
// enforcer checks the fence grant beside it.
|
|
128
139
|
case AGDX_KV_SET_CODE:
|
|
129
140
|
case AGDX_KV_CAS_CODE:
|
|
130
141
|
case AGDX_KV_CAS_FENCED_CODE:
|
|
@@ -132,9 +143,13 @@ export function featureAction(code) {
|
|
|
132
143
|
case AGDX_KV_EXPIRE_CODE:
|
|
133
144
|
case AGDX_KV_COPY_CODE:
|
|
134
145
|
case AGDX_KV_MOVE_CODE:
|
|
146
|
+
return ["kv", "write"];
|
|
147
|
+
// Lease lifecycle is its own feature: a `kv:write` grant must never imply
|
|
148
|
+
// acquiring, renewing, or releasing the lease that fences it.
|
|
135
149
|
case AGDX_KV_LEASE_CODE:
|
|
150
|
+
case AGDX_KV_LEASE_RENEW_CODE:
|
|
136
151
|
case AGDX_KV_RELEASE_CODE:
|
|
137
|
-
return ["
|
|
152
|
+
return ["kv_lease", "admin"];
|
|
138
153
|
case AGDX_KV_DELETE_CODE:
|
|
139
154
|
case AGDX_KV_DELETE_MANY_CODE:
|
|
140
155
|
return ["kv", "delete"];
|
|
@@ -163,24 +178,32 @@ export function featureAction(code) {
|
|
|
163
178
|
return undefined;
|
|
164
179
|
}
|
|
165
180
|
}
|
|
166
|
-
const
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
181
|
+
const FEATURE_ORDINALS = {
|
|
182
|
+
kv: 0,
|
|
183
|
+
memory: 1,
|
|
184
|
+
projection: 2,
|
|
185
|
+
fork: 3,
|
|
186
|
+
graph: 4,
|
|
187
|
+
query: 5,
|
|
188
|
+
agent: 6,
|
|
189
|
+
workflow: 7,
|
|
190
|
+
destination: 8,
|
|
191
|
+
checkpoint: 9,
|
|
192
|
+
authz: 10,
|
|
193
|
+
kv_lease: 11,
|
|
194
|
+
kv_fence: 12,
|
|
195
|
+
unrecognized: 13
|
|
196
|
+
};
|
|
197
|
+
const ACTION_ORDINALS = {
|
|
198
|
+
read: 0,
|
|
199
|
+
write: 1,
|
|
200
|
+
delete: 2,
|
|
201
|
+
admin: 3,
|
|
202
|
+
unrecognized: 4
|
|
203
|
+
};
|
|
204
|
+
export const ACTION_COUNT = 5;
|
|
180
205
|
export function actionIndex(feature, action) {
|
|
181
|
-
|
|
182
|
-
const actionOrdinal = ACTIONS.indexOf(action);
|
|
183
|
-
return featureOrdinal * ACTION_COUNT + actionOrdinal;
|
|
206
|
+
return FEATURE_ORDINALS[feature] * ACTION_COUNT + ACTION_ORDINALS[action];
|
|
184
207
|
}
|
|
185
208
|
export function grantsAllow(grants, feature, action, resource) {
|
|
186
209
|
let allowed = false;
|