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
@@ -7,7 +7,7 @@ test("scoreSubtype: operational_procedure for deploy/rollout content", () => {
7
7
  assert.ok(r.score >= 1.0);
8
8
  });
9
9
  test("scoreSubtype: troubleshooting_gotcha for failure-mode content", () => {
10
- const r = scoreSubtype("Watch out: the WA cron silently fails when the suspended flag is set.");
10
+ const r = scoreSubtype("Watch out: the import cron silently fails when the suspended flag is set.");
11
11
  assert.equal(r.subtype, "troubleshooting_gotcha");
12
12
  assert.ok(r.score >= 1.0);
13
13
  });
@@ -28,9 +28,29 @@ test("scoreSubtype: access_pattern for auth content", () => {
28
28
  assert.equal(r.subtype, "access_pattern");
29
29
  });
30
30
  test("scoreSubtype: domain_rule for business-rule content", () => {
31
- const r = scoreSubtype("A scam session must reach an SLA of 30s before alerting; otherwise it is ineligible.");
31
+ const r = scoreSubtype("A workspace is ineligible for export unless retention is enabled.");
32
32
  assert.equal(r.subtype, "domain_rule");
33
33
  });
34
+ test("scoreSubtype: product_decision for UX/product choice content", () => {
35
+ const r = scoreSubtype("The UX decision is to show category cards because sub-tabs confused users.");
36
+ assert.equal(r.subtype, "product_decision");
37
+ });
38
+ test("scoreSubtype: product_requirement for explicit product behavior", () => {
39
+ const r = scoreSubtype("The memory page must show subtype chips for every selected category.");
40
+ assert.equal(r.subtype, "product_requirement");
41
+ });
42
+ test("scoreSubtype: success_metric for KPI/target content", () => {
43
+ const r = scoreSubtype("Activation should be measured by the weekly adoption target for successful recall reuse.");
44
+ assert.equal(r.subtype, "success_metric");
45
+ });
46
+ test("scoreSubtype: ownership_note for owner/approver content", () => {
47
+ const r = scoreSubtype("Saber is the approver responsible for ontology UX changes.");
48
+ assert.equal(r.subtype, "ownership_note");
49
+ });
50
+ test("scoreSubtype: activity_event for durable actor-action content", () => {
51
+ const r = scoreSubtype("Saber merged PR #85 after approving the subtype UX changes.");
52
+ assert.equal(r.subtype, "activity_event");
53
+ });
34
54
  test("scoreSubtype: preference for personal-style content", () => {
35
55
  const r = scoreSubtype("I prefer kebab-case branch names by convention; that is my team's style.");
36
56
  assert.equal(r.subtype, "preference");
@@ -136,47 +156,47 @@ test("verifyGrounding: downgrades to ambiguous when LLM is mid-confident", () =>
136
156
  // Has typed token (deploy.sh) so not ungrounded; self_contained=false → ambiguous.
137
157
  assert.equal(r.verdict, "ambiguous");
138
158
  });
139
- test("verifyVolatilityCoherence: transient gets 30d expiry and observations category", () => {
159
+ test("verifyVolatilityCoherence: transient gets 30d expiry without forcing a catch-all category", () => {
140
160
  const r = verifyVolatilityCoherence({
141
161
  volatility: "transient",
142
162
  as_of: "2026-04-28",
143
- category: "infrastructure",
163
+ category: "engineering",
144
164
  });
145
165
  assert.equal(r.effective, "transient");
146
- assert.equal(r.forcedCategory, "observations");
166
+ assert.equal(r.forcedCategory, null);
147
167
  assert.equal(r.halfLifeMultiplier, 0.25);
148
168
  assert.ok(r.expiresAt);
149
169
  // 30 days after 2026-04-28 is 2026-05-28
150
170
  assert.ok(r.expiresAt.startsWith("2026-05-28"));
151
171
  });
152
- test("verifyVolatilityCoherence: ephemeral gets 7d expiry and observations category", () => {
172
+ test("verifyVolatilityCoherence: ephemeral gets 7d expiry without forcing a catch-all category", () => {
153
173
  const r = verifyVolatilityCoherence({
154
174
  volatility: "ephemeral",
155
175
  as_of: "2026-04-28",
156
- category: "operations",
176
+ category: "engineering",
157
177
  });
158
178
  assert.equal(r.effective, "ephemeral");
159
- assert.equal(r.forcedCategory, "observations");
179
+ assert.equal(r.forcedCategory, null);
160
180
  assert.equal(r.halfLifeMultiplier, 0.1);
161
181
  assert.ok(r.expiresAt.startsWith("2026-05-05"));
162
182
  });
163
183
  test("verifyVolatilityCoherence: stable / evolving leave category alone with no expiry", () => {
164
- const stable = verifyVolatilityCoherence({ volatility: "stable", category: "codebase" });
184
+ const stable = verifyVolatilityCoherence({ volatility: "stable", category: "engineering" });
165
185
  assert.equal(stable.expiresAt, null);
166
186
  assert.equal(stable.forcedCategory, null);
167
187
  assert.equal(stable.halfLifeMultiplier, 1.0);
168
- const evolving = verifyVolatilityCoherence({ volatility: "evolving", category: "infrastructure" });
188
+ const evolving = verifyVolatilityCoherence({ volatility: "evolving", category: "engineering" });
169
189
  assert.equal(evolving.expiresAt, null);
170
190
  assert.equal(evolving.forcedCategory, null);
171
191
  });
172
192
  test("verifyVolatilityCoherence: synthesises as_of when missing for transient", () => {
173
- const r = verifyVolatilityCoherence({ volatility: "transient", category: "observations" });
193
+ const r = verifyVolatilityCoherence({ volatility: "transient", category: "engineering" });
174
194
  assert.equal(r.effective, "transient");
175
195
  assert.ok(r.expiresAt);
176
196
  assert.ok(r.notes.some((n) => n.includes("as_of synthesised")));
177
197
  });
178
198
  test("verifyVolatilityCoherence: missing volatility defaults to evolving (not stable)", () => {
179
- const r = verifyVolatilityCoherence({ category: "codebase" });
199
+ const r = verifyVolatilityCoherence({ category: "engineering" });
180
200
  assert.equal(r.effective, "evolving");
181
201
  assert.ok(r.notes.some((n) => n.includes("defaulted to 'evolving'")));
182
202
  });
@@ -1 +1 @@
1
- {"version":3,"file":"extraction-rules.test.js","sourceRoot":"","sources":["../../src/daemon/extraction-rules.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErE,IAAI,CAAC,gEAAgE,EAAE,GAAG,EAAE;IAC1E,MAAM,CAAC,GAAG,YAAY,CAAC,oEAAoE,CAAC,CAAC;IAC7F,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;IACjD,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;IACzE,MAAM,CAAC,GAAG,YAAY,CAAC,uEAAuE,CAAC,CAAC;IAChG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,wBAAwB,CAAC,CAAC;IAClD,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE;IAC5D,MAAM,CAAC,GAAG,YAAY,CAAC,sDAAsD,CAAC,CAAC;IAC/E,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;AAC1C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;IACpE,MAAM,CAAC,GAAG,YAAY,CAAC,kFAAkF,CAAC,CAAC;IAC3G,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,CAAC,GAAG,YAAY,CAAC,2EAA2E,CAAC,CAAC;IACpG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,uBAAuB,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACzD,MAAM,CAAC,GAAG,YAAY,CAAC,yFAAyF,CAAC,CAAC;IAClH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,CAAC,GAAG,YAAY,CAAC,sFAAsF,CAAC,CAAC;IAC/G,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,qDAAqD,EAAE,GAAG,EAAE;IAC/D,MAAM,CAAC,GAAG,YAAY,CAAC,0EAA0E,CAAC,CAAC;IACnG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6DAA6D,EAAE,GAAG,EAAE;IACvE,MAAM,CAAC,GAAG,YAAY,CAAC,wDAAwD,CAAC,CAAC;IACjF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;IAC7D,MAAM,CAAC,GAAG,cAAc,CAAC,4DAA4D,EAAE,wBAAwB,CAAC,CAAC;IACjH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sDAAsD,EAAE,GAAG,EAAE;IAChE,MAAM,CAAC,GAAG,cAAc,CAAC,kCAAkC,EAAE,YAAY,CAAC,CAAC;IAC3E,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,uFAAuF,EAAE,GAAG,EAAE;IACjG,MAAM,CAAC,GAAG,cAAc,CACtB,4GAA4G,EAC5G,uBAAuB,CACxB,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,EAAE,wBAAwB,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,sEAAsE,EAAE,GAAG,EAAE;IAChF,uEAAuE;IACvE,MAAM,CAAC,GAAG,cAAc,CACtB,4EAA4E,EAC5E,uBAAuB,CACxB,CAAC;IACF,0EAA0E;IAC1E,6EAA6E;IAC7E,IAAI,CAAC,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAC7B,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,GAAG,EAAE,UAAU,CAAC,CAAC,MAAM,+BAA+B,CAAC,CAAC;IAChF,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAE/E,OAAO,EACL,aAAa,EACb,eAAe,EACf,eAAe,EACf,yBAAyB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;IAC7D,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,sDAAsD,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;IACvC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,wCAAwC,CAAC,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,4CAA4C,EAAE,GAAG,EAAE;IACtD,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,qCAAqC,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;IACzD,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,kDAAkD,CAAC,CAAC,CAAC;AAC/E,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,yDAAyD,CAAC,CAAC,CAAC;AACtF,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;IAC7C,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,mDAAmD,CAAC,EAAE,KAAK,CAAC,CAAC;AAC1F,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;IACxD,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,wDAAwD,EAAE,GAAG,EAAE;IAClE,MAAM,CAAC,EAAE,CAAC,eAAe,CAAC,iCAAiC,EAAE,EAAE,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iEAAiE,EAAE,GAAG,EAAE;IAC3E,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,cAAc,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,8DAA8D,EAAE,GAAG,EAAE;IACxE,gFAAgF;IAChF,wDAAwD;IACxD,MAAM,CAAC,GAAG,eAAe,CAAC;QACxB,OAAO,EAAE,4DAA4D;QACrE,OAAO,EAAE,cAAc;QACvB,mBAAmB,EAAE,GAAG;QACxB,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;KAC5B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gEAAgE,EAAE,GAAG,EAAE;IAC1E,MAAM,CAAC,GAAG,eAAe,CAAC;QACxB,OAAO,EAAE,qEAAqE;QAC9E,OAAO,EAAE,+BAA+B;QACxC,mBAAmB,EAAE,IAAI;QACzB,cAAc,EAAE,IAAI;QACpB,QAAQ,EAAE,CAAC,iBAAiB,CAAC;KAC9B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kEAAkE,EAAE,GAAG,EAAE;IAC5E,wDAAwD;IACxD,MAAM,CAAC,GAAG,eAAe,CAAC;QACxB,OAAO,EAAE,oCAAoC;QAC7C,OAAO,EAAE,QAAQ;QACjB,mBAAmB,EAAE,GAAG;QACxB,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE,CAAC,KAAK,CAAC;KAClB,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,oEAAoE,EAAE,GAAG,EAAE;IAC9E,sEAAsE;IACtE,MAAM,CAAC,GAAG,eAAe,CAAC;QACxB,OAAO,EAAE,0CAA0C;QACnD,OAAO,EAAE,WAAW;QACpB,mBAAmB,EAAE,GAAG;QACxB,cAAc,EAAE,KAAK;QACrB,QAAQ,EAAE,EAAE;KACb,CAAC,CAAC;IACH,mFAAmF;IACnF,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;AACvC,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,gFAAgF,EAAE,GAAG,EAAE;IAC1F,MAAM,CAAC,GAAG,yBAAyB,CAAC;QAClC,UAAU,EAAE,WAAW;QACvB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,gBAAgB;KAC3B,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvB,yCAAyC;IACzC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,+EAA+E,EAAE,GAAG,EAAE;IACzF,MAAM,CAAC,GAAG,yBAAyB,CAAC;QAClC,UAAU,EAAE,WAAW;QACvB,KAAK,EAAE,YAAY;QACnB,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IACxC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAU,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,kFAAkF,EAAE,GAAG,EAAE;IAC5F,MAAM,MAAM,GAAG,yBAAyB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IACzF,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;IAE7C,MAAM,QAAQ,GAAG,yBAAyB,CAAC,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IACnG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,yEAAyE,EAAE,GAAG,EAAE;IACnF,MAAM,CAAC,GAAG,yBAAyB,CAAC,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC3F,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IACvC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,IAAI,CAAC,iFAAiF,EAAE,GAAG,EAAE;IAC3F,MAAM,CAAC,GAAG,yBAAyB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACtC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"extraction-rules.test.js","sourceRoot":"","sources":["../../src/daemon/extraction-rules.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Events-based memory extraction — reads Copilot CLI events.jsonl transcripts,
3
- * extracts facts via LLM, and stores them in Qdrant with source: "daemon".
3
+ * extracts facts via LLM, and stores them in Qdrant with source: "system".
4
4
  *
5
5
  * Uses a JSON file for extraction state (high-water byte offsets) instead of SQLite.
6
6
  * Active session detection scans ~/.copilot/session-state/ for lock files.
@@ -8,7 +8,7 @@
8
8
  import type { BikkyConfig } from "../config.js";
9
9
  import type { LogFn } from "./qdrant.js";
10
10
  export declare const setLogger: (fn: LogFn) => void;
11
- export declare const DEFAULT_EXTRACTION_PROMPT = "You are Bikky's memory extraction agent for open-source coding agents. Extract durable, reusable facts that help a future agent continue work without rereading the whole transcript.\n\n## Core rule\nExtract fewer, sharper memories. A candidate fact must be independently useful after the session is gone.\n\n## Quality gate\nEvery fact must pass at least one gate:\n1. GREPPABLE: names a file path, package, symbol, config key, CLI flag, issue/PR, service, or API a future agent can search for.\n2. RUNNABLE: contains a command, URL, setting, port, or procedure that can be executed or checked.\n3. NAVIGABLE: tells a future agent where to look and what that location means.\n4. DECISIVE: records a durable decision, rationale, constraint, convention, or preference.\n5. DIAGNOSTIC: captures a repeatable failure mode, root cause, or troubleshooting gotcha.\n\n## Ontology\n- domain is the activity profile. For coding-agent captures use \"software_engineering\".\n- category is subject matter: codebase | infrastructure | operations | decisions | product_domain | projects | people | preferences | observations.\n- kind is object shape. For this prompt, emit only kind=\"fact\".\n- memory_subtype must be one of:\n codebase_map | architecture_decision | infra_topology | access_pattern | operational_procedure | domain_rule | troubleshooting_gotcha | preference.\n\n## Examples\nGOOD:\n- \"The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run through npm run test:e2e with mocked /api/memory/* responses.\"\n- \"Use workspace_id as the tenancy/access boundary; domain is reserved for activity profile such as software_engineering.\"\n- \"If Qdrant order_by fails with a missing index error, create a datetime payload index for the sorted field before retrying.\"\n- \"Prefer Node's built-in test runner for root tests; do not add Jest just for daemon unit tests.\"\n\nBAD:\n- \"The tests were fixed.\" (status only)\n- \"We reviewed the code.\" (session narration)\n- \"The deployment succeeded.\" (transient and not reusable)\n- \"The agent used npm.\" (tool narration)\n- \"There was an error.\" (no root cause or reusable detail)\n\n## Output format\nReturn strict JSON:\n{\"facts\":[\n {\n \"content\":\"One self-contained durable fact.\",\n \"category\":\"codebase\",\n \"memory_subtype\":\"codebase_map\",\n \"entities\":[\"repo-or-tool\",\"specific-module\"],\n \"confidence\":0.9,\n \"importance\":0.7,\n \"quality_score\":0.8,\n \"confidence_reason\":\"Explicitly stated in the transcript.\",\n \"repo\":\"optional/repo-or-package\",\n \"branch\":\"optional-branch\",\n \"task_key\":\"optional issue/PR/task key\",\n \"workstream_key\":\"optional stable workstream key\"\n }\n]}\n\nScoring:\n- confidence: 0.9 explicit, 0.7 strong inference, 0.55 weak but useful inference.\n- importance: 0.8+ for decisions, infra, procedures, access, recurring failures; 0.6+ for useful codebase maps/preferences.\n- quality_score: 0.8+ passes multiple gates, 0.6+ passes one strong gate, below 0.6 should usually be omitted.\n\nIf nothing passes the quality gate, return {\"facts\":[]}.";
11
+ export declare const DEFAULT_EXTRACTION_PROMPT = "You are Bikky's memory extraction agent for open-source coding agents. Extract durable, reusable facts that help a future agent continue work without rereading the whole transcript.\n\n## Core rule\nExtract fewer, sharper memories. A candidate fact must be independently useful after the session is gone.\n\n## Quality gate\nEvery fact must pass at least one gate:\n1. GREPPABLE: names a file path, package, symbol, config key, CLI flag, issue/PR, service, or API a future agent can search for.\n2. RUNNABLE: contains a command, URL, setting, port, or procedure that can be executed or checked.\n3. NAVIGABLE: tells a future agent where to look and what that location means.\n4. DECISIVE: records a durable decision, rationale, constraint, convention, or preference.\n5. DIAGNOSTIC: captures a repeatable failure mode, root cause, or troubleshooting gotcha.\n\n## Ontology\n- domain is the activity profile. For coding-agent captures use \"software_engineering\".\n- category is subject matter: engineering | product | human | system.\n- kind is object shape. For this prompt, emit only kind=\"fact\".\n- memory_subtype must be one of:\n codebase_map | architecture_decision | infra_topology | access_pattern | operational_procedure | domain_rule | product_decision | product_requirement | user_workflow | roadmap_item | success_metric | market_insight | troubleshooting_gotcha | preference | person_profile | ownership_note | working_agreement | activity_event.\n\n## Examples\nGOOD:\n- \"The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run through npm run test:e2e with mocked /api/memory/* responses.\"\n- \"Use workspace_id as the tenancy/access boundary; domain is reserved for activity profile such as software_engineering.\"\n- \"If Qdrant order_by fails with a missing index error, create a datetime payload index for the sorted field before retrying.\"\n- \"The memory page should show categories and concrete subtype chips directly; a sub-tab layer makes the ontology harder to understand.\"\n- \"Saber prefers Node's built-in test runner for root tests; do not add Jest just for daemon unit tests.\"\n- \"Saber merged PR #85 after approving the subtype UX copy changes.\"\n\nBAD:\n- \"The tests were fixed.\" (status only)\n- \"We reviewed the code.\" (session narration)\n- \"The deployment succeeded.\" (transient and not reusable)\n- \"The agent used npm.\" (tool narration)\n- \"There was an error.\" (no root cause or reusable detail)\n\n## Output format\nReturn strict JSON:\n{\"facts\":[\n {\n \"content\":\"One self-contained durable fact.\",\n \"category\":\"engineering\",\n \"memory_subtype\":\"codebase_map\",\n \"action_actor\":\"optional actor for activity_event only\",\n \"action_type\":\"optional action verb for activity_event only\",\n \"action_object\":\"optional durable object for activity_event only\",\n \"action_outcome\":\"optional durable outcome for activity_event only\",\n \"entities\":[\"repo-or-tool\",\"specific-module\"],\n \"confidence\":0.9,\n \"importance\":0.7,\n \"quality_score\":0.8,\n \"confidence_reason\":\"Explicitly stated in the transcript.\",\n \"repo\":\"optional/repo-or-package\",\n \"branch\":\"optional-branch\",\n \"task_key\":\"optional issue/PR/task key\",\n \"workstream_key\":\"optional stable workstream key\"\n }\n]}\n\nScoring:\n- confidence: 0.9 explicit, 0.7 strong inference, 0.55 weak but useful inference.\n- importance: 0.8+ for decisions, infra, procedures, access, recurring failures, product requirements, ownership, and state-changing activity events; 0.6+ for useful codebase maps/preferences.\n- quality_score: 0.8+ passes multiple gates, 0.6+ passes one strong gate, below 0.6 should usually be omitted.\n\nIf nothing passes the quality gate, return {\"facts\":[]}.";
12
12
  export type Volatility = "stable" | "evolving" | "transient" | "ephemeral";
13
13
  export interface ExtractedFact {
14
14
  content: string;
@@ -30,6 +30,10 @@ export interface ExtractedFact {
30
30
  volatility_reason?: string | null;
31
31
  self_contained?: boolean | null;
32
32
  as_of?: string | null;
33
+ action_actor?: string | null;
34
+ action_type?: string | null;
35
+ action_object?: string | null;
36
+ action_outcome?: string | null;
33
37
  }
34
38
  export interface FactQualitySignals {
35
39
  wordCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../../src/daemon/extraction.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIhD,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,aAAa,CAAC;AA6BpD,eAAO,MAAM,SAAS,GAAI,IAAI,KAAK,KAAG,IAErC,CAAC;AAUF,eAAO,MAAM,yBAAyB,okGA0DmB,CAAC;AAgO1D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAW3E,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAqBD,eAAO,MAAM,kBAAkB,GAAI,MAAM,aAAa,KAAG,kBAoCxD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,aAAa,GAAG,IAgErF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,MAAM,aAAa,KAAG,OAkBhE,CAAC;AAuRF;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAU,QAAQ,WAAW,KAAG,OAAO,CAAC,IAAI,CAgC5D,CAAC;AAIF,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,uFAAuF;IACvF,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,sDAAsD;IACtD,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;CACtB"}
1
+ {"version":3,"file":"extraction.d.ts","sourceRoot":"","sources":["../../src/daemon/extraction.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAIhD,OAAO,KAAK,EAAE,KAAK,EAAa,MAAM,aAAa,CAAC;AA+BpD,eAAO,MAAM,SAAS,GAAI,IAAI,KAAK,KAAG,IAErC,CAAC;AAUF,eAAO,MAAM,yBAAyB,6uHAgEmB,CAAC;AAgO1D,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC;AAW3E,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAqBD,eAAO,MAAM,kBAAkB,GAAI,MAAM,aAAa,KAAG,kBAsCxD,CAAC;AAYF,eAAO,MAAM,sBAAsB,GAAI,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAG,aAAa,GAAG,IAqErF,CAAC;AAEF,eAAO,MAAM,0BAA0B,GAAI,MAAM,aAAa,KAAG,OAkBhE,CAAC;AAiSF;;;;GAIG;AACH,eAAO,MAAM,IAAI,GAAU,QAAQ,WAAW,KAAG,OAAO,CAAC,IAAI,CAgC5D,CAAC;AAIF,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB,uFAAuF;IACvF,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,sDAAsD;IACtD,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;CACtB"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * Events-based memory extraction — reads Copilot CLI events.jsonl transcripts,
3
- * extracts facts via LLM, and stores them in Qdrant with source: "daemon".
3
+ * extracts facts via LLM, and stores them in Qdrant with source: "system".
4
4
  *
5
5
  * Uses a JSON file for extraction state (high-water byte offsets) instead of SQLite.
6
6
  * Active session detection scans ~/.copilot/session-state/ for lock files.
@@ -20,6 +20,7 @@ import { CAPTURE_POLICY_VERSION, CAPTURE_TRIGGERS, DEFAULT_CAPTURE_CONTEXT, QUAL
20
20
  import { shouldSummarizeEvents, updateSessionSummary } from "./session-summary.js";
21
21
  import { redactStorageText } from "../privacy/redaction.js";
22
22
  import { compareSubtype, hasTypedToken, verifyGrounding, verifyVolatilityCoherence } from "./extraction-rules.js";
23
+ import { resolveActorIdentity } from "../provenance/actor.js";
23
24
  // ── Module state ─────────────────────────────────────────────────────────────
24
25
  let logFn = (() => { });
25
26
  let lastTickAt = 0;
@@ -47,17 +48,19 @@ Every fact must pass at least one gate:
47
48
 
48
49
  ## Ontology
49
50
  - domain is the activity profile. For coding-agent captures use "software_engineering".
50
- - category is subject matter: codebase | infrastructure | operations | decisions | product_domain | projects | people | preferences | observations.
51
+ - category is subject matter: engineering | product | human | system.
51
52
  - kind is object shape. For this prompt, emit only kind="fact".
52
53
  - memory_subtype must be one of:
53
- codebase_map | architecture_decision | infra_topology | access_pattern | operational_procedure | domain_rule | troubleshooting_gotcha | preference.
54
+ codebase_map | architecture_decision | infra_topology | access_pattern | operational_procedure | domain_rule | product_decision | product_requirement | user_workflow | roadmap_item | success_metric | market_insight | troubleshooting_gotcha | preference | person_profile | ownership_note | working_agreement | activity_event.
54
55
 
55
56
  ## Examples
56
57
  GOOD:
57
58
  - "The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run through npm run test:e2e with mocked /api/memory/* responses."
58
59
  - "Use workspace_id as the tenancy/access boundary; domain is reserved for activity profile such as software_engineering."
59
60
  - "If Qdrant order_by fails with a missing index error, create a datetime payload index for the sorted field before retrying."
60
- - "Prefer Node's built-in test runner for root tests; do not add Jest just for daemon unit tests."
61
+ - "The memory page should show categories and concrete subtype chips directly; a sub-tab layer makes the ontology harder to understand."
62
+ - "Saber prefers Node's built-in test runner for root tests; do not add Jest just for daemon unit tests."
63
+ - "Saber merged PR #85 after approving the subtype UX copy changes."
61
64
 
62
65
  BAD:
63
66
  - "The tests were fixed." (status only)
@@ -71,8 +74,12 @@ Return strict JSON:
71
74
  {"facts":[
72
75
  {
73
76
  "content":"One self-contained durable fact.",
74
- "category":"codebase",
77
+ "category":"engineering",
75
78
  "memory_subtype":"codebase_map",
79
+ "action_actor":"optional actor for activity_event only",
80
+ "action_type":"optional action verb for activity_event only",
81
+ "action_object":"optional durable object for activity_event only",
82
+ "action_outcome":"optional durable outcome for activity_event only",
76
83
  "entities":["repo-or-tool","specific-module"],
77
84
  "confidence":0.9,
78
85
  "importance":0.7,
@@ -87,7 +94,7 @@ Return strict JSON:
87
94
 
88
95
  Scoring:
89
96
  - confidence: 0.9 explicit, 0.7 strong inference, 0.55 weak but useful inference.
90
- - importance: 0.8+ for decisions, infra, procedures, access, recurring failures; 0.6+ for useful codebase maps/preferences.
97
+ - importance: 0.8+ for decisions, infra, procedures, access, recurring failures, product requirements, ownership, and state-changing activity events; 0.6+ for useful codebase maps/preferences.
91
98
  - quality_score: 0.8+ passes multiple gates, 0.6+ passes one strong gate, below 0.6 should usually be omitted.
92
99
 
93
100
  If nothing passes the quality gate, return {"facts":[]}.`;
@@ -296,9 +303,11 @@ export const factQualitySignals = (fact) => {
296
303
  const wordCount = textWordCount(content);
297
304
  const durableAnchor = hasDurableAnchor(content, entities);
298
305
  const statusOnly = isStatusOnlyContent(content, entities);
299
- const isPreferenceLike = subtype === "preference" || subtype === "domain_rule";
300
- const isDecisionLike = subtype === "architecture_decision" || subtype === "troubleshooting_gotcha";
301
- const shortUseful = wordCount >= 7 && wordCount <= 22 && (isPreferenceLike || isDecisionLike) && (entities.length > 0 || durableAnchor);
306
+ const isPreferenceLike = subtype === "preference" || subtype === "domain_rule" || subtype === "working_agreement";
307
+ const isDecisionLike = subtype === "architecture_decision" || subtype === "product_decision" || subtype === "troubleshooting_gotcha";
308
+ const isProductLike = subtype === "product_requirement" || subtype === "user_workflow" || subtype === "roadmap_item" || subtype === "success_metric" || subtype === "market_insight";
309
+ const isHumanLike = subtype === "person_profile" || subtype === "ownership_note" || subtype === "activity_event";
310
+ const shortUseful = wordCount >= 7 && wordCount <= 22 && (isPreferenceLike || isDecisionLike || isProductLike || isHumanLike) && (entities.length > 0 || durableAnchor);
302
311
  let score = 0.25;
303
312
  if (wordCount >= 8)
304
313
  score += 0.1;
@@ -306,7 +315,7 @@ export const factQualitySignals = (fact) => {
306
315
  score += 0.1;
307
316
  if (durableAnchor)
308
317
  score += 0.25;
309
- if (isPreferenceLike || isDecisionLike)
318
+ if (isPreferenceLike || isDecisionLike || isProductLike || isHumanLike)
310
319
  score += 0.15;
311
320
  if ((fact.confidence ?? 0) >= 0.75)
312
321
  score += 0.1;
@@ -333,20 +342,35 @@ export const factQualitySignals = (fact) => {
333
342
  computedQualityScore: Math.round(clamp01(score) * 100) / 100,
334
343
  };
335
344
  };
345
+ const subtypeForRawCategoryHint = (rawCategory, category) => {
346
+ const hint = (rawCategory || "").trim().toLowerCase();
347
+ if (hint.includes("infra"))
348
+ return "infra_topology";
349
+ if (hint.includes("operation") || hint.includes("runbook"))
350
+ return "operational_procedure";
351
+ if (hint.includes("decision"))
352
+ return "architecture_decision";
353
+ if (hint.includes("people") || hint.includes("preference") || hint.includes("owner"))
354
+ return "preference";
355
+ if (hint.includes("product") || hint.includes("domain"))
356
+ return "domain_rule";
357
+ return subtypeForCategory(normalizeCategory(category));
358
+ };
336
359
  export const normalizeExtractedFact = (raw) => {
337
360
  if (!raw.content || typeof raw.content !== "string")
338
361
  return null;
339
- const category = normalizeCategory(typeof raw.category === "string" ? raw.category : "observations");
362
+ const rawCategory = typeof raw.category === "string" ? raw.category : null;
363
+ const category = normalizeCategory(rawCategory ?? "engineering");
340
364
  const requestedSubtype = typeof raw.memory_subtype === "string" ? raw.memory_subtype : null;
341
365
  let memorySubtype = requestedSubtype ? normalizeMemorySubtype("fact", requestedSubtype) : null;
342
366
  if (!memorySubtype) {
343
- memorySubtype = subtypeForCategory(category);
367
+ memorySubtype = subtypeForRawCategoryHint(rawCategory, category);
344
368
  }
345
369
  try {
346
370
  validateMemorySubtype("fact", memorySubtype);
347
371
  }
348
372
  catch {
349
- memorySubtype = subtypeForCategory(category);
373
+ memorySubtype = subtypeForRawCategoryHint(rawCategory, category);
350
374
  }
351
375
  const confidence = typeof raw.confidence === "number" ? clamp01(raw.confidence) : 0.7;
352
376
  const importance = typeof raw.importance === "number" ? clamp01(raw.importance) : 0.5;
@@ -391,6 +415,10 @@ export const normalizeExtractedFact = (raw) => {
391
415
  volatility_reason: volatilityReason,
392
416
  self_contained: selfContained,
393
417
  as_of: asOf,
418
+ action_actor: typeof raw.action_actor === "string" && raw.action_actor.trim().length > 0 ? raw.action_actor.trim() : null,
419
+ action_type: typeof raw.action_type === "string" && raw.action_type.trim().length > 0 ? raw.action_type.trim() : null,
420
+ action_object: typeof raw.action_object === "string" && raw.action_object.trim().length > 0 ? raw.action_object.trim() : null,
421
+ action_outcome: typeof raw.action_outcome === "string" && raw.action_outcome.trim().length > 0 ? raw.action_outcome.trim() : null,
394
422
  };
395
423
  return isHighQualityExtractedFact(fact) ? fact : null;
396
424
  };
@@ -481,6 +509,11 @@ const storeFacts = async (facts, sessionId, config) => {
481
509
  capture_policy_version: CAPTURE_POLICY_VERSION,
482
510
  extracted_by_prompt: `${EXTRACTION_PROMPT_DESCRIPTOR.id}@${EXTRACTION_PROMPT_DESCRIPTOR.version}`,
483
511
  };
512
+ const actor = resolveActorIdentity({ config });
513
+ if (actor.actor_label)
514
+ baseMeta.actor_label = actor.actor_label;
515
+ if (actor.source)
516
+ baseMeta.actor_source = actor.source;
484
517
  let stored = 0;
485
518
  for (const fact of facts) {
486
519
  const redactedContent = redactStorageText(fact.content);
@@ -567,6 +600,14 @@ const storeFacts = async (facts, sessionId, config) => {
567
600
  }
568
601
  if (sanitizedFact.as_of)
569
602
  factMeta.as_of = sanitizedFact.as_of;
603
+ if (sanitizedFact.action_actor)
604
+ factMeta.action_actor = sanitizedFact.action_actor;
605
+ if (sanitizedFact.action_type)
606
+ factMeta.action_type = sanitizedFact.action_type;
607
+ if (sanitizedFact.action_object)
608
+ factMeta.action_object = sanitizedFact.action_object;
609
+ if (sanitizedFact.action_outcome)
610
+ factMeta.action_outcome = sanitizedFact.action_outcome;
570
611
  factMeta.has_typed_token = grounding.hasTypedToken;
571
612
  factMeta.subject_resolves = grounding.subjectResolves;
572
613
  factMeta.half_life_multiplier = volatility.halfLifeMultiplier;
@@ -606,7 +647,7 @@ const storeFacts = async (facts, sessionId, config) => {
606
647
  domain: DEFAULT_CAPTURE_CONTEXT.domain,
607
648
  memory_subtype: effectiveSubtype,
608
649
  entities: sanitizedFact.entities,
609
- source: "daemon",
650
+ source: "system",
610
651
  kind: "fact",
611
652
  confidence: effectiveConfidence,
612
653
  importance: fact.importance,
@@ -625,6 +666,9 @@ const storeFacts = async (facts, sessionId, config) => {
625
666
  workstream_key: fact.workstream_key,
626
667
  metadata: factMeta,
627
668
  };
669
+ if (actor.actor_id) {
670
+ storePayload.actor_id = actor.actor_id;
671
+ }
628
672
  if (dedup.action === "supersede" && dedup.existingId) {
629
673
  const newId = await qdrant.storeFact(storePayload);
630
674
  await qdrant.supersedeFact(dedup.existingId, newId);
@@ -1 +1 @@
1
- {"version":3,"file":"extraction.js","sourceRoot":"","sources":["../../src/daemon/extraction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"extraction.js","sourceRoot":"","sources":["../../src/daemon/extraction.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,9 @@ describe("daemon/extraction prompt", () => {
9
9
  assert.ok(!DEFAULT_EXTRACTION_PROMPT.includes("work or personal"));
10
10
  assert.ok(!DEFAULT_EXTRACTION_PROMPT.includes("Telegram"));
11
11
  assert.ok(!DEFAULT_EXTRACTION_PROMPT.includes("WhatsApp"));
12
+ assert.ok(DEFAULT_EXTRACTION_PROMPT.includes("engineering | product | human | system"));
13
+ assert.ok(DEFAULT_EXTRACTION_PROMPT.includes("product_decision"));
14
+ assert.ok(DEFAULT_EXTRACTION_PROMPT.includes("activity_event"));
12
15
  });
13
16
  });
14
17
  describe("normalizeExtractedFact", () => {
@@ -22,7 +25,7 @@ describe("normalizeExtractedFact", () => {
22
25
  quality_score: 0.8,
23
26
  });
24
27
  assert.ok(fact);
25
- assert.strictEqual(fact.category, "people");
28
+ assert.strictEqual(fact.category, "human");
26
29
  assert.strictEqual(fact.memory_subtype, "preference");
27
30
  assert.deepStrictEqual(fact.entities, ["node", "npm-test"]);
28
31
  });
@@ -63,12 +66,34 @@ describe("normalizeExtractedFact", () => {
63
66
  assert.ok(fact);
64
67
  assert.strictEqual(fact.memory_subtype, "operational_procedure");
65
68
  });
69
+ it("parses durable activity-event metadata", () => {
70
+ const fact = normalizeExtractedFact({
71
+ content: "Saber merged PR #85 after approving the subtype UX changes.",
72
+ category: "human",
73
+ memory_subtype: "activity_event",
74
+ entities: ["saber", "pr-85"],
75
+ confidence: 0.9,
76
+ importance: 0.8,
77
+ quality_score: 0.8,
78
+ action_actor: "Saber",
79
+ action_type: "merged",
80
+ action_object: "PR #85",
81
+ action_outcome: "Subtype UX copy changes were approved and merged.",
82
+ });
83
+ assert.ok(fact);
84
+ assert.strictEqual(fact.category, "human");
85
+ assert.strictEqual(fact.memory_subtype, "activity_event");
86
+ assert.strictEqual(fact.action_actor, "Saber");
87
+ assert.strictEqual(fact.action_type, "merged");
88
+ assert.strictEqual(fact.action_object, "PR #85");
89
+ assert.strictEqual(fact.action_outcome, "Subtype UX copy changes were approved and merged.");
90
+ });
66
91
  });
67
92
  describe("isHighQualityExtractedFact", () => {
68
93
  function makeFact(overrides = {}) {
69
94
  return {
70
95
  content: "The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run with npm run test:e2e.",
71
- category: "codebase",
96
+ category: "engineering",
72
97
  memory_subtype: "codebase_map",
73
98
  entities: ["packages/ui", "playwright"],
74
99
  confidence: 0.9,
@@ -107,7 +132,7 @@ describe("normalizeExtractedFact — self-judgment fields (prompt v2026-04-28-1)
107
132
  it("parses subject, subject_specificity, volatility, self_contained, as_of", () => {
108
133
  const fact = normalizeExtractedFact({
109
134
  content: "The bikky-dev/bikky CI workflow .github/workflows/release.yml builds Docker images and pushes to ECR.",
110
- category: "infrastructure",
135
+ category: "engineering",
111
136
  memory_subtype: "infra_topology",
112
137
  entities: ["bikky-dev/bikky", "ecr"],
113
138
  confidence: 0.9,
@@ -132,7 +157,7 @@ describe("normalizeExtractedFact — self-judgment fields (prompt v2026-04-28-1)
132
157
  it("clamps subject_specificity to [0,1] and rejects unknown volatility values", () => {
133
158
  const fact = normalizeExtractedFact({
134
159
  content: "The dbt-run-cronjob-v100-29617080 cronjob is currently running the old image.",
135
- category: "observations",
160
+ category: "engineering",
136
161
  memory_subtype: "troubleshooting_gotcha",
137
162
  entities: ["dbt-run-cronjob-v100-29617080"],
138
163
  confidence: 0.8,
@@ -152,7 +177,7 @@ describe("normalizeExtractedFact — self-judgment fields (prompt v2026-04-28-1)
152
177
  it("ignores malformed as_of and missing self-judgment fields without dropping the fact", () => {
153
178
  const fact = normalizeExtractedFact({
154
179
  content: "The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run with npm run test:e2e.",
155
- category: "codebase",
180
+ category: "engineering",
156
181
  memory_subtype: "codebase_map",
157
182
  entities: ["packages/ui"],
158
183
  confidence: 0.9,
@@ -172,7 +197,7 @@ describe("factQualitySignals — self-judgment integration", () => {
172
197
  function baseFact(overrides = {}) {
173
198
  return {
174
199
  content: "The UI smoke tests live in packages/ui/tests/smoke.spec.ts and run with npm run test:e2e.",
175
- category: "codebase",
200
+ category: "engineering",
176
201
  memory_subtype: "codebase_map",
177
202
  entities: ["packages/ui"],
178
203
  confidence: 0.9,