@iowarp/clio-coder 0.4.0 → 0.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 (581) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/README.md +116 -16
  3. package/dist/{acp-G5WJBNCT.js → acp-ZILU3AUO.js} +14 -14
  4. package/dist/{agents-FMV2Q5G4.js → agents-HYWGBGQR.js} +40 -29
  5. package/dist/assets/codewiki.json +1 -1
  6. package/dist/{auth-3IDSJEIK.js → auth-N3QT7CBO.js} +21 -19
  7. package/dist/{builtins-XCZWXSC7.js → builtins-UJLMOVOV.js} +6 -6
  8. package/dist/{chunk-PQEFIJ36.js → chunk-2LEAKD4C.js} +1 -2
  9. package/dist/{chunk-3BT2XMV4.js → chunk-2NM363SV.js} +50 -57
  10. package/dist/{chunk-J4W7KFM7.js → chunk-2VG7KLYV.js} +24 -279
  11. package/dist/{chunk-SST6Z5JA.js → chunk-336NSSKI.js} +1 -1
  12. package/dist/{chunk-K5C3NCBD.js → chunk-3I5NY75V.js} +5 -5
  13. package/dist/{chunk-VAZSBTKF.js → chunk-3QSOM6PA.js} +2 -2
  14. package/dist/{chunk-TZ3SGWZZ.js → chunk-5QIAJV2D.js} +2 -2
  15. package/dist/{chunk-OQBA45DZ.js → chunk-5YHDIDBP.js} +2 -2
  16. package/dist/{chunk-NHLBIGRH.js → chunk-6CCS4G3W.js} +40 -17
  17. package/dist/{chunk-2JDWVJND.js → chunk-6DWBAZ5U.js} +2 -2
  18. package/dist/{chunk-LDQ2ZF2M.js → chunk-6FN3E6KX.js} +5 -5
  19. package/dist/{chunk-X3YGUTOB.js → chunk-6HMJX2VU.js} +59 -59
  20. package/dist/{chunk-VEO4AP2K.js → chunk-6I5ILFOF.js} +3 -2
  21. package/dist/{chunk-B7OBL7PK.js → chunk-6NJQITNH.js} +18 -11
  22. package/dist/{chunk-IQ7KR472.js → chunk-6VC4OV3Z.js} +6 -3
  23. package/dist/{chunk-P3FOHJT4.js → chunk-72GZI5EV.js} +2 -2
  24. package/dist/{chunk-AB44T6BB.js → chunk-74YWRRU5.js} +8 -7
  25. package/dist/{chunk-SJ5ZKQ4S.js → chunk-7EPLI7VL.js} +2 -2
  26. package/dist/{chunk-HWHKMHUA.js → chunk-7OBGU7UB.js} +3 -3
  27. package/dist/{chunk-2OQE55CK.js → chunk-7PWAODYW.js} +2 -2
  28. package/dist/{chunk-IBEBSCYA.js → chunk-7RY5VZPH.js} +42 -33
  29. package/dist/{chunk-LQ3DZAMX.js → chunk-ABLSQ6JX.js} +2 -2
  30. package/dist/{chunk-QLFS5GO2.js → chunk-AFKWHWXF.js} +12 -22
  31. package/dist/{chunk-FWDFM5ZU.js → chunk-AK5XEFVZ.js} +3 -3
  32. package/dist/{chunk-O6TL7WWY.js → chunk-AKB4GYDL.js} +4 -4
  33. package/dist/chunk-AP73CFDC.js +308 -0
  34. package/dist/{chunk-JDG2WCRO.js → chunk-BBTJOK6Y.js} +5 -5
  35. package/dist/{chunk-SP2RXXYO.js → chunk-BDPT6GTK.js} +10 -10
  36. package/dist/{chunk-NQQH3YT7.js → chunk-BJGUKIG4.js} +3 -3
  37. package/dist/{chunk-O4XIVISU.js → chunk-BTGG6BG2.js} +79 -38
  38. package/dist/chunk-BTK3SSSK.js +67 -0
  39. package/dist/{chunk-M6L6IDJG.js → chunk-BWH6N36D.js} +1 -1
  40. package/dist/chunk-BWW4HLO4.js +301 -0
  41. package/dist/{chunk-I5VEOC6I.js → chunk-C537JADH.js} +10 -10
  42. package/dist/{chunk-HI63TFOG.js → chunk-CDNVLKUX.js} +3 -3
  43. package/dist/{chunk-UM7N4G5A.js → chunk-CWVRRIEI.js} +2 -2
  44. package/dist/{chunk-BKFM6EJV.js → chunk-D4CJV46V.js} +2 -2
  45. package/dist/chunk-D7E7WCDF.js +27 -0
  46. package/dist/{chunk-WZR7K7ZX.js → chunk-E67WX76H.js} +6 -6
  47. package/dist/{chunk-FQ4SKYE4.js → chunk-EBY63B7G.js} +2 -5
  48. package/dist/chunk-EIMVLWB3.js +1842 -0
  49. package/dist/{chunk-RAPCMZL4.js → chunk-FSP7CMNU.js} +9 -1
  50. package/dist/{chunk-MLKNTWH2.js → chunk-FYUN5KZ3.js} +21 -21
  51. package/dist/{chunk-YJX4SHTD.js → chunk-GIZNH63R.js} +1 -1
  52. package/dist/{chunk-X75E3D2N.js → chunk-GPPB3JBE.js} +18 -16
  53. package/dist/{chunk-GR5G2PVF.js → chunk-GVQJ5CCZ.js} +15 -10
  54. package/dist/chunk-HJWWJ6IL.js +184 -0
  55. package/dist/{chunk-VO67MWHC.js → chunk-HRQMFLJP.js} +3 -3
  56. package/dist/{chunk-VYMXRQI6.js → chunk-HUAS7ITX.js} +89 -93
  57. package/dist/{chunk-BKFJHQCA.js → chunk-I66EAJFY.js} +2 -2
  58. package/dist/{chunk-DYJP44XW.js → chunk-IG7BCQBA.js} +1 -1
  59. package/dist/{chunk-32KWKNSF.js → chunk-IXJT6DCX.js} +3 -3
  60. package/dist/{chunk-C2LTL2W6.js → chunk-J4HBWF6Y.js} +360 -172
  61. package/dist/chunk-J5LZHVIT.js +284 -0
  62. package/dist/{chunk-QLL7ILRG.js → chunk-JA5QWE4Z.js} +510 -202
  63. package/dist/{chunk-BBVJUZHB.js → chunk-JIEGK6UF.js} +5 -173
  64. package/dist/{chunk-36EJLSQQ.js → chunk-JZWT5J3Y.js} +4 -4
  65. package/dist/{chunk-HZHHCK24.js → chunk-K6BF4U2H.js} +476 -322
  66. package/dist/{chunk-Z2RR6MAK.js → chunk-MA3H6DM5.js} +6 -6
  67. package/dist/{chunk-CODPRO7Q.js → chunk-MOPSG2X7.js} +6 -6
  68. package/dist/{chunk-76ONBSIA.js → chunk-MQXIVJ35.js} +14 -5
  69. package/dist/{chunk-YDFRH54B.js → chunk-N5UK64DP.js} +4 -4
  70. package/dist/chunk-NDDGJUXD.js +81 -0
  71. package/dist/{chunk-4ZG3XFUR.js → chunk-NLFAQR7Z.js} +12 -1
  72. package/dist/{chunk-VO2LKSTM.js → chunk-O42A54GG.js} +2 -2
  73. package/dist/{chunk-W5VSYASO.js → chunk-OJTRZGR3.js} +46 -87
  74. package/dist/{chunk-NHCZP4K7.js → chunk-PBP4B7XR.js} +2 -2
  75. package/dist/{chunk-3URVFKWK.js → chunk-PJJ6MY27.js} +5 -5
  76. package/dist/{chunk-ZGVHUX3M.js → chunk-PMZVFWSR.js} +2 -2
  77. package/dist/{chunk-GKF55TAZ.js → chunk-PVAMAVBB.js} +3 -2
  78. package/dist/{chunk-6DB53AJS.js → chunk-QKIFBZKT.js} +7 -7
  79. package/dist/{chunk-HJJTYUHX.js → chunk-QMXC4JB7.js} +20 -20
  80. package/dist/chunk-QTFGO774.js +644 -0
  81. package/dist/{chunk-CY6FY24N.js → chunk-R23Z6K6I.js} +2 -2
  82. package/dist/{chunk-ULC6OTWO.js → chunk-R32CLGZ6.js} +13 -13
  83. package/dist/{chunk-KMVISBZR.js → chunk-RKSR6VSF.js} +1 -1
  84. package/dist/{chunk-F4CKPOEQ.js → chunk-SCYB3HA4.js} +72 -26
  85. package/dist/{chunk-LY4S7GJC.js → chunk-SINK3QR6.js} +18 -16
  86. package/dist/{chunk-U77AMWDL.js → chunk-TD3PGPQA.js} +43 -22
  87. package/dist/{chunk-QBJA7R7N.js → chunk-THYWACCR.js} +2 -2
  88. package/dist/{chunk-QREDIESB.js → chunk-TVH4ONAM.js} +14 -8
  89. package/dist/chunk-U2WB7TZS.js +271 -0
  90. package/dist/{chunk-KFZI4NIL.js → chunk-UAPGZHYC.js} +145 -31
  91. package/dist/{chunk-DQITNCXG.js → chunk-UEDMSP56.js} +29 -14
  92. package/dist/{chunk-3XML7CDN.js → chunk-UXN6JT4W.js} +2 -2
  93. package/dist/{chunk-CMZWFGD2.js → chunk-VAVR4IJY.js} +19 -15
  94. package/dist/{chunk-BPKCPIL7.js → chunk-VEGN6WIQ.js} +2 -2
  95. package/dist/chunk-VKFQTNDV.js +66 -0
  96. package/dist/{chunk-7MCTRUCE.js → chunk-VKRH2TCS.js} +2 -2
  97. package/dist/{chunk-5LXZXPKX.js → chunk-VN3SHNBN.js} +2 -2
  98. package/dist/{chunk-UOSL25KY.js → chunk-VXMFAE2W.js} +1 -1
  99. package/dist/{chunk-BBVYXMFO.js → chunk-WNP7O5WZ.js} +2 -2
  100. package/dist/{chunk-SUCTJL45.js → chunk-WR6U3OVP.js} +3 -3
  101. package/dist/{chunk-BUMFYQFY.js → chunk-XKA2ICR3.js} +124 -113
  102. package/dist/{chunk-UXMFQ54G.js → chunk-Y45G3AXC.js} +39 -39
  103. package/dist/{chunk-J5Q24KAG.js → chunk-Y4CAGMM6.js} +2 -2
  104. package/dist/{chunk-NYS75XW5.js → chunk-YAKGTXEV.js} +5 -3
  105. package/dist/{chunk-V5DHCITQ.js → chunk-ZAZB4JMW.js} +23 -12
  106. package/dist/{chunk-Z4TXYIEG.js → chunk-ZJLUDYFY.js} +9 -9
  107. package/dist/{chunk-HKIYEGME.js → chunk-ZTJUVLTU.js} +2 -2
  108. package/dist/{chunk-2ANTL7MR.js → chunk-ZW55JB7N.js} +2 -2
  109. package/dist/cli/index.js +36 -36
  110. package/dist/{clio-2JXHBBY5.js → clio-IT3G3VQH.js} +12 -13
  111. package/dist/{code-nav-3YYRMYNF.js → code-nav-RK6S7F6E.js} +5 -5
  112. package/dist/codewiki/build-worker.js +1 -1
  113. package/dist/{compile-cache-7FPE6PS3.js → compile-cache-OQAVB7Y5.js} +2 -4
  114. package/dist/{components-RYZV4JGP.js → components-UBWCQSRW.js} +4 -4
  115. package/dist/{config-QZPCMYSO.js → config-3QZRWZJF.js} +53 -49
  116. package/dist/{configure-TEGEBYCA.js → configure-FL7Y3KJF.js} +25 -22
  117. package/dist/{context-E6H5RNMC.js → context-5HE7ODYK.js} +47 -43
  118. package/dist/{context-AV7OEZ4D.js → context-KYQFRVDC.js} +11 -11
  119. package/dist/{context-GSXUE4CT.js → context-XNHL75JV.js} +32 -19
  120. package/dist/{context-clear-SHIBYK6T.js → context-clear-N545L53A.js} +47 -43
  121. package/dist/{context-working-set-5ZGKPGZQ.js → context-working-set-QHKXSV2F.js} +10 -9
  122. package/dist/{dispatch-runner-EFMJT4LD.js → dispatch-runner-RGIE5PCT.js} +56 -47
  123. package/dist/{docs-23KQS3XK.js → docs-5NAF6AU7.js} +5 -11
  124. package/dist/doctor-ZGPEGHIP.js +772 -0
  125. package/dist/{eval-TFBYQH4H.js → eval-GXLL44RD.js} +63 -45
  126. package/dist/{eval-inventory-SXH7PDKX.js → eval-inventory-HBWSWQOK.js} +7 -8
  127. package/dist/{evidence-ERGESKGN.js → evidence-HWLBRH3Q.js} +44 -40
  128. package/dist/{evolve-VDXTSYCJ.js → evolve-FTZBMNVW.js} +43 -39
  129. package/dist/{extensions-7BGBHN57.js → extensions-VHRBEID7.js} +4 -4
  130. package/dist/{fleet-2RRVDF2V.js → fleet-CKZHJWZJ.js} +86 -73
  131. package/dist/{fleet-commands-VJ726XIA.js → fleet-commands-EXDXBMV6.js} +10 -9
  132. package/dist/{fleet-decisions-EPAPM3XJ.js → fleet-decisions-OTHB6KRL.js} +5 -5
  133. package/dist/{fleet-graph-JF5QOATM.js → fleet-graph-YTEZUCUT.js} +13 -11
  134. package/dist/{fleet-inspect-VLY4S7QM.js → fleet-inspect-SS6YMDCK.js} +44 -41
  135. package/dist/{fleet-preflight-AIZUEJOY.js → fleet-preflight-PBY4VYOM.js} +5 -9
  136. package/dist/{fleet-validate-AJRPDMDV.js → fleet-validate-KMEM5L3S.js} +16 -13
  137. package/dist/{fleet-verify-JFEL2L3H.js → fleet-verify-QD5M7E7Q.js} +42 -39
  138. package/dist/{fleet-view-ZCON35AG.js → fleet-view-WAMJYNDT.js} +44 -52
  139. package/dist/{init-DN2WWLFE.js → init-5XQRBOFV.js} +63 -58
  140. package/dist/{install-XGLBQY5E.js → install-NKNG7KD4.js} +2 -2
  141. package/dist/{interop-OZBKXAYL.js → interop-34TVO25M.js} +13 -11
  142. package/dist/{library-YWZG7IMW.js → library-3QY6KF57.js} +17 -14
  143. package/dist/{memory-I4C4HMLW.js → memory-L4UTIIIW.js} +45 -41
  144. package/dist/{models-CEYXJBO6.js → models-ZVX3QOWE.js} +39 -31
  145. package/dist/{monitor-NZ6GCI3P.js → monitor-CEKVSYTS.js} +50 -46
  146. package/dist/{orchestrator-GCGQ4N5I.js → orchestrator-77BAP6BC.js} +1807 -1039
  147. package/dist/{panes-KY6W3V2E.js → panes-7STHOAUJ.js} +4 -4
  148. package/dist/{panes-HMABYVO4.js → panes-SHAUIRXY.js} +10 -8
  149. package/dist/{paths-II4K7DNR.js → paths-L7LGY6RN.js} +4 -4
  150. package/dist/{reset-DQ6FGCSH.js → reset-EOLM7GVE.js} +7 -8
  151. package/dist/{resources-BB3MVJMD.js → resources-74GKTLSF.js} +17 -13
  152. package/dist/{run-H2GQDUER.js → run-HBAUJNNZ.js} +86 -76
  153. package/dist/{share-GTJN6A5O.js → share-G3APVLVP.js} +17 -14
  154. package/dist/{skills-L55TEW6R.js → skills-35HHUKCR.js} +19 -16
  155. package/dist/{skills-eval-XVXPH2JI.js → skills-eval-QN4HSHDC.js} +55 -57
  156. package/dist/{skills-inventory-S4MXPJFV.js → skills-inventory-J357J34F.js} +15 -12
  157. package/dist/{slash-commands-ZSGASKJC.js → slash-commands-JZZCQA32.js} +31 -29
  158. package/dist/{steer-RZGSCY4R.js → steer-XAVHJM22.js} +3 -3
  159. package/dist/{support-PKEUNNQL.js → support-U7QOWY26.js} +6 -6
  160. package/dist/{targets-NCPZ644J.js → targets-DSM6CY3M.js} +59 -53
  161. package/dist/{terminal-lease-44SV3YCN.js → terminal-lease-JOPFUVEM.js} +14 -9
  162. package/dist/{tools-DAF3DI3C.js → tools-MKNWVPBH.js} +10 -8
  163. package/dist/{trace-FYVW2MQA.js → trace-ECQ7TIYZ.js} +48 -3
  164. package/dist/{tui-primitives-2AKXQNZK.js → tui-primitives-K5PASC3O.js} +8 -4
  165. package/dist/{uninstall-DW2PNOIC.js → uninstall-N34PCTGJ.js} +4 -6
  166. package/dist/{upgrade-3XPP6OQL.js → upgrade-H7TOM7YL.js} +35 -62
  167. package/dist/{usage-3NLHGTU2.js → usage-X52N3IDJ.js} +51 -48
  168. package/dist/{verifiers-SSQONKRT.js → verifiers-EJTVVSMA.js} +10 -9
  169. package/dist/{verify-3U6J7FZI.js → verify-YJL6XET2.js} +9 -8
  170. package/dist/{web-fetch-S7RR6GZ7.js → web-fetch-MPIFL3LL.js} +1 -2
  171. package/dist/{wiki-generate-CEHYGPGQ.js → wiki-generate-4NDZTQ4B.js} +66 -63
  172. package/dist/{with-panes-MKB46MPQ.js → with-panes-OBOBFIIR.js} +62 -26
  173. package/dist/worker/entry.js +57 -52
  174. package/docs/acp.md +1 -1
  175. package/docs/built-in-agents.md +40 -32
  176. package/docs/commands-and-modes.md +9 -3
  177. package/docs/config-knobs-audit.md +3 -0
  178. package/docs/configuration-and-targets.md +105 -164
  179. package/docs/environment-variables.md +2 -1
  180. package/docs/exit-codes-and-output.md +2 -0
  181. package/docs/fleet-demo-runbook.md +6 -3
  182. package/docs/fleet-dispatch.md +8 -6
  183. package/docs/installation-and-lifecycle.md +1 -1
  184. package/docs/release-cut-checklist.md +164 -177
  185. package/docs/trace-store.md +15 -10
  186. package/docs/troubleshooting.md +1 -1
  187. package/evals/README.md +5 -0
  188. package/evals/behavioral-corpus-grader.mjs +103 -0
  189. package/evals/behavioral-machinery-baseline.json +2276 -0
  190. package/evals/behavioral-machinery-driver.ts +250 -0
  191. package/evals/behavioral-machinery-support.ts +253 -0
  192. package/evals/behavioral-machinery.yaml +614 -0
  193. package/evals/behavioral-model-negative-control.yaml +68 -0
  194. package/evals/behavioral-model.yaml +216 -0
  195. package/evals/fixtures/behavioral-facts.txt +3 -0
  196. package/evals/fixtures/behavioral-main.ts +7 -0
  197. package/evals/fixtures/decoy/note.txt +2 -0
  198. package/evals/fixtures/private/credentials.txt +1 -0
  199. package/evals/tracked-metrics-baseline.yaml +229 -0
  200. package/evals/tracked-metrics-grader.mjs +129 -0
  201. package/package.json +5 -15
  202. package/skills/README.md +6 -6
  203. package/skills/coding/ast-grep/SKILL.md +8 -2
  204. package/skills/coding/coding-standards/SKILL.md +8 -2
  205. package/skills/coding/prototype/SKILL.md +8 -2
  206. package/skills/coding/tdd/SKILL.md +8 -2
  207. package/skills/context/context-handoff/SKILL.md +12 -3
  208. package/skills/context/context-handoff/evals.md +3 -3
  209. package/skills/context/context-prime/SKILL.md +8 -2
  210. package/skills/context/context-prime/evals.md +2 -2
  211. package/skills/git/file-ticket/SKILL.md +9 -4
  212. package/skills/git/file-ticket/evals.md +2 -2
  213. package/skills/git/fix-issue/SKILL.md +12 -5
  214. package/skills/git/fix-issue/evals.md +4 -4
  215. package/skills/git/resolve-merge-conflicts/SKILL.md +8 -2
  216. package/skills/git/resolve-merge-conflicts/evals.md +2 -2
  217. package/skills/git/ship/SKILL.md +9 -3
  218. package/skills/git/ship/evals.md +4 -4
  219. package/skills/git/worktree-create/SKILL.md +7 -2
  220. package/skills/git/worktree-create/evals.md +6 -6
  221. package/skills/git/worktree-merge/SKILL.md +7 -2
  222. package/skills/git/worktree-merge/evals.md +6 -6
  223. package/skills/meta/{clio-dev → clio-coder-dev}/SKILL.md +14 -8
  224. package/skills/meta/{clio-dev → clio-coder-dev}/evals.md +3 -3
  225. package/skills/meta/{clio-test → clio-coder-test}/SKILL.md +11 -5
  226. package/skills/meta/{clio-test → clio-coder-test}/evals.md +1 -1
  227. package/skills/meta/credentials/SKILL.md +9 -2
  228. package/skills/meta/find-skills/SKILL.md +8 -2
  229. package/skills/meta/herdr/SKILL.md +8 -2
  230. package/skills/meta/skill-craft/SKILL.md +21 -4
  231. package/skills/planning/architecture/SKILL.md +9 -3
  232. package/skills/planning/backlog/SKILL.md +8 -2
  233. package/skills/planning/prd/SKILL.md +8 -2
  234. package/skills/planning/product-intent/SKILL.md +8 -2
  235. package/skills/planning/tech-spec/SKILL.md +9 -3
  236. package/skills/registry.yaml +66 -66
  237. package/skills/research/arxiv-literature/SKILL.md +8 -2
  238. package/skills/research/experiment-protocol/SKILL.md +9 -2
  239. package/skills/research/scientific-debugging/SKILL.md +9 -2
  240. package/skills/research/scientific-debugging/evals.md +2 -2
  241. package/skills/research/scientific-modernization/SKILL.md +9 -2
  242. package/skills/skill-marketplace.json +257 -38
  243. package/skills/workflow/cut-it/SKILL.md +10 -2
  244. package/skills/workflow/design-council/SKILL.md +11 -2
  245. package/skills/workflow/grill-me/SKILL.md +8 -2
  246. package/skills/workflow/workflow-distiller/SKILL.md +8 -2
  247. package/src/cli/acp.ts +2 -2
  248. package/src/cli/auth.ts +2 -2
  249. package/src/cli/bootstrap-generate.ts +5 -5
  250. package/src/cli/clio.ts +6 -1
  251. package/src/cli/config-inspect.ts +3 -3
  252. package/src/cli/configure-interop.ts +1 -1
  253. package/src/cli/configure.ts +27 -27
  254. package/src/cli/default-target.ts +1 -1
  255. package/src/cli/docs.ts +6 -6
  256. package/src/cli/doctor-naming.ts +323 -0
  257. package/src/cli/doctor-panes.ts +46 -14
  258. package/src/cli/doctor-toolchain.ts +29 -8
  259. package/src/cli/doctor.ts +15 -1
  260. package/src/cli/eval-inventory.ts +8 -8
  261. package/src/cli/evidence-detail.ts +1 -1
  262. package/src/cli/evidence-inventory.ts +1 -1
  263. package/src/cli/fleet-decisions.ts +1 -1
  264. package/src/cli/fleet-inspect.ts +1 -1
  265. package/src/cli/fleet-preflight.ts +1 -1
  266. package/src/cli/fleet-verify.ts +1 -1
  267. package/src/cli/fleet-view.ts +40 -23
  268. package/src/cli/fleet.ts +8 -5
  269. package/src/cli/interop-inspect.ts +2 -2
  270. package/src/cli/models.ts +3 -3
  271. package/src/cli/modes/print.ts +1 -1
  272. package/src/cli/reset.ts +1 -1
  273. package/src/cli/run.ts +11 -15
  274. package/src/cli/share.ts +1 -1
  275. package/src/cli/skills-eval.ts +11 -11
  276. package/src/cli/targets.ts +23 -24
  277. package/src/cli/trace-inspect.ts +1 -1
  278. package/src/cli/trace.ts +41 -0
  279. package/src/cli/uninstall.ts +2 -2
  280. package/src/cli/upgrade.ts +29 -34
  281. package/src/cli/usage.ts +2 -2
  282. package/src/cli/validate-model.ts +1 -1
  283. package/src/cli/verifiers-inspect.ts +1 -1
  284. package/src/cli/wiki-generate.ts +5 -5
  285. package/src/core/bash-exec.ts +1 -1
  286. package/src/core/boot-trace.ts +3 -3
  287. package/src/core/bus-trace.ts +2 -2
  288. package/src/core/compile-cache.ts +1 -1
  289. package/src/core/config.ts +1062 -886
  290. package/src/core/defaults.ts +321 -528
  291. package/src/core/domain-loader.ts +6 -4
  292. package/src/core/event-bus.ts +1 -1
  293. package/src/core/file-references.ts +78 -88
  294. package/src/core/git-commit-attribution.ts +3 -9
  295. package/src/core/guardrails.ts +24 -4
  296. package/src/core/naming-compat.ts +45 -0
  297. package/src/core/naming-events.ts +62 -0
  298. package/src/core/recent-models.ts +1 -7
  299. package/src/core/residency-protection.ts +4 -8
  300. package/src/core/resolve-config-value.ts +1 -1
  301. package/src/core/response-model-id.ts +0 -14
  302. package/src/core/session-routing.ts +84 -74
  303. package/src/core/skill-activation.ts +18 -0
  304. package/src/core/termination.ts +4 -4
  305. package/src/core/timers.ts +2 -12
  306. package/src/domains/agents/catalog.ts +2 -12
  307. package/src/domains/agents/extension.ts +3 -3
  308. package/src/domains/agents/registry.ts +7 -7
  309. package/src/domains/agents/result-contract.ts +1 -1
  310. package/src/domains/agents/spec.ts +0 -11
  311. package/src/domains/config/classify.ts +35 -47
  312. package/src/domains/config/extension.ts +5 -5
  313. package/src/domains/config/keybindings.ts +48 -47
  314. package/src/domains/config/watcher.ts +1 -1
  315. package/src/domains/context/codewiki/indexer.ts +1 -1
  316. package/src/domains/context/extension.ts +3 -3
  317. package/src/domains/context/prompt-context.ts +1 -1
  318. package/src/domains/context/wiki/assemble.ts +2 -2
  319. package/src/domains/context/working-set/replay/metrics.ts +0 -4
  320. package/src/domains/context/working-set/replay/report.ts +1 -1
  321. package/src/domains/context/working-set/replay/synthetic.ts +2 -2
  322. package/src/domains/dispatch/active-route-planner.ts +2 -2
  323. package/src/domains/dispatch/agent-candidates.ts +1 -1
  324. package/src/domains/dispatch/agent-ledger-store.ts +1 -1
  325. package/src/domains/dispatch/agent-ledger.ts +1 -1
  326. package/src/domains/dispatch/assignment.ts +5 -5
  327. package/src/domains/dispatch/capacity-lease.ts +2 -5
  328. package/src/domains/dispatch/code-step.ts +1 -1
  329. package/src/domains/dispatch/contract.ts +2 -2
  330. package/src/domains/dispatch/extension.ts +65 -61
  331. package/src/domains/dispatch/fleet-node-prompt.ts +1 -1
  332. package/src/domains/dispatch/fleet-preflight.ts +8 -17
  333. package/src/domains/dispatch/fleet-run.ts +0 -7
  334. package/src/domains/dispatch/gate-decisions.ts +25 -14
  335. package/src/domains/dispatch/joint-route-resolver.ts +1 -1
  336. package/src/domains/dispatch/path-scope.ts +0 -61
  337. package/src/domains/dispatch/placement.ts +2 -2
  338. package/src/domains/dispatch/receipt-findings.ts +1 -1
  339. package/src/domains/dispatch/receipt-integrity.ts +20 -8
  340. package/src/domains/dispatch/reservation-store.ts +0 -23
  341. package/src/domains/dispatch/route-decision.ts +1 -1
  342. package/src/domains/dispatch/route-history.ts +1 -1
  343. package/src/domains/dispatch/route-policy.ts +1 -1
  344. package/src/domains/dispatch/route-readiness.ts +0 -28
  345. package/src/domains/dispatch/run-event-journal.ts +6 -5
  346. package/src/domains/dispatch/tool-stats.ts +1 -1
  347. package/src/domains/dispatch/transport.ts +2 -19
  348. package/src/domains/dispatch/types.ts +3 -3
  349. package/src/domains/dispatch/worker-protocol.ts +2 -2
  350. package/src/domains/eval/artifacts/store.ts +5 -4
  351. package/src/domains/eval/compare/thresholds.ts +0 -8
  352. package/src/domains/eval/execution-provenance.ts +1 -1
  353. package/src/domains/eval/metrics/token-stream.ts +0 -7
  354. package/src/domains/eval/report.ts +1 -1
  355. package/src/domains/eval/runner.ts +1 -1
  356. package/src/domains/eval/runners/clio-run.ts +7 -6
  357. package/src/domains/eval/runners/external-command.ts +4 -3
  358. package/src/domains/eval/schema/artifact.ts +1 -1
  359. package/src/domains/eval/schema/behavioral-metrics.ts +3 -2
  360. package/src/domains/eval/schema/behavioral.ts +7 -6
  361. package/src/domains/eval/schema/execution-envelope.ts +4 -2
  362. package/src/domains/eval/schema/naming.ts +10 -0
  363. package/src/domains/eval/schema/suite.ts +2 -2
  364. package/src/domains/eval/schema/validate.ts +9 -5
  365. package/src/domains/eval/schema/verdict.ts +4 -2
  366. package/src/domains/eval/store.ts +12 -2
  367. package/src/domains/eval/suites/run.ts +12 -6
  368. package/src/domains/eval/types.ts +1 -1
  369. package/src/domains/eval/workspaces/git.ts +1 -1
  370. package/src/domains/eval/workspaces/temp-copy.ts +1 -1
  371. package/src/domains/evidence/build.ts +13 -5
  372. package/src/domains/interop/consent.ts +7 -7
  373. package/src/domains/interop/extension.ts +1 -1
  374. package/src/domains/lifecycle/doctor.ts +27 -21
  375. package/src/domains/lifecycle/migrations/2026-09-01-clio-coder-naming.ts +155 -0
  376. package/src/domains/lifecycle/migrations/2026-09-01-retire-panes-knobs.ts +59 -0
  377. package/src/domains/lifecycle/migrations/2026-09-01-settings-v2.ts +338 -0
  378. package/src/domains/lifecycle/migrations/index.ts +20 -1
  379. package/src/domains/lifecycle/naming-history.ts +153 -0
  380. package/src/domains/lifecycle/naming-mutable-state.ts +104 -0
  381. package/src/domains/lifecycle/naming-resources.ts +261 -0
  382. package/src/domains/lifecycle/naming-tool-markers.ts +139 -0
  383. package/src/domains/lifecycle/naming-yazi.ts +81 -0
  384. package/src/domains/lifecycle/upgrade-notice.ts +1 -1
  385. package/src/domains/memory/task-memory-handoff.ts +6 -3
  386. package/src/domains/middleware/index.ts +7 -0
  387. package/src/domains/middleware/marketplace-offer.ts +339 -0
  388. package/src/domains/middleware/runtime.ts +2 -2
  389. package/src/domains/mux/contract.ts +157 -25
  390. package/src/domains/mux/detect.ts +29 -5
  391. package/src/domains/mux/dock-controller.ts +365 -0
  392. package/src/domains/mux/extension.ts +7 -1
  393. package/src/domains/mux/index.ts +20 -0
  394. package/src/domains/mux/operations.ts +28 -0
  395. package/src/domains/mux/protocol.ts +19 -6
  396. package/src/domains/mux/socket-client.ts +167 -19
  397. package/src/domains/mux/types.ts +49 -6
  398. package/src/domains/mux/yazi/event-stream.ts +6 -4
  399. package/src/domains/mux/yazi/profile.ts +1 -1
  400. package/src/domains/mux/yazi/session.ts +26 -3
  401. package/src/domains/observability/extension.ts +1 -1
  402. package/src/domains/observability/out-of-turn-usage.ts +2 -2
  403. package/src/domains/observability/projection.ts +1 -1
  404. package/src/domains/observability/trace-store.ts +22 -12
  405. package/src/domains/prompts/compiler.ts +2 -2
  406. package/src/domains/prompts/extension.ts +3 -3
  407. package/src/domains/prompts/fragments/identity/clio-worker.md +1 -1
  408. package/src/domains/prompts/fragments/operating/skills.md +25 -18
  409. package/src/domains/providers/extension.ts +5 -5
  410. package/src/domains/providers/knowledge-base-path.ts +1 -1
  411. package/src/domains/providers/model-runtime-capabilities.ts +14 -2
  412. package/src/domains/providers/models/cloud-models/alcf.yaml +1 -1
  413. package/src/domains/providers/models/local-models/{clio-local-coding-targets.yaml → clio-coder-local-coding-targets.yaml} +4 -4
  414. package/src/domains/providers/plugins.ts +1 -1
  415. package/src/domains/providers/resolver.ts +1 -1
  416. package/src/domains/providers/runtimes/cloud/alcf.ts +4 -4
  417. package/src/domains/providers/runtimes/common/lmstudio-http.ts +1 -5
  418. package/src/domains/providers/runtimes/common/local-synth.ts +3 -3
  419. package/src/domains/providers/runtimes/common/probe-helpers.ts +2 -2
  420. package/src/domains/providers/runtimes/local-native/llamacpp-completion.ts +1 -1
  421. package/src/domains/providers/runtimes/local-native/lmstudio.ts +2 -9
  422. package/src/domains/providers/runtimes/protocol/litellm.ts +1 -91
  423. package/src/domains/providers/types/knowledge-base.ts +13 -0
  424. package/src/domains/providers/types/local-model-quirks.ts +2 -2
  425. package/src/domains/providers/types/target-descriptor.ts +3 -3
  426. package/src/domains/resources/extension.ts +1 -1
  427. package/src/domains/resources/library.ts +6 -6
  428. package/src/domains/resources/prompts/loader.ts +1 -1
  429. package/src/domains/resources/skills/content-hash.ts +7 -6
  430. package/src/domains/resources/skills/evals.ts +1 -1
  431. package/src/domains/resources/skills/install.ts +36 -12
  432. package/src/domains/resources/skills/loader.ts +39 -13
  433. package/src/domains/resources/skills/marketplace.ts +21 -2
  434. package/src/domains/resources/skills/promotion.ts +214 -0
  435. package/src/domains/safety/audit.ts +2 -2
  436. package/src/domains/safety/finish-contract.ts +2 -1
  437. package/src/domains/safety/run-effects.ts +1 -1
  438. package/src/domains/scheduling/extension.ts +4 -4
  439. package/src/domains/session/archive-readers.ts +9 -1
  440. package/src/domains/session/compaction/branch-summary.ts +4 -0
  441. package/src/domains/session/compaction/compact.ts +1 -1
  442. package/src/domains/session/compaction/tokens.ts +4 -0
  443. package/src/domains/session/context-accounting.ts +1 -1
  444. package/src/domains/session/decision-board.ts +1 -1
  445. package/src/domains/session/extension.ts +1 -1
  446. package/src/domains/session/handoff.ts +2 -2
  447. package/src/domains/session/prompt-manifest.ts +0 -5
  448. package/src/domains/session/protected-artifact-journal.ts +12 -6
  449. package/src/domains/session/retry.ts +1 -1
  450. package/src/domains/share/archive.ts +85 -36
  451. package/src/domains/toolchain/install.ts +1 -1
  452. package/src/engine/acp/adapter.ts +3 -3
  453. package/src/engine/acp/event-mapper.ts +3 -3
  454. package/src/engine/acp/server.ts +27 -26
  455. package/src/engine/acp/tool-mediator.ts +2 -2
  456. package/src/engine/acp/types.ts +1 -1
  457. package/src/engine/alcf-oauth.ts +5 -5
  458. package/src/engine/antigravity/subprocess-runtime.ts +2 -2
  459. package/src/engine/api-registry.ts +1 -1
  460. package/src/engine/apis/llamacpp-residency.ts +1 -19
  461. package/src/engine/apis/lmstudio.ts +1 -6
  462. package/src/engine/apis/ollama-native.ts +3 -3
  463. package/src/engine/apis/openai-completions.ts +2 -2
  464. package/src/engine/apis/residency.ts +3 -9
  465. package/src/engine/claude/sdk-module.ts +1 -12
  466. package/src/engine/claude/sdk-runtime.ts +6 -6
  467. package/src/engine/claude/subprocess-runtime.ts +1 -1
  468. package/src/engine/claude/tool-safety.ts +4 -4
  469. package/src/engine/loop-guard.ts +0 -5
  470. package/src/engine/session.ts +14 -7
  471. package/src/engine/tui-primitives.ts +1 -1
  472. package/src/engine/worker-events.ts +6 -6
  473. package/src/engine/worker-runtime.ts +14 -13
  474. package/src/entry/orchestrator.ts +107 -88
  475. package/src/interactive/application-controller.ts +21 -21
  476. package/src/interactive/bus-notices.ts +2 -2
  477. package/src/interactive/chat-loop.ts +8 -8
  478. package/src/interactive/chat-panel.ts +1 -1
  479. package/src/interactive/clio-editor.ts +105 -1
  480. package/src/interactive/context-activity.ts +8 -6
  481. package/src/interactive/context-meter.ts +3 -6
  482. package/src/interactive/context-overlay.ts +1 -1
  483. package/src/interactive/cost-overlay.ts +1 -1
  484. package/src/interactive/council-grid.ts +2 -2
  485. package/src/interactive/dispatch-board.ts +30 -33
  486. package/src/interactive/editor-bash.ts +21 -0
  487. package/src/interactive/editor-steer.ts +9 -4
  488. package/src/interactive/editor-submit.ts +24 -18
  489. package/src/interactive/external-editor.ts +1 -1
  490. package/src/interactive/file-reference-completion.ts +360 -0
  491. package/src/interactive/footer/dashboard.ts +15 -17
  492. package/src/interactive/footer/notifications.ts +14 -8
  493. package/src/interactive/footer/widgets.ts +2 -44
  494. package/src/interactive/interactive-application.ts +79 -59
  495. package/src/interactive/interactive-event-projection.ts +1 -1
  496. package/src/interactive/interactive-input-runtime.ts +2 -2
  497. package/src/interactive/interactive-presentation.ts +21 -16
  498. package/src/interactive/interactive-shell.ts +2 -2
  499. package/src/interactive/interactive-slash-runtime.ts +63 -17
  500. package/src/interactive/interactive-subscriptions.ts +1 -1
  501. package/src/interactive/interactive-tickers.ts +1 -1
  502. package/src/interactive/keybinding-manager.ts +4 -4
  503. package/src/interactive/layout.ts +1 -1
  504. package/src/interactive/memory-overlay.ts +2 -2
  505. package/src/interactive/modal-marker.ts +2 -21
  506. package/src/interactive/mutation-preview.ts +1 -1
  507. package/src/interactive/overlay-frame.ts +4 -12
  508. package/src/interactive/overlay-general-openers.ts +6 -2
  509. package/src/interactive/overlay-key-routing.ts +7 -7
  510. package/src/interactive/overlay-lifecycle.ts +1 -1
  511. package/src/interactive/overlay-model-selectors.ts +3 -3
  512. package/src/interactive/overlays/agents.ts +2 -2
  513. package/src/interactive/overlays/ask-user.ts +25 -11
  514. package/src/interactive/overlays/context-reset.ts +28 -4
  515. package/src/interactive/overlays/cwd-fallback.ts +28 -4
  516. package/src/interactive/overlays/decisions.ts +4 -2
  517. package/src/interactive/overlays/fleet-run-approval.ts +3 -3
  518. package/src/interactive/overlays/handoff-review.ts +2 -2
  519. package/src/interactive/overlays/interop.ts +1 -1
  520. package/src/interactive/overlays/library-install-confirm.ts +1 -1
  521. package/src/interactive/overlays/message-picker.ts +1 -1
  522. package/src/interactive/overlays/model-selector.ts +39 -31
  523. package/src/interactive/overlays/prompts.ts +10 -4
  524. package/src/interactive/overlays/session-selector.ts +2 -2
  525. package/src/interactive/overlays/settings.ts +339 -293
  526. package/src/interactive/overlays/side-question.ts +2 -2
  527. package/src/interactive/overlays/skills-hub.ts +8 -8
  528. package/src/interactive/overlays/tree-selector.ts +2 -2
  529. package/src/interactive/panes-runtime.ts +36 -10
  530. package/src/interactive/permission-overlay.ts +2 -2
  531. package/src/interactive/renderers/retry-status.ts +12 -4
  532. package/src/interactive/renderers/tool-execution.ts +4 -4
  533. package/src/interactive/session-transcript.ts +3 -3
  534. package/src/interactive/slash-autocomplete.ts +454 -165
  535. package/src/interactive/slash-commands.ts +279 -183
  536. package/src/interactive/slash-spec.ts +160 -17
  537. package/src/interactive/status/controller.ts +2 -2
  538. package/src/interactive/stream-pacing-policy.ts +1 -1
  539. package/src/interactive/tasks-overlay.ts +20 -13
  540. package/src/interactive/terminal-lease.ts +6 -7
  541. package/src/interactive/turn-context.ts +11 -11
  542. package/src/interactive/turn-persistence.ts +2 -2
  543. package/src/interactive/turn-prewarm.ts +2 -2
  544. package/src/interactive/turn-runtime.ts +8 -8
  545. package/src/interactive/turn-state.ts +1 -1
  546. package/src/interactive/view/artifacts.ts +12 -9
  547. package/src/interactive/view/view-overlay.ts +13 -10
  548. package/src/interactive/watch-pane.ts +38 -10
  549. package/src/interactive/welcome-dashboard.ts +15 -15
  550. package/src/interactive/worker-progress.ts +4 -4
  551. package/src/interactive/worker-receipts.ts +1 -1
  552. package/src/interactive/worker-stream.ts +1 -4
  553. package/src/interactive/yazi-bridge.ts +12 -5
  554. package/src/tools/ask-user.ts +3 -3
  555. package/src/tools/bash.ts +1 -1
  556. package/src/tools/builtin-tool-catalog.ts +1 -1
  557. package/src/tools/compete-worktrees.ts +27 -17
  558. package/src/tools/context/index.ts +15 -1
  559. package/src/tools/dispatch-admission.ts +4 -2
  560. package/src/tools/dispatch-arguments.ts +1 -1
  561. package/src/tools/dispatch-plan.ts +0 -11
  562. package/src/tools/dispatch-run-events.ts +12 -10
  563. package/src/tools/dispatch-runner.ts +11 -6
  564. package/src/tools/dispatch.ts +1 -1
  565. package/src/tools/find.ts +1 -6
  566. package/src/tools/monitor.ts +4 -4
  567. package/src/tools/observers.ts +0 -33
  568. package/src/tools/task-worktree.ts +28 -7
  569. package/src/tools/verify/authoring.ts +3 -6
  570. package/src/tools/verify/frontend.ts +1 -1
  571. package/src/tools/web-fetch.ts +1 -1
  572. package/src/worker/entry.ts +4 -3
  573. package/src/worker/protocol.ts +16 -14
  574. package/src/worker/spec-contract.ts +2 -2
  575. package/src/worker/stdin-demux.ts +2 -2
  576. package/dist/chunk-GXNLGKAB.js +0 -571
  577. package/dist/chunk-VFA6GDY5.js +0 -1625
  578. package/dist/doctor-QOA5FNY5.js +0 -313
  579. package/src/engine/apis/degraded-inference.ts +0 -95
  580. /package/skills/meta/{clio-test → clio-coder-test}/references/harness.md +0 -0
  581. /package/skills/meta/{clio-test → clio-coder-test}/references/test-map.md +0 -0
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  getSharedBus
4
- } from "./chunk-ZGVHUX3M.js";
4
+ } from "./chunk-PMZVFWSR.js";
5
5
  import {
6
6
  BusChannels
7
7
  } from "./chunk-HLW2MRKE.js";
@@ -111,7 +111,7 @@ var TerminationCoordinator = class {
111
111
  const log = (msg) => {
112
112
  if (!debug) return;
113
113
  const ms = Number(process.hrtime.bigint() - mark) / 1e6;
114
- process.stderr.write(`[clio:shutdown] +${ms.toFixed(1)}ms ${msg}
114
+ process.stderr.write(`[clio-coder:shutdown] +${ms.toFixed(1)}ms ${msg}
115
115
  `);
116
116
  };
117
117
  this.phase = "draining";
@@ -144,12 +144,12 @@ var TerminationCoordinator = class {
144
144
  const t0 = process.hrtime.bigint();
145
145
  const completed = await runWithBudget(hook, budgetMs, (err) => {
146
146
  const message = err instanceof Error ? err.message : String(err);
147
- writeShutdownNotice(`[clio:termination] ${phase}[${i}] failed: ${message}`);
147
+ writeShutdownNotice(`[clio-coder:termination] ${phase}[${i}] failed: ${message}`);
148
148
  if (err instanceof Error && err.stack) log(err.stack);
149
149
  });
150
150
  const dt = Number(process.hrtime.bigint() - t0) / 1e6;
151
151
  if (!completed) {
152
- writeShutdownNotice(`[clio:termination] ${phase}[${i}] exceeded ${budgetMs}ms budget; shutdown continues`);
152
+ writeShutdownNotice(`[clio-coder:termination] ${phase}[${i}] exceeded ${budgetMs}ms budget; shutdown continues`);
153
153
  }
154
154
  log(` ${phase}[${i}] ${dt.toFixed(1)}ms${completed ? "" : " (timed out)"}`);
155
155
  }
@@ -226,4 +226,4 @@ export {
226
226
  runWithBudget,
227
227
  getTerminationCoordinator
228
228
  };
229
- //# sourceMappingURL=chunk-LDQ2ZF2M.js.map
229
+ //# sourceMappingURL=chunk-6FN3E6KX.js.map
@@ -1,27 +1,34 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
- readStateInfo,
4
- runDoctor
5
- } from "./chunk-W5VSYASO.js";
3
+ clio_coder_naming_default
4
+ } from "./chunk-QTFGO774.js";
6
5
  import {
7
- getVersionInfo
8
- } from "./chunk-XPLRXC72.js";
6
+ settings_v2_default
7
+ } from "./chunk-AP73CFDC.js";
9
8
  import {
10
9
  readSettings,
11
10
  settingsPath,
12
- updateSettings
13
- } from "./chunk-VFA6GDY5.js";
11
+ updateSettings,
12
+ withSettingsLock
13
+ } from "./chunk-EIMVLWB3.js";
14
14
  import {
15
15
  authStoragePath,
16
16
  openAuthStorage
17
- } from "./chunk-BBVYXMFO.js";
17
+ } from "./chunk-WNP7O5WZ.js";
18
18
  import {
19
+ require_dist
20
+ } from "./chunk-APJ265NV.js";
21
+ import {
22
+ safeResourceWrite
23
+ } from "./chunk-WEPFGWHJ.js";
24
+ import {
25
+ __toESM,
19
26
  init_esm_shims
20
27
  } from "./chunk-3R73A4XB.js";
21
28
 
22
29
  // src/domains/lifecycle/migrations/index.ts
23
30
  init_esm_shims();
24
- import { existsSync as existsSync2, mkdirSync, readFileSync, writeFileSync } from "node:fs";
31
+ import { existsSync as existsSync3, mkdirSync, readFileSync as readFileSync2, writeFileSync } from "node:fs";
25
32
  import { join } from "node:path";
26
33
 
27
34
  // src/domains/lifecycle/migrations/2026-08-18-lmstudio-runtime-id.ts
@@ -62,8 +69,46 @@ var migration = {
62
69
  };
63
70
  var lmstudio_runtime_id_default = migration;
64
71
 
72
+ // src/domains/lifecycle/migrations/2026-09-01-retire-panes-knobs.ts
73
+ init_esm_shims();
74
+ var import_yaml = __toESM(require_dist(), 1);
75
+ import { existsSync as existsSync2, readFileSync } from "node:fs";
76
+ var RETIRED_PANE_KEYS = ["agents", "keepFailed"];
77
+ function isPlainObject(value) {
78
+ return typeof value === "object" && value !== null && !Array.isArray(value);
79
+ }
80
+ var migration2 = {
81
+ id: "2026-09-01-retire-panes-knobs",
82
+ async up() {
83
+ withSettingsLock(() => {
84
+ const path = settingsPath();
85
+ if (!existsSync2(path)) return;
86
+ let parsed;
87
+ try {
88
+ parsed = (0, import_yaml.parse)(readFileSync(path, "utf8"));
89
+ } catch {
90
+ return;
91
+ }
92
+ if (!isPlainObject(parsed)) return;
93
+ const panes = parsed.panes;
94
+ if (!isPlainObject(panes)) return;
95
+ const present = RETIRED_PANE_KEYS.filter((key) => key in panes);
96
+ if (present.length === 0) return;
97
+ for (const key of present) delete panes[key];
98
+ if (Object.keys(panes).length === 0) delete parsed.panes;
99
+ safeResourceWrite(path, (0, import_yaml.stringify)(parsed), { encoding: "utf8", mode: 420 });
100
+ });
101
+ }
102
+ };
103
+ var retire_panes_knobs_default = migration2;
104
+
65
105
  // src/domains/lifecycle/migrations/index.ts
66
- var REGISTRY = Object.freeze([lmstudio_runtime_id_default]);
106
+ var REGISTRY = Object.freeze([
107
+ settings_v2_default,
108
+ clio_coder_naming_default,
109
+ retire_panes_knobs_default,
110
+ lmstudio_runtime_id_default
111
+ ]);
67
112
  function listMigrations() {
68
113
  return REGISTRY;
69
114
  }
@@ -71,9 +116,9 @@ function manifestPath(stateDir) {
71
116
  return join(stateDir, "migrations.json");
72
117
  }
73
118
  function readManifest(path) {
74
- if (!existsSync2(path)) return { applied: [] };
119
+ if (!existsSync3(path)) return { applied: [] };
75
120
  try {
76
- const raw = readFileSync(path, "utf8");
121
+ const raw = readFileSync2(path, "utf8");
77
122
  const parsed = JSON.parse(raw);
78
123
  if (parsed && typeof parsed === "object" && Array.isArray(parsed.applied)) {
79
124
  const ids = parsed.applied.filter((v) => typeof v === "string");
@@ -109,53 +154,8 @@ async function runPending(stateDir, migrations = REGISTRY) {
109
154
  };
110
155
  }
111
156
 
112
- // src/domains/lifecycle/upgrade-notice.ts
113
- init_esm_shims();
114
- var KEYBOARD_FACING_CHANGES = Object.freeze({
115
- "0.3.1": "/targets, /fleet, and /scoped-models now open inside /settings; the commit-crafting, create-pr, investigate-issue, and review-changes skills are retired in favour of file-ticket, fix-issue, and ship; artifact defaults write under .clio-coder/artifacts/."
116
- });
117
- function describeUpgradeNotice(transition) {
118
- const changes = KEYBOARD_FACING_CHANGES[transition.to];
119
- const head = `clio: upgraded ${transition.from} \u2192 ${transition.to}.`;
120
- const tail = `Full notes: CHANGELOG.md, section ${transition.to}.`;
121
- return changes === void 0 ? `${head} What changed is in CHANGELOG.md, section ${transition.to}.` : `${head} What changed at the keyboard: ${changes} ${tail}`;
122
- }
123
-
124
- // src/domains/lifecycle/index.ts
125
- init_esm_shims();
126
-
127
- // src/domains/lifecycle/extension.ts
128
- init_esm_shims();
129
- function createLifecycleBundle(_context) {
130
- const extension = {
131
- async start() {
132
- }
133
- };
134
- const contract = {
135
- version: getVersionInfo,
136
- state: readStateInfo,
137
- doctor: runDoctor,
138
- runMigrations: (stateDir) => runPending(stateDir)
139
- };
140
- return { extension, contract };
141
- }
142
-
143
- // src/domains/lifecycle/manifest.ts
144
- init_esm_shims();
145
- var LifecycleManifest = {
146
- name: "lifecycle",
147
- dependsOn: ["config"]
148
- };
149
-
150
- // src/domains/lifecycle/index.ts
151
- var LifecycleDomainModule = {
152
- manifest: LifecycleManifest,
153
- createExtension: createLifecycleBundle
154
- };
155
-
156
157
  export {
157
158
  listMigrations,
158
- describeUpgradeNotice,
159
- LifecycleDomainModule
159
+ runPending
160
160
  };
161
- //# sourceMappingURL=chunk-X3YGUTOB.js.map
161
+ //# sourceMappingURL=chunk-6HMJX2VU.js.map
@@ -25,7 +25,7 @@ import {
25
25
  ceilChars,
26
26
  contentChars,
27
27
  estimateAgentMessageTokens
28
- } from "./chunk-UM7N4G5A.js";
28
+ } from "./chunk-CWVRRIEI.js";
29
29
  import {
30
30
  init_esm_shims
31
31
  } from "./chunk-3R73A4XB.js";
@@ -42,6 +42,7 @@ function estimateMessage(entry) {
42
42
  return estimateAgentMessageTokens({ ...entry, payload: promptPayload });
43
43
  }
44
44
  function estimateBashExecution(entry) {
45
+ if (entry.excludeFromContext === true) return 0;
45
46
  return ceilChars(entry.command.length + entry.output.length);
46
47
  }
47
48
  function estimateCustom(entry) {
@@ -674,4 +675,4 @@ export {
674
675
  compactionCut,
675
676
  selectVisibleEntries
676
677
  };
677
- //# sourceMappingURL=chunk-VEO4AP2K.js.map
678
+ //# sourceMappingURL=chunk-6I5ILFOF.js.map
@@ -3,13 +3,13 @@ import {
3
3
  ROUTE_POLICY_VERSION,
4
4
  isRouteDecisionAgentSelection,
5
5
  isRoutingIntent
6
- } from "./chunk-SJ5ZKQ4S.js";
6
+ } from "./chunk-7EPLI7VL.js";
7
7
  import {
8
8
  isExecutionRole
9
9
  } from "./chunk-H7IXIC72.js";
10
10
  import {
11
11
  readSettings
12
- } from "./chunk-VFA6GDY5.js";
12
+ } from "./chunk-EIMVLWB3.js";
13
13
  import {
14
14
  readClioVersion,
15
15
  resolvePackageRoot
@@ -125,7 +125,7 @@ var RECEIPT_INTEGRITY_FIELD_COVERAGE = {
125
125
  dynamicHash: true,
126
126
  promptSignature: true,
127
127
  toolSignature: true,
128
- clioVersion: true,
128
+ clioCoderVersion: true,
129
129
  piMonoVersion: true,
130
130
  platform: true,
131
131
  nodeVersion: true,
@@ -168,8 +168,14 @@ function selectedReceiptFields(receipt, fields) {
168
168
  }
169
169
  return result;
170
170
  }
171
- function receiptDigestFields(receipt) {
171
+ function receiptDigestFields(receipt, legacyNaming = false) {
172
172
  const result = selectedReceiptFields(receipt, RECEIPT_FIELDS);
173
+ if (legacyNaming) {
174
+ const source = receipt;
175
+ const version = source.clioVersion ?? source.clioCoderVersion;
176
+ delete result.clioCoderVersion;
177
+ if (version !== void 0) result.clioVersion = version;
178
+ }
173
179
  result.briefing = receipt.briefing ?? null;
174
180
  result.outcomeCode = receipt.outcomeCode ?? null;
175
181
  result.steering = receipt.steering ?? null;
@@ -221,20 +227,20 @@ function ledgerDigestFields(envelope) {
221
227
  steering: envelope.steering ?? null
222
228
  };
223
229
  }
224
- function integrityPayload(receipt, envelope) {
230
+ function integrityPayload(receipt, envelope, legacyNaming = false) {
225
231
  return {
226
- contract: "clio.runReceipt.integrity",
232
+ contract: legacyNaming ? "clio.runReceipt.integrity" : "clio-coder.runReceipt.integrity",
227
233
  version: RUN_RECEIPT_INTEGRITY_VERSION,
228
234
  sources: ["receipt", "run-ledger"],
229
- receipt: receiptDigestFields(receipt),
235
+ receipt: receiptDigestFields(receipt, legacyNaming),
230
236
  ledger: ledgerDigestFields(envelope)
231
237
  };
232
238
  }
233
- function computeReceiptIntegrity(receipt, envelope) {
239
+ function computeReceiptIntegrity(receipt, envelope, legacyNaming = false) {
234
240
  return {
235
241
  version: RUN_RECEIPT_INTEGRITY_VERSION,
236
242
  algorithm: RUN_RECEIPT_INTEGRITY_ALGORITHM,
237
- digest: sha256(canonicalJson(integrityPayload(receipt, envelope)))
243
+ digest: sha256(canonicalJson(integrityPayload(receipt, envelope, legacyNaming)))
238
244
  };
239
245
  }
240
246
  function isReceiptQuality(value) {
@@ -330,7 +336,8 @@ function verifyReceiptIntegrity(receipt, envelope) {
330
336
  return { ok: false, reason: `ledger mismatch: ${mismatch}` };
331
337
  }
332
338
  const expected = computeReceiptIntegrity(receipt, envelope);
333
- if (expected.digest !== receipt.integrity.digest) {
339
+ const legacyExpected = computeReceiptIntegrity(receipt, envelope, true);
340
+ if (expected.digest !== receipt.integrity.digest && legacyExpected.digest !== receipt.integrity.digest) {
334
341
  return { ok: false, reason: "integrity mismatch" };
335
342
  }
336
343
  return { ok: true };
@@ -1402,4 +1409,4 @@ export {
1402
1409
  loadEvalTaskFile,
1403
1410
  EvalTaskFileError
1404
1411
  };
1405
- //# sourceMappingURL=chunk-B7OBL7PK.js.map
1412
+ //# sourceMappingURL=chunk-6NJQITNH.js.map
@@ -1,4 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
+ import {
3
+ normalizeClioCoderEventType
4
+ } from "./chunk-BTK3SSSK.js";
2
5
  import {
3
6
  clioStateDir,
4
7
  stateRootRemoved
@@ -75,7 +78,7 @@ var RUN_STATE_LIMIT = 256;
75
78
  function createRunEventJournal(options = {}) {
76
79
  const capBytes = options.capBytes ?? RUN_EVENT_JOURNAL_CAP_BYTES;
77
80
  const flushBytes = options.flushBytes ?? RUN_EVENT_JOURNAL_FLUSH_BYTES;
78
- const warn = options.warn ?? ((message) => process.stderr.write(`[clio:journal] ${message}
81
+ const warn = options.warn ?? ((message) => process.stderr.write(`[clio-coder:journal] ${message}
79
82
  `));
80
83
  const now = options.now ?? (() => /* @__PURE__ */ new Date());
81
84
  const isEnabled = options.isEnabled ?? (() => runEventJournalEnabled());
@@ -257,7 +260,7 @@ function parseJournalLine(raw) {
257
260
  seq: record.seq,
258
261
  at: record.at,
259
262
  kind: "event",
260
- type: record.type,
263
+ type: normalizeClioCoderEventType(record.type),
261
264
  ...detail === void 0 ? {} : { detail }
262
265
  };
263
266
  }
@@ -359,4 +362,4 @@ export {
359
362
  defaultRunEventJournal,
360
363
  readRunEventJournal
361
364
  };
362
- //# sourceMappingURL=chunk-IQ7KR472.js.map
365
+ //# sourceMappingURL=chunk-6VC4OV3Z.js.map
@@ -1,7 +1,7 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  openAuthStorage
4
- } from "./chunk-BBVYXMFO.js";
4
+ } from "./chunk-WNP7O5WZ.js";
5
5
  import {
6
6
  getRuntimeRegistry
7
7
  } from "./chunk-NUGM5KR6.js";
@@ -30,4 +30,4 @@ function credentialsPresent() {
30
30
  export {
31
31
  credentialsPresent
32
32
  };
33
- //# sourceMappingURL=chunk-P3FOHJT4.js.map
33
+ //# sourceMappingURL=chunk-72GZI5EV.js.map
@@ -1,14 +1,14 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
3
  inspectEvidence
4
- } from "./chunk-BUMFYQFY.js";
4
+ } from "./chunk-XKA2ICR3.js";
5
5
  import {
6
6
  TASK_MEMORY_CONTENT_MAX_CHARS,
7
7
  TASK_MEMORY_DEFAULT_KNOWLEDGE_CAP,
8
8
  TASK_MEMORY_DEFAULT_PROCEDURAL_CAP,
9
9
  TASK_MEMORY_TELEMETRY_FILE,
10
10
  parseTaskMemoryTelemetryRecord
11
- } from "./chunk-BKFJHQCA.js";
11
+ } from "./chunk-I66EAJFY.js";
12
12
  import {
13
13
  createRedactionTally,
14
14
  redactSecretsText
@@ -18,7 +18,7 @@ import {
18
18
  } from "./chunk-ECH6PKUQ.js";
19
19
  import {
20
20
  ceilChars
21
- } from "./chunk-UM7N4G5A.js";
21
+ } from "./chunk-CWVRRIEI.js";
22
22
  import {
23
23
  clioStateDir
24
24
  } from "./chunk-BYP5D4HI.js";
@@ -1150,7 +1150,8 @@ init_esm_shims();
1150
1150
  import { existsSync, readdirSync, readFileSync as readFileSync2, statSync } from "node:fs";
1151
1151
  import { join as join2 } from "node:path";
1152
1152
  var TASK_MEMORY_HANDOFF_VERSION = 2;
1153
- var TASK_MEMORY_HANDOFF_LANGUAGE = "clio-task-memory";
1153
+ var TASK_MEMORY_HANDOFF_LANGUAGE = "clio-coder-task-memory";
1154
+ var LEGACY_TASK_MEMORY_HANDOFF_LANGUAGE = "clio-task-memory";
1154
1155
  var HANDOFF_MAX_BYTES = 1e6;
1155
1156
  function exportEntry(entry) {
1156
1157
  return {
@@ -1202,8 +1203,8 @@ function renderTaskMemoryHandoffSource(snapshot, source) {
1202
1203
  }
1203
1204
  function parseTaskMemoryHandoffSnapshot(text) {
1204
1205
  if (typeof text !== "string" || text.length === 0 || text.length > HANDOFF_MAX_BYTES) return null;
1205
- const escapedLanguage = TASK_MEMORY_HANDOFF_LANGUAGE.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&");
1206
- const match = new RegExp(`(?:^|\\n)\\x60{3}${escapedLanguage}\\r?\\n([^\\r\\n]+)\\r?\\n\\x60{3}(?:$|\\n)`, "u").exec(
1206
+ const languages = [TASK_MEMORY_HANDOFF_LANGUAGE, LEGACY_TASK_MEMORY_HANDOFF_LANGUAGE].map((language) => language.replace(/[.*+?^${}()|[\]\\]/gu, "\\$&")).join("|");
1207
+ const match = new RegExp(`(?:^|\\n)\\x60{3}(?:${languages})\\r?\\n([^\\r\\n]+)\\r?\\n\\x60{3}(?:$|\\n)`, "u").exec(
1207
1208
  text
1208
1209
  );
1209
1210
  if (match?.[1] === void 0) return null;
@@ -1556,4 +1557,4 @@ export {
1556
1557
  taskMemoryTracePath,
1557
1558
  createTaskMemoryTrace
1558
1559
  };
1559
- //# sourceMappingURL=chunk-AB44T6BB.js.map
1560
+ //# sourceMappingURL=chunk-74YWRRU5.js.map
@@ -5,7 +5,7 @@ import {
5
5
  } from "./chunk-H7IXIC72.js";
6
6
  import {
7
7
  isAgentCapabilityClass
8
- } from "./chunk-DYJP44XW.js";
8
+ } from "./chunk-IG7BCQBA.js";
9
9
  import {
10
10
  init_esm_shims
11
11
  } from "./chunk-3R73A4XB.js";
@@ -995,4 +995,4 @@ export {
995
995
  routingIntentRejection,
996
996
  explainRouteDecision
997
997
  };
998
- //# sourceMappingURL=chunk-SJ5ZKQ4S.js.map
998
+ //# sourceMappingURL=chunk-7EPLI7VL.js.map
@@ -16,10 +16,10 @@ import {
16
16
  SAFE_EXEC_DEFAULT_TIMEOUT_MS,
17
17
  combineSafeOutput,
18
18
  runCommandVector
19
- } from "./chunk-BBVJUZHB.js";
19
+ } from "./chunk-HJWWJ6IL.js";
20
20
  import {
21
21
  StringEnum
22
- } from "./chunk-UOSL25KY.js";
22
+ } from "./chunk-VXMFAE2W.js";
23
23
  import {
24
24
  init_esm_shims
25
25
  } from "./chunk-3R73A4XB.js";
@@ -177,4 +177,4 @@ export {
177
177
  prepareVerifyArguments,
178
178
  verifyToolSurface
179
179
  };
180
- //# sourceMappingURL=chunk-HWHKMHUA.js.map
180
+ //# sourceMappingURL=chunk-7OBGU7UB.js.map
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-IWHMRKLL.js";
5
5
  import {
6
6
  DEFAULT_SETTINGS_YAML
7
- } from "./chunk-GXNLGKAB.js";
7
+ } from "./chunk-BWW4HLO4.js";
8
8
  import {
9
9
  clioCacheDir,
10
10
  clioConfigDir,
@@ -143,4 +143,4 @@ function enforceHomePrefixGuard() {
143
143
  export {
144
144
  initializeClioHome
145
145
  };
146
- //# sourceMappingURL=chunk-2OQE55CK.js.map
146
+ //# sourceMappingURL=chunk-7PWAODYW.js.map
@@ -1,22 +1,24 @@
1
1
  import { createRequire as __clioCreateRequire } from "node:module"; const require = __clioCreateRequire(import.meta.url);
2
2
  import {
3
- truncateToWidth
4
- } from "./chunk-NYS75XW5.js";
3
+ truncateToWidth,
4
+ visibleWidth,
5
+ wrapTextWithAnsi
6
+ } from "./chunk-YAKGTXEV.js";
5
7
  import {
6
8
  openLedger,
7
9
  readFleetRun
8
- } from "./chunk-BUMFYQFY.js";
10
+ } from "./chunk-XKA2ICR3.js";
9
11
  import {
10
12
  formatTrustSummaryLine,
11
13
  inspectRunReceiptTrustStatus
12
- } from "./chunk-B7OBL7PK.js";
14
+ } from "./chunk-6NJQITNH.js";
13
15
  import {
14
16
  WRITE_BOUNDARY_VIOLATION_REASON
15
- } from "./chunk-U77AMWDL.js";
17
+ } from "./chunk-TD3PGPQA.js";
16
18
  import {
17
19
  readRunEventJournal,
18
20
  runEventJournalPath
19
- } from "./chunk-IQ7KR472.js";
21
+ } from "./chunk-6VC4OV3Z.js";
20
22
  import {
21
23
  sanitizeCallTargetText
22
24
  } from "./chunk-TVHHYFHE.js";
@@ -45,7 +47,7 @@ run event journal, and the sealed receipt once it exists.
45
47
 
46
48
  Without --follow the current snapshot is printed and the command exits.
47
49
  The transcript comes from <state>/runs/<runId>/events.ndjson, which the
48
- orchestrator writes when panes.journal is on (the default). A run dispatched
50
+ orchestrator writes when fleet.history.journal is on (the default). A run dispatched
49
51
  with the journal off shows its ledger and receipt but no transcript.
50
52
 
51
53
  Given the fleet root id that \`fleet run\` prints (fleet-<hex>), this prints the
@@ -65,6 +67,9 @@ function sanitizeBounded(value, maxWidth) {
65
67
  if (sanitized.length === 0) return "";
66
68
  return sanitizeCallTargetText(truncateToWidth(sanitized, maxWidth, "\u2026", false));
67
69
  }
70
+ function truncatePlain(value, width) {
71
+ return truncateToWidth(value, width, "\u2026", false).replaceAll("\x1B[0m", "");
72
+ }
68
73
  function receiptPathFor(run) {
69
74
  return run.receiptPath ?? join(clioStateDir(), "receipts", `${run.id}.json`);
70
75
  }
@@ -175,42 +180,54 @@ function clockOf(iso) {
175
180
  const time = iso.slice(11, 19);
176
181
  return time.length === 8 ? time : iso.slice(0, 8);
177
182
  }
183
+ function wrapViewerValue(prefix, value, columns) {
184
+ const prefixWidth = visibleWidth(prefix);
185
+ const valueWidth = Math.max(1, columns - prefixWidth);
186
+ return wrapTextWithAnsi(value, valueWidth).map(
187
+ (line, index) => `${index === 0 ? prefix : " ".repeat(prefixWidth)}${line}`
188
+ );
189
+ }
178
190
  function renderRunView(model, width = DEFAULT_WIDTH) {
179
191
  const columns = Math.max(MIN_WIDTH, width);
180
192
  const rule = "\u2500".repeat(columns);
181
193
  const lines = [];
182
- lines.push(truncateToWidth(`run ${model.runId} ${model.agentId}`, columns, "\u2026", false));
194
+ lines.push(truncatePlain(`run ${model.runId} ${model.agentId}`, columns));
183
195
  lines.push(
184
- truncateToWidth(
196
+ truncatePlain(
185
197
  `model ${model.model} target ${model.target} node ${model.node} phase ${model.phase} elapsed ${formatElapsed(model.elapsedMs)}`,
186
- columns,
187
- "\u2026",
188
- false
198
+ columns
189
199
  )
190
200
  );
191
201
  if (model.task !== void 0) {
192
- lines.push(truncateToWidth(`task ${model.task}`, columns, "\u2026", false));
202
+ lines.push(...wrapViewerValue("task ", model.task, columns));
193
203
  }
194
204
  lines.push(rule);
195
205
  if (!model.journalPresent) {
196
206
  lines.push("no event journal for this run.");
197
- lines.push(`expected ${model.journalPath} (panes.journal may have been off when it ran)`);
207
+ lines.push(
208
+ ...wrapViewerValue(
209
+ "expected ",
210
+ `${model.journalPath} (fleet.history.journal may have been off when it ran)`,
211
+ columns
212
+ )
213
+ );
198
214
  } else if (model.transcript.length === 0) {
199
215
  lines.push("journal is empty; no events recorded yet.");
200
216
  } else {
201
217
  if (model.transcriptTruncated) lines.push("\u2026 earlier events dropped (journal truncated)");
202
218
  for (const entry of model.transcript) {
203
219
  const head = `${clockOf(entry.at)} ${entry.label}`;
204
- lines.push(truncateToWidth(entry.detail === void 0 ? head : `${head}: ${entry.detail}`, columns, "\u2026", false));
220
+ if (entry.detail === void 0) lines.push(truncatePlain(head, columns));
221
+ else lines.push(...wrapViewerValue(`${head}: `, entry.detail, columns));
205
222
  }
206
223
  }
207
224
  lines.push(rule);
208
- lines.push(truncateToWidth(`evidence ${model.evidence}`, columns, "\u2026", false));
225
+ lines.push(...wrapViewerValue("evidence ", model.evidence, columns));
209
226
  if (model.receiptPath !== null) {
210
- lines.push(truncateToWidth(`receipt ${model.receiptPath}`, columns, "\u2026", false));
227
+ lines.push(truncatePlain(`receipt ${model.receiptPath}`, columns));
211
228
  }
212
229
  const outcome = model.outcome === null ? model.terminal ? "terminal, outcome not recorded" : "running" : model.outcomeDetail === null || model.outcomeDetail.length === 0 ? model.outcome : `${model.outcome} (${sanitizeBounded(model.outcomeDetail, DETAIL_MAX_WIDTH)})`;
213
- lines.push(truncateToWidth(`outcome ${outcome}`, columns, "\u2026", false));
230
+ lines.push(...wrapViewerValue("outcome ", outcome, columns));
214
231
  return lines;
215
232
  }
216
233
  function renderWatchView(runId, model, width = DEFAULT_WIDTH, ledgerRoot = clioStateDir()) {
@@ -303,14 +320,12 @@ function renderFleetRunView(model, width = DEFAULT_WIDTH) {
303
320
  const columns = Math.max(MIN_WIDTH, width);
304
321
  const rule = "\u2500".repeat(columns);
305
322
  const lines = [];
306
- lines.push(truncateToWidth(`fleet ${sanitizeBounded(model.fleet, 64)} root ${model.rootId}`, columns, "\u2026", false));
323
+ lines.push(truncatePlain(`fleet ${sanitizeBounded(model.fleet, 64)} root ${model.rootId}`, columns));
307
324
  const resumed = model.resumedFrom === null ? "" : ` resumed from ${sanitizeBounded(model.resumedFrom, 64)}`;
308
325
  lines.push(
309
- truncateToWidth(
326
+ truncatePlain(
310
327
  `started ${model.startedAt} elapsed ${formatElapsed(model.elapsedMs)} ${model.recordedSteps} of ${model.plannedSteps} steps recorded${model.running ? " (running)" : ""}${resumed}`,
311
- columns,
312
- "\u2026",
313
- false
328
+ columns
314
329
  )
315
330
  );
316
331
  lines.push(rule);
@@ -329,7 +344,7 @@ function renderFleetRunView(model, width = DEFAULT_WIDTH) {
329
344
  for (const row of rows) {
330
345
  const head = `${row.step.padEnd(stepWidth)} ${row.runId.padEnd(runWidth)} ${row.outcome.padEnd(outcomeWidth)}`;
331
346
  const text = row.tail.length === 0 ? head : `${head} ${sanitizeBounded(row.tail, DETAIL_MAX_WIDTH)}`;
332
- lines.push(truncateToWidth(text.trimEnd(), columns, "\u2026", false));
347
+ lines.push(truncatePlain(text.trimEnd(), columns));
333
348
  }
334
349
  }
335
350
  lines.push(rule);
@@ -463,7 +478,7 @@ async function runFleetView(args) {
463
478
  return followRun(runId);
464
479
  }
465
480
  async function watchSelection(selectionPath) {
466
- const { ProcessTerminal, TuiAltScreen } = await import("./tui-primitives-2AKXQNZK.js");
481
+ const { ProcessTerminal, TuiAltScreen } = await import("./tui-primitives-K5PASC3O.js");
467
482
  const terminal = new ProcessTerminal();
468
483
  const tui = new TuiAltScreen(terminal);
469
484
  let selected = readWatchSelection(selectionPath);
@@ -506,7 +521,7 @@ async function watchSelection(selectionPath) {
506
521
  });
507
522
  }
508
523
  async function followRun(runId) {
509
- const { ProcessTerminal, TuiAltScreen } = await import("./tui-primitives-2AKXQNZK.js");
524
+ const { ProcessTerminal, TuiAltScreen } = await import("./tui-primitives-K5PASC3O.js");
510
525
  const terminal = new ProcessTerminal();
511
526
  const tui = new TuiAltScreen(terminal);
512
527
  let model = loadRunViewModel(runId);
@@ -551,14 +566,8 @@ async function followRun(runId) {
551
566
  }
552
567
 
553
568
  export {
554
- resolveRunId,
555
569
  loadRunViewModel,
556
- renderRunView,
557
- renderWatchView,
558
- resolveFleetRootId,
559
570
  loadFleetRunViewModel,
560
- renderFleetRunView,
561
- readWatchSelection,
562
571
  runFleetView
563
572
  };
564
- //# sourceMappingURL=chunk-IBEBSCYA.js.map
573
+ //# sourceMappingURL=chunk-7RY5VZPH.js.map
@@ -7,7 +7,7 @@ import {
7
7
  } from "./chunk-K6BSR66V.js";
8
8
  import {
9
9
  StringEnum
10
- } from "./chunk-UOSL25KY.js";
10
+ } from "./chunk-VXMFAE2W.js";
11
11
  import {
12
12
  init_esm_shims
13
13
  } from "./chunk-3R73A4XB.js";
@@ -43,4 +43,4 @@ export {
43
43
  CODE_NAV_MAX_LIMIT,
44
44
  codeNavToolSurface
45
45
  };
46
- //# sourceMappingURL=chunk-LQ3DZAMX.js.map
46
+ //# sourceMappingURL=chunk-ABLSQ6JX.js.map