devsmind-mcp 3.0.0 → 4.0.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 (41) hide show
  1. package/README.md +11 -20
  2. package/dist/cli/diff.js +1 -1
  3. package/dist/cli/diff.js.map +1 -1
  4. package/dist/cli/index.js +15 -8
  5. package/dist/cli/index.js.map +1 -1
  6. package/dist/cli/integrations/memory-topics.d.ts +21 -10
  7. package/dist/cli/integrations/memory-topics.js +32 -9
  8. package/dist/cli/integrations/memory-topics.js.map +1 -1
  9. package/dist/cli/integrations/memory.d.ts +14 -9
  10. package/dist/cli/integrations/memory.js +47 -229
  11. package/dist/cli/integrations/memory.js.map +1 -1
  12. package/dist/cli/integrations/registry.d.ts +7 -4
  13. package/dist/cli/integrations/registry.js +39 -18
  14. package/dist/cli/integrations/registry.js.map +1 -1
  15. package/dist/cli/rule.js +11 -16
  16. package/dist/cli/rule.js.map +1 -1
  17. package/dist/db/activity-graph.d.ts +55 -0
  18. package/dist/db/activity-graph.js +314 -0
  19. package/dist/db/activity-graph.js.map +1 -0
  20. package/dist/db/activity.d.ts +21 -0
  21. package/dist/db/activity.js +3 -2
  22. package/dist/db/activity.js.map +1 -1
  23. package/dist/db/database.d.ts +72 -4
  24. package/dist/db/database.js +89 -8
  25. package/dist/db/database.js.map +1 -1
  26. package/dist/db/index-build.d.ts +75 -0
  27. package/dist/db/index-build.js +177 -0
  28. package/dist/db/index-build.js.map +1 -0
  29. package/dist/db/revert.js +1 -1
  30. package/dist/db/revert.js.map +1 -1
  31. package/dist/db/schema.d.ts +2 -2
  32. package/dist/db/staging.d.ts +3 -2
  33. package/dist/db/staging.js +1 -1
  34. package/dist/db/staging.js.map +1 -1
  35. package/dist/mcp/server.d.ts +1 -1
  36. package/dist/mcp/server.js +187 -203
  37. package/dist/mcp/server.js.map +1 -1
  38. package/dist/utils/scanner.d.ts +6 -4
  39. package/dist/utils/scanner.js +6 -4
  40. package/dist/utils/scanner.js.map +1 -1
  41. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../src/db/activity.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,oCAMC;AAmDD,4BAEC;AA8BD,oDAEC;AAGD,4CAYC;AAmBD,oCAEC;AAwBD,sCASC;AAQD,kDAiBC;AAGD,kDAGC;AAYD,kDAKC;AAED,kCAEC;AAOD,oCAaC;AAwCD,4CAmEC;AAkCD,sCAsCC;AAGD,kCAEC;AA3cD,+CAAiC;AACjC,uCAAyB;AACzB,2CAA6B;AAsC7B;;kCAEkC;AAClC,SAAgB,YAAY,CAAC,KAAoB;IAC/C,IAAI,CAAC,KAAK,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IACpC,MAAM,aAAa,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC;IAC3D,IAAI,aAAa,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,aAAa,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,UAAU,CAAC;IACtD,OAAO,SAAS,CAAC;AACnB,CAAC;AAiDD;yDACyD;AACzD,SAAgB,QAAQ,CAAC,WAAmB;IAC1C,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,YAAY,CAAC,WAAmB;IACvC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,eAAe,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB;IACtC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB,EAAE,SAAiB;IACzD,OAAO,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;GAMG;AACH,IAAI,gBAAgB,GAAG,KAAK,CAAC;AAE7B;;;;;;GAMG;AACH,SAAgB,oBAAoB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED,mFAAmF;AACnF,SAAgB,gBAAgB,CAAC,WAAmB;IAClD,IAAI,gBAAgB;QAAE,OAAO;IAC7B,gBAAgB,GAAG,IAAI,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,YAAY,CAAC,CAAC;QACzE,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5F,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC;YAAE,OAAO;QAC/E,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;QAClF,EAAE,CAAC,aAAa,CAAC,aAAa,EAAE,GAAG,IAAI,UAAU,EAAE,OAAO,CAAC,CAAC;IAC9D,CAAC;IAAC,MAAM,CAAC;QACP,sFAAsF;IACxF,CAAC;AACH,CAAC;AAED,oGAAoG;AACpG,SAAS,eAAe,CAAC,WAAmB,EAAE,MAAc,EAAE,IAAa;IACzE,gBAAgB,CAAC,WAAW,CAAC,CAAC;IAC9B,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IAC3C,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC9D,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAI,MAAc,EAAE,QAAW;IAC9C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,SAAgB,YAAY,CAAC,WAAmB;IAC9C,OAAO,QAAQ,CAAe,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC;AACtF,CAAC;AAED,SAAS,aAAa,CAAC,WAAmB,EAAE,QAA2B;IACrE,eAAe,CAAC,WAAW,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;AACxE,CAAC;AAED,+FAA+F;AAC/F,SAAS,YAAY,CAAC,WAAmB,EAAE,SAAiB,EAAE,SAAwB,EAAE,SAAiB,EAAE,MAAc;IACvH,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACxD,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC;YAAE,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACtF,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IACjH,CAAC;IACD,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,SAAgB,aAAa,CAAC,WAAmB,EAAE,SAAiB,EAAE,SAAwB,EAAE,KAAc;IAC5G,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACxD,IAAI,QAAQ;QAAE,OAAO,QAAQ,CAAC;IAC9B,MAAM,OAAO,GAAoB,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IACrJ,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACvB,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,mBAAmB,CACjC,WAAmB,EACnB,SAAiB,EACjB,UAAyB,EACzB,YAA2B,IAAI;IAE/B,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACxC,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACrD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QACjG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,WAAW,GAAG,UAAU,CAAC;IACjC,OAAO,CAAC,WAAW,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IACrC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,gEAAgE;AAChE,SAAgB,mBAAmB,CAAC,WAAmB,EAAE,SAAiB;IACxE,MAAM,OAAO,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACxE,OAAO,OAAO,EAAE,WAAW,IAAI,IAAI,CAAC;AACtC,CAAC;AAED;;;;;;;;;GASG;AACH,SAAgB,mBAAmB,CAAC,WAAmB,EAAE,gBAAyB;IAChF,MAAM,UAAU,GAAG,YAAY,CAAC,WAAW,CAAC;SACzC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,KAAK,gBAAgB,CAAC;SACvD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;IAC9D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAY,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/D,CAAC;AAED,SAAgB,WAAW,CAAC,WAAmB,EAAE,SAAiB;IAChE,OAAO,QAAQ,CAAyB,WAAW,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,YAAY,CAAC,WAAmB,EAAE,OAAwB;IACjE,eAAe,CAAC,WAAW,EAAE,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,6FAA6F;AAC7F,SAAgB,YAAY,CAAC,WAAmB;IAC9C,MAAM,GAAG,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACrC,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC/D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,QAAQ,GAAG,KAAK;SACnB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAyB,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;SACnE,MAAM,CAAC,CAAC,CAAC,EAAwB,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC;IACnD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC;AAClB,CAAC;AA8BD;;;;;;;;;GASG;AACH,SAAgB,gBAAgB,CAC9B,WAAmB,EACnB,OAgBI,EAAE;IAEN,IAAI,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAEzC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC;QAC5C,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACtF,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,IAAI,CAAC,SAAS,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC7I,IAAI,QAAQ,EAAE,CAAC;QACb,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,QAAQ,CAAC,CAAC;IAC5D,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,IAAI,CAAC,KAAM,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;QACtD,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAChI,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC,CAAC;IAErD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,OAAO,GAAuB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;QAClD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;YACxB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC3B,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBACxB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3C,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO;YACL,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU;YAC9G,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;SAC/G,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,cAAc,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,CAAC;AACzF,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,WAAmB,EAAE,SAAiB;IACpE,MAAM,QAAQ,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACzD,OAAO,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AACvF,CAAC;AAaD;;;;;;;;GAQG;AACH,SAAgB,aAAa,CAAC,WAAmB,EAAE,MAA2B;IAC5E,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAExC,IAAI,MAAM,GAA2B,IAAI,CAAC;IAC1C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QACtB,MAAM,GAAG,WAAW,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,sBAAsB,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;QACtE,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,MAAM,CAAC,OAAO;YAAE,MAAM,GAAG,MAAM,CAAC;IAClG,CAAC;IAED,6FAA6F;IAC7F,gEAAgE;IAChE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;IAEpF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QAC5B,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC;QAC3B,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;QACpD,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAClC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAClF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,OAAO,GAAoB;QAC/B,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;QACvB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,UAAU,EAAE,MAAM;QAClB,UAAU,EAAE,MAAM;QAClB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;QAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,SAAS;QACjB,KAAK;KACN,CAAC;IACF,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACnC,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACnF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8FAA8F;AAC9F,SAAgB,WAAW,CAAC,WAAmB,EAAE,OAAwB;IACvE,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../src/db/activity.ts"],"names":[],"mappings":"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"}
@@ -229,6 +229,35 @@ export declare function formatReasoning(r: string | ReasoningObject): string;
229
229
  * labels to read; rather than drop it, the whole chunk is surfaced as `what_changed`.
230
230
  */
231
231
  export declare function parseReasoningBlocks(raw: string): ReasoningObject[];
232
+ /** One reasoning block recovered from an accumulated history blob, with the time it was written. */
233
+ export interface TimedReasoningBlock {
234
+ /**
235
+ * The block's verbatim trimmed text. This is the GROUPING KEY for reconstructing a commit from
236
+ * history: `commitStagedChanges` passes one `reasoning` object to `updateHistory` for every node
237
+ * in the batch, so every node touched by a single commit_changes call ends up carrying a
238
+ * byte-identical block. Nothing else in the shared record identifies a commit — `history.id` is
239
+ * per-node, and the timestamps differ by milliseconds because each node's `updateHistory` call
240
+ * stamps its own `new Date()`.
241
+ */
242
+ text: string;
243
+ /** When this block was written — the `── Update @ … ──` separator's own timestamp, or the row's
244
+ * `created_at` for the first block, which has no separator preceding it. */
245
+ at: string;
246
+ parsed: ReasoningObject;
247
+ }
248
+ /**
249
+ * {@link parseReasoningBlocks} plus the one thing it throws away: each block's timestamp.
250
+ *
251
+ * The separator that `updateHistory` writes between merged blocks embeds the moment of the update,
252
+ * so an accumulated blob is already a dated log — but the existing parser splits on a
253
+ * non-capturing pattern and returns bare objects, which is all `get_node_code` ever needed.
254
+ * Reconstructing per-commit activity from shared history does need the dates (that's the whole
255
+ * time-filter), hence a sibling rather than a breaking change to a parser with other callers.
256
+ *
257
+ * Returned OLDEST FIRST — accumulation order, the opposite of `parseReasoningBlocks` — because the
258
+ * caller here regroups across rows by timestamp rather than reading "the latest" off the front.
259
+ */
260
+ export declare function parseReasoningBlocksTimed(raw: string, createdAt: string): TimedReasoningBlock[];
232
261
  export declare class DevMindDatabase {
233
262
  private db;
234
263
  private dbPath;
@@ -440,6 +469,44 @@ export declare class DevMindDatabase {
440
469
  entries: DbHistory[];
441
470
  total: number;
442
471
  };
472
+ /**
473
+ * Every history row in a time/session window, joined to its node's file path — the SHARED
474
+ * counterpart to the local activity log, and the backing query for `get_activity_log`'s graph
475
+ * fallback (see db/activity-graph.ts).
476
+ *
477
+ * Deliberately reads SQLite ONLY, never `populateHistoryFromDisk`. Everything the fallback needs
478
+ * — reasoning (which carries developer + requirement, see formatReasoning), both timestamps,
479
+ * session_id, and the file path — is already in columns; the disk JSON adds only `code_snapshot`
480
+ * and `edits`, neither of which an activity listing reports. That matters because this scans
481
+ * ROWS, not one node's history: routing it through the per-row file read would turn a single
482
+ * indexed query into one synchronous readFileSync per revision in the window.
483
+ *
484
+ * The date bounds test the row's [created_at, updated_at] span against the window rather than a
485
+ * single point. One row accumulates blocks for up to an hour past `created_at` (the merge rule),
486
+ * so `created_at >= since` would silently drop a row whose in-window blocks were appended to an
487
+ * out-of-window row. This over-selects instead, and the caller filters per block, where the real
488
+ * timestamps live.
489
+ *
490
+ * `file_path` is null when the node is gone (history outlives its node — a hard delete leaves
491
+ * rows behind). Nulls are the caller's to skip; dropping them here would silently shrink the
492
+ * edit counts a fallback entry reports.
493
+ */
494
+ queryHistoryForActivity(opts?: {
495
+ sessionId?: string;
496
+ since?: string;
497
+ until?: string;
498
+ /** Hard cap on rows scanned, newest-updated first. Bounds a full-table scan on a mature repo;
499
+ * the caller reports when it bites rather than passing off a truncated log as complete. */
500
+ limit?: number;
501
+ }): {
502
+ id: string;
503
+ node_id: string;
504
+ session_id: string;
505
+ created_at: string;
506
+ updated_at: string;
507
+ reasoning: string;
508
+ file_path: string | null;
509
+ }[];
443
510
  /** Distinct source node ids of edges pointing INTO this node (its "used-by" callers). */
444
511
  getInboundSources(nodeId: string): string[];
445
512
  getLatestCode(nodeId: string): {
@@ -467,7 +534,8 @@ export declare class DevMindDatabase {
467
534
  /**
468
535
  * The entity's text before this edit, when the caller knows it (`edit_node` does; it holds
469
536
  * the pre-edit file). `null` means the entity did not exist yet — a pure addition. `undefined`
470
- * means the caller has no before-state at all (`stage_change`), and no edit is recorded to
537
+ * means the caller has no before-state at all (the legacy `update_history` path, or an
538
+ * initial index snapshot), and no edit is recorded to
471
539
  * the trail: an entry with nothing to compare against gets no diff and no revert.
472
540
  */
473
541
  code_before?: string | null;
@@ -884,14 +952,14 @@ export declare class DevMindDatabase {
884
952
  private clampToRoot;
885
953
  /**
886
954
  * True if `absPath` sits inside a configured repo root or the workspace root itself.
887
- * Used to reject `stage_change`/`update_history` file paths that would otherwise let a
955
+ * Used to reject `edit_node`/`update_history` file paths that would otherwise let a
888
956
  * tool call read/write any file on disk (absolute path, or a `../` escape) instead of
889
957
  * just repo source — nothing upstream of this validates that the AI-supplied path is
890
958
  * actually inside the project.
891
959
  */
892
960
  /**
893
- * Gate for every AI-facing write (edit_node, stage_change, the legacy update_history):
894
- * true only for paths inside a configured repo. `.devmind` itself — this project's OWN
961
+ * Gate for every AI-facing write (edit_node, the legacy update_history): true only for
962
+ * paths inside a configured repo. `.devmind` itself — this project's OWN
895
963
  * config, brain.db, and cached graph JSON — is never writable through these tools, even
896
964
  * though it sits next to (and, before this check, was indistinguishable from) real source:
897
965
  * without this, a write tool built to "never refuse a file type" would just as happily
@@ -40,6 +40,7 @@ exports.DevMindDatabase = exports.NO_STATIC_CALLERS_NOTE = exports.WORKFLOW_SIDE
40
40
  exports.toCompactSearchResult = toCompactSearchResult;
41
41
  exports.formatReasoning = formatReasoning;
42
42
  exports.parseReasoningBlocks = parseReasoningBlocks;
43
+ exports.parseReasoningBlocksTimed = parseReasoningBlocksTimed;
43
44
  const better_sqlite3_1 = __importDefault(require("better-sqlite3"));
44
45
  const crypto = __importStar(require("crypto"));
45
46
  const fs = __importStar(require("fs"));
@@ -148,9 +149,10 @@ const REASONING_SEPARATOR = /(\n*── Update @ [^\n]*──\n)/g;
148
149
  * Removes one block from an accumulated reasoning log, matched by its exact text and searched
149
150
  * from the newest end.
150
151
  *
151
- * Not simply "drop the last block": an update that carries no code change (a `stage_change`, a
152
- * bare `update_history`) appends reasoning without recording an edit, so blocks and edits are not
153
- * one-to-one and positional removal would take the wrong one. Matching on content is exact when
152
+ * Not simply "drop the last block": an update that carries no code change (a bare
153
+ * `update_history`, or an initial index snapshot) appends reasoning without recording an edit,
154
+ * so blocks and edits are not one-to-one and positional removal would take the wrong one.
155
+ * Matching on content is exact when
154
156
  * the block is there, and when it isn't the log is returned untouched — leaving a stale line is
155
157
  * recoverable, mangling someone else's reasoning is not.
156
158
  *
@@ -219,6 +221,37 @@ function parseReasoningBlocks(raw) {
219
221
  });
220
222
  return parsed.reverse();
221
223
  }
224
+ /**
225
+ * {@link parseReasoningBlocks} plus the one thing it throws away: each block's timestamp.
226
+ *
227
+ * The separator that `updateHistory` writes between merged blocks embeds the moment of the update,
228
+ * so an accumulated blob is already a dated log — but the existing parser splits on a
229
+ * non-capturing pattern and returns bare objects, which is all `get_node_code` ever needed.
230
+ * Reconstructing per-commit activity from shared history does need the dates (that's the whole
231
+ * time-filter), hence a sibling rather than a breaking change to a parser with other callers.
232
+ *
233
+ * Returned OLDEST FIRST — accumulation order, the opposite of `parseReasoningBlocks` — because the
234
+ * caller here regroups across rows by timestamp rather than reading "the latest" off the front.
235
+ */
236
+ function parseReasoningBlocksTimed(raw, createdAt) {
237
+ if (!raw || typeof raw !== 'string')
238
+ return [];
239
+ // Capturing the timestamp (not the whole separator) means split() interleaves it into the
240
+ // result: [block0, ts1, block1, ts2, block2, …] — blocks even, timestamps odd.
241
+ const parts = raw.split(/\n*── Update @ ([^\n]*?)\s*──\n/g);
242
+ const out = [];
243
+ for (let i = 0; i < parts.length; i += 2) {
244
+ const text = (parts[i] || '').trim();
245
+ if (!text)
246
+ continue;
247
+ const at = i === 0 ? createdAt : ((parts[i - 1] || '').trim() || createdAt);
248
+ // parseReasoningBlocks on a separator-free chunk always yields exactly one entry; the fallback
249
+ // mirrors its own "unlabelled text is still reasoning" rule rather than dropping the block.
250
+ const parsed = parseReasoningBlocks(text)[0] || { what_changed: text, why: '', goal: '' };
251
+ out.push({ text, at, parsed });
252
+ }
253
+ return out;
254
+ }
222
255
  class DevMindDatabase {
223
256
  db;
224
257
  dbPath;
@@ -872,7 +905,7 @@ class DevMindDatabase {
872
905
  // caller to add the source node first (the two-phase indexing protocol already does this).
873
906
  if (!srcNode) {
874
907
  console.warn(`⚠️ DevsMind: connection skipped — source node "${sourceNodeId}" does not exist in ` +
875
- `the graph. Add it (stage_change / update_history) before connecting it, otherwise the edge ` +
908
+ `the graph. Add it (edit_node / update_history) before connecting it, otherwise the edge ` +
876
909
  `cannot be persisted to disk and would not survive a restart.`);
877
910
  return;
878
911
  }
@@ -1092,6 +1125,54 @@ class DevMindDatabase {
1092
1125
  const rows = stmt.all(resolvedId, limit, offset);
1093
1126
  return { entries: rows.map(row => this.populateHistoryFromDisk(row)), total: totalRow.c };
1094
1127
  }
1128
+ /**
1129
+ * Every history row in a time/session window, joined to its node's file path — the SHARED
1130
+ * counterpart to the local activity log, and the backing query for `get_activity_log`'s graph
1131
+ * fallback (see db/activity-graph.ts).
1132
+ *
1133
+ * Deliberately reads SQLite ONLY, never `populateHistoryFromDisk`. Everything the fallback needs
1134
+ * — reasoning (which carries developer + requirement, see formatReasoning), both timestamps,
1135
+ * session_id, and the file path — is already in columns; the disk JSON adds only `code_snapshot`
1136
+ * and `edits`, neither of which an activity listing reports. That matters because this scans
1137
+ * ROWS, not one node's history: routing it through the per-row file read would turn a single
1138
+ * indexed query into one synchronous readFileSync per revision in the window.
1139
+ *
1140
+ * The date bounds test the row's [created_at, updated_at] span against the window rather than a
1141
+ * single point. One row accumulates blocks for up to an hour past `created_at` (the merge rule),
1142
+ * so `created_at >= since` would silently drop a row whose in-window blocks were appended to an
1143
+ * out-of-window row. This over-selects instead, and the caller filters per block, where the real
1144
+ * timestamps live.
1145
+ *
1146
+ * `file_path` is null when the node is gone (history outlives its node — a hard delete leaves
1147
+ * rows behind). Nulls are the caller's to skip; dropping them here would silently shrink the
1148
+ * edit counts a fallback entry reports.
1149
+ */
1150
+ queryHistoryForActivity(opts = {}) {
1151
+ const where = [];
1152
+ const params = [];
1153
+ if (opts.sessionId) {
1154
+ where.push('h.session_id = ?');
1155
+ params.push(opts.sessionId);
1156
+ }
1157
+ if (opts.since) {
1158
+ where.push('h.updated_at >= ?');
1159
+ params.push(opts.since);
1160
+ }
1161
+ if (opts.until) {
1162
+ where.push('h.created_at <= ?');
1163
+ params.push(opts.until);
1164
+ }
1165
+ const sql = `
1166
+ SELECT h.id, h.node_id, h.session_id, h.created_at, h.updated_at, h.reasoning, n.file_path
1167
+ FROM history h
1168
+ LEFT JOIN nodes n ON n.id = h.node_id
1169
+ ${where.length ? `WHERE ${where.join(' AND ')}` : ''}
1170
+ ORDER BY h.updated_at DESC
1171
+ LIMIT ?
1172
+ `;
1173
+ params.push(opts.limit ?? 5000);
1174
+ return this.db.prepare(sql).all(...params);
1175
+ }
1095
1176
  /** Distinct source node ids of edges pointing INTO this node (its "used-by" callers). */
1096
1177
  getInboundSources(nodeId) {
1097
1178
  const rows = this.db
@@ -1177,7 +1258,7 @@ class DevMindDatabase {
1177
1258
  return {
1178
1259
  exists: false,
1179
1260
  node_id: resolvedId,
1180
- message: 'No code found on disk or in cache. Read the source file, then stage_change + commit_changes so future agents skip the file read entirely.'
1261
+ message: 'No code found on disk or in cache. Read the source file, then edit_node + commit_changes so future agents skip the file read entirely.'
1181
1262
  };
1182
1263
  }
1183
1264
  getGraph(nodeId, maxDepth = 6, opts = {}) {
@@ -2876,14 +2957,14 @@ class DevMindDatabase {
2876
2957
  }
2877
2958
  /**
2878
2959
  * True if `absPath` sits inside a configured repo root or the workspace root itself.
2879
- * Used to reject `stage_change`/`update_history` file paths that would otherwise let a
2960
+ * Used to reject `edit_node`/`update_history` file paths that would otherwise let a
2880
2961
  * tool call read/write any file on disk (absolute path, or a `../` escape) instead of
2881
2962
  * just repo source — nothing upstream of this validates that the AI-supplied path is
2882
2963
  * actually inside the project.
2883
2964
  */
2884
2965
  /**
2885
- * Gate for every AI-facing write (edit_node, stage_change, the legacy update_history):
2886
- * true only for paths inside a configured repo. `.devmind` itself — this project's OWN
2966
+ * Gate for every AI-facing write (edit_node, the legacy update_history): true only for
2967
+ * paths inside a configured repo. `.devmind` itself — this project's OWN
2887
2968
  * config, brain.db, and cached graph JSON — is never writable through these tools, even
2888
2969
  * though it sits next to (and, before this check, was indistinguishable from) real source:
2889
2970
  * without this, a write tool built to "never refuse a file type" would just as happily