@origintrail-official/dkg-agent 10.0.21 → 10.0.23
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/approved-private-replica-proof-runs.d.ts +40 -0
- package/dist/approved-private-replica-proof-runs.d.ts.map +1 -0
- package/dist/approved-private-replica-proof-runs.js +49 -0
- package/dist/approved-private-replica-proof-runs.js.map +1 -0
- package/dist/approved-private-replica.d.ts +18 -1
- package/dist/approved-private-replica.d.ts.map +1 -1
- package/dist/approved-private-replica.js +9 -3
- package/dist/approved-private-replica.js.map +1 -1
- package/dist/context-graph-chain-discovery-binding.d.ts +2 -0
- package/dist/context-graph-chain-discovery-binding.d.ts.map +1 -1
- package/dist/context-graph-chain-discovery-binding.js +7 -0
- package/dist/context-graph-chain-discovery-binding.js.map +1 -1
- package/dist/context-graph-dormant-identity.d.ts +8 -0
- package/dist/context-graph-dormant-identity.d.ts.map +1 -0
- package/dist/context-graph-dormant-identity.js +48 -0
- package/dist/context-graph-dormant-identity.js.map +1 -0
- package/dist/context-graph-meta-projection.d.ts +19 -55
- package/dist/context-graph-meta-projection.d.ts.map +1 -1
- package/dist/context-graph-meta-projection.js +94 -46
- package/dist/context-graph-meta-projection.js.map +1 -1
- package/dist/context-graph-name-binding-target.d.ts +21 -0
- package/dist/context-graph-name-binding-target.d.ts.map +1 -0
- package/dist/context-graph-name-binding-target.js +68 -0
- package/dist/context-graph-name-binding-target.js.map +1 -0
- package/dist/context-graph-persisted-name-aliases.d.ts +47 -0
- package/dist/context-graph-persisted-name-aliases.d.ts.map +1 -0
- package/dist/context-graph-persisted-name-aliases.js +173 -0
- package/dist/context-graph-persisted-name-aliases.js.map +1 -0
- package/dist/context-graph-read-authority.d.ts +26 -11
- package/dist/context-graph-read-authority.d.ts.map +1 -1
- package/dist/context-graph-read-authority.js +26 -2
- package/dist/context-graph-read-authority.js.map +1 -1
- package/dist/context-graph-subscription-authority-recovery.d.ts +4 -0
- package/dist/context-graph-subscription-authority-recovery.d.ts.map +1 -1
- package/dist/context-graph-subscription-authority-recovery.js +8 -2
- package/dist/context-graph-subscription-authority-recovery.js.map +1 -1
- package/dist/context-graph-subscription-policy.d.ts +34 -1
- package/dist/context-graph-subscription-policy.d.ts.map +1 -1
- package/dist/context-graph-subscription-policy.js +143 -1
- package/dist/context-graph-subscription-policy.js.map +1 -1
- package/dist/curator-meta-refresh.d.ts.map +1 -1
- package/dist/curator-meta-refresh.js +31 -9
- package/dist/curator-meta-refresh.js.map +1 -1
- package/dist/dkg-agent-base.d.ts.map +1 -1
- package/dist/dkg-agent-base.js +0 -1
- package/dist/dkg-agent-base.js.map +1 -1
- package/dist/dkg-agent-cg-name-resolution.d.ts +6 -24
- package/dist/dkg-agent-cg-name-resolution.d.ts.map +1 -1
- package/dist/dkg-agent-cg-name-resolution.js +42 -58
- package/dist/dkg-agent-cg-name-resolution.js.map +1 -1
- package/dist/dkg-agent-cg-on-chain-id.d.ts +3 -3
- package/dist/dkg-agent-cg-on-chain-id.d.ts.map +1 -1
- package/dist/dkg-agent-cg-on-chain-id.js +7 -23
- package/dist/dkg-agent-cg-on-chain-id.js.map +1 -1
- package/dist/dkg-agent-cg-registry.d.ts +7 -3
- package/dist/dkg-agent-cg-registry.d.ts.map +1 -1
- package/dist/dkg-agent-cg-registry.js +30 -16
- package/dist/dkg-agent-cg-registry.js.map +1 -1
- package/dist/dkg-agent-cg-resolve.d.ts +10 -6
- package/dist/dkg-agent-cg-resolve.d.ts.map +1 -1
- package/dist/dkg-agent-cg-resolve.js +16 -19
- package/dist/dkg-agent-cg-resolve.js.map +1 -1
- package/dist/dkg-agent-context-graph.d.ts.map +1 -1
- package/dist/dkg-agent-context-graph.js +0 -4
- package/dist/dkg-agent-context-graph.js.map +1 -1
- package/dist/dkg-agent-crypto.d.ts.map +1 -1
- package/dist/dkg-agent-crypto.js +53 -57
- package/dist/dkg-agent-crypto.js.map +1 -1
- package/dist/dkg-agent-lifecycle.d.ts +5 -0
- package/dist/dkg-agent-lifecycle.d.ts.map +1 -1
- package/dist/dkg-agent-lifecycle.js +156 -133
- package/dist/dkg-agent-lifecycle.js.map +1 -1
- package/dist/dkg-agent-publish.d.ts.map +1 -1
- package/dist/dkg-agent-publish.js +2 -3
- package/dist/dkg-agent-publish.js.map +1 -1
- package/dist/dkg-agent-query.d.ts.map +1 -1
- package/dist/dkg-agent-query.js +12 -9
- package/dist/dkg-agent-query.js.map +1 -1
- package/dist/dkg-agent-registered-private-empty-vm.d.ts +8 -0
- package/dist/dkg-agent-registered-private-empty-vm.d.ts.map +1 -1
- package/dist/dkg-agent-registered-private-empty-vm.js +15 -0
- package/dist/dkg-agent-registered-private-empty-vm.js.map +1 -1
- package/dist/dkg-agent-rfc64-catalog-auto-publish.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-catalog-auto-publish.js +4 -0
- package/dist/dkg-agent-rfc64-catalog-auto-publish.js.map +1 -1
- package/dist/dkg-agent-rfc64-catalog-upsert.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-catalog-upsert.js +7 -0
- package/dist/dkg-agent-rfc64-catalog-upsert.js.map +1 -1
- package/dist/dkg-agent-rfc64-catalog.d.ts +4 -0
- package/dist/dkg-agent-rfc64-catalog.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-catalog.js +12 -2
- package/dist/dkg-agent-rfc64-catalog.js.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.d.ts +2 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.js +23 -15
- package/dist/dkg-agent-rfc64-swm-catalog-projection-supervisor.js.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection.d.ts.map +1 -1
- package/dist/dkg-agent-rfc64-swm-catalog-projection.js +3 -0
- package/dist/dkg-agent-rfc64-swm-catalog-projection.js.map +1 -1
- package/dist/dkg-agent-swm-host.d.ts +13 -22
- package/dist/dkg-agent-swm-host.d.ts.map +1 -1
- package/dist/dkg-agent-swm-host.js +179 -81
- package/dist/dkg-agent-swm-host.js.map +1 -1
- package/dist/dkg-agent-swm-substrate.d.ts +2 -0
- package/dist/dkg-agent-swm-substrate.d.ts.map +1 -1
- package/dist/dkg-agent-swm-substrate.js +5 -9
- package/dist/dkg-agent-swm-substrate.js.map +1 -1
- package/dist/dkg-agent-types.d.ts +3 -2
- package/dist/dkg-agent-types.d.ts.map +1 -1
- package/dist/dkg-agent.d.ts +4 -10
- package/dist/dkg-agent.d.ts.map +1 -1
- package/dist/dkg-agent.js +43 -58
- package/dist/dkg-agent.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.d.ts +6 -1
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.d.ts.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.js +5 -5
- package/dist/internal/context-graph-authority/context-graph-agent-gate-authority.js.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-authority.d.ts +14 -1
- package/dist/internal/context-graph-authority/context-graph-authority.d.ts.map +1 -1
- package/dist/internal/context-graph-authority/context-graph-authority.js +19 -0
- package/dist/internal/context-graph-authority/context-graph-authority.js.map +1 -1
- package/dist/internal/context-graph-cache-invalidating-store.d.ts +10 -2
- package/dist/internal/context-graph-cache-invalidating-store.d.ts.map +1 -1
- package/dist/internal/context-graph-cache-invalidating-store.js +67 -67
- package/dist/internal/context-graph-cache-invalidating-store.js.map +1 -1
- package/dist/internal/context-graph-meta-record-copy.d.ts +1 -1
- package/dist/internal/context-graph-meta-record-copy.d.ts.map +1 -1
- package/dist/internal/context-graph-meta-record.d.ts +40 -0
- package/dist/internal/context-graph-meta-record.d.ts.map +1 -0
- package/dist/internal/context-graph-meta-record.js +3 -0
- package/dist/internal/context-graph-meta-record.js.map +1 -0
- package/dist/internal/peer-gate-revision.d.ts +28 -0
- package/dist/internal/peer-gate-revision.d.ts.map +1 -0
- package/dist/internal/peer-gate-revision.js +46 -0
- package/dist/internal/peer-gate-revision.js.map +1 -0
- package/dist/internal/projection-mutation-observer.d.ts +5 -0
- package/dist/internal/projection-mutation-observer.d.ts.map +1 -0
- package/dist/internal/projection-mutation-observer.js +24 -0
- package/dist/internal/projection-mutation-observer.js.map +1 -0
- package/dist/internal/promote/assertion-promote-precommit.d.ts +8 -6
- package/dist/internal/promote/assertion-promote-precommit.d.ts.map +1 -1
- package/dist/internal/promote/assertion-promote-precommit.js +8 -6
- package/dist/internal/promote/assertion-promote-precommit.js.map +1 -1
- package/dist/internal/recipient-key-route-fence.d.ts +57 -0
- package/dist/internal/recipient-key-route-fence.d.ts.map +1 -0
- package/dist/internal/recipient-key-route-fence.js +169 -0
- package/dist/internal/recipient-key-route-fence.js.map +1 -0
- package/dist/internal/store-mutation.d.ts +28 -0
- package/dist/internal/store-mutation.d.ts.map +1 -0
- package/dist/internal/store-mutation.js +3 -0
- package/dist/internal/store-mutation.js.map +1 -0
- package/dist/main-thread-time-slice.d.ts +19 -0
- package/dist/main-thread-time-slice.d.ts.map +1 -0
- package/dist/main-thread-time-slice.js +32 -0
- package/dist/main-thread-time-slice.js.map +1 -0
- package/dist/p2p/storage-ack-registrar.d.ts.map +1 -1
- package/dist/p2p/storage-ack-registrar.js +3 -5
- package/dist/p2p/storage-ack-registrar.js.map +1 -1
- package/dist/registered-context-graph-authority.d.ts +17 -0
- package/dist/registered-context-graph-authority.d.ts.map +1 -1
- package/dist/registered-private-empty-vm-attempt-v1.d.ts.map +1 -1
- package/dist/registered-private-empty-vm-attempt-v1.js +8 -4
- package/dist/registered-private-empty-vm-attempt-v1.js.map +1 -1
- package/dist/rfc64/catalog-repair-retry-v1.d.ts +9 -3
- package/dist/rfc64/catalog-repair-retry-v1.d.ts.map +1 -1
- package/dist/rfc64/catalog-repair-retry-v1.js +22 -6
- package/dist/rfc64/catalog-repair-retry-v1.js.map +1 -1
- package/dist/rfc64/control-envelope-signer-v1.d.ts +8 -0
- package/dist/rfc64/control-envelope-signer-v1.d.ts.map +1 -1
- package/dist/rfc64/control-envelope-signer-v1.js +20 -0
- package/dist/rfc64/control-envelope-signer-v1.js.map +1 -1
- package/dist/rfc64/legacy-swm-boundary-fence-v1.d.ts +109 -0
- package/dist/rfc64/legacy-swm-boundary-fence-v1.d.ts.map +1 -0
- package/dist/rfc64/legacy-swm-boundary-fence-v1.js +236 -0
- package/dist/rfc64/legacy-swm-boundary-fence-v1.js.map +1 -0
- package/dist/rfc64/legacy-swm-boundary-v1.d.ts +28 -1
- package/dist/rfc64/legacy-swm-boundary-v1.d.ts.map +1 -1
- package/dist/rfc64/legacy-swm-boundary-v1.js +74 -145
- package/dist/rfc64/legacy-swm-boundary-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-successor-producer-v1.d.ts +2 -0
- package/dist/rfc64/public-catalog-successor-producer-v1.d.ts.map +1 -1
- package/dist/rfc64/public-catalog-successor-producer-v1.js +77 -33
- package/dist/rfc64/public-catalog-successor-producer-v1.js.map +1 -1
- package/dist/rfc64/public-catalog-successor-row-binding-v1.d.ts +16 -0
- package/dist/rfc64/public-catalog-successor-row-binding-v1.d.ts.map +1 -0
- package/dist/rfc64/public-catalog-successor-row-binding-v1.js +28 -0
- package/dist/rfc64/public-catalog-successor-row-binding-v1.js.map +1 -0
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.d.ts +6 -0
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.d.ts.map +1 -1
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.js +9 -3
- package/dist/rfc64/swm-inventory-catalog-reconciler-v1.js.map +1 -1
- package/dist/rfc64/swm-inventory-settlement-outlook-v1.d.ts +8 -0
- package/dist/rfc64/swm-inventory-settlement-outlook-v1.d.ts.map +1 -0
- package/dist/rfc64/swm-inventory-settlement-outlook-v1.js +32 -0
- package/dist/rfc64/swm-inventory-settlement-outlook-v1.js.map +1 -0
- package/dist/sync/requester/swm-recovery-apply.d.ts +1 -1
- package/dist/sync/requester/swm-recovery-apply.d.ts.map +1 -1
- package/dist/sync/requester/swm-recovery-apply.js +0 -1
- package/dist/sync/requester/swm-recovery-apply.js.map +1 -1
- package/dist/sync/requester/swm-target-executor.d.ts +2 -2
- package/dist/sync/requester/swm-target-executor.d.ts.map +1 -1
- package/dist/sync/requester/swm-target-executor.js +1 -2
- package/dist/sync/requester/swm-target-executor.js.map +1 -1
- package/package.json +11 -8
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type ApprovedPrivateReplicaAuthorityResolution } from './approved-private-replica.js';
|
|
2
|
+
import type { DKGAgent } from './dkg-agent.js';
|
|
3
|
+
/** Runs of the local proof one decision may use: the first and two more. */
|
|
4
|
+
export declare const APPROVED_PRIVATE_REPLICA_PROOF_MAX_RUNS = 3;
|
|
5
|
+
/** Why a run said nothing about the member, so the proof may run again. */
|
|
6
|
+
export type ApprovedPrivateReplicaProofRerunCause = 'metadata-moved' | 'timeout';
|
|
7
|
+
export type ApprovedPrivateReplicaProofOutcome = Readonly<{
|
|
8
|
+
kind: 'proved';
|
|
9
|
+
resolution: ApprovedPrivateReplicaAuthorityResolution;
|
|
10
|
+
}>
|
|
11
|
+
/** A run read unmoved metadata to the end and found no current proof. */
|
|
12
|
+
| Readonly<{
|
|
13
|
+
kind: 'absent';
|
|
14
|
+
}>
|
|
15
|
+
/** Every run was discarded because the graph's metadata moved while it read. */
|
|
16
|
+
| Readonly<{
|
|
17
|
+
kind: 'metadata-moved';
|
|
18
|
+
}>;
|
|
19
|
+
/**
|
|
20
|
+
* Run the approved member's local proof for one decision, and run it again
|
|
21
|
+
* where a run said nothing about the member: its time limit ended it, or the
|
|
22
|
+
* graph's metadata revision moved under reads that otherwise all held.
|
|
23
|
+
*
|
|
24
|
+
* Nothing is relaxed. Each run is the complete proof under its own time limit
|
|
25
|
+
* and its own revision fence, the approval is read again before each run, and
|
|
26
|
+
* every run is held to the request generation the first one read. A run that
|
|
27
|
+
* finds anything else (no approval, another generation, a pending registration,
|
|
28
|
+
* a failed read) ends the decision exactly as a single run does: `absent`, or
|
|
29
|
+
* the error it threw. So does the last permitted run, whatever its cause.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveApprovedPrivateReplicaAuthorityWithinRuns(agent: DKGAgent, contextGraphId: string, approvedAgentAddress: string, fences: {
|
|
32
|
+
readonly approvalStillHolds: () => boolean;
|
|
33
|
+
readonly readMetadataRevision: () => string;
|
|
34
|
+
}, options: {
|
|
35
|
+
readonly timeoutMs: number;
|
|
36
|
+
readonly signal?: AbortSignal;
|
|
37
|
+
/** Told before each further run, for the log. */
|
|
38
|
+
readonly onRerun?: (cause: ApprovedPrivateReplicaProofRerunCause, run: number) => void;
|
|
39
|
+
}): Promise<ApprovedPrivateReplicaProofOutcome>;
|
|
40
|
+
//# sourceMappingURL=approved-private-replica-proof-runs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"approved-private-replica-proof-runs.d.ts","sourceRoot":"","sources":["../src/approved-private-replica-proof-runs.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,yCAAyC,EAC/C,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,4EAA4E;AAC5E,eAAO,MAAM,uCAAuC,IAAI,CAAC;AAEzD,2EAA2E;AAC3E,MAAM,MAAM,qCAAqC,GAAG,gBAAgB,GAAG,SAAS,CAAC;AAEjF,MAAM,MAAM,kCAAkC,GAC1C,QAAQ,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,UAAU,EAAE,yCAAyC,CAAA;CAAE,CAAC;AACrF,yEAAyE;GACvE,QAAQ,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,CAAC;AAC9B,gFAAgF;GAC9E,QAAQ,CAAC;IAAE,IAAI,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAAC;AAEzC;;;;;;;;;;;GAWG;AACH,wBAAsB,gDAAgD,CACpE,KAAK,EAAE,QAAQ,EACf,cAAc,EAAE,MAAM,EACtB,oBAAoB,EAAE,MAAM,EAC5B,MAAM,EAAE;IACN,QAAQ,CAAC,kBAAkB,EAAE,MAAM,OAAO,CAAC;IAC3C,QAAQ,CAAC,oBAAoB,EAAE,MAAM,MAAM,CAAC;CAC7C,EACD,OAAO,EAAE;IACP,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,qCAAqC,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CACxF,GACA,OAAO,CAAC,kCAAkC,CAAC,CAsC7C"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { resolveApprovedPrivateReplicaAuthority, } from './approved-private-replica.js';
|
|
3
|
+
import { isBoundedOperationTimeoutError, runBoundedOperation } from './bounded-operation.js';
|
|
4
|
+
/** Runs of the local proof one decision may use: the first and two more. */
|
|
5
|
+
export const APPROVED_PRIVATE_REPLICA_PROOF_MAX_RUNS = 3;
|
|
6
|
+
/**
|
|
7
|
+
* Run the approved member's local proof for one decision, and run it again
|
|
8
|
+
* where a run said nothing about the member: its time limit ended it, or the
|
|
9
|
+
* graph's metadata revision moved under reads that otherwise all held.
|
|
10
|
+
*
|
|
11
|
+
* Nothing is relaxed. Each run is the complete proof under its own time limit
|
|
12
|
+
* and its own revision fence, the approval is read again before each run, and
|
|
13
|
+
* every run is held to the request generation the first one read. A run that
|
|
14
|
+
* finds anything else (no approval, another generation, a pending registration,
|
|
15
|
+
* a failed read) ends the decision exactly as a single run does: `absent`, or
|
|
16
|
+
* the error it threw. So does the last permitted run, whatever its cause.
|
|
17
|
+
*/
|
|
18
|
+
export async function resolveApprovedPrivateReplicaAuthorityWithinRuns(agent, contextGraphId, approvedAgentAddress, fences, options) {
|
|
19
|
+
let requestGeneration;
|
|
20
|
+
const acceptsRequestGeneration = (observed) => ((requestGeneration ??= observed) === observed);
|
|
21
|
+
for (let run = 1;; run += 1) {
|
|
22
|
+
const metadataRevision = fences.readMetadataRevision();
|
|
23
|
+
let metadataMoved = false;
|
|
24
|
+
let timeout;
|
|
25
|
+
try {
|
|
26
|
+
const resolution = await runBoundedOperation((signal) => resolveApprovedPrivateReplicaAuthority(agent, contextGraphId, approvedAgentAddress, fences.approvalStillHolds, () => fences.readMetadataRevision() === metadataRevision, signal, { acceptsRequestGeneration, metadataMoved: () => { metadataMoved = true; } }), {
|
|
27
|
+
label: `resolveApprovedPrivateReplicaAuthority(${contextGraphId})`,
|
|
28
|
+
timeoutMs: options.timeoutMs,
|
|
29
|
+
signal: options.signal,
|
|
30
|
+
});
|
|
31
|
+
if (resolution !== null)
|
|
32
|
+
return { kind: 'proved', resolution };
|
|
33
|
+
if (!metadataMoved)
|
|
34
|
+
return { kind: 'absent' };
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
if (!isBoundedOperationTimeoutError(error))
|
|
38
|
+
throw error;
|
|
39
|
+
timeout = error;
|
|
40
|
+
}
|
|
41
|
+
if (run >= APPROVED_PRIVATE_REPLICA_PROOF_MAX_RUNS || !fences.approvalStillHolds()) {
|
|
42
|
+
if (timeout !== undefined)
|
|
43
|
+
throw timeout;
|
|
44
|
+
return { kind: 'metadata-moved' };
|
|
45
|
+
}
|
|
46
|
+
options.onRerun?.(timeout === undefined ? 'metadata-moved' : 'timeout', run + 1);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=approved-private-replica-proof-runs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"approved-private-replica-proof-runs.js","sourceRoot":"","sources":["../src/approved-private-replica-proof-runs.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EACL,sCAAsC,GAEvC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,8BAA8B,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7F,4EAA4E;AAC5E,MAAM,CAAC,MAAM,uCAAuC,GAAG,CAAC,CAAC;AAYzD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,gDAAgD,CACpE,KAAe,EACf,cAAsB,EACtB,oBAA4B,EAC5B,MAGC,EACD,OAKC;IAED,IAAI,iBAAqC,CAAC;IAC1C,MAAM,wBAAwB,GAAG,CAAC,QAAgB,EAAW,EAAE,CAAC,CAC9D,CAAC,iBAAiB,KAAK,QAAQ,CAAC,KAAK,QAAQ,CAC9C,CAAC;IACF,KAAK,IAAI,GAAG,GAAG,CAAC,GAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAC7B,MAAM,gBAAgB,GAAG,MAAM,CAAC,oBAAoB,EAAE,CAAC;QACvD,IAAI,aAAa,GAAG,KAAK,CAAC;QAC1B,IAAI,OAAgB,CAAC;QACrB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAC1C,CAAC,MAAM,EAAE,EAAE,CAAC,sCAAsC,CAChD,KAAK,EACL,cAAc,EACd,oBAAoB,EACpB,MAAM,CAAC,kBAAkB,EACzB,GAAG,EAAE,CAAC,MAAM,CAAC,oBAAoB,EAAE,KAAK,gBAAgB,EACxD,MAAM,EACN,EAAE,wBAAwB,EAAE,aAAa,EAAE,GAAG,EAAE,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,CAC7E,EACD;gBACE,KAAK,EAAE,0CAA0C,cAAc,GAAG;gBAClE,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB,CACF,CAAC;YACF,IAAI,UAAU,KAAK,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;YAC/D,IAAI,CAAC,aAAa;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QAChD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YACxD,OAAO,GAAG,KAAK,CAAC;QAClB,CAAC;QACD,IAAI,GAAG,IAAI,uCAAuC,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACnF,IAAI,OAAO,KAAK,SAAS;gBAAE,MAAM,OAAO,CAAC;YACzC,OAAO,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;QACpC,CAAC;QACD,OAAO,CAAC,OAAO,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACnF,CAAC;AACH,CAAC"}
|
|
@@ -43,6 +43,23 @@ export type ApprovedPrivateReplicaAuthorityResolution = Readonly<{
|
|
|
43
43
|
onChainId: string;
|
|
44
44
|
authority: ApprovedPrivateReplicaAuthority;
|
|
45
45
|
}>;
|
|
46
|
+
/**
|
|
47
|
+
* Hooks for a caller that may run the proof again for the same decision. Both
|
|
48
|
+
* can only take a result away from a run; neither can add one.
|
|
49
|
+
*/
|
|
50
|
+
export interface ApprovedPrivateReplicaProofRun {
|
|
51
|
+
/**
|
|
52
|
+
* Called with the generation of the approved request the run starts from.
|
|
53
|
+
* `false` ends the run without a proof, which is how every run of one
|
|
54
|
+
* decision is held to the generation the first one read.
|
|
55
|
+
*/
|
|
56
|
+
acceptsRequestGeneration(requestGeneration: string): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Called when a run is discarded for a moved metadata revision and nothing
|
|
59
|
+
* else: every check before that one held.
|
|
60
|
+
*/
|
|
61
|
+
metadataMoved(): void;
|
|
62
|
+
}
|
|
46
63
|
/**
|
|
47
64
|
* Resolve the current authority proved by a durable approved private join.
|
|
48
65
|
*
|
|
@@ -50,5 +67,5 @@ export type ApprovedPrivateReplicaAuthorityResolution = Readonly<{
|
|
|
50
67
|
* source-qualified private roster. Callers must independently establish exact
|
|
51
68
|
* finalized chain-name absence before treating the graph as unregistered.
|
|
52
69
|
*/
|
|
53
|
-
export declare function resolveApprovedPrivateReplicaAuthority(agent: DKGAgent, contextGraphId: string, approvedAgentAddress: string | undefined, approvalStillHolds: () => boolean, metadataStillCurrent: () => boolean, signal?: AbortSignal): Promise<ApprovedPrivateReplicaAuthorityResolution | null>;
|
|
70
|
+
export declare function resolveApprovedPrivateReplicaAuthority(agent: DKGAgent, contextGraphId: string, approvedAgentAddress: string | undefined, approvalStillHolds: () => boolean, metadataStillCurrent: () => boolean, signal?: AbortSignal, run?: ApprovedPrivateReplicaProofRun): Promise<ApprovedPrivateReplicaAuthorityResolution | null>;
|
|
54
71
|
//# sourceMappingURL=approved-private-replica.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approved-private-replica.d.ts","sourceRoot":"","sources":["../src/approved-private-replica.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACtD,SAAS,EAAE,+BAA+B,EAC1C,KAAK,SAAa,GACjB,OAAO,CAGT;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,yCAAyC,GACjD,QAAQ,CAAC;IACP,IAAI,EAAE,8BAA8B,CAAC;IACrC,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC,GACF,QAAQ,CAAC;IACP,IAAI,EAAE,2BAA2B,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"approved-private-replica.d.ts","sourceRoot":"","sources":["../src/approved-private-replica.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAK/C,MAAM,WAAW,+BAA+B;IAC9C,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,eAAe,EAAE,SAAS,MAAM,EAAE,CAAC;IAC5C;;;;OAIG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChD;AAED;;;;GAIG;AACH,wBAAgB,wCAAwC,CACtD,SAAS,EAAE,+BAA+B,EAC1C,KAAK,SAAa,GACjB,OAAO,CAGT;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,yCAAyC,GACjD,QAAQ,CAAC;IACP,IAAI,EAAE,8BAA8B,CAAC;IACrC,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC,GACF,QAAQ,CAAC;IACP,IAAI,EAAE,2BAA2B,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,+BAA+B,CAAC;CAC5C,CAAC,CAAC;AAEP;;;GAGG;AACH,MAAM,WAAW,8BAA8B;IAC7C;;;;OAIG;IACH,wBAAwB,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC;IAC7D;;;OAGG;IACH,aAAa,IAAI,IAAI,CAAC;CACvB;AA4BD;;;;;;GAMG;AACH,wBAAsB,sCAAsC,CAC1D,KAAK,EAAE,QAAQ,EACf,cAAc,EAAE,MAAM,EACtB,oBAAoB,EAAE,MAAM,GAAG,SAAS,EACxC,kBAAkB,EAAE,MAAM,OAAO,EACjC,oBAAoB,EAAE,MAAM,OAAO,EACnC,MAAM,CAAC,EAAE,WAAW,EACpB,GAAG,CAAC,EAAE,8BAA8B,GACnC,OAAO,CAAC,yCAAyC,GAAG,IAAI,CAAC,CAiH3D"}
|
|
@@ -48,7 +48,7 @@ function parseRegisteredMetaOnChainId(bindings) {
|
|
|
48
48
|
* source-qualified private roster. Callers must independently establish exact
|
|
49
49
|
* finalized chain-name absence before treating the graph as unregistered.
|
|
50
50
|
*/
|
|
51
|
-
export async function resolveApprovedPrivateReplicaAuthority(agent, contextGraphId, approvedAgentAddress, approvalStillHolds, metadataStillCurrent, signal) {
|
|
51
|
+
export async function resolveApprovedPrivateReplicaAuthority(agent, contextGraphId, approvedAgentAddress, approvalStillHolds, metadataStillCurrent, signal, run) {
|
|
52
52
|
const approved = approvedAgentAddress?.toLowerCase();
|
|
53
53
|
const hasLocalAgent = () => agent.listLocalAgents().some(({ agentAddress }) => agentAddress.toLowerCase() === approved);
|
|
54
54
|
if (!approved || !hasLocalAgent())
|
|
@@ -64,6 +64,8 @@ export async function resolveApprovedPrivateReplicaAuthority(agent, contextGraph
|
|
|
64
64
|
|| !EVM_ADDRESS.test(state.curatorAgentAddress)
|
|
65
65
|
|| state.curatorAgentAddress === ZERO_ADDRESS)
|
|
66
66
|
return null;
|
|
67
|
+
if (run?.acceptsRequestGeneration(state.requestGeneration) === false)
|
|
68
|
+
return null;
|
|
67
69
|
const ownerAddress = state.curatorAgentAddress;
|
|
68
70
|
const meta = await agent.getOwnCgMetaFacts(contextGraphId, { signal });
|
|
69
71
|
const owners = new Set(meta.curators.map((did) => did
|
|
@@ -111,9 +113,13 @@ export async function resolveApprovedPrivateReplicaAuthority(agent, contextGraph
|
|
|
111
113
|
|| current.requestGeneration !== state.requestGeneration
|
|
112
114
|
|| current.curatorPeerId !== state.curatorPeerId
|
|
113
115
|
|| current.curatorAgentAddress !== ownerAddress
|
|
114
|
-
|| current.curatorAuthorityEra !== '0'
|
|
115
|
-
|
|
116
|
+
|| current.curatorAuthorityEra !== '0')
|
|
117
|
+
return null;
|
|
118
|
+
// Checked last, so a run discarded here had every earlier check hold.
|
|
119
|
+
if (!metadataStillCurrent()) {
|
|
120
|
+
run?.metadataMoved();
|
|
116
121
|
return null;
|
|
122
|
+
}
|
|
117
123
|
// The proof query embeds its start time. Recheck the deadline it proved
|
|
118
124
|
// after every await so a delegation cannot expire while the read is in
|
|
119
125
|
// flight and still authorize the replica.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approved-private-replica.js","sourceRoot":"","sources":["../src/approved-private-replica.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EACL,sCAAsC,EACtC,mCAAmC,GACpC,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,6CAA6C,GAC9C,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAAE,sCAAsC,EAAE,MAAM,kCAAkC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,MAAM,WAAW,GAAG,mBAAmB,CAAC;AACxC,MAAM,YAAY,GAAG,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;AAwB3C;;;;GAIG;AACH,MAAM,UAAU,wCAAwC,CACtD,SAA0C,EAC1C,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE;IAElB,OAAO,SAAS,CAAC,qBAAqB,KAAK,SAAS;WAC/C,sCAAsC,CAAC,SAAS,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;AACtF,CAAC;
|
|
1
|
+
{"version":3,"file":"approved-private-replica.js","sourceRoot":"","sources":["../src/approved-private-replica.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import type { ChainAdapter, ContextGraphOnChain } from '@origintrail-official/dkg-chain';
|
|
2
|
+
/** Automatic discovery may fill a binding, but cannot replace an owned canonical slot. */
|
|
3
|
+
export declare function conflictsWithOwnedContextGraphBinding(currentId: string | undefined, incomingId: string | undefined): boolean;
|
|
2
4
|
export type DiscoveredContextGraphBinding = {
|
|
3
5
|
kind: 'unrevealed';
|
|
4
6
|
registryNameHash: string | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-chain-discovery-binding.d.ts","sourceRoot":"","sources":["../src/context-graph-chain-discovery-binding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"context-graph-chain-discovery-binding.d.ts","sourceRoot":"","sources":["../src/context-graph-chain-discovery-binding.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAGzF,0FAA0F;AAC1F,wBAAgB,qCAAqC,CACnD,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,UAAU,EAAE,MAAM,GAAG,SAAS,GAC7B,OAAO,CAIT;AAED,MAAM,MAAM,6BAA6B,GACrC;IACA,IAAI,EAAE,YAAY,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,GACC;IACA,IAAI,EAAE,SAAS,CAAC;IAChB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;CACjB,GACC;IACA,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC,CAAC;AAEJ;;;;;GAKG;AACH,wBAAsB,oCAAoC,CACxD,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,6BAA6B,CAAC,CAyExC"}
|
|
@@ -1,4 +1,11 @@
|
|
|
1
1
|
import { ethers } from 'ethers';
|
|
2
|
+
import { isCanonicalAuthoritativeContextGraphId } from './context-graph-binding-state.js';
|
|
3
|
+
/** Automatic discovery may fill a binding, but cannot replace an owned canonical slot. */
|
|
4
|
+
export function conflictsWithOwnedContextGraphBinding(currentId, incomingId) {
|
|
5
|
+
return isCanonicalAuthoritativeContextGraphId(currentId)
|
|
6
|
+
&& isCanonicalAuthoritativeContextGraphId(incomingId)
|
|
7
|
+
&& currentId !== incomingId;
|
|
8
|
+
}
|
|
2
9
|
/**
|
|
3
10
|
* Normalize the legacy ContextGraphOnChain identifier boundary before any
|
|
4
11
|
* agent-local RDF or subscription mutation. Production EVM enumeration
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-chain-discovery-binding.js","sourceRoot":"","sources":["../src/context-graph-chain-discovery-binding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"context-graph-chain-discovery-binding.js","sourceRoot":"","sources":["../src/context-graph-chain-discovery-binding.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ContextGraphSubInput, ContextGraphSubscriptionRecord } from './dkg-agent-types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Restore exact saved identity independently of subscription activity. This
|
|
4
|
+
* projection owns no state, authority reads, network effects or persistence.
|
|
5
|
+
* Conflicting/invalid rows cannot select a numeric slot by snapshot order.
|
|
6
|
+
*/
|
|
7
|
+
export declare function projectDormantContextGraphIdentities(rows: readonly ContextGraphSubscriptionRecord[]): ReadonlyMap<string, ContextGraphSubInput>;
|
|
8
|
+
//# sourceMappingURL=context-graph-dormant-identity.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-dormant-identity.d.ts","sourceRoot":"","sources":["../src/context-graph-dormant-identity.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAEjG;;;;GAIG;AACH,wBAAgB,oCAAoC,CAClD,IAAI,EAAE,SAAS,8BAA8B,EAAE,GAC9C,WAAW,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAuC3C"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { ethers } from 'ethers';
|
|
3
|
+
import { isCanonicalAuthoritativeContextGraphId } from './context-graph-binding-state.js';
|
|
4
|
+
/**
|
|
5
|
+
* Restore exact saved identity independently of subscription activity. This
|
|
6
|
+
* projection owns no state, authority reads, network effects or persistence.
|
|
7
|
+
* Conflicting/invalid rows cannot select a numeric slot by snapshot order.
|
|
8
|
+
*/
|
|
9
|
+
export function projectDormantContextGraphIdentities(rows) {
|
|
10
|
+
const projected = new Map();
|
|
11
|
+
for (const row of rows) {
|
|
12
|
+
let identity = null;
|
|
13
|
+
if (isCanonicalAuthoritativeContextGraphId(row.onChainId)) {
|
|
14
|
+
try {
|
|
15
|
+
const commitment = ethers.keccak256(ethers.toUtf8Bytes(row.id)).toLowerCase();
|
|
16
|
+
const explicitHash = row.onChainHash?.toLowerCase();
|
|
17
|
+
const hashShaped = /^0x[0-9a-f]{64}$/i.test(row.id);
|
|
18
|
+
const wirePlaceholder = hashShaped && explicitHash === row.id.toLowerCase();
|
|
19
|
+
// A legacy hash-keyed row without its hash is ambiguous. Leave it for
|
|
20
|
+
// matching native chain observation to stage/repair rather than invent
|
|
21
|
+
// the commitment of a possible placeholder's literal spelling.
|
|
22
|
+
if ((explicitHash === undefined && !hashShaped) || explicitHash === commitment || wirePlaceholder) {
|
|
23
|
+
identity = {
|
|
24
|
+
name: row.name,
|
|
25
|
+
onChainId: row.onChainId,
|
|
26
|
+
onChainHash: explicitHash ?? commitment,
|
|
27
|
+
syncMode: 'always-on',
|
|
28
|
+
subscribed: false, coreHosted: false, synced: false,
|
|
29
|
+
sharedMemorySynced: false, metaSynced: false,
|
|
30
|
+
lastReconciledOrdinal: row.lastReconciledOrdinal,
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
// Invalid UTF-16 cannot establish a committed local graph identity.
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
const previous = projected.get(row.id);
|
|
39
|
+
if (projected.has(row.id) && (previous === null || identity === null
|
|
40
|
+
|| previous?.onChainId !== identity.onChainId
|
|
41
|
+
|| previous?.onChainHash !== identity.onChainHash))
|
|
42
|
+
projected.set(row.id, null);
|
|
43
|
+
else
|
|
44
|
+
projected.set(row.id, identity);
|
|
45
|
+
}
|
|
46
|
+
return new Map([...projected].filter((entry) => entry[1] !== null));
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=context-graph-dormant-identity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"context-graph-dormant-identity.js","sourceRoot":"","sources":["../src/context-graph-dormant-identity.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,sCAAsC,EAAE,MAAM,kCAAkC,CAAC;AAG1F;;;;GAIG;AACH,MAAM,UAAU,oCAAoC,CAClD,IAA+C;IAE/C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAuC,CAAC;IACjE,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,QAAQ,GAAgC,IAAI,CAAC;QACjD,IAAI,sCAAsC,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1D,IAAI,CAAC;gBACH,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC9E,MAAM,YAAY,GAAG,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,CAAC;gBACpD,MAAM,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACpD,MAAM,eAAe,GAAG,UAAU,IAAI,YAAY,KAAK,GAAG,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC5E,sEAAsE;gBACtE,uEAAuE;gBACvE,+DAA+D;gBAC/D,IAAI,CAAC,YAAY,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,IAAI,YAAY,KAAK,UAAU,IAAI,eAAe,EAAE,CAAC;oBAClG,QAAQ,GAAG;wBACT,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,SAAS,EAAE,GAAG,CAAC,SAAS;wBACxB,WAAW,EAAE,YAAY,IAAI,UAAU;wBACvC,QAAQ,EAAE,WAAW;wBACrB,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK;wBACnD,kBAAkB,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK;wBAC5C,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;qBACjD,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,oEAAoE;YACtE,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAC3B,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI;eACnC,QAAQ,EAAE,SAAS,KAAK,QAAQ,CAAC,SAAS;eAC1C,QAAQ,EAAE,WAAW,KAAK,QAAQ,CAAC,WAAW,CAClD;YAAE,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;;YAC1B,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,MAAM,CAClC,CAAC,KAAK,EAA2C,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CACtE,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,43 +1,9 @@
|
|
|
1
1
|
import type { Quad, QueryOptions, TripleStore } from '@origintrail-official/dkg-storage';
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
description?: string;
|
|
8
|
-
}
|
|
9
|
-
export interface ContextGraphDelegationMeta {
|
|
10
|
-
uri: string;
|
|
11
|
-
agents: string[];
|
|
12
|
-
allowedPeers: string[];
|
|
13
|
-
allowedKeys: string[];
|
|
14
|
-
expiresAtValues: string[];
|
|
15
|
-
}
|
|
16
|
-
export interface ContextGraphMetaRecord {
|
|
17
|
-
id: string;
|
|
18
|
-
uri: string;
|
|
19
|
-
declared: boolean;
|
|
20
|
-
isSystem: boolean;
|
|
21
|
-
name?: string;
|
|
22
|
-
description?: string;
|
|
23
|
-
creator?: string;
|
|
24
|
-
creators: string[];
|
|
25
|
-
curator?: string;
|
|
26
|
-
curators: string[];
|
|
27
|
-
accessPolicy?: string;
|
|
28
|
-
createdAt?: string;
|
|
29
|
-
allowedPeers: string[];
|
|
30
|
-
allowedAgents: string[];
|
|
31
|
-
participantAgents: string[];
|
|
32
|
-
participantIdentityIds: string[];
|
|
33
|
-
revokedAgents: string[];
|
|
34
|
-
delegations: ContextGraphDelegationMeta[];
|
|
35
|
-
onChainId?: string;
|
|
36
|
-
subGraphs: ContextGraphSubGraphMeta[];
|
|
37
|
-
hasAgentGate: boolean;
|
|
38
|
-
hasPeerGate: boolean;
|
|
39
|
-
hasLegacyParticipantGate: boolean;
|
|
40
|
-
}
|
|
2
|
+
import type { StoreMutation } from './internal/store-mutation.js';
|
|
3
|
+
import { PeerGateRevision } from './internal/peer-gate-revision.js';
|
|
4
|
+
import { RecipientKeyRouteFence } from './internal/recipient-key-route-fence.js';
|
|
5
|
+
import type { ContextGraphMetaRecord } from './internal/context-graph-meta-record.js';
|
|
6
|
+
export type { ContextGraphMetaRecord, ContextGraphSubGraphMeta, ContextGraphDelegationMeta } from './internal/context-graph-meta-record.js';
|
|
41
7
|
export interface ContextGraphReadAuthorityFactsSnapshot {
|
|
42
8
|
/** True only while no projection source has changed since capture began. */
|
|
43
9
|
assertCurrent(): boolean;
|
|
@@ -49,6 +15,15 @@ export declare class ContextGraphMetaProjection {
|
|
|
49
15
|
private readonly entries;
|
|
50
16
|
private authorityFactsRevision;
|
|
51
17
|
private allFactsRevision;
|
|
18
|
+
/** What a recipient resolution depends on: key and route facts, and each graph's peer allowlist (GH#3067). */
|
|
19
|
+
readonly recipientKeyRouteFence: RecipientKeyRouteFence;
|
|
20
|
+
readonly peerGateRevision: PeerGateRevision;
|
|
21
|
+
/** Historical callbacks remain bound and also notify the recipient fence. */
|
|
22
|
+
readonly markDirtyForGraph: (graph: string, subject?: string, predicate?: string) => void;
|
|
23
|
+
readonly markAllDirty: () => void;
|
|
24
|
+
readonly markDirtyFromQuads: (quads: readonly Quad[]) => string[];
|
|
25
|
+
/** Projection-only dispatch: the observed store owns recipient-fence settlement. */
|
|
26
|
+
readonly invalidateStoreMutation: (mutation: StoreMutation) => void;
|
|
52
27
|
constructor(store: TripleStore);
|
|
53
28
|
/** Invalidate request-local absence proofs when projection sources change. */
|
|
54
29
|
get readAuthorityFactsRevision(): number;
|
|
@@ -68,28 +43,17 @@ export declare class ContextGraphMetaProjection {
|
|
|
68
43
|
*/
|
|
69
44
|
prepareReadAuthorityFactsSnapshot(contextGraphIds: readonly string[], options?: QueryOptions): Promise<ContextGraphReadAuthorityFactsSnapshot>;
|
|
70
45
|
get(contextGraphId: string, options?: QueryOptions): Promise<ContextGraphMetaRecord>;
|
|
71
|
-
markDirty(contextGraphId: string): void;
|
|
46
|
+
markDirty(contextGraphId: string, changesPeerGate?: boolean): void;
|
|
72
47
|
/**
|
|
73
48
|
* Rebuild this graph's cached record on its next read without reporting a
|
|
74
49
|
* change of authority facts, for a caller that wrote nothing itself: no
|
|
75
50
|
* authority-facts revision advances. Supersedes a rebuild in flight.
|
|
76
51
|
*/
|
|
77
52
|
requireFreshRead(contextGraphId: string): void;
|
|
78
|
-
/**
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
* projection-relevant metadata or replace it with non-relevant/empty rows, so
|
|
83
|
-
* keying off the inserted quads alone (`markDirtyFromQuads`) misses the delete.
|
|
84
|
-
* Keying off an own meta/catalog graph covers both insert and delete. Shared
|
|
85
|
-
* AGENTS/ONTOLOGY sources invalidate every record because the callback does
|
|
86
|
-
* not supply the affected subject. Other graphs do not dirty projection cache
|
|
87
|
-
* entries, but still advance the recipient-authority fence because key lookup
|
|
88
|
-
* scans all named graphs.
|
|
89
|
-
*/
|
|
90
|
-
markDirtyForGraph(graphUri: string): void;
|
|
91
|
-
markAllDirty(): void;
|
|
92
|
-
markDirtyFromQuads(quads: readonly Quad[]): string[];
|
|
53
|
+
/** Destructive graph mutations invalidate their target cache and request-local revisions. */
|
|
54
|
+
private invalidateGraph;
|
|
55
|
+
private dirtyAll;
|
|
56
|
+
private invalidateQuads;
|
|
93
57
|
listDeclaredContextGraphIds(options?: QueryOptions): Promise<string[]>;
|
|
94
58
|
private listRootMetaDeclaredContextGraphIds;
|
|
95
59
|
private listCatalogDeclaredContextGraphIds;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-meta-projection.d.ts","sourceRoot":"","sources":["../src/context-graph-meta-projection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context-graph-meta-projection.d.ts","sourceRoot":"","sources":["../src/context-graph-meta-projection.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAIzF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yCAAyC,CAAC;AAEjF,OAAO,KAAK,EAAE,sBAAsB,EAAwD,MAAM,yCAAyC,CAAC;AAC5I,YAAY,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAC;AAS5I,MAAM,WAAW,sCAAsC;IACrD,4EAA4E;IAC5E,aAAa,IAAI,OAAO,CAAC;IACzB,kFAAkF;IAClF,QAAQ,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC;CAC3C;AA8GD,qBAAa,0BAA0B;IAmCzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAlClC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsC;IAC9D,OAAO,CAAC,sBAAsB,CAAK;IACnC,OAAO,CAAC,gBAAgB,CAAK;IAC7B,8GAA8G;IAC9G,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACxD,QAAQ,CAAC,gBAAgB,mBAAsD;IAE/E,6EAA6E;IAC7E,QAAQ,CAAC,iBAAiB,GAAI,OAAO,MAAM,EAAE,UAAU,MAAM,EAAE,YAAY,MAAM,KAAG,IAAI,CAGtF;IACF,QAAQ,CAAC,YAAY,QAAO,IAAI,CAG9B;IACF,QAAQ,CAAC,kBAAkB,GAAI,OAAO,SAAS,IAAI,EAAE,KAAG,MAAM,EAAE,CAG9D;IAEF,oFAAoF;IACpF,QAAQ,CAAC,uBAAuB,GAAI,UAAU,aAAa,KAAG,IAAI,CAUhE;gBAE2B,KAAK,EAAE,WAAW;IAI/C,8EAA8E;IAC9E,IAAI,0BAA0B,IAAI,MAAM,CAEvC;IAED;8EAC0E;IAC1E,sCAAsC,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAItE;;;;OAIG;IACG,yCAAyC,CAC7C,eAAe,EAAE,SAAS,MAAM,EAAE,EAClC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAmD/B;;;;OAIG;IACG,iCAAiC,CACrC,eAAe,EAAE,SAAS,MAAM,EAAE,EAClC,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,sCAAsC,CAAC;IAY5C,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,sBAAsB,CAAC;IAkC9F,SAAS,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,UAAO,GAAG,IAAI;IAY/D;;;;OAIG;IACH,gBAAgB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAK9C,6FAA6F;IAC7F,OAAO,CAAC,eAAe;IAyBvB,OAAO,CAAC,QAAQ;IAUhB,OAAO,CAAC,eAAe;IAoBjB,2BAA2B,CAAC,OAAO,GAAE,YAAiB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YAsClE,mCAAmC;YA+BnC,kCAAkC;YA4BlC,kBAAkB;IAKhC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA6BG;IACG,eAAe,CACnB,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE,YAAiB,GACzB,OAAO,CAAC,sBAAsB,CAAC;YAWpB,OAAO;YAqCP,eAAe;YAwDf,qBAAqB;IA4BnC,OAAO,CAAC,SAAS;YA+DH,aAAa;IA4C3B,OAAO,CAAC,2BAA2B;CA+CpC"}
|