bikky 0.3.7 → 0.3.9

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 (109) hide show
  1. package/README.md +21 -5
  2. package/dist/config.d.ts +6 -1
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +15 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/config.test.js +30 -0
  7. package/dist/config.test.js.map +1 -1
  8. package/dist/daemon/capture-policy.d.ts +2 -2
  9. package/dist/daemon/capture-policy.d.ts.map +1 -1
  10. package/dist/daemon/capture-policy.js +15 -10
  11. package/dist/daemon/capture-policy.js.map +1 -1
  12. package/dist/daemon/capture-policy.test.js +7 -5
  13. package/dist/daemon/capture-policy.test.js.map +1 -1
  14. package/dist/daemon/consolidation.d.ts +1 -1
  15. package/dist/daemon/consolidation.d.ts.map +1 -1
  16. package/dist/daemon/consolidation.js +24 -17
  17. package/dist/daemon/consolidation.js.map +1 -1
  18. package/dist/daemon/entity-typing.test.js +1 -1
  19. package/dist/daemon/entity-typing.test.js.map +1 -1
  20. package/dist/daemon/episode-summary.js +2 -2
  21. package/dist/daemon/episode-summary.js.map +1 -1
  22. package/dist/daemon/extraction-quality.test.js +4 -4
  23. package/dist/daemon/extraction-quality.test.js.map +1 -1
  24. package/dist/daemon/extraction-rules.d.ts +8 -8
  25. package/dist/daemon/extraction-rules.d.ts.map +1 -1
  26. package/dist/daemon/extraction-rules.js +57 -14
  27. package/dist/daemon/extraction-rules.js.map +1 -1
  28. package/dist/daemon/extraction-rules.test.js +32 -12
  29. package/dist/daemon/extraction-rules.test.js.map +1 -1
  30. package/dist/daemon/extraction.d.ts +6 -2
  31. package/dist/daemon/extraction.d.ts.map +1 -1
  32. package/dist/daemon/extraction.js +58 -14
  33. package/dist/daemon/extraction.js.map +1 -1
  34. package/dist/daemon/extraction.test.js +31 -6
  35. package/dist/daemon/extraction.test.js.map +1 -1
  36. package/dist/daemon/loop.d.ts.map +1 -1
  37. package/dist/daemon/loop.js.map +1 -1
  38. package/dist/daemon/loop.test.js +1 -1
  39. package/dist/daemon/loop.test.js.map +1 -1
  40. package/dist/daemon/qdrant.d.ts.map +1 -1
  41. package/dist/daemon/qdrant.js +2 -2
  42. package/dist/daemon/qdrant.js.map +1 -1
  43. package/dist/daemon/qdrant.test.js +8 -8
  44. package/dist/daemon/qdrant.test.js.map +1 -1
  45. package/dist/daemon/relations.d.ts +1 -1
  46. package/dist/daemon/relations.js +4 -4
  47. package/dist/daemon/relations.js.map +1 -1
  48. package/dist/daemon/relations.test.js +1 -1
  49. package/dist/daemon/relations.test.js.map +1 -1
  50. package/dist/daemon/session-index.js +2 -2
  51. package/dist/daemon/session-index.js.map +1 -1
  52. package/dist/daemon/session-summary.d.ts.map +1 -1
  53. package/dist/daemon/session-summary.js +5 -29
  54. package/dist/daemon/session-summary.js.map +1 -1
  55. package/dist/daemon/session-summary.test.js +3 -3
  56. package/dist/daemon/session-summary.test.js.map +1 -1
  57. package/dist/daemon/staleness.js +1 -1
  58. package/dist/daemon/staleness.js.map +1 -1
  59. package/dist/daemon/staleness.test.js +2 -2
  60. package/dist/daemon/staleness.test.js.map +1 -1
  61. package/dist/daemon/watcher.test.js +1 -1
  62. package/dist/daemon/watcher.test.js.map +1 -1
  63. package/dist/daemon/workstream-summary.js +2 -2
  64. package/dist/daemon/workstream-summary.js.map +1 -1
  65. package/dist/lib/qdrant-client.test.js.map +1 -1
  66. package/dist/llm/inference/index.d.ts +1 -1
  67. package/dist/llm/inference/index.d.ts.map +1 -1
  68. package/dist/mcp/helpers.d.ts +39 -0
  69. package/dist/mcp/helpers.d.ts.map +1 -1
  70. package/dist/mcp/helpers.js +53 -0
  71. package/dist/mcp/helpers.js.map +1 -1
  72. package/dist/mcp/helpers.test.js +35 -35
  73. package/dist/mcp/helpers.test.js.map +1 -1
  74. package/dist/mcp/index.js +1 -1
  75. package/dist/mcp/index.js.map +1 -1
  76. package/dist/mcp/taxonomy.d.ts +55 -58
  77. package/dist/mcp/taxonomy.d.ts.map +1 -1
  78. package/dist/mcp/taxonomy.js +169 -148
  79. package/dist/mcp/taxonomy.js.map +1 -1
  80. package/dist/mcp/taxonomy.test.js +43 -24
  81. package/dist/mcp/taxonomy.test.js.map +1 -1
  82. package/dist/mcp/tools.d.ts.map +1 -1
  83. package/dist/mcp/tools.integration.itest.js +4 -5
  84. package/dist/mcp/tools.integration.itest.js.map +1 -1
  85. package/dist/mcp/tools.js +130 -54
  86. package/dist/mcp/tools.js.map +1 -1
  87. package/dist/mcp/tools.test.js +159 -23
  88. package/dist/mcp/tools.test.js.map +1 -1
  89. package/dist/prompts/brief.d.ts +2 -2
  90. package/dist/prompts/brief.d.ts.map +1 -1
  91. package/dist/prompts/brief.js +5 -7
  92. package/dist/prompts/brief.js.map +1 -1
  93. package/dist/prompts/distill.js +3 -3
  94. package/dist/prompts/extraction.d.ts.map +1 -1
  95. package/dist/prompts/extraction.js +70 -31
  96. package/dist/prompts/extraction.js.map +1 -1
  97. package/dist/prompts/prompts.test.js +4 -4
  98. package/dist/prompts/prompts.test.js.map +1 -1
  99. package/dist/provenance/actor.d.ts +17 -0
  100. package/dist/provenance/actor.d.ts.map +1 -0
  101. package/dist/provenance/actor.js +82 -0
  102. package/dist/provenance/actor.js.map +1 -0
  103. package/dist/provenance/actor.test.d.ts +2 -0
  104. package/dist/provenance/actor.test.d.ts.map +1 -0
  105. package/dist/provenance/actor.test.js +49 -0
  106. package/dist/provenance/actor.test.js.map +1 -0
  107. package/dist/render.test.js +4 -4
  108. package/dist/render.test.js.map +1 -1
  109. package/package.json +4 -1
@@ -8,71 +8,36 @@
8
8
  // Categories: subject matter
9
9
  // ---------------------------------------------------------------------------
10
10
  export const CATEGORIES = {
11
- codebase: {
12
- description: "Repository structure, modules, important files, APIs, build/test commands, and code navigation knowledge.",
11
+ engineering: {
12
+ description: "Engineering context: codebase maps, architecture decisions, infrastructure topology, access patterns, operations, troubleshooting, and reusable conventions.",
13
13
  examples: [
14
14
  "The auth middleware lives in src/server/auth.ts.",
15
- "Run npm test -- --runInBand for flaky integration tests.",
15
+ "If Qdrant order_by fails, create the payload index before retrying.",
16
16
  ],
17
17
  },
18
- infrastructure: {
19
- description: "Cloud, deployment, runtime, secrets, queues, databases, CI/CD, and environment topology.",
18
+ product: {
19
+ description: "Product context: domain rules, product decisions, requirements, user workflows, roadmap, success metrics, and market or community insight.",
20
20
  examples: [
21
- "Production runs on a Qdrant cluster (Cloud or self-hosted) for vector storage.",
22
- "Deployments are promoted through GitHub Actions.",
21
+ "Bikky should show categories and concrete subtype chips directly, with no extra sub-tab layer.",
22
+ "Activation should be measured by whether agents successfully reuse recalled memory.",
23
23
  ],
24
24
  },
25
- operations: {
26
- description: "Runbooks, incident handling, maintenance procedures, debugging steps, and operational gotchas.",
27
- examples: [
28
- "Restart the worker after changing queue visibility timeout.",
29
- "If migrations hang, check the advisory lock table first.",
30
- ],
31
- },
32
- decisions: {
33
- description: "Architecture, product, process, and technical decisions with durable rationale.",
34
- examples: [
35
- "Use workspace_id as the access boundary instead of overloading domain.",
36
- "Keep telemetry out of normal semantic recall.",
37
- ],
38
- },
39
- product_domain: {
40
- description: "Product concepts, business rules, user workflows, domain vocabulary, and market assumptions.",
41
- examples: [
42
- "A workstream is the durable continuity unit for long-running tasks.",
43
- "Recall quality should be measured by downstream usefulness, not just similarity.",
44
- ],
45
- },
46
- projects: {
47
- description: "Project goals, milestones, current state, open questions, blockers, and active workstreams.",
48
- examples: [
49
- "The capture-policy workstream is implementing the memory ontology first.",
50
- "The UI smoke suite is tracked in bikky-dev/bikky#13.",
51
- ],
52
- },
53
- people: {
54
- description: "Ownership, roles, collaboration patterns, responsibilities, and team preferences.",
25
+ human: {
26
+ description: "Human context: explicit preferences, people and roles, ownership, working agreements, and durable actor-action activity events.",
55
27
  examples: [
56
28
  "Saber prefers concise implementation plans before code changes.",
57
- "The platform team owns the deploy workflow.",
29
+ "Alex approved PR #85 for merge.",
58
30
  ],
59
31
  },
60
- preferences: {
61
- description: "User, team, or workspace preferences about style, tooling, defaults, and interaction patterns.",
62
- examples: [
63
- "Prefer Node's built-in test runner for this repo.",
64
- "Default new memory captures to software_engineering.",
65
- ],
66
- },
67
- observations: {
68
- description: "Validated observations, troubleshooting evidence, behavioral notes, and learned facts that do not fit a narrower category.",
32
+ system: {
33
+ description: "System context: Bikky-owned lifecycle memory, session indexes, episodes, workstreams, recall/feedback/outcome telemetry, and aggregate rollups.",
69
34
  examples: [
70
- "The current ESLint config is incompatible with ESLint v9.",
71
- "The dashboard shows stale facts separately from verified current facts.",
35
+ "Session indexes are routing/audit artifacts rather than durable project boundaries.",
36
+ "Recall telemetry is excluded from normal semantic recall.",
72
37
  ],
73
38
  },
74
39
  };
75
- export const DEFAULT_CATEGORY = "observations";
40
+ export const DEFAULT_CATEGORY = "engineering";
76
41
  // ---------------------------------------------------------------------------
77
42
  // Domains: activity / knowledge profiles
78
43
  // ---------------------------------------------------------------------------
@@ -80,55 +45,42 @@ export const DOMAINS = {
80
45
  software_engineering: {
81
46
  description: "Coding-agent work: repositories, code changes, architecture, infrastructure, debugging, tests, CI, and developer workflow.",
82
47
  defaultCategories: [
83
- "codebase",
84
- "infrastructure",
85
- "operations",
86
- "decisions",
87
- "projects",
88
- "preferences",
89
- "observations",
48
+ "engineering",
49
+ "product",
50
+ "human",
51
+ "system",
90
52
  ],
91
53
  },
92
54
  product_strategy: {
93
55
  description: "Product direction, positioning, roadmap tradeoffs, customer problems, metrics, and market learning.",
94
56
  defaultCategories: [
95
- "product_domain",
96
- "decisions",
97
- "projects",
98
- "people",
99
- "preferences",
100
- "observations",
57
+ "product",
58
+ "human",
59
+ "system",
101
60
  ],
102
61
  },
103
62
  business_operations: {
104
63
  description: "Business process, vendors, finance, legal/admin operations, recurring procedures, and ownership.",
105
64
  defaultCategories: [
106
- "operations",
107
- "decisions",
108
- "projects",
109
- "people",
110
- "preferences",
111
- "observations",
65
+ "product",
66
+ "human",
67
+ "system",
112
68
  ],
113
69
  },
114
70
  research: {
115
71
  description: "Research questions, sources, hypotheses, experiment findings, synthesis, and reusable insights.",
116
72
  defaultCategories: [
117
- "product_domain",
118
- "decisions",
119
- "projects",
120
- "preferences",
121
- "observations",
73
+ "product",
74
+ "engineering",
75
+ "system",
122
76
  ],
123
77
  },
124
78
  personal_productivity: {
125
79
  description: "Individual productivity, habits, planning preferences, reminders, and personal operating context.",
126
80
  defaultCategories: [
127
- "operations",
128
- "projects",
129
- "people",
130
- "preferences",
131
- "observations",
81
+ "human",
82
+ "product",
83
+ "system",
132
84
  ],
133
85
  },
134
86
  };
@@ -204,8 +156,18 @@ export const MEMORY_SUBTYPES = {
204
156
  "access_pattern",
205
157
  "operational_procedure",
206
158
  "domain_rule",
159
+ "product_decision",
160
+ "product_requirement",
161
+ "user_workflow",
162
+ "roadmap_item",
163
+ "success_metric",
164
+ "market_insight",
207
165
  "troubleshooting_gotcha",
208
166
  "preference",
167
+ "person_profile",
168
+ "ownership_note",
169
+ "working_agreement",
170
+ "activity_event",
209
171
  ],
210
172
  summary: ["session_index", "episode", "workstream"],
211
173
  distilled: ["convention"],
@@ -220,22 +182,32 @@ export const DEFAULT_MEMORY_SUBTYPE_BY_KIND = {
220
182
  telemetry: "recall_event",
221
183
  };
222
184
  export const MEMORY_SUBTYPE_DEFAULT_CATEGORY = {
223
- codebase_map: "codebase",
224
- architecture_decision: "decisions",
225
- infra_topology: "infrastructure",
226
- access_pattern: "infrastructure",
227
- operational_procedure: "operations",
228
- domain_rule: "product_domain",
229
- troubleshooting_gotcha: "operations",
230
- preference: "preferences",
231
- session_index: "projects",
232
- episode: "projects",
233
- workstream: "projects",
234
- convention: "observations",
235
- recall_event: "observations",
236
- feedback_event: "observations",
237
- outcome_event: "observations",
238
- aggregate_rollup: "observations",
185
+ codebase_map: "engineering",
186
+ architecture_decision: "engineering",
187
+ infra_topology: "engineering",
188
+ access_pattern: "engineering",
189
+ operational_procedure: "engineering",
190
+ domain_rule: "product",
191
+ product_decision: "product",
192
+ product_requirement: "product",
193
+ user_workflow: "product",
194
+ roadmap_item: "product",
195
+ success_metric: "product",
196
+ market_insight: "product",
197
+ troubleshooting_gotcha: "engineering",
198
+ preference: "human",
199
+ person_profile: "human",
200
+ ownership_note: "human",
201
+ working_agreement: "human",
202
+ activity_event: "human",
203
+ session_index: "system",
204
+ episode: "system",
205
+ workstream: "system",
206
+ convention: "engineering",
207
+ recall_event: "system",
208
+ feedback_event: "system",
209
+ outcome_event: "system",
210
+ aggregate_rollup: "system",
239
211
  };
240
212
  export const MEMORY_SUBTYPE_DEFAULT_LAYER = {
241
213
  codebase_map: "surface",
@@ -244,8 +216,18 @@ export const MEMORY_SUBTYPE_DEFAULT_LAYER = {
244
216
  access_pattern: "surface",
245
217
  operational_procedure: "surface",
246
218
  domain_rule: "domain",
219
+ product_decision: "domain",
220
+ product_requirement: "domain",
221
+ user_workflow: "domain",
222
+ roadmap_item: "workstream",
223
+ success_metric: "domain",
224
+ market_insight: "domain",
247
225
  troubleshooting_gotcha: "surface",
248
226
  preference: "domain",
227
+ person_profile: "domain",
228
+ ownership_note: "domain",
229
+ working_agreement: "domain",
230
+ activity_event: "episode",
249
231
  session_index: "episode",
250
232
  episode: "episode",
251
233
  workstream: "workstream",
@@ -262,11 +244,8 @@ export const SOURCES = {
262
244
  agent: {
263
245
  description: "Captured from an interactive agent tool call.",
264
246
  },
265
- daemon: {
266
- description: "Captured automatically by the local Bikky daemon.",
267
- },
268
247
  system: {
269
- description: "Generated by Bikky maintenance, migration, or lifecycle code.",
248
+ description: "Generated automatically by Bikky itself, including daemon capture, summaries, maintenance, migrations, and lifecycle code.",
270
249
  },
271
250
  user: {
272
251
  description: "Created or corrected directly by a user.",
@@ -286,38 +265,23 @@ export const THRESHOLD_RELATED = 0.8;
286
265
  // ---------------------------------------------------------------------------
287
266
  export const DECAY_HALF_LIFE = {
288
267
  // Software-engineering defaults.
289
- "codebase.software_engineering": 120,
290
- "infrastructure.software_engineering": 60,
291
- "operations.software_engineering": 60,
292
- "decisions.software_engineering": 180,
293
- "product_domain.software_engineering": 120,
294
- "projects.software_engineering": 45,
295
- "people.software_engineering": 120,
296
- "preferences.software_engineering": 180,
297
- "observations.software_engineering": 45,
268
+ "engineering.software_engineering": 120,
269
+ "product.software_engineering": 120,
270
+ "human.software_engineering": 180,
271
+ "system.software_engineering": 45,
298
272
  // Other domain profiles.
299
- "product_domain.product_strategy": 120,
300
- "decisions.product_strategy": 180,
301
- "projects.product_strategy": 60,
302
- "people.product_strategy": 120,
303
- "preferences.product_strategy": 180,
304
- "observations.product_strategy": 60,
305
- "operations.business_operations": 120,
306
- "decisions.business_operations": 180,
307
- "projects.business_operations": 60,
308
- "people.business_operations": 180,
309
- "preferences.business_operations": 180,
310
- "observations.business_operations": 90,
311
- "product_domain.research": 120,
312
- "decisions.research": 180,
313
- "projects.research": 60,
314
- "preferences.research": 180,
315
- "observations.research": 90,
316
- "operations.personal_productivity": 90,
317
- "projects.personal_productivity": 45,
318
- "people.personal_productivity": 180,
319
- "preferences.personal_productivity": 180,
320
- "observations.personal_productivity": 45,
273
+ "product.product_strategy": 180,
274
+ "human.product_strategy": 180,
275
+ "system.product_strategy": 60,
276
+ "product.business_operations": 120,
277
+ "human.business_operations": 180,
278
+ "system.business_operations": 90,
279
+ "product.research": 120,
280
+ "engineering.research": 120,
281
+ "system.research": 90,
282
+ "human.personal_productivity": 180,
283
+ "product.personal_productivity": 90,
284
+ "system.personal_productivity": 45,
321
285
  };
322
286
  // ---------------------------------------------------------------------------
323
287
  // Qdrant payload indexes
@@ -373,18 +337,45 @@ export function normalizeCategory(category) {
373
337
  if (normalized in CATEGORIES) {
374
338
  return normalized;
375
339
  }
376
- if (normalized.includes("infra"))
377
- return "infrastructure";
378
- if (normalized.includes("decision"))
379
- return "decisions";
380
- if (normalized.includes("operation") || normalized.includes("runbook"))
381
- return "operations";
382
- if (normalized.includes("owner") || normalized.includes("people"))
383
- return "people";
384
- if (normalized.includes("product") || normalized.includes("domain"))
385
- return "product_domain";
386
- if (normalized.includes("repo") || normalized.includes("code"))
387
- return "codebase";
340
+ if (normalized.includes("product") ||
341
+ normalized.includes("domain") ||
342
+ normalized.includes("roadmap") ||
343
+ normalized.includes("requirement") ||
344
+ normalized.includes("workflow") ||
345
+ normalized.includes("metric") ||
346
+ normalized.includes("market") ||
347
+ normalized.includes("customer") ||
348
+ normalized === "projects")
349
+ return "product";
350
+ if (normalized.includes("human") ||
351
+ normalized.includes("people") ||
352
+ normalized.includes("person") ||
353
+ normalized.includes("owner") ||
354
+ normalized.includes("team") ||
355
+ normalized.includes("preference") ||
356
+ normalized.includes("agreement") ||
357
+ normalized.includes("activity") ||
358
+ normalized.includes("actor"))
359
+ return "human";
360
+ if (normalized.includes("system") ||
361
+ normalized.includes("session") ||
362
+ normalized.includes("episode") ||
363
+ normalized.includes("workstream") ||
364
+ normalized.includes("telemetry") ||
365
+ normalized.includes("feedback") ||
366
+ normalized.includes("outcome") ||
367
+ normalized.includes("rollup"))
368
+ return "system";
369
+ if (normalized.includes("infra") ||
370
+ normalized.includes("decision") ||
371
+ normalized.includes("operation") ||
372
+ normalized.includes("runbook") ||
373
+ normalized.includes("repo") ||
374
+ normalized.includes("code") ||
375
+ normalized.includes("architecture") ||
376
+ normalized.includes("troubleshoot") ||
377
+ normalized.includes("observation"))
378
+ return "engineering";
388
379
  return DEFAULT_CATEGORY;
389
380
  }
390
381
  export function normalizeDomain(domain) {
@@ -411,6 +402,12 @@ export function normalizeKind(kind) {
411
402
  }
412
403
  export function normalizeSource(source) {
413
404
  const normalized = normalizeToken(source);
405
+ if (normalized === "daemon")
406
+ return "system";
407
+ if (normalized === "ui" || normalized === "portal")
408
+ return "user";
409
+ if (normalized === "cortex")
410
+ return "agent";
414
411
  if (normalized in SOURCES) {
415
412
  return normalized;
416
413
  }
@@ -495,19 +492,43 @@ export function getDecayHalfLife(input) {
495
492
  if (kind === "relation" || kind === "telemetry")
496
493
  return null;
497
494
  const rawCategory = normalizeToken(input.category);
498
- const rawDomain = normalizeToken(input.domain);
499
495
  const categoryWasProvided = rawCategory.length > 0;
500
496
  const categoryIsKnown = rawCategory in CATEGORIES ||
497
+ rawCategory.includes("product") ||
498
+ rawCategory.includes("domain") ||
499
+ rawCategory.includes("roadmap") ||
500
+ rawCategory.includes("requirement") ||
501
+ rawCategory.includes("workflow") ||
502
+ rawCategory.includes("metric") ||
503
+ rawCategory.includes("market") ||
504
+ rawCategory.includes("customer") ||
505
+ rawCategory === "projects" ||
506
+ rawCategory.includes("human") ||
507
+ rawCategory.includes("people") ||
508
+ rawCategory.includes("person") ||
509
+ rawCategory.includes("owner") ||
510
+ rawCategory.includes("team") ||
511
+ rawCategory.includes("preference") ||
512
+ rawCategory.includes("agreement") ||
513
+ rawCategory.includes("activity") ||
514
+ rawCategory.includes("actor") ||
515
+ rawCategory.includes("system") ||
516
+ rawCategory.includes("session") ||
517
+ rawCategory.includes("episode") ||
518
+ rawCategory.includes("workstream") ||
519
+ rawCategory.includes("telemetry") ||
520
+ rawCategory.includes("feedback") ||
521
+ rawCategory.includes("outcome") ||
522
+ rawCategory.includes("rollup") ||
501
523
  rawCategory.includes("infra") ||
502
524
  rawCategory.includes("decision") ||
503
525
  rawCategory.includes("operation") ||
504
526
  rawCategory.includes("runbook") ||
505
- rawCategory.includes("owner") ||
506
- rawCategory.includes("people") ||
507
- rawCategory.includes("product") ||
508
- rawCategory.includes("domain") ||
509
527
  rawCategory.includes("repo") ||
510
- rawCategory.includes("code");
528
+ rawCategory.includes("code") ||
529
+ rawCategory.includes("architecture") ||
530
+ rawCategory.includes("troubleshoot") ||
531
+ rawCategory.includes("observation");
511
532
  if (categoryWasProvided && !categoryIsKnown) {
512
533
  return DECAY_DEFAULT_HALF_LIFE;
513
534
  }
@@ -1 +1 @@
1
- {"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../../src/mcp/taxonomy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"taxonomy.js","sourceRoot":"","sources":["../../src/mcp/taxonomy.ts"],"names":[],"mappings":"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"}
@@ -8,15 +8,10 @@ describe("ontology values", () => {
8
8
  it("defines canonical software-engineering categories", () => {
9
9
  const values = canonicalCategoryValues();
10
10
  assert.deepStrictEqual(values, [
11
- "codebase",
12
- "infrastructure",
13
- "operations",
14
- "decisions",
15
- "product_domain",
16
- "projects",
17
- "people",
18
- "preferences",
19
- "observations",
11
+ "engineering",
12
+ "product",
13
+ "human",
14
+ "system",
20
15
  ]);
21
16
  });
22
17
  it("exposes only canonical memory ontology categories", () => {
@@ -39,7 +34,7 @@ describe("ontology values", () => {
39
34
  });
40
35
  it("keeps stable kinds, sources, and layers", () => {
41
36
  assert.deepStrictEqual(kindValues(), ["fact", "summary", "distilled", "relation", "telemetry"]);
42
- assert.deepStrictEqual(sourceValues(), ["agent", "daemon", "system", "user", "docs"]);
37
+ assert.deepStrictEqual(sourceValues(), ["agent", "system", "user", "docs"]);
43
38
  assert.deepStrictEqual(layerValues(), [
44
39
  "workspace",
45
40
  "domain",
@@ -89,6 +84,16 @@ describe("memory subtypes", () => {
89
84
  assert.deepStrictEqual(MEMORY_SUBTYPES.distilled, ["convention"]);
90
85
  assert.deepStrictEqual(MEMORY_SUBTYPES.relation, []);
91
86
  assert.ok(MEMORY_SUBTYPES.telemetry.includes("recall_event"));
87
+ assert.ok(MEMORY_SUBTYPES.fact.includes("product_decision"));
88
+ assert.ok(MEMORY_SUBTYPES.fact.includes("product_requirement"));
89
+ assert.ok(MEMORY_SUBTYPES.fact.includes("user_workflow"));
90
+ assert.ok(MEMORY_SUBTYPES.fact.includes("roadmap_item"));
91
+ assert.ok(MEMORY_SUBTYPES.fact.includes("success_metric"));
92
+ assert.ok(MEMORY_SUBTYPES.fact.includes("market_insight"));
93
+ assert.ok(MEMORY_SUBTYPES.fact.includes("person_profile"));
94
+ assert.ok(MEMORY_SUBTYPES.fact.includes("ownership_note"));
95
+ assert.ok(MEMORY_SUBTYPES.fact.includes("working_agreement"));
96
+ assert.ok(MEMORY_SUBTYPES.fact.includes("activity_event"));
92
97
  // Removed in taxonomy-slim cleanup:
93
98
  assert.ok(!MEMORY_SUBTYPES.fact.includes("deployment_procedure"));
94
99
  assert.ok(!MEMORY_SUBTYPES.fact.includes("ownership"));
@@ -104,8 +109,10 @@ describe("memory subtypes", () => {
104
109
  it("provides deterministic subtype defaults and category/layer hints", () => {
105
110
  assert.strictEqual(defaultMemorySubtypeForKind("fact"), "codebase_map");
106
111
  assert.strictEqual(defaultMemorySubtypeForKind("relation"), null);
107
- assert.strictEqual(categoryForMemorySubtype("architecture_decision"), "decisions");
108
- assert.strictEqual(categoryForMemorySubtype("preference"), "preferences");
112
+ assert.strictEqual(categoryForMemorySubtype("architecture_decision"), "engineering");
113
+ assert.strictEqual(categoryForMemorySubtype("product_decision"), "product");
114
+ assert.strictEqual(categoryForMemorySubtype("preference"), "human");
115
+ assert.strictEqual(categoryForMemorySubtype("session_index"), "system");
109
116
  assert.strictEqual(layerForMemorySubtype("workstream"), "workstream");
110
117
  assert.strictEqual(layerForMemorySubtype("episode"), "episode");
111
118
  assert.ok(memorySubtypeValues().includes("convention"));
@@ -115,10 +122,14 @@ describe("memory subtypes", () => {
115
122
  });
116
123
  describe("normalization", () => {
117
124
  it("normalizes canonical categories and useful descriptive variants", () => {
118
- assert.strictEqual(normalizeCategory("Infrastructure"), "infrastructure");
119
- assert.strictEqual(normalizeCategory("infra-stuff"), "infrastructure");
120
- assert.strictEqual(normalizeCategory("owner"), "people");
121
- assert.strictEqual(normalizeCategory("something_random"), "observations");
125
+ assert.strictEqual(normalizeCategory("Engineering"), "engineering");
126
+ assert.strictEqual(normalizeCategory("Infrastructure"), "engineering");
127
+ assert.strictEqual(normalizeCategory("infra-stuff"), "engineering");
128
+ assert.strictEqual(normalizeCategory("product decision"), "product");
129
+ assert.strictEqual(normalizeCategory("owner"), "human");
130
+ assert.strictEqual(normalizeCategory("preferences"), "human");
131
+ assert.strictEqual(normalizeCategory("workstream"), "system");
132
+ assert.strictEqual(normalizeCategory("something_random"), "engineering");
122
133
  });
123
134
  it("normalizes canonical domain profiles only", () => {
124
135
  assert.strictEqual(normalizeDomain("software-engineering"), "software_engineering");
@@ -133,7 +144,10 @@ describe("normalization", () => {
133
144
  assert.strictEqual(normalizeKind("distillation"), "distilled");
134
145
  assert.strictEqual(normalizeKind("edge"), "relation");
135
146
  assert.strictEqual(normalizeKind("feedback event"), "telemetry");
136
- assert.strictEqual(normalizeSource("daemon"), "daemon");
147
+ assert.strictEqual(normalizeSource("daemon"), "system");
148
+ assert.strictEqual(normalizeSource("ui"), "user");
149
+ assert.strictEqual(normalizeSource("portal"), "user");
150
+ assert.strictEqual(normalizeSource("cortex"), "agent");
137
151
  assert.strictEqual(normalizeSource("user"), "user");
138
152
  assert.strictEqual(normalizeSource("unknown"), "agent");
139
153
  assert.strictEqual(normalizeLayer("memory-object"), "memory_object");
@@ -142,13 +156,17 @@ describe("normalization", () => {
142
156
  });
143
157
  describe("decay policy", () => {
144
158
  it("uses category + domain profile decay values", () => {
145
- assert.strictEqual(getDecayHalfLife({ category: "codebase", domain: "software_engineering" }), 120);
146
- assert.strictEqual(getDecayHalfLife({ category: "projects", domain: "software_engineering" }), 45);
147
- assert.strictEqual(getDecayHalfLife({ category: "observations", domain: "research" }), 90);
148
- });
149
- it("does not special-case old category/domain inputs", () => {
150
- assert.strictEqual(getDecayHalfLife({ category: "observation", domain: "work" }), DECAY_DEFAULT_HALF_LIFE);
151
- assert.strictEqual(getDecayHalfLife({ category: "team", domain: "personal" }), DECAY_DEFAULT_HALF_LIFE);
159
+ assert.strictEqual(getDecayHalfLife({ category: "engineering", domain: "software_engineering" }), 120);
160
+ assert.strictEqual(getDecayHalfLife({ category: "system", domain: "software_engineering" }), 45);
161
+ assert.strictEqual(getDecayHalfLife({ category: "product", domain: "research" }), 120);
162
+ });
163
+ it("maps legacy category aliases into the four-category ontology", () => {
164
+ assert.strictEqual(normalizeCategory("codebase"), "engineering");
165
+ assert.strictEqual(normalizeCategory("product_domain"), "product");
166
+ assert.strictEqual(normalizeCategory("people"), "human");
167
+ assert.strictEqual(normalizeCategory("observations"), "engineering");
168
+ assert.strictEqual(getDecayHalfLife({ category: "observation", domain: "work" }), 120);
169
+ assert.strictEqual(getDecayHalfLife({ category: "team", domain: "personal" }), 180);
152
170
  });
153
171
  it("does not decay relation or telemetry objects", () => {
154
172
  assert.strictEqual(getDecayHalfLife({ kind: "relation" }), null);
@@ -168,6 +186,7 @@ describe("QDRANT_INDEXES", () => {
168
186
  assert.strictEqual(indexes.get("content_hash"), "keyword");
169
187
  assert.strictEqual(indexes.get("entities"), "keyword");
170
188
  assert.strictEqual(indexes.get("workspace_id"), "keyword");
189
+ assert.strictEqual(indexes.get("actor_id"), "keyword");
171
190
  assert.strictEqual(indexes.get("episode_id"), "keyword");
172
191
  assert.strictEqual(indexes.get("workstream_key"), "keyword");
173
192
  assert.strictEqual(indexes.get("task_key"), "keyword");