@lucern/graph-primitives 1.0.22 → 1.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/beliefDecay.js +46 -0
- package/dist/beliefDecay.js.map +1 -1
- package/dist/beliefEvidenceLinks.js +87 -5
- package/dist/beliefEvidenceLinks.js.map +1 -1
- package/dist/beliefEvidenceLinks.operational.js +41 -5
- package/dist/beliefEvidenceLinks.operational.js.map +1 -1
- package/dist/contradictions.js +46 -0
- package/dist/contradictions.js.map +1 -1
- package/dist/edgeValidation.js +66 -1
- package/dist/edgeValidation.js.map +1 -1
- package/dist/entityBridge.js +66 -1
- package/dist/entityBridge.js.map +1 -1
- package/dist/entityLifecycle.js +90 -5
- package/dist/entityLifecycle.js.map +1 -1
- package/dist/epistemicAnswers.js +64 -11
- package/dist/epistemicAnswers.js.map +1 -1
- package/dist/epistemicBeliefs.admin.js +46 -0
- package/dist/epistemicBeliefs.admin.js.map +1 -1
- package/dist/epistemicBeliefs.backfills.js +46 -0
- package/dist/epistemicBeliefs.backfills.js.map +1 -1
- package/dist/epistemicBeliefs.confidence.d.ts +1 -1
- package/dist/epistemicBeliefs.confidence.js +53 -6
- package/dist/epistemicBeliefs.confidence.js.map +1 -1
- package/dist/epistemicBeliefs.core.js +91 -11
- package/dist/epistemicBeliefs.core.js.map +1 -1
- package/dist/epistemicBeliefs.d.ts +1 -1
- package/dist/epistemicBeliefs.forkEvidence.js.map +1 -1
- package/dist/epistemicBeliefs.helpers.d.ts +2 -2
- package/dist/epistemicBeliefs.helpers.js +46 -0
- package/dist/epistemicBeliefs.helpers.js.map +1 -1
- package/dist/epistemicBeliefs.internal.js +90 -10
- package/dist/epistemicBeliefs.internal.js.map +1 -1
- package/dist/epistemicBeliefs.js +103 -22
- package/dist/epistemicBeliefs.js.map +1 -1
- package/dist/epistemicBeliefs.lifecycle.js +53 -6
- package/dist/epistemicBeliefs.lifecycle.js.map +1 -1
- package/dist/epistemicBeliefs.links.js +85 -4
- package/dist/epistemicBeliefs.links.js.map +1 -1
- package/dist/epistemicBeliefs.topicAnchor.js +39 -8
- package/dist/epistemicBeliefs.topicAnchor.js.map +1 -1
- package/dist/epistemicContracts.evaluators.js +53 -6
- package/dist/epistemicContracts.evaluators.js.map +1 -1
- package/dist/epistemicContracts.handlers.js +54 -10
- package/dist/epistemicContracts.handlers.js.map +1 -1
- package/dist/epistemicContracts.js +54 -10
- package/dist/epistemicContracts.js.map +1 -1
- package/dist/epistemicEdges.d.ts +1 -1
- package/dist/epistemicEdges.handlers.js +48 -3
- package/dist/epistemicEdges.handlers.js.map +1 -1
- package/dist/epistemicEdges.helpers.d.ts +3 -3
- package/dist/epistemicEdges.js +162 -4
- package/dist/epistemicEdges.js.map +1 -1
- package/dist/epistemicEdges.mutations.js +112 -1
- package/dist/epistemicEdges.mutations.js.map +1 -1
- package/dist/epistemicEdges.queries.js +46 -0
- package/dist/epistemicEdges.queries.js.map +1 -1
- package/dist/epistemicEdges.types.d.ts +1 -1
- package/dist/epistemicEvidence.d.ts +1 -1
- package/dist/epistemicEvidence.js +168 -14
- package/dist/epistemicEvidence.js.map +1 -1
- package/dist/epistemicEvidenceHelpers.d.ts +1 -1
- package/dist/epistemicEvidenceHelpers.js +46 -0
- package/dist/epistemicEvidenceHelpers.js.map +1 -1
- package/dist/epistemicEvidenceMutations.js +168 -14
- package/dist/epistemicEvidenceMutations.js.map +1 -1
- package/dist/epistemicEvidenceQueries.js +46 -0
- package/dist/epistemicEvidenceQueries.js.map +1 -1
- package/dist/epistemicHelpers.js +11 -6
- package/dist/epistemicHelpers.js.map +1 -1
- package/dist/epistemicInsert.d.ts +8 -0
- package/dist/epistemicInsert.js +45 -0
- package/dist/epistemicInsert.js.map +1 -0
- package/dist/epistemicNodeCreation.js +11 -6
- package/dist/epistemicNodeCreation.js.map +1 -1
- package/dist/epistemicNodes.helpers.d.ts +1 -1
- package/dist/epistemicNodes.internal.js +53 -1
- package/dist/epistemicNodes.internal.js.map +1 -1
- package/dist/epistemicNodes.js +56 -4
- package/dist/epistemicNodes.js.map +1 -1
- package/dist/epistemicNodes.mutations.js +55 -3
- package/dist/epistemicNodes.mutations.js.map +1 -1
- package/dist/epistemicNodes.queries.js +46 -0
- package/dist/epistemicNodes.queries.js.map +1 -1
- package/dist/epistemicNodes.validators.d.ts +1 -1
- package/dist/epistemicQuestions.conviction.js +46 -0
- package/dist/epistemicQuestions.conviction.js.map +1 -1
- package/dist/epistemicQuestions.create.js +58 -7
- package/dist/epistemicQuestions.create.js.map +1 -1
- package/dist/epistemicQuestions.d.ts +1 -1
- package/dist/epistemicQuestions.evidence.js +53 -2
- package/dist/epistemicQuestions.evidence.js.map +1 -1
- package/dist/epistemicQuestions.helpers.d.ts +1 -1
- package/dist/epistemicQuestions.helpers.js +46 -0
- package/dist/epistemicQuestions.helpers.js.map +1 -1
- package/dist/epistemicQuestions.js +60 -9
- package/dist/epistemicQuestions.js.map +1 -1
- package/dist/epistemicQuestions.lifecycle.js +46 -0
- package/dist/epistemicQuestions.lifecycle.js.map +1 -1
- package/dist/epistemicQuestions.queries.js +46 -0
- package/dist/epistemicQuestions.queries.js.map +1 -1
- package/dist/epistemicQuestions.sprint.js +46 -0
- package/dist/epistemicQuestions.sprint.js.map +1 -1
- package/dist/epistemicQuestions.tail.js +53 -2
- package/dist/epistemicQuestions.tail.js.map +1 -1
- package/dist/epistemicSources.js +53 -2
- package/dist/epistemicSources.js.map +1 -1
- package/dist/helpers.js +66 -1
- package/dist/helpers.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +304 -76
- package/dist/index.js.map +1 -1
- package/dist/proof-attestation.json +1 -1
- package/dist/questionEvidenceLinks.js +46 -0
- package/dist/questionEvidenceLinks.js.map +1 -1
- package/dist/scopeResolverCompat.d.ts +1 -1
- package/dist/scopeResolverCompat.js +46 -0
- package/dist/scopeResolverCompat.js.map +1 -1
- package/dist/{topicScope-By_zp4tt.d.ts → topicScope-7zhyeGl7.d.ts} +1 -1
- package/dist/topicScope.d.ts +1 -1
- package/dist/topicScope.js +46 -0
- package/dist/topicScope.js.map +1 -1
- package/dist/workflowBridge.js +46 -0
- package/dist/workflowBridge.js.map +1 -1
- package/dist/workspaceIsolation.d.ts +1 -1
- package/dist/workspaceIsolation.js +46 -0
- package/dist/workspaceIsolation.js.map +1 -1
- package/package.json +4 -4
|
@@ -28,6 +28,35 @@ function debugGraphPrimitiveFallback(message, context) {
|
|
|
28
28
|
|
|
29
29
|
// src/topicScope.ts
|
|
30
30
|
var LEGACY_SCOPE_FIELD = "graphScopeProjectId";
|
|
31
|
+
async function resolveTopicNodeScopeOrNull(ctx, ref) {
|
|
32
|
+
if (!ctx?.db || typeof ctx.db.query !== "function") {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
let node = null;
|
|
36
|
+
try {
|
|
37
|
+
const byGlobalId = await ctx.db.query("epistemicNodes").withIndex("by_globalId", (q) => q.eq("globalId", ref)).first();
|
|
38
|
+
if (byGlobalId && byGlobalId.nodeType === "topic") {
|
|
39
|
+
node = byGlobalId;
|
|
40
|
+
}
|
|
41
|
+
} catch (error) {
|
|
42
|
+
debugGraphPrimitiveFallback(
|
|
43
|
+
"[topicScope] topic-node scope lookup by globalId failed",
|
|
44
|
+
{ error, ref }
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
if (!node) {
|
|
48
|
+
return null;
|
|
49
|
+
}
|
|
50
|
+
const scopeKey = normalizeScopeValue(node.topicId) ?? normalizeScopeValue(node.globalId);
|
|
51
|
+
if (!scopeKey) {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
return {
|
|
55
|
+
topicId: scopeKey,
|
|
56
|
+
projectId: asMappedProjectId(node),
|
|
57
|
+
source: "topic_node"
|
|
58
|
+
};
|
|
59
|
+
}
|
|
31
60
|
function asMappedProjectId(topic) {
|
|
32
61
|
if (!topic) {
|
|
33
62
|
return;
|
|
@@ -168,6 +197,13 @@ async function resolveTopicProjectScope(ctx, args) {
|
|
|
168
197
|
) ?? null;
|
|
169
198
|
}
|
|
170
199
|
if (!topic) {
|
|
200
|
+
const nodeScope = await resolveTopicNodeScopeOrNull(
|
|
201
|
+
ctx,
|
|
202
|
+
String(args.topicId)
|
|
203
|
+
);
|
|
204
|
+
if (nodeScope) {
|
|
205
|
+
return nodeScope;
|
|
206
|
+
}
|
|
171
207
|
throw new Error(`Topic not found: ${String(args.topicId)}`);
|
|
172
208
|
}
|
|
173
209
|
const inherited = await resolveInheritedWorkspaceScope(ctx, topic);
|
|
@@ -238,6 +274,16 @@ async function resolveTopicProjectScope(ctx, args) {
|
|
|
238
274
|
source: "project_mapped_topic"
|
|
239
275
|
};
|
|
240
276
|
}
|
|
277
|
+
const nodeScope = await resolveTopicNodeScopeOrNull(
|
|
278
|
+
ctx,
|
|
279
|
+
String(args.projectId)
|
|
280
|
+
);
|
|
281
|
+
if (nodeScope) {
|
|
282
|
+
return {
|
|
283
|
+
...nodeScope,
|
|
284
|
+
projectId: nodeScope.projectId ?? String(args.projectId)
|
|
285
|
+
};
|
|
286
|
+
}
|
|
241
287
|
throw new Error(
|
|
242
288
|
`Legacy project scope ${String(args.projectId)} has no mapped topic.`
|
|
243
289
|
);
|
|
@@ -1300,14 +1346,14 @@ async function applyBeliefConfidenceChange(ctx, args) {
|
|
|
1300
1346
|
beliefConfidenceId
|
|
1301
1347
|
};
|
|
1302
1348
|
}
|
|
1303
|
-
function
|
|
1349
|
+
function propagationPressureLabel(edgeType, weight) {
|
|
1304
1350
|
if (edgeType === "contradicts" || edgeType === "refutes") {
|
|
1305
|
-
return "
|
|
1351
|
+
return "contradictory";
|
|
1306
1352
|
}
|
|
1307
1353
|
if ((edgeType === "supports" || edgeType === "informs") && weight < 0) {
|
|
1308
|
-
return "
|
|
1354
|
+
return "contradictory";
|
|
1309
1355
|
}
|
|
1310
|
-
return "
|
|
1356
|
+
return "supportive";
|
|
1311
1357
|
}
|
|
1312
1358
|
internalMutation({
|
|
1313
1359
|
args: {
|
|
@@ -1344,14 +1390,15 @@ internalMutation({
|
|
|
1344
1390
|
getNode: async (nodeId) => await ctx.db.get(nodeId)
|
|
1345
1391
|
});
|
|
1346
1392
|
for (const dispatch of dispatches) {
|
|
1393
|
+
const pressureLabel = propagationPressureLabel(dispatch.edgeType, dispatch.weight);
|
|
1347
1394
|
await applyBeliefConfidenceChange(ctx, {
|
|
1348
1395
|
nodeId: dispatch.targetNodeId,
|
|
1349
1396
|
belief: dispatch.opinion.b,
|
|
1350
1397
|
disbelief: dispatch.opinion.d,
|
|
1351
1398
|
uncertainty: dispatch.opinion.u,
|
|
1352
1399
|
baseRate: dispatch.opinion.a,
|
|
1353
|
-
trigger:
|
|
1354
|
-
rationale: `SL propagation via ${dispatch.edgeType} edge: ${dispatch.rationale}`,
|
|
1400
|
+
trigger: "propagation",
|
|
1401
|
+
rationale: `SL propagation via ${dispatch.edgeType} edge (pressure: ${pressureLabel}): ${dispatch.rationale}`,
|
|
1355
1402
|
authenticatedUserId: args.userId,
|
|
1356
1403
|
slOperator: dispatch.operator
|
|
1357
1404
|
});
|