@yaag/cli 0.1.0

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 (768) hide show
  1. package/assets/types/runtime/agent-names.d.ts +8 -0
  2. package/assets/types/runtime/agent-usage.d.ts +16 -0
  3. package/assets/types/runtime/agent.d.ts +36 -0
  4. package/assets/types/runtime/args-validation.d.ts +3 -0
  5. package/assets/types/runtime/ask-activity.d.ts +9 -0
  6. package/assets/types/runtime/ask-contract-identity.d.ts +25 -0
  7. package/assets/types/runtime/ask-exchange-events.d.ts +13 -0
  8. package/assets/types/runtime/ask-exchange-options.d.ts +30 -0
  9. package/assets/types/runtime/ask-exchange.d.ts +4 -0
  10. package/assets/types/runtime/ask-hash.d.ts +32 -0
  11. package/assets/types/runtime/ask-limit.d.ts +46 -0
  12. package/assets/types/runtime/ask-output-steering.d.ts +28 -0
  13. package/assets/types/runtime/ask-output-tail.d.ts +28 -0
  14. package/assets/types/runtime/ask-output.d.ts +29 -0
  15. package/assets/types/runtime/ask-settlement.d.ts +11 -0
  16. package/assets/types/runtime/ask-turn.d.ts +25 -0
  17. package/assets/types/runtime/cassette-loader.d.ts +11 -0
  18. package/assets/types/runtime/cassette-publish.d.ts +11 -0
  19. package/assets/types/runtime/cassette-replay.d.ts +24 -0
  20. package/assets/types/runtime/cassette-schema.d.ts +111 -0
  21. package/assets/types/runtime/cassette.d.ts +118 -0
  22. package/assets/types/runtime/checkpoint-dir.d.ts +30 -0
  23. package/assets/types/runtime/connection.d.ts +29 -0
  24. package/assets/types/runtime/define-agent.d.ts +48 -0
  25. package/assets/types/runtime/define-run.d.ts +40 -0
  26. package/assets/types/runtime/errors.d.ts +50 -0
  27. package/assets/types/runtime/events.d.ts +138 -0
  28. package/assets/types/runtime/extension-package.d.ts +17 -0
  29. package/assets/types/runtime/extension-paths.d.ts +16 -0
  30. package/assets/types/runtime/extension-source.d.ts +28 -0
  31. package/assets/types/runtime/fake-transport.d.ts +78 -0
  32. package/assets/types/runtime/frame-gap.d.ts +23 -0
  33. package/assets/types/runtime/frame-queue.d.ts +15 -0
  34. package/assets/types/runtime/git-facts.d.ts +7 -0
  35. package/assets/types/runtime/idle-watch.d.ts +44 -0
  36. package/assets/types/runtime/index.d.ts +33 -0
  37. package/assets/types/runtime/jsonl.d.ts +13 -0
  38. package/assets/types/runtime/live-transport.d.ts +3 -0
  39. package/assets/types/runtime/node-decoder-subagent.d.ts +7 -0
  40. package/assets/types/runtime/node-decoder-workflow.d.ts +12 -0
  41. package/assets/types/runtime/node-decoder.d.ts +21 -0
  42. package/assets/types/runtime/node-decoders.d.ts +3 -0
  43. package/assets/types/runtime/node-details.d.ts +22 -0
  44. package/assets/types/runtime/node-path.d.ts +19 -0
  45. package/assets/types/runtime/node-tracker.d.ts +30 -0
  46. package/assets/types/runtime/pi-state.d.ts +16 -0
  47. package/assets/types/runtime/prompt-gist.d.ts +8 -0
  48. package/assets/types/runtime/prompt.d.ts +9 -0
  49. package/assets/types/runtime/reap.d.ts +22 -0
  50. package/assets/types/runtime/recording-transport.d.ts +9 -0
  51. package/assets/types/runtime/replay-divergence.d.ts +19 -0
  52. package/assets/types/runtime/replay-transport.d.ts +9 -0
  53. package/assets/types/runtime/resume-preconditions.d.ts +8 -0
  54. package/assets/types/runtime/resume-transport.d.ts +9 -0
  55. package/assets/types/runtime/run-checkpoint.d.ts +28 -0
  56. package/assets/types/runtime/run-context.d.ts +18 -0
  57. package/assets/types/runtime/run.d.ts +60 -0
  58. package/assets/types/runtime/skill-probe.d.ts +71 -0
  59. package/assets/types/runtime/skill-restriction-transport.d.ts +8 -0
  60. package/assets/types/runtime/spawn.d.ts +24 -0
  61. package/assets/types/runtime/summary-agent.d.ts +123 -0
  62. package/assets/types/runtime/summary-nodes.d.ts +28 -0
  63. package/assets/types/runtime/summary.d.ts +55 -0
  64. package/assets/types/runtime/tool-probe-extension.d.ts +12 -0
  65. package/assets/types/runtime/tool-probe.d.ts +30 -0
  66. package/assets/types/runtime/transport.d.ts +143 -0
  67. package/assets/types/runtime/types.d.ts +120 -0
  68. package/assets/types/runtime/validation-errors.d.ts +3 -0
  69. package/assets/types/runtime/wire-constants.d.ts +18 -0
  70. package/assets/types/runtime/worktree-transport.d.ts +9 -0
  71. package/assets/types/typebox/build/compile/code.d.mts +12 -0
  72. package/assets/types/typebox/build/compile/compile.d.mts +6 -0
  73. package/assets/types/typebox/build/compile/index.d.mts +8 -0
  74. package/assets/types/typebox/build/compile/validator.d.mts +35 -0
  75. package/assets/types/typebox/build/error/errors.d.mts +208 -0
  76. package/assets/types/typebox/build/error/index.d.mts +1 -0
  77. package/assets/types/typebox/build/format/_idna.d.mts +2 -0
  78. package/assets/types/typebox/build/format/_puny.d.mts +1 -0
  79. package/assets/types/typebox/build/format/_registry.d.mts +15 -0
  80. package/assets/types/typebox/build/format/date.d.mts +6 -0
  81. package/assets/types/typebox/build/format/date_time.d.mts +6 -0
  82. package/assets/types/typebox/build/format/duration.d.mts +5 -0
  83. package/assets/types/typebox/build/format/email.d.mts +5 -0
  84. package/assets/types/typebox/build/format/format.d.mts +22 -0
  85. package/assets/types/typebox/build/format/hostname.d.mts +7 -0
  86. package/assets/types/typebox/build/format/idn_email.d.mts +5 -0
  87. package/assets/types/typebox/build/format/idn_hostname.d.mts +7 -0
  88. package/assets/types/typebox/build/format/index.d.mts +4 -0
  89. package/assets/types/typebox/build/format/ipv4.d.mts +6 -0
  90. package/assets/types/typebox/build/format/ipv6.d.mts +5 -0
  91. package/assets/types/typebox/build/format/iri.d.mts +5 -0
  92. package/assets/types/typebox/build/format/iri_reference.d.mts +5 -0
  93. package/assets/types/typebox/build/format/json_pointer.d.mts +6 -0
  94. package/assets/types/typebox/build/format/json_pointer_uri_fragment.d.mts +6 -0
  95. package/assets/types/typebox/build/format/regex.d.mts +6 -0
  96. package/assets/types/typebox/build/format/relative_json_pointer.d.mts +6 -0
  97. package/assets/types/typebox/build/format/time.d.mts +5 -0
  98. package/assets/types/typebox/build/format/uri.d.mts +5 -0
  99. package/assets/types/typebox/build/format/uri_reference.d.mts +5 -0
  100. package/assets/types/typebox/build/format/uri_template.d.mts +6 -0
  101. package/assets/types/typebox/build/format/url.d.mts +6 -0
  102. package/assets/types/typebox/build/format/uuid.d.mts +6 -0
  103. package/assets/types/typebox/build/guard/emit.d.mts +54 -0
  104. package/assets/types/typebox/build/guard/globals.d.mts +35 -0
  105. package/assets/types/typebox/build/guard/guard.d.mts +65 -0
  106. package/assets/types/typebox/build/guard/index.d.mts +6 -0
  107. package/assets/types/typebox/build/guard/native.d.mts +20 -0
  108. package/assets/types/typebox/build/guard/string.d.mts +6 -0
  109. package/assets/types/typebox/build/index.d.mts +8 -0
  110. package/assets/types/typebox/build/schema/build.d.mts +39 -0
  111. package/assets/types/typebox/build/schema/check.d.mts +6 -0
  112. package/assets/types/typebox/build/schema/compile.d.mts +22 -0
  113. package/assets/types/typebox/build/schema/engine/_context.d.mts +35 -0
  114. package/assets/types/typebox/build/schema/engine/_exact_optional.d.mts +3 -0
  115. package/assets/types/typebox/build/schema/engine/_externals.d.mts +7 -0
  116. package/assets/types/typebox/build/schema/engine/_functions.d.mts +6 -0
  117. package/assets/types/typebox/build/schema/engine/_reducer.d.mts +4 -0
  118. package/assets/types/typebox/build/schema/engine/_refine.d.mts +6 -0
  119. package/assets/types/typebox/build/schema/engine/_stack.d.mts +18 -0
  120. package/assets/types/typebox/build/schema/engine/_unique.d.mts +2 -0
  121. package/assets/types/typebox/build/schema/engine/additionalItems.d.mts +6 -0
  122. package/assets/types/typebox/build/schema/engine/additionalProperties.d.mts +9 -0
  123. package/assets/types/typebox/build/schema/engine/allOf.d.mts +6 -0
  124. package/assets/types/typebox/build/schema/engine/anyOf.d.mts +6 -0
  125. package/assets/types/typebox/build/schema/engine/boolean.d.mts +5 -0
  126. package/assets/types/typebox/build/schema/engine/const.d.mts +6 -0
  127. package/assets/types/typebox/build/schema/engine/contains.d.mts +6 -0
  128. package/assets/types/typebox/build/schema/engine/dependencies.d.mts +6 -0
  129. package/assets/types/typebox/build/schema/engine/dependentRequired.d.mts +6 -0
  130. package/assets/types/typebox/build/schema/engine/dependentSchemas.d.mts +6 -0
  131. package/assets/types/typebox/build/schema/engine/dynamicRef.d.mts +6 -0
  132. package/assets/types/typebox/build/schema/engine/enum.d.mts +6 -0
  133. package/assets/types/typebox/build/schema/engine/exclusiveMaximum.d.mts +6 -0
  134. package/assets/types/typebox/build/schema/engine/exclusiveMinimum.d.mts +6 -0
  135. package/assets/types/typebox/build/schema/engine/format.d.mts +6 -0
  136. package/assets/types/typebox/build/schema/engine/if.d.mts +6 -0
  137. package/assets/types/typebox/build/schema/engine/index.d.mts +48 -0
  138. package/assets/types/typebox/build/schema/engine/items.d.mts +6 -0
  139. package/assets/types/typebox/build/schema/engine/maxContains.d.mts +6 -0
  140. package/assets/types/typebox/build/schema/engine/maxItems.d.mts +6 -0
  141. package/assets/types/typebox/build/schema/engine/maxLength.d.mts +6 -0
  142. package/assets/types/typebox/build/schema/engine/maxProperties.d.mts +6 -0
  143. package/assets/types/typebox/build/schema/engine/maximum.d.mts +6 -0
  144. package/assets/types/typebox/build/schema/engine/minContains.d.mts +6 -0
  145. package/assets/types/typebox/build/schema/engine/minItems.d.mts +6 -0
  146. package/assets/types/typebox/build/schema/engine/minLength.d.mts +6 -0
  147. package/assets/types/typebox/build/schema/engine/minProperties.d.mts +6 -0
  148. package/assets/types/typebox/build/schema/engine/minimum.d.mts +6 -0
  149. package/assets/types/typebox/build/schema/engine/multipleOf.d.mts +6 -0
  150. package/assets/types/typebox/build/schema/engine/not.d.mts +6 -0
  151. package/assets/types/typebox/build/schema/engine/oneOf.d.mts +6 -0
  152. package/assets/types/typebox/build/schema/engine/pattern.d.mts +6 -0
  153. package/assets/types/typebox/build/schema/engine/patternProperties.d.mts +6 -0
  154. package/assets/types/typebox/build/schema/engine/prefixItems.d.mts +6 -0
  155. package/assets/types/typebox/build/schema/engine/properties.d.mts +6 -0
  156. package/assets/types/typebox/build/schema/engine/propertyNames.d.mts +6 -0
  157. package/assets/types/typebox/build/schema/engine/recursiveRef.d.mts +6 -0
  158. package/assets/types/typebox/build/schema/engine/ref.d.mts +6 -0
  159. package/assets/types/typebox/build/schema/engine/required.d.mts +6 -0
  160. package/assets/types/typebox/build/schema/engine/schema.d.mts +9 -0
  161. package/assets/types/typebox/build/schema/engine/type.d.mts +6 -0
  162. package/assets/types/typebox/build/schema/engine/unevaluatedItems.d.mts +6 -0
  163. package/assets/types/typebox/build/schema/engine/unevaluatedProperties.d.mts +6 -0
  164. package/assets/types/typebox/build/schema/engine/uniqueItems.d.mts +6 -0
  165. package/assets/types/typebox/build/schema/errors.d.mts +6 -0
  166. package/assets/types/typebox/build/schema/index.d.mts +3 -0
  167. package/assets/types/typebox/build/schema/parse.d.mts +13 -0
  168. package/assets/types/typebox/build/schema/pointer/index.d.mts +2 -0
  169. package/assets/types/typebox/build/schema/pointer/pointer.d.mts +10 -0
  170. package/assets/types/typebox/build/schema/pointer/pointer_get.d.mts +9 -0
  171. package/assets/types/typebox/build/schema/resolve/index.d.mts +1 -0
  172. package/assets/types/typebox/build/schema/resolve/ref.d.mts +3 -0
  173. package/assets/types/typebox/build/schema/resolve/resolve.d.mts +1 -0
  174. package/assets/types/typebox/build/schema/schema.d.mts +10 -0
  175. package/assets/types/typebox/build/schema/static/_canonical.d.mts +7 -0
  176. package/assets/types/typebox/build/schema/static/_comparer.d.mts +6 -0
  177. package/assets/types/typebox/build/schema/static/_elements.d.mts +18 -0
  178. package/assets/types/typebox/build/schema/static/additionalProperties.d.mts +7 -0
  179. package/assets/types/typebox/build/schema/static/allOf.d.mts +3 -0
  180. package/assets/types/typebox/build/schema/static/anyOf.d.mts +3 -0
  181. package/assets/types/typebox/build/schema/static/const.d.mts +1 -0
  182. package/assets/types/typebox/build/schema/static/enum.d.mts +1 -0
  183. package/assets/types/typebox/build/schema/static/if.d.mts +15 -0
  184. package/assets/types/typebox/build/schema/static/index.d.mts +1 -0
  185. package/assets/types/typebox/build/schema/static/items.d.mts +7 -0
  186. package/assets/types/typebox/build/schema/static/oneOf.d.mts +3 -0
  187. package/assets/types/typebox/build/schema/static/patternProperties.d.mts +7 -0
  188. package/assets/types/typebox/build/schema/static/prefixItems.d.mts +3 -0
  189. package/assets/types/typebox/build/schema/static/properties.d.mts +32 -0
  190. package/assets/types/typebox/build/schema/static/ref.d.mts +8 -0
  191. package/assets/types/typebox/build/schema/static/required.d.mts +3 -0
  192. package/assets/types/typebox/build/schema/static/schema.d.mts +56 -0
  193. package/assets/types/typebox/build/schema/static/static.d.mts +4 -0
  194. package/assets/types/typebox/build/schema/static/type.d.mts +4 -0
  195. package/assets/types/typebox/build/schema/static/unevaluatedProperties.d.mts +7 -0
  196. package/assets/types/typebox/build/schema/types/_refine.d.mts +13 -0
  197. package/assets/types/typebox/build/schema/types/additionalItems.d.mts +9 -0
  198. package/assets/types/typebox/build/schema/types/additionalProperties.d.mts +9 -0
  199. package/assets/types/typebox/build/schema/types/allOf.d.mts +9 -0
  200. package/assets/types/typebox/build/schema/types/anchor.d.mts +8 -0
  201. package/assets/types/typebox/build/schema/types/anyOf.d.mts +9 -0
  202. package/assets/types/typebox/build/schema/types/const.d.mts +9 -0
  203. package/assets/types/typebox/build/schema/types/contains.d.mts +9 -0
  204. package/assets/types/typebox/build/schema/types/contentEncoding.d.mts +9 -0
  205. package/assets/types/typebox/build/schema/types/contentMediaType.d.mts +9 -0
  206. package/assets/types/typebox/build/schema/types/default.d.mts +9 -0
  207. package/assets/types/typebox/build/schema/types/defs.d.mts +6 -0
  208. package/assets/types/typebox/build/schema/types/dependencies.d.mts +11 -0
  209. package/assets/types/typebox/build/schema/types/dependentRequired.d.mts +9 -0
  210. package/assets/types/typebox/build/schema/types/dependentSchemas.d.mts +9 -0
  211. package/assets/types/typebox/build/schema/types/dynamicAnchor.d.mts +8 -0
  212. package/assets/types/typebox/build/schema/types/dynamicRef.d.mts +8 -0
  213. package/assets/types/typebox/build/schema/types/else.d.mts +9 -0
  214. package/assets/types/typebox/build/schema/types/enum.d.mts +9 -0
  215. package/assets/types/typebox/build/schema/types/exclusiveMaximum.d.mts +9 -0
  216. package/assets/types/typebox/build/schema/types/exclusiveMinimum.d.mts +9 -0
  217. package/assets/types/typebox/build/schema/types/format.d.mts +9 -0
  218. package/assets/types/typebox/build/schema/types/id.d.mts +9 -0
  219. package/assets/types/typebox/build/schema/types/if.d.mts +9 -0
  220. package/assets/types/typebox/build/schema/types/index.d.mts +53 -0
  221. package/assets/types/typebox/build/schema/types/items.d.mts +19 -0
  222. package/assets/types/typebox/build/schema/types/maxContains.d.mts +9 -0
  223. package/assets/types/typebox/build/schema/types/maxItems.d.mts +9 -0
  224. package/assets/types/typebox/build/schema/types/maxLength.d.mts +9 -0
  225. package/assets/types/typebox/build/schema/types/maxProperties.d.mts +9 -0
  226. package/assets/types/typebox/build/schema/types/maximum.d.mts +9 -0
  227. package/assets/types/typebox/build/schema/types/minContains.d.mts +9 -0
  228. package/assets/types/typebox/build/schema/types/minItems.d.mts +9 -0
  229. package/assets/types/typebox/build/schema/types/minLength.d.mts +9 -0
  230. package/assets/types/typebox/build/schema/types/minProperties.d.mts +9 -0
  231. package/assets/types/typebox/build/schema/types/minimum.d.mts +9 -0
  232. package/assets/types/typebox/build/schema/types/multipleOf.d.mts +9 -0
  233. package/assets/types/typebox/build/schema/types/not.d.mts +9 -0
  234. package/assets/types/typebox/build/schema/types/oneOf.d.mts +9 -0
  235. package/assets/types/typebox/build/schema/types/pattern.d.mts +9 -0
  236. package/assets/types/typebox/build/schema/types/patternProperties.d.mts +9 -0
  237. package/assets/types/typebox/build/schema/types/prefixItems.d.mts +8 -0
  238. package/assets/types/typebox/build/schema/types/properties.d.mts +9 -0
  239. package/assets/types/typebox/build/schema/types/propertyNames.d.mts +9 -0
  240. package/assets/types/typebox/build/schema/types/recursiveAnchor.d.mts +12 -0
  241. package/assets/types/typebox/build/schema/types/recursiveRef.d.mts +8 -0
  242. package/assets/types/typebox/build/schema/types/ref.d.mts +9 -0
  243. package/assets/types/typebox/build/schema/types/required.d.mts +9 -0
  244. package/assets/types/typebox/build/schema/types/schema.d.mts +9 -0
  245. package/assets/types/typebox/build/schema/types/then.d.mts +9 -0
  246. package/assets/types/typebox/build/schema/types/type.d.mts +9 -0
  247. package/assets/types/typebox/build/schema/types/unevaluatedItems.d.mts +9 -0
  248. package/assets/types/typebox/build/schema/types/unevaluatedProperties.d.mts +9 -0
  249. package/assets/types/typebox/build/schema/types/uniqueItems.d.mts +9 -0
  250. package/assets/types/typebox/build/system/arguments/arguments.d.mts +5 -0
  251. package/assets/types/typebox/build/system/arguments/index.d.mts +1 -0
  252. package/assets/types/typebox/build/system/environment/environment.d.mts +1 -0
  253. package/assets/types/typebox/build/system/environment/evaluate.d.mts +9 -0
  254. package/assets/types/typebox/build/system/environment/index.d.mts +1 -0
  255. package/assets/types/typebox/build/system/hashing/hash.d.mts +4 -0
  256. package/assets/types/typebox/build/system/hashing/index.d.mts +1 -0
  257. package/assets/types/typebox/build/system/index.d.mts +4 -0
  258. package/assets/types/typebox/build/system/locale/_config.d.mts +7 -0
  259. package/assets/types/typebox/build/system/locale/_locale.d.mts +40 -0
  260. package/assets/types/typebox/build/system/locale/ar_001.d.mts +3 -0
  261. package/assets/types/typebox/build/system/locale/bn_BD.d.mts +3 -0
  262. package/assets/types/typebox/build/system/locale/cs_CZ.d.mts +3 -0
  263. package/assets/types/typebox/build/system/locale/de_DE.d.mts +3 -0
  264. package/assets/types/typebox/build/system/locale/el_GR.d.mts +3 -0
  265. package/assets/types/typebox/build/system/locale/en_US.d.mts +3 -0
  266. package/assets/types/typebox/build/system/locale/es_419.d.mts +3 -0
  267. package/assets/types/typebox/build/system/locale/es_AR.d.mts +3 -0
  268. package/assets/types/typebox/build/system/locale/es_ES.d.mts +3 -0
  269. package/assets/types/typebox/build/system/locale/es_MX.d.mts +3 -0
  270. package/assets/types/typebox/build/system/locale/fa_IR.d.mts +3 -0
  271. package/assets/types/typebox/build/system/locale/fil_PH.d.mts +3 -0
  272. package/assets/types/typebox/build/system/locale/fr_CA.d.mts +3 -0
  273. package/assets/types/typebox/build/system/locale/fr_FR.d.mts +3 -0
  274. package/assets/types/typebox/build/system/locale/ha_NG.d.mts +3 -0
  275. package/assets/types/typebox/build/system/locale/hi_IN.d.mts +3 -0
  276. package/assets/types/typebox/build/system/locale/hu_HU.d.mts +3 -0
  277. package/assets/types/typebox/build/system/locale/id_ID.d.mts +3 -0
  278. package/assets/types/typebox/build/system/locale/index.d.mts +1 -0
  279. package/assets/types/typebox/build/system/locale/it_IT.d.mts +3 -0
  280. package/assets/types/typebox/build/system/locale/ja_JP.d.mts +3 -0
  281. package/assets/types/typebox/build/system/locale/ko_KR.d.mts +3 -0
  282. package/assets/types/typebox/build/system/locale/ms_MY.d.mts +3 -0
  283. package/assets/types/typebox/build/system/locale/nl_NL.d.mts +3 -0
  284. package/assets/types/typebox/build/system/locale/pl_PL.d.mts +3 -0
  285. package/assets/types/typebox/build/system/locale/pt_BR.d.mts +3 -0
  286. package/assets/types/typebox/build/system/locale/pt_PT.d.mts +3 -0
  287. package/assets/types/typebox/build/system/locale/ro_RO.d.mts +3 -0
  288. package/assets/types/typebox/build/system/locale/ru_RU.d.mts +3 -0
  289. package/assets/types/typebox/build/system/locale/sv_SE.d.mts +3 -0
  290. package/assets/types/typebox/build/system/locale/sw_TZ.d.mts +3 -0
  291. package/assets/types/typebox/build/system/locale/th_TH.d.mts +3 -0
  292. package/assets/types/typebox/build/system/locale/tr_TR.d.mts +3 -0
  293. package/assets/types/typebox/build/system/locale/uk_UA.d.mts +3 -0
  294. package/assets/types/typebox/build/system/locale/ur_PK.d.mts +3 -0
  295. package/assets/types/typebox/build/system/locale/vi_VN.d.mts +3 -0
  296. package/assets/types/typebox/build/system/locale/yo_NG.d.mts +3 -0
  297. package/assets/types/typebox/build/system/locale/zh_Hans.d.mts +3 -0
  298. package/assets/types/typebox/build/system/locale/zh_Hant.d.mts +3 -0
  299. package/assets/types/typebox/build/system/memory/assign.d.mts +14 -0
  300. package/assets/types/typebox/build/system/memory/clone.d.mts +5 -0
  301. package/assets/types/typebox/build/system/memory/create.d.mts +8 -0
  302. package/assets/types/typebox/build/system/memory/discard.d.mts +4 -0
  303. package/assets/types/typebox/build/system/memory/index.d.mts +1 -0
  304. package/assets/types/typebox/build/system/memory/memory.d.mts +6 -0
  305. package/assets/types/typebox/build/system/memory/metrics.d.mts +14 -0
  306. package/assets/types/typebox/build/system/memory/update.d.mts +7 -0
  307. package/assets/types/typebox/build/system/settings/index.d.mts +1 -0
  308. package/assets/types/typebox/build/system/settings/settings.d.mts +71 -0
  309. package/assets/types/typebox/build/system/system.d.mts +6 -0
  310. package/assets/types/typebox/build/system/unreachable/index.d.mts +1 -0
  311. package/assets/types/typebox/build/system/unreachable/unreachable.d.mts +3 -0
  312. package/assets/types/typebox/build/type/action/_add_immutable.d.mts +11 -0
  313. package/assets/types/typebox/build/type/action/_add_optional.d.mts +11 -0
  314. package/assets/types/typebox/build/type/action/_add_readonly.d.mts +11 -0
  315. package/assets/types/typebox/build/type/action/_remove_immutable.d.mts +11 -0
  316. package/assets/types/typebox/build/type/action/_remove_optional.d.mts +11 -0
  317. package/assets/types/typebox/build/type/action/_remove_readonly.d.mts +11 -0
  318. package/assets/types/typebox/build/type/action/capitalize.d.mts +11 -0
  319. package/assets/types/typebox/build/type/action/conditional.d.mts +12 -0
  320. package/assets/types/typebox/build/type/action/constructor_parameters.d.mts +11 -0
  321. package/assets/types/typebox/build/type/action/evaluate.d.mts +11 -0
  322. package/assets/types/typebox/build/type/action/exclude.d.mts +11 -0
  323. package/assets/types/typebox/build/type/action/extract.d.mts +11 -0
  324. package/assets/types/typebox/build/type/action/index.d.mts +30 -0
  325. package/assets/types/typebox/build/type/action/indexed.d.mts +14 -0
  326. package/assets/types/typebox/build/type/action/instance_type.d.mts +11 -0
  327. package/assets/types/typebox/build/type/action/interface.d.mts +14 -0
  328. package/assets/types/typebox/build/type/action/keyof.d.mts +11 -0
  329. package/assets/types/typebox/build/type/action/lowercase.d.mts +11 -0
  330. package/assets/types/typebox/build/type/action/mapped.d.mts +13 -0
  331. package/assets/types/typebox/build/type/action/module.d.mts +13 -0
  332. package/assets/types/typebox/build/type/action/non_nullable.d.mts +11 -0
  333. package/assets/types/typebox/build/type/action/omit.d.mts +14 -0
  334. package/assets/types/typebox/build/type/action/parameters.d.mts +11 -0
  335. package/assets/types/typebox/build/type/action/partial.d.mts +11 -0
  336. package/assets/types/typebox/build/type/action/pick.d.mts +14 -0
  337. package/assets/types/typebox/build/type/action/readonly_object.d.mts +16 -0
  338. package/assets/types/typebox/build/type/action/required.d.mts +11 -0
  339. package/assets/types/typebox/build/type/action/return_type.d.mts +11 -0
  340. package/assets/types/typebox/build/type/action/uncapitalize.d.mts +11 -0
  341. package/assets/types/typebox/build/type/action/uppercase.d.mts +11 -0
  342. package/assets/types/typebox/build/type/action/with.d.mts +11 -0
  343. package/assets/types/typebox/build/type/engine/call/distribute_arguments.d.mts +15 -0
  344. package/assets/types/typebox/build/type/engine/call/instantiate.d.mts +21 -0
  345. package/assets/types/typebox/build/type/engine/call/resolve_arguments.d.mts +13 -0
  346. package/assets/types/typebox/build/type/engine/call/resolve_target.d.mts +25 -0
  347. package/assets/types/typebox/build/type/engine/conditional/index.d.mts +1 -0
  348. package/assets/types/typebox/build/type/engine/conditional/instantiate.d.mts +12 -0
  349. package/assets/types/typebox/build/type/engine/constructor_parameters/index.d.mts +1 -0
  350. package/assets/types/typebox/build/type/engine/constructor_parameters/instantiate.d.mts +14 -0
  351. package/assets/types/typebox/build/type/engine/cyclic/candidates.d.mts +8 -0
  352. package/assets/types/typebox/build/type/engine/cyclic/check.d.mts +21 -0
  353. package/assets/types/typebox/build/type/engine/cyclic/dependencies.d.mts +22 -0
  354. package/assets/types/typebox/build/type/engine/cyclic/extends.d.mts +28 -0
  355. package/assets/types/typebox/build/type/engine/cyclic/index.d.mts +6 -0
  356. package/assets/types/typebox/build/type/engine/cyclic/instantiate.d.mts +17 -0
  357. package/assets/types/typebox/build/type/engine/cyclic/target.d.mts +10 -0
  358. package/assets/types/typebox/build/type/engine/enum/index.d.mts +1 -0
  359. package/assets/types/typebox/build/type/engine/enum/typescript_enum_to_enum_values.d.mts +8 -0
  360. package/assets/types/typebox/build/type/engine/evaluate/broaden.d.mts +15 -0
  361. package/assets/types/typebox/build/type/engine/evaluate/compare.d.mts +15 -0
  362. package/assets/types/typebox/build/type/engine/evaluate/composite.d.mts +34 -0
  363. package/assets/types/typebox/build/type/engine/evaluate/distribute.d.mts +28 -0
  364. package/assets/types/typebox/build/type/engine/evaluate/evaluate.d.mts +26 -0
  365. package/assets/types/typebox/build/type/engine/evaluate/flatten.d.mts +6 -0
  366. package/assets/types/typebox/build/type/engine/evaluate/index.d.mts +8 -0
  367. package/assets/types/typebox/build/type/engine/evaluate/instantiate.d.mts +8 -0
  368. package/assets/types/typebox/build/type/engine/evaluate/narrow.d.mts +5 -0
  369. package/assets/types/typebox/build/type/engine/exclude/index.d.mts +1 -0
  370. package/assets/types/typebox/build/type/engine/exclude/instantiate.d.mts +9 -0
  371. package/assets/types/typebox/build/type/engine/exclude/operation.d.mts +10 -0
  372. package/assets/types/typebox/build/type/engine/extract/index.d.mts +1 -0
  373. package/assets/types/typebox/build/type/engine/extract/instantiate.d.mts +9 -0
  374. package/assets/types/typebox/build/type/engine/extract/operation.d.mts +10 -0
  375. package/assets/types/typebox/build/type/engine/helpers/index.d.mts +3 -0
  376. package/assets/types/typebox/build/type/engine/helpers/keys.d.mts +3 -0
  377. package/assets/types/typebox/build/type/engine/helpers/keys_to_indexer.d.mts +7 -0
  378. package/assets/types/typebox/build/type/engine/helpers/union.d.mts +7 -0
  379. package/assets/types/typebox/build/type/engine/immutable/instantiate_add.d.mts +10 -0
  380. package/assets/types/typebox/build/type/engine/immutable/instantiate_remove.d.mts +10 -0
  381. package/assets/types/typebox/build/type/engine/index.d.mts +31 -0
  382. package/assets/types/typebox/build/type/engine/indexable/from_cyclic.d.mts +6 -0
  383. package/assets/types/typebox/build/type/engine/indexable/from_dependent.d.mts +5 -0
  384. package/assets/types/typebox/build/type/engine/indexable/from_enum.d.mts +6 -0
  385. package/assets/types/typebox/build/type/engine/indexable/from_intersect.d.mts +5 -0
  386. package/assets/types/typebox/build/type/engine/indexable/from_literal.d.mts +3 -0
  387. package/assets/types/typebox/build/type/engine/indexable/from_template_literal.d.mts +5 -0
  388. package/assets/types/typebox/build/type/engine/indexable/from_type.d.mts +19 -0
  389. package/assets/types/typebox/build/type/engine/indexable/from_union.d.mts +4 -0
  390. package/assets/types/typebox/build/type/engine/indexable/to_indexable.d.mts +9 -0
  391. package/assets/types/typebox/build/type/engine/indexable/to_indexable_keys.d.mts +10 -0
  392. package/assets/types/typebox/build/type/engine/indexed/array_indexer.d.mts +12 -0
  393. package/assets/types/typebox/build/type/engine/indexed/from_array.d.mts +15 -0
  394. package/assets/types/typebox/build/type/engine/indexed/from_object.d.mts +16 -0
  395. package/assets/types/typebox/build/type/engine/indexed/from_tuple.d.mts +13 -0
  396. package/assets/types/typebox/build/type/engine/indexed/from_type.d.mts +11 -0
  397. package/assets/types/typebox/build/type/engine/indexed/index.d.mts +1 -0
  398. package/assets/types/typebox/build/type/engine/indexed/instantiate.d.mts +16 -0
  399. package/assets/types/typebox/build/type/engine/instance_type/index.d.mts +1 -0
  400. package/assets/types/typebox/build/type/engine/instance_type/instantiate.d.mts +12 -0
  401. package/assets/types/typebox/build/type/engine/instantiate.d.mts +178 -0
  402. package/assets/types/typebox/build/type/engine/interface/index.d.mts +1 -0
  403. package/assets/types/typebox/build/type/engine/interface/instantiate.d.mts +15 -0
  404. package/assets/types/typebox/build/type/engine/intrinsics/from_literal.d.mts +5 -0
  405. package/assets/types/typebox/build/type/engine/intrinsics/from_template_literal.d.mts +6 -0
  406. package/assets/types/typebox/build/type/engine/intrinsics/from_type.d.mts +10 -0
  407. package/assets/types/typebox/build/type/engine/intrinsics/from_union.d.mts +6 -0
  408. package/assets/types/typebox/build/type/engine/intrinsics/index.d.mts +1 -0
  409. package/assets/types/typebox/build/type/engine/intrinsics/instantiate.d.mts +38 -0
  410. package/assets/types/typebox/build/type/engine/intrinsics/mapping.d.mts +9 -0
  411. package/assets/types/typebox/build/type/engine/keyof/from_any.d.mts +6 -0
  412. package/assets/types/typebox/build/type/engine/keyof/from_array.d.mts +4 -0
  413. package/assets/types/typebox/build/type/engine/keyof/from_object.d.mts +10 -0
  414. package/assets/types/typebox/build/type/engine/keyof/from_record.d.mts +4 -0
  415. package/assets/types/typebox/build/type/engine/keyof/from_tuple.d.mts +5 -0
  416. package/assets/types/typebox/build/type/engine/keyof/from_type.d.mts +15 -0
  417. package/assets/types/typebox/build/type/engine/keyof/index.d.mts +1 -0
  418. package/assets/types/typebox/build/type/engine/keyof/instantiate.d.mts +16 -0
  419. package/assets/types/typebox/build/type/engine/mapped/index.d.mts +1 -0
  420. package/assets/types/typebox/build/type/engine/mapped/instantiate.d.mts +10 -0
  421. package/assets/types/typebox/build/type/engine/mapped/mapped_operation.d.mts +22 -0
  422. package/assets/types/typebox/build/type/engine/mapped/mapped_variants.d.mts +17 -0
  423. package/assets/types/typebox/build/type/engine/module/index.d.mts +1 -0
  424. package/assets/types/typebox/build/type/engine/module/instantiate.d.mts +19 -0
  425. package/assets/types/typebox/build/type/engine/non_nullable/index.d.mts +1 -0
  426. package/assets/types/typebox/build/type/engine/non_nullable/instantiate.d.mts +14 -0
  427. package/assets/types/typebox/build/type/engine/object/collapse.d.mts +12 -0
  428. package/assets/types/typebox/build/type/engine/object/from_cyclic.d.mts +6 -0
  429. package/assets/types/typebox/build/type/engine/object/from_dependent.d.mts +5 -0
  430. package/assets/types/typebox/build/type/engine/object/from_intersect.d.mts +17 -0
  431. package/assets/types/typebox/build/type/engine/object/from_object.d.mts +3 -0
  432. package/assets/types/typebox/build/type/engine/object/from_tuple.d.mts +6 -0
  433. package/assets/types/typebox/build/type/engine/object/from_type.d.mts +16 -0
  434. package/assets/types/typebox/build/type/engine/object/from_union.d.mts +12 -0
  435. package/assets/types/typebox/build/type/engine/object/index.d.mts +1 -0
  436. package/assets/types/typebox/build/type/engine/omit/from_type.d.mts +12 -0
  437. package/assets/types/typebox/build/type/engine/omit/index.d.mts +1 -0
  438. package/assets/types/typebox/build/type/engine/omit/instantiate.d.mts +9 -0
  439. package/assets/types/typebox/build/type/engine/optional/instantiate_add.d.mts +10 -0
  440. package/assets/types/typebox/build/type/engine/optional/instantiate_remove.d.mts +10 -0
  441. package/assets/types/typebox/build/type/engine/parameters/index.d.mts +1 -0
  442. package/assets/types/typebox/build/type/engine/parameters/instantiate.d.mts +14 -0
  443. package/assets/types/typebox/build/type/engine/partial/from_cyclic.d.mts +10 -0
  444. package/assets/types/typebox/build/type/engine/partial/from_dependent.d.mts +5 -0
  445. package/assets/types/typebox/build/type/engine/partial/from_intersect.d.mts +5 -0
  446. package/assets/types/typebox/build/type/engine/partial/from_object.d.mts +8 -0
  447. package/assets/types/typebox/build/type/engine/partial/from_type.d.mts +14 -0
  448. package/assets/types/typebox/build/type/engine/partial/from_union.d.mts +5 -0
  449. package/assets/types/typebox/build/type/engine/partial/index.d.mts +1 -0
  450. package/assets/types/typebox/build/type/engine/partial/instantiate.d.mts +9 -0
  451. package/assets/types/typebox/build/type/engine/patterns/index.d.mts +2 -0
  452. package/assets/types/typebox/build/type/engine/patterns/pattern.d.mts +6 -0
  453. package/assets/types/typebox/build/type/engine/patterns/template.d.mts +7 -0
  454. package/assets/types/typebox/build/type/engine/pick/from_type.d.mts +13 -0
  455. package/assets/types/typebox/build/type/engine/pick/index.d.mts +1 -0
  456. package/assets/types/typebox/build/type/engine/pick/instantiate.d.mts +9 -0
  457. package/assets/types/typebox/build/type/engine/priority/index.d.mts +1 -0
  458. package/assets/types/typebox/build/type/engine/priority/priority.d.mts +20 -0
  459. package/assets/types/typebox/build/type/engine/readonly/instantiate_add.d.mts +10 -0
  460. package/assets/types/typebox/build/type/engine/readonly/instantiate_remove.d.mts +10 -0
  461. package/assets/types/typebox/build/type/engine/readonly_object/from_array.d.mts +5 -0
  462. package/assets/types/typebox/build/type/engine/readonly_object/from_cyclic.d.mts +10 -0
  463. package/assets/types/typebox/build/type/engine/readonly_object/from_dependent.d.mts +5 -0
  464. package/assets/types/typebox/build/type/engine/readonly_object/from_intersect.d.mts +5 -0
  465. package/assets/types/typebox/build/type/engine/readonly_object/from_object.d.mts +8 -0
  466. package/assets/types/typebox/build/type/engine/readonly_object/from_tuple.d.mts +5 -0
  467. package/assets/types/typebox/build/type/engine/readonly_object/from_type.d.mts +18 -0
  468. package/assets/types/typebox/build/type/engine/readonly_object/from_union.d.mts +5 -0
  469. package/assets/types/typebox/build/type/engine/readonly_object/index.d.mts +1 -0
  470. package/assets/types/typebox/build/type/engine/readonly_object/instantiate.d.mts +9 -0
  471. package/assets/types/typebox/build/type/engine/record/from_key.d.mts +24 -0
  472. package/assets/types/typebox/build/type/engine/record/from_key_any.d.mts +4 -0
  473. package/assets/types/typebox/build/type/engine/record/from_key_boolean.d.mts +7 -0
  474. package/assets/types/typebox/build/type/engine/record/from_key_enum.d.mts +6 -0
  475. package/assets/types/typebox/build/type/engine/record/from_key_integer.d.mts +5 -0
  476. package/assets/types/typebox/build/type/engine/record/from_key_intersect.d.mts +5 -0
  477. package/assets/types/typebox/build/type/engine/record/from_key_literal.d.mts +11 -0
  478. package/assets/types/typebox/build/type/engine/record/from_key_number.d.mts +5 -0
  479. package/assets/types/typebox/build/type/engine/record/from_key_string.d.mts +5 -0
  480. package/assets/types/typebox/build/type/engine/record/from_key_template_literal.d.mts +8 -0
  481. package/assets/types/typebox/build/type/engine/record/from_key_union.d.mts +20 -0
  482. package/assets/types/typebox/build/type/engine/record/index.d.mts +1 -0
  483. package/assets/types/typebox/build/type/engine/record/instantiate.d.mts +9 -0
  484. package/assets/types/typebox/build/type/engine/record/record_create.d.mts +3 -0
  485. package/assets/types/typebox/build/type/engine/ref/index.d.mts +1 -0
  486. package/assets/types/typebox/build/type/engine/ref/instantiate.d.mts +6 -0
  487. package/assets/types/typebox/build/type/engine/required/from_cyclic.d.mts +10 -0
  488. package/assets/types/typebox/build/type/engine/required/from_dependent.d.mts +5 -0
  489. package/assets/types/typebox/build/type/engine/required/from_intersect.d.mts +5 -0
  490. package/assets/types/typebox/build/type/engine/required/from_object.d.mts +8 -0
  491. package/assets/types/typebox/build/type/engine/required/from_type.d.mts +14 -0
  492. package/assets/types/typebox/build/type/engine/required/from_union.d.mts +5 -0
  493. package/assets/types/typebox/build/type/engine/required/index.d.mts +1 -0
  494. package/assets/types/typebox/build/type/engine/required/instantiate.d.mts +9 -0
  495. package/assets/types/typebox/build/type/engine/rest/index.d.mts +1 -0
  496. package/assets/types/typebox/build/type/engine/rest/spread.d.mts +12 -0
  497. package/assets/types/typebox/build/type/engine/return_type/index.d.mts +1 -0
  498. package/assets/types/typebox/build/type/engine/return_type/instantiate.d.mts +12 -0
  499. package/assets/types/typebox/build/type/engine/template_literal/create.d.mts +1 -0
  500. package/assets/types/typebox/build/type/engine/template_literal/decode.d.mts +30 -0
  501. package/assets/types/typebox/build/type/engine/template_literal/encode.d.mts +33 -0
  502. package/assets/types/typebox/build/type/engine/template_literal/index.d.mts +6 -0
  503. package/assets/types/typebox/build/type/engine/template_literal/instantiate.d.mts +9 -0
  504. package/assets/types/typebox/build/type/engine/template_literal/is_finite.d.mts +12 -0
  505. package/assets/types/typebox/build/type/engine/template_literal/is_pattern.d.mts +6 -0
  506. package/assets/types/typebox/build/type/engine/template_literal/static.d.mts +18 -0
  507. package/assets/types/typebox/build/type/engine/this/expand_this.d.mts +16 -0
  508. package/assets/types/typebox/build/type/engine/tuple/to_object.d.mts +12 -0
  509. package/assets/types/typebox/build/type/engine/with/index.d.mts +1 -0
  510. package/assets/types/typebox/build/type/engine/with/instantiate.d.mts +8 -0
  511. package/assets/types/typebox/build/type/extends/any.d.mts +9 -0
  512. package/assets/types/typebox/build/type/extends/array.d.mts +20 -0
  513. package/assets/types/typebox/build/type/extends/bigint.d.mts +7 -0
  514. package/assets/types/typebox/build/type/extends/boolean.d.mts +7 -0
  515. package/assets/types/typebox/build/type/extends/constructor.d.mts +10 -0
  516. package/assets/types/typebox/build/type/extends/dependent.d.mts +6 -0
  517. package/assets/types/typebox/build/type/extends/enum.d.mts +7 -0
  518. package/assets/types/typebox/build/type/extends/extends.d.mts +13 -0
  519. package/assets/types/typebox/build/type/extends/extends_left.d.mts +53 -0
  520. package/assets/types/typebox/build/type/extends/extends_right.d.mts +27 -0
  521. package/assets/types/typebox/build/type/extends/function.d.mts +10 -0
  522. package/assets/types/typebox/build/type/extends/index.d.mts +2 -0
  523. package/assets/types/typebox/build/type/extends/inference.d.mts +34 -0
  524. package/assets/types/typebox/build/type/extends/integer.d.mts +8 -0
  525. package/assets/types/typebox/build/type/extends/intersect.d.mts +6 -0
  526. package/assets/types/typebox/build/type/extends/literal.d.mts +18 -0
  527. package/assets/types/typebox/build/type/extends/never.d.mts +8 -0
  528. package/assets/types/typebox/build/type/extends/null.d.mts +7 -0
  529. package/assets/types/typebox/build/type/extends/number.d.mts +7 -0
  530. package/assets/types/typebox/build/type/extends/object.d.mts +32 -0
  531. package/assets/types/typebox/build/type/extends/parameters.d.mts +15 -0
  532. package/assets/types/typebox/build/type/extends/record.d.mts +13 -0
  533. package/assets/types/typebox/build/type/extends/result.d.mts +24 -0
  534. package/assets/types/typebox/build/type/extends/return_type.d.mts +7 -0
  535. package/assets/types/typebox/build/type/extends/string.d.mts +7 -0
  536. package/assets/types/typebox/build/type/extends/symbol.d.mts +7 -0
  537. package/assets/types/typebox/build/type/extends/template_literal.d.mts +6 -0
  538. package/assets/types/typebox/build/type/extends/tuple.d.mts +22 -0
  539. package/assets/types/typebox/build/type/extends/undefined.d.mts +8 -0
  540. package/assets/types/typebox/build/type/extends/union.d.mts +11 -0
  541. package/assets/types/typebox/build/type/extends/unknown.d.mts +9 -0
  542. package/assets/types/typebox/build/type/extends/void.d.mts +7 -0
  543. package/assets/types/typebox/build/type/index.d.mts +5 -0
  544. package/assets/types/typebox/build/type/script/index.d.mts +1 -0
  545. package/assets/types/typebox/build/type/script/mapping.d.mts +353 -0
  546. package/assets/types/typebox/build/type/script/parser.d.mts +262 -0
  547. package/assets/types/typebox/build/type/script/script.d.mts +16 -0
  548. package/assets/types/typebox/build/type/script/token/bigint.d.mts +8 -0
  549. package/assets/types/typebox/build/type/script/token/const.d.mts +11 -0
  550. package/assets/types/typebox/build/type/script/token/ident.d.mts +16 -0
  551. package/assets/types/typebox/build/type/script/token/index.d.mts +12 -0
  552. package/assets/types/typebox/build/type/script/token/integer.d.mts +11 -0
  553. package/assets/types/typebox/build/type/script/token/internal/char.d.mts +75 -0
  554. package/assets/types/typebox/build/type/script/token/internal/guard.d.mts +1 -0
  555. package/assets/types/typebox/build/type/script/token/internal/many.d.mts +7 -0
  556. package/assets/types/typebox/build/type/script/token/internal/match.d.mts +6 -0
  557. package/assets/types/typebox/build/type/script/token/internal/optional.d.mts +5 -0
  558. package/assets/types/typebox/build/type/script/token/internal/take.d.mts +6 -0
  559. package/assets/types/typebox/build/type/script/token/internal/trim.d.mts +19 -0
  560. package/assets/types/typebox/build/type/script/token/number.d.mts +11 -0
  561. package/assets/types/typebox/build/type/script/token/rest.d.mts +4 -0
  562. package/assets/types/typebox/build/type/script/token/span.d.mts +11 -0
  563. package/assets/types/typebox/build/type/script/token/string.d.mts +11 -0
  564. package/assets/types/typebox/build/type/script/token/unsigned_integer.d.mts +16 -0
  565. package/assets/types/typebox/build/type/script/token/unsigned_number.d.mts +17 -0
  566. package/assets/types/typebox/build/type/script/token/until.d.mts +7 -0
  567. package/assets/types/typebox/build/type/script/token/until_1.d.mts +5 -0
  568. package/assets/types/typebox/build/type/types/_codec.d.mts +30 -0
  569. package/assets/types/typebox/build/type/types/_immutable.d.mts +9 -0
  570. package/assets/types/typebox/build/type/types/_optional.d.mts +9 -0
  571. package/assets/types/typebox/build/type/types/_readonly.d.mts +9 -0
  572. package/assets/types/typebox/build/type/types/_refine.d.mts +24 -0
  573. package/assets/types/typebox/build/type/types/any.d.mts +10 -0
  574. package/assets/types/typebox/build/type/types/array.d.mts +18 -0
  575. package/assets/types/typebox/build/type/types/bigint.d.mts +12 -0
  576. package/assets/types/typebox/build/type/types/boolean.d.mts +11 -0
  577. package/assets/types/typebox/build/type/types/call.d.mts +16 -0
  578. package/assets/types/typebox/build/type/types/constructor.d.mts +18 -0
  579. package/assets/types/typebox/build/type/types/cyclic.d.mts +16 -0
  580. package/assets/types/typebox/build/type/types/deferred.d.mts +13 -0
  581. package/assets/types/typebox/build/type/types/dependent.d.mts +17 -0
  582. package/assets/types/typebox/build/type/types/enum.d.mts +18 -0
  583. package/assets/types/typebox/build/type/types/function.d.mts +21 -0
  584. package/assets/types/typebox/build/type/types/generic.d.mts +13 -0
  585. package/assets/types/typebox/build/type/types/identifier.d.mts +11 -0
  586. package/assets/types/typebox/build/type/types/index.d.mts +45 -0
  587. package/assets/types/typebox/build/type/types/infer.d.mts +15 -0
  588. package/assets/types/typebox/build/type/types/integer.d.mts +12 -0
  589. package/assets/types/typebox/build/type/types/intersect.d.mts +15 -0
  590. package/assets/types/typebox/build/type/types/literal.d.mts +31 -0
  591. package/assets/types/typebox/build/type/types/never.d.mts +12 -0
  592. package/assets/types/typebox/build/type/types/null.d.mts +11 -0
  593. package/assets/types/typebox/build/type/types/number.d.mts +12 -0
  594. package/assets/types/typebox/build/type/types/object.d.mts +18 -0
  595. package/assets/types/typebox/build/type/types/parameter.d.mts +17 -0
  596. package/assets/types/typebox/build/type/types/properties.d.mts +43 -0
  597. package/assets/types/typebox/build/type/types/record.d.mts +52 -0
  598. package/assets/types/typebox/build/type/types/ref.d.mts +19 -0
  599. package/assets/types/typebox/build/type/types/rest.d.mts +11 -0
  600. package/assets/types/typebox/build/type/types/schema.d.mts +176 -0
  601. package/assets/types/typebox/build/type/types/static.d.mts +45 -0
  602. package/assets/types/typebox/build/type/types/string.d.mts +12 -0
  603. package/assets/types/typebox/build/type/types/symbol.d.mts +11 -0
  604. package/assets/types/typebox/build/type/types/template_literal.d.mts +28 -0
  605. package/assets/types/typebox/build/type/types/this.d.mts +14 -0
  606. package/assets/types/typebox/build/type/types/tuple.d.mts +38 -0
  607. package/assets/types/typebox/build/type/types/undefined.d.mts +11 -0
  608. package/assets/types/typebox/build/type/types/union.d.mts +15 -0
  609. package/assets/types/typebox/build/type/types/unknown.d.mts +10 -0
  610. package/assets/types/typebox/build/type/types/unsafe.d.mts +10 -0
  611. package/assets/types/typebox/build/type/types/void.d.mts +11 -0
  612. package/assets/types/typebox/build/typebox.d.mts +69 -0
  613. package/assets/types/typebox/build/value/assert/assert.d.mts +14 -0
  614. package/assets/types/typebox/build/value/assert/index.d.mts +1 -0
  615. package/assets/types/typebox/build/value/check/check.d.mts +5 -0
  616. package/assets/types/typebox/build/value/check/index.d.mts +1 -0
  617. package/assets/types/typebox/build/value/clean/additional.d.mts +2 -0
  618. package/assets/types/typebox/build/value/clean/clean.d.mts +15 -0
  619. package/assets/types/typebox/build/value/clean/from_array.d.mts +2 -0
  620. package/assets/types/typebox/build/value/clean/from_cyclic.d.mts +2 -0
  621. package/assets/types/typebox/build/value/clean/from_intersect.d.mts +2 -0
  622. package/assets/types/typebox/build/value/clean/from_object.d.mts +2 -0
  623. package/assets/types/typebox/build/value/clean/from_record.d.mts +2 -0
  624. package/assets/types/typebox/build/value/clean/from_ref.d.mts +2 -0
  625. package/assets/types/typebox/build/value/clean/from_tuple.d.mts +2 -0
  626. package/assets/types/typebox/build/value/clean/from_type.d.mts +2 -0
  627. package/assets/types/typebox/build/value/clean/from_union.d.mts +2 -0
  628. package/assets/types/typebox/build/value/clean/index.d.mts +1 -0
  629. package/assets/types/typebox/build/value/clone/clone.d.mts +5 -0
  630. package/assets/types/typebox/build/value/clone/index.d.mts +1 -0
  631. package/assets/types/typebox/build/value/codec/callback.d.mts +2 -0
  632. package/assets/types/typebox/build/value/codec/decode.d.mts +12 -0
  633. package/assets/types/typebox/build/value/codec/encode.d.mts +12 -0
  634. package/assets/types/typebox/build/value/codec/from_array.d.mts +2 -0
  635. package/assets/types/typebox/build/value/codec/from_cyclic.d.mts +2 -0
  636. package/assets/types/typebox/build/value/codec/from_intersect.d.mts +2 -0
  637. package/assets/types/typebox/build/value/codec/from_object.d.mts +2 -0
  638. package/assets/types/typebox/build/value/codec/from_record.d.mts +2 -0
  639. package/assets/types/typebox/build/value/codec/from_ref.d.mts +2 -0
  640. package/assets/types/typebox/build/value/codec/from_tuple.d.mts +2 -0
  641. package/assets/types/typebox/build/value/codec/from_type.d.mts +2 -0
  642. package/assets/types/typebox/build/value/codec/from_union.d.mts +2 -0
  643. package/assets/types/typebox/build/value/codec/has.d.mts +5 -0
  644. package/assets/types/typebox/build/value/codec/index.d.mts +3 -0
  645. package/assets/types/typebox/build/value/convert/convert.d.mts +13 -0
  646. package/assets/types/typebox/build/value/convert/from_additional.d.mts +6 -0
  647. package/assets/types/typebox/build/value/convert/from_array.d.mts +2 -0
  648. package/assets/types/typebox/build/value/convert/from_bigint.d.mts +2 -0
  649. package/assets/types/typebox/build/value/convert/from_boolean.d.mts +2 -0
  650. package/assets/types/typebox/build/value/convert/from_cyclic.d.mts +2 -0
  651. package/assets/types/typebox/build/value/convert/from_enum.d.mts +2 -0
  652. package/assets/types/typebox/build/value/convert/from_integer.d.mts +2 -0
  653. package/assets/types/typebox/build/value/convert/from_intersect.d.mts +2 -0
  654. package/assets/types/typebox/build/value/convert/from_literal.d.mts +2 -0
  655. package/assets/types/typebox/build/value/convert/from_null.d.mts +2 -0
  656. package/assets/types/typebox/build/value/convert/from_number.d.mts +2 -0
  657. package/assets/types/typebox/build/value/convert/from_object.d.mts +2 -0
  658. package/assets/types/typebox/build/value/convert/from_record.d.mts +2 -0
  659. package/assets/types/typebox/build/value/convert/from_ref.d.mts +2 -0
  660. package/assets/types/typebox/build/value/convert/from_string.d.mts +2 -0
  661. package/assets/types/typebox/build/value/convert/from_template_literal.d.mts +2 -0
  662. package/assets/types/typebox/build/value/convert/from_tuple.d.mts +2 -0
  663. package/assets/types/typebox/build/value/convert/from_type.d.mts +2 -0
  664. package/assets/types/typebox/build/value/convert/from_undefined.d.mts +2 -0
  665. package/assets/types/typebox/build/value/convert/from_union.d.mts +2 -0
  666. package/assets/types/typebox/build/value/convert/from_void.d.mts +2 -0
  667. package/assets/types/typebox/build/value/convert/index.d.mts +1 -0
  668. package/assets/types/typebox/build/value/convert/try/index.d.mts +1 -0
  669. package/assets/types/typebox/build/value/convert/try/try.d.mts +8 -0
  670. package/assets/types/typebox/build/value/convert/try/try_array.d.mts +2 -0
  671. package/assets/types/typebox/build/value/convert/try/try_bigint.d.mts +2 -0
  672. package/assets/types/typebox/build/value/convert/try/try_boolean.d.mts +2 -0
  673. package/assets/types/typebox/build/value/convert/try/try_null.d.mts +2 -0
  674. package/assets/types/typebox/build/value/convert/try/try_number.d.mts +2 -0
  675. package/assets/types/typebox/build/value/convert/try/try_result.d.mts +8 -0
  676. package/assets/types/typebox/build/value/convert/try/try_string.d.mts +2 -0
  677. package/assets/types/typebox/build/value/convert/try/try_undefined.d.mts +2 -0
  678. package/assets/types/typebox/build/value/create/create.d.mts +5 -0
  679. package/assets/types/typebox/build/value/create/error.d.mts +5 -0
  680. package/assets/types/typebox/build/value/create/from_array.d.mts +2 -0
  681. package/assets/types/typebox/build/value/create/from_bigint.d.mts +2 -0
  682. package/assets/types/typebox/build/value/create/from_boolean.d.mts +2 -0
  683. package/assets/types/typebox/build/value/create/from_constructor.d.mts +2 -0
  684. package/assets/types/typebox/build/value/create/from_cyclic.d.mts +2 -0
  685. package/assets/types/typebox/build/value/create/from_default.d.mts +3 -0
  686. package/assets/types/typebox/build/value/create/from_enum.d.mts +2 -0
  687. package/assets/types/typebox/build/value/create/from_function.d.mts +2 -0
  688. package/assets/types/typebox/build/value/create/from_integer.d.mts +2 -0
  689. package/assets/types/typebox/build/value/create/from_intersect.d.mts +2 -0
  690. package/assets/types/typebox/build/value/create/from_literal.d.mts +2 -0
  691. package/assets/types/typebox/build/value/create/from_never.d.mts +2 -0
  692. package/assets/types/typebox/build/value/create/from_null.d.mts +2 -0
  693. package/assets/types/typebox/build/value/create/from_number.d.mts +2 -0
  694. package/assets/types/typebox/build/value/create/from_object.d.mts +2 -0
  695. package/assets/types/typebox/build/value/create/from_record.d.mts +2 -0
  696. package/assets/types/typebox/build/value/create/from_ref.d.mts +2 -0
  697. package/assets/types/typebox/build/value/create/from_string.d.mts +2 -0
  698. package/assets/types/typebox/build/value/create/from_symbol.d.mts +2 -0
  699. package/assets/types/typebox/build/value/create/from_template_literal.d.mts +2 -0
  700. package/assets/types/typebox/build/value/create/from_tuple.d.mts +2 -0
  701. package/assets/types/typebox/build/value/create/from_type.d.mts +2 -0
  702. package/assets/types/typebox/build/value/create/from_undefined.d.mts +2 -0
  703. package/assets/types/typebox/build/value/create/from_union.d.mts +2 -0
  704. package/assets/types/typebox/build/value/create/from_void.d.mts +2 -0
  705. package/assets/types/typebox/build/value/create/index.d.mts +2 -0
  706. package/assets/types/typebox/build/value/default/default.d.mts +13 -0
  707. package/assets/types/typebox/build/value/default/from_array.d.mts +2 -0
  708. package/assets/types/typebox/build/value/default/from_cyclic.d.mts +2 -0
  709. package/assets/types/typebox/build/value/default/from_default.d.mts +3 -0
  710. package/assets/types/typebox/build/value/default/from_intersect.d.mts +2 -0
  711. package/assets/types/typebox/build/value/default/from_object.d.mts +2 -0
  712. package/assets/types/typebox/build/value/default/from_record.d.mts +2 -0
  713. package/assets/types/typebox/build/value/default/from_ref.d.mts +2 -0
  714. package/assets/types/typebox/build/value/default/from_tuple.d.mts +2 -0
  715. package/assets/types/typebox/build/value/default/from_type.d.mts +2 -0
  716. package/assets/types/typebox/build/value/default/from_union.d.mts +2 -0
  717. package/assets/types/typebox/build/value/default/index.d.mts +1 -0
  718. package/assets/types/typebox/build/value/delta/diff.d.mts +10 -0
  719. package/assets/types/typebox/build/value/delta/edit.d.mts +24 -0
  720. package/assets/types/typebox/build/value/delta/index.d.mts +3 -0
  721. package/assets/types/typebox/build/value/delta/patch.d.mts +8 -0
  722. package/assets/types/typebox/build/value/equal/equal.d.mts +2 -0
  723. package/assets/types/typebox/build/value/equal/index.d.mts +1 -0
  724. package/assets/types/typebox/build/value/errors/errors.d.mts +16 -0
  725. package/assets/types/typebox/build/value/errors/index.d.mts +1 -0
  726. package/assets/types/typebox/build/value/hash/hash.d.mts +6 -0
  727. package/assets/types/typebox/build/value/hash/index.d.mts +1 -0
  728. package/assets/types/typebox/build/value/index.d.mts +20 -0
  729. package/assets/types/typebox/build/value/parse/index.d.mts +1 -0
  730. package/assets/types/typebox/build/value/parse/parse.d.mts +11 -0
  731. package/assets/types/typebox/build/value/pipeline/index.d.mts +1 -0
  732. package/assets/types/typebox/build/value/pipeline/pipeline.d.mts +10 -0
  733. package/assets/types/typebox/build/value/pointer/index.d.mts +1 -0
  734. package/assets/types/typebox/build/value/repair/error.d.mts +7 -0
  735. package/assets/types/typebox/build/value/repair/from_array.d.mts +2 -0
  736. package/assets/types/typebox/build/value/repair/from_enum.d.mts +2 -0
  737. package/assets/types/typebox/build/value/repair/from_intersect.d.mts +2 -0
  738. package/assets/types/typebox/build/value/repair/from_object.d.mts +2 -0
  739. package/assets/types/typebox/build/value/repair/from_record.d.mts +2 -0
  740. package/assets/types/typebox/build/value/repair/from_ref.d.mts +2 -0
  741. package/assets/types/typebox/build/value/repair/from_template_literal.d.mts +2 -0
  742. package/assets/types/typebox/build/value/repair/from_tuple.d.mts +2 -0
  743. package/assets/types/typebox/build/value/repair/from_type.d.mts +2 -0
  744. package/assets/types/typebox/build/value/repair/from_union.d.mts +2 -0
  745. package/assets/types/typebox/build/value/repair/from_unknown.d.mts +2 -0
  746. package/assets/types/typebox/build/value/repair/index.d.mts +1 -0
  747. package/assets/types/typebox/build/value/repair/repair.d.mts +17 -0
  748. package/assets/types/typebox/build/value/shared/index.d.mts +3 -0
  749. package/assets/types/typebox/build/value/shared/optional_undefined.d.mts +2 -0
  750. package/assets/types/typebox/build/value/shared/union_priority_sort.d.mts +7 -0
  751. package/assets/types/typebox/build/value/shared/union_score_select.d.mts +3 -0
  752. package/assets/types/typebox/build/value/value.d.mts +15 -0
  753. package/assets/types/typebox/package.json +87 -0
  754. package/package.json +28 -0
  755. package/src/alt-screen.ts +46 -0
  756. package/src/argv.ts +147 -0
  757. package/src/cli-tree-host.ts +81 -0
  758. package/src/cli.ts +155 -0
  759. package/src/fatal-signal.ts +45 -0
  760. package/src/final-frame.ts +71 -0
  761. package/src/interactive-run.ts +231 -0
  762. package/src/presenter.ts +31 -0
  763. package/src/render.ts +96 -0
  764. package/src/run-invocation.ts +48 -0
  765. package/src/runtime-alias.ts +64 -0
  766. package/src/setup-workspace.ts +91 -0
  767. package/src/tree-app.ts +178 -0
  768. package/src/tui-test-support.ts +96 -0
package/src/cli.ts ADDED
@@ -0,0 +1,155 @@
1
+ #!/usr/bin/env bun
2
+ import { writeSync } from "node:fs";
3
+ import { resolve } from "node:path";
4
+ import {
5
+ executeRun,
6
+ isOrchestrationProgram,
7
+ isYaagError,
8
+ loadCassette,
9
+ type OrchestrationProgram,
10
+ programDefinition,
11
+ type StampedEventSink,
12
+ } from "@yaag/runtime";
13
+ import { interactiveAvailable } from "./alt-screen.ts";
14
+ import { parseArgv } from "./argv.ts";
15
+ import { runInteractive } from "./interactive-run.ts";
16
+ import { createPlainPresenter } from "./presenter.ts";
17
+ import { executeOptions, formatResult, type RunFlags } from "./run-invocation.ts";
18
+ import { registerRuntimeAlias } from "./runtime-alias.ts";
19
+ import { setupWorkspace } from "./setup-workspace.ts";
20
+
21
+ registerRuntimeAlias();
22
+
23
+ /** Sets up a workspace, runs, or describes one Orchestration Program and returns an exit code. */
24
+ export async function main(argv: readonly string[]): Promise<number> {
25
+ const parsed = parseArgv(argv);
26
+ if (!parsed.ok) {
27
+ process.stderr.write(`${parsed.error}\n`);
28
+ return 2;
29
+ }
30
+
31
+ try {
32
+ if (parsed.command === "setup-workspace") {
33
+ process.stdout.write(`${(await setupWorkspace(resolve(parsed.dir))).join("\n")}\n`);
34
+ return 0;
35
+ }
36
+ // A bad artifact must fail before importing an arbitrary program module.
37
+ if (parsed.command === "run" && (parsed.replay !== undefined || parsed.resume !== undefined)) {
38
+ await loadCassette(parsed.replay ?? parsed.resume ?? "");
39
+ }
40
+ const programFile = resolve(parsed.file);
41
+ const program = await loadProgram(programFile);
42
+ if (parsed.command === "describe") return describe(program);
43
+ return await run(program, {
44
+ programFile,
45
+ args: parsed.args,
46
+ eventsFd: parsed.eventsFd,
47
+ record: parsed.record,
48
+ replay: parsed.replay,
49
+ resume: parsed.resume,
50
+ quiet: parsed.quiet,
51
+ });
52
+ } catch (error) {
53
+ process.stderr.write(`[yaag] ${error instanceof Error ? error.message : String(error)}\n`);
54
+ return parsed.command === "run" && isYaagError(error) && error.code === "ARGS_INVALID" ? 2 : 1;
55
+ }
56
+ }
57
+
58
+ function describe(program: OrchestrationProgram): number {
59
+ const definition = programDefinition(program);
60
+ process.stdout.write(
61
+ `${JSON.stringify({
62
+ name: definition.name ?? null,
63
+ description: definition.description ?? null,
64
+ args: definition.args ?? null,
65
+ })}\n`,
66
+ );
67
+ return 0;
68
+ }
69
+
70
+ async function run(program: OrchestrationProgram, flags: RunFlags): Promise<number> {
71
+ if (
72
+ interactiveAvailable({
73
+ stdin: process.stdin,
74
+ stdout: process.stdout,
75
+ stderr: process.stderr,
76
+ quiet: flags.quiet,
77
+ })
78
+ ) {
79
+ return await runInteractive({
80
+ program,
81
+ flags,
82
+ events: (present) => eventSink(flags.eventsFd, present),
83
+ });
84
+ }
85
+ return await runPlain(program, flags);
86
+ }
87
+
88
+ /**
89
+ * The plain path: sanitized stderr lines, and stdin EOF as a stop.
90
+ *
91
+ * The interactive path cannot share this wiring, because `ProcessTerminal`
92
+ * owns stdin in raw mode, where Ctrl-D arrives as a `\x04` byte and no `end`
93
+ * event ever fires.
94
+ */
95
+ async function runPlain(program: OrchestrationProgram, flags: RunFlags): Promise<number> {
96
+ const presenter = createPlainPresenter(flags.quiet);
97
+ const stop = new AbortController();
98
+ const onSignal = (): void => stop.abort();
99
+ process.on("SIGINT", onSignal);
100
+ process.on("SIGTERM", onSignal);
101
+ // Stdin EOF is how a parent stops a Run it started (ADR-0008): it takes the
102
+ // same path as a signal, so every Agent is still reaped and costed. On a TTY
103
+ // the event simply never fires.
104
+ process.stdin.on("end", onSignal);
105
+ process.stdin.resume();
106
+
107
+ try {
108
+ const result = await executeRun(
109
+ program,
110
+ executeOptions(flags, eventSink(flags.eventsFd, presenter.present), stop.signal),
111
+ );
112
+ const output = formatResult(result);
113
+ if (output !== null) process.stdout.write(`${output}\n`);
114
+ return 0;
115
+ } finally {
116
+ process.off("SIGINT", onSignal);
117
+ process.off("SIGTERM", onSignal);
118
+ process.stdin.off("end", onSignal);
119
+ process.stdin.pause();
120
+ presenter.dispose();
121
+ }
122
+ }
123
+
124
+ /**
125
+ * The descriptor, when asked for, gets each event verbatim in the v1 envelope
126
+ * (ADR-0016). writeSync keeps the framing whole — one write, one line — and
127
+ * survives the process exiting right after the final event.
128
+ */
129
+ function eventSink(fd: number | undefined, present: StampedEventSink): StampedEventSink {
130
+ return (event) => {
131
+ if (fd !== undefined) writeSync(fd, `${JSON.stringify({ v: 1, ...event })}\n`);
132
+ present(event);
133
+ };
134
+ }
135
+
136
+ /** The program is the module's default export, and nothing else will do. */
137
+ async function loadProgram(path: string): Promise<OrchestrationProgram> {
138
+ const module: unknown = await import(path);
139
+ const program =
140
+ typeof module === "object" && module !== null && "default" in module
141
+ ? module.default
142
+ : undefined;
143
+ if (!isOrchestrationProgram(program)) {
144
+ throw new Error(`${path}: export defineRun({ run }) as the default export`);
145
+ }
146
+ return program;
147
+ }
148
+
149
+ if (import.meta.main) {
150
+ const code = await main(process.argv.slice(2));
151
+ // Exit rather than wait for the loop to drain: a stopped Run may leave the
152
+ // program's own timers pending, and a stop that does not actually end the
153
+ // process is not a stop (ADR-0008). Every Agent is already reaped by here.
154
+ process.exit(code);
155
+ }
@@ -0,0 +1,45 @@
1
+ /**
2
+ * The first-write-wins fatal latch the interactive Run path races and reads.
3
+ *
4
+ * A render throw arrives from a callback, so the orchestration must observe it
5
+ * two ways: `wait` for the live races, and `taken()` for the continuation
6
+ * boundary a race cannot see — a fatal queued after the raced work resolved can
7
+ * never win that race, so it is read synchronously instead.
8
+ */
9
+ import type { TreeAppExit } from "./tree-app.ts";
10
+
11
+ /** The fatal variant of a `TreeAppExit`. */
12
+ export type FatalExit = Extract<TreeAppExit, { kind: "fatal" }>;
13
+
14
+ /** A fatal error, awaitable and synchronously readable. */
15
+ export interface FatalSignal {
16
+ /** Accepts the first error only; later errors are ignored (no re-entry). */
17
+ raise(error: unknown): void;
18
+ /** Resolves when a fatal is raised, and never otherwise. For racing. */
19
+ readonly wait: Promise<FatalExit>;
20
+ /** The raised fatal, read synchronously. Undefined until one is raised. */
21
+ taken(): FatalExit | undefined;
22
+ }
23
+
24
+ /**
25
+ * Creates one fatal latch.
26
+ *
27
+ * `raise` stores the exit before it resolves `wait`, so `taken()` reports the
28
+ * fatal in the same tick as the call. It never throws and never rejects.
29
+ */
30
+ export function createFatalSignal(): FatalSignal {
31
+ let taken: FatalExit | undefined;
32
+ let deliver: (exit: FatalExit) => void = () => {};
33
+ const wait = new Promise<FatalExit>((resolve) => {
34
+ deliver = resolve;
35
+ });
36
+ return {
37
+ raise(error: unknown): void {
38
+ if (taken !== undefined) return;
39
+ taken = { kind: "fatal", error };
40
+ deliver(taken);
41
+ },
42
+ wait,
43
+ taken: () => taken,
44
+ };
45
+ }
@@ -0,0 +1,71 @@
1
+ /**
2
+ * The final summary frame the CLI leaves on stderr after the alt-screen closes
3
+ * (architecture §9).
4
+ *
5
+ * Pure over the `TreeState`: it takes its clock and its width, so the same
6
+ * state always renders the same frame. It replaces the retained last frame the
7
+ * CLI used to leave on the terminal. It is now on stderr, where the Run result
8
+ * on stdout stays pipeable.
9
+ */
10
+
11
+ import { visibleWidth } from "@earendil-works/pi-tui";
12
+ import type { TreeState } from "@yaag/tui";
13
+ import { type RunViewResult, renderCompact, resultText, sanitizeTerminalLine } from "@yaag/tui";
14
+
15
+ /** Everything the frame needs; nothing is read from the process. */
16
+ export interface FinalFrameOptions {
17
+ readonly now: number;
18
+ readonly columns: number;
19
+ /** Header text before the Program name; defaults to `yaag`. */
20
+ readonly label?: string;
21
+ /** How the Run ended; absent while it did not end. */
22
+ readonly result?: RunViewResult;
23
+ }
24
+
25
+ const RESULT_HEADING = "Result:";
26
+
27
+ /**
28
+ * Renders the header line, one line per Agent, and the `Result:` block.
29
+ *
30
+ * Every line is sanitized and cut to `columns` terminal display columns — the
31
+ * `Result:` heading included — so a hostile Program name, Run value, or stderr
32
+ * tail can emit no escape byte, forge no region, and overflow no narrow
33
+ * terminal, even when it is wide Unicode.
34
+ */
35
+ export function finalFrame(state: TreeState, options: FinalFrameOptions): readonly string[] {
36
+ const width = Math.max(1, options.columns);
37
+ const compact = renderCompact(state, {
38
+ now: options.now,
39
+ width,
40
+ ...(options.label === undefined ? {} : { label: options.label }),
41
+ });
42
+ return [...compact.map((line) => cut(line, width)), ...resultLines(options.result, width)];
43
+ }
44
+
45
+ function resultLines(result: RunViewResult | undefined, width: number): readonly string[] {
46
+ if (result === undefined) return [];
47
+ const body = resultText(result)
48
+ .split("\n")
49
+ .map((line) => cut(line, width));
50
+ return [cut(RESULT_HEADING, width), ...body];
51
+ }
52
+
53
+ /**
54
+ * Sanitizes one line, then cuts it by terminal display width.
55
+ *
56
+ * A code-unit `slice` would let one CJK or emoji character spill a column past
57
+ * `width`, so the cut counts what the terminal shows.
58
+ */
59
+ function cut(line: string, width: number): string {
60
+ const safe = sanitizeTerminalLine(line);
61
+ if (visibleWidth(safe) <= width) return safe;
62
+ let used = 0;
63
+ let kept = "";
64
+ for (const character of safe) {
65
+ const next = used + visibleWidth(character);
66
+ if (next > width) break;
67
+ kept += character;
68
+ used = next;
69
+ }
70
+ return kept;
71
+ }
@@ -0,0 +1,231 @@
1
+ /**
2
+ * The `yaag run` path that opens the alt-screen Run tree (spec §4).
3
+ *
4
+ * `orchestrateInteractiveRun` is process-free: every collaborator arrives as a
5
+ * parameter, so each exit path — settle, detach, fatal render, signal — is
6
+ * driven in tests without a TTY. `runInteractive` is the thin production edge
7
+ * that binds it to the real terminal, the real signals, and the real streams.
8
+ *
9
+ * A fatal render error is observed by a latch read immediately before the final
10
+ * channel write, with no asynchronous yield in between, so a fatal delivered in
11
+ * a continuation queued after a race latched is still reported.
12
+ */
13
+ import { executeRun, type OrchestrationProgram, type StampedEventSink } from "@yaag/runtime";
14
+ import type { RunViewResult, TreeState } from "@yaag/tui";
15
+ import { createAltScreen } from "./alt-screen.ts";
16
+ import { createFatalSignal, type FatalExit, type FatalSignal } from "./fatal-signal.ts";
17
+ import { finalFrame } from "./final-frame.ts";
18
+ import { createPlainPresenter } from "./presenter.ts";
19
+ import { errorText, executeOptions, formatResult, type RunFlags } from "./run-invocation.ts";
20
+ import { type FinalOutput, startTreeApp, type TreeApp } from "./tree-app.ts";
21
+
22
+ /** How one Run settled, as both paths report it. */
23
+ type Settlement =
24
+ | { readonly kind: "fulfilled"; readonly result: string | null }
25
+ | { readonly kind: "failed"; readonly error: unknown };
26
+
27
+ /** What the interactive path needs besides the Run's own flags. */
28
+ export interface InteractiveRunOptions {
29
+ readonly program: OrchestrationProgram;
30
+ readonly flags: RunFlags;
31
+ /** Wraps the app's presenter with the fd n writer the CLI already installed. */
32
+ events(present: StampedEventSink): StampedEventSink;
33
+ }
34
+
35
+ /** The signal and render-throw handlers the host installs while the app is up. */
36
+ export interface InteractiveHandlers {
37
+ /** SIGINT: opens the stop prompt, and a second one confirms. */
38
+ interrupt(): void;
39
+ /** SIGTERM: aborts the Run without waiting for a keystroke. */
40
+ terminate(): void;
41
+ /** A render throw that escaped every `try`: restore, then report. */
42
+ fatal(error: unknown): void;
43
+ }
44
+
45
+ /** Everything `orchestrateInteractiveRun` would otherwise read from the process. */
46
+ export interface InteractiveRunDeps {
47
+ /** Starts the app; `stop` runs the reap ladder for this Run (ADR-0008). */
48
+ startApp(stop: () => void): TreeApp;
49
+ /** Starts the Run and resolves with its value. */
50
+ startRun(events: StampedEventSink, signal: AbortSignal): Promise<unknown>;
51
+ /** The presenter the plain lines use after the alt-screen closes. */
52
+ plainPresent: StampedEventSink;
53
+ /** Width of the final summary frame, in terminal columns. */
54
+ columns(): number;
55
+ now(): number;
56
+ /** Installs the handlers and returns the uninstaller. */
57
+ installHandlers(handlers: InteractiveHandlers): () => void;
58
+ }
59
+
60
+ /**
61
+ * Runs one Orchestration Program under the alt-screen tree and returns the
62
+ * exit code of the Run.
63
+ *
64
+ * The terminal is restored before this resolves or rejects, on every path: the
65
+ * settle-then-`q` path, a confirmed stop, a detach, and a render throw. A
66
+ * detach closes the alt-screen and keeps awaiting the Run on the plain lines,
67
+ * so the process never exits with a Run still running. A fatal render error is
68
+ * reported only after the terminal is restored and the Run is aborted and
69
+ * reaped, so no Run is abandoned pending. A fatal accepted at any point while
70
+ * the handlers are installed is rethrown, never converted into a normal return.
71
+ */
72
+ export async function orchestrateInteractiveRun(deps: InteractiveRunDeps): Promise<number> {
73
+ const stop = new AbortController();
74
+ const app = deps.startApp(() => stop.abort());
75
+ let present: StampedEventSink = app.present;
76
+ // A render throw that escaped every `try` becomes one more exit signal the
77
+ // orchestration races, so it runs the same close → abort → await → emit
78
+ // ladder as every other path instead of throwing from a stray callback.
79
+ const signal = createFatalSignal();
80
+ const uninstall = deps.installHandlers({
81
+ interrupt: () => app.interrupt(),
82
+ terminate: () => stop.abort(),
83
+ fatal: (error) => signal.raise(error),
84
+ });
85
+ const running = settle(deps.startRun((event) => present(event), stop.signal));
86
+
87
+ try {
88
+ const early = await Promise.race([running.then(() => undefined), app.exit, signal.wait]);
89
+ if (early !== undefined) {
90
+ // The reader left before the Run settled. Close the alt-screen first,
91
+ // then keep awaiting the Run on the plain lines so it is still reaped and
92
+ // costed, and only then write the final channels.
93
+ await app.close();
94
+ present = deps.plainPresent;
95
+ // A fatal render must not abandon the Run: abort it and await settlement.
96
+ // The race carries the settlement back, so the last fatal read below is
97
+ // not followed by a yield that could drop a late fatal.
98
+ let fatal = early.kind === "fatal" ? early : undefined;
99
+ let settled: Settlement;
100
+ if (fatal !== undefined) {
101
+ stop.abort();
102
+ settled = await running;
103
+ } else {
104
+ const raced = await raceFatal(running, signal);
105
+ if (raced.kind === "work") {
106
+ settled = raced.value;
107
+ } else {
108
+ fatal = raced.exit;
109
+ stop.abort();
110
+ settled = await running;
111
+ }
112
+ }
113
+ fatal ??= signal.taken();
114
+ app.emit(finalOutput(deps, app.state, settled));
115
+ if (fatal !== undefined) throw fatal.error;
116
+ return code(settled);
117
+ }
118
+ const settled = await running;
119
+ app.settle(viewResult(settled));
120
+ // The settled view stays interactive until the reader presses `q` (spec §1).
121
+ const exit = await Promise.race([app.exit, signal.wait]);
122
+ let fatal = exit.kind === "fatal" ? exit : signal.taken();
123
+ const closing = app.close();
124
+ // A fatal raised while `app.close()` is pending must not be converted into a
125
+ // normal return: the close still completes, then the fatal error is thrown.
126
+ const raced = await raceFatal(closing, signal);
127
+ if (raced.kind === "fatal") {
128
+ fatal ??= raced.exit;
129
+ await closing;
130
+ }
131
+ fatal ??= signal.taken();
132
+ app.emit(finalOutput(deps, app.state, settled));
133
+ if (fatal !== undefined) throw fatal.error;
134
+ return code(settled);
135
+ } finally {
136
+ uninstall();
137
+ }
138
+ }
139
+
140
+ /** Binds the orchestration to the real terminal, signals, and streams. */
141
+ export async function runInteractive(options: InteractiveRunOptions): Promise<number> {
142
+ const plain = createPlainPresenter(options.flags.quiet);
143
+ try {
144
+ return await orchestrateInteractiveRun({
145
+ startApp: (stop) =>
146
+ startTreeApp({
147
+ tui: createAltScreen(),
148
+ stop,
149
+ writeStdout: (text) => process.stdout.write(text),
150
+ writeStderr: (text) => process.stderr.write(text),
151
+ }),
152
+ startRun: (events, signal) =>
153
+ executeRun(options.program, executeOptions(options.flags, options.events(events), signal)),
154
+ plainPresent: plain.present,
155
+ columns: () => process.stderr.columns ?? 80,
156
+ now: () => Date.now(),
157
+ installHandlers: installSignals,
158
+ });
159
+ } finally {
160
+ plain.dispose();
161
+ }
162
+ }
163
+
164
+ /** Signals and the render-throw net, installed only while the app is up. */
165
+ function installSignals(handlers: InteractiveHandlers): () => void {
166
+ const onInterrupt = (): void => handlers.interrupt();
167
+ // SIGTERM means "abort the Run now": it must not open a prompt that waits for
168
+ // a keystroke. The Run's own reap ladder then ends the process (ADR-0008).
169
+ const onTerminate = (): void => handlers.terminate();
170
+ // The TUI renders from process.nextTick, so a render throw escapes every
171
+ // try/finally; the terminal must still be restored before it is reported.
172
+ const onFatal = (error: unknown): void => handlers.fatal(error);
173
+ process.on("SIGINT", onInterrupt);
174
+ process.on("SIGTERM", onTerminate);
175
+ process.on("uncaughtException", onFatal);
176
+ process.on("unhandledRejection", onFatal);
177
+ return () => {
178
+ process.off("SIGINT", onInterrupt);
179
+ process.off("SIGTERM", onTerminate);
180
+ process.off("uncaughtException", onFatal);
181
+ process.off("unhandledRejection", onFatal);
182
+ };
183
+ }
184
+
185
+ /** Which of the two raced outcomes arrived first, with the work's value. */
186
+ type Raced<T> =
187
+ | { readonly kind: "work"; readonly value: T }
188
+ | { readonly kind: "fatal"; readonly exit: FatalExit };
189
+
190
+ /**
191
+ * Awaits `work` while the fatal latch stays observable.
192
+ *
193
+ * The work's value travels back with the outcome, so a caller that observed a
194
+ * fatal never awaits `work` a second time before it reports the error.
195
+ */
196
+ async function raceFatal<T>(work: Promise<T>, signal: FatalSignal): Promise<Raced<T>> {
197
+ return await Promise.race([
198
+ work.then((value): Raced<T> => ({ kind: "work", value })),
199
+ signal.wait.then((exit): Raced<T> => ({ kind: "fatal", exit })),
200
+ ]);
201
+ }
202
+
203
+ async function settle(run: Promise<unknown>): Promise<Settlement> {
204
+ try {
205
+ return { kind: "fulfilled", result: formatResult(await run) };
206
+ } catch (error) {
207
+ return { kind: "failed", error };
208
+ }
209
+ }
210
+
211
+ function viewResult(settled: Settlement): RunViewResult {
212
+ return settled.kind === "fulfilled"
213
+ ? { kind: "fulfilled", result: settled.result ?? "" }
214
+ : { kind: "failed", error: errorText(settled.error) };
215
+ }
216
+
217
+ function code(settled: Settlement): number {
218
+ return settled.kind === "fulfilled" ? 0 : 1;
219
+ }
220
+
221
+ /** The pipeable Run result for stdout, and the settled final frame for stderr. */
222
+ function finalOutput(deps: InteractiveRunDeps, state: TreeState, settled: Settlement): FinalOutput {
223
+ return {
224
+ result: settled.kind === "fulfilled" ? settled.result : null,
225
+ frame: finalFrame(state, {
226
+ now: deps.now(),
227
+ columns: deps.columns(),
228
+ result: viewResult(settled),
229
+ }),
230
+ };
231
+ }
@@ -0,0 +1,31 @@
1
+ /**
2
+ * The plain stderr presentation of a Run's Lifecycle Events (architecture §9).
3
+ *
4
+ * It is the only presenter for a non-TTY stream and for `--quiet`; a full TTY
5
+ * gets the interactive alt-screen tree instead (`tree-app.ts`).
6
+ */
7
+ import type { StampedEventSink } from "@yaag/runtime";
8
+ import { type PlainRenderMode, renderEvent } from "./render.ts";
9
+
10
+ /**
11
+ * One presentation of the Run in flight, plus the teardown its surface needs.
12
+ *
13
+ * Human-readable stderr lines are unversioned; the descriptor, when asked for,
14
+ * gets each event verbatim in the v1 envelope (ADR-0016).
15
+ */
16
+ export interface EventPresenter {
17
+ readonly present: StampedEventSink;
18
+ readonly dispose: () => void;
19
+ }
20
+
21
+ /** Builds the sanitized line presenter; `quiet` keeps the minimal line set. */
22
+ export function createPlainPresenter(quiet: boolean): EventPresenter {
23
+ const mode: PlainRenderMode = quiet ? "quiet" : "rich";
24
+ return {
25
+ present: (event) => {
26
+ const rendered = renderEvent(event, mode);
27
+ if (rendered !== null) process.stderr.write(`${rendered}\n`);
28
+ },
29
+ dispose: () => {},
30
+ };
31
+ }
package/src/render.ts ADDED
@@ -0,0 +1,96 @@
1
+ import type { AgentActivity, LifecycleEventBody, TokenBreakdown } from "@yaag/runtime";
2
+ import { sanitizeTerminalLine } from "@yaag/tui";
3
+
4
+ export type PlainRenderMode = "rich" | "quiet";
5
+
6
+ /**
7
+ * Renders one Lifecycle Event as a human-readable stderr line.
8
+ *
9
+ * This format is deliberately not a wire protocol — the extension reads the
10
+ * event objects on a dedicated fd instead (ADR-0006). Accepts the body type:
11
+ * the line never shows `at`, so stamped and unstamped events render alike.
12
+ */
13
+ export function renderEvent(
14
+ event: LifecycleEventBody,
15
+ mode: PlainRenderMode = "rich",
16
+ ): string | null {
17
+ const line = renderPlainEvent(event, mode);
18
+ return line === null ? null : sanitizeTerminalLine(line);
19
+ }
20
+
21
+ function renderPlainEvent(event: LifecycleEventBody, mode: PlainRenderMode): string | null {
22
+ if (mode === "quiet" && !minimalEvent(event.type)) return null;
23
+ switch (event.type) {
24
+ case "run_start":
25
+ return `[yaag] run ${event.program}`;
26
+ case "agent_spawn":
27
+ return `[${event.agent}] spawned ${event.model} in ${event.cwd}`;
28
+ case "ask_start":
29
+ return `[${event.agent}] ask #${event.index + 1}${event.replayed === true ? " (replayed)" : ""}${event.promptGist === "" ? "" : ` — ${event.promptGist}`}`;
30
+ case "ask_activity":
31
+ return `[${event.agent}] ${renderActivity(event.activity)}`;
32
+ case "ask_output":
33
+ case "agent_usage":
34
+ return null;
35
+ case "node_update":
36
+ return `[${event.agent}] node ${event.path} ${event.state}${event.activityGist === undefined || event.activityGist === "" ? "" : ` \u2014 ${event.activityGist}`}`;
37
+ case "ask_end": {
38
+ const gap =
39
+ event.maxFrameGapMs === undefined ? "" : ` max gap ${seconds(event.maxFrameGapMs)}`;
40
+ return `[${event.agent}] ask #${event.index + 1} ${event.ok ? "done" : "failed"} ${seconds(event.durationMs)}${gap}`;
41
+ }
42
+ case "agent_exit":
43
+ return `[${event.agent}] exit ${tokens(event.tokens)} ${cost(event.cost)}${event.incomplete ? " (killed mid-ask, cost incomplete)" : ""}`;
44
+ case "run_end": {
45
+ const gap = event.worstFrameGapMs > 0 ? ` worst gap ${seconds(event.worstFrameGapMs)}` : "";
46
+ return `[yaag] ${event.ok ? "done" : "failed"} ${seconds(event.durationMs)} ${cost(event.cost)}${event.incomplete ? "+ (incomplete)" : ""}${gap}`;
47
+ }
48
+ default: {
49
+ const never: never = event;
50
+ throw new Error(`unhandled lifecycle event: ${JSON.stringify(never)}`);
51
+ }
52
+ }
53
+ }
54
+
55
+ function minimalEvent(type: LifecycleEventBody["type"]): boolean {
56
+ return (
57
+ type === "run_start" ||
58
+ type === "agent_spawn" ||
59
+ type === "ask_start" ||
60
+ type === "ask_end" ||
61
+ type === "agent_exit" ||
62
+ type === "run_end"
63
+ );
64
+ }
65
+
66
+ function renderActivity(activity: AgentActivity): string {
67
+ switch (activity.type) {
68
+ case "thinking":
69
+ return "thinking…";
70
+ case "writing":
71
+ return "writing…";
72
+ case "tool":
73
+ return `${activity.name}${activity.argsGist === "" ? "" : `: ${activity.argsGist}`}`;
74
+ case "compacting":
75
+ return "compacting context…";
76
+ case "retrying":
77
+ return `retrying ${activity.attempt}/${activity.max}…`;
78
+ default: {
79
+ const never: never = activity;
80
+ throw new Error(`unhandled Agent Activity: ${JSON.stringify(never)}`);
81
+ }
82
+ }
83
+ }
84
+
85
+ function seconds(ms: number): string {
86
+ return `${(ms / 1000).toFixed(1)}s`;
87
+ }
88
+
89
+ /** The line reports the total only; the breakdown travels on the event (ticket 01). */
90
+ function tokens(value: TokenBreakdown | null): string {
91
+ return value === null ? "tokens unknown" : `${value.total} tokens`;
92
+ }
93
+
94
+ function cost(value: number | null): string {
95
+ return value === null ? "cost unknown" : `$${value.toFixed(4)}`;
96
+ }
@@ -0,0 +1,48 @@
1
+ /**
2
+ * One `yaag run` invocation: the flags the command parsed, the `executeRun`
3
+ * options they build, and how the Run's value reaches stdout.
4
+ *
5
+ * Both presentation paths — the plain lines and the alt-screen tree — compose
6
+ * it, so they cannot drift on artifact flags or on the result format.
7
+ */
8
+ import type { RunOptions, StampedEventSink } from "@yaag/runtime";
9
+
10
+ /** Everything `yaag run` parsed for one Run. */
11
+ export interface RunFlags {
12
+ readonly programFile: string;
13
+ readonly args: unknown;
14
+ readonly eventsFd: number | undefined;
15
+ readonly record: string | undefined;
16
+ readonly replay: string | undefined;
17
+ readonly resume: string | undefined;
18
+ readonly quiet: boolean;
19
+ }
20
+
21
+ /** Builds the `executeRun` options for these flags, one sink and one signal. */
22
+ export function executeOptions(
23
+ flags: RunFlags,
24
+ events: StampedEventSink,
25
+ signal: AbortSignal,
26
+ ): RunOptions {
27
+ return {
28
+ events,
29
+ args: flags.args,
30
+ programFile: flags.programFile,
31
+ ...(flags.record === undefined ? {} : { record: flags.record }),
32
+ ...(flags.replay === undefined ? {} : { replay: flags.replay }),
33
+ ...(flags.resume === undefined ? {} : { resume: flags.resume }),
34
+ signal,
35
+ };
36
+ }
37
+
38
+ /** The Run's result goes to stdout, so `yaag run p.ts | jq` works (ADR-0006). */
39
+ export function formatResult(result: unknown): string | null {
40
+ if (result === undefined) return null;
41
+ if (typeof result === "string") return result;
42
+ return JSON.stringify(result, null, 2);
43
+ }
44
+
45
+ /** The message a failed Run reports, on stderr and in the Result region. */
46
+ export function errorText(error: unknown): string {
47
+ return error instanceof Error ? error.message : String(error);
48
+ }