@devflow-tools/memory-engine 0.13.3 → 0.14.1

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 (56) hide show
  1. package/dist/consolidator.d.ts +13 -0
  2. package/dist/consolidator.d.ts.map +1 -0
  3. package/dist/consolidator.js +184 -0
  4. package/dist/consolidator.js.map +1 -0
  5. package/dist/event-grouper.d.ts +13 -0
  6. package/dist/event-grouper.d.ts.map +1 -0
  7. package/dist/event-grouper.js +178 -0
  8. package/dist/event-grouper.js.map +1 -0
  9. package/dist/graph-store.d.ts.map +1 -1
  10. package/dist/graph-store.js +2 -4
  11. package/dist/graph-store.js.map +1 -1
  12. package/dist/hybrid-search.d.ts +7 -4
  13. package/dist/hybrid-search.d.ts.map +1 -1
  14. package/dist/hybrid-search.js +69 -8
  15. package/dist/hybrid-search.js.map +1 -1
  16. package/dist/index.d.ts +14 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +7 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/l2-evaluator.d.ts +31 -0
  21. package/dist/l2-evaluator.d.ts.map +1 -0
  22. package/dist/l2-evaluator.js +103 -0
  23. package/dist/l2-evaluator.js.map +1 -0
  24. package/dist/llm-provider.d.ts +9 -0
  25. package/dist/llm-provider.d.ts.map +1 -0
  26. package/dist/llm-provider.js +37 -0
  27. package/dist/llm-provider.js.map +1 -0
  28. package/dist/memory-engine.d.ts +27 -4
  29. package/dist/memory-engine.d.ts.map +1 -1
  30. package/dist/memory-engine.js +275 -182
  31. package/dist/memory-engine.js.map +1 -1
  32. package/dist/memory-gate.d.ts +116 -0
  33. package/dist/memory-gate.d.ts.map +1 -0
  34. package/dist/memory-gate.js +385 -0
  35. package/dist/memory-gate.js.map +1 -0
  36. package/dist/memory-store.d.ts +234 -32
  37. package/dist/memory-store.d.ts.map +1 -1
  38. package/dist/memory-store.js +729 -142
  39. package/dist/memory-store.js.map +1 -1
  40. package/dist/project-validator.d.ts +10 -0
  41. package/dist/project-validator.d.ts.map +1 -0
  42. package/dist/project-validator.js +36 -0
  43. package/dist/project-validator.js.map +1 -0
  44. package/dist/session-summarizer.d.ts +10 -0
  45. package/dist/session-summarizer.d.ts.map +1 -0
  46. package/dist/session-summarizer.js +197 -0
  47. package/dist/session-summarizer.js.map +1 -0
  48. package/dist/signal-buffer.d.ts +42 -0
  49. package/dist/signal-buffer.d.ts.map +1 -0
  50. package/dist/signal-buffer.js +104 -0
  51. package/dist/signal-buffer.js.map +1 -0
  52. package/dist/signal-detector.d.ts +39 -0
  53. package/dist/signal-detector.d.ts.map +1 -0
  54. package/dist/signal-detector.js +239 -0
  55. package/dist/signal-detector.js.map +1 -0
  56. package/package.json +5 -5
@@ -1 +1 @@
1
- {"version":3,"file":"memory-store.js","sourceRoot":"","sources":["../src/memory-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-store.js","sourceRoot":"","sources":["../src/memory-store.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAsFzC,0DAA0D;AAE1D,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoOjB,CAAC;AAEF,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;CAepB,CAAC;AAEF,2DAA2D;AAE3D,MAAM,OAAO,WAAW;IACd,EAAE,CAAoB;IACtB,MAAM,CAAS;IAEvB,YAAY,QAAgB;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YAAE,SAAS,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChE,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;QACrC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACtC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;QACpC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxB,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,kCAAkC,EAAE;YAC9C,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE;SAC/B,CAAC,CAAC;IACL,CAAC;IAEO,WAAW;QACjB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,4DAA4D,CAC7D,CAAC,GAAG,EAAmB,CAAC;QACzB,OAAO,GAAG,CAAC,CAAC,CAAC;IACf,CAAC;IAED,oDAAoD;IAE5C,aAAa;QACnB,MAAM,MAAM,GACV,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,mDAAmD,CACpD,CAAC,GAAG,EACN,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAEnB,+DAA+D;QAC/D,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACnE,MAAM,KAAK,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC,GAAG,EAAmB,CAAC;YACzF,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC;;;;;;;;WAQZ,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC,CAAC;gBAC7E,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACjD,MAAM,OAAO,GAAyC;YACpD,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,gEAAgE,EAAE;YACxF,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,2CAA2C,EAAE;YAClE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,oEAAoE,EAAE;YAC9F,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,iDAAiD,EAAE;YAC9E,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,oDAAoD,EAAE;YACpF,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,iEAAiE,EAAE;YACxF,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,kEAAkE,EAAE;YAC5F,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,oEAAoE,EAAE;YAC/F,EAAE,IAAI,EAAE,oBAAoB,EAAE,GAAG,EAAE,4DAA4D,EAAE;YACjG,EAAE,IAAI,EAAE,iBAAiB,EAAE,GAAG,EAAE,4EAA4E,EAAE;YAC9G,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,uEAAuE,EAAE;SACrG,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;YAC1B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC;oBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxB,CAAC;gBAAC,MAAM,CAAC,CAAC,8BAA8B,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC;gBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;YACzE,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC;gBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,mFAAmF,CAAC,CAAC;YACpG,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACpC,IAAI,CAAC;gBACH,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;YACnF,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;QAED,gDAAgD;QAChD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5D,4DAA4D;QAC9D,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,KAAa;QACnC,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,cAAc,KAAK,GAAG,CAA4B,CAAC;YAC/E,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,oDAAoD;IAEpD,GAAG,CAAC,KAaH;QACC,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAIf,CAAC,CAAC,GAAG,CACJ,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,YAAY,IAAI,IAAI,EAC7D,KAAK,CAAC,MAAM,IAAI,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ,EAChD,KAAK,CAAC,UAAU,IAAI,GAAG,EAAE,KAAK,CAAC,QAAQ,IAAI,GAAG,EAC9C,KAAK,CAAC,KAAK,IAAI,EAAE,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,EAAE,GAAG,EAAE,GAAG,CACrD,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC,CAAC;QACnG,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;IACvB,CAAC;IAED,GAAG,CAAC,EAAU;QACZ,OAAQ,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC,GAAG,CAAC,EAAE,CAA2B,IAAI,IAAI,CAAC;IAC3G,CAAC;IAED,MAAM,CAAC,EAAU,EAAE,OAKlB;QACC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAc,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC;gBACxB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QACtB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,EAAU;QACf,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,CAAC,MAA8E;QACjF,IAAI,GAAG,GAAG,oDAAoD,CAAC;QAC/D,MAAM,IAAI,GAAc,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,MAAM,EAAE,QAAQ,CAAC;QACpD,IAAI,UAAU,EAAE,CAAC;YAAC,GAAG,IAAI,eAAe,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAAC,CAAC;QAClE,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YAAC,GAAG,IAAI,iBAAiB,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAAC,CAAC;QAC3E,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;YAAC,GAAG,IAAI,gBAAgB,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;QACxE,GAAG,IAAI,2BAA2B,CAAC;QACnC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAgB,CAAC;IAC1D,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1C,CAAC;IAED,UAAU,CAAC,IAAY,EAAE,KAAK,GAAG,GAAG;QAClC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,sIAAsI,CACvI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAgB,CAAC;IACpC,CAAC;IAED,WAAW,CAAC,KAAe,EAAE,KAAK,GAAG,GAAG;QACtC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QAClC,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,yCAAyC,YAAY,kGAAkG,CACxJ,CAAC,GAAG,CAAC,GAAG,KAAK,EAAE,KAAK,CAAgB,CAAC;IACxC,CAAC;IAED,cAAc,CAAC,QAAgB,EAAE,KAAK,GAAG,GAAG;QAC1C,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAED,aAAa,CAAC,MAAc;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,qDAAqD,CACtD,CAAC,GAAG,CAAC,MAAM,CAA8B,CAAC;QAC3C,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,oDAAoD;IAEpD,eAAe,CAAC,EAAU,EAAE,SAAuB;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,kEAAkE,CACnE,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAClB,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,oFAAoF,CACrF,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,0BAA0B,CAAC,KAAa,EAAE,SAAuB;QAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,oFAAoF,CACrF,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,oDAAoD,CACrD,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,iDAAiD,CAClD,CAAC,GAAG,CAAC,EAAE,CAAsC,CAAC;QAC/C,OAAO,GAAG,EAAE,SAAS,IAAI,IAAI,CAAC;IAChC,CAAC;IAED,oBAAoB,CAAC,UAAkB,EAAE,QAAgB;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,uEAAuE,CACxE,CAAC,GAAG,CAAC,UAAU,EAAE,QAAQ,CAAmC,CAAC;QAC9D,OAAO,GAAG,EAAE,MAAM,IAAI,IAAI,CAAC;IAC7B,CAAC;IAED,oDAAoD;IAEpD,UAAU,CAAC,KAAa,EAAE,KAAK,GAAG,EAAE;QAClC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMtB,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAwC,CAAC;IAC9D,CAAC;IAED,YAAY,CAAC,SAAuB,EAAE,KAAK,GAAG,EAAE;QAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC7C,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMtB,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAA4C,CAAC;IACnE,CAAC;IAED,oDAAoD;IAEpD,OAAO,CAAC,QAAgB,EAAE,QAAgB,EAAE,IAAY,EAAE,MAAM,GAAG,GAAG;QACpE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,OACE,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,sEAAsE,CACvE,CAAC,GAAG,CAAC,EAAE,CACT,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,oDAAoD;IAEpD,WAAW,CAAC,KAKX;QACC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAKf,CAAC,CAAC,GAAG,CACJ,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,EAC1D,KAAK,CAAC,OAAO,IAAI,IAAI,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,EACnE,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,OAAO,IAAI,CAAC,EAC7D,KAAK,CAAC,WAAW,IAAI,CAAC,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,CAClD,CAAC;IACJ,CAAC;IAED,gBAAgB,CAAC,SAAiB;QAChC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,2EAA2E,CAC5E,CAAC,GAAG,CAAC,SAAS,CAAe,CAAC;IACjC,CAAC;IAED,oBAAoB;QAClB,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,0EAA0E,CAC3E,CAAC,GAAG,EAAgB,CAAC;IACxB,CAAC;IAED,mBAAmB,CAAC,GAAa;QAC/B,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC7B,MAAM,YAAY,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,wDAAwD,YAAY,GAAG,CACxE,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,iBAAiB,CAAC,IAAY,EAAE,OAA2B,EAAE,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI;QACnF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,wFAAwF,CACzF,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5B,OAAO,GAAG,KAAK,SAAS,CAAC;QAC3B,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACzB,4FAA4F,CAC7F,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACnB,OAAO,GAAG,KAAK,SAAS,CAAC;IAC3B,CAAC;IAED,oDAAoD;IAEpD,aAAa,CAAC,EAAU,EAAE,WAAmB,EAAE,IAAI,GAAG,EAAE;QACtD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,YAAY,CAAC,EAAU;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,UAAU,CAAC,EAAU;QACnB,OAAQ,IAAI,CAAC,EAAE,CAAC,OAAO,CACrB,qCAAqC,CACtC,CAAC,GAAG,CAAC,EAAE,CAA4B,IAAI,IAAI,CAAC;IAC/C,CAAC;IAED,iBAAiB;QACf,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,yEAAyE,CAC1E,CAAC,GAAG,EAAkB,CAAC;IAC1B,CAAC;IAED,kBAAkB,CAAC,EAAU,EAAE,KAAoD;QACjF,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAc,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAAC,CAAC;QACjG,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC;QACpG,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACtF,CAAC;IAED,iBAAiB,CAAC,WAAW,GAAG,EAAE;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACzD,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,mEAAmE,CACpE,CAAC,GAAG,CAAC,MAAM,CAAiB,CAAC;IAChC,CAAC;IAED,oDAAoD;IAEpD,cAAc,CAAC,GAMd;QACC,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACrE,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QACxC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAKf,CAAC,CAAC,GAAG,CACJ,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE,EACpC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE,EACxC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAC/B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAC,EAClC,GAAG,CAAC,UAAU,IAAI,CAAC,EAAE,GAAG,CAAC,UAAU,IAAI,GAAG,EAC1C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,GAAG,CAC9C,CAAC;QAEF,+BAA+B;QAC/B,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5C,MAAM,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACnC,oFAAoF,CACrF,CAAC;YACF,KAAK,MAAM,OAAO,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;gBACnC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE;YAC7C,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC;SACtF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,cAAc,CAAC,EAAE,CAAE,CAAC;IAClC,CAAC;IAED,cAAc,CAAC,EAAU;QACvB,OAAQ,IAAI,CAAC,EAAE,CAAC,OAAO,CACrB,yCAAyC,CAC1C,CAAC,GAAG,CAAC,EAAE,CAAgC,IAAI,IAAI,CAAC;IACnD,CAAC;IAED,gBAAgB,CAAC,MAGhB;QACC,MAAM,UAAU,GAAa,EAAE,CAAC;QAChC,MAAM,IAAI,GAAc,EAAE,CAAC;QAE3B,IAAI,MAAM,EAAE,SAAS,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAAC,CAAC;QAC5F,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QACrF,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;YAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAC5E,IAAI,MAAM,EAAE,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,MAAM,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC7B,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;gBACnC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,IAAI,GAAG,GAAG,gCAAgC,CAAC;QAC3C,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;YACpB,GAAG,IAAI,2DAA2D,CAAC;YACnE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YAClC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,GAAG,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC9C,CAAC;QACD,GAAG,IAAI,4BAA4B,CAAC;QACpC,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;YAAC,GAAG,IAAI,UAAU,CAAC;YAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAAC,CAAC;QAElE,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAqB,CAAC;IAC/D,CAAC;IAED,wBAAwB,CAAC,OAAe,EAAE,KAAK,GAAG,EAAE;QAClD,OAAO,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,0BAA0B,CAAC,OAAe;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAK3B,CAAC,CAAC,GAAG,CAAC,OAAO,CAA8B,CAAC;QAC7C,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED,yBAAyB,CAAC,KAAa;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC1B,mEAAmE,CACpE,CAAC,GAAG,CAAC,KAAK,CAA+B,CAAC;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAED,uBAAuB,CAAC,KAAa,EAAE,QAAgB;QACrD,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,oDAAoD,CACrD,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAED,6BAA6B,CAAC,OAAe,EAAE,aAAa,GAAG,CAAC;QAC9D,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAItB,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAqB,CAAC;IACrD,CAAC;IAED,oGAAoG;IACpG,oBAAoB,CAAC,OAAe,EAAE,eAAe,GAAG,CAAC,EAAE,WAAW,GAAG,CAAC;QAMxE,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;;;;;;;;KAa5B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,eAAe,EAAE,WAAW,CAK1C,CAAC;QAEH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACpB,OAAO,EAAE,CAAC,CAAC,OAAO;YAClB,gBAAgB,EAAE,CAAC,CAAC,iBAAiB;YACrC,YAAY,EAAE,CAAC,CAAC,aAAa;YAC7B,cAAc,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;SACtE,CAAC,CAAC,CAAC;IACN,CAAC;IAED,oDAAoD;IAEpD,aAAa,CAAC,OAGZ;QACA,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAG9B,CAAC,CAAC;QACH,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CACR,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EACrC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,SAAS,CACzE,CAAC;QACJ,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,gCAAgC,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC,CAAE,CAAC,SAAS,EAAE,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IAED,iBAAiB,CAAC,SAAiB;QACjC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,mEAAmE,CACpE,CAAC,GAAG,CAAC,SAAS,CAAgB,CAAC;IAClC,CAAC;IAED,oDAAoD;IAEpD,WAAW,CAAC,EAIX;QACC,MAAM,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,MAAM,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACnE,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CACJ,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,EACnC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,CAAC,OAAO,EACnD,EAAE,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE,CAC3B,CAAC;QACF,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,oBAAoB,CAAC,QAAgB;QAInC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,oEAAoE,CACrE,CAAC,GAAG,CAAC,QAAQ,CAAU,CAAC;IAC3B,CAAC;IAED,oDAAoD;IAEpD,YAAY,CAAC,QAAgB,EAAE,UAAkB,EAAE,SAAkB;QACnE,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3D,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;KAGf,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,IAAI,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAKf,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,oDAAoD;IAEpD,aAAa,CAAC,KAGb;QACC,MAAM,EAAE,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QAC5D,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAIf,CAAC,CAAC,GAAG,CACJ,EAAE,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAC/B,KAAK,CAAC,UAAU,IAAI,IAAI,EAAE,KAAK,CAAC,UAAU,IAAI,IAAI,EAClD,KAAK,CAAC,WAAW,IAAI,IAAI,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI,EACpD,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAC/B,CAAC;IACJ,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,gEAAgE;QAChE,IAAI,OAAO,GAAqB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC;QAExB,8CAA8C;QAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAClC,OAAO,OAAO,EAAE,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACxB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC1C,IAAI,CAAC,IAAI;gBAAE,MAAM;YACjB,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;QAED,iDAAiD;QACjD,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,OAAO,EAAE,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,CAAC;QAEvB,IAAI,IAAI,GAAqB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YACvC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjB,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,QAAgB;QAK/B,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,2EAA2E,CAC5E,CAAC,GAAG,CAAC,QAAQ,CAAU,CAAC;IAC3B,CAAC;IAED,oDAAoD;IAEpD,oBAAoB,CAAC,QAAgB,EAAE,IAGtC;QACC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;KAKf,CAAC,CAAC,GAAG,CACJ,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EACxD,IAAI,CAAC,mBAAmB,EAAE,IAAI,CAAC,aAAa,IAAI,IAAI,EACpD,IAAI,CAAC,YAAY,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CACnC,CAAC;IACJ,CAAC;IAED,sBAAsB,CAAC,SAAiB;QACtC,OAAO,IAAI,CAAC,EAAE,CAAC,OAAO,CACpB,kFAAkF,CACnF,CAAC,GAAG,CAAC,SAAS,CAAgD,CAAC;IAClE,CAAC;IAED,iBAAiB,CAAC,QAAgB;QAKhC,OAAQ,IAAI,CAAC,EAAE,CAAC,OAAO,CACrB,oDAAoD,CACrD,CAAC,GAAG,CAAC,QAAQ,CAAS,IAAI,IAAI,CAAC;IAClC,CAAC;IAED,qBAAqB,CAAC,MAAiB;QAGrC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;QAC5D,MAAM,UAAU,GAAG,IAAI,CAAC;QACxB,MAAM,MAAM,GAAG,UAAU,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;QACzD,MAAM,gBAAgB,GAA2B;YAC/C,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG;SAC7D,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,CAAC,UAAU,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;QAC9E,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAC/D,MAAM,kBAAkB,GAAG,CAAC,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,QAAQ,GAAG,aAAa,GAAG,kBAAkB,CAAC;QAC5D,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,kBAAkB,EAAE,CAAC;IAChE,CAAC;IAED,iBAAiB,CAAC,OAAgB;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QAEvD,oDAAoD;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;;;KAMlC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAgB,CAAC;QAE3B,IAAI,IAAI,GAAG,CAAC,EAAE,UAAU,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC;QAE1C,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,6CAA6C;YAC7C,IAAI,GAAG,CAAC,UAAU,IAAI,IAAI,IAAI,GAAG,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;gBACnD,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;gBAClF,OAAO,EAAE,CAAC;gBACV,SAAS;YACX,CAAC;YAED,uCAAuC;YACvC,MAAM,WAAW,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAClC,0DAA0D,CAC3D,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAmB,CAAC,CAAC,CAAC;YAElC,MAAM,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;YAClD,IAAI,WAAW,KAAK,CAAC,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;gBACtC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBACpF,OAAO,EAAE,CAAC;gBACV,SAAS;YACX,CAAC;YAED,0BAA0B;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,EAAE,EAAE;gBAChC,KAAK,EAAE,SAAS,CAAC,KAAK;gBACtB,QAAQ,EAAE,SAAS,CAAC,QAAQ;gBAC5B,cAAc,EAAE,SAAS,CAAC,aAAa;gBACvC,mBAAmB,EAAE,SAAS,CAAC,kBAAkB;gBACjD,YAAY,EAAE,WAAW;aAC1B,CAAC,CAAC;YAEH,kBAAkB;YAClB,IAAI,SAAS,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;gBAC3B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC/G,IAAI,EAAE,CAAC;YACT,CAAC;iBAAM,IAAI,SAAS,CAAC,KAAK,IAAI,GAAG,EAAE,CAAC;gBAClC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,2EAA2E,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACzG,UAAU,EAAE,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACnF,IAAI,CAAC,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,mBAAmB,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACnH,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,MAAM,cAAc,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACpC,oFAAoF,CACrF,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEvB,6BAA6B;QAC7B,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACnD,MAAM,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CACnC,mEAAmE,CACpE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEpB,MAAM,KAAK,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC;QAC9I,OAAO,CAAC,GAAG,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAC7D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,oDAAoD;IAEpD,UAAU,CAAC,EAAU,EAAE,SAAiB;QACtC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,iDAAiD,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IACxF,CAAC;IAED,cAAc;QACZ,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACnD,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,mEAAmE,CACpE,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC7B,gHAAgH,CACjH,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEX,MAAM,eAAe,GAAG,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAChC,uFAAuF,CACxF,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEvB,IAAI,CAAC,EAAE,CAAC,OAAO,CACb,oFAAoF,CACrF,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEvB,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;IACtE,CAAC;IAED,iBAAiB;QACf,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAC5B,+FAA+F,CAChG,CAAC,GAAG,EAAE,CAAC;QACR,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;IACrC,CAAC;IAED,oDAAoD;IAEpD,KAAK;QACH,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;CACF;AAED,0DAA0D;AAE1D,SAAS,YAAY,CAAC,GAAW;IAC/B,OAAO,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -0,0 +1,10 @@
1
+ export interface ProjectRootCheck {
2
+ valid: boolean;
3
+ reason: string;
4
+ hasPackageJson: boolean;
5
+ hasNodeModules: boolean;
6
+ }
7
+ export declare function validateProjectRoot(rootPath: string): ProjectRootCheck;
8
+ export declare function hasForceInitSentinel(rootPath: string): boolean;
9
+ export declare function writeForceInitSentinel(rootPath: string): void;
10
+ //# sourceMappingURL=project-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-validator.d.ts","sourceRoot":"","sources":["../src/project-validator.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAwBtE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAK7D"}
@@ -0,0 +1,36 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ export function validateProjectRoot(rootPath) {
4
+ const pkgJson = join(rootPath, 'package.json');
5
+ const nodeModules = join(rootPath, 'node_modules');
6
+ const hasPkg = existsSync(pkgJson);
7
+ const hasNM = existsSync(nodeModules);
8
+ if (!hasPkg) {
9
+ return {
10
+ valid: false,
11
+ reason: 'No package.json found. Not a project directory.',
12
+ hasPackageJson: false,
13
+ hasNodeModules: false,
14
+ };
15
+ }
16
+ if (!hasNM) {
17
+ return {
18
+ valid: false,
19
+ reason: 'No node_modules found. Project dependencies not installed.',
20
+ hasPackageJson: true,
21
+ hasNodeModules: false,
22
+ };
23
+ }
24
+ return { valid: true, reason: '', hasPackageJson: true, hasNodeModules: true };
25
+ }
26
+ export function hasForceInitSentinel(rootPath) {
27
+ return existsSync(join(rootPath, '.devflow', '.force-init'));
28
+ }
29
+ export function writeForceInitSentinel(rootPath) {
30
+ const { mkdirSync, writeFileSync } = require('node:fs');
31
+ const dir = join(rootPath, '.devflow');
32
+ if (!existsSync(dir))
33
+ mkdirSync(dir, { recursive: true });
34
+ writeFileSync(join(dir, '.force-init'), String(Date.now()), 'utf-8');
35
+ }
36
+ //# sourceMappingURL=project-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-validator.js","sourceRoot":"","sources":["../src/project-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AASjC,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;IAEtC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,iDAAiD;YACzD,cAAc,EAAE,KAAK;YACrB,cAAc,EAAE,KAAK;SACtB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,4DAA4D;YACpE,cAAc,EAAE,IAAI;YACpB,cAAc,EAAE,KAAK;SACtB,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;AACjF,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAgB;IACnD,OAAO,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;AAC/D,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IACvC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { MemoryStore } from './memory-store.js';
2
+ export interface SummarizerResult {
3
+ observationCount: number;
4
+ provider: string;
5
+ latencyMs: number;
6
+ groupsProcessed: number;
7
+ groupsSkipped: number;
8
+ }
9
+ export declare function summarizeSession(store: MemoryStore, sessionId: string, projectRoot: string): Promise<SummarizerResult>;
10
+ //# sourceMappingURL=session-summarizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-summarizer.d.ts","sourceRoot":"","sources":["../src/session-summarizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAY,MAAM,mBAAmB,CAAC;AAiC/D,MAAM,WAAW,gBAAgB;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,wBAAsB,gBAAgB,CACpC,KAAK,EAAE,WAAW,EAClB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,gBAAgB,CAAC,CAuG3B"}
@@ -0,0 +1,197 @@
1
+ import { groupEvents, triageGroups } from './event-grouper.js';
2
+ import { callLLM } from './llm-provider.js';
3
+ // ── Prompt Templates ───────────────────────────────────
4
+ const SUMMARY_SYSTEM = `You are a session summarizer for DevFlow, a developer toolchain AI.
5
+ Your task is to analyze groups of tool-call events from a coding session and extract structured observations.
6
+
7
+ For each group, produce ONE observation (omit groups with no meaningful insight).
8
+
9
+ Output a JSON array of observations. Each observation:
10
+ - type: one of "error_resolution" | "error_unresolved" | "config_discovery" | "tool_first_use" | "decision_made" | "user_insight" | "file_operation" | "session_summary"
11
+ - title: short summary (≤80 chars, in English)
12
+ - narrative: 1-2 sentence description of what happened and why it matters
13
+ - facts: array of strings — specific factual statements
14
+ - concepts: array of 1-5 key concepts/topics (lowercase, single words or short phrases)
15
+ - importance: 1-10 (10 = critical fix or key decision, 5 = notable, 1 = trivial)
16
+ - confidence: 0.0-1.0
17
+
18
+ Rules:
19
+ - Focus on WHAT WAS LEARNED, not what was executed
20
+ - Errors + their fixes = high signal (importance 7-10)
21
+ - Config discoveries = medium signal (importance 5-7)
22
+ - Routine operations (ls, cat, cd) = skip
23
+ - Translate non-English content to English
24
+ - Return ONLY the JSON array, no markdown, no explanation
25
+
26
+ Example:
27
+ [{"type":"error_resolution","title":"Fixed ENOENT when running prisma generate","narrative":"Prisma CLI was not found in PATH. The fix was to use npx prisma generate instead of direct prisma command.","facts":["Prisma CLI not in global PATH","npx prisma generate resolves the issue"],"concepts":["prisma","cli","npx","path"],"importance":8,"confidence":0.9}]`;
28
+ export async function summarizeSession(store, sessionId, projectRoot) {
29
+ const start = Date.now();
30
+ console.log('[SessionSummarizer] Starting', { sessionId, project: projectRoot });
31
+ // 1. Load events
32
+ const events = store.getSessionEvents(sessionId);
33
+ if (events.length === 0) {
34
+ console.log('[SessionSummarizer] No events for session', { sessionId });
35
+ return { observationCount: 0, provider: 'none', latencyMs: 0, groupsProcessed: 0, groupsSkipped: 0 };
36
+ }
37
+ // 2. Group events
38
+ const allGroups = groupEvents(events);
39
+ // 3. Triage groups
40
+ const selectedGroups = triageGroups(allGroups);
41
+ if (selectedGroups.length === 0) {
42
+ console.log('[SessionSummarizer] No groups passed triage', { sessionId, totalGroups: allGroups.length });
43
+ // Write a minimal session summary observation
44
+ const summary = buildMinimalSummary(events);
45
+ store.addObservation({
46
+ sessionId,
47
+ project: projectRoot,
48
+ type: 'session_summary',
49
+ title: `${events.length} tool calls in session`,
50
+ narrative: summary,
51
+ importance: 3,
52
+ confidence: 0.5,
53
+ });
54
+ return {
55
+ observationCount: 1,
56
+ provider: 'rules',
57
+ latencyMs: Date.now() - start,
58
+ groupsProcessed: allGroups.length,
59
+ groupsSkipped: allGroups.length,
60
+ };
61
+ }
62
+ // 4. Build prompt
63
+ const prompt = buildSummaryPrompt(selectedGroups);
64
+ const systemPrompt = SUMMARY_SYSTEM;
65
+ // 5. LLM call
66
+ const llmResult = await callLLM(systemPrompt, prompt);
67
+ // 6. Parse and write observations
68
+ const observations = parseObservations(llmResult.content, sessionId, projectRoot);
69
+ console.log('[SessionSummarizer] LLM extraction complete', {
70
+ sessionId,
71
+ provider: llmResult.provider,
72
+ rawResponseLength: llmResult.content.length,
73
+ parsedCount: observations.length,
74
+ });
75
+ if (observations.length === 0) {
76
+ // Fallback: write rule-based summary
77
+ const summary = selectedGroups.map(g => g.summary).join('; ');
78
+ store.addObservation({
79
+ sessionId,
80
+ project: projectRoot,
81
+ type: 'session_summary',
82
+ title: `${selectedGroups.length} significant event groups`,
83
+ narrative: summary,
84
+ importance: 4,
85
+ confidence: 0.4,
86
+ });
87
+ return {
88
+ observationCount: 1,
89
+ provider: 'rules',
90
+ latencyMs: Date.now() - start,
91
+ groupsProcessed: selectedGroups.length,
92
+ groupsSkipped: 0,
93
+ };
94
+ }
95
+ // 7. Write observations
96
+ for (const obs of observations) {
97
+ store.addObservation({
98
+ ...obs,
99
+ sessionId,
100
+ project: projectRoot,
101
+ });
102
+ }
103
+ console.log('[SessionSummarizer] Observations written', {
104
+ sessionId,
105
+ count: observations.length,
106
+ typeDistribution: observations.reduce((acc, o) => {
107
+ acc[o.type] = (acc[o.type] ?? 0) + 1;
108
+ return acc;
109
+ }, {}),
110
+ });
111
+ return {
112
+ observationCount: observations.length,
113
+ provider: llmResult.provider,
114
+ latencyMs: Date.now() - start,
115
+ groupsProcessed: selectedGroups.length,
116
+ groupsSkipped: allGroups.length - selectedGroups.length,
117
+ };
118
+ }
119
+ // ── Prompt Builder ─────────────────────────────────────
120
+ function buildSummaryPrompt(groups) {
121
+ const parts = [];
122
+ parts.push(`Session has ${groups.length} significant event groups.`);
123
+ parts.push('');
124
+ for (let i = 0; i < groups.length; i++) {
125
+ const g = groups[i];
126
+ parts.push(`Group ${i + 1}: ${g.summary}`);
127
+ parts.push(` Error: ${g.hasError ? 'yes' : 'no'}, Has fix: ${g.hasFix ? 'yes' : 'no'}`);
128
+ parts.push(` Size: ${g.events.length} events, Primary tool: ${g.primaryTool}`);
129
+ if (g.signalTypes.length > 0) {
130
+ parts.push(` Signals: ${g.signalTypes.join(', ')}`);
131
+ }
132
+ // Include key event details (up to 5)
133
+ const keyEvents = g.events.filter(e => {
134
+ const cmd = e.command ?? '';
135
+ return !cmd.startsWith('ls ') && !cmd.startsWith('cd ') && !cmd.startsWith('cat ');
136
+ }).slice(0, 5);
137
+ for (const e of keyEvents) {
138
+ const tool = e.tool === 'Bash' ? `bash:${e.command?.split(' ')[0] ?? ''}` : e.tool;
139
+ const errTag = e.exit_code !== null && e.exit_code !== 0 ? ' [FAILED]' : '';
140
+ parts.push(` - ${tool}${errTag}`);
141
+ }
142
+ parts.push('');
143
+ }
144
+ return parts.join('\n');
145
+ }
146
+ function parseObservations(raw, sessionId, project) {
147
+ // Strip markdown fences
148
+ let cleaned = raw.trim();
149
+ cleaned = cleaned.replace(/```(?:json)?\s*\n?/gi, '');
150
+ cleaned = cleaned.replace(/```/g, '');
151
+ cleaned = cleaned.trim();
152
+ // Extract JSON array
153
+ const arrayMatch = cleaned.match(/\[[\s\S]*\]/);
154
+ if (!arrayMatch) {
155
+ console.warn('[SessionSummarizer] No JSON array found in LLM response', {
156
+ sessionId,
157
+ responsePreview: cleaned.slice(0, 200),
158
+ });
159
+ return [];
160
+ }
161
+ try {
162
+ const parsed = JSON.parse(arrayMatch[0]);
163
+ if (!Array.isArray(parsed))
164
+ return [];
165
+ return parsed.filter(o => o.title && o.type);
166
+ }
167
+ catch (err) {
168
+ console.warn('[SessionSummarizer] Failed to parse LLM JSON', {
169
+ sessionId,
170
+ error: err.message,
171
+ snippet: arrayMatch[0].slice(0, 200),
172
+ });
173
+ return [];
174
+ }
175
+ }
176
+ // ── Rule Fallback Summary ──────────────────────────────
177
+ function buildMinimalSummary(events) {
178
+ if (events.length === 0)
179
+ return 'No events in session.';
180
+ const tools = new Set(events.map(e => e.tool));
181
+ const bashCommands = events
182
+ .filter(e => e.tool === 'Bash' && e.command)
183
+ .map(e => e.command.split(' ')[0])
184
+ .filter(Boolean);
185
+ const errorCount = events.filter(e => e.exit_code !== null && e.exit_code !== undefined && e.exit_code !== 0).length;
186
+ const parts = [];
187
+ parts.push(`Session had ${events.length} tool calls across ${tools.size} tools`);
188
+ if (bashCommands.length > 0) {
189
+ const topCommands = [...new Set(bashCommands)].slice(0, 5).join(', ');
190
+ parts.push(`Commands used: ${topCommands}`);
191
+ }
192
+ if (errorCount > 0) {
193
+ parts.push(`${errorCount} errors encountered`);
194
+ }
195
+ return parts.join('. ') + '.';
196
+ }
197
+ //# sourceMappingURL=session-summarizer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-summarizer.js","sourceRoot":"","sources":["../src/session-summarizer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ export interface BufferedEvent {
2
+ id: string;
3
+ toolName: string;
4
+ command?: string;
5
+ exitCode?: number;
6
+ stderr?: string;
7
+ durationMs: number;
8
+ timestamp: number;
9
+ userMessage?: string;
10
+ aiResponse?: string;
11
+ protected: boolean;
12
+ scores: {
13
+ l1: number;
14
+ l1_5: number;
15
+ l2?: number;
16
+ };
17
+ }
18
+ export declare class SignalBuffer {
19
+ private events;
20
+ private maxSize;
21
+ private cumulativeScore;
22
+ private compactWatermark;
23
+ push(event: BufferedEvent): void;
24
+ private evictOne;
25
+ /** Bump the dialog score of the most recent `n` events by `score`. */
26
+ bumpLatest(n: number, score: number): void;
27
+ getNewSinceLastCompact(): BufferedEvent[];
28
+ getCumulativeScore(): number;
29
+ getHighValueEvents(threshold: number): BufferedEvent[];
30
+ /**
31
+ * Returns top 20 events with cumulative score 0.3-0.5 for L2 LLM evaluation.
32
+ * Overflow events: score >= 0.4 → marked for direct write, < 0.4 → dropped.
33
+ */
34
+ getL2Candidates(): {
35
+ candidates: BufferedEvent[];
36
+ directWrite: BufferedEvent[];
37
+ };
38
+ drain(): BufferedEvent[];
39
+ get size(): number;
40
+ getAll(): readonly BufferedEvent[];
41
+ }
42
+ //# sourceMappingURL=signal-buffer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-buffer.d.ts","sourceRoot":"","sources":["../src/signal-buffer.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE;QACN,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,CAAC;CACH;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,OAAO,CAAO;IACtB,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,gBAAgB,CAAK;IAE7B,IAAI,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI;IAShC,OAAO,CAAC,QAAQ;IAkChB,sEAAsE;IACtE,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAY1C,sBAAsB,IAAI,aAAa,EAAE;IAMzC,kBAAkB,IAAI,MAAM;IAI5B,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,aAAa,EAAE;IAItD;;;OAGG;IACH,eAAe,IAAI;QAAE,UAAU,EAAE,aAAa,EAAE,CAAC;QAAC,WAAW,EAAE,aAAa,EAAE,CAAA;KAAE;IAoBhF,KAAK,IAAI,aAAa,EAAE;IAQxB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,MAAM,IAAI,SAAS,aAAa,EAAE;CAGnC"}
@@ -0,0 +1,104 @@
1
+ export class SignalBuffer {
2
+ events = [];
3
+ maxSize = 500;
4
+ cumulativeScore = 0;
5
+ compactWatermark = 0;
6
+ push(event) {
7
+ event.protected = event.scores.l1 >= 0.3;
8
+ this.events.push(event);
9
+ this.cumulativeScore += event.scores.l1 + event.scores.l1_5;
10
+ if (this.events.length > this.maxSize) {
11
+ this.evictOne();
12
+ }
13
+ }
14
+ evictOne() {
15
+ // Phase 1: discard oldest unprotected event
16
+ for (let i = 0; i < this.events.length; i++) {
17
+ const e = this.events[i];
18
+ if (e && !e.protected) {
19
+ this.cumulativeScore -= e.scores.l1 + e.scores.l1_5;
20
+ this.events.splice(i, 1);
21
+ // Adjust watermark if we removed an event before it
22
+ if (i < this.compactWatermark) {
23
+ this.compactWatermark--;
24
+ }
25
+ return;
26
+ }
27
+ }
28
+ // Phase 2: all protected — discard lowest-score protected event
29
+ let minIdx = 0;
30
+ let minScore = Infinity;
31
+ for (let i = 0; i < this.events.length; i++) {
32
+ const score = this.events[i].scores.l1 + this.events[i].scores.l1_5;
33
+ if (score < minScore) {
34
+ minScore = score;
35
+ minIdx = i;
36
+ }
37
+ }
38
+ const removed = this.events[minIdx];
39
+ if (removed) {
40
+ this.cumulativeScore -= removed.scores.l1 + removed.scores.l1_5;
41
+ this.events.splice(minIdx, 1);
42
+ if (minIdx < this.compactWatermark) {
43
+ this.compactWatermark--;
44
+ }
45
+ }
46
+ }
47
+ /** Bump the dialog score of the most recent `n` events by `score`. */
48
+ bumpLatest(n, score) {
49
+ const start = Math.max(0, this.events.length - n);
50
+ for (let i = start; i < this.events.length; i++) {
51
+ const e = this.events[i];
52
+ if (e) {
53
+ this.cumulativeScore -= e.scores.l1_5;
54
+ e.scores.l1_5 = Math.max(e.scores.l1_5, score);
55
+ this.cumulativeScore += e.scores.l1_5;
56
+ }
57
+ }
58
+ }
59
+ getNewSinceLastCompact() {
60
+ const newEvents = this.events.slice(this.compactWatermark);
61
+ this.compactWatermark = this.events.length;
62
+ return newEvents;
63
+ }
64
+ getCumulativeScore() {
65
+ return this.cumulativeScore;
66
+ }
67
+ getHighValueEvents(threshold) {
68
+ return this.events.filter(e => (e.scores.l1 + e.scores.l1_5) >= threshold);
69
+ }
70
+ /**
71
+ * Returns top 20 events with cumulative score 0.3-0.5 for L2 LLM evaluation.
72
+ * Overflow events: score >= 0.4 → marked for direct write, < 0.4 → dropped.
73
+ */
74
+ getL2Candidates() {
75
+ const eligible = this.events.filter(e => {
76
+ const score = e.scores.l1 + e.scores.l1_5;
77
+ return score >= 0.3 && score < 0.5;
78
+ });
79
+ eligible.sort((a, b) => (b.scores.l1 + b.scores.l1_5) - (a.scores.l1 + a.scores.l1_5));
80
+ const candidates = eligible.slice(0, 20);
81
+ const overflow = eligible.slice(20);
82
+ const directWrite = [];
83
+ for (const e of overflow) {
84
+ if (e.scores.l1 >= 0.4) {
85
+ directWrite.push(e);
86
+ }
87
+ }
88
+ return { candidates, directWrite };
89
+ }
90
+ drain() {
91
+ const events = [...this.events];
92
+ this.events = [];
93
+ this.cumulativeScore = 0;
94
+ this.compactWatermark = 0;
95
+ return events;
96
+ }
97
+ get size() {
98
+ return this.events.length;
99
+ }
100
+ getAll() {
101
+ return this.events;
102
+ }
103
+ }
104
+ //# sourceMappingURL=signal-buffer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-buffer.js","sourceRoot":"","sources":["../src/signal-buffer.ts"],"names":[],"mappings":"AAkBA,MAAM,OAAO,YAAY;IACf,MAAM,GAAoB,EAAE,CAAC;IAC7B,OAAO,GAAG,GAAG,CAAC;IACd,eAAe,GAAG,CAAC,CAAC;IACpB,gBAAgB,GAAG,CAAC,CAAC;IAE7B,IAAI,CAAC,KAAoB;QACvB,KAAK,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,CAAC;QACzC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClB,CAAC;IACH,CAAC;IAEO,QAAQ;QACd,4CAA4C;QAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;gBACtB,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBACpD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACzB,oDAAoD;gBACpD,IAAI,CAAC,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBAC9B,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,CAAC;gBACD,OAAO;YACT,CAAC;QACH,CAAC;QACD,gEAAgE;QAChE,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,QAAQ,GAAG,QAAQ,CAAC;QACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC,MAAM,CAAC,IAAI,CAAC;YACtE,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;gBACrB,QAAQ,GAAG,KAAK,CAAC;gBACjB,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;QACH,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAChE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YAC9B,IAAI,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC1B,CAAC;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,UAAU,CAAC,CAAS,EAAE,KAAa;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClD,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAChD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,EAAE,CAAC;gBACN,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBACtC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC/C,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAED,sBAAsB;QACpB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC3D,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC3C,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,kBAAkB,CAAC,SAAiB;QAClC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YACtC,MAAM,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;YAC1C,OAAO,KAAK,IAAI,GAAG,IAAI,KAAK,GAAG,GAAG,CAAC;QACrC,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrB,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAC9D,CAAC;QAEF,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACpC,MAAM,WAAW,GAAoB,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YACzB,IAAI,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;IACrC,CAAC;IAED,KAAK;QACH,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;QACzB,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;QAC1B,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF"}
@@ -0,0 +1,39 @@
1
+ export declare const SIGNAL_TYPES: readonly ["user_explicit_save", "user_correction", "user_frustration", "fix_confirmed", "error_loop", "error_first_encounter", "config_surface", "novel_tool", "file_touch_cluster", "long_running", "context_switch", "merge_conflict", "test_failure", "rollback"];
2
+ export type SignalType = (typeof SIGNAL_TYPES)[number];
3
+ export interface Signal {
4
+ id: string;
5
+ type: SignalType;
6
+ strength: number;
7
+ sourceEventIds: string[];
8
+ payload: Record<string, unknown>;
9
+ timestamp: number;
10
+ sessionId: string;
11
+ }
12
+ export interface ToolEvent {
13
+ id: string;
14
+ sessionId: string;
15
+ tool: string;
16
+ command?: string;
17
+ exitCode?: number;
18
+ stderr?: string;
19
+ durationMs?: number;
20
+ createdAt: number;
21
+ }
22
+ export interface UserMessage {
23
+ text: string;
24
+ timestamp: number;
25
+ sessionId: string;
26
+ }
27
+ export declare class SignalDetector {
28
+ private knownTools;
29
+ private seenErrors;
30
+ private fileTouchWindow;
31
+ reset(): void;
32
+ detect(event: ToolEvent, recentEvents: ToolEvent[], userMessage?: UserMessage): Signal[];
33
+ private detectCheap;
34
+ private detectMedium;
35
+ private detectExpensive;
36
+ private makeSignal;
37
+ private extractErrorKey;
38
+ }
39
+ //# sourceMappingURL=signal-detector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-detector.d.ts","sourceRoot":"","sources":["../src/signal-detector.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,YAAY,sQAMf,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAID,qBAAa,cAAc;IACzB,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,eAAe,CAAkD;IAEzE,KAAK,IAAI,IAAI;IAQb,MAAM,CACJ,KAAK,EAAE,SAAS,EAChB,YAAY,EAAE,SAAS,EAAE,EACzB,WAAW,CAAC,EAAE,WAAW,GACxB,MAAM,EAAE;IAiBX,OAAO,CAAC,WAAW;IA2FnB,OAAO,CAAC,YAAY;IAgEpB,OAAO,CAAC,eAAe;IAoDvB,OAAO,CAAC,UAAU;IAiBlB,OAAO,CAAC,eAAe;CAgBxB"}