@origintrail-official/dkg-core 10.0.5 → 10.0.7
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/assertion-seal.d.ts +44 -7
- package/dist/assertion-seal.d.ts.map +1 -1
- package/dist/assertion-seal.js +131 -16
- package/dist/assertion-seal.js.map +1 -1
- package/dist/constants.d.ts +40 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +91 -6
- package/dist/constants.js.map +1 -1
- package/dist/context-graph-join-policy.d.ts +37 -0
- package/dist/context-graph-join-policy.d.ts.map +1 -0
- package/dist/context-graph-join-policy.js +68 -0
- package/dist/context-graph-join-policy.js.map +1 -0
- package/dist/crypto/canonicalize.d.ts +9 -0
- package/dist/crypto/canonicalize.d.ts.map +1 -1
- package/dist/crypto/canonicalize.js +22 -0
- package/dist/crypto/canonicalize.js.map +1 -1
- package/dist/crypto/index.d.ts +1 -1
- package/dist/crypto/index.d.ts.map +1 -1
- package/dist/crypto/index.js +1 -1
- package/dist/crypto/index.js.map +1 -1
- package/dist/crypto/term-canon.d.ts.map +1 -1
- package/dist/crypto/term-canon.js +10 -39
- package/dist/crypto/term-canon.js.map +1 -1
- package/dist/graph-knowledge-asset-metadata.d.ts +80 -0
- package/dist/graph-knowledge-asset-metadata.d.ts.map +1 -0
- package/dist/graph-knowledge-asset-metadata.js +407 -0
- package/dist/graph-knowledge-asset-metadata.js.map +1 -0
- package/dist/index.d.ts +7 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/ka-content-scope.d.ts +75 -0
- package/dist/ka-content-scope.d.ts.map +1 -0
- package/dist/ka-content-scope.js +128 -0
- package/dist/ka-content-scope.js.map +1 -0
- package/dist/messenger-types.d.ts +46 -13
- package/dist/messenger-types.d.ts.map +1 -1
- package/dist/node.d.ts +46 -0
- package/dist/node.d.ts.map +1 -1
- package/dist/node.js +220 -5
- package/dist/node.js.map +1 -1
- package/dist/proto/finalization.d.ts +14 -0
- package/dist/proto/finalization.d.ts.map +1 -1
- package/dist/proto/finalization.js +9 -1
- package/dist/proto/finalization.js.map +1 -1
- package/dist/proto/ka-update.d.ts +14 -0
- package/dist/proto/ka-update.d.ts.map +1 -1
- package/dist/proto/ka-update.js +8 -0
- package/dist/proto/ka-update.js.map +1 -1
- package/dist/proto/publish-intent.d.ts +16 -0
- package/dist/proto/publish-intent.d.ts.map +1 -1
- package/dist/proto/publish-intent.js +11 -1
- package/dist/proto/publish-intent.js.map +1 -1
- package/dist/proto/publish.d.ts +14 -0
- package/dist/proto/publish.d.ts.map +1 -1
- package/dist/proto/publish.js +8 -0
- package/dist/proto/publish.js.map +1 -1
- package/dist/proto/update-intent.d.ts +12 -0
- package/dist/proto/update-intent.d.ts.map +1 -1
- package/dist/proto/update-intent.js +9 -1
- package/dist/proto/update-intent.js.map +1 -1
- package/dist/proto/workspace.d.ts +16 -0
- package/dist/proto/workspace.d.ts.map +1 -1
- package/dist/proto/workspace.js +10 -0
- package/dist/proto/workspace.js.map +1 -1
- package/dist/protocol-outbox.d.ts +17 -17
- package/dist/protocol-outbox.d.ts.map +1 -1
- package/dist/protocol-outbox.js +84 -22
- package/dist/protocol-outbox.js.map +1 -1
- package/dist/protocol-router.d.ts +19 -1
- package/dist/protocol-router.d.ts.map +1 -1
- package/dist/protocol-router.js +22 -6
- package/dist/protocol-router.js.map +1 -1
- package/dist/publisher-extension.d.ts.map +1 -1
- package/dist/publisher-extension.js +6 -22
- package/dist/publisher-extension.js.map +1 -1
- package/dist/relay-flap-guard.d.ts +7 -0
- package/dist/relay-flap-guard.d.ts.map +1 -1
- package/dist/relay-flap-guard.js +8 -0
- package/dist/relay-flap-guard.js.map +1 -1
- package/dist/relay-internal-shapes.d.ts +2 -0
- package/dist/relay-internal-shapes.d.ts.map +1 -1
- package/dist/relay-internal-shapes.js.map +1 -1
- package/dist/relay-network-policy.d.ts +7 -3
- package/dist/relay-network-policy.d.ts.map +1 -1
- package/dist/relay-network-policy.js +51 -11
- package/dist/relay-network-policy.js.map +1 -1
- package/dist/setup-network.d.ts +8 -4
- package/dist/setup-network.d.ts.map +1 -1
- package/dist/setup-network.js +4 -3
- package/dist/setup-network.js.map +1 -1
- package/dist/sparql-operation.d.ts +20 -0
- package/dist/sparql-operation.d.ts.map +1 -0
- package/dist/sparql-operation.js +153 -0
- package/dist/sparql-operation.js.map +1 -0
- package/dist/telemetry-api.d.ts +53 -1
- package/dist/telemetry-api.d.ts.map +1 -1
- package/dist/telemetry-api.js +108 -0
- package/dist/telemetry-api.js.map +1 -1
- package/package.json +3 -2
package/dist/assertion-seal.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { GRAPH_KA_CONTENT_SCOPE_VERSION, LEGACY_ROOT_CONTENT_SCOPE_VERSION } from './ka-content-scope.js';
|
|
1
2
|
/**
|
|
2
3
|
* Predicates written by `/api/knowledge-assets/:name/wm/finalize` (sealed at
|
|
3
4
|
* the moment the agent commits the assertion's content to a chain).
|
|
@@ -27,6 +28,18 @@ export declare const ASSERTION_SEAL_PREDICATES: {
|
|
|
27
28
|
readonly RESERVED_KA_ID: "http://dkg.io/ontology/reservedKaId";
|
|
28
29
|
/** Daemon-clock dateTime when the seal was written (xsd:dateTime). */
|
|
29
30
|
readonly ASSERTION_FINALIZED_AT: "http://dkg.io/ontology/assertionFinalizedAt";
|
|
31
|
+
/** Rootless content-scope discriminator. Missing means legacy v1. */
|
|
32
|
+
readonly CONTENT_SCOPE_VERSION: "http://dkg.io/ontology/contentScopeVersion";
|
|
33
|
+
/** Canonical deterministic graph-scoped KA UAL. */
|
|
34
|
+
readonly KA_UAL: "http://dkg.io/ontology/kaUal";
|
|
35
|
+
/** One-based assertion/Merkle-root index. */
|
|
36
|
+
readonly ASSERTION_VERSION: "http://dkg.io/ontology/assertionVersion";
|
|
37
|
+
/** Complete public RDF triple count for the graph-scoped assertion. */
|
|
38
|
+
readonly PUBLIC_TRIPLE_COUNT: "http://dkg.io/ontology/publicTripleCount";
|
|
39
|
+
/** Single KA-level private Merkle commitment (xsd:hexBinary). */
|
|
40
|
+
readonly PRIVATE_MERKLE_ROOT: "http://dkg.io/ontology/privateMerkleRoot";
|
|
41
|
+
/** Number of private RDF triples committed by PRIVATE_MERKLE_ROOT. */
|
|
42
|
+
readonly PRIVATE_TRIPLE_COUNT: "http://dkg.io/ontology/privateTripleCount";
|
|
30
43
|
/**
|
|
31
44
|
* Root entity bound to the seal (multi-valued). Recorded at finalize
|
|
32
45
|
* time so that `publishFromFinalizedAssertion` can scope the SWM
|
|
@@ -78,7 +91,7 @@ export declare const ASSERTION_PUBLISH_RECEIPT_PREDICATES: {
|
|
|
78
91
|
* Every quad is pinned to the `metaGraph` so the gossip layer
|
|
79
92
|
* propagates them with the rest of `_meta`.
|
|
80
93
|
*/
|
|
81
|
-
|
|
94
|
+
interface AssertionSealBuildBaseArgs {
|
|
82
95
|
assertionUri: string;
|
|
83
96
|
metaGraph: string;
|
|
84
97
|
merkleRoot: Uint8Array;
|
|
@@ -91,13 +104,24 @@ export declare function buildAssertionSealQuads(args: {
|
|
|
91
104
|
/** OT-RFC-43 §F2 — the packed id bound into the AuthorAttestation digest. */
|
|
92
105
|
reservedKaId: bigint;
|
|
93
106
|
finalizedAtIso: string;
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
*/
|
|
107
|
+
}
|
|
108
|
+
export type AssertionSealBuildArgs = AssertionSealBuildBaseArgs & ({
|
|
109
|
+
/** Missing/one keeps the deployed root-scoped read-only wire shape. */
|
|
110
|
+
contentScopeVersion?: typeof LEGACY_ROOT_CONTENT_SCOPE_VERSION;
|
|
99
111
|
rootEntities: ReadonlyArray<string>;
|
|
100
|
-
|
|
112
|
+
kaUal?: never;
|
|
113
|
+
assertionVersion?: never;
|
|
114
|
+
publicTripleCount?: never;
|
|
115
|
+
} | {
|
|
116
|
+
contentScopeVersion: typeof GRAPH_KA_CONTENT_SCOPE_VERSION;
|
|
117
|
+
kaUal: string;
|
|
118
|
+
assertionVersion: string | number | bigint;
|
|
119
|
+
publicTripleCount: number;
|
|
120
|
+
privateMerkleRoot?: Uint8Array;
|
|
121
|
+
privateTripleCount: number;
|
|
122
|
+
rootEntities?: never;
|
|
123
|
+
});
|
|
124
|
+
export declare function buildAssertionSealQuads(args: AssertionSealBuildArgs): Array<{
|
|
101
125
|
subject: string;
|
|
102
126
|
predicate: string;
|
|
103
127
|
object: string;
|
|
@@ -145,6 +169,18 @@ export interface AssertionSeal {
|
|
|
145
169
|
*/
|
|
146
170
|
reservedKaId?: bigint;
|
|
147
171
|
finalizedAtIso: string;
|
|
172
|
+
/** Missing on disk is normalized to legacy v1 by the parser. */
|
|
173
|
+
contentScopeVersion: typeof LEGACY_ROOT_CONTENT_SCOPE_VERSION | typeof GRAPH_KA_CONTENT_SCOPE_VERSION;
|
|
174
|
+
/** Present only for graph-scoped v2 seals. */
|
|
175
|
+
kaUal?: string;
|
|
176
|
+
/** Present only for graph-scoped v2 seals. */
|
|
177
|
+
assertionVersion?: string;
|
|
178
|
+
/** Present only for graph-scoped v2 seals. */
|
|
179
|
+
publicTripleCount?: number;
|
|
180
|
+
/** Present only for graph-scoped v2 seals with private content. */
|
|
181
|
+
privateMerkleRoot?: Uint8Array;
|
|
182
|
+
/** Present only for graph-scoped v2 seals. */
|
|
183
|
+
privateTripleCount?: number;
|
|
148
184
|
/**
|
|
149
185
|
* Root entities the seal commits to. Set at finalize time, used at
|
|
150
186
|
* publish time to scope the SWM SPARQL CONSTRUCT (so a named publish
|
|
@@ -163,4 +199,5 @@ export declare function parseAssertionSealQuads(quads: ReadonlyArray<{
|
|
|
163
199
|
predicate: string;
|
|
164
200
|
object: string;
|
|
165
201
|
}>, assertionUri: string): AssertionSeal | undefined;
|
|
202
|
+
export {};
|
|
166
203
|
//# sourceMappingURL=assertion-seal.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-seal.d.ts","sourceRoot":"","sources":["../src/assertion-seal.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"assertion-seal.d.ts","sourceRoot":"","sources":["../src/assertion-seal.ts"],"names":[],"mappings":"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"}
|
package/dist/assertion-seal.js
CHANGED
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
// merkle root is stored as `xsd:hexBinary` (lexical form WITHOUT a
|
|
21
21
|
// `0x` prefix per spec); addresses and tx hashes ride as plain
|
|
22
22
|
// string literals; sizes/IDs as `xsd:integer`.
|
|
23
|
+
import { GRAPH_KA_CONTENT_SCOPE_VERSION, LEGACY_ROOT_CONTENT_SCOPE_VERSION, createGraphKnowledgeAssetScope, } from './ka-content-scope.js';
|
|
23
24
|
const ONT = 'http://dkg.io/ontology/';
|
|
24
25
|
/**
|
|
25
26
|
* Predicates written by `/api/knowledge-assets/:name/wm/finalize` (sealed at
|
|
@@ -50,6 +51,18 @@ export const ASSERTION_SEAL_PREDICATES = {
|
|
|
50
51
|
RESERVED_KA_ID: `${ONT}reservedKaId`,
|
|
51
52
|
/** Daemon-clock dateTime when the seal was written (xsd:dateTime). */
|
|
52
53
|
ASSERTION_FINALIZED_AT: `${ONT}assertionFinalizedAt`,
|
|
54
|
+
/** Rootless content-scope discriminator. Missing means legacy v1. */
|
|
55
|
+
CONTENT_SCOPE_VERSION: `${ONT}contentScopeVersion`,
|
|
56
|
+
/** Canonical deterministic graph-scoped KA UAL. */
|
|
57
|
+
KA_UAL: `${ONT}kaUal`,
|
|
58
|
+
/** One-based assertion/Merkle-root index. */
|
|
59
|
+
ASSERTION_VERSION: `${ONT}assertionVersion`,
|
|
60
|
+
/** Complete public RDF triple count for the graph-scoped assertion. */
|
|
61
|
+
PUBLIC_TRIPLE_COUNT: `${ONT}publicTripleCount`,
|
|
62
|
+
/** Single KA-level private Merkle commitment (xsd:hexBinary). */
|
|
63
|
+
PRIVATE_MERKLE_ROOT: `${ONT}privateMerkleRoot`,
|
|
64
|
+
/** Number of private RDF triples committed by PRIVATE_MERKLE_ROOT. */
|
|
65
|
+
PRIVATE_TRIPLE_COUNT: `${ONT}privateTripleCount`,
|
|
53
66
|
/**
|
|
54
67
|
* Root entity bound to the seal (multi-valued). Recorded at finalize
|
|
55
68
|
* time so that `publishFromFinalizedAssertion` can scope the SWM
|
|
@@ -100,15 +113,6 @@ function hexBinaryLexical(hex) {
|
|
|
100
113
|
const trimmed = hex.startsWith('0x') || hex.startsWith('0X') ? hex.slice(2) : hex;
|
|
101
114
|
return trimmed.toLowerCase();
|
|
102
115
|
}
|
|
103
|
-
/**
|
|
104
|
-
* Build the full set of `_meta` quads emitted at finalize time.
|
|
105
|
-
*
|
|
106
|
-
* Caller supplies the resolved `assertionUri` (subject), the `_meta`
|
|
107
|
-
* graph URI for the context graph (typically
|
|
108
|
-
* `contextGraphMetaUri(contextGraphId)`), and the seal payload.
|
|
109
|
-
* Every quad is pinned to the `metaGraph` so the gossip layer
|
|
110
|
-
* propagates them with the rest of `_meta`.
|
|
111
|
-
*/
|
|
112
116
|
export function buildAssertionSealQuads(args) {
|
|
113
117
|
if (args.merkleRoot.length !== 32) {
|
|
114
118
|
throw new Error(`merkleRoot must be 32 bytes, got ${args.merkleRoot.length}`);
|
|
@@ -119,8 +123,37 @@ export function buildAssertionSealQuads(args) {
|
|
|
119
123
|
if (args.authorAttestationVS.length !== 32) {
|
|
120
124
|
throw new Error(`authorAttestationVS must be 32 bytes, got ${args.authorAttestationVS.length}`);
|
|
121
125
|
}
|
|
122
|
-
|
|
123
|
-
|
|
126
|
+
let graphScope;
|
|
127
|
+
let legacyRootEntities = [];
|
|
128
|
+
let graphPublicTripleCount;
|
|
129
|
+
let graphPrivateTripleCount;
|
|
130
|
+
let graphPrivateMerkleRoot;
|
|
131
|
+
if (args.contentScopeVersion === GRAPH_KA_CONTENT_SCOPE_VERSION) {
|
|
132
|
+
graphScope = createGraphKnowledgeAssetScope(args.kaUal, args.assertionVersion);
|
|
133
|
+
graphPublicTripleCount = args.publicTripleCount;
|
|
134
|
+
graphPrivateTripleCount = args.privateTripleCount;
|
|
135
|
+
graphPrivateMerkleRoot = args.privateMerkleRoot;
|
|
136
|
+
if (!Number.isSafeInteger(graphPublicTripleCount) || graphPublicTripleCount < 0) {
|
|
137
|
+
throw new Error(`Graph-scoped assertion publicTripleCount must be a non-negative safe integer, got ${graphPublicTripleCount}`);
|
|
138
|
+
}
|
|
139
|
+
if (!Number.isSafeInteger(graphPrivateTripleCount) || graphPrivateTripleCount < 0) {
|
|
140
|
+
throw new Error(`Graph-scoped assertion privateTripleCount must be a non-negative safe integer, got ${graphPrivateTripleCount}`);
|
|
141
|
+
}
|
|
142
|
+
if (graphPublicTripleCount === 0 && graphPrivateTripleCount === 0) {
|
|
143
|
+
throw new Error('Graph-scoped assertion must contain at least one public or private triple');
|
|
144
|
+
}
|
|
145
|
+
if (graphPrivateTripleCount > 0 && graphPrivateMerkleRoot?.length !== 32) {
|
|
146
|
+
throw new Error('Graph-scoped assertion with private triples requires one 32-byte privateMerkleRoot');
|
|
147
|
+
}
|
|
148
|
+
if (graphPrivateTripleCount === 0 && graphPrivateMerkleRoot !== undefined) {
|
|
149
|
+
throw new Error('Graph-scoped assertion privateMerkleRoot requires a positive privateTripleCount');
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
else {
|
|
153
|
+
legacyRootEntities = args.rootEntities;
|
|
154
|
+
if (legacyRootEntities.length === 0) {
|
|
155
|
+
throw new Error('rootEntities must be non-empty: the seal must commit to at least one root entity');
|
|
156
|
+
}
|
|
124
157
|
}
|
|
125
158
|
const merkleRootHex = bytesToHexLower(args.merkleRoot);
|
|
126
159
|
const rHex = bytesToHexLower(args.authorAttestationR);
|
|
@@ -137,7 +170,7 @@ export function buildAssertionSealQuads(args) {
|
|
|
137
170
|
// OT-RFC-43 §10.1 — dual-write the entity list under BOTH the legacy
|
|
138
171
|
// dkg:assertionRootEntity and the new dkg:assertionEntity so a mixed fleet
|
|
139
172
|
// (and the dual-read follow-up) resolves either name.
|
|
140
|
-
const rootEntityQuads =
|
|
173
|
+
const rootEntityQuads = legacyRootEntities.flatMap((root) => {
|
|
141
174
|
if (UNSAFE_IRI_CHARS.test(root) || root.length === 0) {
|
|
142
175
|
throw new Error(`Unsafe rootEntity literal: ${root}`);
|
|
143
176
|
}
|
|
@@ -156,6 +189,14 @@ export function buildAssertionSealQuads(args) {
|
|
|
156
189
|
},
|
|
157
190
|
];
|
|
158
191
|
});
|
|
192
|
+
const contentScopeQuads = graphScope ? [
|
|
193
|
+
quad(ASSERTION_SEAL_PREDICATES.CONTENT_SCOPE_VERSION, `"${GRAPH_KA_CONTENT_SCOPE_VERSION}"^^${xsdInteger}`),
|
|
194
|
+
quad(ASSERTION_SEAL_PREDICATES.KA_UAL, `<${graphScope.ual}>`),
|
|
195
|
+
quad(ASSERTION_SEAL_PREDICATES.ASSERTION_VERSION, `"${graphScope.assertionVersion}"^^${xsdInteger}`),
|
|
196
|
+
quad(ASSERTION_SEAL_PREDICATES.PUBLIC_TRIPLE_COUNT, `"${graphPublicTripleCount}"^^${xsdInteger}`),
|
|
197
|
+
quad(ASSERTION_SEAL_PREDICATES.PRIVATE_TRIPLE_COUNT, `\"${graphPrivateTripleCount}\"^^${xsdInteger}`),
|
|
198
|
+
...(graphPrivateMerkleRoot ? [quad(ASSERTION_SEAL_PREDICATES.PRIVATE_MERKLE_ROOT, `\"${bytesToHexLower(graphPrivateMerkleRoot)}\"^^${xsdHexBinary}`)] : []),
|
|
199
|
+
] : [];
|
|
159
200
|
return [
|
|
160
201
|
quad(ASSERTION_SEAL_PREDICATES.ASSERTION_MERKLE_ROOT, `"${merkleRootHex}"^^${xsdHexBinary}`),
|
|
161
202
|
quad(ASSERTION_SEAL_PREDICATES.AUTHOR_ADDRESS, JSON.stringify(args.authorAddress)),
|
|
@@ -166,6 +207,7 @@ export function buildAssertionSealQuads(args) {
|
|
|
166
207
|
quad(ASSERTION_SEAL_PREDICATES.ASSERTED_AT_KAV10_ADDRESS, JSON.stringify(args.kav10Address)),
|
|
167
208
|
quad(ASSERTION_SEAL_PREDICATES.RESERVED_KA_ID, `"${args.reservedKaId.toString()}"^^${xsdInteger}`),
|
|
168
209
|
quad(ASSERTION_SEAL_PREDICATES.ASSERTION_FINALIZED_AT, `"${args.finalizedAtIso}"^^${xsdDateTime}`),
|
|
210
|
+
...contentScopeQuads,
|
|
169
211
|
...rootEntityQuads,
|
|
170
212
|
];
|
|
171
213
|
}
|
|
@@ -245,10 +287,69 @@ export function parseAssertionSealQuads(quads, assertionUri) {
|
|
|
245
287
|
`_meta is corrupt; rebuild from the source assertion.`);
|
|
246
288
|
}
|
|
247
289
|
}
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
290
|
+
const contentScopeVersion = seen.has(ASSERTION_SEAL_PREDICATES.CONTENT_SCOPE_VERSION)
|
|
291
|
+
? Number(integerLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.CONTENT_SCOPE_VERSION)))
|
|
292
|
+
: LEGACY_ROOT_CONTENT_SCOPE_VERSION;
|
|
293
|
+
let kaUal;
|
|
294
|
+
let assertionVersion;
|
|
295
|
+
let publicTripleCount;
|
|
296
|
+
let privateMerkleRoot;
|
|
297
|
+
let privateTripleCount;
|
|
298
|
+
if (contentScopeVersion === GRAPH_KA_CONTENT_SCOPE_VERSION) {
|
|
299
|
+
const graphRequired = [
|
|
300
|
+
ASSERTION_SEAL_PREDICATES.KA_UAL,
|
|
301
|
+
ASSERTION_SEAL_PREDICATES.ASSERTION_VERSION,
|
|
302
|
+
ASSERTION_SEAL_PREDICATES.PUBLIC_TRIPLE_COUNT,
|
|
303
|
+
ASSERTION_SEAL_PREDICATES.PRIVATE_TRIPLE_COUNT,
|
|
304
|
+
];
|
|
305
|
+
for (const predicate of graphRequired) {
|
|
306
|
+
if (!seen.has(predicate)) {
|
|
307
|
+
throw new Error(`Partial graph-scoped assertion seal for <${assertionUri}>: missing <${predicate}>.`);
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
if (rootEntities.length > 0) {
|
|
311
|
+
throw new Error(`Graph-scoped assertion seal for <${assertionUri}> must not contain root entities`);
|
|
312
|
+
}
|
|
313
|
+
const scope = createGraphKnowledgeAssetScope(iriObjectToValue(seen.get(ASSERTION_SEAL_PREDICATES.KA_UAL)), integerLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.ASSERTION_VERSION)));
|
|
314
|
+
const count = integerLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.PUBLIC_TRIPLE_COUNT));
|
|
315
|
+
const privateCount = integerLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.PRIVATE_TRIPLE_COUNT));
|
|
316
|
+
if (count < 0n || count > BigInt(Number.MAX_SAFE_INTEGER)) {
|
|
317
|
+
throw new Error(`Invalid graph-scoped publicTripleCount for <${assertionUri}>: ${count}`);
|
|
318
|
+
}
|
|
319
|
+
if (privateCount < 0n || privateCount > BigInt(Number.MAX_SAFE_INTEGER)) {
|
|
320
|
+
throw new Error(`Invalid graph-scoped privateTripleCount for <${assertionUri}>: ${privateCount}`);
|
|
321
|
+
}
|
|
322
|
+
if (count === 0n && privateCount === 0n) {
|
|
323
|
+
throw new Error(`Graph-scoped assertion seal for <${assertionUri}> contains no public or private triples`);
|
|
324
|
+
}
|
|
325
|
+
const privateRootObject = seen.get(ASSERTION_SEAL_PREDICATES.PRIVATE_MERKLE_ROOT);
|
|
326
|
+
if (privateCount > 0n) {
|
|
327
|
+
if (privateRootObject === undefined) {
|
|
328
|
+
throw new Error(`Partial graph-scoped assertion seal for <${assertionUri}>: missing ` +
|
|
329
|
+
`<${ASSERTION_SEAL_PREDICATES.PRIVATE_MERKLE_ROOT}>.`);
|
|
330
|
+
}
|
|
331
|
+
privateMerkleRoot = hexBinaryLiteralToBytes(privateRootObject);
|
|
332
|
+
if (privateMerkleRoot.length !== 32) {
|
|
333
|
+
throw new Error(`Invalid graph-scoped privateMerkleRoot for <${assertionUri}>: expected 32 bytes, got ${privateMerkleRoot.length}`);
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
else if (privateRootObject !== undefined) {
|
|
337
|
+
throw new Error(`Graph-scoped assertion seal for <${assertionUri}> has privateMerkleRoot with zero privateTripleCount`);
|
|
338
|
+
}
|
|
339
|
+
kaUal = scope.ual;
|
|
340
|
+
assertionVersion = scope.assertionVersion;
|
|
341
|
+
publicTripleCount = Number(count);
|
|
342
|
+
privateTripleCount = Number(privateCount);
|
|
343
|
+
}
|
|
344
|
+
else if (contentScopeVersion === LEGACY_ROOT_CONTENT_SCOPE_VERSION) {
|
|
345
|
+
if (rootEntities.length === 0) {
|
|
346
|
+
throw new Error(`Partial assertion seal for <${assertionUri}>: at least one ` +
|
|
347
|
+
`<${ASSERTION_SEAL_PREDICATES.ASSERTION_ROOT_ENTITY}> is required ` +
|
|
348
|
+
`(seal predates the per-assertion-rootEntities binding — re-finalize the assertion).`);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
else {
|
|
352
|
+
throw new Error(`Unsupported assertion content scope version ${contentScopeVersion} for <${assertionUri}>`);
|
|
252
353
|
}
|
|
253
354
|
return {
|
|
254
355
|
merkleRoot: hexBinaryLiteralToBytes(seen.get(ASSERTION_SEAL_PREDICATES.ASSERTION_MERKLE_ROOT)),
|
|
@@ -264,6 +365,12 @@ export function parseAssertionSealQuads(quads, assertionUri) {
|
|
|
264
365
|
? integerLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.RESERVED_KA_ID))
|
|
265
366
|
: undefined,
|
|
266
367
|
finalizedAtIso: dateTimeLiteralToValue(seen.get(ASSERTION_SEAL_PREDICATES.ASSERTION_FINALIZED_AT)),
|
|
368
|
+
contentScopeVersion,
|
|
369
|
+
...(kaUal ? { kaUal } : {}),
|
|
370
|
+
...(assertionVersion ? { assertionVersion } : {}),
|
|
371
|
+
...(publicTripleCount !== undefined ? { publicTripleCount } : {}),
|
|
372
|
+
...(privateMerkleRoot !== undefined ? { privateMerkleRoot } : {}),
|
|
373
|
+
...(privateTripleCount !== undefined ? { privateTripleCount } : {}),
|
|
267
374
|
rootEntities,
|
|
268
375
|
};
|
|
269
376
|
}
|
|
@@ -299,6 +406,14 @@ function integerLiteralToValue(literal) {
|
|
|
299
406
|
throw new Error(`Invalid xsd:integer literal: ${literal}`);
|
|
300
407
|
return BigInt(m[1]);
|
|
301
408
|
}
|
|
409
|
+
function iriObjectToValue(object) {
|
|
410
|
+
const wrapped = object.match(/^<([^>]+)>$/);
|
|
411
|
+
const iri = wrapped ? wrapped[1] : object;
|
|
412
|
+
if (!iri || iri.startsWith('"') || UNSAFE_IRI_CHARS.test(iri)) {
|
|
413
|
+
throw new Error(`Invalid assertion seal IRI object: ${object}`);
|
|
414
|
+
}
|
|
415
|
+
return iri;
|
|
416
|
+
}
|
|
302
417
|
function dateTimeLiteralToValue(literal) {
|
|
303
418
|
const m = literal.match(/^"([^"]+)"\^\^<http:\/\/www\.w3\.org\/2001\/XMLSchema#dateTime>$/) ??
|
|
304
419
|
literal.match(/^"([^"]+)"$/);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assertion-seal.js","sourceRoot":"","sources":["../src/assertion-seal.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"assertion-seal.js","sourceRoot":"","sources":["../src/assertion-seal.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ export declare const PROTOCOL_PUBLISH = "/dkg/10.0.0/publish";
|
|
|
3
3
|
export declare const PROTOCOL_QUERY = "/dkg/10.0.0/query";
|
|
4
4
|
export declare const PROTOCOL_DISCOVER = "/dkg/10.0.0/discover";
|
|
5
5
|
export declare const PROTOCOL_SYNC = "/dkg/10.0.2/sync";
|
|
6
|
+
export declare const PROTOCOL_SYNC_POOLED = "/dkg/10.0.3/sync";
|
|
7
|
+
export declare const PROTOCOL_SYNC_CHANGELOG = "/dkg/10.0.2/sync-changelog";
|
|
6
8
|
export declare const PROTOCOL_GET_ASSERTION_ARTIFACT = "/dkg/10.0.2/get-assertion-artifact";
|
|
7
9
|
export declare const PROTOCOL_MESSAGE = "/dkg/10.0.1/message";
|
|
8
10
|
export declare const PROTOCOL_ACCESS = "/dkg/10.0.1/private-access";
|
|
@@ -11,7 +13,7 @@ export declare const PROTOCOL_SWM_SENDER_KEY = "/dkg/10.0.1/swm-sender-key";
|
|
|
11
13
|
export declare const PROTOCOL_SWM_UPDATE = "/dkg/10.0.1/swm-update";
|
|
12
14
|
export declare const PROTOCOL_SWM_SHARE_ACK = "/dkg/10.0.1/swm-share-ack";
|
|
13
15
|
export declare const PROTOCOL_SWM_HOST_CATCHUP = "/dkg/10.0.1/swm-host-catchup";
|
|
14
|
-
export declare const PROTOCOL_JOIN_REQUEST = "/dkg/10.0.
|
|
16
|
+
export declare const PROTOCOL_JOIN_REQUEST = "/dkg/10.0.2/join-request";
|
|
15
17
|
export declare const PROTOCOL_VERIFY_PROPOSAL = "/dkg/10.0.1/verify-proposal";
|
|
16
18
|
export declare const PROTOCOL_VERIFY_APPROVAL = "/dkg/10.0.0/verify-approval";
|
|
17
19
|
export declare const PROTOCOL_STORAGE_ACK = "/dkg/10.0.1/storage-ack";
|
|
@@ -39,6 +41,14 @@ export declare const PROTOCOL_STORAGE_ACK_V2 = "/dkg/10.0.2/storage-ack";
|
|
|
39
41
|
* V2-vs-V1 graceful-fallback pattern.
|
|
40
42
|
*/
|
|
41
43
|
export declare const PROTOCOL_STORAGE_UPDATE_ACK = "/dkg/10.0.1/storage-update-ack";
|
|
44
|
+
/**
|
|
45
|
+
* Graph-scoped UPDATE StorageACK protocol. V1 update responders interpret
|
|
46
|
+
* `subGraphName` using the legacy entity-root layout and do not validate the
|
|
47
|
+
* graph-scoped content envelope. Keep V2 on a distinct capability so a
|
|
48
|
+
* rootless update can never be acknowledged by a peer that silently ignores
|
|
49
|
+
* its scope/version fields.
|
|
50
|
+
*/
|
|
51
|
+
export declare const PROTOCOL_STORAGE_UPDATE_ACK_V2 = "/dkg/10.0.2/storage-update-ack";
|
|
42
52
|
/**
|
|
43
53
|
* OT-RFC-38 LU-11 / OT-RFC-39 — point-to-point sync verb for one
|
|
44
54
|
* curated-CG ciphertext chunk identified by (cgId, batchId,
|
|
@@ -93,6 +103,12 @@ export declare function contextGraphSharedMemoryMetaUri(contextGraphId: string,
|
|
|
93
103
|
export declare function contextGraphVerifiableMemoryUri(contextGraphId: string, verifiableMemoryId: string): string;
|
|
94
104
|
export declare function contextGraphVerifiableMemoryMetaUri(contextGraphId: string, verifiableMemoryId: string): string;
|
|
95
105
|
export declare function contextGraphAssertionUri(contextGraphId: string, agentAddress: string, name: string, subGraphName?: string): string;
|
|
106
|
+
/** Canonical identity segment used by all new per-KA memory-layer writes. */
|
|
107
|
+
export declare function canonicalKnowledgeAssetAgentAddress(agentAddress: string): string;
|
|
108
|
+
/** Compare graph identity addresses using EVM case-folding and legacy exactness. */
|
|
109
|
+
export declare function knowledgeAssetAgentAddressesEqual(left: string, right: string): boolean;
|
|
110
|
+
/** Build the layer-independent canonical `{address}/{number}` suffix. */
|
|
111
|
+
export declare function canonicalKnowledgeAssetGraphIdentitySuffix(agentAddress: string, kaNumber: string | number | bigint): string;
|
|
96
112
|
/**
|
|
97
113
|
* Uniform per-KA graph URI for ANY memory layer (OT-RFC-46 Chorus).
|
|
98
114
|
*
|
|
@@ -102,9 +118,18 @@ export declare function contextGraphAssertionUri(contextGraphId: string, agentAd
|
|
|
102
118
|
* builder, and (downstream) ONE read path. `kaNumber` is the per-author KA
|
|
103
119
|
* number (the identifying half of the UAL `did:dkg:{chain}/{addr}/{number}`),
|
|
104
120
|
* minted at create. A KA moves between layers by swapping only the `{_layer}`
|
|
105
|
-
* segment; the `{addr}/{number}` suffix is stable for its whole
|
|
121
|
+
* segment; the canonical `{addr}/{number}` suffix is stable for its whole
|
|
122
|
+
* lifecycle.
|
|
106
123
|
*/
|
|
107
124
|
export declare function contextGraphLayerUri(contextGraphId: string, layer: MemoryLayer, agentAddress: string, kaNumber: string | number | bigint, subGraphName?: string): string;
|
|
125
|
+
/**
|
|
126
|
+
* Canonical per-KA graph first, followed by the caller-known historical casing
|
|
127
|
+
* when it differs. Store-backed readers can discover additional aliases and
|
|
128
|
+
* compare them with `knowledgeAssetAgentAddressesEqual`.
|
|
129
|
+
*/
|
|
130
|
+
export declare function contextGraphLayerUriCandidates(contextGraphId: string, layer: MemoryLayer, agentAddress: string, kaNumber: string | number | bigint, subGraphName?: string): string[];
|
|
131
|
+
/** Canonical and caller-known legacy prefixes for an unscoped layer read. */
|
|
132
|
+
export declare function contextGraphLayerPrefixCandidates(contextGraphId: string, layer: MemoryLayer, agentAddress: string, subGraphName?: string): string[];
|
|
108
133
|
export interface ContextGraphLayerIdentity {
|
|
109
134
|
contextGraphId: string;
|
|
110
135
|
subGraphName?: string;
|
|
@@ -158,6 +183,19 @@ export declare function validateContextGraphId(id: string): {
|
|
|
158
183
|
valid: boolean;
|
|
159
184
|
reason?: string;
|
|
160
185
|
};
|
|
186
|
+
/**
|
|
187
|
+
* Validate a newly-created context graph ID against the storage namespace.
|
|
188
|
+
*
|
|
189
|
+
* Existing stores may contain IDs that predate the reserved-partition rule,
|
|
190
|
+
* so read/sync paths intentionally keep using {@link validateContextGraphId}.
|
|
191
|
+
* New roots must not claim a path segment used by a structural graph such as
|
|
192
|
+
* `_meta`, otherwise their payload graph can alias another root's control
|
|
193
|
+
* plane.
|
|
194
|
+
*/
|
|
195
|
+
export declare function validateNewContextGraphId(id: string): {
|
|
196
|
+
valid: boolean;
|
|
197
|
+
reason?: string;
|
|
198
|
+
};
|
|
161
199
|
/**
|
|
162
200
|
* V10 wallet-scoped context-graph IDs follow the convention
|
|
163
201
|
* `<curatorAddress>/<name>` — e.g. `0xabc.../my-project`. For these
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,mBAAmB,CAAC;AAKjE,eAAO,MAAM,gBAAgB,wBAAwB,CAAC;AACtD,eAAO,MAAM,cAAc,sBAAsB,CAAC;AAClD,eAAO,MAAM,iBAAiB,yBAAyB,CAAC;AAiBxD,eAAO,MAAM,aAAa,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.js
CHANGED
|
@@ -21,6 +21,19 @@ export const PROTOCOL_DISCOVER = '/dkg/10.0.0/discover';
|
|
|
21
21
|
// (sync is a self-healing catch-up net, so the brief mixed-version
|
|
22
22
|
// window during auto-update is no-data-loss).
|
|
23
23
|
export const PROTOCOL_SYNC = '/dkg/10.0.2/sync';
|
|
24
|
+
// Framed, long-lived transport overlay for PROTOCOL_SYNC. The logical request
|
|
25
|
+
// and response bytes are unchanged; the distinct wire id lets upgraded peers
|
|
26
|
+
// negotiate stream reuse while older peers cleanly fall back to one-shot sync.
|
|
27
|
+
export const PROTOCOL_SYNC_POOLED = '/dkg/10.0.3/sync';
|
|
28
|
+
// OT-RFC-59 changelog read-lane — a SEPARATE protocol id, not a field on
|
|
29
|
+
// PROTOCOL_SYNC: the legacy sync response is bare N-Quads with no envelope, so a
|
|
30
|
+
// structured (era, headSeq, nextSeq, records) head cannot ride the existing
|
|
31
|
+
// wire. Same 10.0.2 family; the distinct suffix means legacy peers never dial it
|
|
32
|
+
// and identify simply omits it. Advertised ONLY when config.changelog is on
|
|
33
|
+
// (the responder registers it iff asChangelogReader(store) is non-null), so it
|
|
34
|
+
// is default-off and mixed-version-safe: a changelog-capable requester falls
|
|
35
|
+
// back to PROTOCOL_SYNC when a peer does not advertise this id.
|
|
36
|
+
export const PROTOCOL_SYNC_CHANGELOG = '/dkg/10.0.2/sync-changelog';
|
|
24
37
|
export const PROTOCOL_GET_ASSERTION_ARTIFACT = '/dkg/10.0.2/get-assertion-artifact';
|
|
25
38
|
// Universal Messenger pilot protocol (rc.9 PR-3). Bumped from
|
|
26
39
|
// /dkg/10.0.0/message to /dkg/10.0.1/message to opt into the
|
|
@@ -103,7 +116,10 @@ export const PROTOCOL_SWM_HOST_CATCHUP = '/dkg/10.0.1/swm-host-catchup';
|
|
|
103
116
|
// Universal Messenger substrate. The in-memory JoinApprovalRetryQueue
|
|
104
117
|
// (rc.9 PR #510) is replaced by the substrate's durable SQLite outbox
|
|
105
118
|
// — same backoff ladder semantics, persists across daemon restart.
|
|
106
|
-
|
|
119
|
+
// 10.0.2 binds decisions to the signed request generation. Keep this distinct
|
|
120
|
+
// from 10.0.1 so mixed-version peers fail negotiation instead of ACK-dropping
|
|
121
|
+
// generation-less approval/rejection messages and stranding the requester.
|
|
122
|
+
export const PROTOCOL_JOIN_REQUEST = '/dkg/10.0.2/join-request';
|
|
107
123
|
// rc.9 PR-11: bumped from /dkg/10.0.0/* to opt into the Universal
|
|
108
124
|
// Messenger substrate. ACKCollector + VerifyCollector keep their
|
|
109
125
|
// existing app-level fan-out + quorum semantics; substrate gives
|
|
@@ -139,6 +155,14 @@ export const PROTOCOL_STORAGE_ACK_V2 = '/dkg/10.0.2/storage-ack';
|
|
|
139
155
|
* V2-vs-V1 graceful-fallback pattern.
|
|
140
156
|
*/
|
|
141
157
|
export const PROTOCOL_STORAGE_UPDATE_ACK = '/dkg/10.0.1/storage-update-ack';
|
|
158
|
+
/**
|
|
159
|
+
* Graph-scoped UPDATE StorageACK protocol. V1 update responders interpret
|
|
160
|
+
* `subGraphName` using the legacy entity-root layout and do not validate the
|
|
161
|
+
* graph-scoped content envelope. Keep V2 on a distinct capability so a
|
|
162
|
+
* rootless update can never be acknowledged by a peer that silently ignores
|
|
163
|
+
* its scope/version fields.
|
|
164
|
+
*/
|
|
165
|
+
export const PROTOCOL_STORAGE_UPDATE_ACK_V2 = '/dkg/10.0.2/storage-update-ack';
|
|
142
166
|
/**
|
|
143
167
|
* OT-RFC-38 LU-11 / OT-RFC-39 — point-to-point sync verb for one
|
|
144
168
|
* curated-CG ciphertext chunk identified by (cgId, batchId,
|
|
@@ -278,6 +302,28 @@ export function contextGraphAssertionUri(contextGraphId, agentAddress, name, sub
|
|
|
278
302
|
return `did:dkg:context-graph:${contextGraphId}/${subGraphName}/assertion/${agentAddress}/${name}`;
|
|
279
303
|
return `did:dkg:context-graph:${contextGraphId}/assertion/${agentAddress}/${name}`;
|
|
280
304
|
}
|
|
305
|
+
/** Canonical identity segment used by all new per-KA memory-layer writes. */
|
|
306
|
+
export function canonicalKnowledgeAssetAgentAddress(agentAddress) {
|
|
307
|
+
// Non-EVM legacy identities (notably peer IDs) remain byte-for-byte stable.
|
|
308
|
+
return /^0x[0-9a-fA-F]{40}$/.test(agentAddress)
|
|
309
|
+
? agentAddress.toLowerCase()
|
|
310
|
+
: agentAddress;
|
|
311
|
+
}
|
|
312
|
+
/** Compare graph identity addresses using EVM case-folding and legacy exactness. */
|
|
313
|
+
export function knowledgeAssetAgentAddressesEqual(left, right) {
|
|
314
|
+
return canonicalKnowledgeAssetAgentAddress(left) === canonicalKnowledgeAssetAgentAddress(right);
|
|
315
|
+
}
|
|
316
|
+
/** Build the layer-independent canonical `{address}/{number}` suffix. */
|
|
317
|
+
export function canonicalKnowledgeAssetGraphIdentitySuffix(agentAddress, kaNumber) {
|
|
318
|
+
const canonicalAgentAddress = canonicalKnowledgeAssetAgentAddress(agentAddress);
|
|
319
|
+
return `${canonicalAgentAddress}/${kaNumber}`;
|
|
320
|
+
}
|
|
321
|
+
function contextGraphLayerBaseUri(contextGraphId, layer, subGraphName) {
|
|
322
|
+
const base = subGraphName
|
|
323
|
+
? `did:dkg:context-graph:${contextGraphId}/${subGraphName}`
|
|
324
|
+
: `did:dkg:context-graph:${contextGraphId}`;
|
|
325
|
+
return `${base}/${memoryLayerSlug(layer)}`;
|
|
326
|
+
}
|
|
281
327
|
/**
|
|
282
328
|
* Uniform per-KA graph URI for ANY memory layer (OT-RFC-46 Chorus).
|
|
283
329
|
*
|
|
@@ -287,13 +333,30 @@ export function contextGraphAssertionUri(contextGraphId, agentAddress, name, sub
|
|
|
287
333
|
* builder, and (downstream) ONE read path. `kaNumber` is the per-author KA
|
|
288
334
|
* number (the identifying half of the UAL `did:dkg:{chain}/{addr}/{number}`),
|
|
289
335
|
* minted at create. A KA moves between layers by swapping only the `{_layer}`
|
|
290
|
-
* segment; the `{addr}/{number}` suffix is stable for its whole
|
|
336
|
+
* segment; the canonical `{addr}/{number}` suffix is stable for its whole
|
|
337
|
+
* lifecycle.
|
|
291
338
|
*/
|
|
292
339
|
export function contextGraphLayerUri(contextGraphId, layer, agentAddress, kaNumber, subGraphName) {
|
|
293
|
-
const
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
340
|
+
const layerBase = contextGraphLayerBaseUri(contextGraphId, layer, subGraphName);
|
|
341
|
+
return `${layerBase}/${canonicalKnowledgeAssetGraphIdentitySuffix(agentAddress, kaNumber)}`;
|
|
342
|
+
}
|
|
343
|
+
/**
|
|
344
|
+
* Canonical per-KA graph first, followed by the caller-known historical casing
|
|
345
|
+
* when it differs. Store-backed readers can discover additional aliases and
|
|
346
|
+
* compare them with `knowledgeAssetAgentAddressesEqual`.
|
|
347
|
+
*/
|
|
348
|
+
export function contextGraphLayerUriCandidates(contextGraphId, layer, agentAddress, kaNumber, subGraphName) {
|
|
349
|
+
const layerBase = contextGraphLayerBaseUri(contextGraphId, layer, subGraphName);
|
|
350
|
+
const canonical = `${layerBase}/${canonicalKnowledgeAssetGraphIdentitySuffix(agentAddress, kaNumber)}`;
|
|
351
|
+
const legacy = `${layerBase}/${agentAddress}/${kaNumber}`;
|
|
352
|
+
return canonical === legacy ? [canonical] : [canonical, legacy];
|
|
353
|
+
}
|
|
354
|
+
/** Canonical and caller-known legacy prefixes for an unscoped layer read. */
|
|
355
|
+
export function contextGraphLayerPrefixCandidates(contextGraphId, layer, agentAddress, subGraphName) {
|
|
356
|
+
const layerBase = contextGraphLayerBaseUri(contextGraphId, layer, subGraphName);
|
|
357
|
+
const canonical = `${layerBase}/${canonicalKnowledgeAssetAgentAddress(agentAddress)}/`;
|
|
358
|
+
const legacy = `${layerBase}/${agentAddress}/`;
|
|
359
|
+
return canonical === legacy ? [canonical] : [canonical, legacy];
|
|
297
360
|
}
|
|
298
361
|
const MEMORY_LAYER_BY_SLUG = new Map([
|
|
299
362
|
[memoryLayerSlug(MemoryLayer.WorkingMemory), MemoryLayer.WorkingMemory],
|
|
@@ -391,6 +454,28 @@ export function validateContextGraphId(id) {
|
|
|
391
454
|
return { valid: false, reason: 'Context graph ID contains disallowed characters (allowed: alphanumeric, _, :, /, ., @, -)' };
|
|
392
455
|
return { valid: true };
|
|
393
456
|
}
|
|
457
|
+
/**
|
|
458
|
+
* Validate a newly-created context graph ID against the storage namespace.
|
|
459
|
+
*
|
|
460
|
+
* Existing stores may contain IDs that predate the reserved-partition rule,
|
|
461
|
+
* so read/sync paths intentionally keep using {@link validateContextGraphId}.
|
|
462
|
+
* New roots must not claim a path segment used by a structural graph such as
|
|
463
|
+
* `_meta`, otherwise their payload graph can alias another root's control
|
|
464
|
+
* plane.
|
|
465
|
+
*/
|
|
466
|
+
export function validateNewContextGraphId(id) {
|
|
467
|
+
const validation = validateContextGraphId(id);
|
|
468
|
+
if (!validation.valid)
|
|
469
|
+
return validation;
|
|
470
|
+
const reservedSegment = id.split('/').find((segment) => segment.startsWith('_'));
|
|
471
|
+
if (reservedSegment) {
|
|
472
|
+
return {
|
|
473
|
+
valid: false,
|
|
474
|
+
reason: `Context graph ID contains reserved storage partition segment "${reservedSegment}"`,
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
return { valid: true };
|
|
478
|
+
}
|
|
394
479
|
/**
|
|
395
480
|
* V10 wallet-scoped context-graph IDs follow the convention
|
|
396
481
|
* `<curatorAddress>/<name>` — e.g. `0xabc.../my-project`. For these
|