context-vault 3.17.0 → 3.19.0

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 (62) hide show
  1. package/bin/cli.js +157 -0
  2. package/dist/register-tools.d.ts.map +1 -1
  3. package/dist/register-tools.js +0 -2
  4. package/dist/register-tools.js.map +1 -1
  5. package/dist/server.js +78 -1
  6. package/dist/server.js.map +1 -1
  7. package/dist/tools/recall.d.ts +1 -1
  8. package/dist/tools/recall.d.ts.map +1 -1
  9. package/dist/tools/recall.js +50 -100
  10. package/dist/tools/recall.js.map +1 -1
  11. package/node_modules/@context-vault/core/dist/assemble.d.ts +22 -0
  12. package/node_modules/@context-vault/core/dist/assemble.d.ts.map +1 -0
  13. package/node_modules/@context-vault/core/dist/assemble.js +143 -0
  14. package/node_modules/@context-vault/core/dist/assemble.js.map +1 -0
  15. package/node_modules/@context-vault/core/dist/capture.d.ts.map +1 -1
  16. package/node_modules/@context-vault/core/dist/capture.js +10 -5
  17. package/node_modules/@context-vault/core/dist/capture.js.map +1 -1
  18. package/node_modules/@context-vault/core/dist/consolidation.d.ts +40 -0
  19. package/node_modules/@context-vault/core/dist/consolidation.d.ts.map +1 -0
  20. package/node_modules/@context-vault/core/dist/consolidation.js +229 -0
  21. package/node_modules/@context-vault/core/dist/consolidation.js.map +1 -0
  22. package/node_modules/@context-vault/core/dist/db.d.ts +25 -1
  23. package/node_modules/@context-vault/core/dist/db.d.ts.map +1 -1
  24. package/node_modules/@context-vault/core/dist/db.js +92 -4
  25. package/node_modules/@context-vault/core/dist/db.js.map +1 -1
  26. package/node_modules/@context-vault/core/dist/frontmatter.d.ts.map +1 -1
  27. package/node_modules/@context-vault/core/dist/frontmatter.js +26 -3
  28. package/node_modules/@context-vault/core/dist/frontmatter.js.map +1 -1
  29. package/node_modules/@context-vault/core/dist/index.d.ts.map +1 -1
  30. package/node_modules/@context-vault/core/dist/index.js +225 -184
  31. package/node_modules/@context-vault/core/dist/index.js.map +1 -1
  32. package/node_modules/@context-vault/core/dist/main.d.ts +2 -0
  33. package/node_modules/@context-vault/core/dist/main.d.ts.map +1 -1
  34. package/node_modules/@context-vault/core/dist/main.js +2 -0
  35. package/node_modules/@context-vault/core/dist/main.js.map +1 -1
  36. package/node_modules/@context-vault/core/dist/search.d.ts +5 -0
  37. package/node_modules/@context-vault/core/dist/search.d.ts.map +1 -1
  38. package/node_modules/@context-vault/core/dist/search.js +97 -5
  39. package/node_modules/@context-vault/core/dist/search.js.map +1 -1
  40. package/node_modules/@context-vault/core/dist/summarize.d.ts +5 -0
  41. package/node_modules/@context-vault/core/dist/summarize.d.ts.map +1 -0
  42. package/node_modules/@context-vault/core/dist/summarize.js +146 -0
  43. package/node_modules/@context-vault/core/dist/summarize.js.map +1 -0
  44. package/node_modules/@context-vault/core/dist/types.d.ts +2 -0
  45. package/node_modules/@context-vault/core/dist/types.d.ts.map +1 -1
  46. package/node_modules/@context-vault/core/package.json +5 -1
  47. package/node_modules/@context-vault/core/src/assemble.ts +187 -0
  48. package/node_modules/@context-vault/core/src/capture.ts +10 -5
  49. package/node_modules/@context-vault/core/src/consolidation.ts +356 -0
  50. package/node_modules/@context-vault/core/src/db.ts +95 -4
  51. package/node_modules/@context-vault/core/src/frontmatter.ts +25 -4
  52. package/node_modules/@context-vault/core/src/index.ts +127 -88
  53. package/node_modules/@context-vault/core/src/main.ts +4 -0
  54. package/node_modules/@context-vault/core/src/search.ts +102 -5
  55. package/node_modules/@context-vault/core/src/summarize.ts +157 -0
  56. package/node_modules/@context-vault/core/src/types.ts +2 -0
  57. package/package.json +2 -2
  58. package/scripts/validate-epipe-shutdown.mjs +183 -0
  59. package/scripts/validate-sqlite-busy-retry.mjs +243 -0
  60. package/src/register-tools.ts +0 -2
  61. package/src/server.ts +76 -1
  62. package/src/tools/recall.ts +51 -110
@@ -1 +1 @@
1
- {"version":3,"file":"recall.js","sourceRoot":"","sources":["../../src/tools/recall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recall.js","sourceRoot":"","sources":["../../src/tools/recall.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI3E,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAEnC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC;IACxB,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO;IACnE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IACnE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IACjE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM;IAC5D,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAC7D,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS;IACjE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM;IAC7D,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;IAC9D,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAC9D,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;IAClE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO;IAC/D,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS;IAC7D,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM;CAC/C,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAE5B,8EAA8E;AAC9E,MAAM,eAAe,GAAG,IAAI,GAAG,EAAuB,CAAC;AAEvD;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc;IAC5C,MAAM,KAAK,GAAG,MAAM;SACjB,WAAW,EAAE;SACb,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC;SAC9B,KAAK,CAAC,KAAK,CAAC;SACZ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,SAAS;QAC1B,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACf,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE;YAAE,MAAM;IACjC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,IAAI,GAAG,QAAQ,CAAC;AAE7B,MAAM,CAAC,MAAM,WAAW,GACtB,2MAA2M,CAAC;AAE9M,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,CAAC,iEAAiE,CAAC;IAC9E,WAAW,EAAE,CAAC;SACX,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;SACzC,QAAQ,CAAC,yCAAyC,CAAC;IACtD,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;IACjD,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,qFAAqF,CAAC;IAClG,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,sCAAsC,CAAC;CACpD,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAuB,EAC3E,GAAa,EACb,EAAE,aAAa,EAAa;IAE5B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,MAAM,aAAa,EAAE,CAAC;IAEtB,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC/C,MAAM,KAAK,GAAG,SAAS,IAAI,iBAAiB,CAAC;IAE7C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,EAAE,CAAC,4BAA4B,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG;YACb,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;YAC9B,MAAM,EAAE,MAAe;YACvB,eAAe,EAAE,EAAE;YACnB,UAAU,EAAE,CAAC;SACd,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,0DAA0D;IAC1D,IAAI,WAAW,GAAG,MAAM,IAAI,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAkB;QAChC,aAAa,EAAE,IAAI;QACnB,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,2DAA2D;KAC9E,CAAC;IAEF,mCAAmC;IACnC,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,OAAO;YACV,qCAAqC;YACrC,UAAU,CAAC,SAAS,GAAG,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,MAAM;YACT,mEAAmE;YACnE,WAAW,GAAG,MAAM;iBACjB,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;iBACtB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;iBACnB,IAAI,EAAE,CAAC;YACV,MAAM;QACR,KAAK,MAAM;YACT,kCAAkC;YAClC,UAAU,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,KAAM,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC1D,MAAM;QACR,qDAAqD;IACvD,CAAC;IAED,+DAA+D;IAC/D,IAAI,aAAa,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;IAErE,8BAA8B;IAC9B,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,SAAS,GAAG,UAAU,MAAM,EAAE,CAAC;QACrC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACzC,IAAI,CAAC,CAAC,CAAC,IAAI;gBAAE,OAAO,KAAK,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,IAAI,GAAa,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAChF,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;YAC3C,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;IAChB,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,WAAW,GAAG,WAAW,KAAK,OAAO,CAAC;IAC5C,MAAM,UAAU,GAAG,UAAU;QAC3B,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,GAAG,IAAI,GAAG,EAAU,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/H,CAAC,CAAC,IAAI,CAAC;IAET,MAAM,KAAK,GAON,EAAE,CAAC;IAER,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;YAAE,MAAM;QAEjC,cAAc;QACd,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACzD,UAAU,EAAE,CAAC;YACb,SAAS;QACX,CAAC;QAED,MAAM,SAAS,GAAa,GAAG,CAAC,IAAI;YAClC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC;YAClE,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,SAAS,GAAsB,GAAG,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;QAE3E,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,CAAC,EAAE;YACV,KAAK,EAAE,GAAG,CAAC,KAAK,IAAI,YAAY;YAChC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;YAC/C,SAAS;YACT,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,WAAW;YAC7B,IAAI,EAAE,SAAS;SAChB,CAAC,CAAC;QAEH,iBAAiB;QACjB,IAAI,UAAU;YAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,6CAA6C;IAC7C,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,YAAY,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;gBAC5C,MAAM;gBACN,WAAW;gBACX,MAAM;gBACN,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM;aAChC,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/C,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;gBAC7B,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;oBAAE,MAAM;gBACjC,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAAE,SAAS;gBAClC,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxD,UAAU,EAAE,CAAC;oBACb,SAAS;gBACX,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACf,IAAI,UAAU;oBAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,yCAA0C,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED,kEAAkE;IAClE,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,YAAY,IAAI,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;QACnD,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE;gBACtD,MAAM;gBACN,WAAW;gBACX,MAAM;gBACN,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM;aAChC,CAAC,CAAC;YACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;gBAC3B,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;oBAAE,MAAM;gBACjC,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAAE,SAAS;gBACrC,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;oBACxD,UAAU,EAAE,CAAC;oBACb,SAAS;gBACX,CAAC;gBACD,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;gBAC5D,IAAI,UAAU;oBAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,uCAAwC,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,YAAY,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC;QACxE,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAChD,YAAY,CAAC,YAAY,CAAC,IAAI,EAAE;YAC9B,MAAM;YACN,WAAW;YACX,MAAM;YACN,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM;SAChC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACX,OAAO,CAAC,IAAI,CAAC,iCAAiC,IAAI,oBAAqB,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9F,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CACH,CAAC;QACF,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;YACxD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,KAAK,MAAM,WAAW,IAAI,cAAc,EAAE,CAAC;gBACzC,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;oBAC7B,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK;wBAAE,MAAM;oBACjC,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;wBAAE,SAAS;oBACrC,IAAI,UAAU,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;wBACxD,UAAU,EAAE,CAAC;wBACb,SAAS;oBACX,CAAC;oBACD,KAAK,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;oBAC9D,IAAI,UAAU;wBAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,+CAAgD,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QACtF,CAAC;IACH,CAAC;IAED,MAAM,MAAM,GAAsB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IAEvE,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;IAEnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,EAAE,CAAC,4BAA4B,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG;YACb,UAAU,EAAE,OAAO;YACnB,MAAM;YACN,eAAe,EAAE,QAAQ;YACzB,UAAU;SACX,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,4DAA4D;IAC5D,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,iBAAiB,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,6DAA6D;IAC7D,IAAI,kBAAkB,GAAyE,EAAE,CAAC;IAClG,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QACnC,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,MAAM,UAAU,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClE,MAAM,QAAQ,GAAG,sBAAsB,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;gBACrE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,kBAAkB,CAAC,IAAI,CAAC;wBACtB,OAAO,EAAE,CAAC,CAAC,EAAE;wBACb,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC7B,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI;qBAC9B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,YAAY;IACd,CAAC;IAED,gBAAgB;IAChB,MAAM,KAAK,GAAG,CAAC,WAAW,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,mBAAmB,CAAC,CAAC;IACvG,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,0BAA0B,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACpF,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,SAAS,IAAI,WAAW,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;IAExD,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,KAAK,GAAG;QACb,UAAU,EAAE,OAAO;QACnB,MAAM;QACN,eAAe,EAAE,QAAQ;QACzB,UAAU;QACV,KAAK;QACL,oBAAoB,EAAE,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS;KACrF,CAAC;IACF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAa,EAAE,GAAa;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAC3B;0FACoF,CACrF,CAAC;QACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACxC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACrE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,uBAAuB,EAAE,GAAG,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,mDAAmD;IACrD,CAAC;AACH,CAAC;AAED,8CAA8C;AAC9C,MAAM,UAAU,kBAAkB;IAChC,eAAe,CAAC,KAAK,EAAE,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,22 @@
1
+ import { VaultConfig } from './types.js';
2
+ export interface AssembleOptions {
3
+ role: 'worker' | 'pm' | 'ceo' | 'steer';
4
+ task: string;
5
+ budget: number;
6
+ }
7
+ export interface IncludedEntryMeta {
8
+ title: string;
9
+ status: 'full' | 'condensed';
10
+ }
11
+ export interface AssembleResult {
12
+ markdown: string;
13
+ metadata: {
14
+ tokens_used: number;
15
+ budget: number;
16
+ entries_included: number;
17
+ role: string;
18
+ included_entries: IncludedEntryMeta[];
19
+ };
20
+ }
21
+ export declare function assembleContext(db: import('node:sqlite').DatabaseSync, config: VaultConfig, options: AssembleOptions): Promise<AssembleResult>;
22
+ //# sourceMappingURL=assemble.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../src/assemble.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAEzC,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,GAAG,IAAI,GAAG,KAAK,GAAG,OAAO,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,WAAW,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE;QACR,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,MAAM,CAAC;QACzB,IAAI,EAAE,MAAM,CAAC;QACb,gBAAgB,EAAE,iBAAiB,EAAE,CAAC;KACvC,CAAC;CACH;AAuDD,wBAAsB,eAAe,CACnC,EAAE,EAAE,OAAO,aAAa,EAAE,YAAY,EACtC,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,cAAc,CAAC,CAsGzB"}
@@ -0,0 +1,143 @@
1
+ import { existsSync, readFileSync, writeFileSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import { hybridSearch } from './search.js';
4
+ const TOKEN_TO_CHAR_RATIO = 4; // approximate conversion
5
+ const CONDENSED_SUFFIX = '\n... [truncated for context budget]';
6
+ const CONDENSED_BODY_CHARS = 400;
7
+ const DEFAULT_ROLE_PROFILES = {
8
+ worker: {
9
+ rules: ['coding', 'patterns', 'standards', 'error-handling', 'debugging'],
10
+ skills: ['git', 'compile', 'test', 'local'],
11
+ memory: ['feedback', 'user', 'project', 'reference']
12
+ },
13
+ pm: {
14
+ rules: ['orchestration', 'planning', 'spec-writing', 'review', 'debugging-escalation'],
15
+ skills: ['dispatch', 'review', 'triage', 'report'],
16
+ memory: ['project', 'team', 'feedback']
17
+ },
18
+ ceo: {
19
+ rules: ['strategy', 'epistemic-honesty', 'decision-making', 'business-logic'],
20
+ skills: ['triage', 'delegate', 'report'],
21
+ memory: ['north-star', 'project', 'user']
22
+ },
23
+ steer: {
24
+ rules: ['steer', 'strategy', 'feedback-loops', 'analysis'],
25
+ skills: ['triage', 'report', 'analyze'],
26
+ memory: ['north-star', 'feedback']
27
+ }
28
+ };
29
+ function loadRoleProfiles(dataDir) {
30
+ const rolesPath = join(dataDir, 'roles.json');
31
+ if (existsSync(rolesPath)) {
32
+ try {
33
+ const raw = readFileSync(rolesPath, 'utf-8');
34
+ const parsed = JSON.parse(raw);
35
+ if (parsed && typeof parsed === 'object') {
36
+ return parsed;
37
+ }
38
+ }
39
+ catch {
40
+ // fall through to defaults
41
+ }
42
+ }
43
+ else {
44
+ // Seed roles.json with defaults so the user can edit it later
45
+ try {
46
+ writeFileSync(rolesPath, JSON.stringify(DEFAULT_ROLE_PROFILES, null, 2) + '\n');
47
+ }
48
+ catch {
49
+ // non-fatal: writable failure just means we use in-memory defaults
50
+ }
51
+ }
52
+ return DEFAULT_ROLE_PROFILES;
53
+ }
54
+ export async function assembleContext(db, config, options) {
55
+ const { role, task, budget } = options;
56
+ // 1. Load role profiles (dynamic — falls back to defaults)
57
+ const ROLE_PROFILES = loadRoleProfiles(config.dataDir);
58
+ const profile = ROLE_PROFILES[role] || ROLE_PROFILES.worker || DEFAULT_ROLE_PROFILES.worker;
59
+ const charsBudget = budget * TOKEN_TO_CHAR_RATIO;
60
+ // Allocate slots
61
+ const rulesChars = Math.floor(charsBudget * 0.2); // 20% for rules
62
+ const skillsChars = Math.floor(charsBudget * 0.1); // 10% for skills
63
+ const taskChars = Math.floor(charsBudget * 0.2); // 20% for task
64
+ const vaultChars = Math.floor(charsBudget * 0.3); // 30% for dynamically retrieved vault context
65
+ // reserve 20%
66
+ let markdown = `# Assembled Context: ${role.toUpperCase()}\n\n`;
67
+ let totalCharsUsed = markdown.length;
68
+ // 2. Add Task Spec
69
+ const taskSection = `## Active Task\n\n${task}\n\n`;
70
+ markdown += taskSection;
71
+ totalCharsUsed += taskSection.length;
72
+ // 3. Dynamic Vault Retrieval based on task
73
+ let entriesIncluded = 0;
74
+ const includedEntries = [];
75
+ const totalBudgetChars = vaultChars + taskChars + rulesChars + skillsChars;
76
+ if (vaultChars > 0 && task.trim().length > 0) {
77
+ try {
78
+ // Over-retrieve candidates
79
+ const searchResults = await hybridSearch({
80
+ db,
81
+ config,
82
+ stmts: {},
83
+ insertVec: () => { },
84
+ deleteVec: () => { },
85
+ embed: async () => new Float32Array(384),
86
+ insertCtxVec: () => { },
87
+ deleteCtxVec: () => { }
88
+ }, task, { limit: 20 });
89
+ if (searchResults && searchResults.length > 0) {
90
+ markdown += `## Retrieved Context\n\n`;
91
+ const retrievedHeaderLen = `## Retrieved Context\n\n`.length;
92
+ totalCharsUsed += retrievedHeaderLen;
93
+ for (const item of searchResults) {
94
+ const entry = 'entry' in item ? item.entry : item;
95
+ const fullBody = entry.body || '';
96
+ const titleText = entry.title ? `### ${entry.title}\n` : '';
97
+ const entryTitle = entry.title || '(untitled)';
98
+ const fullEntryMarkdown = `${titleText}${fullBody}\n\n`;
99
+ if (totalCharsUsed + fullEntryMarkdown.length <= totalBudgetChars) {
100
+ // Full entry fits
101
+ markdown += fullEntryMarkdown;
102
+ totalCharsUsed += fullEntryMarkdown.length;
103
+ entriesIncluded++;
104
+ includedEntries.push({ title: entryTitle, status: 'full' });
105
+ }
106
+ else {
107
+ // Try condensed version
108
+ const condensedBody = fullBody.slice(0, CONDENSED_BODY_CHARS) + CONDENSED_SUFFIX;
109
+ const condensedEntryMarkdown = `${titleText}${condensedBody}\n\n`;
110
+ if (totalCharsUsed + condensedEntryMarkdown.length <= totalBudgetChars) {
111
+ markdown += condensedEntryMarkdown;
112
+ totalCharsUsed += condensedEntryMarkdown.length;
113
+ entriesIncluded++;
114
+ includedEntries.push({ title: entryTitle, status: 'condensed' });
115
+ }
116
+ else {
117
+ // Neither fits — stop adding vault entries
118
+ break;
119
+ }
120
+ }
121
+ }
122
+ }
123
+ }
124
+ catch (e) {
125
+ console.error("Vault retrieval error during assembly:", e);
126
+ }
127
+ }
128
+ // 4. Construct System Prompts/Rules/Skills
129
+ const rulesSection = `## Role Directives\n\n### Rules\n${profile.rules.join(', ')}\n\n### Skills\n${profile.skills.join(', ')}\n\n`;
130
+ markdown = rulesSection + markdown; // U-Curve: Rules at the top
131
+ totalCharsUsed += rulesSection.length;
132
+ return {
133
+ markdown,
134
+ metadata: {
135
+ tokens_used: Math.ceil(totalCharsUsed / TOKEN_TO_CHAR_RATIO),
136
+ budget,
137
+ entries_included: entriesIncluded,
138
+ role,
139
+ included_entries: includedEntries
140
+ }
141
+ };
142
+ }
143
+ //# sourceMappingURL=assemble.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assemble.js","sourceRoot":"","sources":["../src/assemble.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAyB3C,MAAM,mBAAmB,GAAG,CAAC,CAAC,CAAC,yBAAyB;AAExD,MAAM,gBAAgB,GAAG,sCAAsC,CAAC;AAChE,MAAM,oBAAoB,GAAG,GAAG,CAAC;AAIjC,MAAM,qBAAqB,GAAgC;IACzD,MAAM,EAAE;QACN,KAAK,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,WAAW,EAAE,gBAAgB,EAAE,WAAW,CAAC;QACzE,MAAM,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC;QAC3C,MAAM,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC;KACrD;IACD,EAAE,EAAE;QACF,KAAK,EAAE,CAAC,eAAe,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,sBAAsB,CAAC;QACtF,MAAM,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC;QAClD,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC;KACxC;IACD,GAAG,EAAE;QACH,KAAK,EAAE,CAAC,UAAU,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,gBAAgB,CAAC;QAC7E,MAAM,EAAE,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC;QACxC,MAAM,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC;KAC1C;IACD,KAAK,EAAE;QACL,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,CAAC;QAC1D,MAAM,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC;QACvC,MAAM,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;KACnC;CACF,CAAC;AAEF,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC9C,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/B,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBACzC,OAAO,MAAqC,CAAC;YAC/C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,2BAA2B;QAC7B,CAAC;IACH,CAAC;SAAM,CAAC;QACN,8DAA8D;QAC9D,IAAI,CAAC;YACH,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAClF,CAAC;QAAC,MAAM,CAAC;YACP,mEAAmE;QACrE,CAAC;IACH,CAAC;IACD,OAAO,qBAAqB,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,EAAsC,EACtC,MAAmB,EACnB,OAAwB;IAExB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEvC,2DAA2D;IAC3D,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,aAAa,CAAC,MAAM,IAAI,qBAAqB,CAAC,MAAM,CAAC;IAC5F,MAAM,WAAW,GAAG,MAAM,GAAG,mBAAmB,CAAC;IAEjD,iBAAiB;IACjB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,gBAAgB;IAClE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAC,iBAAiB;IACpE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAG,eAAe;IAClE,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC,CAAC,CAAE,8CAA8C;IACjG,cAAc;IAEd,IAAI,QAAQ,GAAG,wBAAwB,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC;IAChE,IAAI,cAAc,GAAG,QAAQ,CAAC,MAAM,CAAC;IAErC,mBAAmB;IACnB,MAAM,WAAW,GAAG,qBAAqB,IAAI,MAAM,CAAC;IACpD,QAAQ,IAAI,WAAW,CAAC;IACxB,cAAc,IAAI,WAAW,CAAC,MAAM,CAAC;IAErC,2CAA2C;IAC3C,IAAI,eAAe,GAAG,CAAC,CAAC;IACxB,MAAM,eAAe,GAAwB,EAAE,CAAC;IAChD,MAAM,gBAAgB,GAAG,UAAU,GAAG,SAAS,GAAG,UAAU,GAAG,WAAW,CAAC;IAE3E,IAAI,UAAU,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC;YACH,2BAA2B;YAC3B,MAAM,aAAa,GAAG,MAAM,YAAY,CACtC;gBACE,EAAE;gBACF,MAAM;gBACN,KAAK,EAAE,EAAS;gBAChB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,SAAS,EAAE,GAAG,EAAE,GAAE,CAAC;gBACnB,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC;gBACxC,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;gBACtB,YAAY,EAAE,GAAG,EAAE,GAAE,CAAC;aACvB,EACD,IAAI,EACJ,EAAE,KAAK,EAAE,EAAE,EAAE,CACd,CAAC;YAEF,IAAI,aAAa,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,QAAQ,IAAI,0BAA0B,CAAC;gBACvC,MAAM,kBAAkB,GAAG,0BAA0B,CAAC,MAAM,CAAC;gBAC7D,cAAc,IAAI,kBAAkB,CAAC;gBAErC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;oBACjC,MAAM,KAAK,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAE,IAAY,CAAC,KAAK,CAAC,CAAC,CAAE,IAAY,CAAC;oBACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;oBAClC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,YAAY,CAAC;oBAE/C,MAAM,iBAAiB,GAAG,GAAG,SAAS,GAAG,QAAQ,MAAM,CAAC;oBAExD,IAAI,cAAc,GAAG,iBAAiB,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;wBAClE,kBAAkB;wBAClB,QAAQ,IAAI,iBAAiB,CAAC;wBAC9B,cAAc,IAAI,iBAAiB,CAAC,MAAM,CAAC;wBAC3C,eAAe,EAAE,CAAC;wBAClB,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC9D,CAAC;yBAAM,CAAC;wBACN,wBAAwB;wBACxB,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,GAAG,gBAAgB,CAAC;wBACjF,MAAM,sBAAsB,GAAG,GAAG,SAAS,GAAG,aAAa,MAAM,CAAC;wBAElE,IAAI,cAAc,GAAG,sBAAsB,CAAC,MAAM,IAAI,gBAAgB,EAAE,CAAC;4BACvE,QAAQ,IAAI,sBAAsB,CAAC;4BACnC,cAAc,IAAI,sBAAsB,CAAC,MAAM,CAAC;4BAChD,eAAe,EAAE,CAAC;4BAClB,eAAe,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;wBACnE,CAAC;6BAAM,CAAC;4BACN,2CAA2C;4BAC3C,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,wCAAwC,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,MAAM,YAAY,GAAG,oCAAoC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;IACpI,QAAQ,GAAG,YAAY,GAAG,QAAQ,CAAC,CAAC,4BAA4B;IAChE,cAAc,IAAI,YAAY,CAAC,MAAM,CAAC;IAEtC,OAAO;QACL,QAAQ;QACR,QAAQ,EAAE;YACR,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,mBAAmB,CAAC;YAC5D,MAAM;YACN,gBAAgB,EAAE,eAAe;YACjC,IAAI;YACJ,gBAAgB,EAAE,eAAe;SAClC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA+FxF,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,GAAG,aAAa,CA+E1E;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,EAAE;IACP,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;CAC7D,GACA,eAAe,GAAG;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC9B,CAiFA;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,YAAY,EAClB,oBAAoB,CAAC,EAAE,YAAY,GAAG,IAAI,GACzC,OAAO,CAAC,aAAa,CAAC,CA2CxB"}
1
+ {"version":3,"file":"capture.d.ts","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAgGxF,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,GAAG,aAAa,CA+E1E;AAED,wBAAgB,eAAe,CAC7B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACjC,OAAO,EAAE;IACP,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,YAAY,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;CAC7D,GACA,eAAe,GAAG;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC9B,CAiFA;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE,YAAY,EAClB,oBAAoB,CAAC,EAAE,YAAY,GAAG,IAAI,GACzC,OAAO,CAAC,aAAa,CAAC,CA+CxB"}
@@ -5,6 +5,7 @@ import { categoryFor } from './categories.js';
5
5
  import { parseFrontmatter, formatFrontmatter } from './frontmatter.js';
6
6
  import { formatBody } from './formatters.js';
7
7
  import { indexEntry } from './index.js';
8
+ import { withBusyRetry } from './db.js';
8
9
  function safeFolderPath(vaultDir, kind, folder) {
9
10
  const base = resolve(vaultDir, kindToPath(kind));
10
11
  if (!folder)
@@ -254,14 +255,18 @@ export async function captureAndIndex(ctx, data, precomputedEmbedding) {
254
255
  try {
255
256
  await indexEntry(ctx, entry, precomputedEmbedding);
256
257
  if (entry.supersedes?.length && ctx.stmts.updateSupersededBy) {
257
- for (const supersededId of entry.supersedes) {
258
- if (typeof supersededId === 'string' && supersededId.trim()) {
259
- ctx.stmts.updateSupersededBy.run(entry.id, supersededId.trim());
258
+ await withBusyRetry(() => {
259
+ for (const supersededId of entry.supersedes) {
260
+ if (typeof supersededId === 'string' && supersededId.trim()) {
261
+ ctx.stmts.updateSupersededBy.run(entry.id, supersededId.trim());
262
+ }
260
263
  }
261
- }
264
+ });
262
265
  }
263
266
  if (entry.related_to?.length && ctx.stmts.updateRelatedTo) {
264
- ctx.stmts.updateRelatedTo.run(JSON.stringify(entry.related_to), entry.id);
267
+ await withBusyRetry(() => {
268
+ ctx.stmts.updateRelatedTo.run(JSON.stringify(entry.related_to), entry.id);
269
+ });
265
270
  }
266
271
  return entry;
267
272
  }
@@ -1 +1 @@
1
- {"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"capture.js","sourceRoot":"","sources":["../src/capture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import type { BaseCtx } from './types.js';
2
+ export interface DuplicateGroup {
3
+ canonical_id: string;
4
+ duplicate_ids: string[];
5
+ similarity: number;
6
+ importance_signal: number;
7
+ canonical_title: string;
8
+ sample_titles: string[];
9
+ }
10
+ export interface MergeResult {
11
+ canonical_id: string;
12
+ merged_count: number;
13
+ new_recall_count: number;
14
+ removed_ids: string[];
15
+ }
16
+ export interface DecayScore {
17
+ id: string;
18
+ title: string;
19
+ kind: string;
20
+ score: number;
21
+ days_since_recall: number;
22
+ recall_count: number;
23
+ recommendation: 'keep' | 'compact' | 'archive';
24
+ }
25
+ export declare function findDuplicates(ctx: BaseCtx, opts?: {
26
+ threshold?: number;
27
+ limit?: number;
28
+ kind?: string;
29
+ dryRun?: boolean;
30
+ }): Promise<DuplicateGroup[]>;
31
+ export declare function mergeEntries(ctx: BaseCtx, opts: {
32
+ canonical_id: string;
33
+ duplicate_ids: string[];
34
+ dryRun?: boolean;
35
+ }): MergeResult;
36
+ export declare function computeDecayScores(ctx: BaseCtx, opts?: {
37
+ limit?: number;
38
+ minAgeDays?: number;
39
+ }): DecayScore[];
40
+ //# sourceMappingURL=consolidation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consolidation.d.ts","sourceRoot":"","sources":["../src/consolidation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAG1C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAC;CAChD;AA2BD,wBAAsB,cAAc,CAClC,GAAG,EAAE,OAAO,EACZ,IAAI,CAAC,EAAE;IACL,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,OAAO,CAAC,cAAc,EAAE,CAAC,CA2H3B;AAED,wBAAgB,YAAY,CAC1B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAE;IACJ,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,GACA,WAAW,CA+Eb;AAED,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,EACZ,IAAI,CAAC,EAAE;IACL,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,UAAU,EAAE,CA0Ed"}
@@ -0,0 +1,229 @@
1
+ import { dotProduct } from './search.js';
2
+ const KIND_WEIGHTS = {
3
+ insight: 10,
4
+ decision: 8,
5
+ pattern: 7,
6
+ reference: 5,
7
+ event: 2,
8
+ };
9
+ export async function findDuplicates(ctx, opts) {
10
+ const threshold = opts?.threshold ?? 0.85;
11
+ const limit = opts?.limit ?? 50;
12
+ const kind = opts?.kind ?? null;
13
+ const whereParts = [
14
+ 'indexed = 1',
15
+ 'superseded_by IS NULL',
16
+ "(expires_at IS NULL OR expires_at > datetime('now'))",
17
+ ];
18
+ const params = [];
19
+ if (kind) {
20
+ whereParts.push('kind = ?');
21
+ params.push(kind);
22
+ }
23
+ const entries = ctx.db
24
+ .prepare(`SELECT rowid, id, title, kind, recall_count, recall_sessions, last_recalled_at, updated_at, created_at
25
+ FROM vault WHERE ${whereParts.join(' AND ')} ORDER BY recall_count DESC`)
26
+ .all(...params);
27
+ if (entries.length === 0)
28
+ return [];
29
+ const entryMap = new Map();
30
+ const rowidToId = new Map();
31
+ for (const e of entries) {
32
+ entryMap.set(e.id, e);
33
+ rowidToId.set(e.rowid, e.id);
34
+ }
35
+ // Load embeddings for all eligible entries via vault_vec KNN
36
+ const embeddingMap = new Map();
37
+ const rowids = entries.map((e) => e.rowid);
38
+ if (rowids.length > 0) {
39
+ const batchSize = 500;
40
+ for (let i = 0; i < rowids.length; i += batchSize) {
41
+ const batch = rowids.slice(i, i + batchSize);
42
+ const placeholders = batch.map(() => '?').join(',');
43
+ const vecRows = ctx.db
44
+ .prepare(`SELECT rowid, embedding FROM vault_vec WHERE rowid IN (${placeholders})`)
45
+ .all(...batch);
46
+ for (const row of vecRows) {
47
+ const id = rowidToId.get(Number(row.rowid));
48
+ if (id && row.embedding) {
49
+ embeddingMap.set(id, new Float32Array(row.embedding.buffer, row.embedding.byteOffset, row.embedding.byteLength / 4));
50
+ }
51
+ }
52
+ }
53
+ }
54
+ if (embeddingMap.size === 0)
55
+ return [];
56
+ // Find duplicate groups using pairwise similarity
57
+ const merged = new Set();
58
+ const groups = [];
59
+ // For each entry with an embedding, use KNN to find neighbors
60
+ const entriesWithVec = entries.filter((e) => embeddingMap.has(e.id));
61
+ for (const entry of entriesWithVec) {
62
+ if (merged.has(entry.id))
63
+ continue;
64
+ const entryVec = embeddingMap.get(entry.id);
65
+ const neighbors = [];
66
+ // Compare against all other entries with embeddings
67
+ for (const other of entriesWithVec) {
68
+ if (other.id === entry.id || merged.has(other.id))
69
+ continue;
70
+ const otherVec = embeddingMap.get(other.id);
71
+ if (!otherVec)
72
+ continue;
73
+ const sim = dotProduct(entryVec, otherVec);
74
+ if (sim >= threshold) {
75
+ neighbors.push({ id: other.id, sim });
76
+ }
77
+ }
78
+ if (neighbors.length === 0)
79
+ continue;
80
+ // Build the group: canonical is the one with highest recall_count
81
+ const allIds = [entry.id, ...neighbors.map((n) => n.id)];
82
+ let canonicalId = entry.id;
83
+ let maxRecall = entry.recall_count;
84
+ for (const nId of neighbors.map((n) => n.id)) {
85
+ const nEntry = entryMap.get(nId);
86
+ if (nEntry && nEntry.recall_count > maxRecall) {
87
+ maxRecall = nEntry.recall_count;
88
+ canonicalId = nId;
89
+ }
90
+ }
91
+ const duplicateIds = allIds.filter((id) => id !== canonicalId);
92
+ const avgSim = neighbors.reduce((sum, n) => sum + n.sim, 0) / neighbors.length;
93
+ const canonical = entryMap.get(canonicalId);
94
+ const sampleTitles = duplicateIds
95
+ .map((id) => entryMap.get(id)?.title)
96
+ .filter((t) => t != null)
97
+ .slice(0, 5);
98
+ groups.push({
99
+ canonical_id: canonicalId,
100
+ duplicate_ids: duplicateIds,
101
+ similarity: Math.round(avgSim * 1000) / 1000,
102
+ importance_signal: allIds.length,
103
+ canonical_title: canonical.title ?? '(untitled)',
104
+ sample_titles: sampleTitles,
105
+ });
106
+ for (const id of allIds)
107
+ merged.add(id);
108
+ if (groups.length >= limit)
109
+ break;
110
+ }
111
+ // Sort by importance (more duplicates = more important)
112
+ groups.sort((a, b) => b.importance_signal - a.importance_signal);
113
+ return groups.slice(0, limit);
114
+ }
115
+ export function mergeEntries(ctx, opts) {
116
+ const dryRun = opts.dryRun ?? true;
117
+ const { canonical_id, duplicate_ids } = opts;
118
+ if (duplicate_ids.length === 0) {
119
+ const canonical = ctx.db
120
+ .prepare('SELECT recall_count FROM vault WHERE id = ?')
121
+ .get(canonical_id);
122
+ return {
123
+ canonical_id,
124
+ merged_count: 0,
125
+ new_recall_count: canonical?.recall_count ?? 0,
126
+ removed_ids: [],
127
+ };
128
+ }
129
+ // Gather recall stats from all entries
130
+ const allIds = [canonical_id, ...duplicate_ids];
131
+ const placeholders = allIds.map(() => '?').join(',');
132
+ const rows = ctx.db
133
+ .prepare(`SELECT id, recall_count, recall_sessions FROM vault WHERE id IN (${placeholders})`)
134
+ .all(...allIds);
135
+ let totalRecallCount = 0;
136
+ let totalRecallSessions = 0;
137
+ for (const row of rows) {
138
+ totalRecallCount += row.recall_count ?? 0;
139
+ totalRecallSessions += row.recall_sessions ?? 0;
140
+ }
141
+ if (dryRun) {
142
+ return {
143
+ canonical_id,
144
+ merged_count: duplicate_ids.length,
145
+ new_recall_count: totalRecallCount,
146
+ removed_ids: duplicate_ids,
147
+ };
148
+ }
149
+ const now = new Date().toISOString();
150
+ const dateStr = now.slice(0, 10);
151
+ // Update canonical: sum recall counts, append consolidation note
152
+ ctx.db
153
+ .prepare(`UPDATE vault SET
154
+ recall_count = ?,
155
+ recall_sessions = ?,
156
+ updated_at = ?,
157
+ body = body || ?
158
+ WHERE id = ?`)
159
+ .run(totalRecallCount, totalRecallSessions, now, `\n\n[Consolidated from ${duplicate_ids.length + 1} entries on ${dateStr}]`, canonical_id);
160
+ // Mark duplicates as superseded
161
+ for (const dupId of duplicate_ids) {
162
+ ctx.db
163
+ .prepare('UPDATE vault SET superseded_by = ?, updated_at = ? WHERE id = ?')
164
+ .run(canonical_id, now, dupId);
165
+ }
166
+ return {
167
+ canonical_id,
168
+ merged_count: duplicate_ids.length,
169
+ new_recall_count: totalRecallCount,
170
+ removed_ids: duplicate_ids,
171
+ };
172
+ }
173
+ export function computeDecayScores(ctx, opts) {
174
+ const limit = opts?.limit ?? 100;
175
+ const minAgeDays = opts?.minAgeDays ?? 0;
176
+ const now = Date.now();
177
+ const cutoffDate = minAgeDays > 0
178
+ ? new Date(now - minAgeDays * 86400000).toISOString()
179
+ : null;
180
+ const whereParts = [
181
+ 'indexed = 1',
182
+ 'superseded_by IS NULL',
183
+ "(expires_at IS NULL OR expires_at > datetime('now'))",
184
+ ];
185
+ const params = [];
186
+ if (cutoffDate) {
187
+ whereParts.push('created_at <= ?');
188
+ params.push(cutoffDate);
189
+ }
190
+ const rows = ctx.db
191
+ .prepare(`SELECT id, title, kind, recall_count, last_recalled_at, updated_at, created_at
192
+ FROM vault WHERE ${whereParts.join(' AND ')}
193
+ ORDER BY updated_at ASC`)
194
+ .all(...params);
195
+ const scores = [];
196
+ for (const row of rows) {
197
+ const lastActivity = row.last_recalled_at ?? row.updated_at ?? row.created_at;
198
+ const daysSinceRecall = (now - new Date(lastActivity).getTime()) / 86400000;
199
+ const baseValue = KIND_WEIGHTS[row.kind] ?? 5;
200
+ const timeDecay = Math.exp(-0.02 * daysSinceRecall);
201
+ const recallBoost = 1 + Math.log((row.recall_count ?? 0) + 1);
202
+ const rawScore = baseValue * timeDecay * recallBoost;
203
+ // Normalize to 0-100 scale (max possible: ~10 * 1.0 * ~5 = 50 for heavily recalled insight)
204
+ const score = Math.max(0, Math.min(100, Math.round(rawScore * 10)));
205
+ let recommendation;
206
+ if (score >= 30) {
207
+ recommendation = 'keep';
208
+ }
209
+ else if (score >= 10) {
210
+ recommendation = 'compact';
211
+ }
212
+ else {
213
+ recommendation = 'archive';
214
+ }
215
+ scores.push({
216
+ id: row.id,
217
+ title: row.title ?? '(untitled)',
218
+ kind: row.kind,
219
+ score,
220
+ days_since_recall: Math.round(daysSinceRecall),
221
+ recall_count: row.recall_count ?? 0,
222
+ recommendation,
223
+ });
224
+ }
225
+ // Sort by score ascending (most decayed first)
226
+ scores.sort((a, b) => a.score - b.score);
227
+ return scores.slice(0, limit);
228
+ }
229
+ //# sourceMappingURL=consolidation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consolidation.js","sourceRoot":"","sources":["../src/consolidation.ts"],"names":[],"mappings":"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"}