@sunshaobei/dsh-workflow 0.0.0-stage → 2.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 (386) hide show
  1. package/README.md +43 -2
  2. package/cordis.patch.yml +17 -0
  3. package/lib/client.js +14708 -0
  4. package/lib/core.js +137 -0
  5. package/lib/engine-adapter.js +1387 -0
  6. package/lib/host-driver.js +298 -0
  7. package/lib/index.js +536 -0
  8. package/lib/projection.js +159 -0
  9. package/lib/registry.js +218 -0
  10. package/lib/session-records.js +54 -0
  11. package/lib/submission-commit.js +34 -0
  12. package/lib/world-driver.js +275 -0
  13. package/package.json +64 -4
  14. package/vendor/PROVENANCE.md +9 -0
  15. package/vendor/dynamic-workflow/analysis/actor-graph.d.ts +47 -0
  16. package/vendor/dynamic-workflow/analysis/actor-graph.d.ts.map +1 -0
  17. package/vendor/dynamic-workflow/analysis/actor-graph.js +95 -0
  18. package/vendor/dynamic-workflow/analysis/actor-models.d.ts +60 -0
  19. package/vendor/dynamic-workflow/analysis/actor-models.d.ts.map +1 -0
  20. package/vendor/dynamic-workflow/analysis/actor-models.js +208 -0
  21. package/vendor/dynamic-workflow/analysis/actor-names.d.ts +56 -0
  22. package/vendor/dynamic-workflow/analysis/actor-names.d.ts.map +1 -0
  23. package/vendor/dynamic-workflow/analysis/actor-names.js +155 -0
  24. package/vendor/dynamic-workflow/analysis/analyze.d.ts +63 -0
  25. package/vendor/dynamic-workflow/analysis/analyze.d.ts.map +1 -0
  26. package/vendor/dynamic-workflow/analysis/analyze.js +92 -0
  27. package/vendor/dynamic-workflow/analysis/array-methods.d.ts +21 -0
  28. package/vendor/dynamic-workflow/analysis/array-methods.d.ts.map +1 -0
  29. package/vendor/dynamic-workflow/analysis/array-methods.js +132 -0
  30. package/vendor/dynamic-workflow/analysis/artifact-types.d.ts +39 -0
  31. package/vendor/dynamic-workflow/analysis/artifact-types.d.ts.map +1 -0
  32. package/vendor/dynamic-workflow/analysis/artifact-types.js +114 -0
  33. package/vendor/dynamic-workflow/analysis/artifacts.d.ts +67 -0
  34. package/vendor/dynamic-workflow/analysis/artifacts.d.ts.map +1 -0
  35. package/vendor/dynamic-workflow/analysis/artifacts.js +263 -0
  36. package/vendor/dynamic-workflow/analysis/assign.d.ts +42 -0
  37. package/vendor/dynamic-workflow/analysis/assign.d.ts.map +1 -0
  38. package/vendor/dynamic-workflow/analysis/assign.js +287 -0
  39. package/vendor/dynamic-workflow/analysis/callbacks.d.ts +71 -0
  40. package/vendor/dynamic-workflow/analysis/callbacks.d.ts.map +1 -0
  41. package/vendor/dynamic-workflow/analysis/callbacks.js +133 -0
  42. package/vendor/dynamic-workflow/analysis/calls.d.ts +40 -0
  43. package/vendor/dynamic-workflow/analysis/calls.d.ts.map +1 -0
  44. package/vendor/dynamic-workflow/analysis/calls.js +495 -0
  45. package/vendor/dynamic-workflow/analysis/causality-graph-lanes.d.ts +25 -0
  46. package/vendor/dynamic-workflow/analysis/causality-graph-lanes.d.ts.map +1 -0
  47. package/vendor/dynamic-workflow/analysis/causality-graph-lanes.js +161 -0
  48. package/vendor/dynamic-workflow/analysis/causality-graph-types.d.ts +163 -0
  49. package/vendor/dynamic-workflow/analysis/causality-graph-types.d.ts.map +1 -0
  50. package/vendor/dynamic-workflow/analysis/causality-graph-types.js +8 -0
  51. package/vendor/dynamic-workflow/analysis/causality-graph.d.ts +39 -0
  52. package/vendor/dynamic-workflow/analysis/causality-graph.d.ts.map +1 -0
  53. package/vendor/dynamic-workflow/analysis/causality-graph.js +530 -0
  54. package/vendor/dynamic-workflow/analysis/causality-order-calls.d.ts +29 -0
  55. package/vendor/dynamic-workflow/analysis/causality-order-calls.d.ts.map +1 -0
  56. package/vendor/dynamic-workflow/analysis/causality-order-calls.js +266 -0
  57. package/vendor/dynamic-workflow/analysis/causality-order-functions.d.ts +26 -0
  58. package/vendor/dynamic-workflow/analysis/causality-order-functions.d.ts.map +1 -0
  59. package/vendor/dynamic-workflow/analysis/causality-order-functions.js +116 -0
  60. package/vendor/dynamic-workflow/analysis/causality-order-loops.d.ts +5 -0
  61. package/vendor/dynamic-workflow/analysis/causality-order-loops.d.ts.map +1 -0
  62. package/vendor/dynamic-workflow/analysis/causality-order-loops.js +148 -0
  63. package/vendor/dynamic-workflow/analysis/causality-order-settle.d.ts +39 -0
  64. package/vendor/dynamic-workflow/analysis/causality-order-settle.d.ts.map +1 -0
  65. package/vendor/dynamic-workflow/analysis/causality-order-settle.js +263 -0
  66. package/vendor/dynamic-workflow/analysis/causality-order-state.d.ts +110 -0
  67. package/vendor/dynamic-workflow/analysis/causality-order-state.d.ts.map +1 -0
  68. package/vendor/dynamic-workflow/analysis/causality-order-state.js +162 -0
  69. package/vendor/dynamic-workflow/analysis/causality-order-strands.d.ts +79 -0
  70. package/vendor/dynamic-workflow/analysis/causality-order-strands.d.ts.map +1 -0
  71. package/vendor/dynamic-workflow/analysis/causality-order-strands.js +154 -0
  72. package/vendor/dynamic-workflow/analysis/causality-order-types.d.ts +174 -0
  73. package/vendor/dynamic-workflow/analysis/causality-order-types.d.ts.map +1 -0
  74. package/vendor/dynamic-workflow/analysis/causality-order-types.js +1 -0
  75. package/vendor/dynamic-workflow/analysis/causality-order-walk.d.ts +17 -0
  76. package/vendor/dynamic-workflow/analysis/causality-order-walk.d.ts.map +1 -0
  77. package/vendor/dynamic-workflow/analysis/causality-order-walk.js +282 -0
  78. package/vendor/dynamic-workflow/analysis/causality-order.d.ts +60 -0
  79. package/vendor/dynamic-workflow/analysis/causality-order.d.ts.map +1 -0
  80. package/vendor/dynamic-workflow/analysis/causality-order.js +110 -0
  81. package/vendor/dynamic-workflow/analysis/causality-reduce.d.ts +60 -0
  82. package/vendor/dynamic-workflow/analysis/causality-reduce.d.ts.map +1 -0
  83. package/vendor/dynamic-workflow/analysis/causality-reduce.js +198 -0
  84. package/vendor/dynamic-workflow/analysis/classes.d.ts +47 -0
  85. package/vendor/dynamic-workflow/analysis/classes.d.ts.map +1 -0
  86. package/vendor/dynamic-workflow/analysis/classes.js +264 -0
  87. package/vendor/dynamic-workflow/analysis/constants.d.ts +35 -0
  88. package/vendor/dynamic-workflow/analysis/constants.d.ts.map +1 -0
  89. package/vendor/dynamic-workflow/analysis/constants.js +23 -0
  90. package/vendor/dynamic-workflow/analysis/control-flow.d.ts +26 -0
  91. package/vendor/dynamic-workflow/analysis/control-flow.d.ts.map +1 -0
  92. package/vendor/dynamic-workflow/analysis/control-flow.js +132 -0
  93. package/vendor/dynamic-workflow/analysis/core-json.d.ts +45 -0
  94. package/vendor/dynamic-workflow/analysis/core-json.d.ts.map +1 -0
  95. package/vendor/dynamic-workflow/analysis/core-json.js +49 -0
  96. package/vendor/dynamic-workflow/analysis/core.d.ts +194 -0
  97. package/vendor/dynamic-workflow/analysis/core.d.ts.map +1 -0
  98. package/vendor/dynamic-workflow/analysis/core.js +204 -0
  99. package/vendor/dynamic-workflow/analysis/domain.d.ts +269 -0
  100. package/vendor/dynamic-workflow/analysis/domain.d.ts.map +1 -0
  101. package/vendor/dynamic-workflow/analysis/domain.js +523 -0
  102. package/vendor/dynamic-workflow/analysis/facade-misuse.d.ts +56 -0
  103. package/vendor/dynamic-workflow/analysis/facade-misuse.d.ts.map +1 -0
  104. package/vendor/dynamic-workflow/analysis/facade-misuse.js +350 -0
  105. package/vendor/dynamic-workflow/analysis/fanout-cardinality.d.ts +11 -0
  106. package/vendor/dynamic-workflow/analysis/fanout-cardinality.d.ts.map +1 -0
  107. package/vendor/dynamic-workflow/analysis/fanout-cardinality.js +121 -0
  108. package/vendor/dynamic-workflow/analysis/flow-graph.d.ts +113 -0
  109. package/vendor/dynamic-workflow/analysis/flow-graph.d.ts.map +1 -0
  110. package/vendor/dynamic-workflow/analysis/flow-graph.js +411 -0
  111. package/vendor/dynamic-workflow/analysis/flow-phase.d.ts +28 -0
  112. package/vendor/dynamic-workflow/analysis/flow-phase.d.ts.map +1 -0
  113. package/vendor/dynamic-workflow/analysis/flow-phase.js +104 -0
  114. package/vendor/dynamic-workflow/analysis/flow-strands.d.ts +39 -0
  115. package/vendor/dynamic-workflow/analysis/flow-strands.d.ts.map +1 -0
  116. package/vendor/dynamic-workflow/analysis/flow-strands.js +47 -0
  117. package/vendor/dynamic-workflow/analysis/flow-tree.d.ts +35 -0
  118. package/vendor/dynamic-workflow/analysis/flow-tree.d.ts.map +1 -0
  119. package/vendor/dynamic-workflow/analysis/flow-tree.js +33 -0
  120. package/vendor/dynamic-workflow/analysis/graph.d.ts +5 -0
  121. package/vendor/dynamic-workflow/analysis/graph.d.ts.map +1 -0
  122. package/vendor/dynamic-workflow/analysis/graph.js +199 -0
  123. package/vendor/dynamic-workflow/analysis/handoff-graph.d.ts +48 -0
  124. package/vendor/dynamic-workflow/analysis/handoff-graph.d.ts.map +1 -0
  125. package/vendor/dynamic-workflow/analysis/handoff-graph.js +0 -0
  126. package/vendor/dynamic-workflow/analysis/heap-ops.d.ts +14 -0
  127. package/vendor/dynamic-workflow/analysis/heap-ops.d.ts.map +1 -0
  128. package/vendor/dynamic-workflow/analysis/heap-ops.js +70 -0
  129. package/vendor/dynamic-workflow/analysis/hole-id.d.ts +28 -0
  130. package/vendor/dynamic-workflow/analysis/hole-id.d.ts.map +1 -0
  131. package/vendor/dynamic-workflow/analysis/hole-id.js +41 -0
  132. package/vendor/dynamic-workflow/analysis/hole-sites.d.ts +32 -0
  133. package/vendor/dynamic-workflow/analysis/hole-sites.d.ts.map +1 -0
  134. package/vendor/dynamic-workflow/analysis/hole-sites.js +215 -0
  135. package/vendor/dynamic-workflow/analysis/hole-splice.d.ts +45 -0
  136. package/vendor/dynamic-workflow/analysis/hole-splice.d.ts.map +1 -0
  137. package/vendor/dynamic-workflow/analysis/hole-splice.js +100 -0
  138. package/vendor/dynamic-workflow/analysis/interpret.d.ts +26 -0
  139. package/vendor/dynamic-workflow/analysis/interpret.d.ts.map +1 -0
  140. package/vendor/dynamic-workflow/analysis/interpret.js +200 -0
  141. package/vendor/dynamic-workflow/analysis/literals.d.ts +18 -0
  142. package/vendor/dynamic-workflow/analysis/literals.d.ts.map +1 -0
  143. package/vendor/dynamic-workflow/analysis/literals.js +125 -0
  144. package/vendor/dynamic-workflow/analysis/mermaid.d.ts +60 -0
  145. package/vendor/dynamic-workflow/analysis/mermaid.d.ts.map +1 -0
  146. package/vendor/dynamic-workflow/analysis/mermaid.js +477 -0
  147. package/vendor/dynamic-workflow/analysis/patterns.d.ts +31 -0
  148. package/vendor/dynamic-workflow/analysis/patterns.d.ts.map +1 -0
  149. package/vendor/dynamic-workflow/analysis/patterns.js +94 -0
  150. package/vendor/dynamic-workflow/analysis/phase-graph.d.ts +47 -0
  151. package/vendor/dynamic-workflow/analysis/phase-graph.d.ts.map +1 -0
  152. package/vendor/dynamic-workflow/analysis/phase-graph.js +334 -0
  153. package/vendor/dynamic-workflow/analysis/phases.d.ts +24 -0
  154. package/vendor/dynamic-workflow/analysis/phases.d.ts.map +1 -0
  155. package/vendor/dynamic-workflow/analysis/phases.js +54 -0
  156. package/vendor/dynamic-workflow/analysis/promise-ops.d.ts +52 -0
  157. package/vendor/dynamic-workflow/analysis/promise-ops.d.ts.map +1 -0
  158. package/vendor/dynamic-workflow/analysis/promise-ops.js +123 -0
  159. package/vendor/dynamic-workflow/analysis/relays.d.ts +12 -0
  160. package/vendor/dynamic-workflow/analysis/relays.d.ts.map +1 -0
  161. package/vendor/dynamic-workflow/analysis/relays.js +78 -0
  162. package/vendor/dynamic-workflow/analysis/serialize.d.ts +125 -0
  163. package/vendor/dynamic-workflow/analysis/serialize.d.ts.map +1 -0
  164. package/vendor/dynamic-workflow/analysis/serialize.js +321 -0
  165. package/vendor/dynamic-workflow/analysis/site-phases.d.ts +32 -0
  166. package/vendor/dynamic-workflow/analysis/site-phases.d.ts.map +1 -0
  167. package/vendor/dynamic-workflow/analysis/site-phases.js +69 -0
  168. package/vendor/dynamic-workflow/analysis/sites-labels.d.ts +71 -0
  169. package/vendor/dynamic-workflow/analysis/sites-labels.d.ts.map +1 -0
  170. package/vendor/dynamic-workflow/analysis/sites-labels.js +189 -0
  171. package/vendor/dynamic-workflow/analysis/sites.d.ts +267 -0
  172. package/vendor/dynamic-workflow/analysis/sites.d.ts.map +1 -0
  173. package/vendor/dynamic-workflow/analysis/sites.js +225 -0
  174. package/vendor/dynamic-workflow/analysis/state.d.ts +254 -0
  175. package/vendor/dynamic-workflow/analysis/state.d.ts.map +1 -0
  176. package/vendor/dynamic-workflow/analysis/state.js +569 -0
  177. package/vendor/dynamic-workflow/analysis/taint.d.ts +97 -0
  178. package/vendor/dynamic-workflow/analysis/taint.d.ts.map +1 -0
  179. package/vendor/dynamic-workflow/analysis/taint.js +649 -0
  180. package/vendor/dynamic-workflow/analysis/types.d.ts +100 -0
  181. package/vendor/dynamic-workflow/analysis/types.d.ts.map +1 -0
  182. package/vendor/dynamic-workflow/analysis/types.js +1 -0
  183. package/vendor/dynamic-workflow/analysis/world-run.d.ts +27 -0
  184. package/vendor/dynamic-workflow/analysis/world-run.d.ts.map +1 -0
  185. package/vendor/dynamic-workflow/analysis/world-run.js +44 -0
  186. package/vendor/dynamic-workflow/compiler/compile.d.ts +59 -0
  187. package/vendor/dynamic-workflow/compiler/compile.d.ts.map +1 -0
  188. package/vendor/dynamic-workflow/compiler/compile.js +159 -0
  189. package/vendor/dynamic-workflow/compiler/libs.generated.d.ts +3 -0
  190. package/vendor/dynamic-workflow/compiler/libs.generated.d.ts.map +1 -0
  191. package/vendor/dynamic-workflow/compiler/libs.generated.js +64 -0
  192. package/vendor/dynamic-workflow/engine/artifact-spec.d.ts +26 -0
  193. package/vendor/dynamic-workflow/engine/artifact-spec.d.ts.map +1 -0
  194. package/vendor/dynamic-workflow/engine/artifact-spec.js +173 -0
  195. package/vendor/dynamic-workflow/engine/ask-observation-types.d.ts +54 -0
  196. package/vendor/dynamic-workflow/engine/ask-observation-types.d.ts.map +1 -0
  197. package/vendor/dynamic-workflow/engine/ask-observation-types.js +19 -0
  198. package/vendor/dynamic-workflow/engine/cached-ask-facts.d.ts +28 -0
  199. package/vendor/dynamic-workflow/engine/cached-ask-facts.d.ts.map +1 -0
  200. package/vendor/dynamic-workflow/engine/cached-ask-facts.js +35 -0
  201. package/vendor/dynamic-workflow/engine/concurrency.d.ts +151 -0
  202. package/vendor/dynamic-workflow/engine/concurrency.d.ts.map +1 -0
  203. package/vendor/dynamic-workflow/engine/concurrency.js +282 -0
  204. package/vendor/dynamic-workflow/engine/engine-artifacts-primary.d.ts +17 -0
  205. package/vendor/dynamic-workflow/engine/engine-artifacts-primary.d.ts.map +1 -0
  206. package/vendor/dynamic-workflow/engine/engine-artifacts-primary.js +29 -0
  207. package/vendor/dynamic-workflow/engine/engine-artifacts.d.ts +55 -0
  208. package/vendor/dynamic-workflow/engine/engine-artifacts.d.ts.map +1 -0
  209. package/vendor/dynamic-workflow/engine/engine-artifacts.js +367 -0
  210. package/vendor/dynamic-workflow/engine/engine-config.d.ts +90 -0
  211. package/vendor/dynamic-workflow/engine/engine-config.d.ts.map +1 -0
  212. package/vendor/dynamic-workflow/engine/engine-config.js +6 -0
  213. package/vendor/dynamic-workflow/engine/engine-holes.d.ts +116 -0
  214. package/vendor/dynamic-workflow/engine/engine-holes.d.ts.map +1 -0
  215. package/vendor/dynamic-workflow/engine/engine-holes.js +142 -0
  216. package/vendor/dynamic-workflow/engine/engine-launch.d.ts +34 -0
  217. package/vendor/dynamic-workflow/engine/engine-launch.d.ts.map +1 -0
  218. package/vendor/dynamic-workflow/engine/engine-launch.js +26 -0
  219. package/vendor/dynamic-workflow/engine/engine-phase-stamp.d.ts +35 -0
  220. package/vendor/dynamic-workflow/engine/engine-phase-stamp.d.ts.map +1 -0
  221. package/vendor/dynamic-workflow/engine/engine-phase-stamp.js +74 -0
  222. package/vendor/dynamic-workflow/engine/engine-report.d.ts +27 -0
  223. package/vendor/dynamic-workflow/engine/engine-report.d.ts.map +1 -0
  224. package/vendor/dynamic-workflow/engine/engine-report.js +151 -0
  225. package/vendor/dynamic-workflow/engine/engine-resume.d.ts +18 -0
  226. package/vendor/dynamic-workflow/engine/engine-resume.d.ts.map +1 -0
  227. package/vendor/dynamic-workflow/engine/engine-resume.js +38 -0
  228. package/vendor/dynamic-workflow/engine/engine-settlement.d.ts +30 -0
  229. package/vendor/dynamic-workflow/engine/engine-settlement.d.ts.map +1 -0
  230. package/vendor/dynamic-workflow/engine/engine-settlement.js +79 -0
  231. package/vendor/dynamic-workflow/engine/engine-state.d.ts +99 -0
  232. package/vendor/dynamic-workflow/engine/engine-state.d.ts.map +1 -0
  233. package/vendor/dynamic-workflow/engine/engine-state.js +13 -0
  234. package/vendor/dynamic-workflow/engine/engine-world.d.ts +36 -0
  235. package/vendor/dynamic-workflow/engine/engine-world.d.ts.map +1 -0
  236. package/vendor/dynamic-workflow/engine/engine-world.js +189 -0
  237. package/vendor/dynamic-workflow/engine/engine.d.ts +263 -0
  238. package/vendor/dynamic-workflow/engine/engine.d.ts.map +1 -0
  239. package/vendor/dynamic-workflow/engine/engine.js +602 -0
  240. package/vendor/dynamic-workflow/engine/errors.d.ts +87 -0
  241. package/vendor/dynamic-workflow/engine/errors.d.ts.map +1 -0
  242. package/vendor/dynamic-workflow/engine/errors.js +56 -0
  243. package/vendor/dynamic-workflow/engine/hash-mismatch.d.ts +10 -0
  244. package/vendor/dynamic-workflow/engine/hash-mismatch.d.ts.map +1 -0
  245. package/vendor/dynamic-workflow/engine/hash-mismatch.js +15 -0
  246. package/vendor/dynamic-workflow/engine/hash.d.ts +16 -0
  247. package/vendor/dynamic-workflow/engine/hash.d.ts.map +1 -0
  248. package/vendor/dynamic-workflow/engine/hash.js +48 -0
  249. package/vendor/dynamic-workflow/engine/imported-cache-types.d.ts +96 -0
  250. package/vendor/dynamic-workflow/engine/imported-cache-types.d.ts.map +1 -0
  251. package/vendor/dynamic-workflow/engine/imported-cache-types.js +6 -0
  252. package/vendor/dynamic-workflow/engine/imported-cache.d.ts +127 -0
  253. package/vendor/dynamic-workflow/engine/imported-cache.d.ts.map +1 -0
  254. package/vendor/dynamic-workflow/engine/imported-cache.js +244 -0
  255. package/vendor/dynamic-workflow/engine/index.d.ts +11 -0
  256. package/vendor/dynamic-workflow/engine/index.d.ts.map +1 -0
  257. package/vendor/dynamic-workflow/engine/index.js +10 -0
  258. package/vendor/dynamic-workflow/engine/journal-memory.d.ts +32 -0
  259. package/vendor/dynamic-workflow/engine/journal-memory.d.ts.map +1 -0
  260. package/vendor/dynamic-workflow/engine/journal-memory.js +243 -0
  261. package/vendor/dynamic-workflow/engine/journal-read-types.d.ts +72 -0
  262. package/vendor/dynamic-workflow/engine/journal-read-types.d.ts.map +1 -0
  263. package/vendor/dynamic-workflow/engine/journal-read-types.js +28 -0
  264. package/vendor/dynamic-workflow/engine/persona.d.ts +20 -0
  265. package/vendor/dynamic-workflow/engine/persona.d.ts.map +1 -0
  266. package/vendor/dynamic-workflow/engine/persona.js +43 -0
  267. package/vendor/dynamic-workflow/engine/replay-order.d.ts +96 -0
  268. package/vendor/dynamic-workflow/engine/replay-order.d.ts.map +1 -0
  269. package/vendor/dynamic-workflow/engine/replay-order.js +229 -0
  270. package/vendor/dynamic-workflow/engine/run-terminal.d.ts +35 -0
  271. package/vendor/dynamic-workflow/engine/run-terminal.d.ts.map +1 -0
  272. package/vendor/dynamic-workflow/engine/run-terminal.js +7 -0
  273. package/vendor/dynamic-workflow/engine/scheduler-submit.d.ts +22 -0
  274. package/vendor/dynamic-workflow/engine/scheduler-submit.d.ts.map +1 -0
  275. package/vendor/dynamic-workflow/engine/scheduler-submit.js +84 -0
  276. package/vendor/dynamic-workflow/engine/scheduler-types.d.ts +105 -0
  277. package/vendor/dynamic-workflow/engine/scheduler-types.d.ts.map +1 -0
  278. package/vendor/dynamic-workflow/engine/scheduler-types.js +17 -0
  279. package/vendor/dynamic-workflow/engine/scheduler.d.ts +113 -0
  280. package/vendor/dynamic-workflow/engine/scheduler.d.ts.map +1 -0
  281. package/vendor/dynamic-workflow/engine/scheduler.js +484 -0
  282. package/vendor/dynamic-workflow/engine/types.d.ts +979 -0
  283. package/vendor/dynamic-workflow/engine/types.d.ts.map +1 -0
  284. package/vendor/dynamic-workflow/engine/types.js +26 -0
  285. package/vendor/dynamic-workflow/engine/world-read-input.d.ts +10 -0
  286. package/vendor/dynamic-workflow/engine/world-read-input.d.ts.map +1 -0
  287. package/vendor/dynamic-workflow/engine/world-read-input.js +55 -0
  288. package/vendor/dynamic-workflow/facade/artifact-caps.d.ts +48 -0
  289. package/vendor/dynamic-workflow/facade/artifact-caps.d.ts.map +1 -0
  290. package/vendor/dynamic-workflow/facade/artifact-caps.js +47 -0
  291. package/vendor/dynamic-workflow/facade/dts-hole.d.ts +16 -0
  292. package/vendor/dynamic-workflow/facade/dts-hole.d.ts.map +1 -0
  293. package/vendor/dynamic-workflow/facade/dts-hole.js +26 -0
  294. package/vendor/dynamic-workflow/facade/dts-model.d.ts +11 -0
  295. package/vendor/dynamic-workflow/facade/dts-model.d.ts.map +1 -0
  296. package/vendor/dynamic-workflow/facade/dts-model.js +18 -0
  297. package/vendor/dynamic-workflow/facade/dts-stream.d.ts +15 -0
  298. package/vendor/dynamic-workflow/facade/dts-stream.d.ts.map +1 -0
  299. package/vendor/dynamic-workflow/facade/dts-stream.js +41 -0
  300. package/vendor/dynamic-workflow/facade/dts.d.ts +29 -0
  301. package/vendor/dynamic-workflow/facade/dts.d.ts.map +1 -0
  302. package/vendor/dynamic-workflow/facade/dts.js +324 -0
  303. package/vendor/dynamic-workflow/facade/registry.d.ts +218 -0
  304. package/vendor/dynamic-workflow/facade/registry.d.ts.map +1 -0
  305. package/vendor/dynamic-workflow/facade/registry.js +203 -0
  306. package/vendor/dynamic-workflow/facade/report-caps.d.ts +40 -0
  307. package/vendor/dynamic-workflow/facade/report-caps.d.ts.map +1 -0
  308. package/vendor/dynamic-workflow/facade/report-caps.js +39 -0
  309. package/vendor/dynamic-workflow/facade/world-read-caps.d.ts +37 -0
  310. package/vendor/dynamic-workflow/facade/world-read-caps.d.ts.map +1 -0
  311. package/vendor/dynamic-workflow/facade/world-read-caps.js +36 -0
  312. package/vendor/dynamic-workflow/index.d.ts +41 -0
  313. package/vendor/dynamic-workflow/index.d.ts.map +1 -0
  314. package/vendor/dynamic-workflow/index.js +51 -0
  315. package/vendor/dynamic-workflow/lowering/index.d.ts +2 -0
  316. package/vendor/dynamic-workflow/lowering/index.d.ts.map +1 -0
  317. package/vendor/dynamic-workflow/lowering/index.js +1 -0
  318. package/vendor/dynamic-workflow/lowering/lower-hole.d.ts +16 -0
  319. package/vendor/dynamic-workflow/lowering/lower-hole.d.ts.map +1 -0
  320. package/vendor/dynamic-workflow/lowering/lower-hole.js +63 -0
  321. package/vendor/dynamic-workflow/lowering/lower.d.ts +82 -0
  322. package/vendor/dynamic-workflow/lowering/lower.d.ts.map +1 -0
  323. package/vendor/dynamic-workflow/lowering/lower.js +333 -0
  324. package/vendor/dynamic-workflow/projections.d.ts +26 -0
  325. package/vendor/dynamic-workflow/projections.d.ts.map +1 -0
  326. package/vendor/dynamic-workflow/projections.js +23 -0
  327. package/vendor/dynamic-workflow/schema/actor-submit-profiles.d.ts +49 -0
  328. package/vendor/dynamic-workflow/schema/actor-submit-profiles.d.ts.map +1 -0
  329. package/vendor/dynamic-workflow/schema/actor-submit-profiles.js +69 -0
  330. package/vendor/dynamic-workflow/schema/emit.d.ts +55 -0
  331. package/vendor/dynamic-workflow/schema/emit.d.ts.map +1 -0
  332. package/vendor/dynamic-workflow/schema/emit.js +325 -0
  333. package/vendor/dynamic-workflow/schema/jsdoc.d.ts +10 -0
  334. package/vendor/dynamic-workflow/schema/jsdoc.d.ts.map +1 -0
  335. package/vendor/dynamic-workflow/schema/jsdoc.js +83 -0
  336. package/vendor/dynamic-workflow/schema/serialize.d.ts +8 -0
  337. package/vendor/dynamic-workflow/schema/serialize.d.ts.map +1 -0
  338. package/vendor/dynamic-workflow/schema/serialize.js +20 -0
  339. package/vendor/dynamic-workflow/schema/synthesize.d.ts +48 -0
  340. package/vendor/dynamic-workflow/schema/synthesize.d.ts.map +1 -0
  341. package/vendor/dynamic-workflow/schema/synthesize.js +138 -0
  342. package/vendor/dynamic-workflow/schema/types.d.ts +67 -0
  343. package/vendor/dynamic-workflow/schema/types.d.ts.map +1 -0
  344. package/vendor/dynamic-workflow/schema/types.js +18 -0
  345. package/vendor/dynamic-workflow/schema/validate.d.ts +15 -0
  346. package/vendor/dynamic-workflow/schema/validate.d.ts.map +1 -0
  347. package/vendor/dynamic-workflow/schema/validate.js +213 -0
  348. package/vendor/dynamic-workflow/testing/index.d.ts +6 -0
  349. package/vendor/dynamic-workflow/testing/index.d.ts.map +1 -0
  350. package/vendor/dynamic-workflow/testing/index.js +5 -0
  351. package/vendor/dynamic-workflow/testing/journal-contract-artifacts.d.ts +9 -0
  352. package/vendor/dynamic-workflow/testing/journal-contract-artifacts.d.ts.map +1 -0
  353. package/vendor/dynamic-workflow/testing/journal-contract-artifacts.js +195 -0
  354. package/vendor/dynamic-workflow/testing/journal-contract-events.d.ts +9 -0
  355. package/vendor/dynamic-workflow/testing/journal-contract-events.d.ts.map +1 -0
  356. package/vendor/dynamic-workflow/testing/journal-contract-events.js +163 -0
  357. package/vendor/dynamic-workflow/testing/journal-contract-helpers.d.ts +9 -0
  358. package/vendor/dynamic-workflow/testing/journal-contract-helpers.d.ts.map +1 -0
  359. package/vendor/dynamic-workflow/testing/journal-contract-helpers.js +12 -0
  360. package/vendor/dynamic-workflow/testing/journal-contract-isolation.d.ts +9 -0
  361. package/vendor/dynamic-workflow/testing/journal-contract-isolation.d.ts.map +1 -0
  362. package/vendor/dynamic-workflow/testing/journal-contract-isolation.js +46 -0
  363. package/vendor/dynamic-workflow/testing/journal-contract-nodes.d.ts +9 -0
  364. package/vendor/dynamic-workflow/testing/journal-contract-nodes.d.ts.map +1 -0
  365. package/vendor/dynamic-workflow/testing/journal-contract-nodes.js +234 -0
  366. package/vendor/dynamic-workflow/testing/journal-contract-reads.d.ts +11 -0
  367. package/vendor/dynamic-workflow/testing/journal-contract-reads.d.ts.map +1 -0
  368. package/vendor/dynamic-workflow/testing/journal-contract-reads.js +281 -0
  369. package/vendor/dynamic-workflow/testing/journal-contract-runs.d.ts +9 -0
  370. package/vendor/dynamic-workflow/testing/journal-contract-runs.d.ts.map +1 -0
  371. package/vendor/dynamic-workflow/testing/journal-contract-runs.js +396 -0
  372. package/vendor/dynamic-workflow/testing/journal-contract-script.d.ts +12 -0
  373. package/vendor/dynamic-workflow/testing/journal-contract-script.d.ts.map +1 -0
  374. package/vendor/dynamic-workflow/testing/journal-contract-script.js +82 -0
  375. package/vendor/dynamic-workflow/testing/journal-contract.d.ts +15 -0
  376. package/vendor/dynamic-workflow/testing/journal-contract.d.ts.map +1 -0
  377. package/vendor/dynamic-workflow/testing/journal-contract.js +31 -0
  378. package/vendor/dynamic-workflow-runtime/child-cell-streams.js +128 -0
  379. package/vendor/dynamic-workflow-runtime/child-entry-file.js +43 -0
  380. package/vendor/dynamic-workflow-runtime/child-source.js +299 -0
  381. package/vendor/dynamic-workflow-runtime/harness.js +302 -0
  382. package/vendor/dynamic-workflow-runtime/index.js +4 -0
  383. package/vendor/dynamic-workflow-runtime/protocol.js +2 -0
  384. package/vendor/mcode-host/dynamic-workflow-import.js +269 -0
  385. package/vendor/mcode-host/workflow-git-world-read.js +183 -0
  386. package/vendor/mcode-host/workflow-world-read.js +282 -0
@@ -0,0 +1,203 @@
1
+ import ts from "typescript";
2
+ import { FACADE_FILE_NAME } from "./dts.js";
3
+ /**
4
+ * world-read 注册表。加原语=加一行。
5
+ *
6
+ * `git.log` 那一行是这张表存在的理由:它的成员名与顶层 `log()` 撞名,而这里的键带容器,
7
+ * 所以两者从不相遇(见本模块顶部)。
8
+ */
9
+ export const WORLD_READ_REGISTRY = [
10
+ { container: "files", member: "glob", op: "glob" },
11
+ { container: "files", member: "read", op: "read" },
12
+ { container: "files", member: "grep", op: "grep" },
13
+ { container: "git", member: "changedFiles", op: "git-changed-files" },
14
+ { container: "git", member: "diff", op: "git-diff" },
15
+ { container: "git", member: "status", op: "git-status" },
16
+ { container: "git", member: "log", op: "git-log" },
17
+ // world.run:journal 化命令执行。同一张表、同一套
18
+ // 机制——「读」与「效应」的差别在授权面(编译期字面量 cmd + 确认窗)与 journal 的
19
+ // 节点种类(world-run),不在站点身份。
20
+ { container: "world", member: "run", op: "run" },
21
+ ];
22
+ /** 产物注册表。加一个产物种类 = 加一行。 */
23
+ export const ARTIFACT_REGISTRY = [
24
+ { container: "artifact", member: "file", op: "file", family: "content" },
25
+ { container: "artifact", member: "markdown", op: "markdown", family: "content" },
26
+ { container: "artifact", member: "chart", op: "chart", family: "preset" },
27
+ { container: "artifact", member: "table", op: "table", family: "preset" },
28
+ { container: "artifact", member: "metrics", op: "metrics", family: "preset" },
29
+ { container: "artifact", member: "board", op: "board", family: "preset" },
30
+ ];
31
+ /**
32
+ * 注册表查询:(容器, 成员) → 产物行。非产物成员返回 undefined。
33
+ *
34
+ * 返回**表元素的字面量类型**(而不是宽化的 {@link ArtifactRow}):`op` 与 `family` 的联合
35
+ * 类型全由这张表推导,宽化一次就等于把它们退回成 `string`,站点表与 lowering 也就跟着
36
+ * 失去分派依据。
37
+ */
38
+ function artifactRow(container, member) {
39
+ if (container === undefined)
40
+ return undefined;
41
+ return ARTIFACT_REGISTRY.find((row) => row.container === container && row.member === member);
42
+ }
43
+ /** 某 facade symbol 解析到的产物行(按声明容器判定),非产物成员则 undefined。 */
44
+ export function artifactRowOfSymbol(symbol) {
45
+ const member = facadeMemberOf(symbol);
46
+ if (member === undefined)
47
+ return undefined;
48
+ return artifactRow(member.container, member.member);
49
+ }
50
+ /** 某产物 op 属于哪一族。op 由注册表推导,故这里必然命中。 */
51
+ export function artifactFamilyOf(op) {
52
+ const row = ARTIFACT_REGISTRY.find((candidate) => candidate.op === op);
53
+ if (row === undefined)
54
+ throw new Error(`unknown artifact op: ${op}`);
55
+ return row.family;
56
+ }
57
+ /** 该 op 是否为预置成员(声明族)。引擎与分析器都据它分派两条完全不同的路径。 */
58
+ export function isArtifactPresetOp(op) {
59
+ return ARTIFACT_REGISTRY.some((row) => row.op === op && row.family === "preset");
60
+ }
61
+ /**
62
+ * `ask` 所在的容器:不是 world-read,但同为**产生站点**的 facade 成员,故 facade-siting
63
+ * 规则同样约束它(只允许直接调用)。放在这里是为了让"哪些成员产生站点"只有一份清单。
64
+ */
65
+ const ASK_MEMBER = { container: "Agent", member: "ask" };
66
+ /**
67
+ * 顶层 facade 函数中产生站点的那些(无容器)。`log` 不产生站点,故不在此。`hole` 在此:留白
68
+ * 有站点 id(名字键 `hole#<hash>`)与 host 调用(docs/dynamic-workflow/authoring.md「Holes」),身份同样按
69
+ * **声明文件**判定——脚本自己的 `hole` 函数是别人的函数。
70
+ */
71
+ const SITE_PRODUCING_FUNCTIONS = ["agent", "report", "hole"];
72
+ /**
73
+ * 某 facade symbol 解析到的产生站点的**顶层函数**(按声明判定:容器必须缺席)。
74
+ * 非 facade symbol、facade 容器成员、以及 `log` 之类不产生站点的顶层函数都返回 undefined。
75
+ */
76
+ export function siteProducingFunctionOfSymbol(symbol) {
77
+ const member = facadeMemberOf(symbol);
78
+ if (member === undefined || member.container !== undefined)
79
+ return undefined;
80
+ return SITE_PRODUCING_FUNCTIONS.find((name) => name === member.member);
81
+ }
82
+ /**
83
+ * 顶层 facade 函数中**展示用的标记**:有 facade 身份,但不产生站点。目前只有 `phase`。
84
+ *
85
+ * 为什么它不在 {@link SITE_PRODUCING_FUNCTIONS} 里,而是自成一列:那份清单回答的是
86
+ * 「哪个顶层函数产生站点」,而 `phase` 没有站点 id、没有 journal 行、没有 host 调用——
87
+ * lowering 直接把它抹成 `void 0`。把它混进产生站点的清单会让 facade-misuse 的 pass 2("产生站点却没被 site
88
+ * 掉的直接调用")拒绝每一次合法的 `phase("gate")`。
89
+ *
90
+ * 它仍然是 facade 函数声明,所以别名逃逸(`const p = phase`)照旧被 facade-misuse 的
91
+ * pass 1 拒绝——lowering 因此可以放心按节点身份抹除。
92
+ */
93
+ const MARKER_FUNCTIONS = ["phase"];
94
+ /**
95
+ * 某 facade symbol 解析到的**展示标记**顶层函数(按声明判定:容器必须缺席),
96
+ * 非标记则 undefined。与 {@link siteProducingFunctionOfSymbol} 同形、刻意不同表。
97
+ */
98
+ export function markerFunctionOfSymbol(symbol) {
99
+ const member = facadeMemberOf(symbol);
100
+ if (member === undefined || member.container !== undefined)
101
+ return undefined;
102
+ return MARKER_FUNCTIONS.find((name) => name === member.member);
103
+ }
104
+ /**
105
+ * 顶层 facade 函数中**纯值构造**的那些:有 facade 身份,但不产生站点、不过 host。目前只有
106
+ * `model`(docs/dynamic-workflow/authoring.md「Choosing a model per subagent」)。
107
+ *
108
+ * `ModelRef` 只活在类型系统里:运行期它就是模型名字符串本身,所以 lowering 把 `model("x")`
109
+ * 抹成实参 `"x"`,沙箱里既没有 `__host.model`,也没有 journal 行。与 `phase` 分列的理由同
110
+ * {@link MARKER_FUNCTIONS}:它不产生站点,混进产生站点的清单会让 facade-misuse 的 pass 2 拒绝
111
+ * 每一次合法调用;它仍是 facade 函数声明,所以别名逃逸(`const m = model`)照旧被 pass 1 拒绝,
112
+ * lowering 因此可以放心按节点身份抹除。
113
+ */
114
+ const VALUE_FUNCTIONS = ["model"];
115
+ /** 某 facade symbol 解析到的纯值顶层函数(按声明判定:容器必须缺席),否则 undefined。 */
116
+ export function valueFunctionOfSymbol(symbol) {
117
+ const member = facadeMemberOf(symbol);
118
+ if (member === undefined || member.container !== undefined)
119
+ return undefined;
120
+ return VALUE_FUNCTIONS.find((name) => name === member.member);
121
+ }
122
+ /**
123
+ * 全部产生站点的 facade 成员名(world-read 成员 + `ask`)。**裸名字**清单,只可用于
124
+ * "先按名字取候选、再按声明验身份"的两段式判定——不可单独作为身份依据(见本模块顶部)。
125
+ *
126
+ * `git.log` 落地后这个集合里**含有 `"log"`**,而顶层 `log()` 不产生站点。这不是矛盾,
127
+ * 而是这份清单为什么只能当候选键的证明:身份必须由 (容器, 成员) 或声明解析给出,
128
+ * 名字本身答不了。唯一还被依赖的性质是**没有两个 facade 容器声明同名成员**——
129
+ * 集合不带容器,重名会让由它反查出的那个名字变得二义(facade-misuse 的诊断文案会引它)。
130
+ */
131
+ export const SITE_MEMBER_NAMES = new Set([
132
+ ASK_MEMBER.member,
133
+ ...WORLD_READ_REGISTRY.map((row) => row.member),
134
+ ...ARTIFACT_REGISTRY.map((row) => row.member),
135
+ ]);
136
+ /**
137
+ * 注册表查询:(容器, 成员) → op。容器为 undefined(顶层函数)时永不命中——world-read
138
+ * 一律挂在 facade 容器对象上。
139
+ */
140
+ export function worldReadOp(container, member) {
141
+ if (container === undefined)
142
+ return undefined;
143
+ return WORLD_READ_REGISTRY.find((row) => row.container === container && row.member === member)
144
+ ?.op;
145
+ }
146
+ /**
147
+ * (容器, 成员) 是否为产生站点的 facade 调用(world-read、产物、`Agent.ask`、或顶层
148
+ * `agent`/`report`)。
149
+ *
150
+ * 产物成员在这里,与 `report` 同一条理由:它们有 journal 键(`artifact#N` × ordinal),
151
+ * 而一次没有站点的发布就是一行没有键的 journal 记录——那正是 facade-siting 规则要防的。
152
+ */
153
+ export function isSiteProducing(container, member) {
154
+ if (container === undefined)
155
+ return SITE_PRODUCING_FUNCTIONS.some((name) => name === member);
156
+ if (container === ASK_MEMBER.container && member === ASK_MEMBER.member)
157
+ return true;
158
+ if (artifactRow(container, member) !== undefined)
159
+ return true;
160
+ return worldReadOp(container, member) !== undefined;
161
+ }
162
+ /**
163
+ * 一个 facade 声明所属的**容器名**:`declare const files: { glob(...) }` 的 `glob` → `"files"`,
164
+ * `declare interface Agent { ask(...) }` 的 `ask` → `"Agent"`,顶层 `declare function agent()` →
165
+ * undefined(无容器)。
166
+ *
167
+ * 实现:成员的声明是类型字面量/接口体里的一个 method/property signature,据此向上走到
168
+ * VariableDeclaration(const 容器)或 InterfaceDeclaration / TypeAliasDeclaration(命名类型容器)
169
+ * 取其名字。只认落在 facade `.d.ts` 里的声明——脚本自定义的同名成员一律 undefined。
170
+ */
171
+ export function facadeContainerOf(declaration) {
172
+ if (declaration === undefined)
173
+ return undefined;
174
+ if (declaration.getSourceFile().fileName !== FACADE_FILE_NAME)
175
+ return undefined;
176
+ for (let node = declaration.parent; node !== undefined; node = node.parent) {
177
+ if (ts.isVariableDeclaration(node)) {
178
+ return ts.isIdentifier(node.name) ? node.name.text : undefined;
179
+ }
180
+ if (ts.isInterfaceDeclaration(node) || ts.isTypeAliasDeclaration(node))
181
+ return node.name.text;
182
+ if (ts.isSourceFile(node))
183
+ return undefined;
184
+ }
185
+ return undefined;
186
+ }
187
+ /**
188
+ * 一个 facade symbol 的 (容器, 成员) 身份。symbol 的任一声明落在 facade `.d.ts` 内即算命中;
189
+ * 容器由该声明向上解析(顶层 facade 函数无容器)。非 facade symbol → undefined。
190
+ */
191
+ export function facadeMemberOf(symbol) {
192
+ const declaration = symbol?.declarations?.find((decl) => decl.getSourceFile().fileName === FACADE_FILE_NAME);
193
+ if (declaration === undefined || symbol === undefined)
194
+ return undefined;
195
+ return { container: facadeContainerOf(declaration), member: symbol.name };
196
+ }
197
+ /** 某 facade symbol 解析到的 world-read op(按声明容器判定),非 world-read 则 undefined。 */
198
+ export function worldReadOpOfSymbol(symbol) {
199
+ const member = facadeMemberOf(symbol);
200
+ if (member === undefined)
201
+ return undefined;
202
+ return worldReadOp(member.container, member.member);
203
+ }
@@ -0,0 +1,40 @@
1
+ /**
2
+ * `report` 的上限常量。
3
+ *
4
+ * 与 `world-read-caps.ts` 分成两个模块,是因为两者的**执行侧不同**:world-read 的上限由
5
+ * driver 执行(只有它能"不生产"——让 ripgrep 在 2000 条上停手),report 的上限由**引擎核心**
6
+ * 执行(report 不过 driver,它在核心里落 journal 就结束了)。同一个模块会让读者以为它们由
7
+ * 同一侧强制;数字都是契约这一点则两处相同。
8
+ *
9
+ * 溢出的策略是**失败整个 run**(`ReportCapExceeded`),而不是像 world-read 那样拒绝节点。
10
+ * 这不是严重程度的判断而是**拒绝通道**的事实:`report` 返回 `void`,脚本没有地方 `catch`。
11
+ * 也正因为脚本作者写不出恢复路径,这两个数字必须宽到一份讲道理的脚本永远碰不到。
12
+ */
13
+ /**
14
+ * 每个 run 的报告条数、单条序列化字节数与 run 级字节总数上限。数字即契约(见本模块顶部)。
15
+ *
16
+ * 真正受限的资源是**字节**(磁盘上每条存两份:节点行一份、事件一份);条数与单条字节只是它的
17
+ * 两个代理。三者一起给出最坏情形:一个 run 的 item 至多 1 GiB,磁盘上约 2 GiB。
18
+ */
19
+ export declare const REPORT_CAPS: {
20
+ /**
21
+ * 一个 run 内 `report` 的最大条数。原为 256:那是节点上限(100)还在时按「与之同宽」定的,
22
+ * 节点上限删掉之后,一次「每个任务报一条」的扇出就能合理地撞上它,而撞上的代价是整个 run
23
+ * 失败。条数本身不贵:没有读者会把超出展示界的 item 读进内存(docs/execution-engine.md
24
+ * 「Reading the journal」),磁盘上的总量由 {@link REPORT_CAPS.maxBytesPerRun} 管。
25
+ */
26
+ readonly maxItemsPerRun: 65536;
27
+ /**
28
+ * 单条 item 序列化后的最大字节数。原为 32 KiB;1 MiB 的界来自一条 item 要能放进一个协议
29
+ * 消息(单帧上限 16 MiB,看板与事件日志一页 4 MiB 且至少带一条),并给读取整条 item 的
30
+ * 读者留出余量——冷回放与 GetWorkflowRun 一次最多读 64 条,即至多 64 MiB 的瞬时内存。
31
+ * 更大的产出该走 `artifact.file`(上限 20 MiB,按块读取)。
32
+ */
33
+ readonly maxItemSerializedBytes: number;
34
+ /**
35
+ * 一个 run 内全部 item 的序列化字节总数上限。没有它,65,536 条 × 1 MiB 就是 64 GiB 的
36
+ * item(磁盘上 128 GiB)。resume 时由 `sumResultBytes` 从 journal 恢复,跨 resume 连续。
37
+ */
38
+ readonly maxBytesPerRun: number;
39
+ };
40
+ //# sourceMappingURL=report-caps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"report-caps.d.ts","sourceRoot":"","sources":["../../src/facade/report-caps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;;;;GAKG;AACH,eAAO,MAAM,WAAW;IACtB;;;;;OAKG;;IAEH;;;;;OAKG;;IAEH;;;OAGG;;CAEK,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * `report` 的上限常量。
3
+ *
4
+ * 与 `world-read-caps.ts` 分成两个模块,是因为两者的**执行侧不同**:world-read 的上限由
5
+ * driver 执行(只有它能"不生产"——让 ripgrep 在 2000 条上停手),report 的上限由**引擎核心**
6
+ * 执行(report 不过 driver,它在核心里落 journal 就结束了)。同一个模块会让读者以为它们由
7
+ * 同一侧强制;数字都是契约这一点则两处相同。
8
+ *
9
+ * 溢出的策略是**失败整个 run**(`ReportCapExceeded`),而不是像 world-read 那样拒绝节点。
10
+ * 这不是严重程度的判断而是**拒绝通道**的事实:`report` 返回 `void`,脚本没有地方 `catch`。
11
+ * 也正因为脚本作者写不出恢复路径,这两个数字必须宽到一份讲道理的脚本永远碰不到。
12
+ */
13
+ /**
14
+ * 每个 run 的报告条数、单条序列化字节数与 run 级字节总数上限。数字即契约(见本模块顶部)。
15
+ *
16
+ * 真正受限的资源是**字节**(磁盘上每条存两份:节点行一份、事件一份);条数与单条字节只是它的
17
+ * 两个代理。三者一起给出最坏情形:一个 run 的 item 至多 1 GiB,磁盘上约 2 GiB。
18
+ */
19
+ export const REPORT_CAPS = {
20
+ /**
21
+ * 一个 run 内 `report` 的最大条数。原为 256:那是节点上限(100)还在时按「与之同宽」定的,
22
+ * 节点上限删掉之后,一次「每个任务报一条」的扇出就能合理地撞上它,而撞上的代价是整个 run
23
+ * 失败。条数本身不贵:没有读者会把超出展示界的 item 读进内存(docs/execution-engine.md
24
+ * 「Reading the journal」),磁盘上的总量由 {@link REPORT_CAPS.maxBytesPerRun} 管。
25
+ */
26
+ maxItemsPerRun: 65_536,
27
+ /**
28
+ * 单条 item 序列化后的最大字节数。原为 32 KiB;1 MiB 的界来自一条 item 要能放进一个协议
29
+ * 消息(单帧上限 16 MiB,看板与事件日志一页 4 MiB 且至少带一条),并给读取整条 item 的
30
+ * 读者留出余量——冷回放与 GetWorkflowRun 一次最多读 64 条,即至多 64 MiB 的瞬时内存。
31
+ * 更大的产出该走 `artifact.file`(上限 20 MiB,按块读取)。
32
+ */
33
+ maxItemSerializedBytes: 1024 * 1024,
34
+ /**
35
+ * 一个 run 内全部 item 的序列化字节总数上限。没有它,65,536 条 × 1 MiB 就是 64 GiB 的
36
+ * item(磁盘上 128 GiB)。resume 时由 `sumResultBytes` 从 journal 恢复,跨 resume 连续。
37
+ */
38
+ maxBytesPerRun: 1024 * 1024 * 1024,
39
+ };
@@ -0,0 +1,37 @@
1
+ /**
2
+ * world-read 的上限常量。
3
+ *
4
+ * **执行在 driver,常量在纯包**,两件事分开是有原因的:只有 driver 那一侧能"不生产"——
5
+ * 让 ripgrep 在 2000 条上停手,胜过物化一百万条再回头量。但常量属于契约而不是 driver
6
+ * 私有:引擎与编译侧的用例要按它们断言,而一个只写在 driver 里的数字,测试只能复制一份,
7
+ * 于是有一天两份不相等。
8
+ *
9
+ * 溢出的策略是**拒绝节点**(`WorldReadCapExceeded`,脚本可 `catch`),绝不截断后加个标志位。
10
+ * 截断把一份悄悄残缺的世界视图交给脚本,而脚本接下来会拿它去扇出——扇出才是贵的那一步。
11
+ */
12
+ /** grep / git.diff / git.log 的上限。数字即契约(见本模块顶部)。 */
13
+ export declare const WORLD_READ_CAPS: {
14
+ /**
15
+ * `files.glob` 的最大匹配文件数。之前 glob 没有自己的 cap,于是文件系统
16
+ * 端口面向 UI 工具的默认值(100,mtime 降序)静默生效——正是本注册表要禁止的
17
+ * "静默夹到上限"。所有 world-read 的 cap 都必须在这里拥有名字。
18
+ */
19
+ readonly globMaxFiles: 2000;
20
+ /** `files.grep` 的最大命中条数。 */
21
+ readonly grepMaxMatches: 2000;
22
+ /** `files.grep` 结果序列化后的最大字节数(与条数上限**先到先拒**)。 */
23
+ readonly grepMaxSerializedBytes: number;
24
+ /** `git.diff` 输出的最大字节数。 */
25
+ readonly gitDiffMaxBytes: number;
26
+ /** `git.log` 可请求的最大条数;超过即结构化拒绝,而不是静默夹到上限。 */
27
+ readonly gitLogMaxCount: 100;
28
+ /** `git.log` 未指定 count 时的条数。 */
29
+ readonly gitLogDefaultCount: 20;
30
+ /** `world.run` stdout 的最大字节数(拒绝不截断,cap+1 探测)。 */
31
+ readonly runStdoutMaxBytes: number;
32
+ /** `world.run` stderr 的最大字节数(同上)。 */
33
+ readonly runStderrMaxBytes: number;
34
+ /** `world.run` 未指定 timeoutMs 时的墙钟(ms)。**无上限钳制**:为真正长跑的测试设计。 */
35
+ readonly runDefaultTimeoutMs: 300000;
36
+ };
37
+ //# sourceMappingURL=world-read-caps.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"world-read-caps.d.ts","sourceRoot":"","sources":["../../src/facade/world-read-caps.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,mDAAmD;AACnD,eAAO,MAAM,eAAe;IAC1B;;;;OAIG;;IAEH,4BAA4B;;IAE5B,gDAAgD;;IAEhD,2BAA2B;;IAE3B,6CAA6C;;IAE7C,gCAAgC;;IAEhC,iDAAiD;;IAEjD,qCAAqC;;IAErC,+DAA+D;;CAEvD,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * world-read 的上限常量。
3
+ *
4
+ * **执行在 driver,常量在纯包**,两件事分开是有原因的:只有 driver 那一侧能"不生产"——
5
+ * 让 ripgrep 在 2000 条上停手,胜过物化一百万条再回头量。但常量属于契约而不是 driver
6
+ * 私有:引擎与编译侧的用例要按它们断言,而一个只写在 driver 里的数字,测试只能复制一份,
7
+ * 于是有一天两份不相等。
8
+ *
9
+ * 溢出的策略是**拒绝节点**(`WorldReadCapExceeded`,脚本可 `catch`),绝不截断后加个标志位。
10
+ * 截断把一份悄悄残缺的世界视图交给脚本,而脚本接下来会拿它去扇出——扇出才是贵的那一步。
11
+ */
12
+ /** grep / git.diff / git.log 的上限。数字即契约(见本模块顶部)。 */
13
+ export const WORLD_READ_CAPS = {
14
+ /**
15
+ * `files.glob` 的最大匹配文件数。之前 glob 没有自己的 cap,于是文件系统
16
+ * 端口面向 UI 工具的默认值(100,mtime 降序)静默生效——正是本注册表要禁止的
17
+ * "静默夹到上限"。所有 world-read 的 cap 都必须在这里拥有名字。
18
+ */
19
+ globMaxFiles: 2000,
20
+ /** `files.grep` 的最大命中条数。 */
21
+ grepMaxMatches: 2000,
22
+ /** `files.grep` 结果序列化后的最大字节数(与条数上限**先到先拒**)。 */
23
+ grepMaxSerializedBytes: 256 * 1024,
24
+ /** `git.diff` 输出的最大字节数。 */
25
+ gitDiffMaxBytes: 512 * 1024,
26
+ /** `git.log` 可请求的最大条数;超过即结构化拒绝,而不是静默夹到上限。 */
27
+ gitLogMaxCount: 100,
28
+ /** `git.log` 未指定 count 时的条数。 */
29
+ gitLogDefaultCount: 20,
30
+ /** `world.run` stdout 的最大字节数(拒绝不截断,cap+1 探测)。 */
31
+ runStdoutMaxBytes: 256 * 1024,
32
+ /** `world.run` stderr 的最大字节数(同上)。 */
33
+ runStderrMaxBytes: 256 * 1024,
34
+ /** `world.run` 未指定 timeoutMs 时的墙钟(ms)。**无上限钳制**:为真正长跑的测试设计。 */
35
+ runDefaultTimeoutMs: 300_000,
36
+ };
@@ -0,0 +1,41 @@
1
+ export { FACADE_DTS, FACADE_FILE_NAME, SNIPPET_FACADE_DTS } from "./facade/dts.js";
2
+ export { HOLE_SITE_ID_PATTERN, holePrefixOf, holeSiteId, isHoleSiteId, } from "./analysis/hole-id.js";
3
+ export { WORLD_READ_CAPS } from "./facade/world-read-caps.js";
4
+ export { REPORT_CAPS } from "./facade/report-caps.js";
5
+ export { ARTIFACT_CAPS, ARTIFACT_ID_PATTERN } from "./facade/artifact-caps.js";
6
+ export { ARTIFACT_REGISTRY, artifactFamilyOf, isArtifactPresetOp, type ArtifactContentOp, type ArtifactOp, type ArtifactPresetOp, type ArtifactRow, } from "./facade/registry.js";
7
+ export { ARTIFACT_DECLARATION_CODE, ARTIFACT_HOISTING_CODE, ARTIFACT_PRIMARY_CONFLICT_CODE, collectArtifactDeclarations, type ArtifactDeclarations, type DeclaredArtifact, } from "./analysis/artifacts.js";
8
+ export { collectDiagnostics, compileWorkflowScript, createWorkflowProgram, SCRIPT_FILE_NAME, type CompileDiagnostic, type CompileResult, type CreateWorkflowProgramOptions, type ScriptLoc, type WorkflowProgram, } from "./compiler/compile.js";
9
+ export { analyzeWorkflowScript, type AnalyzeResult } from "./analysis/analyze.js";
10
+ export { MODEL_REFERENCE_CODE, MODEL_UNRESOLVED_CODE, type ModelReference, } from "./analysis/actor-models.js";
11
+ export { collectSites, type SiteTable } from "./analysis/sites.js";
12
+ export { collectWorldRunCommands, WORLD_RUN_LITERAL_CODE, type WorldRunCommands, } from "./analysis/world-run.js";
13
+ export { collectPhaseMarkerDiagnostics, PHASE_MARKER_CODE } from "./analysis/phases.js";
14
+ export { collectPhaseNames, collectSitePhases } from "./analysis/site-phases.js";
15
+ export { collectHoleDiagnostics, HOLE_CODE, HOLE_NAME_MAX_CHARS } from "./analysis/hole-sites.js";
16
+ export type { HoleSite } from "./analysis/sites.js";
17
+ export { checkSiteStability, spliceHoleBody, type SiteStability, type SplicedHoleBody, } from "./analysis/hole-splice.js";
18
+ export { MAIN_LANE } from "./analysis/causality-graph.js";
19
+ export type { FlowHole } from "./analysis/flow-graph.js";
20
+ export { interpret } from "./analysis/interpret.js";
21
+ export { toActorGraph, type ActorEdge, type ActorGraph, type ActorNode, } from "./analysis/actor-graph.js";
22
+ export { SINK_ID, UNKNOWN_LANE, WORKSPACE_LANE, type CausalityGraph, type Certainty, type Lane, type NamePattern, type OrderEdge, type OrderKind, type Phase, type Region, type RegionKind, type Step, type StepKind, } from "./analysis/causality-graph.js";
23
+ export { reduceOrdering, type ReducibleEdge } from "./analysis/causality-reduce.js";
24
+ export { UNPHASED_ID, type JumpKind, type StructuralRegionKind, type TraceRegionKind, } from "./analysis/causality-order.js";
25
+ export { FLOW_ABORT, FLOW_ENTRY, FLOW_SINK, projectControlFlow, type ControlFlowGraph, type FlowEdge, type FlowEdgeKind, type FlowNode, type FlowNodeKind, type FlowPhase, type FlowVia, } from "./analysis/flow-graph.js";
26
+ export { actorGraphToMermaid, causalityGraphToMermaid, controlFlowToMermaid, handoffGraphToMermaid, phaseFlowToMermaid, phaseGraphToMermaid, siteGraphToMermaid, } from "./analysis/mermaid.js";
27
+ export { serializeCausalityGraph, serializeControlFlow, serializeHandoffGraph, } from "./analysis/serialize.js";
28
+ export { FANOUT_EXPAND_CAP, projectHandoffGraph, UNPHASED, type Handoff, type HandoffGraph, type HandoffParticipant, } from "./analysis/handoff-graph.js";
29
+ export { serializeCore, type AnalysisCore, type CoreActorSite, type CoreAskSite, type CoreFacts, type CoreFanoutSite, type CoreHoleSite, type CoreSimpleSite, type CoreSites, type CoreTypes, } from "./analysis/core.js";
30
+ export { decodeAnalysisCore, encodeAnalysisCore, type AnalysisCoreJson, } from "./analysis/core-json.js";
31
+ export type { ActorSite, SiteEdge, SiteGraph, SiteKind, SiteLoc, SiteNode, } from "./analysis/types.js";
32
+ export { buildAskSpecs, synthesizeAskSchemas, synthesizeWorkflowSchemas, type SchemaSynthesisResult, } from "./schema/synthesize.js";
33
+ export { validate, formatViolation, formatViolations } from "./schema/validate.js";
34
+ export { GENERIC_SUBMIT_PROFILE, deriveActorSubmitProfiles, deriveActorSubmitProfilesFor, type ActorSubmitProfile, } from "./schema/actor-submit-profiles.js";
35
+ export { serializeSchema } from "./schema/serialize.js";
36
+ export { MAX_UNION_MEMBERS, SCHEMA_DIAGNOSTIC_CODE, type JsonSchema, type JsonSchemaType, type JsonValue, type Violation, } from "./schema/types.js";
37
+ export { HOST_BINDING, lowerWorkflow, lowerWorkflowScript, type LoweredWorkflow, type LowerResult, } from "./lowering/index.js";
38
+ export { WorkflowEngine, InMemoryJournalStore, ALL_EVENTS, NODE_KINDS, NON_REPORT_NODE_KINDS, type GetNodeOptions, type ListActorsOptions, type ListNodesOptions, type RunEventType, WorkflowError, INSTRUCTIONS_HEAD_MAX_CHARS, LAST_TOOL_NAME_MAX_CHARS, LAST_TOOL_TARGET_MAX_CHARS, NUDGE_ATTEMPTS, REPAIR_ATTEMPTS, canonicalJson, fnv1a, inputHash, refToString, type ActorId, type ActorRecord, type ActorRef, type ActorSessionSeed, type ArtifactPublishRequest, type ArtifactRef, type ArtifactVersionRecord, type AskMessage, type AskLastTool, type AskProgress, type AskSpec, type AskStats, type Caps, type EngineConfig, type ImportedActorCandidate, type ImportedAskEntry, type ImportedInFlightAsk, type ImportedRunCache, type ImportedWorldEntry, type InstanceRef, type JournalStorePort, type ListEventsOptions, type NodeKind, type NodeOutcome, type NodeRecord, type NodeRecordStatus, type WorldReadInput, WORLD_READ_INPUT_MAX_BYTES, type PersonaSpec, type RunEvent, type RunRecord, type RunSettlement, type RunSettlementRecord, type RunStallInfo, type RunStatus, type RunStopReason, type SessionRef, type StoredEvent, type SubmitVerdict, type ValidateFn, type WorkflowDriver, type WorkflowErrorCode, type WorkflowErrorJson, type ProviderStopDetails, type WorkflowErrorMismatch, type WorkflowHostApi, type WorkflowReportSink, type WorldReadOp, type AskWaitInfo, type ConcurrencyChange, type ConcurrencyChangeReason, } from "./engine/index.js";
39
+ export { ConcurrencyController, CONCURRENCY_DECREASE_FACTOR, CONCURRENCY_FLOOR, CONCURRENCY_IDLE_RESET_MS, CONCURRENCY_INCREASE_AFTER_SUCCESSES, CONCURRENCY_INCREASE_STEP, type ConcurrencyControllerSnapshot, type ConcurrencyThrottleReason, } from "./engine/index.js";
40
+ export { HOLE_PROMPT_MAX_CHARS, type FilledHole, type FillHoleResult, type HoleFill, type OpenHole, } from "./engine/index.js";
41
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ export { FACADE_DTS, FACADE_FILE_NAME, SNIPPET_FACADE_DTS } from "./facade/dts.js";
2
+ export { HOLE_SITE_ID_PATTERN, holePrefixOf, holeSiteId, isHoleSiteId, } from "./analysis/hole-id.js";
3
+ export { WORLD_READ_CAPS } from "./facade/world-read-caps.js";
4
+ export { REPORT_CAPS } from "./facade/report-caps.js";
5
+ // 用户面产物:上限常量、注册表词汇、编译期清单与诊断。
6
+ export { ARTIFACT_CAPS, ARTIFACT_ID_PATTERN } from "./facade/artifact-caps.js";
7
+ export { ARTIFACT_REGISTRY, artifactFamilyOf, isArtifactPresetOp, } from "./facade/registry.js";
8
+ export { ARTIFACT_DECLARATION_CODE, ARTIFACT_HOISTING_CODE, ARTIFACT_PRIMARY_CONFLICT_CODE, collectArtifactDeclarations, } from "./analysis/artifacts.js";
9
+ export { collectDiagnostics, compileWorkflowScript, createWorkflowProgram, SCRIPT_FILE_NAME, } from "./compiler/compile.js";
10
+ export { analyzeWorkflowScript } from "./analysis/analyze.js";
11
+ export { MODEL_REFERENCE_CODE, MODEL_UNRESOLVED_CODE, } from "./analysis/actor-models.js";
12
+ export { collectSites } from "./analysis/sites.js";
13
+ export { collectWorldRunCommands, WORLD_RUN_LITERAL_CODE, } from "./analysis/world-run.js";
14
+ export { collectPhaseMarkerDiagnostics, PHASE_MARKER_CODE } from "./analysis/phases.js";
15
+ export { collectPhaseNames, collectSitePhases } from "./analysis/site-phases.js";
16
+ // 留白(docs/dynamic-workflow/authoring.md「Holes」):规则 9012、站点类型、补全服务的拼接与
17
+ // 稳定性复核。
18
+ export { collectHoleDiagnostics, HOLE_CODE, HOLE_NAME_MAX_CHARS } from "./analysis/hole-sites.js";
19
+ export { checkSiteStability, spliceHoleBody, } from "./analysis/hole-splice.js";
20
+ export { MAIN_LANE } from "./analysis/causality-graph.js";
21
+ export { interpret } from "./analysis/interpret.js";
22
+ export { toActorGraph, } from "./analysis/actor-graph.js";
23
+ export { SINK_ID, UNKNOWN_LANE, WORKSPACE_LANE, } from "./analysis/causality-graph.js";
24
+ // 贪心不可约传递归约。display
25
+ // 裁剪层复用它对单一种类的边做无类型归约
26
+ // ——全部前向边同 kind、回边作 carry,它就退化成普通的不可约归约,且在有环输入上可靠。
27
+ export { reduceOrdering } from "./analysis/causality-reduce.js";
28
+ export { UNPHASED_ID, } from "./analysis/causality-order.js";
29
+ // 控制流投影:occurrence 级 CFG 与阶段商。
30
+ export { FLOW_ABORT, FLOW_ENTRY, FLOW_SINK, projectControlFlow, } from "./analysis/flow-graph.js";
31
+ export { actorGraphToMermaid, causalityGraphToMermaid, controlFlowToMermaid, handoffGraphToMermaid, phaseFlowToMermaid, phaseGraphToMermaid, siteGraphToMermaid, } from "./analysis/mermaid.js";
32
+ // 因果图的规范文本形式(快照面)。
33
+ export { serializeCausalityGraph, serializeControlFlow, serializeHandoffGraph, } from "./analysis/serialize.js";
34
+ // 交接图投影:板面第二层的参与者卡与交接边。
35
+ export { FANOUT_EXPAND_CAP, projectHandoffGraph, UNPHASED, } from "./analysis/handoff-graph.js";
36
+ // 统一分析的核心产物与其规范文本形式:
37
+ // 站点图 / 因果图 / actor 图都是它上面的纯投影。
38
+ export { serializeCore, } from "./analysis/core.js";
39
+ // core 的 JSON 编解码:样例包把 `AnalysisCore` 冻结成
40
+ // `core.json`,下游浏览器端在冻结产物上现场重算投影;Map 以有序 `[key, value][]` 落盘。
41
+ export { decodeAnalysisCore, encodeAnalysisCore, } from "./analysis/core-json.js";
42
+ export { buildAskSpecs, synthesizeAskSchemas, synthesizeWorkflowSchemas, } from "./schema/synthesize.js";
43
+ export { validate, formatViolation, formatViolations } from "./schema/validate.js";
44
+ // 每个 actor 站点的 submit profile:编译期决定子代理拿 typed / generic / 无 submit_result 工具。
45
+ export { GENERIC_SUBMIT_PROFILE, deriveActorSubmitProfiles, deriveActorSubmitProfilesFor, } from "./schema/actor-submit-profiles.js";
46
+ export { serializeSchema } from "./schema/serialize.js";
47
+ export { MAX_UNION_MEMBERS, SCHEMA_DIAGNOSTIC_CODE, } from "./schema/types.js";
48
+ export { HOST_BINDING, lowerWorkflow, lowerWorkflowScript, } from "./lowering/index.js";
49
+ export { WorkflowEngine, InMemoryJournalStore, ALL_EVENTS, NODE_KINDS, NON_REPORT_NODE_KINDS, WorkflowError, INSTRUCTIONS_HEAD_MAX_CHARS, LAST_TOOL_NAME_MAX_CHARS, LAST_TOOL_TARGET_MAX_CHARS, NUDGE_ATTEMPTS, REPAIR_ATTEMPTS, canonicalJson, fnv1a, inputHash, refToString, WORLD_READ_INPUT_MAX_BYTES, } from "./engine/index.js";
50
+ export { ConcurrencyController, CONCURRENCY_DECREASE_FACTOR, CONCURRENCY_FLOOR, CONCURRENCY_IDLE_RESET_MS, CONCURRENCY_INCREASE_AFTER_SUCCESSES, CONCURRENCY_INCREASE_STEP, } from "./engine/index.js";
51
+ export { HOLE_PROMPT_MAX_CHARS, } from "./engine/index.js";
@@ -0,0 +1,2 @@
1
+ export { HOST_BINDING, lowerWorkflow, lowerWorkflowScript, type LoweredWorkflow, type LowerResult, } from "./lower.js";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/lowering/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC"}
@@ -0,0 +1 @@
1
+ export { HOST_BINDING, lowerWorkflow, lowerWorkflowScript, } from "./lower.js";
@@ -0,0 +1,16 @@
1
+ import ts from "typescript";
2
+ import type { HoleSite } from "../analysis/sites.js";
3
+ /** 两趟降级共用的擦除选项:主体与留白函数体必须由**同一套**参数产出(execution-engine.md「The text that runs」)。 */
4
+ export declare const TRANSPILE_OPTIONS: ts.CompilerOptions;
5
+ /** 一次留白调用的改写;已补全的留白把改写后的函数体记进 `bodies`,供 {@link printHoleBodies} 打印。 */
6
+ export declare function lowerHoleCall(call: ts.CallExpression, site: HoleSite, factory: ts.NodeFactory, hostMember: (name: string) => ts.Expression, siteArg: (id: string) => ts.Expression, visitExpr: (expr: ts.Expression) => ts.Expression, bodies: Map<string, ts.Expression>): ts.Expression;
7
+ /**
8
+ * 每个已补全留白的函数体,作为**打印过、擦除过类型**的文本 `(async () => {\n…\n})`:活的补全
9
+ * 让 cell 对它 `eval`,之后的 replay 则跑主体里内联的同一份改写——两条路的每个站点都带同样的
10
+ * `hole#<hash>/…` id,因为文本来自同一趟 transform(execution-engine.md「The text that runs」)。
11
+ *
12
+ * 打印成表达式语句再擦除,尾随的 `;\n` 是 transpile 加的语句结束,去掉——留下的就是一个可以
13
+ * 直接 `eval` 成函数值的括号表达式。
14
+ */
15
+ export declare function printHoleBodies(bodies: ReadonlyMap<string, ts.Expression>, printer: ts.Printer, sourceFile: ts.SourceFile): Record<string, string>;
16
+ //# sourceMappingURL=lower-hole.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lower-hole.d.ts","sourceRoot":"","sources":["../../src/lowering/lower-hole.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAsBrD,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,eAMlC,CAAC;AAEF,wEAAwE;AACxE,wBAAgB,aAAa,CAC3B,IAAI,EAAE,EAAE,CAAC,cAAc,EACvB,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,EAAE,CAAC,WAAW,EACvB,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,EAAE,CAAC,UAAU,EAC3C,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,EAAE,CAAC,UAAU,EACtC,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC,UAAU,EACjD,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GACjC,EAAE,CAAC,UAAU,CAqBf;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,EAC1C,OAAO,EAAE,EAAE,CAAC,OAAO,EACnB,UAAU,EAAE,EAAE,CAAC,UAAU,GACxB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAWxB"}
@@ -0,0 +1,63 @@
1
+ import ts from "typescript";
2
+ /**
3
+ * 留白的降级(execution-engine.md「From script to sandbox input: lowering」的两行 hole,
4
+ * 与「The vm cell」):
5
+ *
6
+ * hole<T>(n, p?) -> __host.hole("hole#1", n, p ?? void 0, (__src) => eval(__src))
7
+ * hole<T>(n, p?, async () => …) -> __host.hole("hole#1", n, p ?? void 0, (__src) => eval(__src),
8
+ * async () => { …lowered body… })
9
+ *
10
+ * 最后那个 `(__src) => eval(__src)` 是**在站点处**发出的求值器:它的 `eval` 是直接调用,所以
11
+ * 补全的文本在留白的词法作用域里求值——能读到留白之前的每个绑定、`__host` 也在内;每次到达
12
+ * 都新造一个求值器,循环里的留白因此拿到每一轮的绑定。已补全的留白把函数体当第五个实参传过
13
+ * 去,cell 直接调用它、不发消息。
14
+ *
15
+ * 从 lower.ts 拆出(max-lines 门),且刻意只做纯函数:改写按站点表给的节点身份走,与其余
16
+ * 站点同一趟 transform,不再识别第二遍。
17
+ */
18
+ /** 求值器的形参名:cell 把补全文本喂给它。 */
19
+ const EVALUATOR_PARAM = "__src";
20
+ /** 两趟降级共用的擦除选项:主体与留白函数体必须由**同一套**参数产出(execution-engine.md「The text that runs」)。 */
21
+ export const TRANSPILE_OPTIONS = {
22
+ isolatedModules: false,
23
+ module: ts.ModuleKind.ESNext,
24
+ newLine: ts.NewLineKind.LineFeed,
25
+ removeComments: false,
26
+ target: ts.ScriptTarget.ES2022,
27
+ };
28
+ /** 一次留白调用的改写;已补全的留白把改写后的函数体记进 `bodies`,供 {@link printHoleBodies} 打印。 */
29
+ export function lowerHoleCall(call, site, factory, hostMember, siteArg, visitExpr, bodies) {
30
+ const [first] = call.arguments;
31
+ const name = first === undefined ? factory.createVoidZero() : visitExpr(first);
32
+ const prompt = site.prompt === undefined ? factory.createVoidZero() : visitExpr(site.prompt);
33
+ const evaluator = factory.createArrowFunction(undefined, undefined, [factory.createParameterDeclaration(undefined, undefined, EVALUATOR_PARAM)], undefined, factory.createToken(ts.SyntaxKind.EqualsGreaterThanToken), factory.createCallExpression(factory.createIdentifier("eval"), undefined, [
34
+ factory.createIdentifier(EVALUATOR_PARAM),
35
+ ]));
36
+ const args = [siteArg(site.id), name, prompt, evaluator];
37
+ if (site.body !== undefined) {
38
+ const body = visitExpr(site.body);
39
+ bodies.set(site.id, body);
40
+ args.push(body);
41
+ }
42
+ return factory.createCallExpression(hostMember("hole"), undefined, args);
43
+ }
44
+ /**
45
+ * 每个已补全留白的函数体,作为**打印过、擦除过类型**的文本 `(async () => {\n…\n})`:活的补全
46
+ * 让 cell 对它 `eval`,之后的 replay 则跑主体里内联的同一份改写——两条路的每个站点都带同样的
47
+ * `hole#<hash>/…` id,因为文本来自同一趟 transform(execution-engine.md「The text that runs」)。
48
+ *
49
+ * 打印成表达式语句再擦除,尾随的 `;\n` 是 transpile 加的语句结束,去掉——留下的就是一个可以
50
+ * 直接 `eval` 成函数值的括号表达式。
51
+ */
52
+ export function printHoleBodies(bodies, printer, sourceFile) {
53
+ const out = {};
54
+ for (const [siteId, body] of bodies) {
55
+ const printed = printer.printNode(ts.EmitHint.Expression, body, sourceFile);
56
+ const erased = ts.transpileModule(`(${printed})`, {
57
+ compilerOptions: TRANSPILE_OPTIONS,
58
+ reportDiagnostics: false,
59
+ }).outputText;
60
+ out[siteId] = erased.replace(/;\n?$/, "");
61
+ }
62
+ return out;
63
+ }