@smthrs/std 0.0.0-stage → 1.0.0-rc.4

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 (555) hide show
  1. package/CHANGELOG.md +130 -0
  2. package/LICENSE +21 -0
  3. package/README.md +152 -2
  4. package/dist/cjs/ApplyPatch.d.ts +174 -0
  5. package/dist/cjs/ApplyPatch.d.ts.map +1 -0
  6. package/dist/cjs/ApplyPatch.js +309 -0
  7. package/dist/cjs/ApplyPatch.js.map +7 -0
  8. package/dist/cjs/Bash.d.ts +380 -0
  9. package/dist/cjs/Bash.d.ts.map +1 -0
  10. package/dist/cjs/Bash.js +332 -0
  11. package/dist/cjs/Bash.js.map +7 -0
  12. package/dist/cjs/Checkpoints.d.ts +279 -0
  13. package/dist/cjs/Checkpoints.d.ts.map +1 -0
  14. package/dist/cjs/Checkpoints.js +145 -0
  15. package/dist/cjs/Checkpoints.js.map +7 -0
  16. package/dist/cjs/Container.d.ts +132 -0
  17. package/dist/cjs/Container.d.ts.map +1 -0
  18. package/dist/cjs/Container.js +113 -0
  19. package/dist/cjs/Container.js.map +7 -0
  20. package/dist/cjs/Edit.d.ts +203 -0
  21. package/dist/cjs/Edit.d.ts.map +1 -0
  22. package/dist/cjs/Edit.js +258 -0
  23. package/dist/cjs/Edit.js.map +7 -0
  24. package/dist/cjs/ExaWebSearch.d.ts +22 -0
  25. package/dist/cjs/ExaWebSearch.d.ts.map +1 -0
  26. package/dist/cjs/ExaWebSearch.js +138 -0
  27. package/dist/cjs/ExaWebSearch.js.map +7 -0
  28. package/dist/cjs/Explore.d.ts +328 -0
  29. package/dist/cjs/Explore.d.ts.map +1 -0
  30. package/dist/cjs/Explore.js +90 -0
  31. package/dist/cjs/Explore.js.map +7 -0
  32. package/dist/cjs/Fetch.d.ts +130 -0
  33. package/dist/cjs/Fetch.d.ts.map +1 -0
  34. package/dist/cjs/Fetch.js +64 -0
  35. package/dist/cjs/Fetch.js.map +7 -0
  36. package/dist/cjs/Glob.d.ts +204 -0
  37. package/dist/cjs/Glob.d.ts.map +1 -0
  38. package/dist/cjs/Glob.js +94 -0
  39. package/dist/cjs/Glob.js.map +7 -0
  40. package/dist/cjs/Grep.d.ts +347 -0
  41. package/dist/cjs/Grep.d.ts.map +1 -0
  42. package/dist/cjs/Grep.js +181 -0
  43. package/dist/cjs/Grep.js.map +7 -0
  44. package/dist/cjs/HttpPost.d.ts +130 -0
  45. package/dist/cjs/HttpPost.d.ts.map +1 -0
  46. package/dist/cjs/HttpPost.js +72 -0
  47. package/dist/cjs/HttpPost.js.map +7 -0
  48. package/dist/cjs/LanguageServer.d.ts +90 -0
  49. package/dist/cjs/LanguageServer.d.ts.map +1 -0
  50. package/dist/cjs/LanguageServer.js +60 -0
  51. package/dist/cjs/LanguageServer.js.map +7 -0
  52. package/dist/cjs/Ls.d.ts +164 -0
  53. package/dist/cjs/Ls.d.ts.map +1 -0
  54. package/dist/cjs/Ls.js +136 -0
  55. package/dist/cjs/Ls.js.map +7 -0
  56. package/dist/cjs/Lsp.d.ts +125 -0
  57. package/dist/cjs/Lsp.d.ts.map +1 -0
  58. package/dist/cjs/Lsp.js +137 -0
  59. package/dist/cjs/Lsp.js.map +7 -0
  60. package/dist/cjs/Manifest.d.ts +918 -0
  61. package/dist/cjs/Manifest.d.ts.map +1 -0
  62. package/dist/cjs/Manifest.js +144 -0
  63. package/dist/cjs/Manifest.js.map +7 -0
  64. package/dist/cjs/NativeSearch.d.ts +38 -0
  65. package/dist/cjs/NativeSearch.d.ts.map +1 -0
  66. package/dist/cjs/NativeSearch.js +326 -0
  67. package/dist/cjs/NativeSearch.js.map +7 -0
  68. package/dist/cjs/NodeLanguageServer.d.ts +128 -0
  69. package/dist/cjs/NodeLanguageServer.d.ts.map +1 -0
  70. package/dist/cjs/NodeLanguageServer.js +796 -0
  71. package/dist/cjs/NodeLanguageServer.js.map +7 -0
  72. package/dist/cjs/PortableSearch.d.ts +24 -0
  73. package/dist/cjs/PortableSearch.d.ts.map +1 -0
  74. package/dist/cjs/PortableSearch.js +233 -0
  75. package/dist/cjs/PortableSearch.js.map +7 -0
  76. package/dist/cjs/Probe.d.ts +193 -0
  77. package/dist/cjs/Probe.d.ts.map +1 -0
  78. package/dist/cjs/Probe.js +134 -0
  79. package/dist/cjs/Probe.js.map +7 -0
  80. package/dist/cjs/Read.d.ts +189 -0
  81. package/dist/cjs/Read.d.ts.map +1 -0
  82. package/dist/cjs/Read.js +223 -0
  83. package/dist/cjs/Read.js.map +7 -0
  84. package/dist/cjs/Relocate.d.ts +73 -0
  85. package/dist/cjs/Relocate.d.ts.map +1 -0
  86. package/dist/cjs/Relocate.js +72 -0
  87. package/dist/cjs/Relocate.js.map +7 -0
  88. package/dist/cjs/Search.d.ts +163 -0
  89. package/dist/cjs/Search.d.ts.map +1 -0
  90. package/dist/cjs/Search.js +51 -0
  91. package/dist/cjs/Search.js.map +7 -0
  92. package/dist/cjs/SearchConformance.d.ts +115 -0
  93. package/dist/cjs/SearchConformance.d.ts.map +1 -0
  94. package/dist/cjs/SearchConformance.js +172 -0
  95. package/dist/cjs/SearchConformance.js.map +7 -0
  96. package/dist/cjs/SearchContract.d.ts +114 -0
  97. package/dist/cjs/SearchContract.d.ts.map +1 -0
  98. package/dist/cjs/SearchContract.js +339 -0
  99. package/dist/cjs/SearchContract.js.map +7 -0
  100. package/dist/cjs/ShellCommand.d.ts +164 -0
  101. package/dist/cjs/ShellCommand.d.ts.map +1 -0
  102. package/dist/cjs/ShellCommand.js +102 -0
  103. package/dist/cjs/ShellCommand.js.map +7 -0
  104. package/dist/cjs/StdError.d.ts +55 -0
  105. package/dist/cjs/StdError.d.ts.map +1 -0
  106. package/dist/cjs/StdError.js +74 -0
  107. package/dist/cjs/StdError.js.map +7 -0
  108. package/dist/cjs/TestRun.d.ts +311 -0
  109. package/dist/cjs/TestRun.d.ts.map +1 -0
  110. package/dist/cjs/TestRun.js +228 -0
  111. package/dist/cjs/TestRun.js.map +7 -0
  112. package/dist/cjs/TestRunner.d.ts +102 -0
  113. package/dist/cjs/TestRunner.d.ts.map +1 -0
  114. package/dist/cjs/TestRunner.js +54 -0
  115. package/dist/cjs/TestRunner.js.map +7 -0
  116. package/dist/cjs/TreeFingerprint.d.ts +140 -0
  117. package/dist/cjs/TreeFingerprint.d.ts.map +1 -0
  118. package/dist/cjs/TreeFingerprint.js +87 -0
  119. package/dist/cjs/TreeFingerprint.js.map +7 -0
  120. package/dist/cjs/UpdatePlan.d.ts +152 -0
  121. package/dist/cjs/UpdatePlan.d.ts.map +1 -0
  122. package/dist/cjs/UpdatePlan.js +87 -0
  123. package/dist/cjs/UpdatePlan.js.map +7 -0
  124. package/dist/cjs/WebFetch.d.ts +134 -0
  125. package/dist/cjs/WebFetch.d.ts.map +1 -0
  126. package/dist/cjs/WebFetch.js +140 -0
  127. package/dist/cjs/WebFetch.js.map +7 -0
  128. package/dist/cjs/WebSearch.d.ts +181 -0
  129. package/dist/cjs/WebSearch.d.ts.map +1 -0
  130. package/dist/cjs/WebSearch.js +86 -0
  131. package/dist/cjs/WebSearch.js.map +7 -0
  132. package/dist/cjs/Write.d.ts +147 -0
  133. package/dist/cjs/Write.d.ts.map +1 -0
  134. package/dist/cjs/Write.js +122 -0
  135. package/dist/cjs/Write.js.map +7 -0
  136. package/dist/cjs/index.d.ts +127 -0
  137. package/dist/cjs/index.d.ts.map +1 -0
  138. package/dist/cjs/index.js +99 -0
  139. package/dist/cjs/index.js.map +7 -0
  140. package/dist/cjs/internal/ApplyPatch.d.ts +145 -0
  141. package/dist/cjs/internal/ApplyPatch.d.ts.map +1 -0
  142. package/dist/cjs/internal/ApplyPatch.js +462 -0
  143. package/dist/cjs/internal/ApplyPatch.js.map +7 -0
  144. package/dist/cjs/internal/CodexText.d.ts +73 -0
  145. package/dist/cjs/internal/CodexText.d.ts.map +1 -0
  146. package/dist/cjs/internal/CodexText.js +108 -0
  147. package/dist/cjs/internal/CodexText.js.map +7 -0
  148. package/dist/cjs/internal/Declaration.d.ts +49 -0
  149. package/dist/cjs/internal/Declaration.d.ts.map +1 -0
  150. package/dist/cjs/internal/Declaration.js +46 -0
  151. package/dist/cjs/internal/Declaration.js.map +7 -0
  152. package/dist/cjs/internal/Diagnostics.d.ts +77 -0
  153. package/dist/cjs/internal/Diagnostics.d.ts.map +1 -0
  154. package/dist/cjs/internal/Diagnostics.js +89 -0
  155. package/dist/cjs/internal/Diagnostics.js.map +7 -0
  156. package/dist/cjs/internal/EnvelopePrecheck.d.ts +67 -0
  157. package/dist/cjs/internal/EnvelopePrecheck.d.ts.map +1 -0
  158. package/dist/cjs/internal/EnvelopePrecheck.js +124 -0
  159. package/dist/cjs/internal/EnvelopePrecheck.js.map +7 -0
  160. package/dist/cjs/internal/Exec.d.ts +139 -0
  161. package/dist/cjs/internal/Exec.d.ts.map +1 -0
  162. package/dist/cjs/internal/Exec.js +158 -0
  163. package/dist/cjs/internal/Exec.js.map +7 -0
  164. package/dist/cjs/internal/FileMutation.d.ts +109 -0
  165. package/dist/cjs/internal/FileMutation.d.ts.map +1 -0
  166. package/dist/cjs/internal/FileMutation.js +116 -0
  167. package/dist/cjs/internal/FileMutation.js.map +7 -0
  168. package/dist/cjs/internal/FsFailure.d.ts +38 -0
  169. package/dist/cjs/internal/FsFailure.d.ts.map +1 -0
  170. package/dist/cjs/internal/FsFailure.js +40 -0
  171. package/dist/cjs/internal/FsFailure.js.map +7 -0
  172. package/dist/cjs/internal/GitWorktree.d.ts +108 -0
  173. package/dist/cjs/internal/GitWorktree.d.ts.map +1 -0
  174. package/dist/cjs/internal/GitWorktree.js +276 -0
  175. package/dist/cjs/internal/GitWorktree.js.map +7 -0
  176. package/dist/cjs/internal/Grouping.d.ts +51 -0
  177. package/dist/cjs/internal/Grouping.d.ts.map +1 -0
  178. package/dist/cjs/internal/Grouping.js +83 -0
  179. package/dist/cjs/internal/Grouping.js.map +7 -0
  180. package/dist/cjs/internal/Html.d.ts +20 -0
  181. package/dist/cjs/internal/Html.d.ts.map +1 -0
  182. package/dist/cjs/internal/Html.js +81 -0
  183. package/dist/cjs/internal/Html.js.map +7 -0
  184. package/dist/cjs/internal/Http.d.ts +95 -0
  185. package/dist/cjs/internal/Http.d.ts.map +1 -0
  186. package/dist/cjs/internal/Http.js +153 -0
  187. package/dist/cjs/internal/Http.js.map +7 -0
  188. package/dist/cjs/internal/HttpNetwork.d.ts +27 -0
  189. package/dist/cjs/internal/HttpNetwork.d.ts.map +1 -0
  190. package/dist/cjs/internal/HttpNetwork.js +146 -0
  191. package/dist/cjs/internal/HttpNetwork.js.map +7 -0
  192. package/dist/cjs/internal/Ignore.d.ts +37 -0
  193. package/dist/cjs/internal/Ignore.d.ts.map +1 -0
  194. package/dist/cjs/internal/Ignore.js +100 -0
  195. package/dist/cjs/internal/Ignore.js.map +7 -0
  196. package/dist/cjs/internal/LinearRegex.d.ts +19 -0
  197. package/dist/cjs/internal/LinearRegex.d.ts.map +1 -0
  198. package/dist/cjs/internal/LinearRegex.js +166 -0
  199. package/dist/cjs/internal/LinearRegex.js.map +7 -0
  200. package/dist/cjs/internal/Match.d.ts +85 -0
  201. package/dist/cjs/internal/Match.d.ts.map +1 -0
  202. package/dist/cjs/internal/Match.js +99 -0
  203. package/dist/cjs/internal/Match.js.map +7 -0
  204. package/dist/cjs/internal/Paths.d.ts +23 -0
  205. package/dist/cjs/internal/Paths.d.ts.map +1 -0
  206. package/dist/cjs/internal/Paths.js +52 -0
  207. package/dist/cjs/internal/Paths.js.map +7 -0
  208. package/dist/cjs/internal/Preserve.d.ts +25 -0
  209. package/dist/cjs/internal/Preserve.d.ts.map +1 -0
  210. package/dist/cjs/internal/Preserve.js +88 -0
  211. package/dist/cjs/internal/Preserve.js.map +7 -0
  212. package/dist/cjs/internal/Prune.d.ts +35 -0
  213. package/dist/cjs/internal/Prune.d.ts.map +1 -0
  214. package/dist/cjs/internal/Prune.js +54 -0
  215. package/dist/cjs/internal/Prune.js.map +7 -0
  216. package/dist/cjs/internal/SearchContract.d.ts +63 -0
  217. package/dist/cjs/internal/SearchContract.d.ts.map +1 -0
  218. package/dist/cjs/internal/SearchContract.js +46 -0
  219. package/dist/cjs/internal/SearchContract.js.map +7 -0
  220. package/dist/cjs/internal/Symbols.d.ts +39 -0
  221. package/dist/cjs/internal/Symbols.d.ts.map +1 -0
  222. package/dist/cjs/internal/Symbols.js +59 -0
  223. package/dist/cjs/internal/Symbols.js.map +7 -0
  224. package/dist/cjs/internal/TestReport.d.ts +52 -0
  225. package/dist/cjs/internal/TestReport.d.ts.map +1 -0
  226. package/dist/cjs/internal/TestReport.js +131 -0
  227. package/dist/cjs/internal/TestReport.js.map +7 -0
  228. package/dist/cjs/internal/Text.d.ts +114 -0
  229. package/dist/cjs/internal/Text.d.ts.map +1 -0
  230. package/dist/cjs/internal/Text.js +82 -0
  231. package/dist/cjs/internal/Text.js.map +7 -0
  232. package/dist/cjs/internal/Url.d.ts +13 -0
  233. package/dist/cjs/internal/Url.d.ts.map +1 -0
  234. package/dist/cjs/internal/Url.js +35 -0
  235. package/dist/cjs/internal/Url.js.map +7 -0
  236. package/dist/cjs/internal/Walk.d.ts +72 -0
  237. package/dist/cjs/internal/Walk.d.ts.map +1 -0
  238. package/dist/cjs/internal/Walk.js +108 -0
  239. package/dist/cjs/internal/Walk.js.map +7 -0
  240. package/dist/cjs/package.json +1 -0
  241. package/dist/esm/ApplyPatch.d.ts +174 -0
  242. package/dist/esm/ApplyPatch.d.ts.map +1 -0
  243. package/dist/esm/ApplyPatch.js +346 -0
  244. package/dist/esm/ApplyPatch.js.map +1 -0
  245. package/dist/esm/Bash.d.ts +380 -0
  246. package/dist/esm/Bash.d.ts.map +1 -0
  247. package/dist/esm/Bash.js +505 -0
  248. package/dist/esm/Bash.js.map +1 -0
  249. package/dist/esm/Checkpoints.d.ts +279 -0
  250. package/dist/esm/Checkpoints.d.ts.map +1 -0
  251. package/dist/esm/Checkpoints.js +298 -0
  252. package/dist/esm/Checkpoints.js.map +1 -0
  253. package/dist/esm/Container.d.ts +132 -0
  254. package/dist/esm/Container.d.ts.map +1 -0
  255. package/dist/esm/Container.js +151 -0
  256. package/dist/esm/Container.js.map +1 -0
  257. package/dist/esm/Edit.d.ts +203 -0
  258. package/dist/esm/Edit.d.ts.map +1 -0
  259. package/dist/esm/Edit.js +296 -0
  260. package/dist/esm/Edit.js.map +1 -0
  261. package/dist/esm/ExaWebSearch.d.ts +22 -0
  262. package/dist/esm/ExaWebSearch.d.ts.map +1 -0
  263. package/dist/esm/ExaWebSearch.js +107 -0
  264. package/dist/esm/ExaWebSearch.js.map +1 -0
  265. package/dist/esm/Explore.d.ts +328 -0
  266. package/dist/esm/Explore.d.ts.map +1 -0
  267. package/dist/esm/Explore.js +106 -0
  268. package/dist/esm/Explore.js.map +1 -0
  269. package/dist/esm/Fetch.d.ts +130 -0
  270. package/dist/esm/Fetch.d.ts.map +1 -0
  271. package/dist/esm/Fetch.js +91 -0
  272. package/dist/esm/Fetch.js.map +1 -0
  273. package/dist/esm/Glob.d.ts +204 -0
  274. package/dist/esm/Glob.d.ts.map +1 -0
  275. package/dist/esm/Glob.js +177 -0
  276. package/dist/esm/Glob.js.map +1 -0
  277. package/dist/esm/Grep.d.ts +347 -0
  278. package/dist/esm/Grep.d.ts.map +1 -0
  279. package/dist/esm/Grep.js +289 -0
  280. package/dist/esm/Grep.js.map +1 -0
  281. package/dist/esm/HttpPost.d.ts +130 -0
  282. package/dist/esm/HttpPost.d.ts.map +1 -0
  283. package/dist/esm/HttpPost.js +89 -0
  284. package/dist/esm/HttpPost.js.map +1 -0
  285. package/dist/esm/LanguageServer.d.ts +90 -0
  286. package/dist/esm/LanguageServer.d.ts.map +1 -0
  287. package/dist/esm/LanguageServer.js +57 -0
  288. package/dist/esm/LanguageServer.js.map +1 -0
  289. package/dist/esm/Ls.d.ts +164 -0
  290. package/dist/esm/Ls.d.ts.map +1 -0
  291. package/dist/esm/Ls.js +178 -0
  292. package/dist/esm/Ls.js.map +1 -0
  293. package/dist/esm/Lsp.d.ts +125 -0
  294. package/dist/esm/Lsp.d.ts.map +1 -0
  295. package/dist/esm/Lsp.js +165 -0
  296. package/dist/esm/Lsp.js.map +1 -0
  297. package/dist/esm/Manifest.d.ts +918 -0
  298. package/dist/esm/Manifest.d.ts.map +1 -0
  299. package/dist/esm/Manifest.js +153 -0
  300. package/dist/esm/Manifest.js.map +1 -0
  301. package/dist/esm/NativeSearch.d.ts +38 -0
  302. package/dist/esm/NativeSearch.d.ts.map +1 -0
  303. package/dist/esm/NativeSearch.js +378 -0
  304. package/dist/esm/NativeSearch.js.map +1 -0
  305. package/dist/esm/NodeLanguageServer.d.ts +128 -0
  306. package/dist/esm/NodeLanguageServer.d.ts.map +1 -0
  307. package/dist/esm/NodeLanguageServer.js +843 -0
  308. package/dist/esm/NodeLanguageServer.js.map +1 -0
  309. package/dist/esm/PortableSearch.d.ts +24 -0
  310. package/dist/esm/PortableSearch.d.ts.map +1 -0
  311. package/dist/esm/PortableSearch.js +240 -0
  312. package/dist/esm/PortableSearch.js.map +1 -0
  313. package/dist/esm/Probe.d.ts +193 -0
  314. package/dist/esm/Probe.d.ts.map +1 -0
  315. package/dist/esm/Probe.js +225 -0
  316. package/dist/esm/Probe.js.map +1 -0
  317. package/dist/esm/Read.d.ts +189 -0
  318. package/dist/esm/Read.d.ts.map +1 -0
  319. package/dist/esm/Read.js +300 -0
  320. package/dist/esm/Read.js.map +1 -0
  321. package/dist/esm/Relocate.d.ts +73 -0
  322. package/dist/esm/Relocate.d.ts.map +1 -0
  323. package/dist/esm/Relocate.js +153 -0
  324. package/dist/esm/Relocate.js.map +1 -0
  325. package/dist/esm/Search.d.ts +163 -0
  326. package/dist/esm/Search.d.ts.map +1 -0
  327. package/dist/esm/Search.js +47 -0
  328. package/dist/esm/Search.js.map +1 -0
  329. package/dist/esm/SearchConformance.d.ts +115 -0
  330. package/dist/esm/SearchConformance.d.ts.map +1 -0
  331. package/dist/esm/SearchConformance.js +193 -0
  332. package/dist/esm/SearchConformance.js.map +1 -0
  333. package/dist/esm/SearchContract.d.ts +114 -0
  334. package/dist/esm/SearchContract.d.ts.map +1 -0
  335. package/dist/esm/SearchContract.js +461 -0
  336. package/dist/esm/SearchContract.js.map +1 -0
  337. package/dist/esm/ShellCommand.d.ts +164 -0
  338. package/dist/esm/ShellCommand.d.ts.map +1 -0
  339. package/dist/esm/ShellCommand.js +159 -0
  340. package/dist/esm/ShellCommand.js.map +1 -0
  341. package/dist/esm/StdError.d.ts +55 -0
  342. package/dist/esm/StdError.d.ts.map +1 -0
  343. package/dist/esm/StdError.js +71 -0
  344. package/dist/esm/StdError.js.map +1 -0
  345. package/dist/esm/TestRun.d.ts +311 -0
  346. package/dist/esm/TestRun.d.ts.map +1 -0
  347. package/dist/esm/TestRun.js +316 -0
  348. package/dist/esm/TestRun.js.map +1 -0
  349. package/dist/esm/TestRunner.d.ts +102 -0
  350. package/dist/esm/TestRunner.d.ts.map +1 -0
  351. package/dist/esm/TestRunner.js +68 -0
  352. package/dist/esm/TestRunner.js.map +1 -0
  353. package/dist/esm/TreeFingerprint.d.ts +140 -0
  354. package/dist/esm/TreeFingerprint.d.ts.map +1 -0
  355. package/dist/esm/TreeFingerprint.js +170 -0
  356. package/dist/esm/TreeFingerprint.js.map +1 -0
  357. package/dist/esm/UpdatePlan.d.ts +152 -0
  358. package/dist/esm/UpdatePlan.d.ts.map +1 -0
  359. package/dist/esm/UpdatePlan.js +129 -0
  360. package/dist/esm/UpdatePlan.js.map +1 -0
  361. package/dist/esm/WebFetch.d.ts +134 -0
  362. package/dist/esm/WebFetch.d.ts.map +1 -0
  363. package/dist/esm/WebFetch.js +151 -0
  364. package/dist/esm/WebFetch.js.map +1 -0
  365. package/dist/esm/WebSearch.d.ts +181 -0
  366. package/dist/esm/WebSearch.d.ts.map +1 -0
  367. package/dist/esm/WebSearch.js +134 -0
  368. package/dist/esm/WebSearch.js.map +1 -0
  369. package/dist/esm/Write.d.ts +147 -0
  370. package/dist/esm/Write.d.ts.map +1 -0
  371. package/dist/esm/Write.js +144 -0
  372. package/dist/esm/Write.js.map +1 -0
  373. package/dist/esm/index.d.ts +127 -0
  374. package/dist/esm/index.d.ts.map +1 -0
  375. package/dist/esm/index.js +127 -0
  376. package/dist/esm/index.js.map +1 -0
  377. package/dist/esm/internal/ApplyPatch.d.ts +145 -0
  378. package/dist/esm/internal/ApplyPatch.d.ts.map +1 -0
  379. package/dist/esm/internal/ApplyPatch.js +489 -0
  380. package/dist/esm/internal/ApplyPatch.js.map +1 -0
  381. package/dist/esm/internal/CodexText.d.ts +73 -0
  382. package/dist/esm/internal/CodexText.d.ts.map +1 -0
  383. package/dist/esm/internal/CodexText.js +156 -0
  384. package/dist/esm/internal/CodexText.js.map +1 -0
  385. package/dist/esm/internal/Declaration.d.ts +49 -0
  386. package/dist/esm/internal/Declaration.d.ts.map +1 -0
  387. package/dist/esm/internal/Declaration.js +42 -0
  388. package/dist/esm/internal/Declaration.js.map +1 -0
  389. package/dist/esm/internal/Diagnostics.d.ts +77 -0
  390. package/dist/esm/internal/Diagnostics.d.ts.map +1 -0
  391. package/dist/esm/internal/Diagnostics.js +99 -0
  392. package/dist/esm/internal/Diagnostics.js.map +1 -0
  393. package/dist/esm/internal/EnvelopePrecheck.d.ts +67 -0
  394. package/dist/esm/internal/EnvelopePrecheck.d.ts.map +1 -0
  395. package/dist/esm/internal/EnvelopePrecheck.js +167 -0
  396. package/dist/esm/internal/EnvelopePrecheck.js.map +1 -0
  397. package/dist/esm/internal/Exec.d.ts +139 -0
  398. package/dist/esm/internal/Exec.d.ts.map +1 -0
  399. package/dist/esm/internal/Exec.js +193 -0
  400. package/dist/esm/internal/Exec.js.map +1 -0
  401. package/dist/esm/internal/FileMutation.d.ts +109 -0
  402. package/dist/esm/internal/FileMutation.d.ts.map +1 -0
  403. package/dist/esm/internal/FileMutation.js +123 -0
  404. package/dist/esm/internal/FileMutation.js.map +1 -0
  405. package/dist/esm/internal/FsFailure.d.ts +38 -0
  406. package/dist/esm/internal/FsFailure.d.ts.map +1 -0
  407. package/dist/esm/internal/FsFailure.js +39 -0
  408. package/dist/esm/internal/FsFailure.js.map +1 -0
  409. package/dist/esm/internal/GitWorktree.d.ts +108 -0
  410. package/dist/esm/internal/GitWorktree.d.ts.map +1 -0
  411. package/dist/esm/internal/GitWorktree.js +352 -0
  412. package/dist/esm/internal/GitWorktree.js.map +1 -0
  413. package/dist/esm/internal/Grouping.d.ts +51 -0
  414. package/dist/esm/internal/Grouping.d.ts.map +1 -0
  415. package/dist/esm/internal/Grouping.js +99 -0
  416. package/dist/esm/internal/Grouping.js.map +1 -0
  417. package/dist/esm/internal/Html.d.ts +20 -0
  418. package/dist/esm/internal/Html.d.ts.map +1 -0
  419. package/dist/esm/internal/Html.js +70 -0
  420. package/dist/esm/internal/Html.js.map +1 -0
  421. package/dist/esm/internal/Http.d.ts +95 -0
  422. package/dist/esm/internal/Http.d.ts.map +1 -0
  423. package/dist/esm/internal/Http.js +154 -0
  424. package/dist/esm/internal/Http.js.map +1 -0
  425. package/dist/esm/internal/HttpNetwork.d.ts +27 -0
  426. package/dist/esm/internal/HttpNetwork.d.ts.map +1 -0
  427. package/dist/esm/internal/HttpNetwork.js +114 -0
  428. package/dist/esm/internal/HttpNetwork.js.map +1 -0
  429. package/dist/esm/internal/Ignore.d.ts +37 -0
  430. package/dist/esm/internal/Ignore.d.ts.map +1 -0
  431. package/dist/esm/internal/Ignore.js +128 -0
  432. package/dist/esm/internal/Ignore.js.map +1 -0
  433. package/dist/esm/internal/LinearRegex.d.ts +19 -0
  434. package/dist/esm/internal/LinearRegex.d.ts.map +1 -0
  435. package/dist/esm/internal/LinearRegex.js +176 -0
  436. package/dist/esm/internal/LinearRegex.js.map +1 -0
  437. package/dist/esm/internal/Match.d.ts +85 -0
  438. package/dist/esm/internal/Match.d.ts.map +1 -0
  439. package/dist/esm/internal/Match.js +142 -0
  440. package/dist/esm/internal/Match.js.map +1 -0
  441. package/dist/esm/internal/Paths.d.ts +23 -0
  442. package/dist/esm/internal/Paths.d.ts.map +1 -0
  443. package/dist/esm/internal/Paths.js +40 -0
  444. package/dist/esm/internal/Paths.js.map +1 -0
  445. package/dist/esm/internal/Preserve.d.ts +25 -0
  446. package/dist/esm/internal/Preserve.d.ts.map +1 -0
  447. package/dist/esm/internal/Preserve.js +70 -0
  448. package/dist/esm/internal/Preserve.js.map +1 -0
  449. package/dist/esm/internal/Prune.d.ts +35 -0
  450. package/dist/esm/internal/Prune.d.ts.map +1 -0
  451. package/dist/esm/internal/Prune.js +60 -0
  452. package/dist/esm/internal/Prune.js.map +1 -0
  453. package/dist/esm/internal/SearchContract.d.ts +63 -0
  454. package/dist/esm/internal/SearchContract.d.ts.map +1 -0
  455. package/dist/esm/internal/SearchContract.js +66 -0
  456. package/dist/esm/internal/SearchContract.js.map +1 -0
  457. package/dist/esm/internal/Symbols.d.ts +39 -0
  458. package/dist/esm/internal/Symbols.d.ts.map +1 -0
  459. package/dist/esm/internal/Symbols.js +79 -0
  460. package/dist/esm/internal/Symbols.js.map +1 -0
  461. package/dist/esm/internal/TestReport.d.ts +52 -0
  462. package/dist/esm/internal/TestReport.d.ts.map +1 -0
  463. package/dist/esm/internal/TestReport.js +172 -0
  464. package/dist/esm/internal/TestReport.js.map +1 -0
  465. package/dist/esm/internal/Text.d.ts +114 -0
  466. package/dist/esm/internal/Text.d.ts.map +1 -0
  467. package/dist/esm/internal/Text.js +130 -0
  468. package/dist/esm/internal/Text.js.map +1 -0
  469. package/dist/esm/internal/Url.d.ts +13 -0
  470. package/dist/esm/internal/Url.d.ts.map +1 -0
  471. package/dist/esm/internal/Url.js +27 -0
  472. package/dist/esm/internal/Url.js.map +1 -0
  473. package/dist/esm/internal/Walk.d.ts +72 -0
  474. package/dist/esm/internal/Walk.d.ts.map +1 -0
  475. package/dist/esm/internal/Walk.js +126 -0
  476. package/dist/esm/internal/Walk.js.map +1 -0
  477. package/docs/README.md +117 -0
  478. package/docs/api.md +472 -0
  479. package/docs/concepts/effects-and-capabilities.md +136 -0
  480. package/docs/concepts/flows-and-handlers.md +115 -0
  481. package/docs/concepts/limits-and-disclosure.md +102 -0
  482. package/docs/concepts/search-contract.md +182 -0
  483. package/docs/guides/bind-the-standard-flows.md +114 -0
  484. package/docs/guides/implement-a-search-peer.md +133 -0
  485. package/docs/guides/pin-a-checkpoint.md +141 -0
  486. package/docs/guides/query-a-language-server.md +257 -0
  487. package/docs/guides/reach-the-network.md +141 -0
  488. package/docs/guides/read-and-edit-a-file.md +240 -0
  489. package/docs/guides/run-a-shell-command.md +215 -0
  490. package/docs/guides/run-the-test-suite.md +154 -0
  491. package/docs/guides/search-a-workspace.md +148 -0
  492. package/docs/installation.md +111 -0
  493. package/docs/quickstart.md +125 -0
  494. package/docs/reference/flows.md +556 -0
  495. package/docs/troubleshooting.md +322 -0
  496. package/package.json +439 -3
  497. package/src/ApplyPatch.ts +458 -0
  498. package/src/Bash.ts +607 -0
  499. package/src/Checkpoints.ts +422 -0
  500. package/src/Container.ts +212 -0
  501. package/src/Edit.ts +366 -0
  502. package/src/ExaWebSearch.ts +145 -0
  503. package/src/Explore.ts +139 -0
  504. package/src/Fetch.ts +117 -0
  505. package/src/Glob.ts +200 -0
  506. package/src/Grep.ts +320 -0
  507. package/src/HttpPost.ts +120 -0
  508. package/src/LanguageServer.ts +110 -0
  509. package/src/Ls.ts +228 -0
  510. package/src/Lsp.ts +184 -0
  511. package/src/Manifest.ts +162 -0
  512. package/src/NativeSearch.ts +457 -0
  513. package/src/NodeLanguageServer.ts +1148 -0
  514. package/src/PortableSearch.ts +264 -0
  515. package/src/Probe.ts +284 -0
  516. package/src/Read.ts +359 -0
  517. package/src/Relocate.ts +166 -0
  518. package/src/Search.ts +185 -0
  519. package/src/SearchConformance.ts +288 -0
  520. package/src/SearchContract.ts +489 -0
  521. package/src/ShellCommand.ts +201 -0
  522. package/src/StdError.ts +80 -0
  523. package/src/TestRun.ts +401 -0
  524. package/src/TestRunner.ts +119 -0
  525. package/src/TreeFingerprint.ts +200 -0
  526. package/src/UpdatePlan.ts +171 -0
  527. package/src/WebFetch.ts +194 -0
  528. package/src/WebSearch.ts +165 -0
  529. package/src/Write.ts +195 -0
  530. package/src/index.ts +154 -0
  531. package/src/internal/ApplyPatch.ts +601 -0
  532. package/src/internal/CodexText.ts +182 -0
  533. package/src/internal/Declaration.ts +60 -0
  534. package/src/internal/Diagnostics.ts +134 -0
  535. package/src/internal/EnvelopePrecheck.ts +233 -0
  536. package/src/internal/Exec.ts +314 -0
  537. package/src/internal/FileMutation.ts +231 -0
  538. package/src/internal/FsFailure.ts +51 -0
  539. package/src/internal/GitWorktree.ts +491 -0
  540. package/src/internal/Grouping.ts +106 -0
  541. package/src/internal/Html.ts +87 -0
  542. package/src/internal/Http.ts +209 -0
  543. package/src/internal/HttpNetwork.ts +153 -0
  544. package/src/internal/Ignore.ts +135 -0
  545. package/src/internal/LinearRegex.ts +173 -0
  546. package/src/internal/Match.ts +172 -0
  547. package/src/internal/Paths.ts +42 -0
  548. package/src/internal/Preserve.ts +108 -0
  549. package/src/internal/Prune.ts +62 -0
  550. package/src/internal/SearchContract.ts +77 -0
  551. package/src/internal/Symbols.ts +88 -0
  552. package/src/internal/TestReport.ts +194 -0
  553. package/src/internal/Text.ts +170 -0
  554. package/src/internal/Url.ts +23 -0
  555. package/src/internal/Walk.ts +176 -0
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name2 in all)
10
+ __defProp(target, name2, { get: all[name2], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ShellCommand_exports = {};
30
+ __export(ShellCommand_exports, {
31
+ DEFAULT_MAX_OUTPUT_TOKENS: () => DEFAULT_MAX_OUTPUT_TOKENS,
32
+ DEFAULT_TIMEOUT_MS: () => DEFAULT_TIMEOUT_MS,
33
+ Input: () => Input,
34
+ MAX_CAPTURE_BYTES: () => MAX_CAPTURE_BYTES,
35
+ Output: () => Output,
36
+ TIMEOUT_EXIT_CODE: () => TIMEOUT_EXIT_CODE,
37
+ capabilities: () => capabilities,
38
+ description: () => description,
39
+ effects: () => effects,
40
+ effectsFor: () => effectsFor,
41
+ flow: () => flow,
42
+ name: () => name,
43
+ run: () => run
44
+ });
45
+ module.exports = __toCommonJS(ShellCommand_exports);
46
+ var Effect = __toESM(require("effect/Effect"), 1);
47
+ var Schema = __toESM(require("effect/Schema"), 1);
48
+ var import_CodexText = require("./internal/CodexText.js");
49
+ var import_Declaration = require("./internal/Declaration.js");
50
+ var Exec = __toESM(require("./internal/Exec.js"), 1);
51
+ const name = "shell_command";
52
+ const description = "Runs a shell command and returns its output.\n- Always set the `workdir` param when using the shell_command function. Do not use `cd` unless absolutely necessary.";
53
+ const DEFAULT_TIMEOUT_MS = 1e4;
54
+ const MAX_CAPTURE_BYTES = 8e6;
55
+ const DEFAULT_MAX_OUTPUT_TOKENS = 1e4;
56
+ const TIMEOUT_EXIT_CODE = 124;
57
+ const Input = Schema.Struct({
58
+ command: Schema.String.annotate({ description: "Shell script to run in the user's default shell." }),
59
+ workdir: Schema.optional(
60
+ Schema.String.annotate({ description: "Working directory for the command. Defaults to the turn cwd." })
61
+ ),
62
+ timeout_ms: Schema.optional(
63
+ Schema.Number.annotate({ description: "Maximum command runtime. Defaults to 10000 ms." })
64
+ )
65
+ });
66
+ const Output = Schema.Struct({
67
+ output: Schema.String.annotate({
68
+ description: "Codex-formatted result: exit code, wall time, and possibly middle-truncated output"
69
+ }),
70
+ exitCode: Schema.Number.annotate({ description: "Command exit code; 124 when the command timed out" })
71
+ });
72
+ const effects = (0, import_Declaration.envelope)({ tier: "irreversible", mode: "expected", reads: [], writes: [] });
73
+ const effectsFor = (_input) => effects;
74
+ const capabilities = [(0, import_Declaration.capability)("proc:spawn", "*")];
75
+ const flow = { name, description, input: Input, output: Output, capabilities, effects };
76
+ const run = Effect.fn("ShellCommand.run")(function* (input) {
77
+ const timeoutMs = input.timeout_ms ?? DEFAULT_TIMEOUT_MS;
78
+ const startedAt = Date.now();
79
+ const result = yield* Exec.exec(input.command, {
80
+ ...input.workdir === void 0 ? {} : { cwd: input.workdir },
81
+ timeoutMs,
82
+ maxCaptureBytes: MAX_CAPTURE_BYTES
83
+ }).pipe(
84
+ Effect.map((value) => ({ timedOut: false, value })),
85
+ Effect.catch(
86
+ (error) => error.code === "timeout" ? Effect.succeed({ timedOut: true, value: { exitCode: TIMEOUT_EXIT_CODE, stderr: "", stdout: "" } }) : Effect.fail(Exec.toStdError(input.command, error))
87
+ )
88
+ );
89
+ const durationSeconds = (Date.now() - startedAt) / 1e3;
90
+ const aggregated = result.value.stderr === "" ? result.value.stdout : result.value.stdout === "" ? result.value.stderr : `${result.value.stdout}${result.value.stderr}`;
91
+ return {
92
+ exitCode: result.value.exitCode,
93
+ output: (0, import_CodexText.formatExecOutputForModel)({
94
+ durationSeconds,
95
+ exitCode: result.value.exitCode,
96
+ maxOutputTokens: DEFAULT_MAX_OUTPUT_TOKENS,
97
+ output: aggregated,
98
+ ...result.timedOut ? { timedOutAfterMs: timeoutMs } : {}
99
+ })
100
+ };
101
+ });
102
+ //# sourceMappingURL=ShellCommand.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/ShellCommand.ts"],
4
+ "sourcesContent": ["/**\n * shell_command flow declaration and portable handler.\n *\n * A Codex CLI clone of the `shell_command` tool: string command, `workdir`,\n * `timeout_ms`, and the Codex output format (`Exit code:` / `Wall time:` /\n * `Output:` with middle token-budget truncation).\n *\n * Codex's `sandbox_permissions` / `justification` / `prefix_rule` approval\n * parameters are deliberately absent: the permission kernel owns\n * sandboxing and escalation in this harness.\n *\n * @since 1.0.0\n */\n\nimport type * as ChildProcessSpawner from \"@smthrs/kernel/ChildProcessSpawner\"\nimport * as Effect from \"effect/Effect\"\nimport * as Schema from \"effect/Schema\"\nimport { formatExecOutputForModel } from \"./internal/CodexText.ts\"\nimport { capability, envelope } from \"./internal/Declaration.ts\"\nimport * as Exec from \"./internal/Exec.ts\"\nimport type * as StdError from \"./StdError.ts\"\n\n/**\n * Registry name for the shell_command flow. Matches the Codex CLI tool name.\n *\n * @category identifiers\n * @since 1.0.0\n */\nexport const name = \"shell_command\"\n\n/**\n * Model-facing description of the shell_command flow. Matches the Codex CLI\n * (non-Windows) description.\n *\n * @category descriptions\n * @since 1.0.0\n */\nexport const description = \"Runs a shell command and returns its output.\\n\" +\n \"- Always set the `workdir` param when using the shell_command function. Do not use `cd` unless absolutely necessary.\"\n\n/**\n * Default command timeout in milliseconds, matching Codex.\n *\n * @category constants\n * @since 1.0.0\n */\nexport const DEFAULT_TIMEOUT_MS = 10_000\n\n/**\n * Maximum bytes retained from each stream while a shell command executes.\n *\n * This is far above the 10,000-token model budget because\n * `formatExecOutputForModel` keeps the head and tail while the capture bound\n * keeps only the tail. Commands below this bound therefore render byte for\n * byte as before, while larger output costs the bound instead of its full size.\n *\n * @category constants\n * @since 1.0.0\n */\nexport const MAX_CAPTURE_BYTES = 8_000_000\n\n/**\n * Default output token budget, matching Codex.\n *\n * @category constants\n * @since 1.0.0\n */\nexport const DEFAULT_MAX_OUTPUT_TOKENS = 10_000\n\n/**\n * Timeout exit code reported to the model, matching Codex exec.\n *\n * @category constants\n * @since 1.0.0\n */\nexport const TIMEOUT_EXIT_CODE = 124\n\n/**\n * Input schema for the shell_command flow.\n *\n * @category schemas\n * @since 1.0.0\n */\nexport const Input = Schema.Struct({\n command: Schema.String.annotate({ description: \"Shell script to run in the user's default shell.\" }),\n workdir: Schema.optional(\n Schema.String.annotate({ description: \"Working directory for the command. Defaults to the turn cwd.\" })\n ),\n timeout_ms: Schema.optional(\n Schema.Number.annotate({ description: \"Maximum command runtime. Defaults to 10000 ms.\" })\n )\n})\n\n/**\n * Decoded input accepted by the `shell_command` flow.\n *\n * @category models\n * @since 1.0.0\n */\nexport type Input = typeof Input.Type\n\n/**\n * Output schema for the shell_command flow.\n *\n * @category schemas\n * @since 1.0.0\n */\nexport const Output = Schema.Struct({\n output: Schema.String.annotate({\n description: \"Codex-formatted result: exit code, wall time, and possibly middle-truncated output\"\n }),\n exitCode: Schema.Number.annotate({ description: \"Command exit code; 124 when the command timed out\" })\n})\n\n/**\n * Decoded output returned by the `shell_command` flow.\n *\n * @category models\n * @since 1.0.0\n */\nexport type Output = typeof Output.Type\n\n/**\n * Static conservative effect envelope for the shell_command flow.\n *\n * @category effects\n * @since 1.0.0\n */\nexport const effects = envelope({ tier: \"irreversible\", mode: \"expected\", reads: [], writes: [] })\n\n/**\n * Narrows the effect envelope for a decoded invocation.\n *\n * A command line carries no declared envelope, so an invocation says nothing\n * the registry-time worst case does not already say.\n *\n * @category effects\n * @since 1.0.0\n */\nexport const effectsFor = (_input: typeof Input.Type) => effects\n\n/**\n * Capabilities required by the shell_command flow.\n *\n * @category capabilities\n * @since 1.0.0\n */\nexport const capabilities = [capability(\"proc:spawn\", \"*\")]\n\n/**\n * Declaration-only shell_command flow.\n *\n * @category flows\n * @since 1.0.0\n */\nexport const flow = { name, description, input: Input, output: Output, capabilities, effects } as const\n\n/**\n * Executes a shell command through the permission-aware kernel service and\n * renders the Codex model-facing output format.\n *\n * Non-zero exit codes and timeouts remain successful values, exactly as in\n * Codex; only host and permission failures use the typed error channel.\n *\n * @category handlers\n * @since 1.0.0\n */\nexport const run = Effect.fn(\"ShellCommand.run\")(function*(\n input: typeof Input.Type\n): Effect.fn.Return<typeof Output.Type, StdError.StdError, ChildProcessSpawner.ChildProcessSpawner> {\n const timeoutMs = input.timeout_ms ?? DEFAULT_TIMEOUT_MS\n const startedAt = Date.now()\n const result = yield* Exec.exec(input.command, {\n ...(input.workdir === undefined ? {} : { cwd: input.workdir }),\n timeoutMs,\n maxCaptureBytes: MAX_CAPTURE_BYTES\n }).pipe(\n Effect.map((value) => ({ timedOut: false, value })),\n Effect.catch((error) =>\n error.code === \"timeout\"\n ? Effect.succeed({ timedOut: true, value: { exitCode: TIMEOUT_EXIT_CODE, stderr: \"\", stdout: \"\" } })\n : Effect.fail(Exec.toStdError(input.command, error))\n )\n )\n const durationSeconds = (Date.now() - startedAt) / 1_000\n const aggregated = result.value.stderr === \"\"\n ? result.value.stdout\n : result.value.stdout === \"\"\n ? result.value.stderr\n : `${result.value.stdout}${result.value.stderr}`\n return {\n exitCode: result.value.exitCode,\n output: formatExecOutputForModel({\n durationSeconds,\n exitCode: result.value.exitCode,\n maxOutputTokens: DEFAULT_MAX_OUTPUT_TOKENS,\n output: aggregated,\n ...(result.timedOut ? { timedOutAfterMs: timeoutMs } : {})\n })\n }\n})\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAeA,aAAwB;AACxB,aAAwB;AACxB,uBAAyC;AACzC,yBAAqC;AACrC,WAAsB;AASf,MAAM,OAAO;AASb,MAAM,cAAc;AASpB,MAAM,qBAAqB;AAa3B,MAAM,oBAAoB;AAQ1B,MAAM,4BAA4B;AAQlC,MAAM,oBAAoB;AAQ1B,MAAM,QAAQ,OAAO,OAAO;AAAA,EACjC,SAAS,OAAO,OAAO,SAAS,EAAE,aAAa,mDAAmD,CAAC;AAAA,EACnG,SAAS,OAAO;AAAA,IACd,OAAO,OAAO,SAAS,EAAE,aAAa,+DAA+D,CAAC;AAAA,EACxG;AAAA,EACA,YAAY,OAAO;AAAA,IACjB,OAAO,OAAO,SAAS,EAAE,aAAa,iDAAiD,CAAC;AAAA,EAC1F;AACF,CAAC;AAgBM,MAAM,SAAS,OAAO,OAAO;AAAA,EAClC,QAAQ,OAAO,OAAO,SAAS;AAAA,IAC7B,aAAa;AAAA,EACf,CAAC;AAAA,EACD,UAAU,OAAO,OAAO,SAAS,EAAE,aAAa,oDAAoD,CAAC;AACvG,CAAC;AAgBM,MAAM,cAAU,6BAAS,EAAE,MAAM,gBAAgB,MAAM,YAAY,OAAO,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC;AAW1F,MAAM,aAAa,CAAC,WAA8B;AAQlD,MAAM,eAAe,KAAC,+BAAW,cAAc,GAAG,CAAC;AAQnD,MAAM,OAAO,EAAE,MAAM,aAAa,OAAO,OAAO,QAAQ,QAAQ,cAAc,QAAQ;AAYtF,MAAM,MAAM,OAAO,GAAG,kBAAkB,EAAE,WAC/C,OACkG;AAClG,QAAM,YAAY,MAAM,cAAc;AACtC,QAAM,YAAY,KAAK,IAAI;AAC3B,QAAM,SAAS,OAAO,KAAK,KAAK,MAAM,SAAS;AAAA,IAC7C,GAAI,MAAM,YAAY,SAAY,CAAC,IAAI,EAAE,KAAK,MAAM,QAAQ;AAAA,IAC5D;AAAA,IACA,iBAAiB;AAAA,EACnB,CAAC,EAAE;AAAA,IACD,OAAO,IAAI,CAAC,WAAW,EAAE,UAAU,OAAO,MAAM,EAAE;AAAA,IAClD,OAAO;AAAA,MAAM,CAAC,UACZ,MAAM,SAAS,YACX,OAAO,QAAQ,EAAE,UAAU,MAAM,OAAO,EAAE,UAAU,mBAAmB,QAAQ,IAAI,QAAQ,GAAG,EAAE,CAAC,IACjG,OAAO,KAAK,KAAK,WAAW,MAAM,SAAS,KAAK,CAAC;AAAA,IACvD;AAAA,EACF;AACA,QAAM,mBAAmB,KAAK,IAAI,IAAI,aAAa;AACnD,QAAM,aAAa,OAAO,MAAM,WAAW,KACvC,OAAO,MAAM,SACb,OAAO,MAAM,WAAW,KACxB,OAAO,MAAM,SACb,GAAG,OAAO,MAAM,MAAM,GAAG,OAAO,MAAM,MAAM;AAChD,SAAO;AAAA,IACL,UAAU,OAAO,MAAM;AAAA,IACvB,YAAQ,2CAAyB;AAAA,MAC/B;AAAA,MACA,UAAU,OAAO,MAAM;AAAA,MACvB,iBAAiB;AAAA,MACjB,QAAQ;AAAA,MACR,GAAI,OAAO,WAAW,EAAE,iBAAiB,UAAU,IAAI,CAAC;AAAA,IAC1D,CAAC;AAAA,EACH;AACF,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,55 @@
1
+ /**
2
+ * The single typed error returned by every standard flow handler.
3
+ *
4
+ * @since 1.0.0
5
+ */
6
+ import { Schema } from "effect";
7
+ /**
8
+ * Stable, model-facing failure codes shared by the standard flows.
9
+ *
10
+ * @category models
11
+ * @since 1.0.0
12
+ */
13
+ export declare const Code: Schema.Literals<readonly ["stale_read", "not_found", "not_a_directory", "not_a_file", "is_directory", "binary_file", "offset_out_of_range", "invalid_pattern", "invalid_input", "no_match", "not_modified", "permission_denied", "outside_declared_reads", "outside_declared_writes", "command_failed", "request_failed", "timeout", "rate_limited", "provider_unavailable", "moved_off", "unsupported", "unsupported_content_type", "response_too_large", "outside_container"]>;
14
+ /**
15
+ * Stable, model-facing failure codes shared by the standard flows.
16
+ *
17
+ * @category models
18
+ * @since 1.0.0
19
+ */
20
+ export type Code = typeof Code.Type;
21
+ declare const StdError_base: Schema.Class<StdError, Schema.TaggedStruct<"@smthrs/std/StdError", {
22
+ readonly code: Schema.Literals<readonly ["stale_read", "not_found", "not_a_directory", "not_a_file", "is_directory", "binary_file", "offset_out_of_range", "invalid_pattern", "invalid_input", "no_match", "not_modified", "permission_denied", "outside_declared_reads", "outside_declared_writes", "command_failed", "request_failed", "timeout", "rate_limited", "provider_unavailable", "moved_off", "unsupported", "unsupported_content_type", "response_too_large", "outside_container"]>;
23
+ readonly message: Schema.String;
24
+ readonly path: Schema.optional<Schema.String>;
25
+ /** Full-file base, or unread when this run has not read the existing file. */
26
+ readonly base_digest: Schema.optional<Schema.String>;
27
+ /** Full-file current SHA-256, or absent. */
28
+ readonly current_digest: Schema.optional<Schema.String>;
29
+ /** Language-server request that failed. */
30
+ readonly method: Schema.optional<Schema.String>;
31
+ /** JSON-RPC diagnostics, bounded by the transport's maximum frame size. */
32
+ readonly rpcError: Schema.optional<Schema.Struct<{
33
+ readonly code: Schema.Number;
34
+ readonly message: Schema.String;
35
+ readonly data: Schema.optional<Schema.Unknown>;
36
+ }>>;
37
+ /** At most 64 KiB of the language server's most recent stderr. */
38
+ readonly stderr: Schema.optional<Schema.String>;
39
+ /** The limit a `timeout` ran past, in milliseconds, when the flow knows it. */
40
+ readonly limitMillis: Schema.optional<Schema.Number>;
41
+ }>, import("effect/Cause").YieldableError>;
42
+ /**
43
+ * A recoverable standard-flow failure.
44
+ *
45
+ * Handlers keep ordinary outcomes (a non-zero exit code, an empty match set)
46
+ * in the success channel; this error is reserved for failures the model must
47
+ * see as failures.
48
+ *
49
+ * @category errors
50
+ * @since 1.0.0
51
+ */
52
+ export declare class StdError extends StdError_base {
53
+ }
54
+ export {};
55
+ //# sourceMappingURL=StdError.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StdError.d.ts","sourceRoot":"","sources":["../../src/StdError.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B;;;;;GAKG;AACH,eAAO,MAAM,IAAI,kdAyBf,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,CAAA;;;;;IAgBjC,8EAA8E;;IAE9E,4CAA4C;;IAE5C,2CAA2C;;IAE3C,2EAA2E;;;;;;IAM3E,kEAAkE;;IAElE,+EAA+E;;;AA5BjF;;;;;;;;;GASG;AACH,qBAAa,QAAS,SAAQ,aAoB5B;CAAG"}
@@ -0,0 +1,74 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var StdError_exports = {};
20
+ __export(StdError_exports, {
21
+ Code: () => Code,
22
+ StdError: () => StdError
23
+ });
24
+ module.exports = __toCommonJS(StdError_exports);
25
+ var import_effect = require("effect");
26
+ const Code = import_effect.Schema.Literals([
27
+ "stale_read",
28
+ "not_found",
29
+ "not_a_directory",
30
+ "not_a_file",
31
+ "is_directory",
32
+ "binary_file",
33
+ "offset_out_of_range",
34
+ "invalid_pattern",
35
+ "invalid_input",
36
+ "no_match",
37
+ "not_modified",
38
+ "permission_denied",
39
+ "outside_declared_reads",
40
+ "outside_declared_writes",
41
+ "command_failed",
42
+ "request_failed",
43
+ "timeout",
44
+ "rate_limited",
45
+ "provider_unavailable",
46
+ "moved_off",
47
+ "unsupported",
48
+ "unsupported_content_type",
49
+ "response_too_large",
50
+ "outside_container"
51
+ ]);
52
+ class StdError extends import_effect.Schema.TaggedError()("@smthrs/std/StdError", {
53
+ code: Code,
54
+ message: import_effect.Schema.String,
55
+ path: import_effect.Schema.optional(import_effect.Schema.String),
56
+ /** Full-file base, or unread when this run has not read the existing file. */
57
+ base_digest: import_effect.Schema.optional(import_effect.Schema.String),
58
+ /** Full-file current SHA-256, or absent. */
59
+ current_digest: import_effect.Schema.optional(import_effect.Schema.String),
60
+ /** Language-server request that failed. */
61
+ method: import_effect.Schema.optional(import_effect.Schema.String),
62
+ /** JSON-RPC diagnostics, bounded by the transport's maximum frame size. */
63
+ rpcError: import_effect.Schema.optional(import_effect.Schema.Struct({
64
+ code: import_effect.Schema.Number,
65
+ message: import_effect.Schema.String,
66
+ data: import_effect.Schema.optional(import_effect.Schema.Unknown)
67
+ })),
68
+ /** At most 64 KiB of the language server's most recent stderr. */
69
+ stderr: import_effect.Schema.optional(import_effect.Schema.String),
70
+ /** The limit a `timeout` ran past, in milliseconds, when the flow knows it. */
71
+ limitMillis: import_effect.Schema.optional(import_effect.Schema.Number)
72
+ }) {
73
+ }
74
+ //# sourceMappingURL=StdError.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/StdError.ts"],
4
+ "sourcesContent": ["/**\n * The single typed error returned by every standard flow handler.\n *\n * @since 1.0.0\n */\n\nimport { Schema } from \"effect\"\n\n/**\n * Stable, model-facing failure codes shared by the standard flows.\n *\n * @category models\n * @since 1.0.0\n */\nexport const Code = Schema.Literals([\n \"stale_read\",\n \"not_found\",\n \"not_a_directory\",\n \"not_a_file\",\n \"is_directory\",\n \"binary_file\",\n \"offset_out_of_range\",\n \"invalid_pattern\",\n \"invalid_input\",\n \"no_match\",\n \"not_modified\",\n \"permission_denied\",\n \"outside_declared_reads\",\n \"outside_declared_writes\",\n \"command_failed\",\n \"request_failed\",\n \"timeout\",\n \"rate_limited\",\n \"provider_unavailable\",\n \"moved_off\",\n \"unsupported\",\n \"unsupported_content_type\",\n \"response_too_large\",\n \"outside_container\"\n])\n\n/**\n * Stable, model-facing failure codes shared by the standard flows.\n *\n * @category models\n * @since 1.0.0\n */\nexport type Code = typeof Code.Type\n\n/**\n * A recoverable standard-flow failure.\n *\n * Handlers keep ordinary outcomes (a non-zero exit code, an empty match set)\n * in the success channel; this error is reserved for failures the model must\n * see as failures.\n *\n * @category errors\n * @since 1.0.0\n */\nexport class StdError extends Schema.TaggedError<StdError>()(\"@smthrs/std/StdError\", {\n code: Code,\n message: Schema.String,\n path: Schema.optional(Schema.String),\n /** Full-file base, or unread when this run has not read the existing file. */\n base_digest: Schema.optional(Schema.String),\n /** Full-file current SHA-256, or absent. */\n current_digest: Schema.optional(Schema.String),\n /** Language-server request that failed. */\n method: Schema.optional(Schema.String),\n /** JSON-RPC diagnostics, bounded by the transport's maximum frame size. */\n rpcError: Schema.optional(Schema.Struct({\n code: Schema.Number,\n message: Schema.String,\n data: Schema.optional(Schema.Unknown)\n })),\n /** At most 64 KiB of the language server's most recent stderr. */\n stderr: Schema.optional(Schema.String),\n /** The limit a `timeout` ran past, in milliseconds, when the flow knows it. */\n limitMillis: Schema.optional(Schema.Number)\n}) {}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAMA,oBAAuB;AAQhB,MAAM,OAAO,qBAAO,SAAS;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAoBM,MAAM,iBAAiB,qBAAO,YAAsB,EAAE,wBAAwB;AAAA,EACnF,MAAM;AAAA,EACN,SAAS,qBAAO;AAAA,EAChB,MAAM,qBAAO,SAAS,qBAAO,MAAM;AAAA;AAAA,EAEnC,aAAa,qBAAO,SAAS,qBAAO,MAAM;AAAA;AAAA,EAE1C,gBAAgB,qBAAO,SAAS,qBAAO,MAAM;AAAA;AAAA,EAE7C,QAAQ,qBAAO,SAAS,qBAAO,MAAM;AAAA;AAAA,EAErC,UAAU,qBAAO,SAAS,qBAAO,OAAO;AAAA,IACtC,MAAM,qBAAO;AAAA,IACb,SAAS,qBAAO;AAAA,IAChB,MAAM,qBAAO,SAAS,qBAAO,OAAO;AAAA,EACtC,CAAC,CAAC;AAAA;AAAA,EAEF,QAAQ,qBAAO,SAAS,qBAAO,MAAM;AAAA;AAAA,EAErC,aAAa,qBAAO,SAAS,qBAAO,MAAM;AAC5C,CAAC,EAAE;AAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,311 @@
1
+ /**
2
+ * The `test` flow: run the declared suite, and answer with the two facts.
3
+ *
4
+ * Two things this returns that a shell command cannot. First, a *reading*:
5
+ * `{passed, failed}` parsed from the runner's own report, with the raw tail
6
+ * kept for whatever the parse could not carry — a suite's answer is a number
7
+ * and a list of names, not twenty kilobytes of stdout for a model to re-read.
8
+ *
9
+ * Second, `against: "base"`: the same selection also runs against the pristine
10
+ * base commit in a scratch checkout, and the two failure sets are differenced
11
+ * here. That is the whole of attribution, in one call. Without it, agents pay
12
+ * for it in frames — sphinx-8721 spent fourteen frames because a pre-existing
13
+ * failure was never baselined, sympy-13878 spent $0.90 on the same mistake, and
14
+ * django-24970 spent three frames. The rule the harness teaches ("before
15
+ * blaming your own edit, run the same command on the unmodified tree") is only
16
+ * cheap when the tool can do it.
17
+ *
18
+ * A third thing is answered on the way out: whether a non-zero exit is the
19
+ * tree's failure at all, or the command failing to resolve a name. Jev decides
20
+ * it through `Probe.classify`, so the flow needs an `Evaluator` and a host
21
+ * uses its configured subscription seat. A judge that does not answer fails the call with
22
+ * the code `Probe.unjudged` names, because a run nobody judged is not a run
23
+ * this flow can report on.
24
+ *
25
+ * @since 1.0.0
26
+ */
27
+ import type * as ChildProcessSpawner from "@smthrs/kernel/ChildProcessSpawner";
28
+ import type * as Evaluator from "@smthrs/model/Evaluator";
29
+ import * as Effect from "effect/Effect";
30
+ import * as Schema from "effect/Schema";
31
+ import * as StdError from "./StdError.ts";
32
+ import * as TestRunner from "./TestRunner.ts";
33
+ /**
34
+ * Registry name for the test flow.
35
+ *
36
+ * @category identifiers
37
+ * @since 1.0.0
38
+ */
39
+ export declare const name = "test";
40
+ /**
41
+ * Model-facing description of the test flow.
42
+ *
43
+ * @category descriptions
44
+ * @since 1.0.0
45
+ */
46
+ export declare const description = "Run this repository's declared test runner and get {passed, failed[ids]}, not raw output. against:'base' also runs it on the pristine base commit, so a pre-existing failure is named, not investigated.";
47
+ /**
48
+ * The parent directory baseline checkouts are written into, relative to the
49
+ * repository root, and therefore also relative to the runner's own directory.
50
+ *
51
+ * @category constants
52
+ * @since 1.0.0
53
+ */
54
+ export declare const scratchDirectory = ".flows-test-base";
55
+ /**
56
+ * Default wall-clock budget for one test run.
57
+ *
58
+ * @category constants
59
+ * @since 1.0.0
60
+ */
61
+ export declare const DEFAULT_TIMEOUT_MS = 600000;
62
+ /**
63
+ * Maximum bytes retained from each stream while a test run executes.
64
+ *
65
+ * @category constants
66
+ * @since 1.0.0
67
+ */
68
+ export declare const MAX_CAPTURE_BYTES = 8000000;
69
+ /**
70
+ * Input schema for the test flow.
71
+ *
72
+ * @category schemas
73
+ * @since 1.0.0
74
+ */
75
+ export declare const Input: Schema.Struct<{
76
+ readonly selection: Schema.optional<Schema.$Array<Schema.String>>;
77
+ readonly against: Schema.optional<Schema.Literals<readonly ["workspace", "base"]>>;
78
+ readonly timeoutMs: Schema.optional<Schema.Number>;
79
+ }>;
80
+ /**
81
+ * Decoded input accepted by the `test` flow.
82
+ *
83
+ * @category models
84
+ * @since 1.0.0
85
+ */
86
+ export type Input = typeof Input.Type;
87
+ /**
88
+ * One run's outcome.
89
+ *
90
+ * @category schemas
91
+ * @since 1.0.0
92
+ */
93
+ export declare const Outcome: Schema.Struct<{
94
+ readonly command: Schema.String;
95
+ readonly exitCode: Schema.Number;
96
+ readonly passed: Schema.Number;
97
+ readonly failed: Schema.$Array<Schema.String>;
98
+ readonly parsed: Schema.Boolean;
99
+ readonly tail: Schema.String;
100
+ readonly tailTruncated: Schema.Boolean;
101
+ readonly tailDroppedBytes: Schema.Number;
102
+ readonly invalidProbe: Schema.optional<Schema.Struct<{
103
+ readonly reason: Schema.Literals<readonly ["unknown-command", "unknown-test", "unknown-path", "unknown-module", "unknown-environment"]>;
104
+ readonly evidence: Schema.String;
105
+ readonly message: Schema.String;
106
+ }>>;
107
+ }>;
108
+ /**
109
+ * Output schema for the test flow.
110
+ *
111
+ * @category schemas
112
+ * @since 1.0.0
113
+ */
114
+ export declare const Output: Schema.Struct<{
115
+ readonly base: Schema.optional<Schema.Struct<{
116
+ readonly ref: Schema.String;
117
+ readonly commit: Schema.String;
118
+ readonly command: Schema.String;
119
+ readonly exitCode: Schema.Number;
120
+ readonly passed: Schema.Number;
121
+ readonly failed: Schema.$Array<Schema.String>;
122
+ readonly parsed: Schema.Boolean;
123
+ readonly tail: Schema.String;
124
+ readonly tailTruncated: Schema.Boolean;
125
+ readonly tailDroppedBytes: Schema.Number;
126
+ readonly invalidProbe: Schema.optional<Schema.Struct<{
127
+ readonly reason: Schema.Literals<readonly ["unknown-command", "unknown-test", "unknown-path", "unknown-module", "unknown-environment"]>;
128
+ readonly evidence: Schema.String;
129
+ readonly message: Schema.String;
130
+ }>>;
131
+ }>>;
132
+ readonly introduced: Schema.optional<Schema.$Array<Schema.String>>;
133
+ readonly preexisting: Schema.optional<Schema.$Array<Schema.String>>;
134
+ readonly fixed: Schema.optional<Schema.$Array<Schema.String>>;
135
+ readonly command: Schema.String;
136
+ readonly exitCode: Schema.Number;
137
+ readonly passed: Schema.Number;
138
+ readonly failed: Schema.$Array<Schema.String>;
139
+ readonly parsed: Schema.Boolean;
140
+ readonly tail: Schema.String;
141
+ readonly tailTruncated: Schema.Boolean;
142
+ readonly tailDroppedBytes: Schema.Number;
143
+ readonly invalidProbe: Schema.optional<Schema.Struct<{
144
+ readonly reason: Schema.Literals<readonly ["unknown-command", "unknown-test", "unknown-path", "unknown-module", "unknown-environment"]>;
145
+ readonly evidence: Schema.String;
146
+ readonly message: Schema.String;
147
+ }>>;
148
+ }>;
149
+ /**
150
+ * Decoded output returned by the `test` flow.
151
+ *
152
+ * @category models
153
+ * @since 1.0.0
154
+ */
155
+ export type Output = typeof Output.Type;
156
+ /**
157
+ * Static conservative effect envelope for the test flow.
158
+ *
159
+ * @category effects
160
+ * @since 1.0.0
161
+ */
162
+ export declare const effects: import("@smthrs/plan/Effects").Declaration;
163
+ /**
164
+ * Narrows the effect envelope for a decoded invocation.
165
+ *
166
+ * @category effects
167
+ * @since 1.0.0
168
+ */
169
+ export declare const effectsFor: (_input: typeof Input.Type) => import("@smthrs/plan/Effects").Declaration;
170
+ /**
171
+ * Capabilities required by the test flow.
172
+ *
173
+ * @category capabilities
174
+ * @since 1.0.0
175
+ */
176
+ export declare const capabilities: string[];
177
+ /**
178
+ * Declaration-only test flow.
179
+ *
180
+ * @category flows
181
+ * @since 1.0.0
182
+ */
183
+ export declare const flow: {
184
+ readonly name: "test";
185
+ readonly description: "Run this repository's declared test runner and get {passed, failed[ids]}, not raw output. against:'base' also runs it on the pristine base commit, so a pre-existing failure is named, not investigated.";
186
+ readonly input: Schema.Struct<{
187
+ readonly selection: Schema.optional<Schema.$Array<Schema.String>>;
188
+ readonly against: Schema.optional<Schema.Literals<readonly ["workspace", "base"]>>;
189
+ readonly timeoutMs: Schema.optional<Schema.Number>;
190
+ }>;
191
+ readonly output: Schema.Struct<{
192
+ readonly base: Schema.optional<Schema.Struct<{
193
+ readonly ref: Schema.String;
194
+ readonly commit: Schema.String;
195
+ readonly command: Schema.String;
196
+ readonly exitCode: Schema.Number;
197
+ readonly passed: Schema.Number;
198
+ readonly failed: Schema.$Array<Schema.String>;
199
+ readonly parsed: Schema.Boolean;
200
+ readonly tail: Schema.String;
201
+ readonly tailTruncated: Schema.Boolean;
202
+ readonly tailDroppedBytes: Schema.Number;
203
+ readonly invalidProbe: Schema.optional<Schema.Struct<{
204
+ readonly reason: Schema.Literals<readonly ["unknown-command", "unknown-test", "unknown-path", "unknown-module", "unknown-environment"]>;
205
+ readonly evidence: Schema.String;
206
+ readonly message: Schema.String;
207
+ }>>;
208
+ }>>;
209
+ readonly introduced: Schema.optional<Schema.$Array<Schema.String>>;
210
+ readonly preexisting: Schema.optional<Schema.$Array<Schema.String>>;
211
+ readonly fixed: Schema.optional<Schema.$Array<Schema.String>>;
212
+ readonly command: Schema.String;
213
+ readonly exitCode: Schema.Number;
214
+ readonly passed: Schema.Number;
215
+ readonly failed: Schema.$Array<Schema.String>;
216
+ readonly parsed: Schema.Boolean;
217
+ readonly tail: Schema.String;
218
+ readonly tailTruncated: Schema.Boolean;
219
+ readonly tailDroppedBytes: Schema.Number;
220
+ readonly invalidProbe: Schema.optional<Schema.Struct<{
221
+ readonly reason: Schema.Literals<readonly ["unknown-command", "unknown-test", "unknown-path", "unknown-module", "unknown-environment"]>;
222
+ readonly evidence: Schema.String;
223
+ readonly message: Schema.String;
224
+ }>>;
225
+ }>;
226
+ readonly capabilities: string[];
227
+ readonly effects: import("@smthrs/plan/Effects").Declaration;
228
+ };
229
+ /**
230
+ * What a call to this flow does, for a reader of a run.
231
+ *
232
+ * Display metadata only. `@smthrs/registry` `Descriptor.FlowActivity` is the
233
+ * governing vocabulary and `StandardFlows` binds this value onto the flow's
234
+ * descriptor, where the binding site checks it. `declarationDigest` excludes
235
+ * it, so declaring it cannot invalidate a call identity or a cached prompt.
236
+ *
237
+ * @category presentation
238
+ * @since 1.0.0-rc.0
239
+ */
240
+ export declare const activity: "tests";
241
+ /**
242
+ * How one recorded call to this flow reads: the verb for each settlement, the
243
+ * input field that is its subject, and the measured output fields a one-line
244
+ * summary may count.
245
+ *
246
+ * Display metadata only, governed by `@smthrs/registry`
247
+ * `Descriptor.CallPresentation` and checked where `StandardFlows` binds it.
248
+ *
249
+ * @category presentation
250
+ * @since 1.0.0-rc.0
251
+ */
252
+ export declare const presentation: {
253
+ readonly verb: {
254
+ readonly pending: "running";
255
+ readonly success: "ran";
256
+ readonly failure: "failed to run";
257
+ };
258
+ readonly subject: "selection";
259
+ readonly result: "tests";
260
+ };
261
+ /**
262
+ * Runs the declared suite, and on request the same suite on the pristine base.
263
+ *
264
+ * Baseline Git and both runners use the caller-provided process service.
265
+ * A host that cannot safely stage the base declares `baseline: false`, which
266
+ * refuses the request before running either suite or Git. Library hosts that
267
+ * support staging remove the detached checkout when the call ends.
268
+ *
269
+ * @category handlers
270
+ * @since 1.0.0
271
+ */
272
+ export declare const run: (input: {
273
+ readonly timeoutMs?: number | undefined;
274
+ readonly selection?: readonly string[] | undefined;
275
+ readonly against?: "base" | "workspace" | undefined;
276
+ }) => Effect.Effect<{
277
+ readonly tail: string;
278
+ readonly exitCode: number;
279
+ readonly command: string;
280
+ readonly failed: readonly string[];
281
+ readonly passed: number;
282
+ readonly parsed: boolean;
283
+ readonly tailTruncated: boolean;
284
+ readonly tailDroppedBytes: number;
285
+ readonly fixed?: readonly string[] | undefined;
286
+ readonly invalidProbe?: {
287
+ readonly reason: "unknown-command" | "unknown-test" | "unknown-path" | "unknown-module" | "unknown-environment";
288
+ readonly evidence: string;
289
+ readonly message: string;
290
+ } | undefined;
291
+ readonly base?: {
292
+ readonly tail: string;
293
+ readonly exitCode: number;
294
+ readonly command: string;
295
+ readonly failed: readonly string[];
296
+ readonly ref: string;
297
+ readonly commit: string;
298
+ readonly passed: number;
299
+ readonly parsed: boolean;
300
+ readonly tailTruncated: boolean;
301
+ readonly tailDroppedBytes: number;
302
+ readonly invalidProbe?: {
303
+ readonly reason: "unknown-command" | "unknown-test" | "unknown-path" | "unknown-module" | "unknown-environment";
304
+ readonly evidence: string;
305
+ readonly message: string;
306
+ } | undefined;
307
+ } | undefined;
308
+ readonly introduced?: readonly string[] | undefined;
309
+ readonly preexisting?: readonly string[] | undefined;
310
+ }, StdError.StdError, ChildProcessSpawner.ChildProcessSpawner | Evaluator.Evaluator | TestRunner.TestRunner>;
311
+ //# sourceMappingURL=TestRun.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestRun.d.ts","sourceRoot":"","sources":["../../src/TestRun.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,KAAK,mBAAmB,MAAM,oCAAoC,CAAA;AAC9E,OAAO,KAAK,KAAK,SAAS,MAAM,yBAAyB,CAAA;AACzD,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAEvC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AASvC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AACzC,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;;;;GAKG;AACH,eAAO,MAAM,IAAI,SAAS,CAAA;AAE1B;;;;;GAKG;AACH,eAAO,MAAM,WAAW,6MACoL,CAAA;AAE5M;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,qBAAwB,CAAA;AAErD;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,SAAU,CAAA;AAEzC;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,UAAY,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,KAAK;;;;EAShB,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,KAAK,GAAG,OAAO,KAAK,CAAC,IAAI,CAAA;AAErC;;;;;GAKG;AACH,eAAO,MAAM,OAAO;;;;;;;;;;;;;;EAoBlB,CAAA;AAEF;;;;;GAKG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBjB,CAAA;AAEF;;;;;GAKG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAC,IAAI,CAAA;AAEvC;;;;;GAKG;AACH,eAAO,MAAM,OAAO,4CAA8E,CAAA;AAElG;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,QAAQ,OAAO,KAAK,CAAC,IAAI,+CAAY,CAAA;AAEhE;;;;;GAKG;AACH,eAAO,MAAM,YAAY,UAAkC,CAAA;AAE3D;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAsF,CAAA;AAEvG;;;;;;;;;;GAUG;AACH,eAAO,MAAM,QAAQ,EAAG,OAAgB,CAAA;AAExC;;;;;;;;;;GAUG;AACH,eAAO,MAAM,YAAY;;;;;;;;CAIf,CAAA;AAkGV;;;;;;;;;;GAUG;AACH,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4GA6Dd,CAAA"}