pmem-ai 0.7.4 → 0.7.6

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 (100) hide show
  1. package/CHANGELOG.md +37 -0
  2. package/README.md +45 -0
  3. package/dist/commands/context.d.ts.map +1 -1
  4. package/dist/commands/context.js +34 -19
  5. package/dist/commands/context.js.map +1 -1
  6. package/dist/commands/decision.d.ts +8 -0
  7. package/dist/commands/decision.d.ts.map +1 -0
  8. package/dist/commands/decision.js +112 -0
  9. package/dist/commands/decision.js.map +1 -0
  10. package/dist/commands/init.d.ts.map +1 -1
  11. package/dist/commands/init.js +4 -0
  12. package/dist/commands/init.js.map +1 -1
  13. package/dist/commands/module.d.ts +8 -0
  14. package/dist/commands/module.d.ts.map +1 -0
  15. package/dist/commands/module.js +108 -0
  16. package/dist/commands/module.js.map +1 -0
  17. package/dist/commands/new.js +1 -1
  18. package/dist/commands/new.js.map +1 -1
  19. package/dist/commands/rebuild.d.ts.map +1 -1
  20. package/dist/commands/rebuild.js +57 -2
  21. package/dist/commands/rebuild.js.map +1 -1
  22. package/dist/commands/recall.d.ts +4 -1
  23. package/dist/commands/recall.d.ts.map +1 -1
  24. package/dist/commands/recall.js +14 -128
  25. package/dist/commands/recall.js.map +1 -1
  26. package/dist/commands/relations.d.ts +46 -0
  27. package/dist/commands/relations.d.ts.map +1 -0
  28. package/dist/commands/relations.js +166 -0
  29. package/dist/commands/relations.js.map +1 -0
  30. package/dist/commands/status.d.ts.map +1 -1
  31. package/dist/commands/status.js +154 -4
  32. package/dist/commands/status.js.map +1 -1
  33. package/dist/commands/sync.d.ts.map +1 -1
  34. package/dist/commands/sync.js +6 -1
  35. package/dist/commands/sync.js.map +1 -1
  36. package/dist/commands/update.d.ts +18 -0
  37. package/dist/commands/update.d.ts.map +1 -1
  38. package/dist/commands/update.js +191 -46
  39. package/dist/commands/update.js.map +1 -1
  40. package/dist/commands/verify.d.ts.map +1 -1
  41. package/dist/commands/verify.js +377 -280
  42. package/dist/commands/verify.js.map +1 -1
  43. package/dist/core/capture.d.ts.map +1 -1
  44. package/dist/core/capture.js +72 -55
  45. package/dist/core/capture.js.map +1 -1
  46. package/dist/core/consistency.d.ts.map +1 -1
  47. package/dist/core/consistency.js +2 -0
  48. package/dist/core/consistency.js.map +1 -1
  49. package/dist/core/decisionInfer.d.ts +27 -0
  50. package/dist/core/decisionInfer.d.ts.map +1 -0
  51. package/dist/core/decisionInfer.js +190 -0
  52. package/dist/core/decisionInfer.js.map +1 -0
  53. package/dist/core/format.js +134 -11
  54. package/dist/core/format.js.map +1 -1
  55. package/dist/core/fs.d.ts +27 -0
  56. package/dist/core/fs.d.ts.map +1 -1
  57. package/dist/core/fs.js +72 -0
  58. package/dist/core/fs.js.map +1 -1
  59. package/dist/core/moduleInfer.d.ts +13 -0
  60. package/dist/core/moduleInfer.d.ts.map +1 -0
  61. package/dist/core/moduleInfer.js +252 -0
  62. package/dist/core/moduleInfer.js.map +1 -0
  63. package/dist/core/next.d.ts +30 -0
  64. package/dist/core/next.d.ts.map +1 -0
  65. package/dist/core/next.js +193 -0
  66. package/dist/core/next.js.map +1 -0
  67. package/dist/core/query/context.d.ts.map +1 -1
  68. package/dist/core/query/context.js +35 -0
  69. package/dist/core/query/context.js.map +1 -1
  70. package/dist/core/query/recall.d.ts +28 -0
  71. package/dist/core/query/recall.d.ts.map +1 -1
  72. package/dist/core/query/recall.js +131 -25
  73. package/dist/core/query/recall.js.map +1 -1
  74. package/dist/core/query/status.d.ts +5 -1
  75. package/dist/core/query/status.d.ts.map +1 -1
  76. package/dist/core/query/status.js +143 -3
  77. package/dist/core/query/status.js.map +1 -1
  78. package/dist/core/state.d.ts +6 -0
  79. package/dist/core/state.d.ts.map +1 -0
  80. package/dist/core/state.js +147 -0
  81. package/dist/core/state.js.map +1 -0
  82. package/dist/core/symbols.d.ts +2 -0
  83. package/dist/core/symbols.d.ts.map +1 -0
  84. package/dist/core/symbols.js +147 -0
  85. package/dist/core/symbols.js.map +1 -0
  86. package/dist/core/traceParse.d.ts +14 -0
  87. package/dist/core/traceParse.d.ts.map +1 -0
  88. package/dist/core/traceParse.js +80 -0
  89. package/dist/core/traceParse.js.map +1 -0
  90. package/dist/core/traceSummary.d.ts +28 -0
  91. package/dist/core/traceSummary.d.ts.map +1 -0
  92. package/dist/core/traceSummary.js +265 -0
  93. package/dist/core/traceSummary.js.map +1 -0
  94. package/dist/index.js +67 -2
  95. package/dist/index.js.map +1 -1
  96. package/dist/mcp/server.js +2 -2
  97. package/dist/types.d.ts +69 -0
  98. package/dist/types.d.ts.map +1 -1
  99. package/package.json +4 -2
  100. package/skills/pmem/SKILL.md +17 -1
@@ -1 +1 @@
1
- {"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../src/commands/rebuild.ts"],"names":[],"mappings":"AAWA,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AASD,wBAAgB,cAAc,CAAC,OAAO,GAAE,cAAmB,GAAG,IAAI,CAidjE;AA8BD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ3D"}
1
+ {"version":3,"file":"rebuild.d.ts","sourceRoot":"","sources":["../../src/commands/rebuild.ts"],"names":[],"mappings":"AAWA,UAAU,cAAc;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AASD,wBAAgB,cAAc,CAAC,OAAO,GAAE,cAAmB,GAAG,IAAI,CAYjE;AAmfD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAQ3D"}
@@ -44,8 +44,23 @@ const hash_1 = require("../core/hash");
44
44
  const yaml_1 = require("../core/yaml");
45
45
  const PMEM_DIR = '.pmem';
46
46
  function rebuildCommand(options = {}) {
47
+ const pmemPath = path.join(process.cwd(), PMEM_DIR);
48
+ // v0.7.6 FIX-1 (issue #9): hold `.pmem/.lock` for the duration of the
49
+ // rebuild so a concurrent `pmem verify` waits (or reports `active_lock`)
50
+ // instead of reading a torn-down SQLite index and emitting transient
51
+ // `stale_index` warnings. `withLock` is reentrant — when invoked from
52
+ // `pmem update --confirm` (which already holds the lock) it just runs
53
+ // the body without an extra acquire/release round trip.
54
+ (0, fs_1.withLock)(pmemPath, () => {
55
+ rebuildLocked(pmemPath, options);
56
+ }, { timeoutMs: 30000, onTimeout: 'error' });
57
+ }
58
+ /**
59
+ * The actual rebuild body, run inside the `.pmem/.lock` critical section
60
+ * (see FIX-1 in `rebuildCommand`).
61
+ */
62
+ function rebuildLocked(pmemPath, options) {
47
63
  const cwd = process.cwd();
48
- const pmemPath = path.join(cwd, PMEM_DIR);
49
64
  const manifest = (0, manifest_1.loadManifest)(pmemPath);
50
65
  if (!manifest) {
51
66
  if ((0, fs_1.fileExists)(pmemPath)) {
@@ -202,7 +217,7 @@ function rebuildCommand(options = {}) {
202
217
  status: fm.status ?? null,
203
218
  priority: fm.priority ?? null,
204
219
  file_path: relPath,
205
- summary: null,
220
+ summary: extractCardSummary(fm, parsed.bodyText),
206
221
  schema_version: fm.schema_version ?? null,
207
222
  card_version: fm.version ?? 1,
208
223
  created_at: null,
@@ -523,4 +538,44 @@ function collectMdFiles(dir, results) {
523
538
  }
524
539
  }
525
540
  }
541
+ function extractCardSummary(fm, bodyText) {
542
+ if (fm.summary)
543
+ return String(fm.summary);
544
+ const lines = bodyText.split('\n');
545
+ let inSection = false;
546
+ const summaryLines = [];
547
+ for (const line of lines) {
548
+ if (line.startsWith('## ')) {
549
+ const currentSection = line.substring(3).trim().toLowerCase();
550
+ if (currentSection === 'summary' || currentSection === 'purpose') {
551
+ inSection = true;
552
+ }
553
+ else {
554
+ inSection = false;
555
+ }
556
+ }
557
+ else if (inSection) {
558
+ summaryLines.push(line);
559
+ }
560
+ }
561
+ const extracted = summaryLines.join('\n').trim();
562
+ if (extracted) {
563
+ const clean = extracted.split('\n')
564
+ .map(x => x.trim().replace(/^[-*]\s*/, ''))
565
+ .filter(Boolean)[0];
566
+ if (clean)
567
+ return clean;
568
+ }
569
+ const bodyParagraphs = bodyText.split('\n\n')
570
+ .map(p => p.trim())
571
+ .filter(p => p && !p.startsWith('#') && !p.startsWith('<!--'));
572
+ if (bodyParagraphs.length > 0) {
573
+ const firstP = bodyParagraphs[0].replace(/[\r\n]+/g, ' ').trim();
574
+ if (firstP.length > 100) {
575
+ return firstP.slice(0, 97) + '...';
576
+ }
577
+ return firstP;
578
+ }
579
+ return null;
580
+ }
526
581
  //# sourceMappingURL=rebuild.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../src/commands/rebuild.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,wCAidC;AAoCD,4CAQC;AArhBD,2CAA6B;AAC7B,uCAAyB;AACzB,mCAAiG;AACjG,+CAAgD;AAChD,mCAA2U;AAC3U,uCAAwF;AACxF,uCAAgD;AAGhD,MAAM,QAAQ,GAAG,OAAO,CAAC;AAezB,SAAgB,cAAc,CAAC,UAA0B,EAAE;IACzD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAE1C,MAAM,QAAQ,GAAG,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC;IACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,IAAI,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,sGAAsG,CAAC,CAAC;QACtH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAClE,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,EAAE,GAAG,IAAA,iBAAY,EAAC,QAAQ,CAAC,CAAC;IAClC,IAAA,iBAAY,EAAC,EAAE,CAAC,CAAC;IACjB,IAAA,qBAAgB,EAAC,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;IACrC,MAAM,YAAY,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC;IAEtD,qEAAqE;IACrE,kDAAkD;IAClD,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,IAAI,MAAM,EAAE,CAAC;QACX,qEAAqE;QACrE,sEAAsE;QACtE,qEAAqE;QACrE,kEAAkE;QAClE,8DAA8D;QAC9D,EAAE;QACF,mEAAmE;QACnE,qEAAqE;QACrE,oEAAoE;QACpE,kEAAkE;QAClE,+DAA+D;IACjE,CAAC;IAED,qFAAqF;IACrF,8DAA8D;IAC9D,IAAI,SAAmB,CAAC;IACxB,MAAM,SAAS,GAAG,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC;IACvD,IAAI,SAAS,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;QACnC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,eAAe,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,eAAe,IAAI,CAAC;gBAClC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,eAAe,CAAC,CAAC;gBACxD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC3C,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YACpC,CAAC;QACH,CAAC;QACD,iDAAiD;QACjD,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACxD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,cAAc,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACvC,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,4DAA4D;QAC5D,SAAS,GAAG,IAAA,cAAS,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACvC,OAAO,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAClD,CAAC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC1B,CAAC,GAAG,CAAC,UAAU,CAAC,eAAe,CAAC;gBAChC,CAAC,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC;gBAC7B,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;gBAC3B,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,MAAM,KAAK,GAAgB,EAAE,CAAC;IAC9B,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,YAAY,GAQX,EAAE,CAAC;IAER,qEAAqE;IACrE,+DAA+D;IAC/D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,MAAM;YAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,0EAA0E;IAC1E,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;QACpC,IAAI,MAAM,EAAE,CAAC;YAeX,MAAM,cAAc,GAAG,EAAE;iBACtB,OAAO,CAAC,gIAAgI,CAAC;iBACzI,GAAG,EAAwB,CAAC;YAC/B,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC;YAiB1C,MAAM,QAAQ,GAAG,EAAE;iBAChB,OAAO,CAAC,oFAAoF,CAAC;iBAC7F,GAAG,EAAoB,CAAC;YAE3B,IAAA,mBAAc,EAAC,EAAE,CAAC,CAAC;YAEnB,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CACxB,2IAA2I,CAC5I,CAAC;gBACF,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;gBAClH,CAAC;YACH,CAAC;YAED,iEAAiE;YACjE,YAAY,GAAG,QAAQ,CAAC;QAC1B,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/B,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,4DAA4D;YAC5D,IAAI,YAAY,IAAI,MAAM,CAAC,WAAW,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI;gBAAE,SAAS;YAErE,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACzC,SAAS,EAAE,CAAC;YAEZ,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;YAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAErD,+DAA+D;YAC/D,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,KAAK;gBACL,MAAM,EAAE,EAAE,CAAC,MAAM;gBACjB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,OAAO,EAAE,EAAE,CAAC,OAAO;aACpB,CAAC,CAAC;YAEH,gEAAgE;YAChE,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;YAE7D,yBAAyB;YACzB,MAAM,MAAM,GAAG,IAAA,wBAAiB,EAAC,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAE9F,oEAAoE;YACpE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,QAAQ,GAAG,IAAA,gBAAW,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1C,IACE,QAAQ;oBACR,QAAQ,CAAC,SAAS,KAAK,MAAM,CAAC,QAAQ;oBACtC,QAAQ,CAAC,gBAAgB,KAAK,MAAM,CAAC,eAAe;oBACpD,QAAQ,CAAC,SAAS,KAAK,MAAM,CAAC,QAAQ,EACtC,CAAC;oBACD,gFAAgF;oBAChF,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,kDAAkD,CAAC,CAAC,GAAG,CAAC,OAAO,CAA8C,CAAC;oBACtI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;wBAC7B,EAAE,CAAC,OAAO,CAAC,qDAAqD,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;oBACrH,CAAC;oBACD,OAAO,EAAE,CAAC;oBACV,SAAS;gBACX,CAAC;YACH,CAAC;YAED,OAAO,EAAE,CAAC;YAEV,MAAM,QAAQ,GAAG,IAAA,iBAAU,EAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAA,mBAAY,EAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAE7D,2BAA2B;YAC3B,MAAM,OAAO,GAAY;gBACvB,EAAE,EAAE,EAAE,CAAC,EAAE;gBACT,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,KAAK;gBACL,MAAM,EAAE,EAAE,CAAC,MAAM,IAAI,IAAI;gBACzB,QAAQ,EAAE,EAAE,CAAC,QAAQ,IAAI,IAAI;gBAC7B,SAAS,EAAE,OAAO;gBAClB,OAAO,EAAE,IAAI;gBACb,cAAc,EAAE,EAAE,CAAC,cAAc,IAAI,IAAI;gBACzC,YAAY,EAAE,EAAE,CAAC,OAAO,IAAI,CAAC;gBAC7B,UAAU,EAAE,IAAI;gBAChB,UAAU,EAAE,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC;gBAC9C,gBAAgB,EAAE,EAAE,CAAC,aAAa,IAAI,IAAI;gBAC1C,SAAS,EAAE,MAAM,CAAC,QAAQ;gBAC1B,gBAAgB,EAAE,MAAM,CAAC,eAAe;gBACxC,SAAS,EAAE,MAAM,CAAC,QAAQ;gBAC1B,WAAW,EAAE,QAAQ;gBACrB,aAAa,EAAE,QAAQ;gBACvB,UAAU,EAAE,CAAC;gBACb,YAAY,EAAE,WAAW;aAC1B,CAAC;YAEF,IAAA,eAAU,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAExB,kEAAkE;YAClE,gEAAgE;YAChE,8DAA8D;YAC9D,8DAA8D;YAC9D,4DAA4D;YAC5D,4DAA4D;YAC5D,IAAA,4BAAuB,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YACnC,IAAA,uBAAkB,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAA,4BAAuB,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YACnC,IAAA,sBAAiB,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7B,IAAA,mBAAc,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAC1B,IAAA,oBAAe,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YAE3B,oBAAoB;YACpB,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACf,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBAC/B,IAAA,gBAAW,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;YAED,iBAAiB;YACjB,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;gBACZ,KAAK,MAAM,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC1B,IAAA,cAAS,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAED,kCAAkC;YAClC,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;gBACpB,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;oBACjC,IAAA,eAAU,EAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,aAAa,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;YAED,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAErC,0BAA0B;YAC1B,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;gBAClB,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;oBACnC,MAAM,OAAO,GAAY;wBACvB,OAAO,EAAE,EAAE,CAAC,EAAE;wBACd,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,UAAU;wBAClB,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;qBAChB,CAAC;oBACF,IAAA,eAAU,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,0BAA0B;YAC1B,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACf,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBAChC,MAAM,OAAO,GAAY;wBACvB,OAAO,EAAE,EAAE,CAAC,EAAE;wBACd,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,UAAU;wBAClB,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;qBAChB,CAAC;oBACF,IAAA,eAAU,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,gEAAgE;YAChE,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBACrC,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;oBAChC,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;wBACjC,MAAM,OAAO,GAAY;4BACvB,OAAO,EAAE,EAAE,CAAC,EAAE;4BACd,KAAK,EAAE,MAAM;4BACb,IAAI,EAAE,cAAc;4BACpB,MAAM,EAAE,UAAU;4BAClB,UAAU,EAAE,GAAG;4BACf,UAAU,EAAE,GAAG;4BACf,UAAU,EAAE,GAAG;yBAChB,CAAC;wBACF,IAAA,eAAU,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACpD,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;gBAC/B,qDAAqD;gBACrD,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;oBACjD,MAAM,OAAO,GAAY;wBACvB,OAAO,EAAE,EAAE,CAAC,EAAE;wBACd,KAAK,EAAE,MAAM;wBACb,IAAI,EAAE,YAAY;wBAClB,MAAM,EAAE,SAAS;wBACjB,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;wBACf,UAAU,EAAE,GAAG;qBAChB,CAAC;oBACF,IAAA,eAAU,EAAC,EAAE,EAAE,OAAO,CAAC,CAAC;gBAC1B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,oDAAoD;IACpD,SAAS,EAAE,CAAC;IAEZ,gEAAgE;IAChE,qEAAqE;IACrE,mEAAmE;IACnE,8DAA8D;IAC9D,kEAAkE;IAClE,kEAAkE;IAClE,wDAAwD;IACxD,4CAA4C;IAC5C,IAAI,MAAM,EAAE,CAAC;QACX,IAAA,sBAAiB,EAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,iEAAiE;IACjE,6DAA6D;IAC7D,2BAA2B;IAC3B,oEAAoE;IACpE,qEAAqE;IACrE,sDAAsD;IACtD,iEAAiE;IACjE,6DAA6D;IAC7D,yDAAyD;IACzD,wDAAwD;IACxD,mEAAmE;IACnE,mEAAmE;IACnE,iEAAiE;IACjE,0BAA0B;IAC1B,IAAI,MAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE;YACxC,iEAAiE;YACjE,kDAAkD;YAClD,MAAM,eAAe,GAAG,IAAI,GAAG,CAC5B,EAAE,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC,GAAG,EAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACxG,CAAC;YAEF,8DAA8D;YAC9D,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;YACtC,MAAM,YAAY,GAAG,EAAE,CAAC,OAAO,CAC7B,gDAAgD,CACjD,CAAC,GAAG,EAA6E,CAAC;YACnF,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC;YAED,+DAA+D;YAC/D,+DAA+D;YAC/D,yDAAyD;YACzD,gCAAgC;YAChC,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;YAEpE,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,6HAA6H,CAC9H,CAAC;YACF,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACrC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;gBAC7B,wDAAwD;gBACxD,0DAA0D;gBAC1D,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;oBAAE,SAAS;gBAC3C,0DAA0D;gBAC1D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;oBAAE,SAAS;gBAC/E,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBAC5D,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBACnC,WAAW,CAAC,GAAG,CACb,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,UAAU,EAClD,CAAC,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC,CAAC,UAAU,IAAI,GAAG,CACzC,CAAC;gBACF,aAAa,EAAE,CAAC;YAClB,CAAC;YACD,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACtB,cAAc,GAAG,aAAa,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,aAAa,EAAE,CAAC;IAClB,CAAC;IAED,uEAAuE;IACvE,IAAA,eAAU,EAAC,EAAE,CAAC,CAAC;IAEf,qDAAqD;IACrD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAA,aAAQ,EAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,MAAM,UAAU,GAAG,IAAA,kBAAW,EAAC,UAAU,CAAC,CAAC;IAE3C,MAAM,UAAU,GAAe;QAC7B,IAAI,EAAE,kBAAkB;QACxB,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,gBAAgB;QAC5C,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACtC,MAAM,EAAE;YACN,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,UAAU;SACxB;QACD,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,UAAU,EAAE,KAAK,CAAC,MAAM;QACxB,KAAK;QACL,KAAK;KACN,CAAC;IAEF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClD,IAAA,cAAS,EAAC,UAAU,CAAC,CAAC;IACtB,IAAA,cAAS,EAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,UAAU,CAAC,CAAC;IAE3D,iBAAiB;IACjB,MAAM,cAAc,GAAa,EAAE,CAAC;IACpC,IAAI,iBAAiB,GAAG,CAAC;QAAE,cAAc,CAAC,IAAI,CAAC,GAAG,iBAAiB,WAAW,iBAAiB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACpH,IAAI,cAAc,GAAG,CAAC;QAAE,cAAc,CAAC,IAAI,CAAC,GAAG,cAAc,QAAQ,cAAc,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IACxG,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAEpG,MAAM,SAAS,GAAG,MAAM;QACtB,CAAC,CAAC,eAAe,cAAc,EAAE;QACjC,CAAC,CAAC,YAAY;YACZ,CAAC,CAAC,gBAAgB,OAAO,CAAC,IAAI,EAAE;YAChC,CAAC,CAAC,qBAAqB,CAAC;IAE5B,0FAA0F;IAC1F,MAAM,WAAW,GAAI,EAAE,CAAC,OAAO,CAAC,mCAAmC,CAAC,CAAC,GAAG,EAAsB,CAAC,GAAG,CAAC;IAEnG,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,KAAK,SAAS,qBAAqB,OAAO,0BAA0B,OAAO,UAAU,CAAC,CAAC;IAC/G,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,MAAM,WAAW,WAAW,QAAQ,CAAC,CAAC;IAElE,IAAA,kBAAa,GAAE,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,QAAgB;IACjC,MAAM,WAAW,GAAG,IAAA,aAAQ,EAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAE9B,MAAM,MAAM,GAAG,IAAA,uBAAgB,EAAC,WAAW,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,WAAW,GAAG,MAAM,CAAC,IAAkC,CAAC;IAC9D,IAAI,CAAC,WAAW,CAAC,EAAE;QAAE,OAAO,IAAI,CAAC;IAEjC,gDAAgD;IAChD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAElD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,CAAC;AAC9E,CAAC;AAED,6EAA6E;AAC7E,SAAS,YAAY,CAAC,QAAgB;IACpC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAC5C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACxC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,gBAAgB,CAAC,QAAgB;IAC/C,MAAM,eAAe,GAAG,8BAA8B,CAAC;IACvD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACzD,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,iGAAiG;AACjG,SAAS,kBAAkB,CAAC,EAAmB,EAAE,QAAgB,EAAE,YAAyB,EAAE,KAAkB;IAC9G,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;QAClB,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,UAAU,EAAE,CAAC;YACnC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACf,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACD,8BAA8B;IAC9B,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,KAAK,MAAM,MAAM,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;IACH,CAAC;IACD,mDAAmD;IACnD,MAAM,SAAS,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7C,KAAK,MAAM,MAAM,IAAI,SAAS,EAAE,CAAC;QAC/B,IAAI,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;YACjD,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,SAAoC,EAAE,OAAe;IAC7E,IAAI,SAAS,EAAE,CAAC;QACd,kFAAkF;QAClF,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAAE,OAAO,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1D,0CAA0C;IAC5C,CAAC;IACD,MAAM,KAAK,GAAG,IAAA,iBAAY,EAAC,OAAO,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACzD,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,cAAc,CAAC,GAAW,EAAE,OAAoB;IACvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO;IAChC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,cAAc,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpC,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"rebuild.js","sourceRoot":"","sources":["../../src/commands/rebuild.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
1
  import type { CliFormat } from '../types';
2
- export declare function recallCommand(budget?: number, format?: CliFormat, since?: string): void;
2
+ export declare function recallCommand(budget?: number, format?: CliFormat, since?: string, options?: {
3
+ recent?: number;
4
+ noTraces?: boolean;
5
+ }): void;
3
6
  //# sourceMappingURL=recall.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"recall.d.ts","sourceRoot":"","sources":["../../src/commands/recall.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAgB,SAAS,EAAW,MAAM,UAAU,CAAC;AAKjE,wBAAgB,aAAa,CAAC,MAAM,GAAE,MAAa,EAAE,MAAM,GAAE,SAAqB,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CA8HxG"}
1
+ {"version":3,"file":"recall.d.ts","sourceRoot":"","sources":["../../src/commands/recall.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,wBAAgB,aAAa,CAC3B,MAAM,GAAE,MAAa,EACrB,MAAM,GAAE,SAAqB,EAC7B,KAAK,CAAC,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAChD,IAAI,CAuBN"}
@@ -36,142 +36,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.recallCommand = recallCommand;
37
37
  const path = __importStar(require("path"));
38
38
  const fs_1 = require("../core/fs");
39
- const db_1 = require("../core/db");
39
+ const recall_1 = require("../core/query/recall");
40
40
  const format_1 = require("../core/format");
41
- const manifest_1 = require("../core/manifest");
42
- const PMEM_DIR = '.pmem';
43
- function recallCommand(budget = 2000, format = 'compact', since) {
41
+ function recallCommand(budget = 2000, format = 'compact', since, options) {
44
42
  const cwd = process.cwd();
45
- const pmemPath = path.join(cwd, PMEM_DIR);
43
+ const pmemPath = path.join(cwd, '.pmem');
46
44
  if (!(0, fs_1.fileExists)(pmemPath)) {
47
45
  console.log('No .pmem directory found. Run `pmem init` first.');
48
46
  return;
49
47
  }
50
- // Read hot memory files: index.md, state.md, next.md
51
- const indexContent = (0, fs_1.readFile)(path.join(pmemPath, 'index.md'));
52
- const stateContent = (0, fs_1.readFile)(path.join(pmemPath, 'state.md'));
53
- const nextContent = (0, fs_1.readFile)(path.join(pmemPath, 'next.md'));
54
- if (!indexContent) {
55
- console.log('No .pmem/index.md found. Run `pmem init` first.');
56
- return;
57
- }
58
- // Parse project info from index
59
- const projectName = extractField(indexContent, 'Name:');
60
- const projectStage = extractField(indexContent, 'Stage:');
61
- const currentFocus = extractField(indexContent, 'Current Focus');
62
- // Parse state lines
63
- const stateLines = [];
64
- if (stateContent) {
65
- const lines = stateContent.split('\n');
66
- let inSection = false;
67
- for (const line of lines) {
68
- if (line.startsWith('## ')) {
69
- inSection = !line.includes('Overall Status');
70
- }
71
- else if (inSection && line.trim().startsWith('-')) {
72
- stateLines.push(line.trim());
73
- }
74
- }
75
- }
76
- // Parse next step
77
- const nextStep = nextContent
78
- ? extractField(nextContent, '## Recommended Next Step')
79
- : 'No next step recorded.';
80
- const manifest = (0, manifest_1.loadManifest)(pmemPath);
81
- const config = manifest ? (0, manifest_1.resolveConfig)(manifest) : { foundational_types: ['module'] };
82
- const foundationalTypes = config.foundational_types;
83
- // Build result
84
- const result = {
85
- project: projectName || 'Unknown',
86
- stage: projectStage || undefined,
87
- focus: currentFocus || 'No focus recorded.',
88
- state: stateLines,
89
- next: nextStep || 'No next step recorded.',
90
- mustRead: [],
91
- dirty_flags_count: 0,
92
- recent_updates: [],
93
- active_modules: [],
94
- active_foundation: [],
95
- };
96
- // Query SQLite for richer project info
97
48
  try {
98
- const db = (0, db_1.openDatabase)(pmemPath);
99
- (0, db_1.createSchema)(db);
100
- // Parse --since into ISO threshold, if provided
101
- let sinceThreshold = null;
102
- if (since) {
103
- sinceThreshold = parseSince(since);
104
- if (sinceThreshold === null) {
105
- console.log(`Invalid --since format: "${since}". Expected format: <N><unit> where unit is h (hours), d (days), or w (weeks).`);
106
- console.log('Examples: --since 24h, --since 7d, --since 1w');
107
- process.exit(2);
108
- }
109
- }
110
- // Query active cards (non-deleted, non-candidate), optionally filtered by --since
111
- const activeCards = sinceThreshold
112
- ? db.prepare("SELECT * FROM cards WHERE is_deleted = 0 AND is_candidate = 0 AND updated_at >= ?").all(sinceThreshold)
113
- : db.prepare("SELECT * FROM cards WHERE is_deleted = 0 AND is_candidate = 0").all();
114
- // Foundational cards for recommendations
115
- const foundationalCards = activeCards.filter(c => foundationalTypes.includes(c.type));
116
- result.active_foundation = foundationalCards.map(c => c.file_path);
117
- result.active_modules = result.active_foundation;
118
- // Build mustRead list
119
- result.mustRead.push(path.join('.pmem', 'state.md'));
120
- result.mustRead.push(path.join('.pmem', 'next.md'));
121
- for (const card of foundationalCards.slice(0, 5)) {
122
- result.mustRead.push(card.file_path);
123
- }
124
- // Query unresolved dirty flags
125
- const dirtyFlagResult = db.prepare("SELECT COUNT(*) as count FROM dirty_flags WHERE resolved_at IS NULL").get();
126
- result.dirty_flags_count = dirtyFlagResult.count;
127
- // Query recent updates
128
- const recentUpdates = db.prepare("SELECT action, summary, created_at FROM update_log ORDER BY created_at DESC LIMIT 5").all();
129
- result.recent_updates = recentUpdates;
49
+ const result = (0, recall_1.recallQuery)(pmemPath, {
50
+ budget,
51
+ since,
52
+ recent: options?.recent,
53
+ noTraces: options?.noTraces
54
+ });
55
+ const output = (0, format_1.formatOutput)(result, format, budget);
56
+ console.log(output);
130
57
  }
131
- catch {
132
- // DB may not exist yet or be uninitialized; file-based mustRead is sufficient
133
- if (result.mustRead.length === 0) {
134
- result.mustRead.push(path.join('.pmem', 'state.md'));
135
- result.mustRead.push(path.join('.pmem', 'next.md'));
136
- }
58
+ catch (err) {
59
+ console.error(`Error: ${err.message}`);
60
+ process.exit(2);
137
61
  }
138
- // Output
139
- const output = (0, format_1.formatOutput)(result, format, budget);
140
- console.log(output);
141
- }
142
- function extractField(content, fieldName) {
143
- const lines = content.split('\n');
144
- for (let i = 0; i < lines.length; i++) {
145
- const line = lines[i];
146
- if (line.includes(fieldName)) {
147
- const val = line.split(fieldName)[1]?.trim();
148
- if (val)
149
- return val;
150
- // Next line (for "## Current Focus" style)
151
- if (i + 1 < lines.length && lines[i + 1].trim()) {
152
- return lines[i + 1].trim();
153
- }
154
- }
155
- }
156
- return null;
157
- }
158
- /**
159
- * Parse a --since duration string into an ISO 8601 threshold.
160
- * Supported formats: <N>h (hours), <N>d (days), <N>w (weeks).
161
- * Returns null for invalid input.
162
- */
163
- function parseSince(since) {
164
- const match = since.match(/^(\d+)([hdw])$/);
165
- if (!match)
166
- return null;
167
- const value = parseInt(match[1], 10);
168
- const unit = match[2];
169
- const ms = unit === 'h' ? value * 3600000
170
- : unit === 'd' ? value * 86400000
171
- : unit === 'w' ? value * 604800000
172
- : 0;
173
- if (ms === 0)
174
- return null;
175
- return new Date(Date.now() - ms).toISOString();
176
62
  }
177
63
  //# sourceMappingURL=recall.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"recall.js","sourceRoot":"","sources":["../../src/commands/recall.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recall.js","sourceRoot":"","sources":["../../src/commands/recall.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,sCA4BC;AAlCD,2CAA6B;AAC7B,mCAAwC;AACxC,iDAAmD;AACnD,2CAA8C;AAG9C,SAAgB,aAAa,CAC3B,SAAiB,IAAI,EACrB,SAAoB,SAAS,EAC7B,KAAc,EACd,OAAiD;IAEjD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAEzC,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,oBAAW,EAAC,QAAQ,EAAE;YACnC,MAAM;YACN,KAAK;YACL,MAAM,EAAE,OAAO,EAAE,MAAM;YACvB,QAAQ,EAAE,OAAO,EAAE,QAAQ;SAC5B,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAA,qBAAY,EAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtB,CAAC;IAAC,OAAO,GAAQ,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
@@ -0,0 +1,46 @@
1
+ export interface RelationsEdgeOut {
2
+ edge_id: number;
3
+ to_id: string;
4
+ type: string;
5
+ source: string;
6
+ confidence: number;
7
+ }
8
+ export interface RelationsEdgeIn {
9
+ edge_id: number;
10
+ from_id: string;
11
+ type: string;
12
+ source: string;
13
+ confidence: number;
14
+ }
15
+ export interface RelationsPruningCandidate {
16
+ edge_id: number;
17
+ direction: 'out' | 'in';
18
+ other_id: string;
19
+ type: string;
20
+ source: string;
21
+ confidence: number;
22
+ reason: 'inferred' | 'low_confidence';
23
+ }
24
+ export interface RelationsQueryResult {
25
+ card_id: string;
26
+ outgoing: RelationsEdgeOut[];
27
+ incoming: RelationsEdgeIn[];
28
+ total: number;
29
+ summary_by_type: Record<string, number>;
30
+ summary_by_source: Record<string, number>;
31
+ pruning_candidates: RelationsPruningCandidate[];
32
+ }
33
+ export interface RelationsQueryOptions {
34
+ type?: string;
35
+ source?: 'explicit' | 'inferred' | 'mention' | 'manual' | 'all';
36
+ limit?: number;
37
+ }
38
+ export declare function relationsQuery(pmemPath: string, cardId: string, options?: RelationsQueryOptions): RelationsQueryResult;
39
+ export interface RelationsCommandOptions {
40
+ type?: string;
41
+ source?: string;
42
+ format?: string;
43
+ limit?: number;
44
+ }
45
+ export declare function relationsCommand(cardId: string, options: RelationsCommandOptions): void;
46
+ //# sourceMappingURL=relations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.d.ts","sourceRoot":"","sources":["../../src/commands/relations.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,KAAK,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,UAAU,GAAG,gBAAgB,CAAC;CACvC;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,kBAAkB,EAAE,yBAAyB,EAAE,CAAC;CACjD;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,qBAAqB,GAC9B,oBAAoB,CAqGtB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,IAAI,CAoCvF"}
@@ -0,0 +1,166 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.relationsQuery = relationsQuery;
37
+ exports.relationsCommand = relationsCommand;
38
+ const path = __importStar(require("path"));
39
+ const fs_1 = require("../core/fs");
40
+ const db_1 = require("../core/db");
41
+ const PMEM_DIR = '.pmem';
42
+ function relationsQuery(pmemPath, cardId, options) {
43
+ const dbPath = path.join(pmemPath, 'pmem.db');
44
+ if (!(0, fs_1.fileExists)(dbPath)) {
45
+ throw new Error('No SQLite database found. Run `pmem rebuild` first.');
46
+ }
47
+ const db = (0, db_1.openDatabase)(pmemPath);
48
+ (0, db_1.createSchema)(db);
49
+ // Verify card exists
50
+ const card = db
51
+ .prepare('SELECT id, title FROM cards WHERE id = ? AND is_deleted = 0')
52
+ .get(cardId);
53
+ if (!card) {
54
+ throw new Error(`Card "${cardId}" not found.`);
55
+ }
56
+ // Build filter clause
57
+ const filters = [];
58
+ const params = [];
59
+ if (options?.type) {
60
+ filters.push('type = ?');
61
+ params.push(options.type);
62
+ }
63
+ if (options?.source && options.source !== 'all') {
64
+ filters.push('source = ?');
65
+ params.push(options.source);
66
+ }
67
+ const whereClause = filters.length > 0 ? ' AND ' + filters.join(' AND ') : '';
68
+ const outgoingRows = db
69
+ .prepare(`SELECT id as edge_id, to_id, type, source, confidence
70
+ FROM edges
71
+ WHERE from_id = ?${whereClause}
72
+ ORDER BY confidence ASC, edge_id ASC`)
73
+ .all(cardId, ...params);
74
+ const incomingRows = db
75
+ .prepare(`SELECT id as edge_id, from_id, type, source, confidence
76
+ FROM edges
77
+ WHERE to_id = ?${whereClause}
78
+ ORDER BY confidence ASC, edge_id ASC`)
79
+ .all(cardId, ...params);
80
+ // Apply limit per direction if specified
81
+ const outgoing = options?.limit ? outgoingRows.slice(0, options.limit) : outgoingRows;
82
+ const incoming = options?.limit ? incomingRows.slice(0, options.limit) : incomingRows;
83
+ // Build summaries across both directions
84
+ const summary_by_type = {};
85
+ const summary_by_source = {};
86
+ const tally = (type, source) => {
87
+ summary_by_type[type] = (summary_by_type[type] || 0) + 1;
88
+ summary_by_source[source] = (summary_by_source[source] || 0) + 1;
89
+ };
90
+ for (const e of outgoing)
91
+ tally(e.type, e.source);
92
+ for (const e of incoming)
93
+ tally(e.type, e.source);
94
+ // Pruning candidates: inferred OR confidence < 0.5
95
+ const pruning_candidates = [];
96
+ for (const e of outgoing) {
97
+ if (e.source === 'inferred' || e.confidence < 0.5) {
98
+ pruning_candidates.push({
99
+ edge_id: e.edge_id,
100
+ direction: 'out',
101
+ other_id: e.to_id,
102
+ type: e.type,
103
+ source: e.source,
104
+ confidence: e.confidence,
105
+ reason: e.source === 'inferred' ? 'inferred' : 'low_confidence',
106
+ });
107
+ }
108
+ }
109
+ for (const e of incoming) {
110
+ if (e.source === 'inferred' || e.confidence < 0.5) {
111
+ pruning_candidates.push({
112
+ edge_id: e.edge_id,
113
+ direction: 'in',
114
+ other_id: e.from_id,
115
+ type: e.type,
116
+ source: e.source,
117
+ confidence: e.confidence,
118
+ reason: e.source === 'inferred' ? 'inferred' : 'low_confidence',
119
+ });
120
+ }
121
+ }
122
+ return {
123
+ card_id: cardId,
124
+ outgoing,
125
+ incoming,
126
+ total: outgoing.length + incoming.length,
127
+ summary_by_type,
128
+ summary_by_source,
129
+ pruning_candidates,
130
+ };
131
+ }
132
+ function relationsCommand(cardId, options) {
133
+ const pmemPath = path.join(process.cwd(), PMEM_DIR);
134
+ const source = (options.source ?? 'all');
135
+ const result = relationsQuery(pmemPath, cardId, {
136
+ type: options.type,
137
+ source,
138
+ limit: options.limit,
139
+ });
140
+ if (options.format === 'json') {
141
+ console.log(JSON.stringify(result, null, 2));
142
+ return;
143
+ }
144
+ // Compact format
145
+ console.log(`Card: ${result.card_id}`);
146
+ console.log(`Total relations: ${result.total}`);
147
+ console.log(` Outgoing: ${result.outgoing.length}`);
148
+ console.log(` Incoming: ${result.incoming.length}`);
149
+ console.log('');
150
+ console.log('By type:', JSON.stringify(result.summary_by_type));
151
+ console.log('By source:', JSON.stringify(result.summary_by_source));
152
+ if (result.pruning_candidates.length > 0) {
153
+ console.log('');
154
+ console.log(`Pruning candidates (${result.pruning_candidates.length}):`);
155
+ const limit = 10;
156
+ const slice = result.pruning_candidates.slice(0, limit);
157
+ for (const p of slice) {
158
+ const arrow = p.direction === 'out' ? `${result.card_id} -> ${p.other_id}` : `${p.other_id} -> ${result.card_id}`;
159
+ console.log(` - [${p.source}, conf=${p.confidence}, ${p.reason}] ${arrow} (${p.type})`);
160
+ }
161
+ if (result.pruning_candidates.length > limit) {
162
+ console.log(` ... and ${result.pruning_candidates.length - limit} more (use --format json to see all)`);
163
+ }
164
+ }
165
+ }
166
+ //# sourceMappingURL=relations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relations.js","sourceRoot":"","sources":["../../src/commands/relations.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,cAAc,EAAE,CAAC;CAChC;AAgCD,wBAAgB,aAAa,CAAC,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAwJhF;AAaD,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CA0DzE"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,cAAc,EAAE,CAAC;CAChC;AAsCD,wBAAgB,aAAa,CAAC,OAAO,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA2KhF;AA4ID,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,UAAU,EAAE,CA0DzE"}