@lucern/contracts 1.0.3 → 1.0.4

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.
Files changed (107) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/dist/context-pack.contract.d.ts +10 -0
  3. package/dist/context-pack.contract.js.map +1 -1
  4. package/dist/dsl.d.ts +1 -0
  5. package/dist/dsl.js +10 -3
  6. package/dist/dsl.js.map +1 -1
  7. package/dist/dsl.values.js +10 -3
  8. package/dist/dsl.values.js.map +1 -1
  9. package/dist/function-registry/beliefs.js +302 -0
  10. package/dist/function-registry/beliefs.js.map +1 -1
  11. package/dist/function-registry/coding.js +302 -0
  12. package/dist/function-registry/coding.js.map +1 -1
  13. package/dist/function-registry/context.js +302 -0
  14. package/dist/function-registry/context.js.map +1 -1
  15. package/dist/function-registry/contracts.js +302 -0
  16. package/dist/function-registry/contracts.js.map +1 -1
  17. package/dist/function-registry/coordination.js +302 -0
  18. package/dist/function-registry/coordination.js.map +1 -1
  19. package/dist/function-registry/edges.js +302 -0
  20. package/dist/function-registry/edges.js.map +1 -1
  21. package/dist/function-registry/evidence.js +302 -0
  22. package/dist/function-registry/evidence.js.map +1 -1
  23. package/dist/function-registry/graph.js +302 -0
  24. package/dist/function-registry/graph.js.map +1 -1
  25. package/dist/function-registry/helpers.js +302 -0
  26. package/dist/function-registry/helpers.js.map +1 -1
  27. package/dist/function-registry/identity.js +302 -0
  28. package/dist/function-registry/identity.js.map +1 -1
  29. package/dist/function-registry/index.d.ts +410 -6
  30. package/dist/function-registry/index.js +508 -2
  31. package/dist/function-registry/index.js.map +1 -1
  32. package/dist/function-registry/judgments.js +302 -0
  33. package/dist/function-registry/judgments.js.map +1 -1
  34. package/dist/function-registry/legacy.js +302 -0
  35. package/dist/function-registry/legacy.js.map +1 -1
  36. package/dist/function-registry/lenses.js +302 -0
  37. package/dist/function-registry/lenses.js.map +1 -1
  38. package/dist/function-registry/manifest.d.ts +2 -2
  39. package/dist/function-registry/manifest.js +10 -0
  40. package/dist/function-registry/manifest.js.map +1 -1
  41. package/dist/function-registry/nodes.js +302 -0
  42. package/dist/function-registry/nodes.js.map +1 -1
  43. package/dist/function-registry/ontologies.js +302 -0
  44. package/dist/function-registry/ontologies.js.map +1 -1
  45. package/dist/function-registry/pipeline.js +302 -0
  46. package/dist/function-registry/pipeline.js.map +1 -1
  47. package/dist/function-registry/questions.js +302 -0
  48. package/dist/function-registry/questions.js.map +1 -1
  49. package/dist/function-registry/tasks.js +302 -0
  50. package/dist/function-registry/tasks.js.map +1 -1
  51. package/dist/function-registry/topics.js +302 -0
  52. package/dist/function-registry/topics.js.map +1 -1
  53. package/dist/function-registry/worktrees.js +302 -0
  54. package/dist/function-registry/worktrees.js.map +1 -1
  55. package/dist/generated/convexSchemas.js +1 -1
  56. package/dist/generated/convexSchemas.js.map +1 -1
  57. package/dist/generated/infisicalRuntimeEnv.js +9 -9
  58. package/dist/generated/infisicalRuntimeEnv.js.map +1 -1
  59. package/dist/generated/schema-manifest.json +10 -1
  60. package/dist/index.d.ts +3 -1
  61. package/dist/index.js +343 -17
  62. package/dist/index.js.map +1 -1
  63. package/dist/infisical-runtime.contract.d.ts +3 -3
  64. package/dist/infisical-runtime.contract.js +3 -3
  65. package/dist/infisical-runtime.contract.js.map +1 -1
  66. package/dist/infisical-runtime.platform-secrets.d.ts +3 -3
  67. package/dist/infisical-runtime.platform-secrets.js +3 -3
  68. package/dist/infisical-runtime.platform-secrets.js.map +1 -1
  69. package/dist/manifests/edge-policy-manifest.d.ts +1 -1
  70. package/dist/manifests/infisical-runtime-manifest.d.ts +3 -3
  71. package/dist/manifests/infisical-runtime-manifest.js +3 -3
  72. package/dist/manifests/infisical-runtime-manifest.js.map +1 -1
  73. package/dist/proof-attestation.json +1 -1
  74. package/dist/schemas/index.js +29 -2
  75. package/dist/schemas/index.js.map +1 -1
  76. package/dist/schemas/manifest.d.ts +60 -25
  77. package/dist/schemas/manifest.js +29 -2
  78. package/dist/schemas/manifest.js.map +1 -1
  79. package/dist/schemas/tables/kernel/embedding.d.ts +8 -1
  80. package/dist/schemas/tables/kernel/embedding.js +29 -2
  81. package/dist/schemas/tables/kernel/embedding.js.map +1 -1
  82. package/dist/schemas/tables/kernel/intelligence.d.ts +4 -4
  83. package/dist/schemas.values.js +29 -2
  84. package/dist/schemas.values.js.map +1 -1
  85. package/dist/sdk-methods.contract.d.ts +5 -0
  86. package/dist/sdk-tools.contract.js +292 -0
  87. package/dist/sdk-tools.contract.js.map +1 -1
  88. package/dist/sdk-tools.contract.registry.js +292 -0
  89. package/dist/sdk-tools.contract.registry.js.map +1 -1
  90. package/dist/sdk-tools.contract.values.js +292 -0
  91. package/dist/sdk-tools.contract.values.js.map +1 -1
  92. package/dist/tool-contracts.d.ts +2 -0
  93. package/dist/tool-contracts.embeddings.d.ts +8 -0
  94. package/dist/tool-contracts.embeddings.js +120 -0
  95. package/dist/tool-contracts.embeddings.js.map +1 -0
  96. package/dist/tool-contracts.hybrid-discovery.d.ts +10 -0
  97. package/dist/tool-contracts.hybrid-discovery.js +148 -0
  98. package/dist/tool-contracts.hybrid-discovery.js.map +1 -0
  99. package/dist/tool-contracts.js +293 -1
  100. package/dist/tool-contracts.js.map +1 -1
  101. package/dist/tool-contracts.questions-listing.js +20 -0
  102. package/dist/tool-contracts.questions-listing.js.map +1 -1
  103. package/dist/tool-contracts.values.d.ts +2 -0
  104. package/dist/tool-contracts.values.js +292 -0
  105. package/dist/tool-contracts.values.js.map +1 -1
  106. package/package.json +10 -2
  107. package/dist/{edge-policy-manifest-4KOSP4nk.d.ts → edge-policy-manifest-CT8Y4IeW.d.ts} +2 -2
@@ -11,7 +11,7 @@ type LucernOperationManifestEntry = {
11
11
  rationale: string;
12
12
  };
13
13
  declare const MCP_CORE_OPERATION_NAMES: readonly ["compile_context", "identity_whoami", "resolve_interactive_principal", "check_permission", "filter_by_permission", "create_belief", "get_belief", "list_beliefs", "refine_belief", "modulate_confidence", "fork_belief", "archive_belief", "search_beliefs", "bisect_confidence", "create_evidence", "get_evidence", "list_evidence", "search_evidence", "link_evidence_to_belief", "link_evidence_to_question", "create_question", "get_question", "list_questions", "refine_question", "update_question_status", "archive_question", "create_answer", "get_answer", "find_missing_questions", "get_high_priority_questions", "get_falsification_questions", "create_epistemic_node", "get_epistemic_node", "list_epistemic_nodes", "update_epistemic_node", "archive_epistemic_node", "verify_epistemic_node", "supersede_epistemic_node", "batch_create_epistemic_nodes", "create_topic", "get_topic", "list_topics", "update_topic", "get_topic_tree", "materialize_topic_graph", "get_topic_graph_spine"];
14
- declare const MCP_ANALYSIS_PLATFORM_OPERATION_NAMES: readonly ["create_edge", "update_edge", "remove_edge", "remove_edges_between", "batch_create_edges", "query_lineage", "traverse_graph", "get_graph_neighborhood", "get_graph_structure_analysis", "list_graph_intelligence_queries", "run_graph_intelligence_query", "find_contradictions", "flag_contradiction", "detect_confirmation_bias", "get_topic_coverage", "get_graph_gaps"];
14
+ declare const MCP_ANALYSIS_PLATFORM_OPERATION_NAMES: readonly ["create_edge", "update_edge", "remove_edge", "remove_edges_between", "batch_create_edges", "query_lineage", "traverse_graph", "get_graph_neighborhood", "get_graph_structure_analysis", "list_graph_intelligence_queries", "run_graph_intelligence_query", "list_missing_embeddings", "search_embeddings", "get_embeddings_by_node_ids", "queue_embedding_backfill", "hybrid_discover", "resolve_topic_semantic", "expand_graph_neighborhood", "find_related_nodes", "analyze_graph_impact", "detect_graph_drift", "find_contradictions", "flag_contradiction", "detect_confirmation_bias", "get_topic_coverage", "get_graph_gaps"];
15
15
  declare const MCP_ANALYSIS_TENANT_OPERATION_NAMES: readonly ["analyze_topic_density", "discover_entity_connections", "trace_entity_impact"];
16
16
  declare const MCP_WORKFLOW_PLATFORM_OPERATION_NAMES: readonly ["list_lenses", "apply_lens_to_topic", "remove_lens_from_topic", "get_ontology", "list_ontologies", "apply_ontology", "match_entity_type", "resolve_effective_ontology", "add_worktree", "get_worktree", "activate_worktree", "list_worktrees", "list_all_worktrees", "list_campaigns", "update_worktree_targets", "update_worktree_metadata", "create_task", "list_tasks", "update_task", "complete_task"];
17
17
  declare const MCP_WORKFLOW_TENANT_OPERATION_NAMES: readonly ["resolve_effective_ontology", "get_observation_context", "ingest_observation", "merge"];
@@ -19,7 +19,7 @@ declare const MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES: readonly ["create_lens",
19
19
  declare const MCP_GOVERNANCE_TENANT_OPERATION_NAMES: readonly ["create_epistemic_contract", "evaluate_contract", "get_contract_status", "publish_ontology_version", "deprecate_ontology_version", "manage_write_policy"];
20
20
  declare const MCP_AUTOMATION_OPERATION_NAMES: readonly ["apply_auto_branching", "trigger_belief_review"];
21
21
  declare const DUPLICATE_OPERATION_NAMES: readonly ["link_evidence"];
22
- declare const PLATFORM_PUBLIC_OPERATION_NAMES: readonly ["compile_context", "identity_whoami", "resolve_interactive_principal", "check_permission", "filter_by_permission", "create_belief", "get_belief", "list_beliefs", "refine_belief", "modulate_confidence", "fork_belief", "archive_belief", "search_beliefs", "bisect_confidence", "create_evidence", "get_evidence", "list_evidence", "search_evidence", "link_evidence_to_belief", "link_evidence_to_question", "create_question", "get_question", "list_questions", "refine_question", "update_question_status", "archive_question", "create_answer", "get_answer", "find_missing_questions", "get_high_priority_questions", "get_falsification_questions", "create_epistemic_node", "get_epistemic_node", "list_epistemic_nodes", "update_epistemic_node", "archive_epistemic_node", "verify_epistemic_node", "supersede_epistemic_node", "batch_create_epistemic_nodes", "create_topic", "get_topic", "list_topics", "update_topic", "get_topic_tree", "materialize_topic_graph", "get_topic_graph_spine", "create_edge", "update_edge", "remove_edge", "remove_edges_between", "batch_create_edges", "query_lineage", "traverse_graph", "get_graph_neighborhood", "get_graph_structure_analysis", "list_graph_intelligence_queries", "run_graph_intelligence_query", "find_contradictions", "flag_contradiction", "detect_confirmation_bias", "get_topic_coverage", "get_graph_gaps", "list_lenses", "apply_lens_to_topic", "remove_lens_from_topic", "get_ontology", "list_ontologies", "apply_ontology", "match_entity_type", "resolve_effective_ontology", "add_worktree", "get_worktree", "activate_worktree", "list_worktrees", "list_all_worktrees", "list_campaigns", "update_worktree_targets", "update_worktree_metadata", "create_task", "list_tasks", "update_task", "complete_task", "create_lens", "create_ontology", "update_ontology", "archive_ontology", "create_ontology_version", "link_evidence"];
22
+ declare const PLATFORM_PUBLIC_OPERATION_NAMES: readonly ["compile_context", "identity_whoami", "resolve_interactive_principal", "check_permission", "filter_by_permission", "create_belief", "get_belief", "list_beliefs", "refine_belief", "modulate_confidence", "fork_belief", "archive_belief", "search_beliefs", "bisect_confidence", "create_evidence", "get_evidence", "list_evidence", "search_evidence", "link_evidence_to_belief", "link_evidence_to_question", "create_question", "get_question", "list_questions", "refine_question", "update_question_status", "archive_question", "create_answer", "get_answer", "find_missing_questions", "get_high_priority_questions", "get_falsification_questions", "create_epistemic_node", "get_epistemic_node", "list_epistemic_nodes", "update_epistemic_node", "archive_epistemic_node", "verify_epistemic_node", "supersede_epistemic_node", "batch_create_epistemic_nodes", "create_topic", "get_topic", "list_topics", "update_topic", "get_topic_tree", "materialize_topic_graph", "get_topic_graph_spine", "create_edge", "update_edge", "remove_edge", "remove_edges_between", "batch_create_edges", "query_lineage", "traverse_graph", "get_graph_neighborhood", "get_graph_structure_analysis", "list_graph_intelligence_queries", "run_graph_intelligence_query", "list_missing_embeddings", "search_embeddings", "get_embeddings_by_node_ids", "queue_embedding_backfill", "hybrid_discover", "resolve_topic_semantic", "expand_graph_neighborhood", "find_related_nodes", "analyze_graph_impact", "detect_graph_drift", "find_contradictions", "flag_contradiction", "detect_confirmation_bias", "get_topic_coverage", "get_graph_gaps", "list_lenses", "apply_lens_to_topic", "remove_lens_from_topic", "get_ontology", "list_ontologies", "apply_ontology", "match_entity_type", "resolve_effective_ontology", "add_worktree", "get_worktree", "activate_worktree", "list_worktrees", "list_all_worktrees", "list_campaigns", "update_worktree_targets", "update_worktree_metadata", "create_task", "list_tasks", "update_task", "complete_task", "create_lens", "create_ontology", "update_ontology", "archive_ontology", "create_ontology_version", "link_evidence"];
23
23
  declare const TENANT_PUBLIC_OPERATION_NAMES: readonly ["analyze_topic_density", "discover_entity_connections", "trace_entity_impact", "resolve_effective_ontology", "get_observation_context", "ingest_observation", "merge", "create_epistemic_contract", "evaluate_contract", "get_contract_status", "publish_ontology_version", "deprecate_ontology_version", "manage_write_policy", "apply_auto_branching", "trigger_belief_review"];
24
24
  declare const PLATFORM_INTERNAL_OPERATION_NAMES: readonly ["register_session", "heartbeat_session", "end_session", "list_active_sessions", "send_agent_message", "broadcast_message", "get_agent_inbox", "claim_files", "generate_session_handoff", "record_scope_learning", "pipeline_snapshot", "seed_belief_lattice", "get_lattice_coverage", "get_code_context", "get_change_history", "get_failure_log", "record_attempt", "begin_build_session", "push", "open_pull_request", "record_judgment", "get_audit_trail"];
25
25
  declare const LEGACY_COMPAT_OPERATION_NAMES: readonly ["discover", "add_evidence", "answer_question", "get_confidence_history"];
@@ -109,6 +109,16 @@ var MCP_ANALYSIS_PLATFORM_OPERATION_NAMES = [
109
109
  "get_graph_structure_analysis",
110
110
  "list_graph_intelligence_queries",
111
111
  "run_graph_intelligence_query",
112
+ "list_missing_embeddings",
113
+ "search_embeddings",
114
+ "get_embeddings_by_node_ids",
115
+ "queue_embedding_backfill",
116
+ "hybrid_discover",
117
+ "resolve_topic_semantic",
118
+ "expand_graph_neighborhood",
119
+ "find_related_nodes",
120
+ "analyze_graph_impact",
121
+ "detect_graph_drift",
112
122
  "find_contradictions",
113
123
  "flag_contradiction",
114
124
  "detect_confirmation_bias",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/function-registry/manifest.ts"],"names":[],"mappings":"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","file":"manifest.js","sourcesContent":["import type {\n FunctionSurfaceIntent,\n SurfaceClass,\n SurfaceExposure,\n FunctionSurfaceMap,\n} from \"./types.js\";\n\nexport type LucernOperationManifestEntry = {\n name: string;\n surfaceClass: SurfaceClass;\n surfaceIntent: FunctionSurfaceIntent;\n surfaces: FunctionSurfaceMap;\n rationale: string;\n};\n\nconst publicEverywhere: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"public\",\n cli: \"public\",\n};\n\nconst internalSystem: FunctionSurfaceMap = {\n sdk: \"internal\",\n rest: \"internal\",\n mcp: \"internal\",\n cli: \"internal\",\n};\n\nconst publicWithInternalMcp: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"internal\",\n cli: \"public\",\n};\n\nconst publicWithoutMcp: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"none\",\n cli: \"none\",\n};\n\nconst sdkOnlyPublic: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"none\",\n mcp: \"none\",\n cli: \"none\",\n};\n\nconst mcpOnlyInternal: FunctionSurfaceMap = {\n sdk: \"none\",\n rest: \"none\",\n mcp: \"internal\",\n cli: \"none\",\n};\n\nfunction entries(\n names: readonly string[],\n surfaceClass: SurfaceClass,\n surfaceIntent: FunctionSurfaceIntent,\n surfaces: FunctionSurfaceMap,\n rationale: string\n): Record<string, LucernOperationManifestEntry> {\n return Object.fromEntries(\n names.map((name) => [\n name,\n {\n name,\n surfaceClass,\n surfaceIntent,\n surfaces,\n rationale,\n },\n ])\n );\n}\n\nexport const MCP_CORE_OPERATION_NAMES = [\n \"compile_context\",\n \"identity_whoami\",\n \"resolve_interactive_principal\",\n \"check_permission\",\n \"filter_by_permission\",\n \"create_belief\",\n \"get_belief\",\n \"list_beliefs\",\n \"refine_belief\",\n \"modulate_confidence\",\n \"fork_belief\",\n \"archive_belief\",\n \"search_beliefs\",\n \"bisect_confidence\",\n \"create_evidence\",\n \"get_evidence\",\n \"list_evidence\",\n \"search_evidence\",\n \"link_evidence_to_belief\",\n \"link_evidence_to_question\",\n \"create_question\",\n \"get_question\",\n \"list_questions\",\n \"refine_question\",\n \"update_question_status\",\n \"archive_question\",\n \"create_answer\",\n \"get_answer\",\n \"find_missing_questions\",\n \"get_high_priority_questions\",\n \"get_falsification_questions\",\n \"create_epistemic_node\",\n \"get_epistemic_node\",\n \"list_epistemic_nodes\",\n \"update_epistemic_node\",\n \"archive_epistemic_node\",\n \"verify_epistemic_node\",\n \"supersede_epistemic_node\",\n \"batch_create_epistemic_nodes\",\n \"create_topic\",\n \"get_topic\",\n \"list_topics\",\n \"update_topic\",\n \"get_topic_tree\",\n \"materialize_topic_graph\",\n \"get_topic_graph_spine\",\n] as const;\n\nexport const MCP_ANALYSIS_PLATFORM_OPERATION_NAMES = [\n \"create_edge\",\n \"update_edge\",\n \"remove_edge\",\n \"remove_edges_between\",\n \"batch_create_edges\",\n \"query_lineage\",\n \"traverse_graph\",\n \"get_graph_neighborhood\",\n \"get_graph_structure_analysis\",\n \"list_graph_intelligence_queries\",\n \"run_graph_intelligence_query\",\n \"find_contradictions\",\n \"flag_contradiction\",\n \"detect_confirmation_bias\",\n \"get_topic_coverage\",\n \"get_graph_gaps\",\n] as const;\n\nexport const MCP_ANALYSIS_TENANT_OPERATION_NAMES = [\n \"analyze_topic_density\",\n \"discover_entity_connections\",\n \"trace_entity_impact\",\n] as const;\n\nexport const MCP_WORKFLOW_PLATFORM_OPERATION_NAMES = [\n \"list_lenses\",\n \"apply_lens_to_topic\",\n \"remove_lens_from_topic\",\n \"get_ontology\",\n \"list_ontologies\",\n \"apply_ontology\",\n \"match_entity_type\",\n \"resolve_effective_ontology\",\n \"add_worktree\",\n \"get_worktree\",\n \"activate_worktree\",\n \"list_worktrees\",\n \"list_all_worktrees\",\n \"list_campaigns\",\n \"update_worktree_targets\",\n \"update_worktree_metadata\",\n \"create_task\",\n \"list_tasks\",\n \"update_task\",\n \"complete_task\",\n] as const;\n\nexport const MCP_WORKFLOW_TENANT_OPERATION_NAMES = [\n \"resolve_effective_ontology\",\n \"get_observation_context\",\n \"ingest_observation\",\n \"merge\",\n] as const;\n\nexport const MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES = [\n \"create_lens\",\n \"create_ontology\",\n \"update_ontology\",\n \"archive_ontology\",\n \"create_ontology_version\",\n] as const;\n\nexport const MCP_GOVERNANCE_TENANT_OPERATION_NAMES = [\n \"create_epistemic_contract\",\n \"evaluate_contract\",\n \"get_contract_status\",\n \"publish_ontology_version\",\n \"deprecate_ontology_version\",\n \"manage_write_policy\",\n] as const;\n\nexport const MCP_AUTOMATION_OPERATION_NAMES = [\n \"apply_auto_branching\",\n \"trigger_belief_review\",\n] as const;\n\nexport const DUPLICATE_OPERATION_NAMES = [\n \"link_evidence\",\n] as const;\n\nexport const PLATFORM_PUBLIC_OPERATION_NAMES = [\n ...MCP_CORE_OPERATION_NAMES,\n ...MCP_ANALYSIS_PLATFORM_OPERATION_NAMES,\n ...MCP_WORKFLOW_PLATFORM_OPERATION_NAMES,\n ...MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES,\n ...DUPLICATE_OPERATION_NAMES,\n] as const;\n\nexport const TENANT_PUBLIC_OPERATION_NAMES = [\n ...MCP_ANALYSIS_TENANT_OPERATION_NAMES,\n ...MCP_WORKFLOW_TENANT_OPERATION_NAMES,\n ...MCP_GOVERNANCE_TENANT_OPERATION_NAMES,\n ...MCP_AUTOMATION_OPERATION_NAMES,\n] as const;\n\nexport const PLATFORM_INTERNAL_OPERATION_NAMES = [\n \"register_session\",\n \"heartbeat_session\",\n \"end_session\",\n \"list_active_sessions\",\n \"send_agent_message\",\n \"broadcast_message\",\n \"get_agent_inbox\",\n \"claim_files\",\n \"generate_session_handoff\",\n \"record_scope_learning\",\n \"pipeline_snapshot\",\n \"seed_belief_lattice\",\n \"get_lattice_coverage\",\n \"get_code_context\",\n \"get_change_history\",\n \"get_failure_log\",\n \"record_attempt\",\n \"begin_build_session\",\n \"push\",\n \"open_pull_request\",\n \"record_judgment\",\n \"get_audit_trail\",\n] as const;\n\nexport const LEGACY_COMPAT_OPERATION_NAMES = [\n \"discover\",\n \"add_evidence\",\n \"answer_question\",\n \"get_confidence_history\",\n] as const;\n\nexport const SDK_ONLY_OPERATION_NAMES = [\n \"start_worktree\",\n \"update_worktree_phase\",\n \"advance_worktree_phase\",\n \"add_note_to_worktree\",\n \"link_document_to_worktree\",\n \"link_evidence_to_worktree\",\n \"link_question_to_worktree\",\n \"link_belief_to_worktree\",\n \"create_synthesized_belief\",\n \"complete_hypothesis_formation\",\n \"complete_evidence_review\",\n \"refine_worktree_belief\",\n \"trace_provenance\",\n \"get_belief_relationships\",\n \"get_belief_support_chain\",\n \"explore_connections\",\n \"get_deep_lineage\",\n \"graph_aware_search\",\n \"get_collection_conviction\",\n \"get_conviction_trend\",\n \"analyze_belief_criticality\",\n \"analyze_belief_cluster_candidates\",\n \"create_belief_conditional\",\n \"get_necessary_evidence\",\n \"analyze_reasoning_depth\",\n \"get_evidence_by_methodology\",\n \"create_evidence_task\",\n \"get_task_counts\",\n \"add_research_action\",\n \"get_predictions\",\n \"get_surprise_detection\",\n \"get_challenged_beliefs\",\n \"get_causal_chains\",\n \"get_non_consensus_beliefs\",\n \"get_beliefs_by_epistemic_status\",\n \"detect_anchoring_bias\",\n \"detect_source_concentration\",\n \"find_soft_contradictions\",\n \"find_semantic_bridges\",\n \"find_semantic_orphans\",\n] as const;\n\nexport const MCP_ONLY_INTERNAL_OPERATION_NAMES = [\n \"evaluate_engineering_contract\",\n \"evaluate_research_contract\",\n] as const;\n\nexport const FORBIDDEN_APPLICATION_OPERATION_NAMES = [\n \"execute_deep_research\",\n \"search_sources\",\n \"search_resources\",\n \"get_privileged_evidence\",\n \"get_privileged_signals\",\n \"get_thesis_artifacts\",\n] as const;\n\nexport const LUCERN_OPERATION_MANIFEST = {\n ...entries(\n MCP_CORE_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_core\",\n publicEverywhere,\n \"Default conversational Lucern MCP primitive for reading, writing, and shaping the reasoning graph.\"\n ),\n ...entries(\n MCP_ANALYSIS_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"High-signal graph analysis operation that belongs in chat/MCP because users naturally ask for gaps, contradictions, lineage, and coverage.\"\n ),\n ...entries(\n MCP_ANALYSIS_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"Tenant-scoped analysis operation that remains MCP-visible because agents can answer graph-quality and impact questions from chat.\"\n ),\n ...entries(\n MCP_WORKFLOW_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_workflow\",\n publicEverywhere,\n \"Workflow operation expected by coding agents and human MCP users managing Lucern worktrees, tasks, lenses, and observations.\"\n ),\n ...entries(\n MCP_WORKFLOW_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_workflow\",\n publicEverywhere,\n \"Tenant-scoped workflow operation expected by coding agents and human MCP users managing observations and worktree lifecycle.\"\n ),\n ...entries(\n MCP_AUTOMATION_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"Tenant-scoped automation that remains MCP-visible because agents can explicitly request review or branching assistance.\"\n ),\n ...entries(\n MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_governance\",\n publicWithInternalMcp,\n \"Governance/admin operation. SDK, REST, and CLI remain public, but MCP is internal by default to keep chat surfaces focused.\"\n ),\n ...entries(\n MCP_GOVERNANCE_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_governance\",\n publicWithInternalMcp,\n \"Governance/admin operation. SDK, REST, and CLI remain public, but MCP is internal by default to keep chat surfaces focused.\"\n ),\n ...entries(\n DUPLICATE_OPERATION_NAMES,\n \"platform_public\",\n \"compatibility\",\n publicWithoutMcp,\n \"Duplicate compatibility operation kept for SDK/REST callers, removed from MCP/CLI discovery in favor of the canonical specific tool.\"\n ),\n ...entries(\n PLATFORM_INTERNAL_OPERATION_NAMES,\n \"platform_internal\",\n \"system\",\n internalSystem,\n \"Lucern system/background operation. Available to platform code paths, hidden from public MCP discovery.\"\n ),\n ...entries(\n LEGACY_COMPAT_OPERATION_NAMES,\n \"legacy_compat\",\n \"compatibility\",\n publicWithoutMcp,\n \"Temporary compatibility operation. Must name a canonical replacement before removal.\"\n ),\n ...entries(\n SDK_ONLY_OPERATION_NAMES,\n \"tenant_public\",\n \"sdk_granular\",\n sdkOnlyPublic,\n \"Granular Lucern SDK operation. Not an MCP, REST, or CLI tool until backed by the generated function pipe.\"\n ),\n ...entries(\n MCP_ONLY_INTERNAL_OPERATION_NAMES,\n \"platform_internal\",\n \"system\",\n mcpOnlyInternal,\n \"Lucern MCP-only platform operation for local agent/bootstrap or verification workflows. Hidden from public discovery.\"\n ),\n} as const satisfies Record<string, LucernOperationManifestEntry>;\n\nexport type LucernOperationName = keyof typeof LUCERN_OPERATION_MANIFEST;\n\nexport function surfaceEnabled(exposure: SurfaceExposure): boolean {\n return exposure !== \"none\";\n}\n\nexport function surfaceIntentGateViolations(\n entry: LucernOperationManifestEntry\n): string[] {\n const violations: string[] = [];\n if (entry.surfaceIntent === \"system\" && entry.surfaces.mcp === \"public\") {\n violations.push(\"system operations cannot be public MCP tools\");\n }\n if (\n entry.surfaceIntent === \"compatibility\" &&\n entry.surfaces.mcp !== \"none\"\n ) {\n violations.push(\"compatibility operations must not be MCP tools\");\n }\n if (entry.surfaceIntent === \"sdk_granular\" && entry.surfaces.mcp !== \"none\") {\n violations.push(\"SDK-granular operations must not be MCP tools\");\n }\n if (\n entry.surfaceIntent === \"mcp_governance\" &&\n entry.surfaces.mcp === \"public\"\n ) {\n violations.push(\"governance operations must be internal or absent from MCP\");\n }\n return violations;\n}\n"]}
1
+ {"version":3,"sources":["../../src/function-registry/manifest.ts"],"names":[],"mappings":"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","file":"manifest.js","sourcesContent":["import type {\n FunctionSurfaceIntent,\n SurfaceClass,\n SurfaceExposure,\n FunctionSurfaceMap,\n} from \"./types.js\";\n\nexport type LucernOperationManifestEntry = {\n name: string;\n surfaceClass: SurfaceClass;\n surfaceIntent: FunctionSurfaceIntent;\n surfaces: FunctionSurfaceMap;\n rationale: string;\n};\n\nconst publicEverywhere: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"public\",\n cli: \"public\",\n};\n\nconst internalSystem: FunctionSurfaceMap = {\n sdk: \"internal\",\n rest: \"internal\",\n mcp: \"internal\",\n cli: \"internal\",\n};\n\nconst publicWithInternalMcp: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"internal\",\n cli: \"public\",\n};\n\nconst publicWithoutMcp: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"public\",\n mcp: \"none\",\n cli: \"none\",\n};\n\nconst sdkOnlyPublic: FunctionSurfaceMap = {\n sdk: \"public\",\n rest: \"none\",\n mcp: \"none\",\n cli: \"none\",\n};\n\nconst mcpOnlyInternal: FunctionSurfaceMap = {\n sdk: \"none\",\n rest: \"none\",\n mcp: \"internal\",\n cli: \"none\",\n};\n\nfunction entries(\n names: readonly string[],\n surfaceClass: SurfaceClass,\n surfaceIntent: FunctionSurfaceIntent,\n surfaces: FunctionSurfaceMap,\n rationale: string\n): Record<string, LucernOperationManifestEntry> {\n return Object.fromEntries(\n names.map((name) => [\n name,\n {\n name,\n surfaceClass,\n surfaceIntent,\n surfaces,\n rationale,\n },\n ])\n );\n}\n\nexport const MCP_CORE_OPERATION_NAMES = [\n \"compile_context\",\n \"identity_whoami\",\n \"resolve_interactive_principal\",\n \"check_permission\",\n \"filter_by_permission\",\n \"create_belief\",\n \"get_belief\",\n \"list_beliefs\",\n \"refine_belief\",\n \"modulate_confidence\",\n \"fork_belief\",\n \"archive_belief\",\n \"search_beliefs\",\n \"bisect_confidence\",\n \"create_evidence\",\n \"get_evidence\",\n \"list_evidence\",\n \"search_evidence\",\n \"link_evidence_to_belief\",\n \"link_evidence_to_question\",\n \"create_question\",\n \"get_question\",\n \"list_questions\",\n \"refine_question\",\n \"update_question_status\",\n \"archive_question\",\n \"create_answer\",\n \"get_answer\",\n \"find_missing_questions\",\n \"get_high_priority_questions\",\n \"get_falsification_questions\",\n \"create_epistemic_node\",\n \"get_epistemic_node\",\n \"list_epistemic_nodes\",\n \"update_epistemic_node\",\n \"archive_epistemic_node\",\n \"verify_epistemic_node\",\n \"supersede_epistemic_node\",\n \"batch_create_epistemic_nodes\",\n \"create_topic\",\n \"get_topic\",\n \"list_topics\",\n \"update_topic\",\n \"get_topic_tree\",\n \"materialize_topic_graph\",\n \"get_topic_graph_spine\",\n] as const;\n\nexport const MCP_ANALYSIS_PLATFORM_OPERATION_NAMES = [\n \"create_edge\",\n \"update_edge\",\n \"remove_edge\",\n \"remove_edges_between\",\n \"batch_create_edges\",\n \"query_lineage\",\n \"traverse_graph\",\n \"get_graph_neighborhood\",\n \"get_graph_structure_analysis\",\n \"list_graph_intelligence_queries\",\n \"run_graph_intelligence_query\",\n \"list_missing_embeddings\",\n \"search_embeddings\",\n \"get_embeddings_by_node_ids\",\n \"queue_embedding_backfill\",\n \"hybrid_discover\",\n \"resolve_topic_semantic\",\n \"expand_graph_neighborhood\",\n \"find_related_nodes\",\n \"analyze_graph_impact\",\n \"detect_graph_drift\",\n \"find_contradictions\",\n \"flag_contradiction\",\n \"detect_confirmation_bias\",\n \"get_topic_coverage\",\n \"get_graph_gaps\",\n] as const;\n\nexport const MCP_ANALYSIS_TENANT_OPERATION_NAMES = [\n \"analyze_topic_density\",\n \"discover_entity_connections\",\n \"trace_entity_impact\",\n] as const;\n\nexport const MCP_WORKFLOW_PLATFORM_OPERATION_NAMES = [\n \"list_lenses\",\n \"apply_lens_to_topic\",\n \"remove_lens_from_topic\",\n \"get_ontology\",\n \"list_ontologies\",\n \"apply_ontology\",\n \"match_entity_type\",\n \"resolve_effective_ontology\",\n \"add_worktree\",\n \"get_worktree\",\n \"activate_worktree\",\n \"list_worktrees\",\n \"list_all_worktrees\",\n \"list_campaigns\",\n \"update_worktree_targets\",\n \"update_worktree_metadata\",\n \"create_task\",\n \"list_tasks\",\n \"update_task\",\n \"complete_task\",\n] as const;\n\nexport const MCP_WORKFLOW_TENANT_OPERATION_NAMES = [\n \"resolve_effective_ontology\",\n \"get_observation_context\",\n \"ingest_observation\",\n \"merge\",\n] as const;\n\nexport const MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES = [\n \"create_lens\",\n \"create_ontology\",\n \"update_ontology\",\n \"archive_ontology\",\n \"create_ontology_version\",\n] as const;\n\nexport const MCP_GOVERNANCE_TENANT_OPERATION_NAMES = [\n \"create_epistemic_contract\",\n \"evaluate_contract\",\n \"get_contract_status\",\n \"publish_ontology_version\",\n \"deprecate_ontology_version\",\n \"manage_write_policy\",\n] as const;\n\nexport const MCP_AUTOMATION_OPERATION_NAMES = [\n \"apply_auto_branching\",\n \"trigger_belief_review\",\n] as const;\n\nexport const DUPLICATE_OPERATION_NAMES = [\n \"link_evidence\",\n] as const;\n\nexport const PLATFORM_PUBLIC_OPERATION_NAMES = [\n ...MCP_CORE_OPERATION_NAMES,\n ...MCP_ANALYSIS_PLATFORM_OPERATION_NAMES,\n ...MCP_WORKFLOW_PLATFORM_OPERATION_NAMES,\n ...MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES,\n ...DUPLICATE_OPERATION_NAMES,\n] as const;\n\nexport const TENANT_PUBLIC_OPERATION_NAMES = [\n ...MCP_ANALYSIS_TENANT_OPERATION_NAMES,\n ...MCP_WORKFLOW_TENANT_OPERATION_NAMES,\n ...MCP_GOVERNANCE_TENANT_OPERATION_NAMES,\n ...MCP_AUTOMATION_OPERATION_NAMES,\n] as const;\n\nexport const PLATFORM_INTERNAL_OPERATION_NAMES = [\n \"register_session\",\n \"heartbeat_session\",\n \"end_session\",\n \"list_active_sessions\",\n \"send_agent_message\",\n \"broadcast_message\",\n \"get_agent_inbox\",\n \"claim_files\",\n \"generate_session_handoff\",\n \"record_scope_learning\",\n \"pipeline_snapshot\",\n \"seed_belief_lattice\",\n \"get_lattice_coverage\",\n \"get_code_context\",\n \"get_change_history\",\n \"get_failure_log\",\n \"record_attempt\",\n \"begin_build_session\",\n \"push\",\n \"open_pull_request\",\n \"record_judgment\",\n \"get_audit_trail\",\n] as const;\n\nexport const LEGACY_COMPAT_OPERATION_NAMES = [\n \"discover\",\n \"add_evidence\",\n \"answer_question\",\n \"get_confidence_history\",\n] as const;\n\nexport const SDK_ONLY_OPERATION_NAMES = [\n \"start_worktree\",\n \"update_worktree_phase\",\n \"advance_worktree_phase\",\n \"add_note_to_worktree\",\n \"link_document_to_worktree\",\n \"link_evidence_to_worktree\",\n \"link_question_to_worktree\",\n \"link_belief_to_worktree\",\n \"create_synthesized_belief\",\n \"complete_hypothesis_formation\",\n \"complete_evidence_review\",\n \"refine_worktree_belief\",\n \"trace_provenance\",\n \"get_belief_relationships\",\n \"get_belief_support_chain\",\n \"explore_connections\",\n \"get_deep_lineage\",\n \"graph_aware_search\",\n \"get_collection_conviction\",\n \"get_conviction_trend\",\n \"analyze_belief_criticality\",\n \"analyze_belief_cluster_candidates\",\n \"create_belief_conditional\",\n \"get_necessary_evidence\",\n \"analyze_reasoning_depth\",\n \"get_evidence_by_methodology\",\n \"create_evidence_task\",\n \"get_task_counts\",\n \"add_research_action\",\n \"get_predictions\",\n \"get_surprise_detection\",\n \"get_challenged_beliefs\",\n \"get_causal_chains\",\n \"get_non_consensus_beliefs\",\n \"get_beliefs_by_epistemic_status\",\n \"detect_anchoring_bias\",\n \"detect_source_concentration\",\n \"find_soft_contradictions\",\n \"find_semantic_bridges\",\n \"find_semantic_orphans\",\n] as const;\n\nexport const MCP_ONLY_INTERNAL_OPERATION_NAMES = [\n \"evaluate_engineering_contract\",\n \"evaluate_research_contract\",\n] as const;\n\nexport const FORBIDDEN_APPLICATION_OPERATION_NAMES = [\n \"execute_deep_research\",\n \"search_sources\",\n \"search_resources\",\n \"get_privileged_evidence\",\n \"get_privileged_signals\",\n \"get_thesis_artifacts\",\n] as const;\n\nexport const LUCERN_OPERATION_MANIFEST = {\n ...entries(\n MCP_CORE_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_core\",\n publicEverywhere,\n \"Default conversational Lucern MCP primitive for reading, writing, and shaping the reasoning graph.\"\n ),\n ...entries(\n MCP_ANALYSIS_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"High-signal graph analysis operation that belongs in chat/MCP because users naturally ask for gaps, contradictions, lineage, and coverage.\"\n ),\n ...entries(\n MCP_ANALYSIS_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"Tenant-scoped analysis operation that remains MCP-visible because agents can answer graph-quality and impact questions from chat.\"\n ),\n ...entries(\n MCP_WORKFLOW_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_workflow\",\n publicEverywhere,\n \"Workflow operation expected by coding agents and human MCP users managing Lucern worktrees, tasks, lenses, and observations.\"\n ),\n ...entries(\n MCP_WORKFLOW_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_workflow\",\n publicEverywhere,\n \"Tenant-scoped workflow operation expected by coding agents and human MCP users managing observations and worktree lifecycle.\"\n ),\n ...entries(\n MCP_AUTOMATION_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_analysis\",\n publicEverywhere,\n \"Tenant-scoped automation that remains MCP-visible because agents can explicitly request review or branching assistance.\"\n ),\n ...entries(\n MCP_GOVERNANCE_PLATFORM_OPERATION_NAMES,\n \"platform_public\",\n \"mcp_governance\",\n publicWithInternalMcp,\n \"Governance/admin operation. SDK, REST, and CLI remain public, but MCP is internal by default to keep chat surfaces focused.\"\n ),\n ...entries(\n MCP_GOVERNANCE_TENANT_OPERATION_NAMES,\n \"tenant_public\",\n \"mcp_governance\",\n publicWithInternalMcp,\n \"Governance/admin operation. SDK, REST, and CLI remain public, but MCP is internal by default to keep chat surfaces focused.\"\n ),\n ...entries(\n DUPLICATE_OPERATION_NAMES,\n \"platform_public\",\n \"compatibility\",\n publicWithoutMcp,\n \"Duplicate compatibility operation kept for SDK/REST callers, removed from MCP/CLI discovery in favor of the canonical specific tool.\"\n ),\n ...entries(\n PLATFORM_INTERNAL_OPERATION_NAMES,\n \"platform_internal\",\n \"system\",\n internalSystem,\n \"Lucern system/background operation. Available to platform code paths, hidden from public MCP discovery.\"\n ),\n ...entries(\n LEGACY_COMPAT_OPERATION_NAMES,\n \"legacy_compat\",\n \"compatibility\",\n publicWithoutMcp,\n \"Temporary compatibility operation. Must name a canonical replacement before removal.\"\n ),\n ...entries(\n SDK_ONLY_OPERATION_NAMES,\n \"tenant_public\",\n \"sdk_granular\",\n sdkOnlyPublic,\n \"Granular Lucern SDK operation. Not an MCP, REST, or CLI tool until backed by the generated function pipe.\"\n ),\n ...entries(\n MCP_ONLY_INTERNAL_OPERATION_NAMES,\n \"platform_internal\",\n \"system\",\n mcpOnlyInternal,\n \"Lucern MCP-only platform operation for local agent/bootstrap or verification workflows. Hidden from public discovery.\"\n ),\n} as const satisfies Record<string, LucernOperationManifestEntry>;\n\nexport type LucernOperationName = keyof typeof LUCERN_OPERATION_MANIFEST;\n\nexport function surfaceEnabled(exposure: SurfaceExposure): boolean {\n return exposure !== \"none\";\n}\n\nexport function surfaceIntentGateViolations(\n entry: LucernOperationManifestEntry\n): string[] {\n const violations: string[] = [];\n if (entry.surfaceIntent === \"system\" && entry.surfaces.mcp === \"public\") {\n violations.push(\"system operations cannot be public MCP tools\");\n }\n if (\n entry.surfaceIntent === \"compatibility\" &&\n entry.surfaces.mcp !== \"none\"\n ) {\n violations.push(\"compatibility operations must not be MCP tools\");\n }\n if (entry.surfaceIntent === \"sdk_granular\" && entry.surfaces.mcp !== \"none\") {\n violations.push(\"SDK-granular operations must not be MCP tools\");\n }\n if (\n entry.surfaceIntent === \"mcp_governance\" &&\n entry.surfaces.mcp === \"public\"\n ) {\n violations.push(\"governance operations must be internal or absent from MCP\");\n }\n return violations;\n}\n"]}
@@ -1061,6 +1061,268 @@ var BATCH_CREATE_EDGES = {
1061
1061
  tier: "workhorse"
1062
1062
  };
1063
1063
 
1064
+ // src/tool-contracts.embeddings.ts
1065
+ var sharedEmbeddingParameters = {
1066
+ topicId: {
1067
+ type: "string",
1068
+ description: "Topic whose epistemic node embedding index should be queried."
1069
+ },
1070
+ workspaceId: {
1071
+ type: "string",
1072
+ description: "Workspace scope for the embedding operation."
1073
+ },
1074
+ nodeType: {
1075
+ type: "string",
1076
+ description: "Optional epistemic node type filter."
1077
+ },
1078
+ embeddingModel: {
1079
+ type: "string",
1080
+ description: "Optional embedding model filter."
1081
+ },
1082
+ limit: {
1083
+ type: "number",
1084
+ description: "Maximum rows to return."
1085
+ }
1086
+ };
1087
+ var LIST_MISSING_EMBEDDINGS = {
1088
+ name: "list_missing_embeddings",
1089
+ description: "List epistemic nodes missing fresh Convex embeddings. Like `git status` for the semantic index \u2014 shows which graph nodes still need indexing before retrieval can be trusted.",
1090
+ parameters: sharedEmbeddingParameters,
1091
+ required: ["topicId", "workspaceId"],
1092
+ response: {
1093
+ description: "Missing or stale embedding candidates",
1094
+ fields: {
1095
+ nodes: "array \u2014 node candidates missing fresh embeddings",
1096
+ total: "number \u2014 candidate count",
1097
+ nextCursor: "string | null"
1098
+ }
1099
+ },
1100
+ ownerModule: "reasoning-kernel",
1101
+ ontologyPrimitive: "graph",
1102
+ tier: "workhorse"
1103
+ };
1104
+ var SEARCH_EMBEDDINGS = {
1105
+ name: "search_embeddings",
1106
+ description: "Search topic-scoped epistemic nodes through the Convex vector index. Like `git grep` with semantic distance \u2014 finds matching beliefs, questions, evidence, and other nodes even when wording differs.",
1107
+ parameters: {
1108
+ ...sharedEmbeddingParameters,
1109
+ queryText: {
1110
+ type: "string",
1111
+ description: "Natural-language query to embed and search with."
1112
+ },
1113
+ queryVector: {
1114
+ type: "array",
1115
+ description: "Optional precomputed query vector."
1116
+ },
1117
+ minScore: {
1118
+ type: "number",
1119
+ description: "Optional minimum cosine-similarity score."
1120
+ }
1121
+ },
1122
+ required: ["topicId", "workspaceId"],
1123
+ response: {
1124
+ description: "Vector search matches",
1125
+ fields: {
1126
+ results: "array \u2014 semantic matches with nodeId, nodeType, score, text, and provenance",
1127
+ total: "number \u2014 match count",
1128
+ nextCursor: "string | null"
1129
+ }
1130
+ },
1131
+ ownerModule: "reasoning-kernel",
1132
+ ontologyPrimitive: "graph",
1133
+ tier: "showcase"
1134
+ };
1135
+ var GET_EMBEDDINGS_BY_NODE_IDS = {
1136
+ name: "get_embeddings_by_node_ids",
1137
+ description: "Fetch embedding records for explicit epistemic node IDs. Like `git show` for semantic-index rows \u2014 inspects exactly which vectors exist for named graph nodes.",
1138
+ parameters: {
1139
+ ...sharedEmbeddingParameters,
1140
+ nodeIds: {
1141
+ type: "array",
1142
+ description: "Epistemic node IDs to inspect."
1143
+ }
1144
+ },
1145
+ required: ["topicId", "workspaceId", "nodeIds"],
1146
+ response: {
1147
+ description: "Embedding records for explicit node IDs",
1148
+ fields: {
1149
+ embeddings: "array \u2014 embedding metadata records",
1150
+ total: "number \u2014 embedding count",
1151
+ nextCursor: "string | null"
1152
+ }
1153
+ },
1154
+ ownerModule: "reasoning-kernel",
1155
+ ontologyPrimitive: "graph",
1156
+ tier: "workhorse"
1157
+ };
1158
+ var QUEUE_EMBEDDING_BACKFILL = {
1159
+ name: "queue_embedding_backfill",
1160
+ description: "Queue background embedding generation for explicit epistemic nodes. Like `git add` for semantic-index work \u2014 stages graph nodes for the kernel backfill scheduler.",
1161
+ parameters: {
1162
+ ...sharedEmbeddingParameters,
1163
+ nodeIds: {
1164
+ type: "array",
1165
+ description: "Epistemic node IDs to queue for embedding generation."
1166
+ }
1167
+ },
1168
+ required: ["topicId", "workspaceId", "nodeIds"],
1169
+ response: {
1170
+ description: "Backfill queue receipt",
1171
+ fields: {
1172
+ queued: "number \u2014 queued node count",
1173
+ nodeIds: "array \u2014 node IDs queued for embedding generation"
1174
+ }
1175
+ },
1176
+ ownerModule: "reasoning-kernel",
1177
+ ontologyPrimitive: "graph",
1178
+ tier: "workhorse"
1179
+ };
1180
+
1181
+ // src/tool-contracts.hybrid-discovery.ts
1182
+ var hybridParameters = {
1183
+ query: {
1184
+ type: "string",
1185
+ description: "Natural-language query text to resolve against the typed reasoning graph."
1186
+ },
1187
+ queryText: {
1188
+ type: "string",
1189
+ description: "Explicit query text alias for clients that separate command words from search text."
1190
+ },
1191
+ text: {
1192
+ type: "string",
1193
+ description: "Raw pasted text to use as a semantic retrieval seed."
1194
+ },
1195
+ topicId: {
1196
+ type: "string",
1197
+ description: "Optional topic scope. When omitted, semantic topic candidates are resolved first."
1198
+ },
1199
+ workspaceId: {
1200
+ type: "string",
1201
+ description: "Optional workspace scope used by semantic topic candidates and vector search."
1202
+ },
1203
+ nodeId: {
1204
+ type: "string",
1205
+ description: "Optional source node used for related-node or impact analysis."
1206
+ },
1207
+ include: {
1208
+ type: "array",
1209
+ description: "Result families to include, such as topics, nodes, worktrees, tasks, evidence, and edges."
1210
+ },
1211
+ via: {
1212
+ type: "array",
1213
+ description: "Retrieval methods to use: bm25, embeddings, edges, topic-tree, state, graph-algorithms."
1214
+ },
1215
+ depth: {
1216
+ type: "number",
1217
+ description: "Graph expansion depth. Defaults to 1 and is capped by the server."
1218
+ },
1219
+ limit: {
1220
+ type: "number",
1221
+ description: "Maximum rows per result family."
1222
+ },
1223
+ minScore: {
1224
+ type: "number",
1225
+ description: "Minimum semantic or fused score for candidate rows."
1226
+ },
1227
+ campaign: {
1228
+ type: "number",
1229
+ description: "Optional worktree campaign filter."
1230
+ },
1231
+ lane: {
1232
+ type: "string",
1233
+ description: "Optional worktree lane filter."
1234
+ },
1235
+ status: {
1236
+ type: "string",
1237
+ description: "Optional node, task, or worktree state/status filter."
1238
+ },
1239
+ nodeTypes: {
1240
+ type: "array",
1241
+ description: "Optional epistemic node types to include."
1242
+ },
1243
+ changedPaths: {
1244
+ type: "array",
1245
+ description: "Changed file paths used as impact-analysis query signals."
1246
+ },
1247
+ metadata: {
1248
+ type: "object",
1249
+ description: "Optional planner metadata for receipts and caller provenance."
1250
+ }
1251
+ };
1252
+ var hybridResponse = {
1253
+ description: "Hybrid semantic graph planner response with ranked result families and retrieval receipt.",
1254
+ fields: {
1255
+ results: "array \u2014 ranked mixed graph results with score, kind, source, and ranking signals",
1256
+ topics: "array \u2014 candidate or traversed topics",
1257
+ nodes: "array \u2014 matching epistemic nodes",
1258
+ worktrees: "array \u2014 matching worktrees",
1259
+ tasks: "array \u2014 matching tasks",
1260
+ evidence: "array \u2014 matching evidence",
1261
+ edges: "array \u2014 graph neighborhood edges",
1262
+ receipt: "object \u2014 planner steps, candidate counts, ranking weights, source/cache posture"
1263
+ }
1264
+ };
1265
+ var HYBRID_DISCOVER = {
1266
+ name: "hybrid_discover",
1267
+ description: "Discover typed reasoning graph context with BM25, embeddings, topic tree traversal, and graph neighborhoods. Like `git grep` plus `git log --graph` for Lucern's typed reasoning graph \u2014 finds the relevant branches of thought and explains why.",
1268
+ parameters: hybridParameters,
1269
+ required: [],
1270
+ response: hybridResponse,
1271
+ ownerModule: "graph-intelligence",
1272
+ ontologyPrimitive: "graph",
1273
+ tier: "showcase"
1274
+ };
1275
+ var RESOLVE_TOPIC_SEMANTIC = {
1276
+ name: "resolve_topic_semantic",
1277
+ description: "Resolve an ambiguous topic using BM25, vector candidates, and topic-tree context. Like `git remote show` for a reasoning topic \u2014 finds the canonical branch and nearby branches before reading deeper.",
1278
+ parameters: hybridParameters,
1279
+ required: [],
1280
+ response: hybridResponse,
1281
+ ownerModule: "graph-intelligence",
1282
+ ontologyPrimitive: "graph",
1283
+ tier: "showcase"
1284
+ };
1285
+ var EXPAND_GRAPH_NEIGHBORHOOD = {
1286
+ name: "expand_graph_neighborhood",
1287
+ description: "Expand a typed graph neighborhood around a query, topic, or node. Like `git log --graph --decorate` for reasoning state \u2014 follows typed edges and surfaces the surrounding context.",
1288
+ parameters: hybridParameters,
1289
+ required: [],
1290
+ response: hybridResponse,
1291
+ ownerModule: "graph-intelligence",
1292
+ ontologyPrimitive: "graph",
1293
+ tier: "showcase"
1294
+ };
1295
+ var FIND_RELATED_NODES = {
1296
+ name: "find_related_nodes",
1297
+ description: "Find semantically and structurally related nodes across the reasoning graph. Like `git blame` across branches \u2014 starts from a node or text and finds nearby responsibility, evidence, and related claims.",
1298
+ parameters: hybridParameters,
1299
+ required: [],
1300
+ response: hybridResponse,
1301
+ ownerModule: "graph-intelligence",
1302
+ ontologyPrimitive: "graph",
1303
+ tier: "showcase"
1304
+ };
1305
+ var ANALYZE_GRAPH_IMPACT = {
1306
+ name: "analyze_graph_impact",
1307
+ description: "Analyze which graph objects are affected by files, PR text, incidents, or campaign objectives. Like `git diff --name-only` plus semantic blame \u2014 maps a change signal onto topics, beliefs, tasks, and unresolved questions.",
1308
+ parameters: hybridParameters,
1309
+ required: [],
1310
+ response: hybridResponse,
1311
+ ownerModule: "graph-intelligence",
1312
+ ontologyPrimitive: "graph",
1313
+ tier: "showcase"
1314
+ };
1315
+ var DETECT_GRAPH_DRIFT = {
1316
+ name: "detect_graph_drift",
1317
+ description: "Detect duplicate, stale, orphaned, or weakly linked reasoning graph surface. Like `git fsck` for the reasoning graph \u2014 finds semantic duplicates, stale docs/code references, and missing links.",
1318
+ parameters: hybridParameters,
1319
+ required: [],
1320
+ response: hybridResponse,
1321
+ ownerModule: "graph-intelligence",
1322
+ ontologyPrimitive: "graph",
1323
+ tier: "showcase"
1324
+ };
1325
+
1064
1326
  // src/lens-workflow.contract.ts
1065
1327
  var LENS_PERSPECTIVE_TYPES = [
1066
1328
  "investigation",
@@ -2422,6 +2684,26 @@ var COMPILE_CONTEXT = {
2422
2684
  type: "string",
2423
2685
  description: "Focus query used to resolve the topic and rank context items. Required when topicId is omitted."
2424
2686
  },
2687
+ topicHint: {
2688
+ type: "string",
2689
+ description: "Optional natural-language topic hint used by the resolver when topicId is omitted or stale."
2690
+ },
2691
+ tags: {
2692
+ type: "array",
2693
+ description: "Optional resolver tags. Useful for narrowing topic inference without knowing the exact topic id."
2694
+ },
2695
+ touchedPaths: {
2696
+ type: "array",
2697
+ description: "Optional file or documentation paths used as resolver signals."
2698
+ },
2699
+ sourceRef: {
2700
+ type: "string",
2701
+ description: "Optional source reference used as a resolver signal, such as a worktree id, PR, or feature slug."
2702
+ },
2703
+ sourceKind: {
2704
+ type: "string",
2705
+ description: "Optional source kind used as a resolver signal, such as cli, worktree, commit, or docs."
2706
+ },
2425
2707
  budget: {
2426
2708
  type: "number",
2427
2709
  description: "Token budget for prompt injection planning"
@@ -4271,6 +4553,16 @@ var MCP_TOOL_CONTRACTS = {
4271
4553
  search_beliefs: SEARCH_BELIEFS,
4272
4554
  find_contradictions: FIND_CONTRADICTIONS,
4273
4555
  bisect_confidence: BISECT_CONFIDENCE,
4556
+ list_missing_embeddings: LIST_MISSING_EMBEDDINGS,
4557
+ search_embeddings: SEARCH_EMBEDDINGS,
4558
+ get_embeddings_by_node_ids: GET_EMBEDDINGS_BY_NODE_IDS,
4559
+ queue_embedding_backfill: QUEUE_EMBEDDING_BACKFILL,
4560
+ hybrid_discover: HYBRID_DISCOVER,
4561
+ resolve_topic_semantic: RESOLVE_TOPIC_SEMANTIC,
4562
+ expand_graph_neighborhood: EXPAND_GRAPH_NEIGHBORHOOD,
4563
+ find_related_nodes: FIND_RELATED_NODES,
4564
+ analyze_graph_impact: ANALYZE_GRAPH_IMPACT,
4565
+ detect_graph_drift: DETECT_GRAPH_DRIFT,
4274
4566
  // Edges (commit)
4275
4567
  create_edge: CREATE_EDGE,
4276
4568
  update_edge: UPDATE_EDGE,
@@ -4496,6 +4788,16 @@ var MCP_ANALYSIS_PLATFORM_OPERATION_NAMES = [
4496
4788
  "get_graph_structure_analysis",
4497
4789
  "list_graph_intelligence_queries",
4498
4790
  "run_graph_intelligence_query",
4791
+ "list_missing_embeddings",
4792
+ "search_embeddings",
4793
+ "get_embeddings_by_node_ids",
4794
+ "queue_embedding_backfill",
4795
+ "hybrid_discover",
4796
+ "resolve_topic_semantic",
4797
+ "expand_graph_neighborhood",
4798
+ "find_related_nodes",
4799
+ "analyze_graph_impact",
4800
+ "detect_graph_drift",
4499
4801
  "find_contradictions",
4500
4802
  "flag_contradiction",
4501
4803
  "detect_confirmation_bias",