@xyo-network/event-kit-protocol 0.1.1 → 0.1.3
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 +21 -6
- package/dist/neutral/admissionCore.d.ts +30 -0
- package/dist/neutral/admissionCore.d.ts.map +1 -0
- package/dist/neutral/admissionTypes.d.ts +16 -3
- package/dist/neutral/admissionTypes.d.ts.map +1 -1
- package/dist/neutral/admitAndEnqueue.d.ts +6 -21
- package/dist/neutral/admitAndEnqueue.d.ts.map +1 -1
- package/dist/neutral/endpointChallenge.d.ts +2 -2
- package/dist/neutral/endpointChallenge.d.ts.map +1 -1
- package/dist/neutral/grantEvidence.d.ts +20 -0
- package/dist/neutral/grantEvidence.d.ts.map +1 -0
- package/dist/neutral/handshakeConstruction.d.ts +8 -4
- package/dist/neutral/handshakeConstruction.d.ts.map +1 -1
- package/dist/neutral/index.d.ts +4 -1
- package/dist/neutral/index.d.ts.map +1 -1
- package/dist/neutral/index.mjs +345 -167
- package/dist/neutral/index.mjs.map +4 -4
- package/dist/neutral/memoryStatementGrantGraph.d.ts.map +1 -1
- package/dist/neutral/memoryWakeInbox.d.ts +5 -5
- package/dist/neutral/memoryWakeInbox.d.ts.map +1 -1
- package/dist/neutral/memoryWakeQueue.d.ts +3 -2
- package/dist/neutral/memoryWakeQueue.d.ts.map +1 -1
- package/dist/neutral/publisherSubscription.d.ts.map +1 -1
- package/dist/neutral/sourceWakeActivation.d.ts +24 -0
- package/dist/neutral/sourceWakeActivation.d.ts.map +1 -0
- package/dist/neutral/sourceWakeIdentity.d.ts +6 -0
- package/dist/neutral/sourceWakeIdentity.d.ts.map +1 -0
- package/dist/neutral/statementGraphWakeGrantAuthorizer.d.ts +9 -11
- package/dist/neutral/statementGraphWakeGrantAuthorizer.d.ts.map +1 -1
- package/dist/neutral/types.d.ts +41 -19
- package/dist/neutral/types.d.ts.map +1 -1
- package/dist/neutral/verifiedAdmissionWake.d.ts +22 -0
- package/dist/neutral/verifiedAdmissionWake.d.ts.map +1 -0
- package/dist/neutral/verifyWakeRequest.d.ts +41 -30
- package/dist/neutral/verifyWakeRequest.d.ts.map +1 -1
- package/dist/neutral/wakeQueue.d.ts +7 -7
- package/dist/neutral/wakeQueue.d.ts.map +1 -1
- package/dist/neutral/wakeSubscriptionHpke.d.ts.map +1 -1
- package/package.json +8 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryStatementGrantGraph.d.ts","sourceRoot":"","sources":["../../src/memoryStatementGrantGraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"memoryStatementGrantGraph.d.ts","sourceRoot":"","sources":["../../src/memoryStatementGrantGraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,gCAAgC,CAAA;AAOvC,OAAO,KAAK,EAGV,4BAA4B,EAC7B,MAAM,0BAA0B,CAAA;AAEjC,MAAM,WAAW,yBAA0B,SAAQ,4BAA4B;IAC7E;;;OAGG;IACH,KAAK,EAAE,CAAC,KAAK,EAAE;QACb,KAAK,EAAE,MAAM,CAAA;QACb,kDAAkD;QAClD,SAAS,EAAE,MAAM,CAAA;QACjB,KAAK,EAAE,eAAe,CAAA;QACtB,UAAU,EAAE,MAAM,CAAA;QAClB,MAAM,EAAE,MAAM,CAAA;QACd,qCAAqC;QACrC,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,KAAK,IAAI,CAAA;IACV;;;OAGG;IACH,MAAM,EAAE,CAAC,KAAK,EAAE;QACd,KAAK,EAAE,MAAM,CAAA;QACb,SAAS,EAAE,MAAM,CAAA;QACjB,eAAe,EAAE,MAAM,CAAA;QACvB,UAAU,EAAE,MAAM,CAAA;QAClB,MAAM,EAAE,MAAM,CAAA;QACd,6DAA6D;QAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;KACjB,KAAK,IAAI,CAAA;IACV,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACjC;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,SAAI,GAAG,yBAAyB,CAqH1F"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import type { AtomicWakeInbox } from './admissionTypes.ts';
|
|
2
2
|
import type { AdmittedWake } from './types.ts';
|
|
3
|
-
export interface MemoryWakeInboxOptions {
|
|
3
|
+
export interface MemoryWakeInboxOptions<TWake = AdmittedWake> {
|
|
4
4
|
/**
|
|
5
5
|
* Durable-sink stand-in invoked inside the atomic commit. A throw leaves both
|
|
6
6
|
* identities unconsumed, so the publisher may retry the same `wakeId` with a
|
|
7
7
|
* fresh `jti` instead of losing the wake to a burned replay key.
|
|
8
8
|
*/
|
|
9
|
-
readonly enqueue?: (wake:
|
|
9
|
+
readonly enqueue?: (wake: TWake) => Promise<void> | void;
|
|
10
10
|
/** Trusted clock in Unix seconds, used to drop expired token records. */
|
|
11
11
|
readonly nowSeconds?: () => number;
|
|
12
12
|
}
|
|
13
|
-
export interface MemoryWakeInbox extends AtomicWakeInbox {
|
|
13
|
+
export interface MemoryWakeInbox<TWake = AdmittedWake> extends AtomicWakeInbox<TWake> {
|
|
14
14
|
/** Wakes handed to `enqueue`, in commit order. */
|
|
15
|
-
readonly queued: readonly
|
|
15
|
+
readonly queued: readonly TWake[];
|
|
16
16
|
/** Live `(aud, iss, jti)` replay records. */
|
|
17
17
|
readonly tokenRecordCount: number;
|
|
18
18
|
/** Live `(aud, iss, wakeId)` logical records. */
|
|
@@ -28,5 +28,5 @@ export interface MemoryWakeInbox extends AtomicWakeInbox {
|
|
|
28
28
|
* historical core implementation-plan Gate 5 requires a durable adapter; this
|
|
29
29
|
* is local evidence only.
|
|
30
30
|
*/
|
|
31
|
-
export declare function createMemoryWakeInbox(options?: MemoryWakeInboxOptions): MemoryWakeInbox
|
|
31
|
+
export declare function createMemoryWakeInbox<TWake = AdmittedWake>(options?: MemoryWakeInboxOptions<TWake>): MemoryWakeInbox<TWake>;
|
|
32
32
|
//# sourceMappingURL=memoryWakeInbox.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryWakeInbox.d.ts","sourceRoot":"","sources":["../../src/memoryWakeInbox.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memoryWakeInbox.d.ts","sourceRoot":"","sources":["../../src/memoryWakeInbox.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,eAAe,EAKhB,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C,MAAM,WAAW,sBAAsB,CAAC,KAAK,GAAG,YAAY;IAC1D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;IACxD,yEAAyE;IACzE,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,MAAM,CAAA;CACnC;AAED,MAAM,WAAW,eAAe,CAAC,KAAK,GAAG,YAAY,CAAE,SAAQ,eAAe,CAAC,KAAK,CAAC;IACnF,kDAAkD;IAClD,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,EAAE,CAAA;IACjC,6CAA6C;IAC7C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;IACjC,iDAAiD;IACjD,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;CACjC;AAeD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,GAAG,YAAY,EACxD,OAAO,GAAE,sBAAsB,CAAC,KAAK,CAAM,GAC1C,eAAe,CAAC,KAAK,CAAC,CAiGxB"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import type { AdmittedWake } from './types.ts';
|
|
1
2
|
import type { WakeQueue } from './wakeQueue.ts';
|
|
2
|
-
export interface MemoryWakeQueue extends WakeQueue {
|
|
3
|
+
export interface MemoryWakeQueue<TWake = AdmittedWake> extends WakeQueue<TWake> {
|
|
3
4
|
/** Entries currently leased and not yet acked or released. */
|
|
4
5
|
inflightCount: () => Promise<number>;
|
|
5
6
|
}
|
|
@@ -10,5 +11,5 @@ export interface MemoryWakeQueue extends WakeQueue {
|
|
|
10
11
|
* can reclaim a lease abandoned within this process but cannot help after a
|
|
11
12
|
* restart. Use the filesystem or SQLite provider where durability matters.
|
|
12
13
|
*/
|
|
13
|
-
export declare function createMemoryWakeQueue(): MemoryWakeQueue
|
|
14
|
+
export declare function createMemoryWakeQueue<TWake = AdmittedWake>(): MemoryWakeQueue<TWake>;
|
|
14
15
|
//# sourceMappingURL=memoryWakeQueue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memoryWakeQueue.d.ts","sourceRoot":"","sources":["../../src/memoryWakeQueue.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"memoryWakeQueue.d.ts","sourceRoot":"","sources":["../../src/memoryWakeQueue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAC9C,OAAO,KAAK,EAEV,SAAS,EACV,MAAM,gBAAgB,CAAA;AAEvB,MAAM,WAAW,eAAe,CAAC,KAAK,GAAG,YAAY,CAAE,SAAQ,SAAS,CAAC,KAAK,CAAC;IAC7E,8DAA8D;IAC9D,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;CACrC;AAOD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,GAAG,YAAY,KAAK,eAAe,CAAC,KAAK,CAAC,CA6CpF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"publisherSubscription.d.ts","sourceRoot":"","sources":["../../src/publisherSubscription.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,OAAO,EACP,yBAAyB,EACzB,iBAAiB,EACjB,yBAAyB,EACzB,IAAI,EACJ,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,eAAe,EACf,0BAA0B,EAC1B,yBAAyB,EAC1B,MAAM,gCAAgC,CAAA;
|
|
1
|
+
{"version":3,"file":"publisherSubscription.d.ts","sourceRoot":"","sources":["../../src/publisherSubscription.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import type { WakeGrantAuthorizationRequest } from './admissionTypes.ts';
|
|
3
|
+
/** Exact, active, finalized D-005 tuple; source time never substitutes for atBlock. */
|
|
4
|
+
export declare const SourceWakeSubscriptionActivationZod: z.ZodObject<{
|
|
5
|
+
atBlock: z.ZodNumber;
|
|
6
|
+
activeFromBlock: z.ZodNumber;
|
|
7
|
+
expiresAtBlock: z.ZodNumber;
|
|
8
|
+
authorizationChainId: z.ZodString;
|
|
9
|
+
controller: z.ZodString;
|
|
10
|
+
publisher: z.ZodString;
|
|
11
|
+
deploymentId: z.ZodString;
|
|
12
|
+
queueId: z.ZodOptional<z.ZodString>;
|
|
13
|
+
sourceHash: z.ZodString;
|
|
14
|
+
filterHash: z.ZodString;
|
|
15
|
+
subscriptionHash: z.ZodString;
|
|
16
|
+
serviceHash: z.ZodString;
|
|
17
|
+
grantHash: z.ZodString;
|
|
18
|
+
}, z.core.$strict>;
|
|
19
|
+
export type SourceWakeSubscriptionActivation = z.infer<typeof SourceWakeSubscriptionActivationZod>;
|
|
20
|
+
export interface SourceWakeSubscriptionActivationReader {
|
|
21
|
+
/** Undefined means no matching active subscription; never fabricate activation from a grant alone. */
|
|
22
|
+
readonly read: (request: WakeGrantAuthorizationRequest) => Promise<SourceWakeSubscriptionActivation | undefined>;
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=sourceWakeActivation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sourceWakeActivation.d.ts","sourceRoot":"","sources":["../../src/sourceWakeActivation.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAA;AAExE,uFAAuF;AACvF,eAAO,MAAM,mCAAmC;;;;;;;;;;;;;;kBAiB/C,CAAA;AACD,MAAM,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mCAAmC,CAAC,CAAA;AAElG,MAAM,WAAW,sCAAsC;IACrD,sGAAsG;IACtG,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,6BAA6B,KAAK,OAAO,CAAC,gCAAgC,GAAG,SAAS,CAAC,CAAA;CACjH"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Hash, SourceWakeSubscriptionFilter, WakeSource } from '@xyo-network/event-kit-schemas';
|
|
2
|
+
/** Canonical identity includes the source kind and its entire pinned identity. */
|
|
3
|
+
export declare function wakeSourceHash(source: WakeSource): Promise<Hash>;
|
|
4
|
+
export declare function wakeSourcesEqual(left: WakeSource, right: WakeSource): boolean;
|
|
5
|
+
export declare function sourceWakeFilterHash(filter: SourceWakeSubscriptionFilter): Promise<Hash>;
|
|
6
|
+
//# sourceMappingURL=sourceWakeIdentity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sourceWakeIdentity.d.ts","sourceRoot":"","sources":["../../src/sourceWakeIdentity.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,4BAA4B,EAC5B,UAAU,EACX,MAAM,gCAAgC,CAAA;AAavC,kFAAkF;AAClF,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAE7E;AAED,wBAAsB,oBAAoB,CAAC,MAAM,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC,CAG9F"}
|
|
@@ -1,20 +1,18 @@
|
|
|
1
|
+
import type { ChainId, WakeSource } from '@xyo-network/event-kit-schemas';
|
|
1
2
|
import type { WakeGrantAuthorizer } from './admissionTypes.ts';
|
|
3
|
+
import type { SourceWakeSubscriptionActivationReader } from './sourceWakeActivation.ts';
|
|
2
4
|
import type { StatementGraphGrantReadModel } from './statementGraphPorts.ts';
|
|
3
5
|
export interface StatementGraphWakeGrantAuthorizerOptions {
|
|
6
|
+
readonly activation: SourceWakeSubscriptionActivationReader;
|
|
7
|
+
/** Independently pinned network session identity, never copied from a request. */
|
|
8
|
+
readonly authorizationChainId: ChainId;
|
|
9
|
+
readonly source: WakeSource;
|
|
4
10
|
readonly viewer: StatementGraphGrantReadModel;
|
|
5
11
|
}
|
|
6
12
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* v2 is append-only with no lifecycle `state`, so this layer owns two things
|
|
11
|
-
* the protocol used to:
|
|
12
|
-
*
|
|
13
|
-
* - **Aboutness.** The requested publisher must match both the Claim's
|
|
14
|
-
* `subject` and the grant object's `publisher` field.
|
|
15
|
-
* - **Negation.** A grant is disabled by a further claim, by the *same pinned
|
|
16
|
-
* controller*, of a revocation object referencing that grant's hash.
|
|
17
|
-
* Revocations from any other source are ignored.
|
|
13
|
+
* Existing grants authorize deployment/queue. The accepted subscription and
|
|
14
|
+
* immutable receiver binding narrow the permitted source without relabeling
|
|
15
|
+
* another chain's Statement Graph as authorization evidence.
|
|
18
16
|
*/
|
|
19
17
|
export declare function createStatementGraphWakeGrantAuthorizer(options: StatementGraphWakeGrantAuthorizerOptions): WakeGrantAuthorizer;
|
|
20
18
|
//# sourceMappingURL=statementGraphWakeGrantAuthorizer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statementGraphWakeGrantAuthorizer.d.ts","sourceRoot":"","sources":["../../src/statementGraphWakeGrantAuthorizer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"statementGraphWakeGrantAuthorizer.d.ts","sourceRoot":"","sources":["../../src/statementGraphWakeGrantAuthorizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,UAAU,EACX,MAAM,gCAAgC,CAAA;AAMvC,OAAO,KAAK,EAGV,mBAAmB,EACpB,MAAM,qBAAqB,CAAA;AAE5B,OAAO,KAAK,EAAE,sCAAsC,EAAE,MAAM,2BAA2B,CAAA;AAGvF,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AAE5E,MAAM,WAAW,wCAAwC;IACvD,QAAQ,CAAC,UAAU,EAAE,sCAAsC,CAAA;IAC3D,kFAAkF;IAClF,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAA;IACtC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAA;IAC3B,QAAQ,CAAC,MAAM,EAAE,4BAA4B,CAAA;CAC9C;AAED;;;;GAIG;AACH,wBAAgB,uCAAuC,CACrD,OAAO,EAAE,wCAAwC,GAChD,mBAAmB,CA0CrB"}
|
package/dist/neutral/types.d.ts
CHANGED
|
@@ -1,20 +1,42 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const AdmittedWakeZod: z.ZodObject<{
|
|
3
|
+
audience: z.ZodString;
|
|
4
|
+
deploymentId: z.ZodString;
|
|
5
|
+
event: z.ZodObject<{
|
|
6
|
+
schema: z.ZodLiteral<"network.xyo.event.wake.envelope" & {
|
|
7
|
+
readonly __schema: true;
|
|
8
|
+
}>;
|
|
9
|
+
authorizationChainId: z.ZodString;
|
|
10
|
+
deploymentId: z.ZodString;
|
|
11
|
+
wakeId: z.ZodString;
|
|
12
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
13
|
+
kind: z.ZodLiteral<"xl1-finalized">;
|
|
14
|
+
chainId: z.ZodString;
|
|
15
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
16
|
+
kind: z.ZodLiteral<"ethereum-finalized">;
|
|
17
|
+
chainId: z.ZodString;
|
|
18
|
+
genesisHash: z.ZodString;
|
|
19
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
20
|
+
kind: z.ZodLiteral<"utc-interval">;
|
|
21
|
+
scheduleId: z.ZodString;
|
|
22
|
+
anchorSeconds: z.ZodNumber;
|
|
23
|
+
intervalSeconds: z.ZodNumber;
|
|
24
|
+
}, z.core.$strict>], "kind">;
|
|
25
|
+
fromPosition: z.ZodNumber;
|
|
26
|
+
toPosition: z.ZodNumber;
|
|
27
|
+
filterHash: z.ZodString;
|
|
28
|
+
issuedAt: z.ZodNumber;
|
|
29
|
+
queueId: z.ZodOptional<z.ZodString>;
|
|
30
|
+
}, z.core.$strict>;
|
|
31
|
+
eventHash: z.ZodString;
|
|
32
|
+
fromPosition: z.ZodNumber;
|
|
33
|
+
toPosition: z.ZodNumber;
|
|
34
|
+
jti: z.ZodString;
|
|
35
|
+
publisher: z.ZodString;
|
|
36
|
+
queueId: z.ZodOptional<z.ZodString>;
|
|
37
|
+
wakeId: z.ZodString;
|
|
38
|
+
}, z.core.$strict>;
|
|
39
|
+
export type AdmittedWake = z.infer<typeof AdmittedWakeZod>;
|
|
40
|
+
/** Persisted-shape and content integrity check. Does not replace live HTTP admission. */
|
|
41
|
+
export declare function parseAdmittedWake(value: unknown): Promise<AdmittedWake>;
|
|
20
42
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAEvB,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkB3B,CAAA;AACD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAE1D,yFAAyF;AACzF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC,CAM7E"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ChainId, Hash, NormalizedAddress, WakeId, WakeJwtId } from '@xyo-network/event-kit-schemas';
|
|
2
|
+
/** Shared authenticated metadata; source positions do not participate in grant lag. */
|
|
3
|
+
export interface VerifiedAdmissionWake {
|
|
4
|
+
readonly audience: string;
|
|
5
|
+
readonly eventHash: Hash;
|
|
6
|
+
readonly expiresAt: number;
|
|
7
|
+
readonly jwtId: WakeJwtId;
|
|
8
|
+
readonly publisher: NormalizedAddress;
|
|
9
|
+
readonly route: {
|
|
10
|
+
readonly audience: string;
|
|
11
|
+
readonly authorizationChainId: ChainId;
|
|
12
|
+
readonly controller: NormalizedAddress;
|
|
13
|
+
readonly deploymentId: string;
|
|
14
|
+
readonly filterHash: Hash;
|
|
15
|
+
readonly maxGrantLagBlocks: number;
|
|
16
|
+
readonly queueId?: string;
|
|
17
|
+
readonly sourceHash: Hash;
|
|
18
|
+
readonly subscriptionHash: Hash;
|
|
19
|
+
};
|
|
20
|
+
readonly wakeId: WakeId;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=verifiedAdmissionWake.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifiedAdmissionWake.d.ts","sourceRoot":"","sources":["../../src/verifiedAdmissionWake.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EACJ,iBAAiB,EACjB,MAAM,EACN,SAAS,EACV,MAAM,gCAAgC,CAAA;AAEvC,uFAAuF;AACvF,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAA;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAA;IACzB,QAAQ,CAAC,SAAS,EAAE,iBAAiB,CAAA;IACrC,QAAQ,CAAC,KAAK,EAAE;QACd,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;QACzB,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAA;QACtC,QAAQ,CAAC,UAAU,EAAE,iBAAiB,CAAA;QACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;QAC7B,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAA;QACzB,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAA;QAClC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;QACzB,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAA;QACzB,QAAQ,CAAC,gBAAgB,EAAE,IAAI,CAAA;KAChC,CAAA;IACD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CACxB"}
|
|
@@ -1,41 +1,55 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Hash, WakeEnvelope } from '@xyo-network/event-kit-schemas';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import type { VerifiedAdmissionWake } from './verifiedAdmissionWake.ts';
|
|
2
4
|
/** D-002 maximum accepted JWT lifetime. */
|
|
3
5
|
export declare const EVENT_KIT_MAX_JWT_LIFETIME_SECONDS = 300;
|
|
4
6
|
/** D-002 maximum accepted publisher clock lead. */
|
|
5
7
|
export declare const EVENT_KIT_MAX_FUTURE_IAT_SECONDS = 60;
|
|
6
|
-
export
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
export declare const WakeAdmissionRouteZod: z.ZodObject<{
|
|
9
|
+
audience: z.ZodString;
|
|
10
|
+
authorizationChainId: z.ZodString;
|
|
11
|
+
controller: z.ZodString;
|
|
12
|
+
deploymentId: z.ZodString;
|
|
13
|
+
queueId: z.ZodOptional<z.ZodString>;
|
|
14
|
+
source: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
15
|
+
kind: z.ZodLiteral<"xl1-finalized">;
|
|
16
|
+
chainId: z.ZodString;
|
|
17
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
18
|
+
kind: z.ZodLiteral<"ethereum-finalized">;
|
|
19
|
+
chainId: z.ZodString;
|
|
20
|
+
genesisHash: z.ZodString;
|
|
21
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
22
|
+
kind: z.ZodLiteral<"utc-interval">;
|
|
23
|
+
scheduleId: z.ZodString;
|
|
24
|
+
anchorSeconds: z.ZodNumber;
|
|
25
|
+
intervalSeconds: z.ZodNumber;
|
|
26
|
+
}, z.core.$strict>], "kind">;
|
|
27
|
+
filterHash: z.ZodString;
|
|
28
|
+
subscriptionHash: z.ZodString;
|
|
29
|
+
fromPosition: z.ZodNumber;
|
|
30
|
+
maxPositionsPerWake: z.ZodNumber;
|
|
31
|
+
maxGrantLagBlocks: z.ZodNumber;
|
|
32
|
+
}, z.core.$strict>;
|
|
33
|
+
export type WakeAdmissionRoute = z.infer<typeof WakeAdmissionRouteZod>;
|
|
34
|
+
export type VerifyWakeRequestRejectionReason = 'configuration-invalid' | 'event-hash-failed' | 'event-hash-mismatch' | 'event-malformed' | 'event-target-mismatch' | 'range-invalid' | 'range-too-large' | 'wake-id-invalid' | 'jwt-audience-mismatch' | 'jwt-claims-invalid' | 'jwt-expired' | 'jwt-future-iat' | 'jwt-header-invalid' | 'jwt-identity-invalid' | 'jwt-invalid' | 'jwt-lifetime-invalid' | 'jwt-malformed' | 'jwt-nbf-not-allowed' | 'jwt-schema-mismatch' | 'event-source-mismatch' | 'event-authorization-chain-mismatch' | 'event-filter-mismatch' | 'range-before-floor';
|
|
35
|
+
export interface VerifiedWakeRequest extends VerifiedAdmissionWake {
|
|
36
|
+
readonly deploymentId: string;
|
|
37
|
+
readonly event: WakeEnvelope;
|
|
38
|
+
readonly fromPosition: number;
|
|
39
|
+
readonly issuedAt: number;
|
|
12
40
|
readonly queueId?: string;
|
|
41
|
+
readonly route: WakeAdmissionRoute & {
|
|
42
|
+
readonly sourceHash: Hash;
|
|
43
|
+
};
|
|
44
|
+
readonly toPosition: number;
|
|
45
|
+
readonly tokenIssuedAt: number;
|
|
13
46
|
}
|
|
14
47
|
export interface VerifyWakeRequestInput {
|
|
15
|
-
/** Already JSON-decoded request body. Wrappers and companion credential fields are rejected. */
|
|
16
48
|
readonly body: unknown;
|
|
17
49
|
readonly jwt: string;
|
|
18
|
-
/** Trusted request-receive clock, supplied explicitly to keep verification deterministic. */
|
|
19
50
|
readonly nowSeconds: number;
|
|
20
51
|
readonly route: WakeAdmissionRoute;
|
|
21
52
|
}
|
|
22
|
-
export type VerifyWakeRequestRejectionReason = 'configuration-invalid' | 'event-hash-failed' | 'event-hash-mismatch' | 'event-malformed' | 'event-target-mismatch' | 'range-invalid' | 'range-too-large' | 'wake-id-invalid' | 'jwt-audience-mismatch' | 'jwt-claims-invalid' | 'jwt-expired' | 'jwt-future-iat' | 'jwt-header-invalid' | 'jwt-identity-invalid' | 'jwt-invalid' | 'jwt-lifetime-invalid' | 'jwt-malformed' | 'jwt-nbf-not-allowed' | 'jwt-schema-mismatch';
|
|
23
|
-
export interface VerifiedWakeRequest {
|
|
24
|
-
readonly audience: WakeJwtAudience;
|
|
25
|
-
readonly deploymentId: DeploymentId;
|
|
26
|
-
readonly event: Readonly<WakeEnvelope>;
|
|
27
|
-
readonly eventHash: Hash;
|
|
28
|
-
readonly expiresAt: number;
|
|
29
|
-
readonly fromBlock: number;
|
|
30
|
-
readonly issuedAt: number;
|
|
31
|
-
readonly jwtId: WakeJwtId;
|
|
32
|
-
readonly publisher: NormalizedAddress;
|
|
33
|
-
readonly queueId?: string;
|
|
34
|
-
readonly route: WakeAdmissionRoute;
|
|
35
|
-
readonly toBlock: number;
|
|
36
|
-
readonly tokenIssuedAt: number;
|
|
37
|
-
readonly wakeId: WakeId;
|
|
38
|
-
}
|
|
39
53
|
export interface VerifyWakeRequestSuccess {
|
|
40
54
|
readonly ok: true;
|
|
41
55
|
readonly verified: VerifiedWakeRequest;
|
|
@@ -46,9 +60,6 @@ export interface VerifyWakeRequestFailure {
|
|
|
46
60
|
readonly reason: VerifyWakeRequestRejectionReason;
|
|
47
61
|
}
|
|
48
62
|
export type VerifyWakeRequestResult = VerifyWakeRequestFailure | VerifyWakeRequestSuccess;
|
|
49
|
-
/**
|
|
50
|
-
* Verifies the cryptographic and request-shape portion of D-002 without grant,
|
|
51
|
-
* replay, queue, reducer, or XL1 I/O.
|
|
52
|
-
*/
|
|
63
|
+
/** Source-aware strict Payload verification, reusing the exact D-002 JWT verifier. */
|
|
53
64
|
export declare function verifyWakeRequest(input: VerifyWakeRequestInput): Promise<VerifyWakeRequestResult>;
|
|
54
65
|
//# sourceMappingURL=verifyWakeRequest.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verifyWakeRequest.d.ts","sourceRoot":"","sources":["../../src/verifyWakeRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"verifyWakeRequest.d.ts","sourceRoot":"","sources":["../../src/verifyWakeRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EAEJ,YAAY,EAIb,MAAM,gCAAgC,CAAA;AAyBvC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAOvB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAEvE,2CAA2C;AAC3C,eAAO,MAAM,kCAAkC,MAAM,CAAA;AACrD,mDAAmD;AACnD,eAAO,MAAM,gCAAgC,KAAK,CAAA;AAElD,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;kBAYhC,CAAA;AACF,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEtE,MAAM,MAAM,gCAAgC,GACtC,uBAAuB,GACvB,mBAAmB,GACnB,qBAAqB,GACrB,iBAAiB,GACjB,uBAAuB,GACvB,eAAe,GACf,iBAAiB,GACjB,iBAAiB,GACjB,uBAAuB,GACvB,oBAAoB,GACpB,aAAa,GACb,gBAAgB,GAChB,oBAAoB,GACpB,sBAAsB,GACtB,aAAa,GACb,sBAAsB,GACtB,eAAe,GACf,qBAAqB,GACrB,qBAAqB,GACrB,uBAAuB,GACvB,oCAAoC,GACpC,uBAAuB,GACvB,oBAAoB,CAAA;AAE1B,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAChE,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAA;IAC5B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG;QAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAA;KAAE,CAAA;IAClE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAC/B;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;IACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;IAC3B,QAAQ,CAAC,KAAK,EAAE,kBAAkB,CAAA;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAA;IACjB,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,CAAA;CACvC;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAA;IACpC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAA;IAClB,QAAQ,CAAC,MAAM,EAAE,gCAAgC,CAAA;CAClD;AAED,MAAM,MAAM,uBAAuB,GAAG,wBAAwB,GAAG,wBAAwB,CAAA;AAqBzF,sFAAsF;AACtF,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAyDvG"}
|
|
@@ -7,12 +7,12 @@ import type { AdmittedWake } from './types.ts';
|
|
|
7
7
|
* lease-based rather than push-based: a fire-and-forget handoff has no way to
|
|
8
8
|
* reclaim work whose consumer never finished.
|
|
9
9
|
*/
|
|
10
|
-
export interface LeasedWake {
|
|
10
|
+
export interface LeasedWake<TWake = AdmittedWake> {
|
|
11
11
|
/** Removes the entry permanently. Call only once the handler committed. */
|
|
12
12
|
readonly ack: () => Promise<void>;
|
|
13
13
|
/** Returns the entry for another attempt. */
|
|
14
14
|
readonly release: () => Promise<void>;
|
|
15
|
-
readonly wake:
|
|
15
|
+
readonly wake: TWake;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Provider-agnostic durable wake queue.
|
|
@@ -24,11 +24,11 @@ export interface LeasedWake {
|
|
|
24
24
|
* Every implementation must satisfy the shared conformance suite in
|
|
25
25
|
* `@xyo-network/event-kit-testing`.
|
|
26
26
|
*/
|
|
27
|
-
export interface WakeQueue {
|
|
27
|
+
export interface WakeQueue<TWake = AdmittedWake> {
|
|
28
28
|
/** Durably appends a wake. Resolves only once the entry survives a crash. */
|
|
29
|
-
append: (wake:
|
|
29
|
+
append: (wake: TWake) => Promise<void>;
|
|
30
30
|
/** Leases the next pending entry, or `undefined` when none remain. */
|
|
31
|
-
claim: () => Promise<LeasedWake | undefined>;
|
|
31
|
+
claim: () => Promise<LeasedWake<TWake> | undefined>;
|
|
32
32
|
/** Entries waiting to be claimed. Excludes leases already held. */
|
|
33
33
|
pendingCount: () => Promise<number>;
|
|
34
34
|
/**
|
|
@@ -37,7 +37,7 @@ export interface WakeQueue {
|
|
|
37
37
|
*/
|
|
38
38
|
recoverInflight: () => Promise<number>;
|
|
39
39
|
}
|
|
40
|
-
export type WakeHandler = (wake:
|
|
40
|
+
export type WakeHandler<TWake = AdmittedWake> = (wake: TWake) => Promise<void> | void;
|
|
41
41
|
/**
|
|
42
42
|
* Drains the queue serially until empty, acking each wake the handler accepts.
|
|
43
43
|
*
|
|
@@ -45,5 +45,5 @@ export type WakeHandler = (wake: AdmittedWake) => Promise<void> | void;
|
|
|
45
45
|
* dropped, and the error propagates. Push-style consumption composes over the
|
|
46
46
|
* lease port; the reverse does not.
|
|
47
47
|
*/
|
|
48
|
-
export declare function drainQueue(queue: WakeQueue
|
|
48
|
+
export declare function drainQueue<TWake = AdmittedWake>(queue: WakeQueue<TWake>, handler: WakeHandler<TWake>): Promise<number>;
|
|
49
49
|
//# sourceMappingURL=wakeQueue.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wakeQueue.d.ts","sourceRoot":"","sources":["../../src/wakeQueue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU;
|
|
1
|
+
{"version":3,"file":"wakeQueue.d.ts","sourceRoot":"","sources":["../../src/wakeQueue.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;GAOG;AACH,MAAM,WAAW,UAAU,CAAC,KAAK,GAAG,YAAY;IAC9C,2EAA2E;IAC3E,QAAQ,CAAC,GAAG,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;CACrB;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,SAAS,CAAC,KAAK,GAAG,YAAY;IAC7C,6EAA6E;IAC7E,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACtC,sEAAsE;IACtE,KAAK,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,CAAA;IACnD,mEAAmE;IACnE,YAAY,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;IACnC;;;OAGG;IACH,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAA;CACvC;AAED,MAAM,MAAM,WAAW,CAAC,KAAK,GAAG,YAAY,IAAI,CAAC,IAAI,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;AAErF;;;;;;GAMG;AACH,wBAAsB,UAAU,CAAC,KAAK,GAAG,YAAY,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAe5H"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wakeSubscriptionHpke.d.ts","sourceRoot":"","sources":["../../src/wakeSubscriptionHpke.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EACzB,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAA;AA0CvC,MAAM,WAAW,iCAAiC;IAChD,8EAA8E;IAC9E,UAAU,EAAE,gBAAgB,CAAA;IAC5B,6EAA6E;IAC7E,SAAS,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACxC,+DAA+D;IAC/D,aAAa,EAAE,IAAI,CAAA;IACnB,yDAAyD;IACzD,KAAK,EAAE,WAAW,CAAA;IAClB,kDAAkD;IAClD,SAAS,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,0BAA0B;IACzC,+DAA+D;IAC/D,aAAa,EAAE,IAAI,CAAA;IACnB,yDAAyD;IACzD,KAAK,EAAE,WAAW,CAAA;IAClB,8DAA8D;IAC9D,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,yBAAyB,CAAA;IACpC,YAAY,EAAE,yBAAyB,CAAA;IACvC,UAAU,EAAE,iBAAiB,CAAA;IAC7B,YAAY,EAAE,yBAAyB,CAAA;CACxC;AAED,MAAM,WAAW,4BAA4B;IAC3C,YAAY,EAAE,0BAA0B,CAAA;IACxC,UAAU,EAAE,iBAAiB,CAAA;IAC7B,YAAY,EAAE,yBAAyB,CAAA;CACxC;AAED,qFAAqF;AACrF,qBAAa,+BAAgC,SAAQ,KAAK;IACxD,SAAkB,IAAI,qCAAoC;;CAK3D;AAwBD,yFAAyF;AACzF,wBAAsB,yCAAyC,IAAI,OAAO,CAAC,iCAAiC,CAAC,CAW5G;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,yBAAyB,CAAC,CA0BpC;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,yBAAyB,CAAC,
|
|
1
|
+
{"version":3,"file":"wakeSubscriptionHpke.d.ts","sourceRoot":"","sources":["../../src/wakeSubscriptionHpke.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EACV,gBAAgB,EAChB,yBAAyB,EACzB,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EAC1B,MAAM,gCAAgC,CAAA;AA0CvC,MAAM,WAAW,iCAAiC;IAChD,8EAA8E;IAC9E,UAAU,EAAE,gBAAgB,CAAA;IAC5B,6EAA6E;IAC7E,SAAS,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,yBAAyB;IACxC,+DAA+D;IAC/D,aAAa,EAAE,IAAI,CAAA;IACnB,yDAAyD;IACzD,KAAK,EAAE,WAAW,CAAA;IAClB,kDAAkD;IAClD,SAAS,EAAE,gBAAgB,CAAA;CAC5B;AAED,MAAM,WAAW,0BAA0B;IACzC,+DAA+D;IAC/D,aAAa,EAAE,IAAI,CAAA;IACnB,yDAAyD;IACzD,KAAK,EAAE,WAAW,CAAA;IAClB,8DAA8D;IAC9D,UAAU,EAAE,gBAAgB,CAAA;CAC7B;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,yBAAyB,CAAA;IACpC,YAAY,EAAE,yBAAyB,CAAA;IACvC,UAAU,EAAE,iBAAiB,CAAA;IAC7B,YAAY,EAAE,yBAAyB,CAAA;CACxC;AAED,MAAM,WAAW,4BAA4B;IAC3C,YAAY,EAAE,0BAA0B,CAAA;IACxC,UAAU,EAAE,iBAAiB,CAAA;IAC7B,YAAY,EAAE,yBAAyB,CAAA;CACxC;AAED,qFAAqF;AACrF,qBAAa,+BAAgC,SAAQ,KAAK;IACxD,SAAkB,IAAI,qCAAoC;;CAK3D;AAwBD,yFAAyF;AACzF,wBAAsB,yCAAyC,IAAI,OAAO,CAAC,iCAAiC,CAAC,CAW5G;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,yBAAyB,CAAC,CA0BpC;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,yBAAyB,CAAC,CAyBpC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xyo-network/event-kit-protocol",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Wallet-JWT Payload verification and admission contracts for XL1 Event Kit",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"xyo",
|
|
@@ -34,15 +34,15 @@
|
|
|
34
34
|
],
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@hpke/core": "~1.9.0",
|
|
37
|
-
"@xyo-network/event-kit-schemas": "~0.1.
|
|
37
|
+
"@xyo-network/event-kit-schemas": "~0.1.3"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
|
-
"@ariestools/sdk": "~8.
|
|
40
|
+
"@ariestools/sdk": "~8.2.0",
|
|
41
41
|
"@ariestools/toolchain": "~9.1.2",
|
|
42
42
|
"@ariestools/tsconfig": "~9.1.2",
|
|
43
43
|
"@opentelemetry/api": "~1.9.1",
|
|
44
|
-
"@xyo-network/sdk": "~7.
|
|
45
|
-
"@xyo-network/sdk-protocol": "~7.
|
|
44
|
+
"@xyo-network/sdk": "~7.4.0",
|
|
45
|
+
"@xyo-network/sdk-protocol": "~7.4.2",
|
|
46
46
|
"eslint": "~10.9.1",
|
|
47
47
|
"eslint-import-resolver-typescript": "~4.4.5",
|
|
48
48
|
"typescript": "~6.0.3",
|
|
@@ -51,10 +51,10 @@
|
|
|
51
51
|
"zod": "~4.4.3"
|
|
52
52
|
},
|
|
53
53
|
"peerDependencies": {
|
|
54
|
-
"@ariestools/sdk": "^8.
|
|
54
|
+
"@ariestools/sdk": "^8.2",
|
|
55
55
|
"@opentelemetry/api": "^1.9",
|
|
56
|
-
"@xyo-network/sdk": "^7.
|
|
57
|
-
"@xyo-network/sdk-protocol": "^7.
|
|
56
|
+
"@xyo-network/sdk": "^7.4",
|
|
57
|
+
"@xyo-network/sdk-protocol": "^7.4",
|
|
58
58
|
"zod": "^4.4"
|
|
59
59
|
},
|
|
60
60
|
"engines": {
|