@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
|
@@ -149,6 +149,35 @@ function debugGraphPrimitiveFallback(message, context) {
|
|
|
149
149
|
console.debug(message, context ?? {});
|
|
150
150
|
}
|
|
151
151
|
var LEGACY_SCOPE_FIELD = "graphScopeProjectId";
|
|
152
|
+
async function resolveTopicNodeScopeOrNull(ctx, ref) {
|
|
153
|
+
if (!ctx?.db || typeof ctx.db.query !== "function") {
|
|
154
|
+
return null;
|
|
155
|
+
}
|
|
156
|
+
let node = null;
|
|
157
|
+
try {
|
|
158
|
+
const byGlobalId = await ctx.db.query("epistemicNodes").withIndex("by_globalId", (q) => q.eq("globalId", ref)).first();
|
|
159
|
+
if (byGlobalId && byGlobalId.nodeType === "topic") {
|
|
160
|
+
node = byGlobalId;
|
|
161
|
+
}
|
|
162
|
+
} catch (error) {
|
|
163
|
+
debugGraphPrimitiveFallback(
|
|
164
|
+
"[topicScope] topic-node scope lookup by globalId failed",
|
|
165
|
+
{ error, ref }
|
|
166
|
+
);
|
|
167
|
+
}
|
|
168
|
+
if (!node) {
|
|
169
|
+
return null;
|
|
170
|
+
}
|
|
171
|
+
const scopeKey = normalizeScopeValue(node.topicId) ?? normalizeScopeValue(node.globalId);
|
|
172
|
+
if (!scopeKey) {
|
|
173
|
+
return null;
|
|
174
|
+
}
|
|
175
|
+
return {
|
|
176
|
+
topicId: scopeKey,
|
|
177
|
+
projectId: asMappedProjectId(node),
|
|
178
|
+
source: "topic_node"
|
|
179
|
+
};
|
|
180
|
+
}
|
|
152
181
|
function asMappedProjectId(topic) {
|
|
153
182
|
if (!topic) {
|
|
154
183
|
return;
|
|
@@ -289,6 +318,13 @@ async function resolveTopicProjectScope(ctx, args) {
|
|
|
289
318
|
) ?? null;
|
|
290
319
|
}
|
|
291
320
|
if (!topic) {
|
|
321
|
+
const nodeScope = await resolveTopicNodeScopeOrNull(
|
|
322
|
+
ctx,
|
|
323
|
+
String(args.topicId)
|
|
324
|
+
);
|
|
325
|
+
if (nodeScope) {
|
|
326
|
+
return nodeScope;
|
|
327
|
+
}
|
|
292
328
|
throw new Error(`Topic not found: ${String(args.topicId)}`);
|
|
293
329
|
}
|
|
294
330
|
const inherited = await resolveInheritedWorkspaceScope(ctx, topic);
|
|
@@ -359,6 +395,16 @@ async function resolveTopicProjectScope(ctx, args) {
|
|
|
359
395
|
source: "project_mapped_topic"
|
|
360
396
|
};
|
|
361
397
|
}
|
|
398
|
+
const nodeScope = await resolveTopicNodeScopeOrNull(
|
|
399
|
+
ctx,
|
|
400
|
+
String(args.projectId)
|
|
401
|
+
);
|
|
402
|
+
if (nodeScope) {
|
|
403
|
+
return {
|
|
404
|
+
...nodeScope,
|
|
405
|
+
projectId: nodeScope.projectId ?? String(args.projectId)
|
|
406
|
+
};
|
|
407
|
+
}
|
|
362
408
|
throw new Error(
|
|
363
409
|
`Legacy project scope ${String(args.projectId)} has no mapped topic.`
|
|
364
410
|
);
|
|
@@ -1243,14 +1289,14 @@ async function applyBeliefConfidenceChange(ctx, args) {
|
|
|
1243
1289
|
beliefConfidenceId
|
|
1244
1290
|
};
|
|
1245
1291
|
}
|
|
1246
|
-
function
|
|
1292
|
+
function propagationPressureLabel(edgeType, weight) {
|
|
1247
1293
|
if (edgeType === "contradicts" || edgeType === "refutes") {
|
|
1248
|
-
return "
|
|
1294
|
+
return "contradictory";
|
|
1249
1295
|
}
|
|
1250
1296
|
if ((edgeType === "supports" || edgeType === "informs") && weight < 0) {
|
|
1251
|
-
return "
|
|
1297
|
+
return "contradictory";
|
|
1252
1298
|
}
|
|
1253
|
-
return "
|
|
1299
|
+
return "supportive";
|
|
1254
1300
|
}
|
|
1255
1301
|
internalMutation({
|
|
1256
1302
|
args: {
|
|
@@ -1287,14 +1333,15 @@ internalMutation({
|
|
|
1287
1333
|
getNode: async (nodeId) => await ctx.db.get(nodeId)
|
|
1288
1334
|
});
|
|
1289
1335
|
for (const dispatch of dispatches) {
|
|
1336
|
+
const pressureLabel = propagationPressureLabel(dispatch.edgeType, dispatch.weight);
|
|
1290
1337
|
await applyBeliefConfidenceChange(ctx, {
|
|
1291
1338
|
nodeId: dispatch.targetNodeId,
|
|
1292
1339
|
belief: dispatch.opinion.b,
|
|
1293
1340
|
disbelief: dispatch.opinion.d,
|
|
1294
1341
|
uncertainty: dispatch.opinion.u,
|
|
1295
1342
|
baseRate: dispatch.opinion.a,
|
|
1296
|
-
trigger:
|
|
1297
|
-
rationale: `SL propagation via ${dispatch.edgeType} edge: ${dispatch.rationale}`,
|
|
1343
|
+
trigger: "propagation",
|
|
1344
|
+
rationale: `SL propagation via ${dispatch.edgeType} edge (pressure: ${pressureLabel}): ${dispatch.rationale}`,
|
|
1298
1345
|
authenticatedUserId: args.userId,
|
|
1299
1346
|
slOperator: dispatch.operator
|
|
1300
1347
|
});
|
|
@@ -2745,10 +2792,7 @@ var createEpistemicContract = mutation({
|
|
|
2745
2792
|
createdBy: userId,
|
|
2746
2793
|
updatedAt: now
|
|
2747
2794
|
};
|
|
2748
|
-
const insertedId = await ctx.db.insert(
|
|
2749
|
-
"epistemicContracts",
|
|
2750
|
-
contractDoc
|
|
2751
|
-
);
|
|
2795
|
+
const insertedId = await ctx.db.insert("epistemicContracts", contractDoc);
|
|
2752
2796
|
return {
|
|
2753
2797
|
contractId,
|
|
2754
2798
|
id: insertedId,
|