@repo-os/repoos 0.5.47 → 0.5.49

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 (196) hide show
  1. package/README.md +4 -3
  2. package/dist/.build-info.json +2 -2
  3. package/dist/.build-stamp.json +1 -1
  4. package/dist/cli/index.js +17 -2
  5. package/dist/commands/check.d.ts +49 -2
  6. package/dist/commands/check.js +691 -451
  7. package/dist/commands/doctor.d.ts +4 -0
  8. package/dist/commands/doctor.js +78 -0
  9. package/dist/commands/init.js +86 -8
  10. package/dist/commands/support.d.ts +2 -0
  11. package/dist/commands/support.js +193 -0
  12. package/dist/commands/upgrade.d.ts +10 -0
  13. package/dist/commands/upgrade.js +38 -8
  14. package/dist/core/auth.d.ts +1 -1
  15. package/dist/core/auth.js +1 -1
  16. package/dist/core/check-plan-proposal.d.ts +31 -0
  17. package/dist/core/check-plan-proposal.js +96 -0
  18. package/dist/core/check-plan.d.ts +230 -0
  19. package/dist/core/check-plan.js +732 -0
  20. package/dist/core/check-results-store.d.ts +38 -0
  21. package/dist/core/check-results-store.js +72 -0
  22. package/dist/core/check-results.js +16 -8
  23. package/dist/core/check-runner.d.ts +61 -0
  24. package/dist/core/check-runner.js +253 -0
  25. package/dist/core/config.d.ts +31 -1
  26. package/dist/core/config.js +220 -4
  27. package/dist/core/doctor.d.ts +74 -0
  28. package/dist/core/doctor.js +680 -0
  29. package/dist/core/models.d.ts +1 -1
  30. package/dist/core/models.js +1 -1
  31. package/dist/core/redact.d.ts +70 -0
  32. package/dist/core/redact.js +223 -0
  33. package/dist/core/support-bundle.d.ts +263 -0
  34. package/dist/core/support-bundle.js +731 -0
  35. package/dist/core/types.d.ts +178 -4
  36. package/dist/server/agent-run-doc.d.ts +111 -0
  37. package/dist/server/agent-run-doc.js +183 -0
  38. package/dist/server/agents.d.ts +44 -1
  39. package/dist/server/agents.js +157 -11
  40. package/dist/server/branchless-release.js +5 -4
  41. package/dist/server/built-in-agent-runner.js +47 -3
  42. package/dist/server/built-in-agents.d.ts +113 -71
  43. package/dist/server/built-in-agents.js +495 -421
  44. package/dist/server/check-plan-info.d.ts +108 -0
  45. package/dist/server/check-plan-info.js +132 -0
  46. package/dist/server/distribution.d.ts +73 -0
  47. package/dist/server/distribution.js +173 -0
  48. package/dist/server/done.js +3 -2
  49. package/dist/server/handoff.js +4 -3
  50. package/dist/server/integration-job.d.ts +14 -0
  51. package/dist/server/integration-job.js +15 -1
  52. package/dist/server/integration-orchestrator.d.ts +28 -4
  53. package/dist/server/integration-orchestrator.js +123 -36
  54. package/dist/server/integration-status.d.ts +12 -1
  55. package/dist/server/integration-status.js +11 -7
  56. package/dist/server/json-truncation.d.ts +57 -0
  57. package/dist/server/json-truncation.js +223 -0
  58. package/dist/server/live-index.d.ts +15 -0
  59. package/dist/server/live-index.js +9 -0
  60. package/dist/server/release.js +2 -1
  61. package/dist/server/review.js +6 -3
  62. package/dist/server/routes/check-plan.d.ts +16 -0
  63. package/dist/server/routes/check-plan.js +18 -0
  64. package/dist/server/routes/debugger.js +12 -2
  65. package/dist/server/routes/helpers.js +10 -1
  66. package/dist/server/routes/index.d.ts +2 -0
  67. package/dist/server/routes/index.js +2 -0
  68. package/dist/server/routes/release.d.ts +6 -0
  69. package/dist/server/routes/release.js +23 -0
  70. package/dist/server/routes/support.d.ts +11 -0
  71. package/dist/server/routes/support.js +60 -0
  72. package/dist/server/routes/tasks.d.ts +8 -0
  73. package/dist/server/routes/tasks.js +57 -7
  74. package/dist/server/server.js +56 -7
  75. package/dist/ui/assets/AgentsView-B-w3_cUA.js +1 -0
  76. package/dist/ui/assets/AgentsView-Cp-2uoJK.css +1 -0
  77. package/dist/ui/assets/ChecksView-CBObmY95.js +1 -0
  78. package/dist/ui/assets/ChecksView-Dquk2SnE.css +1 -0
  79. package/dist/ui/assets/ContextView-5BIYLq1t.js +4 -0
  80. package/dist/ui/assets/DashboardView-C7HwIylJ.js +1 -0
  81. package/dist/ui/assets/DeploymentsView-AYs3M5WP.js +1 -0
  82. package/dist/ui/assets/{DiffView-FuqdhCWQ.js → DiffView-elhz-H8B.js} +2 -2
  83. package/dist/ui/assets/InputsView-D4XmIvgc.js +1 -0
  84. package/dist/ui/assets/LoginView-Bgv90FPK.js +1 -0
  85. package/dist/ui/assets/ReleasesView-6NUvSu9N.css +1 -0
  86. package/dist/ui/assets/ReleasesView-DPt6F5YS.js +3 -0
  87. package/dist/ui/assets/SettingsView-5eZ1Py0Q.js +3 -0
  88. package/dist/ui/assets/WorkView-C3h32p3k.js +2 -0
  89. package/dist/ui/assets/WorkView-CFnddFhr.css +1 -0
  90. package/dist/ui/assets/{abnfDiagram-VCTEODGH-DPqpqTy5.js → abnfDiagram-VCTEODGH-pHc-qg0W.js} +1 -1
  91. package/dist/ui/assets/architecture-7GRP2DOG-BExW7N2X.js +1 -0
  92. package/dist/ui/assets/{architectureDiagram-5GKGNRK7-CIDQQ6XV.js → architectureDiagram-5GKGNRK7-DQV0ZlG2.js} +1 -1
  93. package/dist/ui/assets/{blockDiagram-I7D4REHJ-DqZFpX8Q.js → blockDiagram-I7D4REHJ-BsnD-5PV.js} +1 -1
  94. package/dist/ui/assets/{button-CWZu0-iU.js → button-ywbZCzIW.js} +1 -1
  95. package/dist/ui/assets/{c4Diagram-7LVT6UL2-pDpB6ffs.js → c4Diagram-7LVT6UL2-CqpUjbtK.js} +1 -1
  96. package/dist/ui/assets/channel-ZvHJgbXo.js +1 -0
  97. package/dist/ui/assets/{chunk-4HAMMTFA-B1d8wkop.js → chunk-4HAMMTFA-Cp59m-71.js} +1 -1
  98. package/dist/ui/assets/{chunk-75Z2AOVW-CWJLkCtL.js → chunk-75Z2AOVW-ChHwnZLM.js} +1 -1
  99. package/dist/ui/assets/{chunk-DU6HZSFF-DsKrwkNI.js → chunk-DU6HZSFF-Becd7Cgr.js} +1 -1
  100. package/dist/ui/assets/{chunk-F27PBJKO-f905wcEi.js → chunk-F27PBJKO-Blb2qqJ4.js} +1 -1
  101. package/dist/ui/assets/{chunk-GMAD6QVW-CceBq1iu.js → chunk-GMAD6QVW-5Qh43abc.js} +1 -1
  102. package/dist/ui/assets/{chunk-GVQU2GXP-DUSgZzgc.js → chunk-GVQU2GXP-Bb0Ur8QB.js} +1 -1
  103. package/dist/ui/assets/{chunk-IMKFNOWR-OhGUhaWS.js → chunk-IMKFNOWR-OYY7Z4BW.js} +1 -1
  104. package/dist/ui/assets/{chunk-L3NEJ4N5-DPHn_oGy.js → chunk-L3NEJ4N5-aNCeLfta.js} +1 -1
  105. package/dist/ui/assets/{chunk-OSK3NFVY-B63-bIWk.js → chunk-OSK3NFVY-DeC-74ju.js} +1 -1
  106. package/dist/ui/assets/{chunk-P2QGCYS3-BdJ1YcCd.js → chunk-P2QGCYS3-D9AFqJkh.js} +1 -1
  107. package/dist/ui/assets/{chunk-POPQ4Y6H-CJbNVNwF.js → chunk-POPQ4Y6H-Ba34aN-g.js} +1 -1
  108. package/dist/ui/assets/{chunk-PWAF6VOD-CNouC5bV.js → chunk-PWAF6VOD-DO8Mg8r-.js} +1 -1
  109. package/dist/ui/assets/{chunk-SHT3W25Y-BZTaa-Kf.js → chunk-SHT3W25Y-CoPZM9XW.js} +1 -1
  110. package/dist/ui/assets/{chunk-SVP7TREG-DqSFUiOt.js → chunk-SVP7TREG-Bawvkywu.js} +1 -1
  111. package/dist/ui/assets/{chunk-TICWLB2K-BrDOAaza.js → chunk-TICWLB2K-D-QDMLtT.js} +1 -1
  112. package/dist/ui/assets/classDiagram-ZZMXUADV-CmFaEw-m.js +1 -0
  113. package/dist/ui/assets/classDiagram-v2-VYDZK3BY-CmFaEw-m.js +1 -0
  114. package/dist/ui/assets/{cynefin-OW5HDTMX-BulVep4K.js → cynefin-OW5HDTMX-BArHh8-d.js} +1 -1
  115. package/dist/ui/assets/{cynefinDiagram-5FMLGOSQ-Dhh-eCbO.js → cynefinDiagram-5FMLGOSQ-DhS-kLot.js} +1 -1
  116. package/dist/ui/assets/{dagre-GXQ25YYZ-KsL08dFG.js → dagre-GXQ25YYZ-9nuP3Mhz.js} +1 -1
  117. package/dist/ui/assets/{diagram-S7CK7UJ4-BmJZx8o1.js → diagram-S7CK7UJ4-CcjB4ae6.js} +1 -1
  118. package/dist/ui/assets/{diagram-UQ7AKVKN-BOnSqzgH.js → diagram-UQ7AKVKN-gEbDZ2wA.js} +1 -1
  119. package/dist/ui/assets/{diagram-VSXAHHWV-5SuigqJz.js → diagram-VSXAHHWV-B2I7HJ_I.js} +1 -1
  120. package/dist/ui/assets/{diagram-VX7I27RA-Dver1NHT.js → diagram-VX7I27RA-BjZiKmur.js} +1 -1
  121. package/dist/ui/assets/{diagram-Z3DM3KII-gG61Ou2E.js → diagram-Z3DM3KII-uHuWeWJS.js} +1 -1
  122. package/dist/ui/assets/{ebnfDiagram-PWID7BFC-Cj7UixlZ.js → ebnfDiagram-PWID7BFC-Dt6YEtM2.js} +1 -1
  123. package/dist/ui/assets/{erDiagram-RLTQ6QDP-gptj191Z.js → erDiagram-RLTQ6QDP-eWb4VjRB.js} +1 -1
  124. package/dist/ui/assets/eventmodeling-NTZA5JFV-BGINq340.js +1 -0
  125. package/dist/ui/assets/flowDiagram-HODETNUW-CslflvVm.js +1 -0
  126. package/dist/ui/assets/{ganttDiagram-EL5Y4UJY-C-k5hu6A.js → ganttDiagram-EL5Y4UJY-Dc1YagBo.js} +1 -1
  127. package/dist/ui/assets/{gitGraph-4MIJSDKK-CGOrneoE.js → gitGraph-4MIJSDKK-BKTHQFNQ.js} +1 -1
  128. package/dist/ui/assets/{gitGraphDiagram-WWUBYQGX-XJWp5pbf.js → gitGraphDiagram-WWUBYQGX-5MXnQYI9.js} +1 -1
  129. package/dist/ui/assets/index-DWedw2UO.css +1 -0
  130. package/dist/ui/assets/index-DXotWZmz.js +27 -0
  131. package/dist/ui/assets/{info-A6RAGUB7-DOl-xe0x.js → info-A6RAGUB7-CB_w7eMD.js} +1 -1
  132. package/dist/ui/assets/{infoDiagram-27XIBGKW-l3o0cYjj.js → infoDiagram-27XIBGKW-C-9Kuflq.js} +1 -1
  133. package/dist/ui/assets/{ishikawaDiagram-5VMMS53U-B1NauCQq.js → ishikawaDiagram-5VMMS53U-Dd1RLJJm.js} +1 -1
  134. package/dist/ui/assets/{journeyDiagram-3NMN7TZE-dBIA3nBV.js → journeyDiagram-3NMN7TZE-CD4al8cv.js} +1 -1
  135. package/dist/ui/assets/{kanban-definition-UXKFOSKX-DwNS0OHs.js → kanban-definition-UXKFOSKX-CicP51YB.js} +1 -1
  136. package/dist/ui/assets/{line-Dbmiiwnv.js → line-Cd1yQwS1.js} +1 -1
  137. package/dist/ui/assets/{mermaid-parser.core-C4YyLudQ.js → mermaid-parser.core-B65nU8-J.js} +3 -3
  138. package/dist/ui/assets/{mermaid.core-Ba_OGTSz.js → mermaid.core-m8HIJWVk.js} +4 -4
  139. package/dist/ui/assets/{mindmap-definition-YA3MSWOX-Dh7I3b3_.js → mindmap-definition-YA3MSWOX-B6X7miC7.js} +1 -1
  140. package/dist/ui/assets/{packet-AYTQ26CC-B0Q3gRTD.js → packet-AYTQ26CC-BGs-wvw2.js} +1 -1
  141. package/dist/ui/assets/{pegDiagram-XKGWAZYB-B8YG99Cd.js → pegDiagram-XKGWAZYB-C-lyH7_H.js} +1 -1
  142. package/dist/ui/assets/{pie-WAS4IAKB-CUlBHTvR.js → pie-WAS4IAKB-Dk_1-q02.js} +1 -1
  143. package/dist/ui/assets/{pieDiagram-E7YTZNPT-BnZqUDkM.js → pieDiagram-E7YTZNPT-g_h8F1NG.js} +1 -1
  144. package/dist/ui/assets/{quadrantDiagram-AXDQQJYC-DcUwOkYQ.js → quadrantDiagram-AXDQQJYC-BZnaapW7.js} +1 -1
  145. package/dist/ui/assets/{radar-RG4KPBEZ-HF5xGmaW.js → radar-RG4KPBEZ-DDgd9Igt.js} +1 -1
  146. package/dist/ui/assets/{railroad-74A4TZTK-BTk1PkNr.js → railroad-74A4TZTK-DhAP39G6.js} +1 -1
  147. package/dist/ui/assets/railroad-abnf-HS5TGJTU-BqsR_EwF.js +1 -0
  148. package/dist/ui/assets/railroad-ebnf-LZEXJU2U-Duonsle8.js +1 -0
  149. package/dist/ui/assets/railroad-peg-WCYAUIDC-LVUZVuDx.js +1 -0
  150. package/dist/ui/assets/{railroadDiagram-O6MQD6OU-Bkp0Ch0g.js → railroadDiagram-O6MQD6OU-CB0apIqD.js} +1 -1
  151. package/dist/ui/assets/{requirementDiagram-BXWQKSXE-CLfjDVbv.js → requirementDiagram-BXWQKSXE-DgmeoXsi.js} +1 -1
  152. package/dist/ui/assets/{sankeyDiagram-P5KCCOFB-DKwhpNDg.js → sankeyDiagram-P5KCCOFB-DjzQt3qt.js} +1 -1
  153. package/dist/ui/assets/{sequenceDiagram-WJ2MYXX4-Cnp7GvpQ.js → sequenceDiagram-WJ2MYXX4-CbbbJQEL.js} +1 -1
  154. package/dist/ui/assets/{stateDiagram-D77RDMKH-DsqdUH-h.js → stateDiagram-D77RDMKH-4wOmoi5j.js} +1 -1
  155. package/dist/ui/assets/stateDiagram-v2-MP3YSRHH-BJWDIO8n.js +1 -0
  156. package/dist/ui/assets/{swimlanes-42K2YHIH-2dKHkIfx.js → swimlanes-42K2YHIH-BsVty5RJ.js} +1 -1
  157. package/dist/ui/assets/swimlanesDiagram-VR7AAH4N-DibiQlL8.js +8 -0
  158. package/dist/ui/assets/{timeline-definition-24CTP7MA-DsEfLZLN.js → timeline-definition-24CTP7MA-jG7c5_Cs.js} +1 -1
  159. package/dist/ui/assets/{treeView-Q6P3EWNA-Dv0KgKnC.js → treeView-Q6P3EWNA-DLCAW9b3.js} +1 -1
  160. package/dist/ui/assets/{treemap-WGGIJYW6-CP6HeYD3.js → treemap-WGGIJYW6-uUXNdPOX.js} +1 -1
  161. package/dist/ui/assets/vendor-ui-C4DmZ9GE.js +3 -0
  162. package/dist/ui/assets/vendor-vue-0d2wfih_.js +1 -0
  163. package/dist/ui/assets/{vennDiagram-4TSXK5OY-XmwE5O7F.js → vennDiagram-4TSXK5OY-CHK_fGs0.js} +1 -1
  164. package/dist/ui/assets/{wardley-WFR3VGLG-4hmMSweq.js → wardley-WFR3VGLG-DJG6hnMr.js} +1 -1
  165. package/dist/ui/assets/{wardleyDiagram-VM6X3IG4-Ch9Qr3LE.js → wardleyDiagram-VM6X3IG4-C82KklcY.js} +1 -1
  166. package/dist/ui/assets/{xychartDiagram-S5SC5T6Z-CDHgQsZE.js → xychartDiagram-S5SC5T6Z-q9hGmKYE.js} +1 -1
  167. package/dist/ui/index.html +5 -5
  168. package/dist/ui/sw.js +2 -2
  169. package/package.json +1 -1
  170. package/dist/ui/assets/AgentsView-CKT4t7th.css +0 -1
  171. package/dist/ui/assets/AgentsView-Dl4vvY2_.js +0 -1
  172. package/dist/ui/assets/ContextView-BjwM5xoY.js +0 -4
  173. package/dist/ui/assets/DashboardView-24xLzQn5.js +0 -1
  174. package/dist/ui/assets/DeploymentsView-D43M8zkp.js +0 -1
  175. package/dist/ui/assets/InputsView-BJ4MbPN0.js +0 -1
  176. package/dist/ui/assets/LoginView-YDUuuNnS.js +0 -1
  177. package/dist/ui/assets/ReleasesView-BEG1A0YH.css +0 -1
  178. package/dist/ui/assets/ReleasesView-D-xVP571.js +0 -3
  179. package/dist/ui/assets/SettingsView-iBTgAqaE.js +0 -3
  180. package/dist/ui/assets/WorkView-CAdwvLu1.css +0 -1
  181. package/dist/ui/assets/WorkView-DLgLtg2V.js +0 -1
  182. package/dist/ui/assets/architecture-7GRP2DOG-wD_U38P8.js +0 -1
  183. package/dist/ui/assets/channel-Da9L8FRd.js +0 -1
  184. package/dist/ui/assets/classDiagram-ZZMXUADV-1Z25SOdJ.js +0 -1
  185. package/dist/ui/assets/classDiagram-v2-VYDZK3BY-1Z25SOdJ.js +0 -1
  186. package/dist/ui/assets/eventmodeling-NTZA5JFV-CFuFGO_7.js +0 -1
  187. package/dist/ui/assets/flowDiagram-HODETNUW-DK9ZmZ6I.js +0 -1
  188. package/dist/ui/assets/index-COMZ2Wdm.js +0 -27
  189. package/dist/ui/assets/index-C_iaRuyV.css +0 -1
  190. package/dist/ui/assets/railroad-abnf-HS5TGJTU-DM2GUVFR.js +0 -1
  191. package/dist/ui/assets/railroad-ebnf-LZEXJU2U-PC05P78D.js +0 -1
  192. package/dist/ui/assets/railroad-peg-WCYAUIDC-TPiCukJe.js +0 -1
  193. package/dist/ui/assets/stateDiagram-v2-MP3YSRHH-CSd5puL-.js +0 -1
  194. package/dist/ui/assets/swimlanesDiagram-VR7AAH4N-Be1y9KaM.js +0 -8
  195. package/dist/ui/assets/vendor-ui-BsjpmGE7.js +0 -3
  196. package/dist/ui/assets/vendor-vue-CobgyEJp.js +0 -1
package/README.md CHANGED
@@ -88,9 +88,10 @@ is enabled so its `repoos` shim is on your PATH.
88
88
 
89
89
  Use the same tool to update a package-manager install: `npm update -g
90
90
  @repo-os/repoos`, `bun update -g @repo-os/repoos`, `pnpm update -g
91
- @repo-os/repoos`, `mise upgrade npm:@repo-os/repoos`, or `brew upgrade
92
- repo-os/tap/repoos`. A standalone install updates with `repoos upgrade` and
93
- removes with `repoos uninstall`.
91
+ @repo-os/repoos`, `mise upgrade npm:@repo-os/repoos`, or `brew update && brew
92
+ upgrade repo-os/tap/repoos`. A standalone install updates with `repoos upgrade`
93
+ and removes with `repoos uninstall`. When run from a recognised package-manager
94
+ install, `repoos upgrade` prints the matching package-manager command instead.
94
95
 
95
96
  Then in any repo:
96
97
 
@@ -1,4 +1,4 @@
1
1
  {
2
- "hash": "9b6f7f703e729021650ce8768748ad02cc51078cfee42e1c4cc328f5ea177dad",
3
- "version": "0.5.47"
2
+ "hash": "f5bc7080896e6462e45fb88aeecb10c9c2f675395207b58c11bc29b2b5524aa7",
3
+ "version": "0.5.49"
4
4
  }
@@ -1,3 +1,3 @@
1
1
  {
2
- "generatedAt": "2026-09-19T09:11:14.500Z"
2
+ "generatedAt": "2026-09-20T04:12:23.987Z"
3
3
  }
package/dist/cli/index.js CHANGED
@@ -14,6 +14,8 @@ import { cmdTunnel } from "../commands/tunnel.js";
14
14
  import { cmdUpgrade } from "../commands/upgrade.js";
15
15
  import { cmdUninstall } from "../commands/uninstall.js";
16
16
  import { cmdStatus } from "../commands/status.js";
17
+ import { cmdDoctor } from "../commands/doctor.js";
18
+ import { cmdSupport } from "../commands/support.js";
17
19
  import { cmdService } from "../commands/service.js";
18
20
  import { checkBuild } from "../core/build.js";
19
21
  import { loadConfig } from "../core/config.js";
@@ -82,10 +84,15 @@ function exRow(cmd, comment) {
82
84
  }
83
85
  function help() {
84
86
  const commandLines = [
85
- cmdRow("check", "Full definition-of-done: build, typecheck, tests, UI smoke check"),
87
+ cmdRow("check", "Definition-of-done gate: runs the check plan declared in repoos.toml"),
88
+ cmdRow("check --profile full", "Run every declared step, including ones held back from a routine run"),
89
+ cmdRow("check --changed main", "Fast pre-review pass over steps affected by changed paths"),
90
+ cmdRow("check --print-plan", "Print the resolved plan as [[check.steps]] TOML to commit"),
86
91
  cmdRow("init [name]", "Scaffold work/, repoos.toml, AGENTS.md; outside a git repo runs a guided flow that can launch the web console"),
87
92
  cmdRow("list [status]", `Show the board (or one column: ${c.dim("inbox|ready|active|review|done")})`),
88
93
  cmdRow("status [--json]", "One-screen health snapshot: server, build freshness, board, worktrees, tunnel, git"),
94
+ cmdRow("doctor [--json]", "Read-only readiness preflight: identity, config, layout, tools, check plan, server, secrets"),
95
+ cmdRow("support bundle", "Write a redacted, inspectable diagnostic bundle for failed setups"),
89
96
  cmdRow("show <id>", "Show a task's full spec"),
90
97
  cmdRow("mv <id> <status>", `Move a task to a new status — never merges code ${c.dim('flags: --note "...", --force-not-merged')}`),
91
98
  cmdRow('note <id> "<text>"', "Append a free-form note to a task's activity log"),
@@ -155,6 +162,8 @@ function main() {
155
162
  undefined,
156
163
  "check",
157
164
  "status",
165
+ "doctor",
166
+ "support",
158
167
  "help",
159
168
  "--help",
160
169
  "-h",
@@ -189,6 +198,12 @@ function main() {
189
198
  case "status":
190
199
  void cmdStatus(rest);
191
200
  break;
201
+ case "doctor":
202
+ void cmdDoctor(rest);
203
+ break;
204
+ case "support":
205
+ void cmdSupport(rest);
206
+ break;
192
207
  case "show":
193
208
  case "cat":
194
209
  cmdShow(rest[0]);
@@ -238,7 +253,7 @@ function main() {
238
253
  void cmdService(rest);
239
254
  break;
240
255
  case "check":
241
- void cmdCheck();
256
+ void cmdCheck(rest);
242
257
  break;
243
258
  case "tunnel":
244
259
  void cmdTunnel(rest);
@@ -1,4 +1,6 @@
1
- import type { CheckContrastPair, CheckThemeScope } from "../core/types.js";
1
+ import type { CheckContrastPair, CheckThemeScope, RepoOSConfig } from "../core/types.js";
2
+ import { type CheckPlan, type CheckStep } from "../core/check-plan.js";
3
+ import { type StepRunResult } from "../core/check-runner.js";
2
4
  /**
3
5
  * Bare `require(...)` calls guard (#0271 follow-up): this package is
4
6
  * `"type": "module"` (ESM) — a bare, un-shadowed `require` is undefined at
@@ -167,4 +169,49 @@ export declare function resolveSmokeCommand(configured: string | undefined, pkgS
167
169
  * floor via `undefined`.
168
170
  */
169
171
  export declare function testPoolSize(env: NodeJS.ProcessEnv): number | undefined;
170
- export declare function cmdCheck(): Promise<void>;
172
+ /** `repoos check` CLI flags (#0446). */
173
+ export interface CheckOptions {
174
+ /** Profile to select. Defaults to `[check] defaultProfile`, else `default`. */
175
+ profile?: string;
176
+ /** Git ref for changed-path mode. Also read from `REPOOS_CHECK_CHANGED`. */
177
+ changed?: string;
178
+ /** Print the resolved plan as `[[check.steps]]` TOML and exit 0. */
179
+ printPlan?: boolean;
180
+ }
181
+ /** Parse `repoos check` flags. Unknown flags are ignored, never fatal. */
182
+ export declare function parseCheckArgs(argv?: string[]): CheckOptions;
183
+ /**
184
+ * Repo-relative paths that differ from `ref`, plus anything uncommitted or
185
+ * untracked — the working tree an agent actually hands over, not just what is
186
+ * committed on the branch.
187
+ *
188
+ * Returns `null` when `ref` itself can't be resolved. That has to be
189
+ * distinguishable from "nothing changed": a typo'd ref with an empty result
190
+ * would silently scope every `whenChanged` step away and let the gate go green
191
+ * having verified nothing at all.
192
+ */
193
+ export declare function changedPathsSince(repoRoot: string, ref: string): string[] | null;
194
+ export interface RunPlanOptions {
195
+ repoRoot: string;
196
+ /** Config for the repo; loaded here when not supplied. */
197
+ cfg?: RepoOSConfig;
198
+ profile?: string;
199
+ /** Changed paths for changed-path mode; absent means a full run. */
200
+ changedPaths?: string[];
201
+ /** Git ref the changed paths came from — the Tests step scopes itself to it. */
202
+ changedRef?: string;
203
+ onStart?: (step: CheckStep) => void;
204
+ onResult?: (result: StepRunResult) => void;
205
+ }
206
+ /**
207
+ * Run a resolved plan, in declaration order, and return one structured result
208
+ * per step. Pure with respect to the caller's output: printing happens through
209
+ * the callbacks, so this is unit-testable end to end (see
210
+ * ui-app/tests/check-plan.test.ts).
211
+ *
212
+ * Every step ends in exactly one of: passed, failed, timeout, missing
213
+ * prerequisite, or an explicit skip that says why. Nothing here can "pass" by
214
+ * not running.
215
+ */
216
+ export declare function runCheckPlan(plan: CheckPlan, opts: RunPlanOptions): Promise<StepRunResult[]>;
217
+ export declare function cmdCheck(argv?: string[]): Promise<void>;