@origintrail-official/dkg-agent 10.0.21 → 10.0.22
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/context-graph-meta-projection.d.ts +12 -11
- package/dist/context-graph-meta-projection.d.ts.map +1 -1
- package/dist/context-graph-meta-projection.js +35 -34
- package/dist/context-graph-meta-projection.js.map +1 -1
- package/dist/dkg-agent-crypto.d.ts.map +1 -1
- package/dist/dkg-agent-crypto.js +48 -53
- package/dist/dkg-agent-crypto.js.map +1 -1
- package/dist/dkg-agent.d.ts.map +1 -1
- package/dist/dkg-agent.js +2 -17
- 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-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/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 +42 -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 +157 -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/registered-context-graph-authority.d.ts +6 -0
- package/dist/registered-context-graph-authority.d.ts.map +1 -1
- package/package.json +8 -8
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { RegisteredContextGraphAuthorityUnavailableReason } from '../../registered-context-graph-authority.js';
|
|
1
|
+
import type { ContextGraphAuthorityFailureSite, RegisteredContextGraphAuthorityUnavailableReason } from '../../registered-context-graph-authority.js';
|
|
2
2
|
export declare const CONTEXT_GRAPH_AGENT_GATE_UNAVAILABLE_REASONS: readonly [...RegisteredContextGraphAuthorityUnavailableReason[], "rfc64-private-read-roster-unavailable"];
|
|
3
3
|
export type ContextGraphAgentGateUnavailableReason = (typeof CONTEXT_GRAPH_AGENT_GATE_UNAVAILABLE_REASONS)[number];
|
|
4
4
|
export declare function isRetryableContextGraphAuthorityUnavailableReason(reason: ContextGraphAgentGateUnavailableReason): boolean;
|
|
@@ -24,14 +24,27 @@ export declare class ContextGraphAuthorityUnavailableError extends Error {
|
|
|
24
24
|
readonly code: "CONTEXT_GRAPH_AUTHORITY_UNAVAILABLE";
|
|
25
25
|
readonly reason: ContextGraphAgentGateUnavailableReason;
|
|
26
26
|
readonly detail?: string;
|
|
27
|
+
/** Which check of the recipient stability loop raised it, when one did. */
|
|
28
|
+
readonly site?: ContextGraphAuthorityFailureSite;
|
|
27
29
|
constructor(message: string, options: {
|
|
28
30
|
reason: ContextGraphAgentGateUnavailableReason;
|
|
29
31
|
detail?: string;
|
|
32
|
+
site?: ContextGraphAuthorityFailureSite;
|
|
30
33
|
});
|
|
31
34
|
}
|
|
32
35
|
export declare function isContextGraphAuthorityUnavailableMarker(value: unknown): value is ContextGraphAuthorityUnavailableMarker;
|
|
33
36
|
export declare function createContextGraphAuthorityError(message: string, failure: {
|
|
34
37
|
reason: ContextGraphAgentGateUnavailableReason;
|
|
35
38
|
detail?: string;
|
|
39
|
+
site?: ContextGraphAuthorityFailureSite;
|
|
36
40
|
}): ContextGraphAuthorityUnavailableError;
|
|
41
|
+
/** The details of the recipient stability loop's refusals; kept as the callers match them. */
|
|
42
|
+
declare const RECIPIENT_AUTHORITY_CHANGED_DETAIL: Readonly<{
|
|
43
|
+
readonly 'transport-changed': "retry recipient resolution against the current private authority";
|
|
44
|
+
readonly 'revision-moved': "retry recipient resolution against the current private authority";
|
|
45
|
+
readonly 'recipient-set-changed': "recipient routes changed while retrying against current private authority";
|
|
46
|
+
}>;
|
|
47
|
+
/** The refusal of the recipient stability loop: the private authority moved while keys resolved. */
|
|
48
|
+
export declare function createRecipientAuthorityChangedError(contextGraphId: string, site: keyof typeof RECIPIENT_AUTHORITY_CHANGED_DETAIL): ContextGraphAuthorityUnavailableError;
|
|
49
|
+
export {};
|
|
37
50
|
//# sourceMappingURL=context-graph-authority.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-authority.d.ts","sourceRoot":"","sources":["../../../src/internal/context-graph-authority/context-graph-authority.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"context-graph-authority.d.ts","sourceRoot":"","sources":["../../../src/internal/context-graph-authority/context-graph-authority.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,gCAAgC,EAChC,gDAAgD,EACjD,MAAM,6CAA6C,CAAC;AAqBrD,eAAO,MAAM,4CAA4C,2GAG9C,CAAC;AAEZ,MAAM,MAAM,sCAAsC,GAChD,CAAC,OAAO,4CAA4C,CAAC,CAAC,MAAM,CAAC,CAAC;AAyBhE,wBAAgB,iDAAiD,CAC/D,MAAM,EAAE,sCAAsC,GAC7C,OAAO,CAET;AAED,MAAM,MAAM,8BAA8B,GACtC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GACnB;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,cAAc,EAAE,MAAM,EAAE,CAAA;CAAE,GAC/C;IACE,IAAI,EAAE,aAAa,CAAC;IACpB,MAAM,EAAE,sCAAsC,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEN,eAAO,MAAM,wCAAwC,EACnD,qCAA8C,CAAC;AAEjD,eAAO,MAAM,8CAA8C,EACzD,uCAAgD,CAAC;AAMnD,iFAAiF;AACjF,MAAM,MAAM,sCAAsC,GAAG;IACnD,QAAQ,CAAC,IAAI,EAAE,OAAO,wCAAwC,CAAC;IAC/D,QAAQ,CAAC,MAAM,EAAE,sCAAsC,CAAC;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,qBAAa,qCAAsC,SAAQ,KAAK;IAC9D,QAAQ,CAAC,IAAI,wCAA4C;IACzD,QAAQ,CAAC,MAAM,EAAE,sCAAsC,CAAC;IACxD,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,CAAC,EAAE,gCAAgC,CAAC;gBAG/C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;QACP,MAAM,EAAE,sCAAsC,CAAC;QAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,gCAAgC,CAAC;KACzC;CAQJ;AAED,wBAAgB,wCAAwC,CACtD,KAAK,EAAE,OAAO,GACb,KAAK,IAAI,sCAAsC,CAYjD;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE;IACP,MAAM,EAAE,sCAAsC,CAAC;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,gCAAgC,CAAC;CACzC,GACA,qCAAqC,CAMvC;AAED,8FAA8F;AAC9F,QAAA,MAAM,kCAAkC;;;;EAIgE,CAAC;AAEzG,oGAAoG;AACpG,wBAAgB,oCAAoC,CAClD,cAAc,EAAE,MAAM,EACtB,IAAI,EAAE,MAAM,OAAO,kCAAkC,GACpD,qCAAqC,CASvC"}
|
|
@@ -49,12 +49,16 @@ export class ContextGraphAuthorityUnavailableError extends Error {
|
|
|
49
49
|
code = CONTEXT_GRAPH_AUTHORITY_UNAVAILABLE_CODE;
|
|
50
50
|
reason;
|
|
51
51
|
detail;
|
|
52
|
+
/** Which check of the recipient stability loop raised it, when one did. */
|
|
53
|
+
site;
|
|
52
54
|
constructor(message, options) {
|
|
53
55
|
super(message);
|
|
54
56
|
this.name = CONTEXT_GRAPH_AUTHORITY_UNAVAILABLE_ERROR_NAME;
|
|
55
57
|
this.reason = options.reason;
|
|
56
58
|
if (options.detail !== undefined)
|
|
57
59
|
this.detail = options.detail;
|
|
60
|
+
if (options.site !== undefined)
|
|
61
|
+
this.site = options.site;
|
|
58
62
|
}
|
|
59
63
|
}
|
|
60
64
|
export function isContextGraphAuthorityUnavailableMarker(value) {
|
|
@@ -76,6 +80,21 @@ export function createContextGraphAuthorityError(message, failure) {
|
|
|
76
80
|
return new ContextGraphAuthorityUnavailableError(message, {
|
|
77
81
|
reason: failure.reason,
|
|
78
82
|
...(failure.detail === undefined ? {} : { detail: failure.detail }),
|
|
83
|
+
...(failure.site === undefined ? {} : { site: failure.site }),
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
/** The details of the recipient stability loop's refusals; kept as the callers match them. */
|
|
87
|
+
const RECIPIENT_AUTHORITY_CHANGED_DETAIL = Object.freeze({
|
|
88
|
+
'transport-changed': 'retry recipient resolution against the current private authority',
|
|
89
|
+
'revision-moved': 'retry recipient resolution against the current private authority',
|
|
90
|
+
'recipient-set-changed': 'recipient routes changed while retrying against current private authority',
|
|
91
|
+
});
|
|
92
|
+
/** The refusal of the recipient stability loop: the private authority moved while keys resolved. */
|
|
93
|
+
export function createRecipientAuthorityChangedError(contextGraphId, site) {
|
|
94
|
+
return createContextGraphAuthorityError(`Context graph "${contextGraphId}" private authority changed while recipient keys were resolving`, {
|
|
95
|
+
reason: 'chain-participant-authority-unavailable',
|
|
96
|
+
detail: RECIPIENT_AUTHORITY_CHANGED_DETAIL[site],
|
|
97
|
+
site,
|
|
79
98
|
});
|
|
80
99
|
}
|
|
81
100
|
//# sourceMappingURL=context-graph-authority.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-authority.js","sourceRoot":"","sources":["../../../src/internal/context-graph-authority/context-graph-authority.ts"],"names":[],"mappings":"AAAA,sCAAsC;
|
|
1
|
+
{"version":3,"file":"context-graph-authority.js","sourceRoot":"","sources":["../../../src/internal/context-graph-authority/context-graph-authority.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
import { type
|
|
2
|
-
|
|
1
|
+
import { type SortedGraphSetSource, type Quad, type TripleStore } from '@origintrail-official/dkg-storage';
|
|
2
|
+
import type { StoreMutationObserver } from './store-mutation.js';
|
|
3
|
+
/**
|
|
4
|
+
* The third argument this factory took before it took an observer, still accepted because the
|
|
5
|
+
* factory is reachable through the historical `dkg-agent-base` export: called after a write that
|
|
6
|
+
* changed something, with its quads, or with the graph and subject it removed, or with nothing
|
|
7
|
+
* when it may have changed anything.
|
|
8
|
+
*/
|
|
9
|
+
export type ProjectionDirtyCallback = (quads?: readonly Quad[], targetGraph?: string, targetSubject?: string) => void;
|
|
10
|
+
export declare function createListContextGraphsCacheInvalidatingStore(innerStore: TripleStore, invalidate: () => void, observerOrCallback?: StoreMutationObserver | ProjectionDirtyCallback): TripleStore & Partial<SortedGraphSetSource>;
|
|
3
11
|
//# sourceMappingURL=context-graph-cache-invalidating-store.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-cache-invalidating-store.d.ts","sourceRoot":"","sources":["../../src/internal/context-graph-cache-invalidating-store.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"context-graph-cache-invalidating-store.d.ts","sourceRoot":"","sources":["../../src/internal/context-graph-cache-invalidating-store.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,oBAAoB,EACzB,KAAK,IAAI,EAET,KAAK,WAAW,EACjB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,KAAK,EAAiB,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAYhF;;;;;GAKG;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAgBtH,wBAAgB,6CAA6C,CAC3D,UAAU,EAAE,WAAW,EACvB,UAAU,EAAE,MAAM,IAAI,EAItB,kBAAkB,CAAC,EAAE,qBAAqB,GAAG,uBAAuB,GACnE,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA2M7C"}
|
|
@@ -1,29 +1,61 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
import { isSparqlUpdateOperation } from '@origintrail-official/dkg-core';
|
|
3
|
-
import { deleteByPatternWithoutCount, isStoreOperationNotStarted } from '@origintrail-official/dkg-storage';
|
|
3
|
+
import { deleteByPatternWithoutCount, describeRfc64AuthorCommitCasV1, isStoreOperationNotStarted, } from '@origintrail-official/dkg-storage';
|
|
4
|
+
// A commit the canonical plan refuses is refused by the store before dispatch too; until it is,
|
|
5
|
+
// it may change anything.
|
|
6
|
+
function describeCommit(input) {
|
|
7
|
+
try {
|
|
8
|
+
return describeRfc64AuthorCommitCasV1(input);
|
|
9
|
+
}
|
|
10
|
+
catch {
|
|
11
|
+
return { everything: true };
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function observerFromCallback(markProjectionDirty) {
|
|
15
|
+
return {
|
|
16
|
+
begin: (mutation) => (outcome) => {
|
|
17
|
+
if (outcome === 'unchanged')
|
|
18
|
+
return;
|
|
19
|
+
if (mutation.everything) {
|
|
20
|
+
markProjectionDirty();
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
for (const { graph, subject } of mutation.removals ?? [])
|
|
24
|
+
markProjectionDirty(undefined, graph, subject);
|
|
25
|
+
if (mutation.quads)
|
|
26
|
+
markProjectionDirty(mutation.quads);
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
}
|
|
4
30
|
export function createListContextGraphsCacheInvalidatingStore(innerStore, invalidate,
|
|
5
|
-
//
|
|
6
|
-
//
|
|
7
|
-
|
|
8
|
-
|
|
31
|
+
// Every write is described once (#1863: a single-graph destructive mutation
|
|
32
|
+
// names its target graph so deleted facts are fenced, not only inserted
|
|
33
|
+
// ones) and the observer sees it before dispatch and again when it settles.
|
|
34
|
+
observerOrCallback) {
|
|
35
|
+
const observer = typeof observerOrCallback === 'function'
|
|
36
|
+
? observerFromCallback(observerOrCallback)
|
|
37
|
+
: observerOrCallback;
|
|
38
|
+
const invalidateAfterMutation = async (work, changed, mutation, operation) => {
|
|
39
|
+
const settle = mutation === undefined ? undefined : observer?.begin(mutation);
|
|
40
|
+
let result;
|
|
9
41
|
try {
|
|
10
|
-
|
|
11
|
-
if (changed(result)) {
|
|
12
|
-
invalidate();
|
|
13
|
-
markDirty?.();
|
|
14
|
-
}
|
|
15
|
-
return result;
|
|
42
|
+
result = await work();
|
|
16
43
|
}
|
|
17
44
|
catch (error) {
|
|
18
45
|
// A mutation may have committed before its response was lost. Only an
|
|
19
46
|
// outcome-tagged pre-dispatch refusal proves cache/authority state did
|
|
20
47
|
// not change; every indeterminate outcome must invalidate fail-closed.
|
|
21
|
-
|
|
48
|
+
const indeterminate = operation !== undefined && !isStoreOperationNotStarted(error, operation);
|
|
49
|
+
if (indeterminate)
|
|
22
50
|
invalidate();
|
|
23
|
-
|
|
24
|
-
}
|
|
51
|
+
settle?.(indeterminate ? 'indeterminate' : 'unchanged');
|
|
25
52
|
throw error;
|
|
26
53
|
}
|
|
54
|
+
const didChange = changed(result);
|
|
55
|
+
if (didChange)
|
|
56
|
+
invalidate();
|
|
57
|
+
settle?.(didChange ? 'changed' : 'unchanged');
|
|
58
|
+
return result;
|
|
27
59
|
};
|
|
28
60
|
const sortedSource = typeof innerStore.listGraphsSorted
|
|
29
61
|
=== 'function'
|
|
@@ -38,19 +70,20 @@ markProjectionDirty) {
|
|
|
38
70
|
return innerStore.getPressureSnapshot?.();
|
|
39
71
|
},
|
|
40
72
|
insert(quads, options) {
|
|
41
|
-
return invalidateAfterMutation(() => innerStore.insert(quads, options), () => quads.length > 0,
|
|
73
|
+
return invalidateAfterMutation(() => innerStore.insert(quads, options), () => quads.length > 0, { quads }, 'insert');
|
|
42
74
|
},
|
|
43
75
|
delete(quads, options) {
|
|
44
|
-
return invalidateAfterMutation(() => innerStore.delete(quads, options), () => quads.length > 0,
|
|
76
|
+
return invalidateAfterMutation(() => innerStore.delete(quads, options), () => quads.length > 0, { quads }, 'delete');
|
|
45
77
|
},
|
|
46
78
|
deleteByPattern(pattern, options) {
|
|
47
|
-
return invalidateAfterMutation(() => innerStore.deleteByPattern(pattern, options), removed => removed > 0,
|
|
79
|
+
return invalidateAfterMutation(() => innerStore.deleteByPattern(pattern, options), removed => removed > 0, { removals: [pattern] }, 'deleteByPattern');
|
|
48
80
|
},
|
|
49
81
|
deleteByPatternWithoutCount(pattern, options) {
|
|
50
|
-
return invalidateAfterMutation(() => deleteByPatternWithoutCount(innerStore, pattern, options), () => true,
|
|
82
|
+
return invalidateAfterMutation(() => deleteByPatternWithoutCount(innerStore, pattern, options), () => true, { removals: [pattern] }, 'deleteByPattern');
|
|
51
83
|
},
|
|
52
84
|
query(sparql, options) {
|
|
53
|
-
|
|
85
|
+
const update = isSparqlUpdateOperation(sparql);
|
|
86
|
+
return invalidateAfterMutation(() => innerStore.query(sparql, options), () => update, update ? { everything: true } : undefined, update ? 'query' : undefined);
|
|
54
87
|
},
|
|
55
88
|
hasGraph(graphUri, options) {
|
|
56
89
|
return innerStore.hasGraph(graphUri, options);
|
|
@@ -59,10 +92,10 @@ markProjectionDirty) {
|
|
|
59
92
|
return innerStore.createGraph(graphUri);
|
|
60
93
|
},
|
|
61
94
|
dropGraph(graphUri, options) {
|
|
62
|
-
return invalidateAfterMutation(() => innerStore.dropGraph(graphUri, options), () => true,
|
|
95
|
+
return invalidateAfterMutation(() => innerStore.dropGraph(graphUri, options), () => true, { removals: [{ graph: graphUri }] }, 'dropGraph');
|
|
63
96
|
},
|
|
64
97
|
replaceGraph: innerStore.replaceGraph
|
|
65
|
-
? (graphUri, quads, options) => invalidateAfterMutation(() => innerStore.replaceGraph(graphUri, quads, options), () => true,
|
|
98
|
+
? (graphUri, quads, options) => invalidateAfterMutation(() => innerStore.replaceGraph(graphUri, quads, options), () => true, { removals: [{ graph: graphUri }], quads }, 'replaceGraph')
|
|
66
99
|
: undefined,
|
|
67
100
|
// Rootless KA materialization replaces the assertion graph and its UAL
|
|
68
101
|
// metadata subject in one backend transaction. Preserve that optional
|
|
@@ -70,11 +103,10 @@ markProjectionDirty) {
|
|
|
70
103
|
// omitting it makes every capable production backend appear unsupported.
|
|
71
104
|
replaceGraphAndSubject: innerStore.replaceGraphAndSubject
|
|
72
105
|
? (graphUri, graphQuads, metaGraphUri, metadataSubject, metadataQuads, options) => invalidateAfterMutation(() => innerStore.replaceGraphAndSubject(graphUri, graphQuads, metaGraphUri, metadataSubject, metadataQuads, options), () => true,
|
|
73
|
-
// Both deletion targets are named
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
markProjectionDirty?.(undefined, metaGraphUri);
|
|
106
|
+
// Both deletion targets are named, the metadata one with its subject.
|
|
107
|
+
{
|
|
108
|
+
removals: [{ graph: graphUri }, { graph: metaGraphUri, subject: metadataSubject }],
|
|
109
|
+
quads: [...graphQuads, ...metadataQuads],
|
|
78
110
|
}, 'replaceGraphAndSubject')
|
|
79
111
|
: undefined,
|
|
80
112
|
// #1863 — the async-lift publisher persists a job transition via this atomic
|
|
@@ -84,50 +116,18 @@ markProjectionDirty) {
|
|
|
84
116
|
// silently falls back to non-atomic delete-then-insert and the fix is a no-op.
|
|
85
117
|
replaceSubject: innerStore.replaceSubject
|
|
86
118
|
? (graphUri, subject, quads, options) => invalidateAfterMutation(() => innerStore.replaceSubject(graphUri, subject, quads, options), () => true,
|
|
87
|
-
// The target graph
|
|
88
|
-
// cover inserted recipient facts.
|
|
89
|
-
|
|
90
|
-
() => markProjectionDirty?.(quads, graphUri, subject), 'replaceSubject')
|
|
119
|
+
// The target graph and subject cover deleted facts; the
|
|
120
|
+
// replacement quads cover inserted recipient facts.
|
|
121
|
+
{ removals: [{ graph: graphUri, subject }], quads }, 'replaceSubject')
|
|
91
122
|
: undefined,
|
|
92
123
|
// RFC-64 author publication moves a complete public-SWM projection and
|
|
93
124
|
// its bounded semantic control state through one backend CAS. Preserve the
|
|
94
125
|
// capability through this cache-invalidation decorator and invalidate only
|
|
95
|
-
// after a proven commit; a clean guard conflict changes nothing.
|
|
126
|
+
// after a proven commit; a clean guard conflict changes nothing. The commit
|
|
127
|
+
// names every graph and subject it replaces, so only those are fenced, not
|
|
128
|
+
// every cache of an unrelated private graph.
|
|
96
129
|
rfc64AuthorCommitCasV1: innerStore.rfc64AuthorCommitCasV1
|
|
97
|
-
? (input, options) => invalidateAfterMutation(() => innerStore.rfc64AuthorCommitCasV1(input, options), result => result === 'committed', ()
|
|
98
|
-
// The CAS names every graph it replaces. A graph-wide dirty mark
|
|
99
|
-
// here invalidates an unrelated private CG's own metadata proof
|
|
100
|
-
// after every authored row, even though the CAS only changed this
|
|
101
|
-
// exact projection and its control subjects. Fence each named
|
|
102
|
-
// target, including deleted facts, without losing the conservative
|
|
103
|
-
// all-graph fallback used by genuinely opaque store mutations.
|
|
104
|
-
if (markProjectionDirty === undefined)
|
|
105
|
-
return;
|
|
106
|
-
markProjectionDirty(undefined, input.sharedProjectionGraph);
|
|
107
|
-
markProjectionDirty(undefined, input.authorSealGraph);
|
|
108
|
-
if ('currentHead' in input) {
|
|
109
|
-
for (const transition of [
|
|
110
|
-
input.currentHead,
|
|
111
|
-
input.subgraphMutationGeneration,
|
|
112
|
-
input.contextGraphMutationGeneration,
|
|
113
|
-
input.appliedSet,
|
|
114
|
-
]) {
|
|
115
|
-
markProjectionDirty(undefined, transition.graphUri);
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
markProjectionDirty(undefined, input.currentHeadGraph);
|
|
120
|
-
for (const transition of [
|
|
121
|
-
input.kaStateDigest,
|
|
122
|
-
input.subgraphMutationGeneration,
|
|
123
|
-
input.contextGraphMutationGeneration,
|
|
124
|
-
input.appliedSet,
|
|
125
|
-
...input.sealInvalidations,
|
|
126
|
-
]) {
|
|
127
|
-
markProjectionDirty(undefined, transition.graphUri);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}, 'rfc64AuthorCommitCasV1')
|
|
130
|
+
? (input, options) => invalidateAfterMutation(() => innerStore.rfc64AuthorCommitCasV1(input, options), result => result === 'committed', describeCommit(input), 'rfc64AuthorCommitCasV1')
|
|
131
131
|
: undefined,
|
|
132
132
|
listGraphs(options) {
|
|
133
133
|
return innerStore.listGraphs(options);
|
|
@@ -144,7 +144,7 @@ markProjectionDirty) {
|
|
|
144
144
|
: innerStore.listGraphs(options).then((graphs) => graphs.filter((graph) => graph.startsWith(prefix)));
|
|
145
145
|
},
|
|
146
146
|
deleteBySubjectPrefix(graphUri, prefix, options) {
|
|
147
|
-
return invalidateAfterMutation(() => innerStore.deleteBySubjectPrefix(graphUri, prefix, options), removed => removed > 0,
|
|
147
|
+
return invalidateAfterMutation(() => innerStore.deleteBySubjectPrefix(graphUri, prefix, options), removed => removed > 0, { everything: true }, 'deleteBySubjectPrefix');
|
|
148
148
|
},
|
|
149
149
|
countQuads(graphUri, options) {
|
|
150
150
|
return innerStore.countQuads(graphUri, options);
|
|
@@ -155,7 +155,7 @@ markProjectionDirty) {
|
|
|
155
155
|
// mutate projected content, so it invalidates the listGraphs cache and
|
|
156
156
|
// marks the projection dirty just like insert/delete.
|
|
157
157
|
update: innerStore.update
|
|
158
|
-
? (sparql, options) => invalidateAfterMutation(() => innerStore.update(sparql, options), () => true,
|
|
158
|
+
? (sparql, options) => invalidateAfterMutation(() => innerStore.update(sparql, options), () => true, { everything: true }, 'update')
|
|
159
159
|
: undefined,
|
|
160
160
|
flush: innerStore.flush ? (options) => innerStore.flush(options) : undefined,
|
|
161
161
|
close() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-graph-cache-invalidating-store.js","sourceRoot":"","sources":["../../src/internal/context-graph-cache-invalidating-store.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"context-graph-cache-invalidating-store.js","sourceRoot":"","sources":["../../src/internal/context-graph-cache-invalidating-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { StoreRemoval } from './store-mutation.js';
|
|
2
|
+
/**
|
|
3
|
+
* A revision per context graph that moves only when a write can change the
|
|
4
|
+
* metadata facts its peer allowlist is built from. The graph's own cache is
|
|
5
|
+
* invalidated by every write to its meta graph, among them the knowledge-asset
|
|
6
|
+
* metadata that every publish writes, so that revision says nothing about the
|
|
7
|
+
* allowlist; this one lets a resolution check, synchronously and right after
|
|
8
|
+
* its last asynchronous read, that the allowlist it collected with still holds.
|
|
9
|
+
*/
|
|
10
|
+
export declare class PeerGateRevision {
|
|
11
|
+
private readonly recordPredicates;
|
|
12
|
+
private everything;
|
|
13
|
+
private readonly graphs;
|
|
14
|
+
/** `recordPredicates` is every predicate the projection reads from a context graph's metadata. */
|
|
15
|
+
constructor(recordPredicates: ReadonlySet<string>);
|
|
16
|
+
read(contextGraphId: string): string;
|
|
17
|
+
/** A write that changes the metadata facts of one context graph. */
|
|
18
|
+
noteFacts(contextGraphId: string): void;
|
|
19
|
+
/** A write that may have changed the metadata facts of any context graph. */
|
|
20
|
+
noteEverything(): void;
|
|
21
|
+
/**
|
|
22
|
+
* A removal from a context graph's meta or catalog graph. It is harmless only
|
|
23
|
+
* when it names a subject its facts cannot have (they are about the graph, its
|
|
24
|
+
* sub-graphs and its delegations) or a predicate the projection does not read.
|
|
25
|
+
*/
|
|
26
|
+
noteRemoval(contextGraphId: string, { subject, predicate }: StoreRemoval): void;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=peer-gate-revision.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peer-gate-revision.d.ts","sourceRoot":"","sources":["../../src/internal/peer-gate-revision.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAKxD;;;;;;;GAOG;AACH,qBAAa,gBAAgB;IAKf,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAJ7C,OAAO,CAAC,UAAU,CAAK;IACvB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA6B;IAEpD,kGAAkG;gBACrE,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC;IAElE,IAAI,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM;IAIpC,oEAAoE;IACpE,SAAS,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAIvC,6EAA6E;IAC7E,cAAc,IAAI,IAAI;IAItB;;;;OAIG;IACH,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,YAAY,GAAG,IAAI;CAMhF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { isSafeIri } from '@origintrail-official/dkg-core';
|
|
3
|
+
const CONTEXT_GRAPH_PREFIX = 'did:dkg:context-graph:';
|
|
4
|
+
const DELEGATION_PREFIX = 'did:dkg:agent-delegation:';
|
|
5
|
+
/**
|
|
6
|
+
* A revision per context graph that moves only when a write can change the
|
|
7
|
+
* metadata facts its peer allowlist is built from. The graph's own cache is
|
|
8
|
+
* invalidated by every write to its meta graph, among them the knowledge-asset
|
|
9
|
+
* metadata that every publish writes, so that revision says nothing about the
|
|
10
|
+
* allowlist; this one lets a resolution check, synchronously and right after
|
|
11
|
+
* its last asynchronous read, that the allowlist it collected with still holds.
|
|
12
|
+
*/
|
|
13
|
+
export class PeerGateRevision {
|
|
14
|
+
recordPredicates;
|
|
15
|
+
everything = 0;
|
|
16
|
+
graphs = new Map();
|
|
17
|
+
/** `recordPredicates` is every predicate the projection reads from a context graph's metadata. */
|
|
18
|
+
constructor(recordPredicates) {
|
|
19
|
+
this.recordPredicates = recordPredicates;
|
|
20
|
+
}
|
|
21
|
+
read(contextGraphId) {
|
|
22
|
+
return `${this.everything}:${this.graphs.get(contextGraphId) ?? 0}`;
|
|
23
|
+
}
|
|
24
|
+
/** A write that changes the metadata facts of one context graph. */
|
|
25
|
+
noteFacts(contextGraphId) {
|
|
26
|
+
this.graphs.set(contextGraphId, (this.graphs.get(contextGraphId) ?? 0) + 1);
|
|
27
|
+
}
|
|
28
|
+
/** A write that may have changed the metadata facts of any context graph. */
|
|
29
|
+
noteEverything() {
|
|
30
|
+
this.everything += 1;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* A removal from a context graph's meta or catalog graph. It is harmless only
|
|
34
|
+
* when it names a subject its facts cannot have (they are about the graph, its
|
|
35
|
+
* sub-graphs and its delegations) or a predicate the projection does not read.
|
|
36
|
+
*/
|
|
37
|
+
noteRemoval(contextGraphId, { subject, predicate }) {
|
|
38
|
+
if (subject !== undefined && isSafeIri(subject)
|
|
39
|
+
&& !subject.startsWith(CONTEXT_GRAPH_PREFIX) && !subject.startsWith(DELEGATION_PREFIX))
|
|
40
|
+
return;
|
|
41
|
+
if (predicate !== undefined && isSafeIri(predicate) && !this.recordPredicates.has(predicate))
|
|
42
|
+
return;
|
|
43
|
+
this.noteFacts(contextGraphId);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=peer-gate-revision.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"peer-gate-revision.js","sourceRoot":"","sources":["../../src/internal/peer-gate-revision.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,MAAM,oBAAoB,GAAG,wBAAwB,CAAC;AACtD,MAAM,iBAAiB,GAAG,2BAA2B,CAAC;AAEtD;;;;;;;GAOG;AACH,MAAM,OAAO,gBAAgB;IAKE;IAJrB,UAAU,GAAG,CAAC,CAAC;IACN,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IAEpD,kGAAkG;IAClG,YAA6B,gBAAqC;QAArC,qBAAgB,GAAhB,gBAAgB,CAAqB;IAAG,CAAC;IAEtE,IAAI,CAAC,cAAsB;QACzB,OAAO,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,oEAAoE;IACpE,SAAS,CAAC,cAAsB;QAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;IAED,6EAA6E;IAC7E,cAAc;QACZ,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,WAAW,CAAC,cAAsB,EAAE,EAAE,OAAO,EAAE,SAAS,EAAgB;QACtE,IAAI,OAAO,KAAK,SAAS,IAAI,SAAS,CAAC,OAAO,CAAC;eAC1C,CAAC,OAAO,CAAC,UAAU,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC;YAAE,OAAO;QACjG,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC;YAAE,OAAO;QACrG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACjC,CAAC;CACF"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { ContextGraphMetaProjection } from '../context-graph-meta-projection.js';
|
|
2
|
+
import type { StoreMutationObserver } from './store-mutation.js';
|
|
3
|
+
/** How the agent's store wrapper tells the metadata projection what a write is about to change and did change. */
|
|
4
|
+
export declare function createProjectionMutationObserver(getProjection: () => ContextGraphMetaProjection | undefined): StoreMutationObserver;
|
|
5
|
+
//# sourceMappingURL=projection-mutation-observer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projection-mutation-observer.d.ts","sourceRoot":"","sources":["../../src/internal/projection-mutation-observer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACtF,OAAO,KAAK,EAAiB,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAqBhF,kHAAkH;AAClH,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,MAAM,0BAA0B,GAAG,SAAS,GAC1D,qBAAqB,CAcvB"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
|
2
|
+
import { isSafeIri } from '@origintrail-official/dkg-core';
|
|
3
|
+
/** What the metadata projection must learn from a write that changed something. */
|
|
4
|
+
function notifyProjection(projection, mutation) {
|
|
5
|
+
// A quad whose predicate is not a bare IRI may be stored under another one, so no classification
|
|
6
|
+
// of its predicate holds.
|
|
7
|
+
if (mutation.everything || mutation.quads?.some((quad) => !isSafeIri(quad.predicate))) {
|
|
8
|
+
projection.markAllDirty();
|
|
9
|
+
return;
|
|
10
|
+
}
|
|
11
|
+
for (const { graph, subject, predicate } of mutation.removals ?? []) {
|
|
12
|
+
// #1863 — a single-graph destructive mutation names its TARGET GRAPH so
|
|
13
|
+
// deleted facts are fenced, while replacement quads cover inserted ones. A graph
|
|
14
|
+
// that is not a bare IRI names nothing provable (some adapters read an empty
|
|
15
|
+
// one as a wildcard), so it is a write that may have changed anything.
|
|
16
|
+
if (graph === undefined || !isSafeIri(graph))
|
|
17
|
+
projection.markAllDirty();
|
|
18
|
+
else
|
|
19
|
+
projection.markDirtyForGraph(graph, subject, predicate);
|
|
20
|
+
}
|
|
21
|
+
if (mutation.quads)
|
|
22
|
+
projection.markDirtyFromQuads(mutation.quads);
|
|
23
|
+
}
|
|
24
|
+
/** How the agent's store wrapper tells the metadata projection what a write is about to change and did change. */
|
|
25
|
+
export function createProjectionMutationObserver(getProjection) {
|
|
26
|
+
return {
|
|
27
|
+
begin(mutation) {
|
|
28
|
+
const projection = getProjection();
|
|
29
|
+
const release = projection?.recipientKeyRouteFence.begin(mutation);
|
|
30
|
+
return (outcome) => {
|
|
31
|
+
try {
|
|
32
|
+
if (outcome !== 'unchanged' && projection)
|
|
33
|
+
notifyProjection(projection, mutation);
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
release?.(outcome);
|
|
37
|
+
}
|
|
38
|
+
};
|
|
39
|
+
},
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=projection-mutation-observer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projection-mutation-observer.js","sourceRoot":"","sources":["../../src/internal/projection-mutation-observer.ts"],"names":[],"mappings":"AAAA,sCAAsC;AAEtC,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAI3D,mFAAmF;AACnF,SAAS,gBAAgB,CAAC,UAAsC,EAAE,QAAuB;IACvF,iGAAiG;IACjG,0BAA0B;IAC1B,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACtF,UAAU,CAAC,YAAY,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;IACD,KAAK,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,QAAQ,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACpE,wEAAwE;QACxE,iFAAiF;QACjF,6EAA6E;QAC7E,uEAAuE;QACvE,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAAE,UAAU,CAAC,YAAY,EAAE,CAAC;;YACnE,UAAU,CAAC,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,QAAQ,CAAC,KAAK;QAAE,UAAU,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACpE,CAAC;AAED,kHAAkH;AAClH,MAAM,UAAU,gCAAgC,CAC9C,aAA2D;IAE3D,OAAO;QACL,KAAK,CAAC,QAAQ;YACZ,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,UAAU,EAAE,sBAAsB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnE,OAAO,CAAC,OAAO,EAAE,EAAE;gBACjB,IAAI,CAAC;oBACH,IAAI,OAAO,KAAK,WAAW,IAAI,UAAU;wBAAE,gBAAgB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACpF,CAAC;wBAAS,CAAC;oBACT,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -40,14 +40,16 @@ export interface PromoteRecipientRetryTiming {
|
|
|
40
40
|
* Repeat a promote's recipient read while it fails with a retryable authority
|
|
41
41
|
* outage and the bound allows.
|
|
42
42
|
*
|
|
43
|
-
* The recipient read accepts its roster only while the
|
|
44
|
-
*
|
|
43
|
+
* The recipient read accepts its roster only while the facts it depends on
|
|
44
|
+
* stand still, and it gives up after a few attempts. For a private roster those
|
|
45
|
+
* are the roster, the peer allowlist and the members' keys and routes (GH#3067);
|
|
46
|
+
* the other kinds also watch the node-wide authority facts revision. Work that
|
|
45
47
|
* has nothing to do with this promote moves that revision: after a Context
|
|
46
48
|
* Graph is registered the node reconciles the new graph's gossip subscription
|
|
47
|
-
* several times within a few hundred milliseconds. A share
|
|
48
|
-
* a registration can therefore use up those attempts
|
|
49
|
-
* temporarily unavailable, although no fact changed
|
|
50
|
-
* moments later.
|
|
49
|
+
* several times within a few hundred milliseconds. A share of one of the other
|
|
50
|
+
* kinds sent straight after a registration can therefore use up those attempts
|
|
51
|
+
* and report the roster as temporarily unavailable, although no fact changed
|
|
52
|
+
* and the same read succeeds moments later.
|
|
51
53
|
*
|
|
52
54
|
* Repeating it is safe. It only reads authority and recipient keys, it fails
|
|
53
55
|
* closed every time, and the publisher asks for it before the attempt claims
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-promote-precommit.d.ts","sourceRoot":"","sources":["../../../src/internal/promote/assertion-promote-precommit.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,qCAAqC,CAAC;AAM7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,KAAK,YAAY,GAAG,OAAO,CACzB,UAAU,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,CAC3D,CAAC;AAEF,KAAK,gCAAgC,GAAG,IAAI,CAC1C,uBAAuB,EACrB,cAAc,GACd,iBAAiB,GACjB,qBAAqB,GACrB,cAAc,GACd,cAAc,CACjB,CAAC;AAEF,KAAK,mCAAmC,GACpC,oCAAoC,GACpC,0BAA0B,GAC1B,iCAAiC,GACjC,8BAA8B,GAC9B,2BAA2B,CAAC;AAEhC,KAAK,6BAA6B,GAAG;KAClC,MAAM,IAAI,mCAAmC,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CACrF,CAAC;AAEF,UAAU,8BAA8B;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,gCAAgC,CAAC;CAC5C;AAED,KAAK,+BAA+B,GAAG;IACrC,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,gCAAgC,CAAC;CACpD,CAAC;AAuBF;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CASxE;AAED,8DAA8D;AAC9D,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAAmC,CAAC;AAEnG;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AAEvD,yEAAyE;AACzE,MAAM,WAAW,2BAA2B;IAC1C,GAAG,IAAI,MAAM,CAAC;IACd,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAOD
|
|
1
|
+
{"version":3,"file":"assertion-promote-precommit.d.ts","sourceRoot":"","sources":["../../../src/internal/promote/assertion-promote-precommit.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,qCAAqC,CAAC;AAM7C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,KAAK,YAAY,GAAG,OAAO,CACzB,UAAU,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,CAC3D,CAAC;AAEF,KAAK,gCAAgC,GAAG,IAAI,CAC1C,uBAAuB,EACrB,cAAc,GACd,iBAAiB,GACjB,qBAAqB,GACrB,cAAc,GACd,cAAc,CACjB,CAAC;AAEF,KAAK,mCAAmC,GACpC,oCAAoC,GACpC,0BAA0B,GAC1B,iCAAiC,GACjC,8BAA8B,GAC9B,2BAA2B,CAAC;AAEhC,KAAK,6BAA6B,GAAG;KAClC,MAAM,IAAI,mCAAmC,GAAG,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;CACrF,CAAC;AAEF,UAAU,8BAA8B;IACtC,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,gCAAgC,CAAC;CAC5C;AAED,KAAK,+BAA+B,GAAG;IACrC,YAAY,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,gCAAgC,CAAC;CACpD,CAAC;AAuBF;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CASxE;AAED,8DAA8D;AAC9D,eAAO,MAAM,iCAAiC,EAAE,SAAS,MAAM,EAAmC,CAAC;AAEnG;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AAEvD,yEAAyE;AACzE,MAAM,WAAW,2BAA2B;IAC1C,GAAG,IAAI,MAAM,CAAC;IACd,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACvC;AAOD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,mCAAmC,CAAC,CAAC,EACzD,OAAO,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACzB,MAAM,GAAE,2BAAiE,GACxE,OAAO,CAAC,CAAC,CAAC,CAiBZ;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,6BAA6B,EACnC,KAAK,EAAE,8BAA8B,EACrC,oBAAoB,CAAC,EAAE,2BAA2B,GACjD,OAAO,CAAC,+BAA+B,CAAC,CA+C1C"}
|
|
@@ -55,14 +55,16 @@ const REAL_PROMOTE_RECIPIENT_RETRY_TIMING = Object.freeze({
|
|
|
55
55
|
* Repeat a promote's recipient read while it fails with a retryable authority
|
|
56
56
|
* outage and the bound allows.
|
|
57
57
|
*
|
|
58
|
-
* The recipient read accepts its roster only while the
|
|
59
|
-
*
|
|
58
|
+
* The recipient read accepts its roster only while the facts it depends on
|
|
59
|
+
* stand still, and it gives up after a few attempts. For a private roster those
|
|
60
|
+
* are the roster, the peer allowlist and the members' keys and routes (GH#3067);
|
|
61
|
+
* the other kinds also watch the node-wide authority facts revision. Work that
|
|
60
62
|
* has nothing to do with this promote moves that revision: after a Context
|
|
61
63
|
* Graph is registered the node reconciles the new graph's gossip subscription
|
|
62
|
-
* several times within a few hundred milliseconds. A share
|
|
63
|
-
* a registration can therefore use up those attempts
|
|
64
|
-
* temporarily unavailable, although no fact changed
|
|
65
|
-
* moments later.
|
|
64
|
+
* several times within a few hundred milliseconds. A share of one of the other
|
|
65
|
+
* kinds sent straight after a registration can therefore use up those attempts
|
|
66
|
+
* and report the roster as temporarily unavailable, although no fact changed
|
|
67
|
+
* and the same read succeeds moments later.
|
|
66
68
|
*
|
|
67
69
|
* Repeating it is safe. It only reads authority and recipient keys, it fails
|
|
68
70
|
* closed every time, and the publisher asks for it before the attempt claims
|