@monoes/monomindcli 2.10.10 → 2.10.13

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 (233) hide show
  1. package/.claude/commands/mastermind/brain.md +14 -14
  2. package/.claude/commands/mastermind/help.md +2 -2
  3. package/.claude/commands/mastermind/master.md +24 -19
  4. package/.claude/commands/mastermind/memory.md +8 -8
  5. package/.claude/commands/mastermind/monoswarm.md +4 -4
  6. package/.claude/commands/mastermind.md +7 -7
  7. package/.claude/commands/truth/start.md +3 -3
  8. package/.claude/skills/mastermind/SKILL.md +7 -16
  9. package/.claude/skills/mastermind-debug/SKILL.md +3 -3
  10. package/.claude/skills/mastermind-design/SKILL.md +2 -0
  11. package/.claude/skills/mastermind-execute/SKILL.md +66 -11
  12. package/.claude/skills/mastermind-idea/SKILL.md +9 -2
  13. package/.claude/skills/mastermind-intake/SKILL.md +31 -7
  14. package/.claude/skills/mastermind-issue-detail/SKILL.md +70 -16
  15. package/.claude/skills/mastermind-issues/SKILL.md +111 -16
  16. package/.claude/skills/mastermind-liveness/SKILL.md +96 -26
  17. package/.claude/skills/mastermind-my-issues/SKILL.md +40 -8
  18. package/.claude/skills/mastermind-org/SKILL.md +2 -0
  19. package/.claude/skills/mastermind-plan/SKILL.md +7 -16
  20. package/.claude/skills/mastermind-plan-to-tasks/SKILL.md +132 -24
  21. package/.claude/skills/mastermind-protocol/SKILL.md +33 -22
  22. package/.claude/skills/mastermind-runorg/SKILL.md +22 -3
  23. package/.claude/skills/mastermind-skill-builder/SKILL.md +1 -1
  24. package/.claude/skills/mastermind-tasks/SKILL.md +5 -0
  25. package/.claude/skills/mastermind-techport/SKILL.md +1 -1
  26. package/.claude/skills/performance-analysis/SKILL.md +1 -1
  27. package/.claude/skills/verification-quality/SKILL.md +2 -3
  28. package/README.md +2 -2
  29. package/dist/src/commands/doc.js +2 -2
  30. package/dist/src/commands/doc.js.map +1 -1
  31. package/dist/src/commands/doctor-project-checks.d.ts.map +1 -1
  32. package/dist/src/commands/doctor-project-checks.js +20 -1
  33. package/dist/src/commands/doctor-project-checks.js.map +1 -1
  34. package/dist/src/commands/monograph.d.ts.map +1 -1
  35. package/dist/src/commands/monograph.js +11 -4
  36. package/dist/src/commands/monograph.js.map +1 -1
  37. package/dist/src/commands/org-observe.d.ts.map +1 -1
  38. package/dist/src/commands/org-observe.js +56 -6
  39. package/dist/src/commands/org-observe.js.map +1 -1
  40. package/dist/src/commands/org.d.ts +26 -0
  41. package/dist/src/commands/org.d.ts.map +1 -1
  42. package/dist/src/commands/org.js +144 -28
  43. package/dist/src/commands/org.js.map +1 -1
  44. package/dist/src/init/executor.d.ts.map +1 -1
  45. package/dist/src/init/executor.js +10 -9
  46. package/dist/src/init/executor.js.map +1 -1
  47. package/dist/src/init/settings-generator.d.ts.map +1 -1
  48. package/dist/src/init/settings-generator.js.map +1 -1
  49. package/dist/src/init/write-codex.d.ts.map +1 -1
  50. package/dist/src/init/write-codex.js.map +1 -1
  51. package/dist/src/knowledge/document-pipeline.d.ts +5 -0
  52. package/dist/src/knowledge/document-pipeline.d.ts.map +1 -1
  53. package/dist/src/knowledge/document-pipeline.js +32 -16
  54. package/dist/src/knowledge/document-pipeline.js.map +1 -1
  55. package/dist/src/mcp-tools/hooks-routing.d.ts +9 -0
  56. package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
  57. package/dist/src/mcp-tools/hooks-routing.js +12 -1
  58. package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
  59. package/dist/src/mcp-tools/knowledge-tools.d.ts.map +1 -1
  60. package/dist/src/mcp-tools/knowledge-tools.js +105 -13
  61. package/dist/src/mcp-tools/knowledge-tools.js.map +1 -1
  62. package/dist/src/mcp-tools/memory-tools.d.ts +13 -0
  63. package/dist/src/mcp-tools/memory-tools.d.ts.map +1 -1
  64. package/dist/src/mcp-tools/memory-tools.js +257 -31
  65. package/dist/src/mcp-tools/memory-tools.js.map +1 -1
  66. package/dist/src/mcp-tools/monograph/health-tools.d.ts.map +1 -1
  67. package/dist/src/mcp-tools/monograph/health-tools.js +99 -42
  68. package/dist/src/mcp-tools/monograph/health-tools.js.map +1 -1
  69. package/dist/src/mcp-tools/monograph/impact-tools.d.ts.map +1 -1
  70. package/dist/src/mcp-tools/monograph/impact-tools.js +123 -51
  71. package/dist/src/mcp-tools/monograph/impact-tools.js.map +1 -1
  72. package/dist/src/mcp-tools/monograph/query-tools.d.ts.map +1 -1
  73. package/dist/src/mcp-tools/monograph/query-tools.js +113 -96
  74. package/dist/src/mcp-tools/monograph/query-tools.js.map +1 -1
  75. package/dist/src/mcp-tools/monograph/shared.d.ts +37 -4
  76. package/dist/src/mcp-tools/monograph/shared.d.ts.map +1 -1
  77. package/dist/src/mcp-tools/monograph/shared.js +75 -56
  78. package/dist/src/mcp-tools/monograph/shared.js.map +1 -1
  79. package/dist/src/memory/memory-bridge.d.ts +60 -1
  80. package/dist/src/memory/memory-bridge.d.ts.map +1 -1
  81. package/dist/src/memory/memory-bridge.js +172 -42
  82. package/dist/src/memory/memory-bridge.js.map +1 -1
  83. package/dist/src/memory/memory-kg.d.ts +495 -28
  84. package/dist/src/memory/memory-kg.d.ts.map +1 -1
  85. package/dist/src/memory/memory-kg.js +2186 -251
  86. package/dist/src/memory/memory-kg.js.map +1 -1
  87. package/dist/src/memory/query-router.d.ts +51 -0
  88. package/dist/src/memory/query-router.d.ts.map +1 -1
  89. package/dist/src/memory/query-router.js +38 -2
  90. package/dist/src/memory/query-router.js.map +1 -1
  91. package/dist/src/orgrt/agent-exec.d.ts.map +1 -1
  92. package/dist/src/orgrt/agent-exec.js +7 -0
  93. package/dist/src/orgrt/agent-exec.js.map +1 -1
  94. package/dist/src/orgrt/agent-runner.d.ts +26 -1
  95. package/dist/src/orgrt/agent-runner.d.ts.map +1 -1
  96. package/dist/src/orgrt/agent-runner.js +73 -22
  97. package/dist/src/orgrt/agent-runner.js.map +1 -1
  98. package/dist/src/orgrt/antigravity-runner.d.ts +1 -1
  99. package/dist/src/orgrt/antigravity-runner.d.ts.map +1 -1
  100. package/dist/src/orgrt/antigravity-runner.js +36 -19
  101. package/dist/src/orgrt/antigravity-runner.js.map +1 -1
  102. package/dist/src/orgrt/approvals.d.ts +26 -2
  103. package/dist/src/orgrt/approvals.d.ts.map +1 -1
  104. package/dist/src/orgrt/approvals.js +67 -7
  105. package/dist/src/orgrt/approvals.js.map +1 -1
  106. package/dist/src/orgrt/broker.d.ts +21 -2
  107. package/dist/src/orgrt/broker.d.ts.map +1 -1
  108. package/dist/src/orgrt/broker.js +56 -8
  109. package/dist/src/orgrt/broker.js.map +1 -1
  110. package/dist/src/orgrt/bus.d.ts +8 -0
  111. package/dist/src/orgrt/bus.d.ts.map +1 -1
  112. package/dist/src/orgrt/bus.js +27 -0
  113. package/dist/src/orgrt/bus.js.map +1 -1
  114. package/dist/src/orgrt/checkpoint-ops.d.ts.map +1 -1
  115. package/dist/src/orgrt/checkpoint-ops.js +15 -5
  116. package/dist/src/orgrt/checkpoint-ops.js.map +1 -1
  117. package/dist/src/orgrt/checkpoint.d.ts +42 -4
  118. package/dist/src/orgrt/checkpoint.d.ts.map +1 -1
  119. package/dist/src/orgrt/checkpoint.js +75 -4
  120. package/dist/src/orgrt/checkpoint.js.map +1 -1
  121. package/dist/src/orgrt/codex-runner.d.ts +1 -1
  122. package/dist/src/orgrt/codex-runner.d.ts.map +1 -1
  123. package/dist/src/orgrt/codex-runner.js +50 -23
  124. package/dist/src/orgrt/codex-runner.js.map +1 -1
  125. package/dist/src/orgrt/copilot-runner.d.ts +24 -2
  126. package/dist/src/orgrt/copilot-runner.d.ts.map +1 -1
  127. package/dist/src/orgrt/copilot-runner.js +257 -157
  128. package/dist/src/orgrt/copilot-runner.js.map +1 -1
  129. package/dist/src/orgrt/cross-org.d.ts +10 -3
  130. package/dist/src/orgrt/cross-org.d.ts.map +1 -1
  131. package/dist/src/orgrt/cross-org.js +225 -10
  132. package/dist/src/orgrt/cross-org.js.map +1 -1
  133. package/dist/src/orgrt/crush-runner.d.ts +22 -2
  134. package/dist/src/orgrt/crush-runner.d.ts.map +1 -1
  135. package/dist/src/orgrt/crush-runner.js +227 -120
  136. package/dist/src/orgrt/crush-runner.js.map +1 -1
  137. package/dist/src/orgrt/daemon.d.ts +77 -7
  138. package/dist/src/orgrt/daemon.d.ts.map +1 -1
  139. package/dist/src/orgrt/daemon.js +989 -385
  140. package/dist/src/orgrt/daemon.js.map +1 -1
  141. package/dist/src/orgrt/decisions.d.ts +2 -2
  142. package/dist/src/orgrt/decisions.d.ts.map +1 -1
  143. package/dist/src/orgrt/decisions.js +90 -18
  144. package/dist/src/orgrt/decisions.js.map +1 -1
  145. package/dist/src/orgrt/grok-runner.d.ts +29 -3
  146. package/dist/src/orgrt/grok-runner.d.ts.map +1 -1
  147. package/dist/src/orgrt/grok-runner.js +286 -150
  148. package/dist/src/orgrt/grok-runner.js.map +1 -1
  149. package/dist/src/orgrt/kimicode-runner.d.ts +5 -5
  150. package/dist/src/orgrt/kimicode-runner.d.ts.map +1 -1
  151. package/dist/src/orgrt/kimicode-runner.js +53 -32
  152. package/dist/src/orgrt/kimicode-runner.js.map +1 -1
  153. package/dist/src/orgrt/mailbox.d.ts +15 -0
  154. package/dist/src/orgrt/mailbox.d.ts.map +1 -1
  155. package/dist/src/orgrt/mailbox.js +29 -1
  156. package/dist/src/orgrt/mailbox.js.map +1 -1
  157. package/dist/src/orgrt/migrate.d.ts.map +1 -1
  158. package/dist/src/orgrt/migrate.js +8 -5
  159. package/dist/src/orgrt/migrate.js.map +1 -1
  160. package/dist/src/orgrt/opencode-runner.d.ts +1 -1
  161. package/dist/src/orgrt/opencode-runner.d.ts.map +1 -1
  162. package/dist/src/orgrt/opencode-runner.js +29 -3
  163. package/dist/src/orgrt/opencode-runner.js.map +1 -1
  164. package/dist/src/orgrt/org-memory.d.ts +19 -3
  165. package/dist/src/orgrt/org-memory.d.ts.map +1 -1
  166. package/dist/src/orgrt/org-memory.js +110 -38
  167. package/dist/src/orgrt/org-memory.js.map +1 -1
  168. package/dist/src/orgrt/pi-rpc-runner.d.ts +3 -1
  169. package/dist/src/orgrt/pi-rpc-runner.d.ts.map +1 -1
  170. package/dist/src/orgrt/pi-rpc-runner.js +35 -3
  171. package/dist/src/orgrt/pi-rpc-runner.js.map +1 -1
  172. package/dist/src/orgrt/pi-runner.d.ts +25 -2
  173. package/dist/src/orgrt/pi-runner.d.ts.map +1 -1
  174. package/dist/src/orgrt/pi-runner.js +271 -152
  175. package/dist/src/orgrt/pi-runner.js.map +1 -1
  176. package/dist/src/orgrt/policy.d.ts +1 -0
  177. package/dist/src/orgrt/policy.d.ts.map +1 -1
  178. package/dist/src/orgrt/policy.js +199 -39
  179. package/dist/src/orgrt/policy.js.map +1 -1
  180. package/dist/src/orgrt/provider.d.ts +4 -0
  181. package/dist/src/orgrt/provider.d.ts.map +1 -1
  182. package/dist/src/orgrt/provider.js +16 -0
  183. package/dist/src/orgrt/provider.js.map +1 -1
  184. package/dist/src/orgrt/qwen-rpc-runner.d.ts +3 -1
  185. package/dist/src/orgrt/qwen-rpc-runner.d.ts.map +1 -1
  186. package/dist/src/orgrt/qwen-rpc-runner.js +35 -3
  187. package/dist/src/orgrt/qwen-rpc-runner.js.map +1 -1
  188. package/dist/src/orgrt/qwen-runner.d.ts +30 -3
  189. package/dist/src/orgrt/qwen-runner.d.ts.map +1 -1
  190. package/dist/src/orgrt/qwen-runner.js +282 -142
  191. package/dist/src/orgrt/qwen-runner.js.map +1 -1
  192. package/dist/src/orgrt/role-slot.d.ts +88 -0
  193. package/dist/src/orgrt/role-slot.d.ts.map +1 -0
  194. package/dist/src/orgrt/role-slot.js +133 -0
  195. package/dist/src/orgrt/role-slot.js.map +1 -0
  196. package/dist/src/orgrt/runtime-options.d.ts +17 -0
  197. package/dist/src/orgrt/runtime-options.d.ts.map +1 -0
  198. package/dist/src/orgrt/runtime-options.js +32 -0
  199. package/dist/src/orgrt/runtime-options.js.map +1 -0
  200. package/dist/src/orgrt/scheduler-integration.d.ts +11 -0
  201. package/dist/src/orgrt/scheduler-integration.d.ts.map +1 -1
  202. package/dist/src/orgrt/scheduler-integration.js +75 -17
  203. package/dist/src/orgrt/scheduler-integration.js.map +1 -1
  204. package/dist/src/orgrt/scheduler.d.ts +4 -0
  205. package/dist/src/orgrt/scheduler.d.ts.map +1 -1
  206. package/dist/src/orgrt/scheduler.js +7 -1
  207. package/dist/src/orgrt/scheduler.js.map +1 -1
  208. package/dist/src/orgrt/server.d.ts +8 -3
  209. package/dist/src/orgrt/server.d.ts.map +1 -1
  210. package/dist/src/orgrt/server.js +48 -13
  211. package/dist/src/orgrt/server.js.map +1 -1
  212. package/dist/src/orgrt/session.d.ts +26 -2
  213. package/dist/src/orgrt/session.d.ts.map +1 -1
  214. package/dist/src/orgrt/session.js +98 -4
  215. package/dist/src/orgrt/session.js.map +1 -1
  216. package/dist/src/orgrt/task-dag.d.ts +5 -0
  217. package/dist/src/orgrt/task-dag.d.ts.map +1 -1
  218. package/dist/src/orgrt/task-dag.js +41 -0
  219. package/dist/src/orgrt/task-dag.js.map +1 -1
  220. package/dist/src/orgrt/test-loop.js +2 -2
  221. package/dist/src/orgrt/test-loop.js.map +1 -1
  222. package/dist/src/orgrt/types.d.ts +14 -2
  223. package/dist/src/orgrt/types.d.ts.map +1 -1
  224. package/dist/src/orgrt/types.js +15 -1
  225. package/dist/src/orgrt/types.js.map +1 -1
  226. package/dist/src/orgrt/vercel-runner.d.ts.map +1 -1
  227. package/dist/src/orgrt/vercel-runner.js +4 -0
  228. package/dist/src/orgrt/vercel-runner.js.map +1 -1
  229. package/dist/src/ui/routes-org.mjs +27 -7
  230. package/dist/src/ui/server.mjs +82 -48
  231. package/dist/tsconfig.tsbuildinfo +1 -1
  232. package/package.json +3 -2
  233. package/dist/src/ui/data/mastermind-sessions.json +0 -1
@@ -148,10 +148,23 @@ export const memoryPatternSearch = {
148
148
  });
149
149
  if (!result)
150
150
  return { results: [], controller: 'unavailable' };
151
- return {
152
- ...result,
153
- patterns: result.patterns.filter((p) => p.score >= minConfidence),
154
- };
151
+ const patterns = result.patterns.filter((p) => p.score >= minConfidence);
152
+ // Usage tracking: every recall hit increments the entry's frequency_weight,
153
+ // which feeds both the ranking blend and weight-aware GC protection.
154
+ // Never let this block or fail the search response.
155
+ if (patterns.length) {
156
+ try {
157
+ const ids = patterns
158
+ .map((p) => p.id)
159
+ .filter((id) => typeof id === 'string' && id.length > 0);
160
+ if (ids.length)
161
+ await bridge.bridgeRecordUsage({ entryIds: ids });
162
+ }
163
+ catch {
164
+ /* non-fatal: usage tracking must never break search */
165
+ }
166
+ }
167
+ return { ...result, patterns };
155
168
  }
156
169
  catch (error) {
157
170
  return { results: [], error: sanitizeError(error) };
@@ -225,6 +238,22 @@ export const memoryFeedback = {
225
238
  },
226
239
  };
227
240
  // ===== memory_causal_edge — Record causal relationships =====
241
+ /** Provenance ref for one causal-edge assertion.
242
+ *
243
+ * Every call used to ingest under the bare string `causal-edge-tool`, which
244
+ * made all of them one indivisible provenance bucket: a rollback aimed at one
245
+ * wrong edge withdrew every causal edge the tool had ever recorded. Keying on
246
+ * the asserted triple makes the ref unique per assertion and stable for it —
247
+ * re-asserting the same edge reinforces its existing support instead of
248
+ * minting a second ref that rollback would then have to chase separately.
249
+ *
250
+ * Components are bounded like the graph's own name key (`normalizeName`
251
+ * slices at 200), so this inherits that identity resolution and adds no new
252
+ * collision class. */
253
+ export function causalEdgeOriginRef(source, relation, target) {
254
+ const part = (s, max) => s.trim().toLowerCase().slice(0, max);
255
+ return `causal-edge:${part(source, 100)}|${part(relation, 50)}|${part(target, 100)}`;
256
+ }
228
257
  export const memoryCausalEdge = {
229
258
  name: 'memory_causal-edge',
230
259
  description: 'Record a causal relationship between two named things as a real knowledge-graph edge (traversable via memory_kg_search)',
@@ -235,24 +264,29 @@ export const memoryCausalEdge = {
235
264
  targetId: { type: 'string', description: 'Target entity name (or entry ID)' },
236
265
  relation: {
237
266
  type: 'string',
238
- description: 'Relationship type (e.g., causes, preceded, fixed_by)',
267
+ description: 'Relationship type — a snake_case label (e.g. causes, preceded, fixed_by)',
239
268
  },
240
- weight: { type: 'number', description: 'Edge weight (0-1)' },
269
+ // `weight` used to be declared here and then dropped on the floor: the
270
+ // graph's edge input has no weight field, so nothing could carry it.
271
+ // Declaring an option the store cannot honour is the same boundary
272
+ // dishonesty as declaring an unvalidated payload shape.
241
273
  description: { type: 'string', description: 'One-sentence concrete fact for this edge' },
242
274
  },
243
275
  required: ['sourceId', 'targetId', 'relation'],
244
276
  },
245
277
  handler: async (params) => {
246
278
  try {
247
- const sourceId = validateString(params.sourceId, 'sourceId', 500);
248
- const targetId = validateString(params.targetId, 'targetId', 500);
249
- const relation = validateString(params.relation, 'relation', 200);
279
+ const sourceId = validateString(params.sourceId, 'sourceId', KG_MAX_NAME);
280
+ const targetId = validateString(params.targetId, 'targetId', KG_MAX_NAME);
281
+ const relation = validateString(params.relation, 'relation', KG_MAX_RELATION);
250
282
  if (!sourceId)
251
283
  return { success: false, error: 'sourceId is required (non-empty string)' };
252
284
  if (!targetId)
253
285
  return { success: false, error: 'targetId is required (non-empty string)' };
254
286
  if (!relation)
255
287
  return { success: false, error: 'relation is required (non-empty string)' };
288
+ if (!KG_RELATION_RE.test(relation.trim()))
289
+ return { success: false, error: relationReason(relation) };
256
290
  const kg = await import('../memory/memory-kg.js');
257
291
  const result = await kg.kgIngest({
258
292
  nodes: [{ name: sourceId }, { name: targetId }],
@@ -261,10 +295,10 @@ export const memoryCausalEdge = {
261
295
  source: sourceId,
262
296
  target: targetId,
263
297
  relation,
264
- description: validateString(params.description, 'description', 2000) ?? undefined,
298
+ description: validateString(params.description, 'description', KG_MAX_TEXT) ?? undefined,
265
299
  },
266
300
  ],
267
- originRef: 'causal-edge-tool',
301
+ originRef: causalEdgeOriginRef(sourceId, relation, targetId),
268
302
  });
269
303
  return result;
270
304
  }
@@ -274,26 +308,176 @@ export const memoryCausalEdge = {
274
308
  },
275
309
  };
276
310
  // ===== memory_kg_* — Conversation/org knowledge graph =====
311
+ // ── KG payload contract (K8) ────────────────────────────────────────
312
+ //
313
+ // This is the public write boundary of the knowledge graph. It used to declare
314
+ // nodes/edges/rules as bare `{type: 'object'}` arrays and cast them to `any[]`,
315
+ // which meant three things at once: a caller could not see the shape it was
316
+ // supposed to send, an item that the store rejected part-way through left the
317
+ // items ahead of it already persisted, and anything past the per-call caps was
318
+ // sliced off with the result reporting exactly as it would have for a payload
319
+ // that fit. Everything below exists so a caller can tell "all 40 nodes stored"
320
+ // from "20 stored, 20 dropped", and so a malformed payload never becomes a
321
+ // partial graph.
322
+ /** Per-call ceilings enforced by kgIngest/kgIngestRules. Mirrored here so an
323
+ * over-cap payload is reported as truncated instead of silently sliced.
324
+ * Keep in sync with the `.slice()` bounds in memory-kg.ts. */
325
+ const KG_MAX_NODES = 500;
326
+ const KG_MAX_EDGES = 1000;
327
+ const KG_MAX_RULES = 50;
328
+ const KG_MAX_NAME = 500;
329
+ const KG_MAX_TEXT = 2000;
330
+ const KG_MAX_RULE = 4000;
331
+ const KG_MAX_RELATION = 200;
332
+ /** A relation is a short label, not prose: alphanumeric words joined by `_`,
333
+ * `-` or single spaces. kgIngest normalizes whatever it gets into an edge KEY,
334
+ * so free text silently becomes a different relation than the caller wrote —
335
+ * and an unbounded one partitions the graph into unqueryable singletons. */
336
+ const KG_RELATION_RE = /^[A-Za-z0-9]+(?:[ _-][A-Za-z0-9]+)*$/;
337
+ const relationReason = (v) => `relation must be a label such as "causes" or "fixed_by", not ${JSON.stringify(v.slice(0, 60))}`;
338
+ const textReason = (field, max) => `${field} must be a non-empty string of at most ${max} characters, without control characters`;
339
+ /** Optional string field: absent/null/'' is fine, anything else must be a
340
+ * clean bounded string. Returns a reason on failure, null when acceptable. */
341
+ function checkOptionalText(obj, field, max) {
342
+ const value = obj[field];
343
+ if (value === undefined || value === null || value === '')
344
+ return null;
345
+ if (!validateString(value, field, max))
346
+ return textReason(field, max);
347
+ return null;
348
+ }
349
+ function checkNode(item) {
350
+ if (!item || typeof item !== 'object' || Array.isArray(item))
351
+ return 'must be an object';
352
+ const o = item;
353
+ if (!validateString(o.name, 'name', KG_MAX_NAME))
354
+ return textReason('name', KG_MAX_NAME);
355
+ return (checkOptionalText(o, 'type', KG_MAX_NAME) ??
356
+ checkOptionalText(o, 'description', KG_MAX_TEXT) ??
357
+ checkOptionalText(o, 'nodeSet', KG_MAX_NAME));
358
+ }
359
+ function checkEdge(item) {
360
+ if (!item || typeof item !== 'object' || Array.isArray(item))
361
+ return 'must be an object';
362
+ const o = item;
363
+ if (!validateString(o.source, 'source', KG_MAX_NAME))
364
+ return textReason('source', KG_MAX_NAME);
365
+ if (!validateString(o.target, 'target', KG_MAX_NAME))
366
+ return textReason('target', KG_MAX_NAME);
367
+ const relation = validateString(o.relation, 'relation', KG_MAX_RELATION);
368
+ if (!relation)
369
+ return textReason('relation', KG_MAX_RELATION);
370
+ if (!KG_RELATION_RE.test(relation.trim()))
371
+ return relationReason(relation);
372
+ return (checkOptionalText(o, 'description', KG_MAX_TEXT) ??
373
+ checkOptionalText(o, 'sourceType', KG_MAX_NAME) ??
374
+ checkOptionalText(o, 'targetType', KG_MAX_NAME));
375
+ }
376
+ function checkRule(item) {
377
+ if (!item || typeof item !== 'object' || Array.isArray(item))
378
+ return 'must be an object';
379
+ const o = item;
380
+ if (!validateString(o.rule, 'rule', KG_MAX_RULE))
381
+ return textReason('rule', KG_MAX_RULE);
382
+ return checkOptionalText(o, 'context', KG_MAX_TEXT);
383
+ }
384
+ const KG_CHECKS = {
385
+ nodes: { check: checkNode, cap: KG_MAX_NODES },
386
+ edges: { check: checkEdge, cap: KG_MAX_EDGES },
387
+ rules: { check: checkRule, cap: KG_MAX_RULES },
388
+ };
389
+ /** Validate the WHOLE nested payload up front. Any bad item rejects the entire
390
+ * call — including one past a cap that would have been dropped anyway, since
391
+ * a caller sending malformed items deserves to hear about them rather than
392
+ * have them quietly vanish. Nothing here writes; the first mutation only
393
+ * happens once this returns `ok`. */
394
+ function validateKgPayload(params) {
395
+ const rejected = [];
396
+ const accepted = { nodes: [], edges: [], rules: [] };
397
+ const truncated = {};
398
+ for (const field of ['nodes', 'edges', 'rules']) {
399
+ const raw = params[field];
400
+ if (raw === undefined || raw === null)
401
+ continue;
402
+ if (!Array.isArray(raw)) {
403
+ rejected.push({ field, index: -1, reason: `${field} must be an array` });
404
+ continue;
405
+ }
406
+ const { check, cap } = KG_CHECKS[field];
407
+ for (let i = 0; i < raw.length; i++) {
408
+ const reason = check(raw[i]);
409
+ if (reason)
410
+ rejected.push({ field, index: i, reason });
411
+ }
412
+ accepted[field] = raw.slice(0, cap);
413
+ if (raw.length > cap)
414
+ truncated[field] = raw.length - cap;
415
+ }
416
+ return {
417
+ ...accepted,
418
+ ...(Object.keys(truncated).length ? { truncated } : {}),
419
+ rejected,
420
+ };
421
+ }
277
422
  export const memoryKgIngest = {
278
423
  name: 'memory_kg_ingest',
279
- description: 'Merge LLM-extracted entities/relations/rules into the persistent knowledge graph; same-name entities merge idempotently.',
424
+ description: 'Merge LLM-extracted entities/relations/rules into the persistent knowledge graph; same-name entities merge idempotently. The whole payload is validated before anything is written, and the result reports accepted/rejected/truncated counts.',
280
425
  inputSchema: {
281
426
  type: 'object',
282
427
  properties: {
283
428
  nodes: {
284
429
  type: 'array',
285
- items: { type: 'object' },
286
- description: 'Entities: [{name, type?, description?, nodeSet?}]',
430
+ maxItems: KG_MAX_NODES,
431
+ description: `Entities (max ${KG_MAX_NODES} per call; the excess is reported as truncated)`,
432
+ items: {
433
+ type: 'object',
434
+ properties: {
435
+ name: {
436
+ type: 'string',
437
+ description: 'Entity name — this IS the identity; same name merges',
438
+ },
439
+ type: { type: 'string', description: "Basic type: 'Person', 'Service', 'Tool'" },
440
+ description: { type: 'string', description: 'One-sentence concrete fact' },
441
+ nodeSet: { type: 'string', description: "Optional grouping, e.g. 'rules'" },
442
+ },
443
+ required: ['name'],
444
+ },
287
445
  },
288
446
  edges: {
289
447
  type: 'array',
290
- items: { type: 'object' },
291
- description: 'Relations: [{source, target, relation, description?}]',
448
+ maxItems: KG_MAX_EDGES,
449
+ description: `Relations (max ${KG_MAX_EDGES} per call; the excess is reported as truncated)`,
450
+ items: {
451
+ type: 'object',
452
+ properties: {
453
+ source: { type: 'string', description: 'Source entity name' },
454
+ target: { type: 'string', description: 'Target entity name' },
455
+ relation: {
456
+ type: 'string',
457
+ description: "snake_case label, e.g. 'causes', 'fixed_by' — not free text",
458
+ },
459
+ description: {
460
+ type: 'string',
461
+ description: 'One-sentence concrete fact using the endpoint names',
462
+ },
463
+ sourceType: { type: 'string' },
464
+ targetType: { type: 'string' },
465
+ },
466
+ required: ['source', 'target', 'relation'],
467
+ },
292
468
  },
293
469
  rules: {
294
470
  type: 'array',
295
- items: { type: 'object' },
296
- description: 'Distilled durable rules: [{rule, context?}] — deduped semantically against existing rules',
471
+ maxItems: KG_MAX_RULES,
472
+ description: `Distilled durable rules, deduped semantically against existing rules (max ${KG_MAX_RULES} per call)`,
473
+ items: {
474
+ type: 'object',
475
+ properties: {
476
+ rule: { type: 'string', description: 'The durable rule, in one sentence' },
477
+ context: { type: 'string', description: 'When the rule applies' },
478
+ },
479
+ required: ['rule'],
480
+ },
297
481
  },
298
482
  rawText: {
299
483
  type: 'string',
@@ -301,34 +485,61 @@ export const memoryKgIngest = {
301
485
  },
302
486
  originRef: {
303
487
  type: 'string',
304
- description: 'Provenance ref (session/run/doc id) — enables memory_kg_rollback',
488
+ description: 'Provenance ref (session/run/doc id) — enables memory_kg_rollback. Use a ref unique to this operation so a rollback withdraws only its work.',
305
489
  },
306
490
  },
307
491
  required: ['originRef'],
308
492
  },
309
493
  handler: async (params) => {
310
494
  try {
311
- const originRef = validateString(params.originRef, 'originRef', 500);
495
+ const originRef = validateString(params.originRef, 'originRef', KG_MAX_NAME);
312
496
  if (!originRef)
313
- return { success: false, error: 'originRef is required' };
497
+ return { success: false, error: textReason('originRef', KG_MAX_NAME), rejected: [] };
498
+ const payload = validateKgPayload(params);
499
+ if (payload.rejected.length)
500
+ return {
501
+ success: false,
502
+ error: `payload rejected before any write: ${payload.rejected.length} invalid item(s)`,
503
+ rejected: payload.rejected,
504
+ };
314
505
  const kg = await import('../memory/memory-kg.js');
315
- let nodes = Array.isArray(params.nodes) ? params.nodes : [];
316
- let edges = Array.isArray(params.edges) ? params.edges : [];
506
+ let { nodes, edges } = payload;
507
+ // A caller-supplied payload is an assertion; text run through the
508
+ // extractor is an inference. Which one produced these elements is stored
509
+ // on the claim, so retrieval can weigh them differently.
510
+ let method = 'asserted';
317
511
  if (!nodes.length &&
318
512
  !edges.length &&
319
513
  typeof params.rawText === 'string' &&
320
514
  params.rawText.trim()) {
321
515
  const extracted = kg.heuristicExtract(params.rawText, { sourceName: originRef });
322
- nodes = extracted.nodes;
323
- edges = extracted.edges;
516
+ nodes = extracted.nodes.slice(0, KG_MAX_NODES);
517
+ edges = extracted.edges.slice(0, KG_MAX_EDGES);
518
+ method = 'heuristic';
324
519
  }
325
520
  const graph = nodes.length || edges.length
326
- ? await kg.kgIngest({ nodes, edges, originRef })
521
+ ? await kg.kgIngest({ nodes: nodes, edges: edges, originRef, method })
327
522
  : { success: true, nodesAdded: 0, nodesMerged: 0, edgesAdded: 0, edgesMerged: 0 };
328
- const rules = Array.isArray(params.rules) && params.rules.length
329
- ? await kg.kgIngestRules({ rules: params.rules, originRef })
523
+ const rules = payload.rules.length
524
+ ? await kg.kgIngestRules({ rules: payload.rules, originRef })
330
525
  : null;
331
- return { ...graph, rules };
526
+ // Honesty over the whole call, not just the entity half: a refused rule
527
+ // write must not be flattened into a graph-only `success: true`, and the
528
+ // caller gets the rule verdicts and aggregate `accepted` count alongside
529
+ // them so an `accepted` verdict with `accepted: 0` is visible.
530
+ const rulesFailed = rules ? !rules.success : false;
531
+ return {
532
+ ...graph,
533
+ success: graph.success && !rulesFailed,
534
+ ...(graph.error || rulesFailed
535
+ ? { error: graph.error ?? rules?.error ?? 'rule ingestion failed' }
536
+ : {}),
537
+ rules,
538
+ /** How many items passed validation and were submitted to the store.
539
+ * Compare against nodesAdded+nodesMerged to see what actually landed. */
540
+ accepted: { nodes: nodes.length, edges: edges.length, rules: payload.rules.length },
541
+ ...(payload.truncated ? { truncated: payload.truncated } : {}),
542
+ };
332
543
  }
333
544
  catch (error) {
334
545
  return { success: false, error: sanitizeError(error) };
@@ -337,7 +548,7 @@ export const memoryKgIngest = {
337
548
  };
338
549
  export const memoryKgSearch = {
339
550
  name: 'memory_kg_search',
340
- description: 'Search the knowledge graph: vector-seeded entities expanded to ranked relationship triplets. Returns rendered context lines plus seed entry ids (rate them via memory_feedback).',
551
+ description: 'Search the memory knowledge graph (remembered entities and relations — not the Monograph code graph): entities are seeded via the memory bridge (semantic when embeddings are available, keyword otherwise) and expanded to ranked relationship triplets. `method` reports which retrieval actually ran. Each triplet carries how it was obtained — `asserted` (someone stated it) or `heuristic` (inferred from co-occurrence, lower trust) — and `conflict` when its origins disagree; absent `method` means the edge predates that recording. Returns rendered context lines plus seed entry ids (rate them via memory_feedback).',
341
552
  inputSchema: {
342
553
  type: 'object',
343
554
  properties: {
@@ -392,7 +603,7 @@ export const memoryKgRollback = {
392
603
  };
393
604
  export const memoryKgConsolidate = {
394
605
  name: 'memory_kg_consolidate',
395
- description: "List knowledge-graph entities whose descriptions lag their connectivity, with neighborhood facts. YOU do the consolidation: rewrite each candidate's description as one canonical paragraph merging the facts, then resubmit via memory_kg_ingest (richer descriptions win on merge).",
606
+ description: "List knowledge-graph entities whose descriptions lag their connectivity, with neighborhood facts. YOU do the consolidation: rewrite each candidate's description as one canonical paragraph merging the facts, then resubmit via memory_kg_ingest. Your resubmission becomes the current description because it is the most recent claim from your origin — not because it is longer, so do not pad it.",
396
607
  inputSchema: {
397
608
  type: 'object',
398
609
  properties: {
@@ -615,6 +826,21 @@ export const memoryHierarchicalRecall = {
615
826
  tier: tier ?? undefined,
616
827
  topK: validatePositiveInt(params.topK, 5, MAX_TOP_K),
617
828
  });
829
+ // Usage tracking: every recall hit increments the entry's frequency_weight,
830
+ // which feeds both the ranking blend and weight-aware GC protection.
831
+ // Never let this block or fail the recall response.
832
+ if (result?.results?.length) {
833
+ try {
834
+ const ids = result.results
835
+ .map((r) => r.id)
836
+ .filter((id) => typeof id === 'string' && id.length > 0);
837
+ if (ids.length)
838
+ await bridge.bridgeRecordUsage({ entryIds: ids });
839
+ }
840
+ catch {
841
+ /* non-fatal: usage tracking must never break recall */
842
+ }
843
+ }
618
844
  return (result ?? {
619
845
  results: [],
620
846
  error: 'Memory bridge not available. Use memory_pattern-search instead.',
@@ -1 +1 @@
1
- {"version":3,"file":"memory-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/memory-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-tools.js","sourceRoot":"","sources":["../../../src/mcp-tools/memory-tools.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"health-tools.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/health-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAa3C,eAAO,MAAM,kBAAkB,EAAE,OAuBhC,CAAC;AAIF,eAAO,MAAM,mBAAmB,EAAE,OA4DjC,CAAC;AAIF,eAAO,MAAM,sBAAsB,EAAE,OAgCpC,CAAC;AAIF,eAAO,MAAM,mBAAmB,EAAE,OAmBjC,CAAC"}
1
+ {"version":3,"file":"health-tools.d.ts","sourceRoot":"","sources":["../../../../src/mcp-tools/monograph/health-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAa3C,eAAO,MAAM,kBAAkB,EAAE,OAuBhC,CAAC;AAoBF,eAAO,MAAM,mBAAmB,EAAE,OA+DjC,CAAC;AAIF,eAAO,MAAM,sBAAsB,EAAE,OAmEpC,CAAC;AAIF,eAAO,MAAM,mBAAmB,EAAE,OAmBjC,CAAC"}