@lucern/graph-primitives 0.1.0-alpha.2
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/README.md +29 -0
- package/dist/beliefDecay-Q_26RTc-.d.ts +72 -0
- package/dist/beliefDecay.d.ts +2 -0
- package/dist/beliefDecay.js +1628 -0
- package/dist/beliefDecay.js.map +1 -0
- package/dist/beliefEvidenceLinks-42FlR48t.d.ts +77 -0
- package/dist/beliefEvidenceLinks.d.ts +1 -0
- package/dist/beliefEvidenceLinks.js +1978 -0
- package/dist/beliefEvidenceLinks.js.map +1 -0
- package/dist/beliefLifecycle-C-AehZgF.d.ts +43 -0
- package/dist/beliefLifecycle.d.ts +1 -0
- package/dist/beliefLifecycle.js +98 -0
- package/dist/beliefLifecycle.js.map +1 -0
- package/dist/confidencePropagationDispatch.d.ts +46 -0
- package/dist/confidencePropagationDispatch.js +744 -0
- package/dist/confidencePropagationDispatch.js.map +1 -0
- package/dist/contradictions-Hdwl7zid.d.ts +71 -0
- package/dist/contradictions.d.ts +1 -0
- package/dist/contradictions.js +1557 -0
- package/dist/contradictions.js.map +1 -0
- package/dist/convex.d.ts +23 -0
- package/dist/convex.js +17 -0
- package/dist/convex.js.map +1 -0
- package/dist/edgeValidation-CeI0wc0r.d.ts +35 -0
- package/dist/edgeValidation.d.ts +2 -0
- package/dist/edgeValidation.js +307 -0
- package/dist/edgeValidation.js.map +1 -0
- package/dist/edges/contains.d.ts +6 -0
- package/dist/edges/contains.js +14 -0
- package/dist/edges/contains.js.map +1 -0
- package/dist/edges/contradicts.d.ts +6 -0
- package/dist/edges/contradicts.js +183 -0
- package/dist/edges/contradicts.js.map +1 -0
- package/dist/edges/dependsOn.d.ts +6 -0
- package/dist/edges/dependsOn.js +240 -0
- package/dist/edges/dependsOn.js.map +1 -0
- package/dist/edges/derivedFrom.d.ts +6 -0
- package/dist/edges/derivedFrom.js +14 -0
- package/dist/edges/derivedFrom.js.map +1 -0
- package/dist/edges/elaborates.d.ts +6 -0
- package/dist/edges/elaborates.js +100 -0
- package/dist/edges/elaborates.js.map +1 -0
- package/dist/edges/index.d.ts +3 -0
- package/dist/edges/index.js +556 -0
- package/dist/edges/index.js.map +1 -0
- package/dist/edges/informs.d.ts +6 -0
- package/dist/edges/informs.js +112 -0
- package/dist/edges/informs.js.map +1 -0
- package/dist/edges/propagationTypes.d.ts +39 -0
- package/dist/edges/propagationTypes.js +17 -0
- package/dist/edges/propagationTypes.js.map +1 -0
- package/dist/edges/refutes.d.ts +6 -0
- package/dist/edges/refutes.js +108 -0
- package/dist/edges/refutes.js.map +1 -0
- package/dist/edges/supports.d.ts +6 -0
- package/dist/edges/supports.js +193 -0
- package/dist/edges/supports.js.map +1 -0
- package/dist/edges/tests.d.ts +6 -0
- package/dist/edges/tests.js +14 -0
- package/dist/edges/tests.js.map +1 -0
- package/dist/edges/utils.d.ts +12 -0
- package/dist/edges/utils.js +188 -0
- package/dist/edges/utils.js.map +1 -0
- package/dist/embeddingTrigger.d.ts +24 -0
- package/dist/embeddingTrigger.js +24 -0
- package/dist/embeddingTrigger.js.map +1 -0
- package/dist/entityBridge-DMaKooYn.d.ts +59 -0
- package/dist/entityBridge.d.ts +1 -0
- package/dist/entityBridge.js +663 -0
- package/dist/entityBridge.js.map +1 -0
- package/dist/entityLifecycle-BkhRJ-XI.d.ts +69 -0
- package/dist/entityLifecycle.d.ts +1 -0
- package/dist/entityLifecycle.js +2083 -0
- package/dist/entityLifecycle.js.map +1 -0
- package/dist/entityValidation-KLZ_Xl2D.d.ts +50 -0
- package/dist/entityValidation.d.ts +3 -0
- package/dist/entityValidation.js +71 -0
- package/dist/entityValidation.js.map +1 -0
- package/dist/epistemicAnswers-DSP1slZ9.d.ts +67 -0
- package/dist/epistemicAnswers.d.ts +1 -0
- package/dist/epistemicAnswers.js +1650 -0
- package/dist/epistemicAnswers.js.map +1 -0
- package/dist/epistemicBeliefs-DtFVTp-k.d.ts +377 -0
- package/dist/epistemicBeliefs.d.ts +5 -0
- package/dist/epistemicBeliefs.js +6386 -0
- package/dist/epistemicBeliefs.js.map +1 -0
- package/dist/epistemicContractHelpers.d.ts +1 -0
- package/dist/epistemicContractHelpers.js +320 -0
- package/dist/epistemicContractHelpers.js.map +1 -0
- package/dist/epistemicContracts.d.ts +77 -0
- package/dist/epistemicContracts.js +8436 -0
- package/dist/epistemicContracts.js.map +1 -0
- package/dist/epistemicEdges-DcA8ErUG.d.ts +191 -0
- package/dist/epistemicEdges.d.ts +2 -0
- package/dist/epistemicEdges.js +2749 -0
- package/dist/epistemicEdges.js.map +1 -0
- package/dist/epistemicEvidence-Bo638XDP.d.ts +128 -0
- package/dist/epistemicEvidence.d.ts +3 -0
- package/dist/epistemicEvidence.js +3282 -0
- package/dist/epistemicEvidence.js.map +1 -0
- package/dist/epistemicHelpers-Bd9xbaib.d.ts +329 -0
- package/dist/epistemicHelpers.d.ts +4 -0
- package/dist/epistemicHelpers.js +999 -0
- package/dist/epistemicHelpers.js.map +1 -0
- package/dist/epistemicLinking-CyeLOIzN.d.ts +35 -0
- package/dist/epistemicLinking.d.ts +1 -0
- package/dist/epistemicLinking.js +1391 -0
- package/dist/epistemicLinking.js.map +1 -0
- package/dist/epistemicNodes-BpD6Koud.d.ts +167 -0
- package/dist/epistemicNodes.d.ts +2 -0
- package/dist/epistemicNodes.js +2942 -0
- package/dist/epistemicNodes.js.map +1 -0
- package/dist/epistemicQuestions-CmEeY6zQ.d.ts +214 -0
- package/dist/epistemicQuestions.d.ts +3 -0
- package/dist/epistemicQuestions.js +4993 -0
- package/dist/epistemicQuestions.js.map +1 -0
- package/dist/epistemicSources-ZazxHOK1.d.ts +25 -0
- package/dist/epistemicSources.d.ts +1 -0
- package/dist/epistemicSources.js +2025 -0
- package/dist/epistemicSources.js.map +1 -0
- package/dist/evaluators/index.d.ts +9 -0
- package/dist/evaluators/index.js +8440 -0
- package/dist/evaluators/index.js.map +1 -0
- package/dist/evaluators/lintCheckerEvaluator.d.ts +11 -0
- package/dist/evaluators/lintCheckerEvaluator.js +155 -0
- package/dist/evaluators/lintCheckerEvaluator.js.map +1 -0
- package/dist/evaluators/sentryCheckerEvaluator.d.ts +11 -0
- package/dist/evaluators/sentryCheckerEvaluator.js +126 -0
- package/dist/evaluators/sentryCheckerEvaluator.js.map +1 -0
- package/dist/evaluators/shared.d.ts +27 -0
- package/dist/evaluators/shared.js +92 -0
- package/dist/evaluators/shared.js.map +1 -0
- package/dist/evaluators/testRunnerEvaluator.d.ts +17 -0
- package/dist/evaluators/testRunnerEvaluator.js +232 -0
- package/dist/evaluators/testRunnerEvaluator.js.map +1 -0
- package/dist/evaluators/tscCheckerEvaluator.d.ts +11 -0
- package/dist/evaluators/tscCheckerEvaluator.js +189 -0
- package/dist/evaluators/tscCheckerEvaluator.js.map +1 -0
- package/dist/globalId-DKh9d_uD.d.ts +20 -0
- package/dist/globalId.d.ts +1 -0
- package/dist/globalId.js +15 -0
- package/dist/globalId.js.map +1 -0
- package/dist/graphTypes-CpgIuCdo.d.ts +52 -0
- package/dist/graphTypes.d.ts +1 -0
- package/dist/graphTypes.js +120 -0
- package/dist/graphTypes.js.map +1 -0
- package/dist/helpers-BYHIk5vU.d.ts +27 -0
- package/dist/helpers.d.ts +4 -0
- package/dist/helpers.js +313 -0
- package/dist/helpers.js.map +1 -0
- package/dist/index-Dct1T70K.d.ts +25 -0
- package/dist/index-Dq-7R-gi.d.ts +31 -0
- package/dist/index.d.ts +45 -0
- package/dist/index.js +22294 -0
- package/dist/index.js.map +1 -0
- package/dist/invariantEnforcement.d.ts +52 -0
- package/dist/invariantEnforcement.js +231 -0
- package/dist/invariantEnforcement.js.map +1 -0
- package/dist/logicalRoleInference-CJxqWi3u.d.ts +16 -0
- package/dist/logicalRoleInference.d.ts +3 -0
- package/dist/logicalRoleInference.js +64 -0
- package/dist/logicalRoleInference.js.map +1 -0
- package/dist/matcherFeedbackUtils.d.ts +33 -0
- package/dist/matcherFeedbackUtils.js +95 -0
- package/dist/matcherFeedbackUtils.js.map +1 -0
- package/dist/ontology-matching-Buhu23ss.d.ts +48 -0
- package/dist/ontology-matching.d.ts +2 -0
- package/dist/ontology-matching.js +346 -0
- package/dist/ontology-matching.js.map +1 -0
- package/dist/ontologyApproval-Ba0Jjk1k.d.ts +26 -0
- package/dist/ontologyApproval.d.ts +1 -0
- package/dist/ontologyApproval.js +78 -0
- package/dist/ontologyApproval.js.map +1 -0
- package/dist/ontologyDefinitions.d.ts +72 -0
- package/dist/ontologyDefinitions.js +635 -0
- package/dist/ontologyDefinitions.js.map +1 -0
- package/dist/ontologyHelpers.d.ts +79 -0
- package/dist/ontologyHelpers.js +81 -0
- package/dist/ontologyHelpers.js.map +1 -0
- package/dist/ontologyRegistry-B67rPJ16.d.ts +31 -0
- package/dist/ontologyRegistry.d.ts +1 -0
- package/dist/ontologyRegistry.js +296 -0
- package/dist/ontologyRegistry.js.map +1 -0
- package/dist/projectionReconciliation-CxrXYGaB.d.ts +20 -0
- package/dist/projectionReconciliation.d.ts +1 -0
- package/dist/projectionReconciliation.js +261 -0
- package/dist/projectionReconciliation.js.map +1 -0
- package/dist/projectionStaleness-CAdpIsaW.d.ts +51 -0
- package/dist/projectionStaleness.d.ts +1 -0
- package/dist/projectionStaleness.js +57 -0
- package/dist/projectionStaleness.js.map +1 -0
- package/dist/questionEvidenceLinks-BdQD0TkM.d.ts +34 -0
- package/dist/questionEvidenceLinks.d.ts +1 -0
- package/dist/questionEvidenceLinks.js +1690 -0
- package/dist/questionEvidenceLinks.js.map +1 -0
- package/dist/resolverTypes-CC8Ea2E2.d.ts +20 -0
- package/dist/resolverTypes.d.ts +4 -0
- package/dist/resolverTypes.js +3 -0
- package/dist/resolverTypes.js.map +1 -0
- package/dist/resolvers-Br1a6eLV.d.ts +14 -0
- package/dist/resolvers.d.ts +5 -0
- package/dist/resolvers.js +308 -0
- package/dist/resolvers.js.map +1 -0
- package/dist/scopeResolverCompat.d.ts +26 -0
- package/dist/scopeResolverCompat.js +242 -0
- package/dist/scopeResolverCompat.js.map +1 -0
- package/dist/text-matching-CMn2WnVD.d.ts +40 -0
- package/dist/text-matching.d.ts +2 -0
- package/dist/text-matching.js +246 -0
- package/dist/text-matching.js.map +1 -0
- package/dist/topicOntologyResolver.d.ts +80 -0
- package/dist/topicOntologyResolver.js +67 -0
- package/dist/topicOntologyResolver.js.map +1 -0
- package/dist/topicProjectOverlay.d.ts +92 -0
- package/dist/topicProjectOverlay.js +249 -0
- package/dist/topicProjectOverlay.js.map +1 -0
- package/dist/topicScope-By_zp4tt.d.ts +34 -0
- package/dist/topicScope.d.ts +3 -0
- package/dist/topicScope.js +206 -0
- package/dist/topicScope.js.map +1 -0
- package/dist/workspaceIsolation.d.ts +44 -0
- package/dist/workspaceIsolation.js +950 -0
- package/dist/workspaceIsolation.js.map +1 -0
- package/package.json +46 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/entityValidation.ts"],"names":[],"mappings":"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","file":"entityValidation.js","sourcesContent":["/**\n * Entity Metadata Validation\n *\n * Validates entity metadata against registered schemas in schemaEnumConfig.\n * Strict on create (must pass), lenient on read (existing data tolerance).\n *\n * @module graph-primitives/entityValidation\n */\n\nimport type { MutationCtx, QueryCtx } from \"./convex\";\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\ntype FieldSchema = {\n type: \"string\" | \"number\" | \"boolean\";\n required: boolean;\n};\n\ntype EntitySchema = Record<string, FieldSchema>;\n\ntype ValidationResult = {\n valid: boolean;\n errors: string[];\n};\n\n// =============================================================================\n// SCHEMA LOOKUP\n// =============================================================================\n\n/**\n * Fetch the registered metadata schema for an entity type.\n * Returns null if no schema is registered.\n */\nexport async function getEntityTypeSchema(\n ctx: QueryCtx | MutationCtx,\n nodeType: string,\n tenantId?: string\n): Promise<EntitySchema | null> {\n // Try tenant-specific first, then platform default\n if (tenantId) {\n const tenantEntry = await (ctx.db as any)\n .query(\"schemaEnumConfig\")\n .withIndex(\"by_tenant_category\", (q: any) =>\n q.eq(\"tenantId\", tenantId).eq(\"category\", \"entity_type\")\n )\n .collect();\n\n const tenantMatch = tenantEntry.find(\n (e: any) => e.value === nodeType && e.status === \"active\"\n );\n if (tenantMatch?.metadata?.schema) {\n return tenantMatch.metadata.schema as EntitySchema;\n }\n }\n\n // Fall back to platform default\n const platformEntry = await (ctx.db as any)\n .query(\"schemaEnumConfig\")\n .withIndex(\"by_category_value\", (q: any) =>\n q.eq(\"category\", \"entity_type\").eq(\"value\", nodeType)\n )\n .first();\n\n if (platformEntry?.metadata?.schema && platformEntry.status === \"active\") {\n return platformEntry.metadata.schema as EntitySchema;\n }\n\n return null;\n}\n\n// =============================================================================\n// VALIDATION\n// =============================================================================\n\n/**\n * Validate entity metadata against the registered schema.\n *\n * Policy: strict on create (unregistered types fail), lenient on read.\n *\n * @param ctx - Convex query/mutation context\n * @param nodeType - The entity nodeType (e.g., \"company\", \"person\")\n * @param metadata - The metadata object to validate\n * @param tenantId - Optional tenant ID for tenant-specific schemas\n * @returns ValidationResult with errors if invalid\n */\nexport async function validateEntityMetadata(\n ctx: QueryCtx | MutationCtx,\n nodeType: string,\n metadata: Record<string, unknown> | undefined | null,\n tenantId?: string\n): Promise<ValidationResult> {\n const errors: string[] = [];\n\n const schema = await getEntityTypeSchema(ctx, nodeType, tenantId);\n\n if (!schema) {\n return {\n valid: false,\n errors: [\n `No registered schema for entity type \"${nodeType}\". Register it in schemaEnumConfig (category=\"entity_type\") before creating entities of this type.`,\n ],\n };\n }\n\n const meta = metadata || {};\n\n // Check required fields\n for (const [fieldName, fieldDef] of Object.entries(schema)) {\n if (fieldDef.required) {\n const value = meta[fieldName];\n if (value === undefined || value === null || value === \"\") {\n errors.push(`Required field \"${fieldName}\" is missing or empty`);\n }\n }\n }\n\n // Check field types for provided fields\n for (const [fieldName, value] of Object.entries(meta)) {\n const fieldDef = schema[fieldName];\n if (!fieldDef) {\n // Extra fields are allowed (loose metadata tolerance)\n continue;\n }\n\n if (value === undefined || value === null) {\n // null/undefined are allowed for optional fields (already caught above for required)\n continue;\n }\n\n const actualType = typeof value;\n if (actualType !== fieldDef.type) {\n errors.push(\n `Field \"${fieldName}\" expected type \"${fieldDef.type}\" but got \"${actualType}\"`\n );\n }\n }\n\n return {\n valid: errors.length === 0,\n errors,\n };\n}\n\n/**\n * Check if a nodeType is a registered entity type (platform or tenant).\n */\nexport async function isRegisteredEntityType(\n ctx: QueryCtx | MutationCtx,\n nodeType: string,\n tenantId?: string\n): Promise<boolean> {\n const schema = await getEntityTypeSchema(ctx, nodeType, tenantId);\n return schema !== null;\n}\n"]}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Epistemic Answers API
|
|
3
|
+
*
|
|
4
|
+
* Answers are first-class L2 nodes in the epistemic spine.
|
|
5
|
+
* Every answer is an immutable snapshot — new answers create new nodes,
|
|
6
|
+
* old ones get `superseded`. This gives full version history and lets
|
|
7
|
+
* answers have their own edges in the knowledge graph.
|
|
8
|
+
*
|
|
9
|
+
* Edge: Answer —responds_to→ Question
|
|
10
|
+
* Edge: Answer —based_on→ Evidence (for each supporting evidence)
|
|
11
|
+
* Edge: NewAnswer —supersedes→ OldAnswer (for versioning)
|
|
12
|
+
*
|
|
13
|
+
* @see /docs/epistemic-invariants/00-epistemic-invariants.md
|
|
14
|
+
*/
|
|
15
|
+
/**
|
|
16
|
+
* Create a new answer node for a question.
|
|
17
|
+
*
|
|
18
|
+
* 1. Validates the question exists
|
|
19
|
+
* 2. Determines version number
|
|
20
|
+
* 3. Supersedes previous active answer (if any)
|
|
21
|
+
* 4. Creates the answer node
|
|
22
|
+
* 5. Creates responds_to edge (Answer → Question)
|
|
23
|
+
* 6. Creates supersedes edge (NewAnswer → OldAnswer) if versioning
|
|
24
|
+
* 7. Creates based_on edges (Answer → Evidence) for each evidence node
|
|
25
|
+
* 8. Updates question's answerQuality field
|
|
26
|
+
* 9. Logs to epistemicAudit
|
|
27
|
+
*/
|
|
28
|
+
declare const create: any;
|
|
29
|
+
/**
|
|
30
|
+
* Internal mutation for creating answer nodes.
|
|
31
|
+
* Called from epistemicQuestions.updateStatus when status === "answered".
|
|
32
|
+
*/
|
|
33
|
+
declare const createInternal: any;
|
|
34
|
+
/**
|
|
35
|
+
* Get all answers for a question, optionally including superseded.
|
|
36
|
+
*/
|
|
37
|
+
declare const getByQuestion: any;
|
|
38
|
+
/**
|
|
39
|
+
* Get the single active (latest) answer for a question.
|
|
40
|
+
*/
|
|
41
|
+
declare const getLatestForQuestion: any;
|
|
42
|
+
/**
|
|
43
|
+
* Get full version history for answers to a question.
|
|
44
|
+
* Returns answers ordered by version number (newest first).
|
|
45
|
+
*/
|
|
46
|
+
declare const getVersionHistory: any;
|
|
47
|
+
/**
|
|
48
|
+
* Backfill answer nodes for questions that have answer text in metadata
|
|
49
|
+
* but never had an answer node created (due to the QuestionAnswerEditor bug
|
|
50
|
+
* where saveAnswer passed wrong params to updateStatus).
|
|
51
|
+
*
|
|
52
|
+
* Run once via Convex dashboard:
|
|
53
|
+
* internal.epistemicAnswers.backfillAnswerNodes({ projectId, userId })
|
|
54
|
+
*/
|
|
55
|
+
declare const backfillAnswerNodes: any;
|
|
56
|
+
|
|
57
|
+
declare const epistemicAnswers_backfillAnswerNodes: typeof backfillAnswerNodes;
|
|
58
|
+
declare const epistemicAnswers_create: typeof create;
|
|
59
|
+
declare const epistemicAnswers_createInternal: typeof createInternal;
|
|
60
|
+
declare const epistemicAnswers_getByQuestion: typeof getByQuestion;
|
|
61
|
+
declare const epistemicAnswers_getLatestForQuestion: typeof getLatestForQuestion;
|
|
62
|
+
declare const epistemicAnswers_getVersionHistory: typeof getVersionHistory;
|
|
63
|
+
declare namespace epistemicAnswers {
|
|
64
|
+
export { epistemicAnswers_backfillAnswerNodes as backfillAnswerNodes, epistemicAnswers_create as create, epistemicAnswers_createInternal as createInternal, epistemicAnswers_getByQuestion as getByQuestion, epistemicAnswers_getLatestForQuestion as getLatestForQuestion, epistemicAnswers_getVersionHistory as getVersionHistory };
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export { createInternal as a, getLatestForQuestion as b, create as c, getVersionHistory as d, epistemicAnswers as e, backfillAnswerNodes as f, getByQuestion as g };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { f as backfillAnswerNodes, c as create, a as createInternal, g as getByQuestion, b as getLatestForQuestion, d as getVersionHistory } from './epistemicAnswers-DSP1slZ9.js';
|