@lucern/contracts 1.0.16 → 1.0.17

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 (116) hide show
  1. package/CHANGELOG.md +3 -0
  2. package/dist/api-enums.contract.d.ts +2 -2
  3. package/dist/api-enums.contract.js +2 -8
  4. package/dist/api-enums.contract.js.map +1 -1
  5. package/dist/context-pack.contract.d.ts +27 -7
  6. package/dist/context-pack.contract.js.map +1 -1
  7. package/dist/function-registry/beliefs.js +109 -115
  8. package/dist/function-registry/beliefs.js.map +1 -1
  9. package/dist/function-registry/coding.js +68 -91
  10. package/dist/function-registry/coding.js.map +1 -1
  11. package/dist/function-registry/context.js +68 -91
  12. package/dist/function-registry/context.js.map +1 -1
  13. package/dist/function-registry/contracts.js +68 -91
  14. package/dist/function-registry/contracts.js.map +1 -1
  15. package/dist/function-registry/coordination.js +68 -91
  16. package/dist/function-registry/coordination.js.map +1 -1
  17. package/dist/function-registry/edges.js +68 -91
  18. package/dist/function-registry/edges.js.map +1 -1
  19. package/dist/function-registry/evidence.js +182 -125
  20. package/dist/function-registry/evidence.js.map +1 -1
  21. package/dist/function-registry/graph.js +68 -91
  22. package/dist/function-registry/graph.js.map +1 -1
  23. package/dist/function-registry/helpers.js +68 -91
  24. package/dist/function-registry/helpers.js.map +1 -1
  25. package/dist/function-registry/identity.js +68 -91
  26. package/dist/function-registry/identity.js.map +1 -1
  27. package/dist/function-registry/index.js +68 -91
  28. package/dist/function-registry/index.js.map +1 -1
  29. package/dist/function-registry/judgments.js +68 -91
  30. package/dist/function-registry/judgments.js.map +1 -1
  31. package/dist/function-registry/legacy.js +68 -91
  32. package/dist/function-registry/legacy.js.map +1 -1
  33. package/dist/function-registry/lenses.js +68 -91
  34. package/dist/function-registry/lenses.js.map +1 -1
  35. package/dist/function-registry/manifest.d.ts +3 -3
  36. package/dist/function-registry/manifest.js +3 -3
  37. package/dist/function-registry/manifest.js.map +1 -1
  38. package/dist/function-registry/nodes.js +68 -91
  39. package/dist/function-registry/nodes.js.map +1 -1
  40. package/dist/function-registry/ontologies.js +68 -91
  41. package/dist/function-registry/ontologies.js.map +1 -1
  42. package/dist/function-registry/pipeline.js +68 -91
  43. package/dist/function-registry/pipeline.js.map +1 -1
  44. package/dist/function-registry/questions.js +68 -91
  45. package/dist/function-registry/questions.js.map +1 -1
  46. package/dist/function-registry/tasks.js +68 -91
  47. package/dist/function-registry/tasks.js.map +1 -1
  48. package/dist/function-registry/topics.js +68 -91
  49. package/dist/function-registry/topics.js.map +1 -1
  50. package/dist/function-registry/worktrees.js +68 -91
  51. package/dist/function-registry/worktrees.js.map +1 -1
  52. package/dist/generated/convexSchemas.js +2 -2
  53. package/dist/generated/convexSchemas.js.map +1 -1
  54. package/dist/index.d.ts +4 -4
  55. package/dist/index.js +162 -130
  56. package/dist/index.js.map +1 -1
  57. package/dist/manifests/invariant-manifest.d.ts +1 -1
  58. package/dist/manifests/invariants/index.d.ts +1 -1
  59. package/dist/manifests/invariants/index.js +1 -1
  60. package/dist/manifests/invariants/index.js.map +1 -1
  61. package/dist/manifests/invariants/inv-1-beliefs-append-only.d.ts +1 -1
  62. package/dist/manifests/invariants/inv-14-no-silent-transitions.d.ts +1 -1
  63. package/dist/manifests/invariants/manifest-1-projections-declare-audit.d.ts +1 -1
  64. package/dist/manifests/invariants/manifest-1-projections-declare-audit.js +1 -1
  65. package/dist/manifests/invariants/manifest-1-projections-declare-audit.js.map +1 -1
  66. package/dist/projections/{modulate-confidence.projection.d.ts → append-sl-scoring.projection.d.ts} +69 -69
  67. package/dist/projections/{modulate-confidence.projection.js → append-sl-scoring.projection.js} +14 -14
  68. package/dist/projections/append-sl-scoring.projection.js.map +1 -0
  69. package/dist/projections/check-convex-args-shape.js +88 -29
  70. package/dist/projections/check-convex-args-shape.js.map +1 -1
  71. package/dist/projections/create-evidence.projection.js +76 -17
  72. package/dist/projections/create-evidence.projection.js.map +1 -1
  73. package/dist/projections/index.d.ts +47 -47
  74. package/dist/projections/index.js +88 -29
  75. package/dist/projections/index.js.map +1 -1
  76. package/dist/proof-attestation.json +3 -3
  77. package/dist/schemas/index.js +6 -4
  78. package/dist/schemas/index.js.map +1 -1
  79. package/dist/schemas/manifest.d.ts +110 -60
  80. package/dist/schemas/manifest.js +6 -4
  81. package/dist/schemas/manifest.js.map +1 -1
  82. package/dist/schemas/tables/kernel/intelligence.d.ts +20 -10
  83. package/dist/schemas/tables/kernel/intelligence.js +4 -2
  84. package/dist/schemas/tables/kernel/intelligence.js.map +1 -1
  85. package/dist/schemas/tables/kernel/spine.d.ts +2 -2
  86. package/dist/schemas/tables/kernel/spine.js +2 -2
  87. package/dist/schemas/tables/kernel/spine.js.map +1 -1
  88. package/dist/schemas.values.js +6 -4
  89. package/dist/schemas.values.js.map +1 -1
  90. package/dist/sdk-methods.contract.d.ts +6 -16
  91. package/dist/sdk-tools.contract.js +65 -88
  92. package/dist/sdk-tools.contract.js.map +1 -1
  93. package/dist/sdk-tools.contract.registry.js +65 -88
  94. package/dist/sdk-tools.contract.registry.js.map +1 -1
  95. package/dist/sdk-tools.contract.values.js +65 -88
  96. package/dist/sdk-tools.contract.values.js.map +1 -1
  97. package/dist/tool-contracts.d.ts +1 -1
  98. package/dist/tool-contracts.graph.js +3 -3
  99. package/dist/tool-contracts.graph.js.map +1 -1
  100. package/dist/tool-contracts.intelligence-evidence.js +7 -7
  101. package/dist/tool-contracts.intelligence-evidence.js.map +1 -1
  102. package/dist/tool-contracts.js +66 -89
  103. package/dist/tool-contracts.js.map +1 -1
  104. package/dist/tool-contracts.lifecycle.d.ts +2 -2
  105. package/dist/tool-contracts.lifecycle.js +49 -68
  106. package/dist/tool-contracts.lifecycle.js.map +1 -1
  107. package/dist/tool-contracts.pipeline-coordination.js +1 -1
  108. package/dist/tool-contracts.pipeline-coordination.js.map +1 -1
  109. package/dist/tool-contracts.questions-listing.js +5 -9
  110. package/dist/tool-contracts.questions-listing.js.map +1 -1
  111. package/dist/{tool-contracts.values-BhxfrXS5.d.ts → tool-contracts.values-CCoI3qQY.d.ts} +3 -3
  112. package/dist/tool-contracts.values.d.ts +1 -1
  113. package/dist/tool-contracts.values.js +66 -89
  114. package/dist/tool-contracts.values.js.map +1 -1
  115. package/package.json +1 -1
  116. package/dist/projections/modulate-confidence.projection.js.map +0 -1
@@ -1,15 +1,23 @@
1
1
  // src/tool-contracts.lifecycle.ts
2
2
  var CREATE_BELIEF = {
3
3
  name: "create_belief",
4
- description: "Commit a new belief (knowledge unit) to the reasoning graph. Like `git commit` \u2014 creates an atomic, traceable knowledge object with a prior. Creation stores the vacuous opinion `(0, 0, 1, a)`; attach supporting or contradicting evidence with create_evidence or link_evidence_to_belief to record evidential updates.",
4
+ description: "Commit a new belief (knowledge unit) to the reasoning graph. Like `git commit` \u2014 creates an atomic, traceable knowledge object with a prior. Creation requires a topic epistemic-node anchor and writes a `scoped_by` edge directly from belief node to topic node; orphan beliefs are invalid. Creation stores the vacuous opinion `(0, 0, 1, a)`; attach supporting or contradicting evidence with create_evidence or link_evidence_to_belief to record evidential updates.",
5
5
  parameters: {
6
6
  canonicalText: {
7
7
  type: "string",
8
8
  description: "The belief statement \u2014 what the agent holds to be true"
9
9
  },
10
+ topicGlobalId: {
11
+ type: "string",
12
+ description: "Required globalId (UUID) of the topic node in epistemicNodes that anchors the belief"
13
+ },
14
+ topicNodeId: {
15
+ type: "string",
16
+ description: "Optional internal epistemicNodes _id for the topic anchor. Prefer topicGlobalId for public callers."
17
+ },
10
18
  topicId: {
11
19
  type: "string",
12
- description: "Optional topic scope hint for the belief"
20
+ description: "Deprecated compatibility alias for topicGlobalId. Must identify a topic epistemicNode, not a legacy topics-table row."
13
21
  },
14
22
  baseRate: {
15
23
  type: "number",
@@ -24,7 +32,7 @@ var CREATE_BELIEF = {
24
32
  description: "Optional extra metadata merged into the node (e.g., { codeAnchors: ['path/to/file.ts'] } for coding intelligence)"
25
33
  }
26
34
  },
27
- required: ["canonicalText"],
35
+ required: ["canonicalText", "topicGlobalId"],
28
36
  response: {
29
37
  description: "The created canonical belief record",
30
38
  fields: {
@@ -33,7 +41,7 @@ var CREATE_BELIEF = {
33
41
  beliefId: "string \u2014 canonical belief ID",
34
42
  text: "string \u2014 canonical belief formulation",
35
43
  topicId: "string",
36
- status: "string \u2014 active | superseded | archived",
44
+ beliefStatus: "string \u2014 assumption | hypothesis | active | superseded | resolved_true | resolved_false",
37
45
  scoringState: "string \u2014 unscored | scored"
38
46
  }
39
47
  },
@@ -56,7 +64,7 @@ var GET_BELIEF = {
56
64
  beliefId: "string \u2014 canonical belief ID",
57
65
  text: "string \u2014 canonical belief formulation",
58
66
  topicId: "string",
59
- status: "string \u2014 active | superseded | archived",
67
+ beliefStatus: "string \u2014 assumption | hypothesis | active | superseded | resolved_true | resolved_false",
60
68
  scoringState: "string \u2014 unscored | scored"
61
69
  }
62
70
  },
@@ -85,34 +93,24 @@ var REFINE_BELIEF = {
85
93
  ontologyPrimitive: "belief",
86
94
  tier: "showcase"
87
95
  };
88
- var MODULATE_CONFIDENCE = {
89
- name: "modulate_confidence",
90
- description: "Internal-only subjective-logic ledger append. Like `git commit` to the credence log for the scoring engine \u2014 never an operator-facing way to assert confidence. Agents, SDK callers, CLI users, and MCP clients must instead create or link evidence with `evidenceRelation: supports|contradicts`; the kernel derives the next opinion from that evidence. This compatibility primitive is reserved for governed system scoring paths that already hold a full subjective-logic tuple and truth-bearing provenance.",
96
+ var APPEND_SL_SCORING = {
97
+ name: "append_sl_scoring",
98
+ description: "Internal evidence-backed Subjective Logic scoring append. This is not a public MCP tool: callers should attach supporting or contradicting evidence, and governed system paths append the derived SL tuple.",
91
99
  parameters: {
92
- nodeId: { type: "string", description: "The belief to score" },
93
- belief: {
94
- type: "number",
95
- description: "Subjective-logic belief mass `b` in [0, 1]"
96
- },
100
+ nodeId: { type: "string", description: "The belief receiving the SL score" },
101
+ belief: { type: "number", description: "Subjective Logic belief mass b" },
97
102
  disbelief: {
98
103
  type: "number",
99
- description: "Subjective-logic disbelief mass `d` in [0, 1]"
104
+ description: "Subjective Logic disbelief mass d"
100
105
  },
101
106
  uncertainty: {
102
107
  type: "number",
103
- description: "Subjective-logic uncertainty mass `u` in [0, 1]"
104
- },
105
- baseRate: {
106
- type: "number",
107
- description: "Subjective-logic base rate `a` in [0, 1]. Required for tuple payloads."
108
- },
109
- worktreeId: {
110
- type: "string",
111
- description: "Completed worktree that tested this belief when confidence policy requires merge-backed scoring."
108
+ description: "Subjective Logic uncertainty mass u"
112
109
  },
110
+ baseRate: { type: "number", description: "Subjective Logic base rate a" },
113
111
  trigger: {
114
112
  type: "string",
115
- description: "What caused this confidence change",
113
+ description: "Evidence-bearing cause of the scoring event",
116
114
  enum: [
117
115
  "evidence_added",
118
116
  "evidence_removed",
@@ -123,64 +121,39 @@ var MODULATE_CONFIDENCE = {
123
121
  "worktree_completed",
124
122
  "fusion",
125
123
  "discount",
126
- "deduction"
124
+ "deduction",
125
+ "backfill_synthetic"
127
126
  ]
128
127
  },
129
- triggeringEvidenceId: {
130
- type: "string",
131
- description: "Evidence node that caused an evidence-triggered modulation"
132
- },
133
- triggeringQuestionId: {
134
- type: "string",
135
- description: "Answered question whose resolution supports this modulation"
136
- },
137
- triggeringAnswerId: {
138
- type: "string",
139
- description: "Answer node whose content supports this modulation"
140
- },
141
- triggeringContradictionId: {
142
- type: "string",
143
- description: "Contradiction record that caused a contradiction-triggered modulation"
144
- },
145
- triggeringWorktreeId: {
146
- type: "string",
147
- description: "Completed worktree whose outcome caused a worktree-triggered modulation"
128
+ provenance: {
129
+ type: "object",
130
+ description: "At least one of evidence, question, answer, contradiction, or worktree."
148
131
  },
149
132
  rationale: {
150
133
  type: "string",
151
- description: "Human-readable explanation of why confidence changed"
134
+ description: "Why this evidence-bearing event moved the SL tuple"
152
135
  }
153
136
  },
154
- required: [
155
- "nodeId",
156
- "belief",
157
- "disbelief",
158
- "uncertainty",
159
- "baseRate",
160
- "trigger",
161
- "rationale"
162
- ],
137
+ required: ["nodeId", "belief", "disbelief", "uncertainty", "baseRate", "trigger", "rationale"],
163
138
  response: {
164
- description: "Confidence modulation result",
139
+ description: "Internal SL scoring append receipt",
165
140
  fields: {
166
- beliefId: "string \u2014 canonical belief ID",
167
- nodeId: "string \u2014 canonical belief ID",
168
- newConfidence: "number",
141
+ nodeId: "string",
169
142
  previousConfidence: "number",
170
- trigger: "string",
171
- requestId: "string \u2014 request identifier for the scheduled cascade",
172
- propagationSummary: "object \u2014 bounded inline cascade summary with totalCandidateTargets, inlineTargets, and remainingTargetCount"
143
+ newConfidence: "number",
144
+ beliefConfidenceId: "string"
173
145
  }
174
146
  },
175
147
  ownerModule: "graph-primitives",
176
148
  ontologyPrimitive: "belief",
177
- tier: "showcase"
149
+ tier: "workhorse",
150
+ internal: true
178
151
  };
179
152
  var FORK_BELIEF = {
180
153
  name: "fork_belief",
181
- description: "Branch off a scored belief to create a new version with a different formulation. Like `git fork` \u2014 the parent remains immutable with full history. The new belief gets a `supersedes` edge to the parent. Fork reasons: refinement, contradiction_response, scope_change, confidence_collapse, manual.",
154
+ description: "Branch off an evidence-bearing belief to create a new formulation. Like `git fork` \u2014 the parent remains immutable with full history, and every fork must cite evidence already attached to the parent through SL scoring. `forkMode=supersede` marks the parent superseded and requires contradicting evidence; `forkMode=branch` preserves the parent and creates a derived child.",
182
155
  parameters: {
183
- nodeId: { type: "string", description: "The scored belief to fork from" },
156
+ nodeId: { type: "string", description: "The belief to fork from" },
184
157
  newFormulation: {
185
158
  type: "string",
186
159
  description: "The evolved belief statement"
@@ -192,12 +165,20 @@ var FORK_BELIEF = {
192
165
  "refinement",
193
166
  "contradiction_response",
194
167
  "scope_change",
195
- "confidence_collapse",
196
- "manual"
168
+ "confidence_collapse"
197
169
  ]
170
+ },
171
+ forkMode: {
172
+ type: "string",
173
+ description: "supersede replaces the parent; branch creates a child while preserving the parent.",
174
+ enum: ["supersede", "branch"]
175
+ },
176
+ triggeringEvidenceId: {
177
+ type: "string",
178
+ description: "Evidence already attached to the parent belief that caused the fork."
198
179
  }
199
180
  },
200
- required: ["nodeId", "newFormulation", "forkReason"],
181
+ required: ["nodeId", "newFormulation", "forkReason", "triggeringEvidenceId"],
201
182
  response: {
202
183
  description: "The forked canonical belief record",
203
184
  fields: {
@@ -699,7 +680,7 @@ var REASONING_METHODS = [
699
680
  // src/tool-contracts.graph.ts
700
681
  var QUERY_LINEAGE = {
701
682
  name: "query_lineage",
702
- description: "Trace a belief's full ancestry \u2014 every fork, score, and confidence modulation. Like `git log --graph`. Returns the complete evolution chain showing how understanding developed over time. Lineage is permanent and can never be erased (Invariant #3).",
683
+ description: "Trace a belief's full ancestry \u2014 every fork, score, and SL scoring event. Like `git log --graph`. Returns the complete evolution chain showing how understanding developed over time. Lineage is permanent and can never be erased (Invariant #3).",
703
684
  parameters: {
704
685
  nodeId: { type: "string", description: "Starting node to trace from" },
705
686
  depth: {
@@ -898,7 +879,7 @@ var FIND_CONTRADICTIONS = {
898
879
  };
899
880
  var BISECT_CONFIDENCE = {
900
881
  name: "bisect_confidence",
901
- description: "Find when a belief's confidence diverged from reality. Like `git bisect` \u2014 binary search through the credence history to find the inflection point. Given a belief that is now known to be wrong (or right), traces back through confidence modulations to identify which evidence or event caused the divergence.",
882
+ description: "Find when a belief's confidence diverged from reality. Like `git bisect` \u2014 binary search through the credence history to find the inflection point. Given a belief that is now known to be wrong (or right), traces back through SL scoring events to identify which evidence or event caused the divergence.",
902
883
  parameters: {
903
884
  nodeId: { type: "string", description: "The belief to bisect" },
904
885
  expectedDirection: {
@@ -917,7 +898,7 @@ var BISECT_CONFIDENCE = {
917
898
  fields: {
918
899
  beliefId: "string \u2014 canonical belief ID",
919
900
  expectedDirection: "string \u2014 overconfident | underconfident",
920
- inflectionEntry: "object \u2014 the confidence modulation where divergence began",
901
+ inflectionEntry: "object \u2014 the scoring event where divergence began",
921
902
  triggerEvent: "string | null \u2014 what caused the divergence",
922
903
  confidenceBefore: "number | null",
923
904
  confidenceAfter: "number | null",
@@ -1862,18 +1843,18 @@ var SEARCH_EVIDENCE = {
1862
1843
  };
1863
1844
  var CREATE_EVIDENCE = {
1864
1845
  name: "create_evidence",
1865
- description: "Commit evidence to the reasoning graph. Like `git commit` \u2014 creates a traceable evidence record with canonical public IDs. Optionally links the evidence to a belief or question in the same operation. When evidence bears on beliefs, state whether it supports or contradicts; SL confidence is derived from these evidence relations.",
1846
+ description: "Commit evidence to the reasoning graph. Like `git commit` \u2014 creates a traceable evidence record with canonical public IDs. Evidence creation must link to at least one belief and must include a signed impact score. Positive scores support the belief; negative scores contradict it. SL confidence is derived from these weighted evidence relations.",
1866
1847
  parameters: {
1867
1848
  topicId: { type: "string", description: "Topic scope" },
1868
1849
  text: { type: "string", description: "Canonical evidence text" },
1869
1850
  source: { type: "string", description: "Source URL or source label" },
1870
1851
  targetId: {
1871
1852
  type: "string",
1872
- description: "Optional belief or question identifier to link immediately"
1853
+ description: "Belief identifier to link immediately"
1873
1854
  },
1874
1855
  weight: {
1875
1856
  type: "number",
1876
- description: "Optional support weight: -1.0 (contradicts) to +1.0 (supports). If omitted, evidenceRelation + confidence determine the weight."
1857
+ description: "Required nonzero signed impact score: -1.0 (contradicts) to +1.0 (supports)."
1877
1858
  },
1878
1859
  evidenceRelation: {
1879
1860
  type: "string",
@@ -1882,7 +1863,7 @@ var CREATE_EVIDENCE = {
1882
1863
  },
1883
1864
  confidence: {
1884
1865
  type: "number",
1885
- description: "Confidence in the evidence relation, 0.0 to 1.0"
1866
+ description: "Deprecated hint. Runtime confidence is derived from the signed impact score."
1886
1867
  },
1887
1868
  beliefRelations: {
1888
1869
  type: "array",
@@ -1904,7 +1885,7 @@ var CREATE_EVIDENCE = {
1904
1885
  },
1905
1886
  kind: { type: "string", description: "Optional evidence kind" }
1906
1887
  },
1907
- required: ["text", "rationale"],
1888
+ required: ["text", "rationale", "weight"],
1908
1889
  response: {
1909
1890
  description: "The created canonical evidence record",
1910
1891
  fields: {
@@ -1979,7 +1960,7 @@ var LINK_EVIDENCE = {
1979
1960
  },
1980
1961
  rationale: { type: "string", description: "Why this link exists" }
1981
1962
  },
1982
- required: ["evidenceId", "targetId"],
1963
+ required: ["evidenceId", "targetId", "weight"],
1983
1964
  response: {
1984
1965
  description: "The created canonical evidence edge summary",
1985
1966
  fields: {
@@ -2015,7 +1996,7 @@ var LINK_EVIDENCE_TO_BELIEF = {
2015
1996
  },
2016
1997
  rationale: { type: "string", description: "Why this evidence is relevant" }
2017
1998
  },
2018
- required: ["evidenceId", "beliefId"],
1999
+ required: ["evidenceId", "beliefId", "weight"],
2019
2000
  response: {
2020
2001
  description: "The created edge linking evidence to belief",
2021
2002
  fields: {
@@ -2834,6 +2815,11 @@ var COMPILE_CONTEXT = {
2834
2815
  response: {
2835
2816
  description: "Compiled context pack for the requested topic",
2836
2817
  fields: {
2818
+ contextNarrative: "array \u2014 first field; ordered synthesis blocks with kind/text, starting with executive_summary and canonical narrative blocks before raw objects",
2819
+ narrativeCoverage: "object \u2014 recordsSynthesized, recordsNamed, recordsOmitted, topicsSynthesized, topicsEnriched, topicContentOmitted, enrichmentMode, and blocksEmitted for the narrative",
2820
+ synthesisLints: "array \u2014 inline quality warnings for degenerate synthesis blocks or weak narrative coverage",
2821
+ retrievalReceipt: "object \u2014 candidateCounts, coverageWarning, narrativeCoverage, synthesisLints, and suggestedNextActions",
2822
+ supportingObjects: "object \u2014 raw graph records grouped behind the synthesis: invariants, activeBeliefs, openQuestions, recentEvidence, worktrees, lanes, entities, and contradictions",
2837
2823
  schemaVersion: "string",
2838
2824
  topicId: "string",
2839
2825
  topicName: "string",
@@ -2841,15 +2827,6 @@ var COMPILE_CONTEXT = {
2841
2827
  generatedAt: "number \u2014 deterministic graph-backed reference timestamp for this compilation",
2842
2828
  ranking: "string \u2014 baseline_v1 | weighted_v1",
2843
2829
  summary: "object \u2014 counts and scoped health signals",
2844
- invariants: "array \u2014 high-confidence invariant beliefs",
2845
- activeBeliefs: "array \u2014 current high-signal beliefs",
2846
- openQuestions: "array \u2014 unresolved questions ranked for this query",
2847
- recentEvidence: "array \u2014 recent evidence ranked for this query",
2848
- contradictions: "array \u2014 unresolved contradiction records",
2849
- relatedEntities: "array | undefined \u2014 ranked ontological entities in scope",
2850
- contextNarrative: "array \u2014 ordered synthesis blocks with kind/text, starting with executive_summary and canonical narrative blocks before raw objects",
2851
- retrievalReceipt: "object \u2014 candidateCounts, coverageWarning, narrativeCoverage, synthesisLints, and suggestedNextActions",
2852
- narrativeCoverage: "object \u2014 recordsSynthesized, recordsNamed, recordsOmitted, topicsSynthesized, topicsEnriched, topicContentOmitted, enrichmentMode, and blocksEmitted for the narrative",
2853
2830
  injectionPolicy: "object \u2014 token-budgeted section selections",
2854
2831
  diagnostics: "object \u2014 scoring and utilization telemetry"
2855
2832
  }
@@ -4268,7 +4245,7 @@ var TRIGGER_BELIEF_REVIEW = {
4268
4245
  };
4269
4246
  var EVALUATE_CONTRACT = {
4270
4247
  name: "evaluate_contract",
4271
- description: "Run a contract evaluation and record the append-only result. Like `git test` for a belief binding \u2014 executes the evaluator, logs the result, and applies any allowed confidence modulation.",
4248
+ description: "Run a contract evaluation and record the append-only result. Like `git test` for a belief binding \u2014 executes the evaluator, logs the result, and applies any allowed SL scoring action.",
4272
4249
  parameters: {
4273
4250
  contractId: { type: "string", description: "Which contract to evaluate" },
4274
4251
  trigger: {
@@ -4624,7 +4601,7 @@ var MCP_TOOL_CONTRACTS = {
4624
4601
  create_belief: CREATE_BELIEF,
4625
4602
  get_belief: GET_BELIEF,
4626
4603
  refine_belief: REFINE_BELIEF,
4627
- modulate_confidence: MODULATE_CONFIDENCE,
4604
+ append_sl_scoring: APPEND_SL_SCORING,
4628
4605
  fork_belief: FORK_BELIEF,
4629
4606
  archive_belief: ARCHIVE_BELIEF,
4630
4607
  create_epistemic_contract: CREATE_EPISTEMIC_CONTRACT,