@zigrivers/mmr 1.3.0 → 1.4.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 (130) hide show
  1. package/README.md +444 -0
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +4 -0
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/ack.d.ts +11 -0
  6. package/dist/commands/ack.d.ts.map +1 -0
  7. package/dist/commands/ack.js +123 -0
  8. package/dist/commands/ack.js.map +1 -0
  9. package/dist/commands/config.d.ts +5 -0
  10. package/dist/commands/config.d.ts.map +1 -1
  11. package/dist/commands/config.js +248 -14
  12. package/dist/commands/config.js.map +1 -1
  13. package/dist/commands/jobs.d.ts.map +1 -1
  14. package/dist/commands/jobs.js +3 -4
  15. package/dist/commands/jobs.js.map +1 -1
  16. package/dist/commands/reconcile.d.ts.map +1 -1
  17. package/dist/commands/reconcile.js +12 -5
  18. package/dist/commands/reconcile.js.map +1 -1
  19. package/dist/commands/results.d.ts.map +1 -1
  20. package/dist/commands/results.js +13 -5
  21. package/dist/commands/results.js.map +1 -1
  22. package/dist/commands/review.d.ts +25 -0
  23. package/dist/commands/review.d.ts.map +1 -1
  24. package/dist/commands/review.js +459 -44
  25. package/dist/commands/review.js.map +1 -1
  26. package/dist/commands/sessions.d.ts +58 -0
  27. package/dist/commands/sessions.d.ts.map +1 -0
  28. package/dist/commands/sessions.js +266 -0
  29. package/dist/commands/sessions.js.map +1 -0
  30. package/dist/commands/status.d.ts.map +1 -1
  31. package/dist/commands/status.js +2 -3
  32. package/dist/commands/status.js.map +1 -1
  33. package/dist/config/defaults.d.ts +2 -2
  34. package/dist/config/defaults.d.ts.map +1 -1
  35. package/dist/config/defaults.js +76 -0
  36. package/dist/config/defaults.js.map +1 -1
  37. package/dist/config/loader.d.ts +22 -0
  38. package/dist/config/loader.d.ts.map +1 -1
  39. package/dist/config/loader.js +279 -36
  40. package/dist/config/loader.js.map +1 -1
  41. package/dist/config/schema.d.ts +897 -53
  42. package/dist/config/schema.d.ts.map +1 -1
  43. package/dist/config/schema.js +155 -4
  44. package/dist/config/schema.js.map +1 -1
  45. package/dist/core/ack-store.d.ts +109 -0
  46. package/dist/core/ack-store.d.ts.map +1 -0
  47. package/dist/core/ack-store.js +363 -0
  48. package/dist/core/ack-store.js.map +1 -0
  49. package/dist/core/auth.d.ts +10 -1
  50. package/dist/core/auth.d.ts.map +1 -1
  51. package/dist/core/auth.js +106 -35
  52. package/dist/core/auth.js.map +1 -1
  53. package/dist/core/compensator.d.ts +33 -4
  54. package/dist/core/compensator.d.ts.map +1 -1
  55. package/dist/core/compensator.js +120 -15
  56. package/dist/core/compensator.js.map +1 -1
  57. package/dist/core/diff-introspect.d.ts +21 -0
  58. package/dist/core/diff-introspect.d.ts.map +1 -0
  59. package/dist/core/diff-introspect.js +42 -0
  60. package/dist/core/diff-introspect.js.map +1 -0
  61. package/dist/core/dispatcher.d.ts +10 -0
  62. package/dist/core/dispatcher.d.ts.map +1 -1
  63. package/dist/core/dispatcher.js +91 -20
  64. package/dist/core/dispatcher.js.map +1 -1
  65. package/dist/core/git-show.d.ts +31 -0
  66. package/dist/core/git-show.d.ts.map +1 -0
  67. package/dist/core/git-show.js +72 -0
  68. package/dist/core/git-show.js.map +1 -0
  69. package/dist/core/host-isolation.d.ts +24 -0
  70. package/dist/core/host-isolation.d.ts.map +1 -0
  71. package/dist/core/host-isolation.js +107 -0
  72. package/dist/core/host-isolation.js.map +1 -0
  73. package/dist/core/http-dispatcher.d.ts +20 -0
  74. package/dist/core/http-dispatcher.d.ts.map +1 -0
  75. package/dist/core/http-dispatcher.js +125 -0
  76. package/dist/core/http-dispatcher.js.map +1 -0
  77. package/dist/core/job-store.d.ts +7 -1
  78. package/dist/core/job-store.d.ts.map +1 -1
  79. package/dist/core/job-store.js +21 -1
  80. package/dist/core/job-store.js.map +1 -1
  81. package/dist/core/jsonpath.d.ts +15 -0
  82. package/dist/core/jsonpath.d.ts.map +1 -0
  83. package/dist/core/jsonpath.js +63 -0
  84. package/dist/core/jsonpath.js.map +1 -0
  85. package/dist/core/oss-examples.d.ts +18 -0
  86. package/dist/core/oss-examples.d.ts.map +1 -0
  87. package/dist/core/oss-examples.js +66 -0
  88. package/dist/core/oss-examples.js.map +1 -0
  89. package/dist/core/parser.d.ts +8 -3
  90. package/dist/core/parser.d.ts.map +1 -1
  91. package/dist/core/parser.js +157 -6
  92. package/dist/core/parser.js.map +1 -1
  93. package/dist/core/project-root.d.ts +10 -0
  94. package/dist/core/project-root.d.ts.map +1 -0
  95. package/dist/core/project-root.js +23 -0
  96. package/dist/core/project-root.js.map +1 -0
  97. package/dist/core/reconciler.d.ts +1 -1
  98. package/dist/core/reconciler.d.ts.map +1 -1
  99. package/dist/core/reconciler.js +100 -18
  100. package/dist/core/reconciler.js.map +1 -1
  101. package/dist/core/redact.d.ts +17 -0
  102. package/dist/core/redact.d.ts.map +1 -0
  103. package/dist/core/redact.js +140 -0
  104. package/dist/core/redact.js.map +1 -0
  105. package/dist/core/results-pipeline.d.ts +8 -2
  106. package/dist/core/results-pipeline.d.ts.map +1 -1
  107. package/dist/core/results-pipeline.js +50 -3
  108. package/dist/core/results-pipeline.js.map +1 -1
  109. package/dist/core/runtime-probe.d.ts +14 -0
  110. package/dist/core/runtime-probe.d.ts.map +1 -0
  111. package/dist/core/runtime-probe.js +57 -0
  112. package/dist/core/runtime-probe.js.map +1 -0
  113. package/dist/core/stable-id.d.ts +19 -0
  114. package/dist/core/stable-id.d.ts.map +1 -0
  115. package/dist/core/stable-id.js +148 -0
  116. package/dist/core/stable-id.js.map +1 -0
  117. package/dist/core/trust-mode.d.ts +29 -0
  118. package/dist/core/trust-mode.d.ts.map +1 -0
  119. package/dist/core/trust-mode.js +103 -0
  120. package/dist/core/trust-mode.js.map +1 -0
  121. package/dist/formatters/markdown.d.ts.map +1 -1
  122. package/dist/formatters/markdown.js +9 -0
  123. package/dist/formatters/markdown.js.map +1 -1
  124. package/dist/formatters/text.d.ts.map +1 -1
  125. package/dist/formatters/text.js +9 -0
  126. package/dist/formatters/text.js.map +1 -1
  127. package/dist/types.d.ts +44 -1
  128. package/dist/types.d.ts.map +1 -1
  129. package/dist/types.js.map +1 -1
  130. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC1E,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AACvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAA;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAA2B,MAAM,4BAA4B,CAAA;AACzF,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,qBAAqB,EACrB,6BAA6B,EAC7B,8BAA8B,GAC/B,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAA;AAE1D,OAAO,EACL,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,GAEhB,MAAM,eAAe,CAAA;AA0BtB,oEAAoE;AACpE,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAA;AAExC;;;GAGG;AACH,SAAS,WAAW,CAAC,IAAgB;IACnC,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;QACpC,CAAC;QACD,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAA;IAC/G,CAAC;IAED,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAA;IACrG,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,OAAO,YAAY,CACjB,KAAK,EACL,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,EACvC,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAClD,CAAA;IACH,CAAC;IAED,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,SAAS,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAA;IAChH,CAAC;IAED,4BAA4B;IAC5B,OAAO,YAAY,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAA;AACzF,CAAC;AAED,oFAAoF;AACpF,SAAS,uBAAuB,CAAC,MAA+B,EAAE,OAA2B;IAC3F,IAAI,OAAO,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,aAAa,GAAG,OAAO,CAAC,iBAAiB,CAAA;IAC1F,IAAI,OAAO,CAAC,mBAAmB;QAAE,MAAM,CAAC,sBAAsB,GAAG,IAAI,CAAA;AACvE,CAAC;AAED,SAAS,uBAAuB,CAAC,OAA0B,EAAE,YAA0B;IACrF,IAAI,YAAY,KAAK,MAAM;QAAE,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;IACvD,IAAI,YAAY,KAAK,UAAU;QAAE,OAAO,cAAc,CAAC,OAAO,CAAC,CAAA;IAC/D,OAAO,UAAU,CAAC,OAAO,CAAC,CAAA;AAC5B,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAe,EACf,KAAa,EACb,SAAiB,EACjB,YAAsB;IAEtB,OAAO;QACL,MAAM,EAAE,WAAW,OAAO,EAAE;QAC5B,OAAO,EAAE,qBAAqB;QAC9B,aAAa,EAAE,YAAY;QAC3B,cAAc,EAAE,CAAC;QACjB,QAAQ,EAAE,KAAK;QACf,OAAO,EAAE,iCAAiC,OAAO,WAAW,KAAK,iBAAiB,SAAS,EAAE;QAC7F,mBAAmB,EAAE,EAAE;QACvB,WAAW,EAAE,EAAE;QACf,QAAQ,EAAE;YACR,mBAAmB,EAAE,CAAC;YACtB,kBAAkB,EAAE,CAAC;YACrB,gBAAgB,EAAE,CAAC;YACnB,aAAa,EAAE,IAAI;SACpB;KACF,CAAA;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAA6C,EAC7C,QAA8B,EAC9B,QAAqB;IAErB,MAAM,cAAc,GAAG,CAAC,IAAY,EAAE,eAAe,GAAG,KAAK,EAAW,EAAE;QACxE,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QACzB,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,uBAAuB,CAAC,CAAA;QACjE,IAAI,EAAE,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,YAAY,IAAI,wCAAwC,CAAC,CAAA;YAC3E,CAAC;YACD,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAC9D,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC;SAC5B,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC;SACzE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC;AAED,SAAS,uBAAuB,CAC9B,MAAqC,EACrC,QAA4B;IAE5B,OAAO,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,CAAC;QAC7C,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,QAAQ;QACrC,CAAC,CAAC,SAAS,CAAA;AACf,CAAC;AAED,SAAS,kBAAkB,CAAC,OAA4B,EAAE,MAAc;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,YAAY,CAAA;IACtD,OAAO,OAAO,KAAK,YAAY;QAC7B,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;AACpD,CAAC;AAED,SAAS,2BAA2B,CAAC,MAAc;IACjD,OAAO,MAAM,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe;QACjD,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa;YACnC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS;gBAChC,CAAC,CAAC,SAAS,CAAA;AACnB,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,sCAAsC,CAC1D,MAAuB;IAEvB,8EAA8E;IAC9E,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAA;IACjD,IAAI,CAAC,WAAW;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IAErD,mEAAmE;IACnE,IAAI,WAAW,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAA;QACjD,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI;YAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;QACjE,MAAM,UAAU,GAAG,2BAA2B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QAC/D,OAAO;YACL,MAAM,EAAE,UAAU;YAClB,IAAI,EAAE,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;YACrD,QAAQ,EAAE,QAAQ,CAAC,QAAQ;SAC5B,CAAA;IACH,CAAC;IAED,0BAA0B;IAC1B,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACzB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,oCAAoC,EAAE,CAAA;IAC/F,CAAC;IACD,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAC7C,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAA;IAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,GAAG,oBAAoB,EAAE,CAAA;IAC1F,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,CAAA;IAC/C,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAA;IACnE,IAAK,UAAU,CAAC,MAAiB,KAAK,SAAS;QAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAA;IAEzF,MAAM,MAAM,GAAG,2BAA2B,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;IAC7D,OAAO;QACL,MAAM;QACN,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;QACjD,QAAQ,EAAE,UAAU,CAAC,QAAQ;KAC9B,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAsC;IAC9D,OAAO,EAAE,QAAQ;IACjB,QAAQ,EAAE,oCAAoC;IAC9C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK;SACF,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE,mCAAmC;KAC9C,CAAC;SACD,MAAM,CAAC,IAAI,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,oCAAoC;KAC/C,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,2CAA2C;KACtD,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,mCAAmC;KAC9C,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,uCAAuC;KAClD,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,uCAAuC;KAClD,CAAC;SACD,MAAM,CAAC,eAAe,EAAE;QACvB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,iCAAiC;QAC3C,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC;KAClC,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,yCAAyC;KACpD,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,gCAAgC;KAC3C,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,4BAA4B;KACvC,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,eAAe;QACzB,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,CAAC;KACtC,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,6FAA6F;KACxG,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,4CAA4C;KACvD,CAAC;SACD,MAAM,CAAC,YAAY,EAAE;QACpB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,2EAA2E;KACtF,CAAC;SACD,MAAM,CAAC,iBAAiB,EAAE;QACzB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,2DAA2D;KACtE,CAAC;SACD,MAAM,CAAC,oBAAoB,EAAE;QAC5B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,oEAAoE;KAC/E,CAAC;SACD,MAAM,CAAC,sBAAsB,EAAE;QAC9B,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,gEAAgE;KAC3E,CAAC;SACD,MAAM,CAAC,iBAAiB,EAAE;QACzB,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,2EAA2E;KACtF,CAAC;SACD,MAAM,CAAC,MAAM,EAAE;QACd,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,uFAAuF;QACjG,OAAO,EAAE,KAAK;KACf,CAAC;SACD,MAAM,CAAC,SAAS,EAAE;QACjB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,+DAA+D;KAC1E,CAAC;SACD,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACd,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,KAAK,CAAC,kCAAkC,eAAe,EAAE,CAAC,CAAA;QACtE,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;QACvC,CAAC;QACD,IAAI,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;YAC7D,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC5C,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC;SACD,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE;QACnB,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC/D,IAAI,CAAC,SAAS,GAAG,CAAC,CAAA;QACpB,CAAC;IACH,CAAC,CAAC;IACN,OAAO,EAAE,KAAK,EAAE,IAAoC,EAAE,EAAE;QACtD,oEAAoE;QACpE,sEAAsE;QACtE,sEAAsE;QACtE,wEAAwE;QACxE,uEAAuE;QACvE,yEAAyE;QACzE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;QACzB,MAAM,KAAK,GAAG,iBAAiB,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAA;QAC5E,MAAM,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAA;QAC/D,MAAM,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAA;QAC3D,yEAAyE;QACzE,4EAA4E;QAC5E,wEAAwE;QACxE,2EAA2E;QAC3E,wEAAwE;QACxE,0EAA0E;QAC1E,4EAA4E;QAC5E,kEAAkE;QAClE,yBAAyB;QACzB,MAAM,oBAAoB,GAAG,oBAAoB,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,CAAA;QAChF,MAAM,OAAO,GACX,KAAK,CAAC,UAAU,KAAK,SAAS;YAC5B,CAAC,CAAC,6CAA6C;YAC/C,CAAC,CAAC,wDAAwD,CAAA;QAC9D,IAAI,sBAAsB,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,+EAA+E,OAAO,EAAE,CAAC,CAAA;QACzG,CAAC;QACD,IAAI,oBAAoB,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,0EAA0E,OAAO,EAAE,CAAC,CAAA;QACpG,CAAC;QAED,uEAAuE;QACvE,kEAAkE;QAClE,MAAM,YAAY,GAAG;YACnB,aAAa,EAAE,IAAI,CAAC,eAAe,CAAuB;YAC1D,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;QACD,MAAM,YAAY,GAAG,sBAAsB;YACzC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,EAAE;YAC9B,CAAC,CAAC,OAAO,KAAK,SAAS;gBACrB,CAAC,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE;gBAC5B,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAA;QACjC,MAAM,MAAM,GAAG,UAAU,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAAC,CAAA;QAC9E,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,CAAC,OAAO,iBAAiB,eAAe,EAAE,CAAC,CAAA;YACpF,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;YACpB,OAAM;QACR,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,IAAI,CAAC,CAAA;QACvE,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,SAAS,IAAI,SAAS,CAAA;QACnE,qEAAqE;QACrE,4EAA4E;QAC5E,8EAA8E;QAC9E,MAAM,cAAc,GAAmB;YACrC,UAAU,EAAE,SAAS;YACrB,eAAe,EAAE,IAAI,CAAC,aAAa,KAAK,IAAI;YAC5C,kBAAkB,EAAE,oBAAoB;YACxC,oBAAoB,EAAE,sBAAsB;YAC5C,eAAe,EAAE,OAAO;SACzB,CAAA;QACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC;YAClC,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAiB,CAAA;YACtF,MAAM,OAAO,GAAG,4BAA4B,CAC1C,IAAI,CAAC,OAAO,IAAI,SAAS,EACzB,IAAI,CAAC,KAAK,IAAI,CAAC,EACf,SAAS,EACT,MAAM,CAAC,QAAQ,CAAC,aAAyB,CAC1C,CAAA;YACD,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAA;YAC3D,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;YACpB,OAAM;QACR,CAAC;QAED,wBAAwB;QACxB,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,0EAA0E,CAAC,CAAA;YACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,0EAA0E;QAC1E,uEAAuE;QACvE,2EAA2E;QAC3E,4EAA4E;QAC5E,qEAAqE;QACrE,MAAM,WAAW,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;QAC7C,4EAA4E;QAC5E,6EAA6E;QAC7E,wEAAwE;QACxE,MAAM,oBAAoB,GACxB,OAAO,KAAK,SAAS,IAAI,WAAW,CAAC,mBAAmB,IAAI,CAAC,sBAAsB,CAAA;QACrF,4EAA4E;QAC5E,0EAA0E;QAC1E,6EAA6E;QAC7E,MAAM,iBAAiB,GACrB,OAAO,KAAK,SAAS,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,oBAAoB,CAAA;QAE5F,oEAAoE;QACpE,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,IAAI,oBAAoB,IAAI,iBAAiB,EAAE,CAAC;YAC9C,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAiB,CAAA;YACtF,MAAM,MAAM,GACV,oBAAoB,IAAI,iBAAiB;gBACvC,CAAC,CAAC,8DAA8D;gBAChE,CAAC,CAAC,oBAAoB;oBACpB,CAAC,CAAC,uDAAuD;oBACzD,CAAC,CAAC,oDAAoD,CAAA;YAC5D,MAAM,QAAQ,GAA4B;gBACxC,OAAO,EAAE,qBAAqB;gBAC9B,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa;gBAC5C,mBAAmB,EAAE,EAAE;gBACvB,cAAc,EAAE,CAAC;gBACjB,QAAQ,EAAE,KAAK;gBACf,OAAO,EACL,yBAAyB,MAAM,gBAAgB;oBAC/C,2EAA2E;gBAC7E,UAAU,EAAE,KAAK,CAAC,UAAU;aAC7B,CAAA;YACD,uBAAuB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;YAC9C,OAAO,CAAC,GAAG,CAAC,YAAY,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;YACnG,sEAAsE;YACtE,sEAAsE;YACtE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;YACpB,OAAM;QACR,CAAC;QAED,IAAI,WAA4D,CAAA;QAChE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAC/B,WAAW,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;QAC9D,CAAC;QAED,sFAAsF;QACtF,gFAAgF;QAChF,gDAAgD;QAChD,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAA;QAC3D,MAAM,YAAY,GAAG,uBAAuB,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QAEzF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAA;YAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAA;QACvE,MAAM,MAAM,GAAG,cAAc,CAAC;YAC5B,IAAI;YACJ,cAAc,EAAE,MAAM,CAAC,eAAe;YACtC,gBAAgB;YAChB,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,CAAC,CAAA;QAEF,6BAA6B;QAC7B,MAAM,aAAa,GAAa,EAAE,CAAA;QAClC,MAAM,WAAW,GAA0D,EAAE,CAAA;QAE7E,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YACtC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,IAAI,uBAAuB,EAAE,CAAA;gBAC5F,SAAQ;YACV,CAAC;YACD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACtB,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,IAAI,uCAAuC,EAAE,CAAA;gBAC5G,SAAQ;YACV,CAAC;YAED,oEAAoE;YACpE,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7B,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,QAAQ,CAAC,CAAA;gBAChD,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAA;gBAC9B,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;oBAC/B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC1B,CAAC;gBACD,SAAQ;YACV,CAAC;YAED,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,IAAI,sBAAsB,EAAE,CAAA;gBAC3F,SAAQ;YACV,CAAC;YAED,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;YAC1C,MAAM,SAAS,GAAG,MAAM,cAAc,CAAC,GAAG,CAAC,CAAA;YAC3C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,GAAG,oBAAoB,EAAE,CAAA;gBACrF,SAAQ;YACV,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAA;YAC5C,WAAW,CAAC,IAAI,CAAC,GAAG,UAAU,CAAA;YAC9B,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC/B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC1B,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAA;YAC/D,OAAO,CAAC,GAAG,CAAC,iCAAiC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAA;YACpF,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzD,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClC,OAAO,CAAC,GAAG,CAAC,KAAK,IAAI,KAAK,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC7F,CAAC;YACH,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBAChC,OAAO,CAAC,GAAG,CAAC,8BAA8B,IAAI,MAAM,CAAC,CAAA;gBACrD,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC,CAAA;YAC7C,CAAC;YACD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;YACtB,CAAC;YACD,OAAM;QACR,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAA;YAC/C,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;gBACzD,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC/F,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,gBAAgB;QAChB,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;QAChC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAA;QACnC,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC;YAC1B,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAyB;YACxD,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAsB;YAC9C,QAAQ,EAAE,YAAY;YACtB,UAAU,EAAE,IAAI,CAAC,OAAO;YACxB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,eAAe,EAAE,cAAc;YAC/B,qEAAqE;YACrE,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,GAAG,CAAC,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,WAAW,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrG,GAAG,CAAC,WAAW,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAA;QACF,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;YACvE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,wEAAwE;gBACxE,uEAAuE;gBACvE,qEAAqE;gBACrE,yEAAyE;gBACzE,uEAAuE;gBACvE,+DAA+D;gBAC/D,sEAAsE;gBACtE,IAAI,CAAC;oBACH,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC1E,CAAC;gBAAC,MAAM,CAAC;oBACP,mEAAmE;gBACrE,CAAC;gBACD,OAAO,CAAC,KAAK,CACX,sBAAsB,GAAG,CAAC,MAAM,eAAe,WAAW,CAAC,EAAE,IAAI;oBAC/D,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CACrD,CAAA;gBACD,oEAAoE;gBACpE,oEAAoE;gBACpE,uEAAuE;gBACvE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAA;gBACpB,OAAM;YACR,CAAC;QACH,CAAC;QAED,sDAAsD;QACtD,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClC,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;gBACpC,MAAM,aAAa,GAAG,2BAA2B,CAAC,UAAU,EAAE,MAAM,IAAI,SAAS,CAAC,CAAA;gBAClF,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;oBACpC,MAAM,EAAE,aAAa;oBACrB,IAAI,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;oBACxD,QAAQ,EAAE,UAAU,EAAE,QAAQ;iBAC/B,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACpC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;QAEhC,uBAAuB;QACvB,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC7B,MAAM,UAAU,GAAoB,EAAE,CAAA;YACtC,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACtC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC7B,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;oBAChF,UAAU,CAAC,IAAI,CACb,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;wBAC3C,OAAO,EAAE,QAAQ;wBACjB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;wBAC5C,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO;qBACrD,CAAC,CACH,CAAA;oBACD,SAAQ;gBACV,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtB,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;wBACpC,MAAM,EAAE,SAAS;wBACjB,QAAQ,EAAE,YAAY,IAAI,sBAAsB;qBACjD,CAAC,CAAA;oBACF,SAAQ;gBACV,CAAC;gBACD,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;gBAChF,UAAU,CAAC,IAAI,CACb,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;oBACvC,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;oBAC5C,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO;oBACpD,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa;wBACvD,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU;4BAC3C,CAAC,CAAC,SAAS;oBACf,cAAc,EAAE,QAAQ,CAAC,eAAe;oBACxC,GAAG,EAAE,QAAQ,CAAC,GAAG;iBAClB,CAAC,CACH,CAAA;YACH,CAAC;YACD,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;gBACtC,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC7B,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;oBAChF,MAAM,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;wBACjD,OAAO,EAAE,QAAQ;wBACjB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;wBAC5C,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO;qBACrD,CAAC,CAAA;oBACF,SAAQ;gBACV,CAAC;gBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;oBACtB,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;wBACpC,MAAM,EAAE,SAAS;wBACjB,QAAQ,EAAE,YAAY,IAAI,sBAAsB;qBACjD,CAAC,CAAA;oBACF,SAAQ;gBACV,CAAC;gBACD,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,QAAQ,CAAC,aAAa,EAAE,CAAC,CAAA;gBAChF,MAAM,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE;oBAC7C,OAAO,EAAE,QAAQ,CAAC,OAAO;oBACzB,MAAM,EAAE,kBAAkB,CAAC,QAAQ,EAAE,MAAM,CAAC;oBAC5C,KAAK,EAAE,QAAQ,CAAC,KAAK;oBACrB,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO;oBACpD,MAAM,EAAE,QAAQ,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa;wBACvD,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU;4BAC3C,CAAC,CAAC,SAAS;oBACf,cAAc,EAAE,QAAQ,CAAC,eAAe;oBACxC,GAAG,EAAE,QAAQ,CAAC,GAAG;iBAClB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;QAED,4DAA4D;QAC5D,MAAM,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC/C,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACxC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CACvC,CAAA;QAClC,MAAM,YAAY,GAAG,uBAAuB,CAC1C,eAAe,EACf,6BAA6B,CAAC,MAAM,CAAC,CACtC,CAAA;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,MAAM,uBAAuB,GAAG,MAAM,sCAAsC,CAAC,MAAM,CAAC,CAAA;YACpF,IAAI,uBAAuB,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;gBAC5C,sEAAsE;gBACtE,MAAM,uBAAuB,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAA;gBACtE,0EAA0E;gBAC1E,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;oBAChC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE;wBACvD,MAAM,EAAE,YAAY;wBACpB,IAAI,EAAE,IAAI;wBACV,aAAa,EAAE,uBAAuB;qBACvC,CAAC,CAAA;gBACJ,CAAC;gBACD,MAAM,0BAA0B,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAA;YACnF,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;oBAChC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,gBAAgB,EAAE;wBACvD,MAAM,EAAE,uBAAuB,CAAC,MAAM;wBACtC,IAAI,EAAE,uBAAuB,CAAC,IAAI;wBAClC,QAAQ,EAAE,uBAAuB,CAAC,QAAQ;wBAC1C,aAAa,EAAE,SAAS;qBACzB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,oBAAoB;QACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,mFAAmF;YACnF,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC9C,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,MAAM,IAAI,MAAM,CAAiB,CAAA;YACnF,sEAAsE;YACtE,yEAAyE;YACzE,yEAAyE;YACzE,wEAAwE;YACxE,6CAA6C;YAC7C,MAAM,QAAQ,GAAG,mBAAmB,CAAC;gBACnC,gBAAgB,EAAE,oBAAoB;gBACtC,QAAQ,EAAE,kBAAkB,EAAE;gBAC9B,aAAa,EAAE,OAAO;gBACtB,GAAG;aACJ,CAAC,CAAA;YACF,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE;gBACpG,QAAQ;aACT,CAAC,CAAA;YACF,wEAAwE;YACxE,0EAA0E;YAC1E,kEAAkE;YAClE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACtC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;YACtB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QACxB,CAAC;aAAM,CAAC;YACN,iCAAiC;YACjC,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;YAC9C,MAAM,MAAM,GAA4B;gBACtC,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,QAAQ,EAAE,MAAM,CAAC,WAAW,CAC1B,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACzB,IAAI;oBACJ,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,IAAI,SAAS;iBAC9E,CAAC,CACH;gBACD,cAAc,EAAE,aAAa;aAC9B,CAAA;YACD,0EAA0E;YAC1E,mEAAmE;YACnE,uBAAuB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;YAC5C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,58 @@
1
+ import type { CommandModule } from 'yargs';
2
+ /**
3
+ * Human-readable description of the session-id rules, shared by every
4
+ * validation error message so the CLI surfaces one consistent explanation
5
+ * (the bare regex plus the reserved-name rejections).
6
+ */
7
+ export declare const SESSION_ID_RULE = "^[a-zA-Z0-9_-]+$ and not a reserved name (con, prn, aux, nul, com1-9, lpt1-9, index, __proto__)";
8
+ export interface SessionRecord {
9
+ session_id: string;
10
+ created_at: string;
11
+ jobs: string[];
12
+ rounds: number;
13
+ }
14
+ export declare class SessionStore {
15
+ private readonly dir;
16
+ private readonly indexPath;
17
+ static fromHome(home: string): SessionStore;
18
+ constructor(mmrRoot: string);
19
+ private validateId;
20
+ private isValidId;
21
+ private filePath;
22
+ private sessionLockPath;
23
+ private makeRecord;
24
+ private readRecord;
25
+ private writeJsonAtomic;
26
+ private writeFreshJson;
27
+ private waitForLockRetry;
28
+ private withLock;
29
+ private readIndex;
30
+ private updateIndex;
31
+ start(id: string): SessionRecord;
32
+ show(id: string): SessionRecord | undefined;
33
+ list(): SessionRecord[];
34
+ end(id: string): boolean;
35
+ addJob(id: string, jobId: string, round: number): void;
36
+ }
37
+ /**
38
+ * Validates a session id against the same rules SessionStore enforces:
39
+ * the allowed-character regex plus Windows-reserved and system-reserved names
40
+ * that would otherwise pass the bare regex. Exported so callers (e.g. the
41
+ * review command) can reject invalid ids up front, before any side effects.
42
+ */
43
+ export declare function isValidSessionId(id: string): boolean;
44
+ /**
45
+ * Resolves the MMR state root. MMR_HOME, when set, may be absolute or
46
+ * cwd-relative (resolved to absolute here); a leading `~` is not expanded —
47
+ * rely on the shell to expand it, as with any other path env var.
48
+ */
49
+ export declare function resolveSessionRoot(): string;
50
+ /**
51
+ * The jobs directory, resolved under the same root as sessions so that
52
+ * `mmr review` (which writes jobs) and the rest of the job lifecycle
53
+ * (`mmr jobs|status|results|reconcile`) all honor MMR_HOME consistently.
54
+ */
55
+ export declare function resolveJobsDir(): string;
56
+ export declare function getSessionStore(): SessionStore;
57
+ export declare const sessionsCommand: CommandModule<object, object>;
58
+ //# sourceMappingURL=sessions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,OAAO,CAAA;AAQ9D;;;;GAIG;AACH,eAAO,MAAM,eAAe,oGACuE,CAAA;AAInG,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,MAAM,EAAE,MAAM,CAAA;CACf;AAMD,qBAAa,YAAY;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAQ;IAC5B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAElC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY;gBAI/B,OAAO,EAAE,MAAM;IAK3B,OAAO,CAAC,UAAU;IAMlB,OAAO,CAAC,SAAS;IAIjB,OAAO,CAAC,QAAQ;IAKhB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,UAAU;IASlB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,QAAQ;IA8BhB,OAAO,CAAC,SAAS;IAWjB,OAAO,CAAC,WAAW;IAQnB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa;IAchC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,GAAG,SAAS;IAM3C,IAAI,IAAI,aAAa,EAAE;IAMvB,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAexB,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAavD;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAI3C;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,wBAAgB,eAAe,IAAI,YAAY,CAE9C;AAED,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,MAAM,EAAE,MAAM,CA0CzD,CAAA"}
@@ -0,0 +1,266 @@
1
+ import fs from 'node:fs';
2
+ import os from 'node:os';
3
+ import path from 'node:path';
4
+ const SESSION_ID_RE = /^[a-zA-Z0-9_-]+$/;
5
+ const WINDOWS_RESERVED_ID_RE = /^(con|prn|aux|nul|com[1-9]|lpt[1-9])$/i;
6
+ const SYSTEM_SESSION_ID_RE = /^(index|__proto__)$/i;
7
+ /**
8
+ * Human-readable description of the session-id rules, shared by every
9
+ * validation error message so the CLI surfaces one consistent explanation
10
+ * (the bare regex plus the reserved-name rejections).
11
+ */
12
+ export const SESSION_ID_RULE = '^[a-zA-Z0-9_-]+$ and not a reserved name (con, prn, aux, nul, com1-9, lpt1-9, index, __proto__)';
13
+ const LOCK_TIMEOUT_MS = 5000;
14
+ const LOCK_POLL_MS = 25;
15
+ export class SessionStore {
16
+ dir;
17
+ indexPath;
18
+ static fromHome(home) {
19
+ return new SessionStore(path.join(home, '.mmr'));
20
+ }
21
+ constructor(mmrRoot) {
22
+ this.dir = path.join(mmrRoot, 'sessions');
23
+ this.indexPath = path.join(this.dir, 'index.json');
24
+ }
25
+ validateId(id) {
26
+ if (!this.isValidId(id)) {
27
+ throw new Error(`Invalid session id: ${id} - must match ${SESSION_ID_RULE}`);
28
+ }
29
+ }
30
+ isValidId(id) {
31
+ return isValidSessionId(id);
32
+ }
33
+ filePath(id) {
34
+ this.validateId(id);
35
+ return path.join(this.dir, `${id}.json`);
36
+ }
37
+ sessionLockPath(id) {
38
+ this.validateId(id);
39
+ return path.join(this.dir, `${id}.session-lock`);
40
+ }
41
+ makeRecord(id) {
42
+ return {
43
+ session_id: id,
44
+ created_at: new Date().toISOString(),
45
+ jobs: [],
46
+ rounds: 0,
47
+ };
48
+ }
49
+ readRecord(filePath, tolerateMalformed) {
50
+ try {
51
+ return JSON.parse(fs.readFileSync(filePath, 'utf-8'));
52
+ }
53
+ catch (err) {
54
+ if (err.code === 'ENOENT')
55
+ return undefined;
56
+ if (tolerateMalformed && err instanceof SyntaxError)
57
+ return undefined;
58
+ throw err;
59
+ }
60
+ }
61
+ writeJsonAtomic(filePath, value) {
62
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
63
+ const tmpPath = `${filePath}.${process.pid}.${Date.now()}.tmp`;
64
+ fs.writeFileSync(tmpPath, JSON.stringify(value, null, 2));
65
+ fs.renameSync(tmpPath, filePath);
66
+ }
67
+ writeFreshJson(filePath, record) {
68
+ try {
69
+ fs.writeFileSync(filePath, JSON.stringify(record, null, 2), { flag: 'wx' });
70
+ }
71
+ catch (err) {
72
+ if (err.code === 'EEXIST') {
73
+ throw new Error(`Session already exists: ${record.session_id}`);
74
+ }
75
+ throw err;
76
+ }
77
+ }
78
+ waitForLockRetry() {
79
+ const end = Date.now() + LOCK_POLL_MS;
80
+ while (Date.now() < end) {
81
+ // Synchronous CLI path; lock contention should be rare and short-lived.
82
+ }
83
+ }
84
+ withLock(filePath, fn) {
85
+ const lockPath = `${filePath}.lock`;
86
+ const deadline = Date.now() + LOCK_TIMEOUT_MS;
87
+ fs.mkdirSync(path.dirname(filePath), { recursive: true });
88
+ while (true) {
89
+ try {
90
+ fs.mkdirSync(lockPath, { recursive: false });
91
+ break;
92
+ }
93
+ catch (err) {
94
+ const code = err.code;
95
+ if (code !== 'EEXIST' || Date.now() >= deadline)
96
+ throw err;
97
+ try {
98
+ const stat = fs.statSync(lockPath);
99
+ if (Date.now() - stat.mtimeMs > LOCK_TIMEOUT_MS) {
100
+ fs.rmSync(lockPath, { recursive: true, force: true });
101
+ continue;
102
+ }
103
+ }
104
+ catch (statErr) {
105
+ if (statErr.code !== 'ENOENT')
106
+ throw statErr;
107
+ }
108
+ this.waitForLockRetry();
109
+ }
110
+ }
111
+ try {
112
+ return fn();
113
+ }
114
+ finally {
115
+ fs.rmSync(lockPath, { recursive: true, force: true });
116
+ }
117
+ }
118
+ readIndex() {
119
+ try {
120
+ const parsed = JSON.parse(fs.readFileSync(this.indexPath, 'utf-8'));
121
+ if (parsed === null || typeof parsed !== 'object' || Array.isArray(parsed))
122
+ return {};
123
+ return parsed;
124
+ }
125
+ catch (err) {
126
+ if (err.code === 'ENOENT')
127
+ return {};
128
+ throw err;
129
+ }
130
+ }
131
+ updateIndex(mutator) {
132
+ this.withLock(this.indexPath, () => {
133
+ const index = this.readIndex();
134
+ mutator(index);
135
+ this.writeJsonAtomic(this.indexPath, index);
136
+ });
137
+ }
138
+ start(id) {
139
+ this.validateId(id);
140
+ fs.mkdirSync(this.dir, { recursive: true });
141
+ const record = this.makeRecord(id);
142
+ const fp = this.filePath(id);
143
+ this.withLock(this.sessionLockPath(id), () => {
144
+ this.writeFreshJson(fp, record);
145
+ this.updateIndex((index) => {
146
+ index[id] = record;
147
+ });
148
+ });
149
+ return record;
150
+ }
151
+ show(id) {
152
+ if (!this.isValidId(id))
153
+ return undefined;
154
+ const fp = this.filePath(id);
155
+ return this.readRecord(fp, true);
156
+ }
157
+ list() {
158
+ const out = Object.values(this.readIndex());
159
+ out.sort((a, b) => new Date(b.created_at).getTime() - new Date(a.created_at).getTime());
160
+ return out;
161
+ }
162
+ end(id) {
163
+ this.validateId(id);
164
+ const fp = this.filePath(id);
165
+ return this.withLock(this.sessionLockPath(id), () => {
166
+ const existed = fs.existsSync(fp);
167
+ if (existed)
168
+ fs.rmSync(fp, { force: true });
169
+ let indexed = false;
170
+ this.updateIndex((index) => {
171
+ indexed = Object.hasOwn(index, id);
172
+ delete index[id];
173
+ });
174
+ return existed || indexed;
175
+ });
176
+ }
177
+ addJob(id, jobId, round) {
178
+ this.validateId(id);
179
+ const fp = this.filePath(id);
180
+ this.withLock(this.sessionLockPath(id), () => {
181
+ const record = this.readRecord(fp, false) ?? this.makeRecord(id);
182
+ record.jobs.push(jobId);
183
+ record.rounds = Math.max(record.rounds, round);
184
+ this.writeJsonAtomic(fp, record);
185
+ this.updateIndex((index) => {
186
+ index[id] = record;
187
+ });
188
+ });
189
+ }
190
+ }
191
+ /**
192
+ * Validates a session id against the same rules SessionStore enforces:
193
+ * the allowed-character regex plus Windows-reserved and system-reserved names
194
+ * that would otherwise pass the bare regex. Exported so callers (e.g. the
195
+ * review command) can reject invalid ids up front, before any side effects.
196
+ */
197
+ export function isValidSessionId(id) {
198
+ return SESSION_ID_RE.test(id) && !WINDOWS_RESERVED_ID_RE.test(id) && !SYSTEM_SESSION_ID_RE.test(id);
199
+ }
200
+ /**
201
+ * Resolves the MMR state root. MMR_HOME, when set, may be absolute or
202
+ * cwd-relative (resolved to absolute here); a leading `~` is not expanded —
203
+ * rely on the shell to expand it, as with any other path env var.
204
+ */
205
+ export function resolveSessionRoot() {
206
+ const mmrHome = process.env.MMR_HOME;
207
+ if (mmrHome !== undefined && mmrHome.trim() !== '')
208
+ return path.resolve(mmrHome);
209
+ return path.join(process.env.HOME ?? os.homedir(), '.mmr');
210
+ }
211
+ /**
212
+ * The jobs directory, resolved under the same root as sessions so that
213
+ * `mmr review` (which writes jobs) and the rest of the job lifecycle
214
+ * (`mmr jobs|status|results|reconcile`) all honor MMR_HOME consistently.
215
+ */
216
+ export function resolveJobsDir() {
217
+ return path.join(resolveSessionRoot(), 'jobs');
218
+ }
219
+ export function getSessionStore() {
220
+ return new SessionStore(resolveSessionRoot());
221
+ }
222
+ export const sessionsCommand = {
223
+ command: 'sessions <command>',
224
+ describe: 'Manage MMR review sessions (T2-B)',
225
+ builder: (yargs) => yargs
226
+ .command({
227
+ command: 'start <id>',
228
+ describe: 'Start an MMR review session',
229
+ builder: (cmd) => cmd.positional('id', { type: 'string', demandOption: true }),
230
+ handler: (args) => {
231
+ console.log(JSON.stringify(getSessionStore().start(args.id), null, 2));
232
+ },
233
+ })
234
+ .command({
235
+ command: 'list',
236
+ describe: 'List MMR review sessions',
237
+ handler: () => {
238
+ console.log(JSON.stringify(getSessionStore().list(), null, 2));
239
+ },
240
+ })
241
+ .command({
242
+ command: 'show <id>',
243
+ describe: 'Show an MMR review session',
244
+ builder: (cmd) => cmd.positional('id', { type: 'string', demandOption: true }),
245
+ handler: (args) => {
246
+ const record = getSessionStore().show(args.id);
247
+ if (!record)
248
+ throw new Error(`Session not found: ${args.id}`);
249
+ console.log(JSON.stringify(record, null, 2));
250
+ },
251
+ })
252
+ .command({
253
+ command: 'end <id>',
254
+ describe: 'End an MMR review session',
255
+ builder: (cmd) => cmd.positional('id', { type: 'string', demandOption: true }),
256
+ handler: (args) => {
257
+ if (!getSessionStore().end(args.id))
258
+ throw new Error(`Session not found: ${args.id}`);
259
+ console.log(JSON.stringify({ ended: args.id }, null, 2));
260
+ },
261
+ })
262
+ .demandCommand(1, 'Run mmr sessions --help for usage')
263
+ .strict(),
264
+ handler: () => { },
265
+ };
266
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/commands/sessions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,OAAO,CAAA;AAM9D,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,MAAM,EAAE,UAAU,CA2D3D,CAAA"}
1
+ {"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAsB,MAAM,OAAO,CAAA;AAK9D,UAAU,UAAU;IAClB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,MAAM,EAAE,UAAU,CA2D3D,CAAA"}
@@ -1,5 +1,4 @@
1
- import path from 'node:path';
2
- import os from 'node:os';
1
+ import { resolveJobsDir } from './sessions.js';
3
2
  import { JobStore } from '../core/job-store.js';
4
3
  import { TERMINAL_STATUSES } from '../types.js';
5
4
  export const statusCommand = {
@@ -11,7 +10,7 @@ export const statusCommand = {
11
10
  describe: 'Job ID (e.g. mmr-abc123)',
12
11
  }),
13
12
  handler: (args) => {
14
- const jobsDir = path.join(os.homedir(), '.mmr', 'jobs');
13
+ const jobsDir = resolveJobsDir();
15
14
  const store = new JobStore(jobsDir);
16
15
  let job;
17
16
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/commands/status.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAM/C,MAAM,CAAC,MAAM,aAAa,GAAsC;IAC9D,OAAO,EAAE,iBAAiB;IAC1B,QAAQ,EAAE,kCAAkC;IAC5C,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CACjB,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE;QACzB,IAAI,EAAE,QAAQ;QACd,YAAY,EAAE,IAAI;QAClB,QAAQ,EAAE,0BAA0B;KACrC,CAAC;IACJ,OAAO,EAAE,CAAC,IAAoC,EAAE,EAAE;QAChD,MAAM,OAAO,GAAG,cAAc,EAAE,CAAA;QAChC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAA;QAEnC,IAAI,GAAG,CAAA;QACP,IAAI,CAAC;YACH,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAW,CAAC,CAAA;QAC/C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,KAAK,CAAC,kBAAkB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,eAAe,GAAyD,EAAE,CAAA;QAChF,IAAI,WAAW,GAAG,IAAI,CAAA;QACtB,IAAI,SAAS,GAAG,KAAK,CAAA;QAErB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,YAAY;gBACpD,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,EAAE,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;gBAC3G,CAAC,CAAC,KAAK,CAAC,UAAU;oBAChB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,SAAS,CAAA;YAEf,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,CAAA;YAEzD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBACzC,WAAW,GAAG,KAAK,CAAA;YACrB,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjF,SAAS,GAAG,IAAI,CAAA;YAClB,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG;YACb,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,QAAQ,EAAE,eAAe;SAC1B,CAAA;QAED,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QAE5C,kGAAkG;QAClG,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;CACF,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { MmrConfigParsed, ChannelConfigParsed } from './schema.js';
1
+ import type { MmrConfigParsed, SubprocessChannelParsed } from './schema.js';
2
2
  /**
3
3
  * Default configuration applied when no config files are present.
4
4
  * version is set to 1 as the baseline; loadConfig supplies it
@@ -8,5 +8,5 @@ export declare const DEFAULT_CONFIG: MmrConfigParsed;
8
8
  /**
9
9
  * Built-in channel presets. Users can override any field via config files.
10
10
  */
11
- export declare const BUILTIN_CHANNELS: Record<string, ChannelConfigParsed>;
11
+ export declare const BUILTIN_CHANNELS: Record<string, SubprocessChannelParsed>;
12
12
  //# sourceMappingURL=defaults.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEvE;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,eAU5B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CA8DhE,CAAA"}
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAuB,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAEhG;;;;GAIG;AACH,eAAO,MAAM,cAAc,EAAE,eAmB5B,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAiIpE,CAAA"}
@@ -5,12 +5,21 @@
5
5
  */
6
6
  export const DEFAULT_CONFIG = {
7
7
  version: 1,
8
+ // defaults.compensator is intentionally omitted here. When absent,
9
+ // resolveCompensatorDispatch (core/compensator.ts) falls back to
10
+ // `claude -p --output-format json`, preserving historical behavior.
11
+ // Users who want a non-Anthropic fallback set defaults.compensator in
12
+ // their own .mmr.yaml.
8
13
  defaults: {
9
14
  fix_threshold: 'P2',
10
15
  timeout: 300,
11
16
  format: 'json',
12
17
  parallel: true,
13
18
  job_retention_days: 7,
19
+ loop_control: {
20
+ max_rounds_default: 5,
21
+ repeat_suppression_enabled: false,
22
+ },
14
23
  },
15
24
  channels: {}, // Populated below after BUILTIN_CHANNELS definition
16
25
  };
@@ -19,7 +28,9 @@ export const DEFAULT_CONFIG = {
19
28
  */
20
29
  export const BUILTIN_CHANNELS = {
21
30
  claude: {
31
+ kind: 'subprocess',
22
32
  enabled: true,
33
+ abstract: false,
23
34
  command: 'claude -p',
24
35
  flags: ['--output-format', 'json'],
25
36
  env: {},
@@ -37,7 +48,9 @@ export const BUILTIN_CHANNELS = {
37
48
  stderr: 'capture',
38
49
  },
39
50
  gemini: {
51
+ kind: 'subprocess',
40
52
  enabled: true,
53
+ abstract: false,
41
54
  // No `-p` here: gemini's `-p/--prompt` flag *requires* a positional
42
55
  // value, but MMR delivers prompts via stdin. With `gemini -p
43
56
  // --output-format json` and prompt on stdin, gemini parses
@@ -65,7 +78,9 @@ export const BUILTIN_CHANNELS = {
65
78
  timeout: 360,
66
79
  },
67
80
  codex: {
81
+ kind: 'subprocess',
68
82
  enabled: true,
83
+ abstract: false,
69
84
  command: 'codex exec',
70
85
  flags: ['--skip-git-repo-check', '-s', 'read-only', '--ephemeral'],
71
86
  env: {},
@@ -79,6 +94,67 @@ export const BUILTIN_CHANNELS = {
79
94
  output_parser: 'default',
80
95
  stderr: 'suppress',
81
96
  },
97
+ grok: {
98
+ kind: 'subprocess',
99
+ enabled: true,
100
+ abstract: false,
101
+ // Grok's `-p/--single` and `--prompt-file` REQUIRE the prompt as an arg
102
+ // value; unlike claude/gemini/codex, grok does NOT read the prompt from
103
+ // stdin (`grok -p` with no value errors: "a value is required for
104
+ // '--single <PROMPT>'"). We therefore deliver the prompt via a temp file
105
+ // (prompt_delivery: 'prompt-file') and reference its path with the
106
+ // {{prompt_file}} placeholder in --prompt-file.
107
+ command: 'grok',
108
+ prompt_delivery: 'prompt-file',
109
+ // Closed-book review: no cross-session memory, web-only tool allowlist
110
+ // (denies filesystem reads), isolated HOME/cwd strips host config —
111
+ // skills, MCP servers, hooks, and project instructions are all excluded.
112
+ cwd: '{{neutral_cwd}}',
113
+ env: { HOME: '{{neutral_home}}', XDG_CONFIG_HOME: '{{neutral_home}}' },
114
+ flags: [
115
+ '--prompt-file', '{{prompt_file}}',
116
+ '--output-format', 'json',
117
+ '--no-memory',
118
+ '--tools', 'web_search,web_fetch',
119
+ '--no-subagents', '--no-plan',
120
+ ],
121
+ auth: {
122
+ // `grok models` lists models and prints the login state; it does not
123
+ // make an LLM round-trip, so a short timeout is fine. Exit 1 ⇒ not
124
+ // authenticated / CLI error.
125
+ check: 'grok models >/dev/null 2>&1',
126
+ timeout: 10,
127
+ failure_exit_codes: [1],
128
+ recovery: 'grok login',
129
+ },
130
+ prompt_wrapper: '{{prompt}}',
131
+ // `grok --output-format json` wraps the reply as { "text": "<reply>",
132
+ // "thought": "...", ... }. Unwrap $.text, then run the default findings
133
+ // parser over the model's reply (same shape as the gemini unwrap).
134
+ output_parser: { kind: 'unwrap-jsonpath', wrap: '$.text', then: 'default' },
135
+ stderr: 'capture',
136
+ },
137
+ 'doc-conformance': {
138
+ // Disabled by default: runs up to 3 LLM calls (~3 min) via scaffold observe audit.
139
+ // Enable in .mmr.yaml or pass --channels=doc-conformance to use.
140
+ kind: 'subprocess',
141
+ enabled: false,
142
+ abstract: false,
143
+ command: 'scaffold observe audit --profile=full --scope=all --output-mode=mmr-findings',
144
+ flags: [],
145
+ env: {},
146
+ auth: {
147
+ // Full-profile checks invoke claude -p; verify it responds, not just that it's installed.
148
+ check: 'scaffold --version >/dev/null 2>&1 && claude -p "respond with ok" 2>/dev/null',
149
+ timeout: 20,
150
+ failure_exit_codes: [1, 127], // 127 = command not found (scaffold or claude missing)
151
+ recovery: 'Install scaffold (npm install -g @zigrivers/scaffold or brew install scaffold) and run: claude login',
152
+ },
153
+ prompt_wrapper: '{{prompt}}',
154
+ output_parser: 'doc-conformance',
155
+ stderr: 'capture',
156
+ timeout: 240, // 3 sequential LLM calls × 60s each + margin
157
+ },
82
158
  };
83
159
  // Seed DEFAULT_CONFIG with builtin channels
84
160
  DEFAULT_CONFIG.channels = { ...BUILTIN_CHANNELS };
@@ -1 +1 @@
1
- {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAoB;IAC7C,OAAO,EAAE,CAAC;IACV,QAAQ,EAAE;QACR,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE,GAAG;QACZ,MAAM,EAAE,MAAM;QACd,QAAQ,EAAE,IAAI;QACd,kBAAkB,EAAE,CAAC;KACtB;IACD,QAAQ,EAAE,EAAyC,EAAE,oDAAoD;CAC1G,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAwC;IACnE,MAAM,EAAE;QACN,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,WAAW;QACpB,KAAK,EAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC;QAClC,GAAG,EAAE,EAAE;QACP,IAAI,EAAE;YACJ,KAAK,EAAE,yCAAyC;YAChD,gEAAgE;YAChE,8DAA8D;YAC9D,sDAAsD;YACtD,OAAO,EAAE,EAAE;YACX,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACvB,QAAQ,EAAE,cAAc;SACzB;QACD,cAAc,EAAE,YAAY;QAC5B,aAAa,EAAE,SAAS;QACxB,MAAM,EAAE,SAAS;KAClB;IACD,MAAM,EAAE;QACN,OAAO,EAAE,IAAI;QACb,oEAAoE;QACpE,6DAA6D;QAC7D,2DAA2D;QAC3D,uDAAuD;QACvD,kEAAkE;QAClE,+DAA+D;QAC/D,+DAA+D;QAC/D,gDAAgD;QAChD,OAAO,EAAE,QAAQ;QACjB,KAAK,EAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC;QAClC,GAAG,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;QAC3B,IAAI,EAAE;YACJ,KAAK,EAAE,0DAA0D;YACjE,gEAAgE;YAChE,+DAA+D;YAC/D,+DAA+D;YAC/D,kEAAkE;YAClE,OAAO,EAAE,EAAE;YACX,kBAAkB,EAAE,CAAC,EAAE,CAAC;YACxB,QAAQ,EAAE,mBAAmB;SAC9B;QACD,cAAc,EAAE,YAAY;QAC5B,aAAa,EAAE,QAAQ;QACvB,MAAM,EAAE,SAAS;QACjB,OAAO,EAAE,GAAG;KACb;IACD,KAAK,EAAE;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,YAAY;QACrB,KAAK,EAAE,CAAC,uBAAuB,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,CAAC;QAClE,GAAG,EAAE,EAAE;QACP,IAAI,EAAE;YACJ,KAAK,EAAE,gCAAgC;YACvC,OAAO,EAAE,CAAC;YACV,kBAAkB,EAAE,CAAC,CAAC,CAAC;YACvB,QAAQ,EAAE,aAAa;SACxB;QACD,cAAc,EAAE,YAAY;QAC5B,aAAa,EAAE,SAAS;QACxB,MAAM,EAAE,UAAU;KACnB;CACF,CAAA;AAED,4CAA4C;AAC5C,cAAc,CAAC,QAAQ,GAAG,EAAE,GAAG,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"defaults.js","sourceRoot":"","sources":["../../src/config/defaults.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,15 @@ import { type MmrConfigParsed } from './schema.js';
2
2
  export interface LoadConfigOptions {
3
3
  projectRoot: string;
4
4
  userHome?: string;
5
+ onWarning?: (message: string) => void;
6
+ trustProjectConfig?: boolean;
7
+ configBaseRef?: string;
8
+ /**
9
+ * When true, project `.mmr.yaml` is not loaded at all (built-in + user config
10
+ * only). Used by the review pipeline in untrusted-HEAD / non-git mode without
11
+ * an explicit trust opt-in, so an untrusted working-tree config is never read.
12
+ */
13
+ skipProjectConfig?: boolean;
5
14
  cliOverrides?: {
6
15
  fix_threshold?: string;
7
16
  timeout?: number;
@@ -20,4 +29,17 @@ export interface LoadConfigOptions {
20
29
  * The merged result is validated through MmrConfigSchema.parse().
21
30
  */
22
31
  export declare function loadConfig(opts: LoadConfigOptions): MmrConfigParsed;
32
+ export type ProvenanceSource = 'default' | 'user' | 'project' | 'cli';
33
+ export interface ChannelProvenance {
34
+ [field: string]: ProvenanceSource | ChannelProvenance;
35
+ }
36
+ export interface ConfigProvenance {
37
+ defaults: ChannelProvenance;
38
+ channels: Record<string, ChannelProvenance>;
39
+ }
40
+ export interface LoadConfigWithProvenanceResult {
41
+ config: MmrConfigParsed;
42
+ provenance: ConfigProvenance;
43
+ }
44
+ export declare function loadConfigWithProvenance(opts: LoadConfigOptions): LoadConfigWithProvenanceResult;
23
45
  //# sourceMappingURL=loader.d.ts.map