@xyo-network/event-kit-xl1 0.0.1 → 0.1.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 CHANGED
@@ -4,6 +4,9 @@ XL1 chain adapters for Event Kit.
4
4
 
5
5
  - `createXl1FinalizedHeadSource` — reads the finalized XL1 head for publisher
6
6
  filters and for the receiver's grant-freshness check
7
+ - `publishFinalizedStatements` — publishes Statement Graph claims through
8
+ explicit content-write, independent-readback, inclusion, and finality
9
+ boundaries
7
10
 
8
11
  ```ts
9
12
  const gateway = await new GatewayBuilder().name('local').rpcUrl(RPC).build()
@@ -14,6 +17,58 @@ The result satisfies both the publisher's `FinalizedHeadSource` and the
14
17
  receiver's `TrustedFinalizedHeadSource` — structurally identical ports, declared
15
18
  locally so this package depends on neither.
16
19
 
20
+ ## Finalized Statement Graph publication
21
+
22
+ `publishFinalizedStatements` accepts separate datalake writer and reader ports.
23
+ Production callers should supply independently constructed clients pointed at
24
+ the same shared public datalake.
25
+
26
+ ```ts
27
+ const result = await publishFinalizedStatements({
28
+ attachments: [challenge, response],
29
+ bodyReader: dataLakeViewer,
30
+ bodyWriter: dataLakeRunner,
31
+ journal,
32
+ operationId,
33
+ runner,
34
+ signer,
35
+ statements,
36
+ viewer,
37
+ })
38
+ ```
39
+
40
+ The candidate operation:
41
+
42
+ 1. prepares and validates the canonical Statement Graph transaction;
43
+ 2. requires exactly the challenge/response bodies named by claimed acceptance
44
+ objects, then inserts and independently reads them back;
45
+ 3. builds and signs the XL1 transaction and journals its exact evidence;
46
+ 4. verifies that signing changed only signatures/continuity metadata and did
47
+ not alter the signer, Claim source, payloads, order, or transaction intent;
48
+ 5. writes the exact signed transaction content to the writer;
49
+ 6. verifies that exact signed transaction content through the independent
50
+ reader before broadcasting;
51
+ 7. broadcasts the already-signed transaction;
52
+ 8. observes concrete transaction inclusion; and
53
+ 9. independently observes that inclusion becoming finalized.
54
+
55
+ The returned result contains the transaction hash, Statement Graph event
56
+ hashes, attachment hashes, inclusion evidence, and finalized block. Bounded
57
+ polling options control inclusion/finality observation.
58
+
59
+ `FinalizedStatementPublicationJournal.load` and `save` form the durability
60
+ boundary. The first `signed` record atomically binds the chain ID, Claim source,
61
+ operation ID, ordered event and attachment hashes, and exact signed transaction.
62
+ Later records commit `content-written`, `content-verified`, `broadcast`,
63
+ `included`, and `finalized`. A restart validates that binding and resumes the
64
+ highest phase. An uncertain broadcast may rebroadcast the exact signed evidence;
65
+ it never rebuilds or re-signs the transaction. A finalized retry returns the
66
+ same evidence without publishing again.
67
+
68
+ Operational callers should use the filesystem journal exported by
69
+ `@xyo-network/event-kit-node/handshake` or another atomic implementation. The
70
+ package's memory journal is a structural test fixture only.
71
+
17
72
  ## Why it validates rather than forwards
18
73
 
19
74
  Both sides treat this number as trusted: the publisher decides which range to
@@ -35,8 +90,28 @@ Offline specs cover the validation and regression guard. Live specs under
35
90
  `api-local` vitest project: the head reads conforming, advances through real
36
91
  block production, and never regresses.
37
92
 
93
+ Separate offline publisher specs verify publication phase ordering, refusal to
94
+ broadcast after independent datalake verification fails, exact acceptance
95
+ attachment binding, refusal of signer-mutated transaction content, bounded
96
+ polling until finalized evidence appears, lossless safe block conversion, and
97
+ exact agreement between inclusion and finality evidence. Those focused specs
98
+ mock the XL1 transaction and datalake helpers.
99
+
100
+ The accepted Gate 2 live handshake in
101
+ `@xyo-network/event-kit-statement-graph` calls the same
102
+ `publishFinalizedStatements` helper with a real `apiLocal` XL1 runner/viewer and
103
+ separately constructed XL1 SDK REST writer/reader clients. Their endpoint is a
104
+ filesystem-backed datalake server running in a child process. With Statement
105
+ Graph `0.5.0`, xyo-chain `5.3.0`, and XL1 protocol/SDK `5.4.0`, that run places
106
+ subject-bearing Claims in the elevated payload slot, passes consensus
107
+ validation, and scans the Claim bodies from finalized block carriers.
108
+
38
109
  Run them with `pnpm test:live` from the repository root. They are opt-in — the
39
110
  default suite stays offline.
40
111
 
41
- This qualifies the adapter against a local dev chain, which uses simplified dev
42
- consensus and in-memory storage. It is not Sequence or mainnet qualification.
112
+ The finalized-head adapter and elevated-Claim publication path are qualified
113
+ against the local dev chain. The datalake is still a loopback test process
114
+ rather than a hosted network service. These package-level tests do not qualify
115
+ a hosted shared public datalake, Sequence, Mainnet, Proxmox, multi-VM
116
+ operation, or production delivery; the public CLI has separate local and
117
+ packed-consumer evidence under roadmap Gate 3.
@@ -0,0 +1,66 @@
1
+ import type { Payload } from '@xyo-network/sdk';
2
+ import type { BlockViewer, DataLakeRunner, DataLakeViewer, SignedXl1TransactionEvidence, TransactionInclusion, TransactionOptions, Xl1TransactionBuildViewer, Xl1TransactionSigner, XyoRunner } from '@xyo-network/xl1-sdk';
3
+ import type { StatementToPublish } from '@xyo-network/xl1-statement-graph-sdk';
4
+ export { createMemoryFinalizedStatementPublicationJournal } from './memoryFinalizedStatementPublicationJournal.ts';
5
+ export type FinalizedStatementPublicationPhase = 'broadcast' | 'content-verified' | 'content-written' | 'finalized' | 'included' | 'signed';
6
+ export interface FinalizedStatementPublicationRecord {
7
+ readonly attachmentHashes: readonly string[];
8
+ readonly chainId: string;
9
+ readonly eventHashes: readonly string[];
10
+ readonly evidence: SignedXl1TransactionEvidence;
11
+ readonly inclusion?: TransactionInclusion;
12
+ readonly operationId: string;
13
+ readonly phase: FinalizedStatementPublicationPhase;
14
+ readonly source: string;
15
+ }
16
+ export interface FinalizedStatementPublicationIntent {
17
+ readonly attachmentHashes: readonly string[];
18
+ readonly chainId: string;
19
+ readonly eventHashes: readonly string[];
20
+ readonly operationId: string;
21
+ readonly source: string;
22
+ }
23
+ export interface FinalizedStatementPublicationJournal {
24
+ /** Loads the highest durable phase; save must durably commit before resolving. */
25
+ load(intent: FinalizedStatementPublicationIntent): Promise<FinalizedStatementPublicationRecord | undefined>;
26
+ save(record: FinalizedStatementPublicationRecord): Promise<void>;
27
+ }
28
+ export interface FinalizedStatementPublicationPolling {
29
+ readonly attempts?: number;
30
+ readonly delayMs?: number;
31
+ readonly wait?: (delayMs: number) => Promise<void>;
32
+ }
33
+ export interface FinalizedStatementPublicationOptions {
34
+ /** Exact challenge/response bodies referenced by claimed wake-subscription acceptances. */
35
+ readonly attachments?: readonly Payload[];
36
+ readonly bodyReader: Pick<DataLakeViewer, 'get'>;
37
+ readonly bodyWriter: Pick<DataLakeRunner, 'insert'>;
38
+ readonly broadcast?: TransactionOptions;
39
+ readonly expectedChainId?: string;
40
+ readonly expectedSource?: string;
41
+ readonly journal: FinalizedStatementPublicationJournal;
42
+ /** A source may never reuse this id for a different ordered event/attachment intent. */
43
+ readonly operationId: string;
44
+ readonly polling?: FinalizedStatementPublicationPolling;
45
+ readonly runner: Pick<XyoRunner, 'broadcastTransaction'>;
46
+ readonly signer: Xl1TransactionSigner;
47
+ readonly statements: readonly StatementToPublish[];
48
+ readonly viewer: Xl1TransactionBuildViewer & {
49
+ readonly block: Pick<BlockViewer, 'blockByHash' | 'blockByTransactionHash'>;
50
+ };
51
+ }
52
+ export interface FinalizedStatementPublicationResult {
53
+ readonly attachmentHashes: readonly string[];
54
+ readonly eventHashes: readonly string[];
55
+ readonly evidence: SignedXl1TransactionEvidence;
56
+ readonly finalizedBlock: number;
57
+ readonly inclusion: TransactionInclusion;
58
+ readonly transactionHash: string;
59
+ }
60
+ /**
61
+ * Publishes one Statement Graph transaction through explicit crash boundaries:
62
+ * prepare/sign, write all exact content, independently read it back, broadcast,
63
+ * observe inclusion, and independently recheck finality.
64
+ */
65
+ export declare function publishFinalizedStatements(options: FinalizedStatementPublicationOptions): Promise<FinalizedStatementPublicationResult>;
66
+ //# sourceMappingURL=finalizedStatementPublication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalizedStatementPublication.d.ts","sourceRoot":"","sources":["../../src/finalizedStatementPublication.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,91 @@
1
+ import type { EncryptedWakeSubscription, EndpointChallenge, EndpointChallengeResponse, PublisherEncryptionKey, PublisherEncryptionKeyRevocation, PublisherService, PublisherServiceRevocation, WakeGrantObject, WakeGrantRevocation, WakeSubscriptionAcceptance, WakeSubscriptionAcceptanceRevocation, WakeSubscriptionRevocation } from '@xyo-network/event-kit-schemas';
2
+ import type { StatementToPublish } from '@xyo-network/xl1-statement-graph-sdk';
3
+ import type { FinalizedStatementPublicationOptions, FinalizedStatementPublicationResult } from './finalizedStatementPublication.ts';
4
+ import type { EventKitNetworkSession } from './networkSession.ts';
5
+ export type HandshakePublicationTransport = Omit<FinalizedStatementPublicationOptions, 'attachments' | 'expectedChainId' | 'expectedSource' | 'operationId' | 'statements'> & {
6
+ readonly session: EventKitNetworkSession;
7
+ };
8
+ type HandshakePublicationOperationTransport = HandshakePublicationTransport & Pick<FinalizedStatementPublicationOptions, 'operationId'>;
9
+ interface PublishedObjectIdentityBase {
10
+ readonly objectHash: string;
11
+ readonly schema: string;
12
+ }
13
+ export type PublishedHandshakeObjectIdentity = PublishedObjectIdentityBase & {
14
+ readonly kind: 'publisher-service';
15
+ readonly revision: number;
16
+ readonly serviceId: string;
17
+ } | PublishedObjectIdentityBase & {
18
+ readonly keyId: string;
19
+ readonly kind: 'publisher-encryption-key';
20
+ } | PublishedObjectIdentityBase & {
21
+ readonly deploymentId: string;
22
+ readonly grantId: string;
23
+ readonly kind: 'wake-grant';
24
+ } | PublishedObjectIdentityBase & {
25
+ readonly kind: 'wake-subscription';
26
+ readonly revision: number;
27
+ readonly subscriptionId: string;
28
+ } | PublishedObjectIdentityBase & {
29
+ readonly challenge: string;
30
+ readonly kind: 'wake-subscription-acceptance';
31
+ readonly response: string;
32
+ readonly subscription: string;
33
+ } | PublishedObjectIdentityBase & {
34
+ readonly kind: 'publisher-encryption-key-revocation' | 'publisher-service-revocation' | 'wake-grant-revocation' | 'wake-subscription-acceptance-revocation' | 'wake-subscription-revocation';
35
+ readonly targetHash: string;
36
+ };
37
+ export interface HandshakePublicationResult extends FinalizedStatementPublicationResult {
38
+ readonly chainId: EventKitNetworkSession['chainId'];
39
+ readonly claim: StatementToPublish['event'];
40
+ readonly claimHash: string;
41
+ readonly network: EventKitNetworkSession['network'];
42
+ readonly objects: readonly PublishedHandshakeObjectIdentity[];
43
+ readonly source: string;
44
+ readonly subject: string;
45
+ }
46
+ export interface PublishPublisherServiceOptions extends HandshakePublicationOperationTransport {
47
+ /** Every descriptor referenced by service.encryptionKeys, in any order. */
48
+ readonly encryptionKeys: readonly PublisherEncryptionKey[];
49
+ readonly service: PublisherService;
50
+ }
51
+ export interface PublishWakeSubscriptionOptions extends HandshakePublicationOperationTransport {
52
+ readonly encryptionKey: PublisherEncryptionKey;
53
+ readonly grant: WakeGrantObject;
54
+ readonly service: PublisherService;
55
+ readonly subscription: EncryptedWakeSubscription;
56
+ }
57
+ export interface PublishWakeSubscriptionAcceptanceOptions extends HandshakePublicationOperationTransport {
58
+ readonly acceptance: WakeSubscriptionAcceptance;
59
+ readonly challenge: EndpointChallenge;
60
+ readonly response: EndpointChallengeResponse;
61
+ }
62
+ export interface PublishPublisherServiceRevocationOptions extends HandshakePublicationOperationTransport {
63
+ readonly revocation: PublisherServiceRevocation;
64
+ }
65
+ export interface PublishPublisherEncryptionKeyRevocationOptions extends HandshakePublicationOperationTransport {
66
+ readonly revocation: PublisherEncryptionKeyRevocation;
67
+ }
68
+ export interface PublishWakeSubscriptionRevocationOptions extends HandshakePublicationOperationTransport {
69
+ readonly publisher: string;
70
+ readonly revocation: WakeSubscriptionRevocation;
71
+ }
72
+ export interface PublishWakeGrantRevocationOptions extends HandshakePublicationOperationTransport {
73
+ readonly publisher: string;
74
+ readonly revocation: WakeGrantRevocation;
75
+ }
76
+ export interface PublishWakeSubscriptionAcceptanceRevocationOptions extends HandshakePublicationOperationTransport {
77
+ readonly revocation: WakeSubscriptionAcceptanceRevocation;
78
+ }
79
+ /** Publishes one atomic publisher-authored service revision and all key descriptors it names. */
80
+ export declare function publishPublisherService(options: PublishPublisherServiceOptions): Promise<HandshakePublicationResult>;
81
+ /** Publishes the subscriber's exact service/grant/encrypted-subscription same-Claim fan. */
82
+ export declare function publishWakeSubscription(options: PublishWakeSubscriptionOptions): Promise<HandshakePublicationResult>;
83
+ /** Publishes publisher acceptance and retains the exact successful challenge/response bodies first. */
84
+ export declare function publishWakeSubscriptionAcceptance(options: PublishWakeSubscriptionAcceptanceOptions): Promise<HandshakePublicationResult>;
85
+ export declare function publishPublisherServiceRevocation(options: PublishPublisherServiceRevocationOptions): Promise<HandshakePublicationResult>;
86
+ export declare function publishPublisherEncryptionKeyRevocation(options: PublishPublisherEncryptionKeyRevocationOptions): Promise<HandshakePublicationResult>;
87
+ export declare function publishWakeSubscriptionRevocation(options: PublishWakeSubscriptionRevocationOptions): Promise<HandshakePublicationResult>;
88
+ export declare function publishWakeGrantRevocation(options: PublishWakeGrantRevocationOptions): Promise<HandshakePublicationResult>;
89
+ export declare function publishWakeSubscriptionAcceptanceRevocation(options: PublishWakeSubscriptionAcceptanceRevocationOptions): Promise<HandshakePublicationResult>;
90
+ export {};
91
+ //# sourceMappingURL=handshakePublication.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handshakePublication.d.ts","sourceRoot":"","sources":["../../src/handshakePublication.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,9 @@
1
1
  export type { FinalizedHeadReader, Xl1FinalizationViewer, Xl1FinalizedHeadSourceOptions, } from './finalizedHeadSource.ts';
2
2
  export { createXl1FinalizedHeadSource } from './finalizedHeadSource.ts';
3
+ export type { FinalizedStatementPublicationIntent, FinalizedStatementPublicationJournal, FinalizedStatementPublicationOptions, FinalizedStatementPublicationPhase, FinalizedStatementPublicationPolling, FinalizedStatementPublicationRecord, FinalizedStatementPublicationResult, } from './finalizedStatementPublication.ts';
4
+ export { createMemoryFinalizedStatementPublicationJournal, publishFinalizedStatements, } from './finalizedStatementPublication.ts';
5
+ export type { HandshakePublicationResult, HandshakePublicationTransport, PublishedHandshakeObjectIdentity, PublishPublisherEncryptionKeyRevocationOptions, PublishPublisherServiceOptions, PublishPublisherServiceRevocationOptions, PublishWakeGrantRevocationOptions, PublishWakeSubscriptionAcceptanceOptions, PublishWakeSubscriptionAcceptanceRevocationOptions, PublishWakeSubscriptionOptions, PublishWakeSubscriptionRevocationOptions, } from './handshakePublication.ts';
6
+ export { publishPublisherEncryptionKeyRevocation, publishPublisherService, publishPublisherServiceRevocation, publishWakeGrantRevocation, publishWakeSubscription, publishWakeSubscriptionAcceptance, publishWakeSubscriptionAcceptanceRevocation, publishWakeSubscriptionRevocation, } from './handshakePublication.ts';
7
+ export type { EventKitChainIdViewer, EventKitNetworkId, EventKitNetworkResolution, EventKitNetworkSession, PinEventKitNetworkSessionOptions, ResolveEventKitNetworkOptions, } from './networkSession.ts';
8
+ export { assertEventKitNetworkSession, assertEventKitNetworkWrite, EVENT_KIT_NETWORK_IDS, pinEventKitNetworkSession, resolveEventKitNetwork, } from './networkSession.ts';
3
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,6BAA6B,GAC9B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAA;AACvE,YAAY,EACV,mCAAmC,EACnC,oCAAoC,EACpC,oCAAoC,EACpC,kCAAkC,EAClC,oCAAoC,EACpC,mCAAmC,EACnC,mCAAmC,GACpC,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EACL,gDAAgD,EAChD,0BAA0B,GAC3B,MAAM,oCAAoC,CAAA;AAC3C,YAAY,EACV,0BAA0B,EAC1B,6BAA6B,EAC7B,gCAAgC,EAChC,8CAA8C,EAC9C,8BAA8B,EAC9B,wCAAwC,EACxC,iCAAiC,EACjC,wCAAwC,EACxC,kDAAkD,EAClD,8BAA8B,EAC9B,wCAAwC,GACzC,MAAM,2BAA2B,CAAA;AAClC,OAAO,EACL,uCAAuC,EACvC,uBAAuB,EACvB,iCAAiC,EACjC,0BAA0B,EAC1B,uBAAuB,EACvB,iCAAiC,EACjC,2CAA2C,EAC3C,iCAAiC,GAClC,MAAM,2BAA2B,CAAA;AAClC,YAAY,EACV,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,sBAAsB,EACtB,gCAAgC,EAChC,6BAA6B,GAC9B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EACL,4BAA4B,EAC5B,0BAA0B,EAC1B,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,GACvB,MAAM,qBAAqB,CAAA"}