@crouton-kit/crouter 0.3.33 → 0.3.34

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 (566) hide show
  1. package/README.md +2 -2
  2. package/dist/build-root.js +3 -6
  3. package/dist/builtin-memory/crouter-development/marketplaces.md +6 -6
  4. package/dist/builtin-memory/crouter-development/plugins.md +13 -13
  5. package/dist/builtin-memory/internal/examples/imessage-assistant.md +3 -3
  6. package/dist/builtin-memory/internal/nodes-and-canvas.md +4 -4
  7. package/dist/builtin-personas/developer/PERSONA.md +1 -1
  8. package/dist/builtin-personas/orchestration-kernel.md +1 -1
  9. package/dist/builtin-personas/waiting.md +1 -1
  10. package/dist/builtin-pi-packages/pi-crtr-extensions/README.md +71 -0
  11. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/crtr-help-gate.test.ts +41 -0
  12. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/provider-rotation.test.ts +663 -0
  13. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/__tests__/statusline.test.ts +52 -0
  14. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/claude-plugin-commands.ts +418 -0
  15. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crouter-help.ts +87 -0
  16. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/filters.json +7 -0
  17. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-commands/index.ts +174 -0
  18. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/crtr-help-gate.ts +408 -0
  19. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/index.ts +442 -0
  20. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/frontmatter-rules/test.ts +119 -0
  21. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/nested-context.ts +327 -0
  22. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/provider-rotation.ts +574 -0
  23. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/statusline.ts +260 -0
  24. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/strip-skills-docs.ts +40 -0
  25. package/dist/builtin-pi-packages/pi-crtr-extensions/extensions/sysprompt-window.ts +19 -0
  26. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/package.json +3 -0
  27. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.js +1 -0
  28. package/dist/builtin-pi-packages/pi-crtr-extensions/lib/subscription-state.ts +479 -0
  29. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/LICENSE +13 -0
  30. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/README.md +172 -0
  31. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/bin.mjs +11 -0
  32. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-collection.js +88 -0
  33. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-doc.js +43 -0
  34. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-node.js +109 -0
  35. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/compose-scalar.js +86 -0
  36. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/composer.js +219 -0
  37. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-map.js +115 -0
  38. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +198 -0
  39. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +49 -0
  40. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-end.js +37 -0
  41. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +207 -0
  42. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +225 -0
  43. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/resolve-props.js +146 -0
  44. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-contains-newline.js +34 -0
  45. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +26 -0
  46. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +15 -0
  47. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/compose/util-map-includes.js +13 -0
  48. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/Document.js +335 -0
  49. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/anchors.js +71 -0
  50. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/applyReviver.js +55 -0
  51. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/createNode.js +88 -0
  52. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/doc/directives.js +176 -0
  53. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/errors.js +57 -0
  54. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/index.js +17 -0
  55. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/log.js +11 -0
  56. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Alias.js +116 -0
  57. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Collection.js +147 -0
  58. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Node.js +38 -0
  59. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Pair.js +36 -0
  60. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/Scalar.js +24 -0
  61. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLMap.js +144 -0
  62. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +113 -0
  63. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +63 -0
  64. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/identity.js +36 -0
  65. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/nodes/toJS.js +37 -0
  66. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-scalar.js +214 -0
  67. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-stringify.js +61 -0
  68. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst-visit.js +97 -0
  69. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/cst.js +98 -0
  70. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/lexer.js +721 -0
  71. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/line-counter.js +39 -0
  72. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/parse/parser.js +975 -0
  73. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/public-api.js +102 -0
  74. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/Schema.js +37 -0
  75. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/map.js +17 -0
  76. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/null.js +15 -0
  77. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/seq.js +17 -0
  78. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/common/string.js +14 -0
  79. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/bool.js +19 -0
  80. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/float.js +43 -0
  81. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/int.js +38 -0
  82. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/core/schema.js +23 -0
  83. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/json/schema.js +62 -0
  84. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/tags.js +96 -0
  85. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +58 -0
  86. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +26 -0
  87. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +46 -0
  88. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +71 -0
  89. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +67 -0
  90. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +74 -0
  91. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +78 -0
  92. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +39 -0
  93. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +93 -0
  94. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +101 -0
  95. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +146 -0
  96. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringify.js +129 -0
  97. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +153 -0
  98. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyComment.js +20 -0
  99. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +85 -0
  100. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +25 -0
  101. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyPair.js +150 -0
  102. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/stringify/stringifyString.js +336 -0
  103. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/util.js +11 -0
  104. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/dist/visit.js +233 -0
  105. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/index.js +5 -0
  106. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/browser/package.json +3 -0
  107. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.d.ts +8 -0
  108. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/cli.mjs +201 -0
  109. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.d.ts +11 -0
  110. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-collection.js +90 -0
  111. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.d.ts +7 -0
  112. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-doc.js +45 -0
  113. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.d.ts +29 -0
  114. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-node.js +112 -0
  115. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.d.ts +5 -0
  116. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/compose-scalar.js +88 -0
  117. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.d.ts +63 -0
  118. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/composer.js +224 -0
  119. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.d.ts +6 -0
  120. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-map.js +117 -0
  121. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.d.ts +11 -0
  122. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-scalar.js +200 -0
  123. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.d.ts +6 -0
  124. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-block-seq.js +51 -0
  125. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.d.ts +6 -0
  126. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-end.js +39 -0
  127. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.d.ts +7 -0
  128. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-collection.js +209 -0
  129. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.d.ts +10 -0
  130. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-flow-scalar.js +227 -0
  131. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.d.ts +23 -0
  132. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/resolve-props.js +148 -0
  133. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.d.ts +2 -0
  134. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-contains-newline.js +36 -0
  135. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.d.ts +2 -0
  136. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-empty-scalar-position.js +28 -0
  137. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.d.ts +3 -0
  138. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-flow-indent-check.js +17 -0
  139. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.d.ts +4 -0
  140. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/compose/util-map-includes.js +15 -0
  141. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.d.ts +141 -0
  142. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/Document.js +337 -0
  143. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.d.ts +24 -0
  144. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/anchors.js +76 -0
  145. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.d.ts +9 -0
  146. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/applyReviver.js +57 -0
  147. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.d.ts +17 -0
  148. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/createNode.js +90 -0
  149. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.d.ts +49 -0
  150. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/doc/directives.js +178 -0
  151. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.d.ts +21 -0
  152. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/errors.js +62 -0
  153. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.d.ts +25 -0
  154. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/index.js +50 -0
  155. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.d.ts +3 -0
  156. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/log.js +19 -0
  157. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.d.ts +29 -0
  158. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Alias.js +118 -0
  159. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.d.ts +73 -0
  160. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Collection.js +151 -0
  161. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.d.ts +53 -0
  162. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Node.js +40 -0
  163. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.d.ts +22 -0
  164. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Pair.js +39 -0
  165. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.d.ts +47 -0
  166. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/Scalar.js +27 -0
  167. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.d.ts +53 -0
  168. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLMap.js +147 -0
  169. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.d.ts +60 -0
  170. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/YAMLSeq.js +115 -0
  171. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.d.ts +4 -0
  172. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/addPairToJSMap.js +65 -0
  173. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.d.ts +23 -0
  174. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/identity.js +53 -0
  175. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.d.ts +29 -0
  176. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/nodes/toJS.js +39 -0
  177. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/options.d.ts +350 -0
  178. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.d.ts +64 -0
  179. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-scalar.js +218 -0
  180. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.d.ts +8 -0
  181. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-stringify.js +63 -0
  182. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.d.ts +39 -0
  183. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst-visit.js +99 -0
  184. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.d.ts +109 -0
  185. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/cst.js +112 -0
  186. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.d.ts +87 -0
  187. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/lexer.js +723 -0
  188. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.d.ts +22 -0
  189. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/line-counter.js +41 -0
  190. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.d.ts +84 -0
  191. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/parse/parser.js +980 -0
  192. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.d.ts +44 -0
  193. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/public-api.js +107 -0
  194. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.d.ts +17 -0
  195. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/Schema.js +39 -0
  196. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.d.ts +2 -0
  197. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/map.js +19 -0
  198. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.d.ts +4 -0
  199. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/null.js +17 -0
  200. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.d.ts +2 -0
  201. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/seq.js +19 -0
  202. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.d.ts +2 -0
  203. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/common/string.js +16 -0
  204. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.d.ts +4 -0
  205. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/bool.js +21 -0
  206. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.d.ts +4 -0
  207. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/float.js +47 -0
  208. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.d.ts +4 -0
  209. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/int.js +42 -0
  210. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.d.ts +1 -0
  211. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/core/schema.js +25 -0
  212. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.d.ts +2 -0
  213. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json/schema.js +64 -0
  214. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/json-schema.d.ts +69 -0
  215. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.d.ts +48 -0
  216. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/tags.js +99 -0
  217. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/types.d.ts +92 -0
  218. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.d.ts +2 -0
  219. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/binary.js +70 -0
  220. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.d.ts +7 -0
  221. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/bool.js +29 -0
  222. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.d.ts +4 -0
  223. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/float.js +50 -0
  224. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.d.ts +5 -0
  225. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/int.js +76 -0
  226. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.d.ts +9 -0
  227. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/merge.js +71 -0
  228. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.d.ts +22 -0
  229. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/omap.js +77 -0
  230. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.d.ts +10 -0
  231. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/pairs.js +82 -0
  232. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.d.ts +1 -0
  233. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/schema.js +41 -0
  234. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.d.ts +28 -0
  235. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/set.js +96 -0
  236. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.d.ts +6 -0
  237. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/schema/yaml-1.1/timestamp.js +105 -0
  238. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.d.ts +34 -0
  239. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/foldFlowLines.js +151 -0
  240. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.d.ts +21 -0
  241. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringify.js +132 -0
  242. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.d.ts +17 -0
  243. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyCollection.js +155 -0
  244. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.d.ts +10 -0
  245. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyComment.js +24 -0
  246. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.d.ts +4 -0
  247. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyDocument.js +87 -0
  248. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.d.ts +2 -0
  249. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyNumber.js +27 -0
  250. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.d.ts +3 -0
  251. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyPair.js +152 -0
  252. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.d.ts +9 -0
  253. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/stringify/stringifyString.js +338 -0
  254. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.d.ts +4 -0
  255. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/test-events.js +134 -0
  256. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.d.ts +16 -0
  257. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/util.js +28 -0
  258. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.d.ts +102 -0
  259. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/dist/visit.js +236 -0
  260. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/package.json +97 -0
  261. package/dist/builtin-pi-packages/pi-crtr-extensions/node_modules/yaml/util.js +2 -0
  262. package/dist/builtin-pi-packages/pi-crtr-extensions/package-lock.json +3385 -0
  263. package/dist/builtin-pi-packages/pi-crtr-extensions/package.json +25 -0
  264. package/dist/builtin-pi-packages/pi-mode-switch/README.md +64 -0
  265. package/dist/builtin-pi-packages/pi-mode-switch/bin/mode +40 -0
  266. package/dist/builtin-pi-packages/pi-mode-switch/extensions/index.ts +422 -0
  267. package/dist/builtin-pi-packages/pi-mode-switch/package.json +13 -0
  268. package/dist/clients/attach/__tests__/crtr-output-coverage.test.js +55 -0
  269. package/dist/clients/attach/__tests__/crtr-output-render.test.js +2340 -0
  270. package/dist/clients/attach/attach-cmd.js +826 -754
  271. package/dist/clients/attach/auth-pickers.js +2 -2
  272. package/dist/clients/attach/canvas-panels.js +1 -1
  273. package/dist/clients/attach/chat-view.d.ts +3 -2
  274. package/dist/clients/attach/chat-view.js +30 -10
  275. package/dist/clients/attach/clipboard-image.js +1 -1
  276. package/dist/clients/attach/clipboard-text.js +1 -1
  277. package/dist/clients/attach/config-load.js +1 -1
  278. package/dist/clients/attach/crtr-output-render.d.ts +48 -0
  279. package/dist/clients/attach/crtr-output-render.js +646 -0
  280. package/dist/clients/attach/extension-dialogs.js +1 -1
  281. package/dist/clients/attach/graph-overlay.js +3 -3
  282. package/dist/clients/attach/input-controller.js +1 -1
  283. package/dist/clients/attach/pickers.js +1 -1
  284. package/dist/clients/attach/slash-commands.js +5 -6
  285. package/dist/clients/attach/titled-editor.d.ts +4 -0
  286. package/dist/clients/attach/titled-editor.js +13 -1
  287. package/dist/clients/attach/view-socket.js +1 -1
  288. package/dist/clients/web/__tests__/source-cache.test.js +5 -5
  289. package/dist/clients/web/server.js +29 -5
  290. package/dist/clients/web/source-cache.js +3 -3
  291. package/dist/clients/web/web-cmd.js +7 -7
  292. package/dist/commands/canvas-issue.js +1 -1
  293. package/dist/commands/canvas-prune.js +24 -2
  294. package/dist/commands/canvas-snapshot.js +3 -0
  295. package/dist/commands/canvas-tmux-spread.js +3 -3
  296. package/dist/commands/human.js +1 -1
  297. package/dist/commands/memory/lint.js +15 -8
  298. package/dist/commands/memory/origin.d.ts +1 -0
  299. package/dist/commands/memory/origin.js +88 -0
  300. package/dist/commands/memory/shared.d.ts +8 -0
  301. package/dist/commands/memory/shared.js +22 -1
  302. package/dist/commands/memory/write.js +17 -12
  303. package/dist/commands/memory.js +4 -3
  304. package/dist/commands/node-context.js +4 -4
  305. package/dist/commands/node-snapshot.js +4 -1
  306. package/dist/commands/node.d.ts +2 -2
  307. package/dist/commands/node.js +814 -606
  308. package/dist/commands/pkg/market-inspect.d.ts +2 -1
  309. package/dist/commands/pkg/market-inspect.js +14 -32
  310. package/dist/commands/pkg/market-manage.d.ts +3 -1
  311. package/dist/commands/pkg/market-manage.js +58 -154
  312. package/dist/commands/pkg/market.js +7 -7
  313. package/dist/commands/pkg/plugin-inspect.d.ts +2 -1
  314. package/dist/commands/pkg/plugin-inspect.js +8 -24
  315. package/dist/commands/pkg/plugin-manage.d.ts +5 -1
  316. package/dist/commands/pkg/plugin-manage.js +245 -171
  317. package/dist/commands/pkg/plugin.js +6 -6
  318. package/dist/commands/pkg.js +5 -5
  319. package/dist/commands/revive.js +5 -3
  320. package/dist/commands/search/answer.js +1 -1
  321. package/dist/commands/search/contents.js +1 -1
  322. package/dist/commands/search/web.js +2 -2
  323. package/dist/commands/search.js +1 -1
  324. package/dist/commands/surface.d.ts +2 -0
  325. package/dist/commands/surface.js +43 -0
  326. package/dist/commands/sys/promptstudio.js +1 -1
  327. package/dist/commands/sys/settings.js +2 -2
  328. package/dist/commands/sys/setup-core.d.ts +88 -0
  329. package/dist/commands/sys/setup-core.js +352 -0
  330. package/dist/commands/sys/setup.d.ts +2 -0
  331. package/dist/commands/sys/setup.js +516 -0
  332. package/dist/commands/sys/sysprompt.js +3 -0
  333. package/dist/commands/sys.js +3 -2
  334. package/dist/commands/view-cycle.js +5 -5
  335. package/dist/commands/view-list.js +3 -3
  336. package/dist/commands/view-new.js +5 -5
  337. package/dist/commands/view-pick.js +6 -6
  338. package/dist/commands/view-run.js +14 -14
  339. package/dist/commands/view.js +3 -3
  340. package/dist/commands/workspace.js +10 -10
  341. package/dist/core/__tests__/boot.test.js +140 -0
  342. package/dist/core/__tests__/broker-sdk-wiring.test.js +6 -27
  343. package/dist/core/__tests__/daemon-boot.test.js +22 -0
  344. package/dist/core/__tests__/fixtures/fake-engine.js +1 -1
  345. package/dist/core/__tests__/full/broker-attach-limits.test.js +1 -1
  346. package/dist/core/__tests__/full/broker-attach-stream.test.js +1 -1
  347. package/dist/core/__tests__/full/broker-crash-teardown.test.js +10 -5
  348. package/dist/core/__tests__/full/broker-model-changed-broadcast.test.js +1 -1
  349. package/dist/core/__tests__/full/broker-navigate-tree-rewelcome.test.js +1 -1
  350. package/dist/core/__tests__/full/broker-pane-resolution.test.js +1 -1
  351. package/dist/core/__tests__/full/cascade-close.test.js +31 -18
  352. package/dist/core/__tests__/full/detach-focus.test.js +2 -2
  353. package/dist/core/__tests__/hearth-bootstrap.test.js +136 -0
  354. package/dist/core/__tests__/helpers/harness.js +1 -1
  355. package/dist/core/__tests__/live-mutation-verbs.test.js +10 -10
  356. package/dist/core/__tests__/live-mutation.test.js +8 -8
  357. package/dist/core/__tests__/migration.test.js +124 -0
  358. package/dist/core/__tests__/on-read-dedup-resume.test.js +40 -0
  359. package/dist/core/__tests__/preview-registry-sync.test.js +36 -0
  360. package/dist/core/__tests__/prune-to-limit.test.js +91 -0
  361. package/dist/core/__tests__/revive.test.js +64 -21
  362. package/dist/core/__tests__/trigger-migration.test.js +48 -0
  363. package/dist/core/__tests__/wake-bearings.test.js +23 -21
  364. package/dist/core/__tests__/wake-origin.test.js +36 -33
  365. package/dist/core/canvas/boot.d.ts +48 -0
  366. package/dist/core/canvas/boot.js +157 -0
  367. package/dist/core/canvas/canvas.d.ts +27 -1
  368. package/dist/core/canvas/canvas.js +86 -5
  369. package/dist/core/canvas/db.js +86 -1
  370. package/dist/core/canvas/index.d.ts +1 -1
  371. package/dist/core/canvas/index.js +1 -1
  372. package/dist/core/canvas/nav-model.js +1 -1
  373. package/dist/core/canvas/pid.d.ts +6 -0
  374. package/dist/core/canvas/pid.js +13 -0
  375. package/dist/core/canvas/triggers.d.ts +108 -0
  376. package/dist/core/canvas/triggers.js +320 -0
  377. package/dist/core/canvas/types.d.ts +128 -46
  378. package/dist/core/command.js +13 -4
  379. package/dist/core/hearth/__tests__/model-auth-guest.test.js +151 -0
  380. package/dist/core/hearth/config.d.ts +1 -0
  381. package/dist/core/hearth/config.js +36 -0
  382. package/dist/core/hearth/guest-env.d.ts +7 -0
  383. package/dist/core/hearth/guest-env.js +17 -1
  384. package/dist/core/hearth/model-auth-guest.d.ts +8 -0
  385. package/dist/core/hearth/model-auth-guest.js +435 -0
  386. package/dist/core/hearth/provider.d.ts +13 -6
  387. package/dist/core/hearth/providers/blaxel-bootstrap.d.ts +2 -0
  388. package/dist/core/hearth/providers/blaxel-bootstrap.js +127 -19
  389. package/dist/core/hearth/providers/blaxel-home.d.ts +8 -4
  390. package/dist/core/hearth/providers/blaxel-home.js +85 -75
  391. package/dist/core/hearth/providers/blaxel.d.ts +5 -0
  392. package/dist/core/hearth/providers/blaxel.js +86 -12
  393. package/dist/core/hearth/providers/types.d.ts +6 -1
  394. package/dist/core/hearth/registry.js +2 -1
  395. package/dist/core/hearth/types.d.ts +35 -0
  396. package/dist/core/help.d.ts +16 -0
  397. package/dist/core/help.js +2 -0
  398. package/dist/core/memory-resolver.d.ts +8 -8
  399. package/dist/core/memory-resolver.js +58 -26
  400. package/dist/core/preview-registry.d.ts +25 -0
  401. package/dist/core/preview-registry.js +2047 -0
  402. package/dist/core/resolver.d.ts +1 -0
  403. package/dist/core/resolver.js +23 -16
  404. package/dist/core/runtime/bearings.d.ts +11 -10
  405. package/dist/core/runtime/bearings.js +8 -8
  406. package/dist/core/runtime/broker-protocol.d.ts +2 -2
  407. package/dist/core/runtime/broker-protocol.js +2 -2
  408. package/dist/core/runtime/close.js +2 -2
  409. package/dist/core/runtime/kickoff.js +1 -1
  410. package/dist/core/runtime/launch.d.ts +9 -3
  411. package/dist/core/runtime/launch.js +17 -9
  412. package/dist/core/runtime/lifecycle.js +7 -7
  413. package/dist/core/runtime/model-swap.js +1 -1
  414. package/dist/core/runtime/placement.d.ts +5 -5
  415. package/dist/core/runtime/placement.js +10 -10
  416. package/dist/core/runtime/recycle.js +7 -7
  417. package/dist/core/runtime/reset.d.ts +1 -1
  418. package/dist/core/runtime/reset.js +3 -3
  419. package/dist/core/runtime/revive-all.d.ts +5 -2
  420. package/dist/core/runtime/revive-all.js +5 -2
  421. package/dist/core/runtime/revive.d.ts +15 -8
  422. package/dist/core/runtime/revive.js +52 -16
  423. package/dist/core/runtime/spawn.d.ts +1 -1
  424. package/dist/core/runtime/spawn.js +7 -7
  425. package/dist/core/runtime/stop-guard.js +5 -5
  426. package/dist/core/runtime/surface-bg.js +1 -1
  427. package/dist/core/runtime/tmux.d.ts +1 -1
  428. package/dist/core/runtime/tmux.js +4 -4
  429. package/dist/core/scope.d.ts +9 -0
  430. package/dist/core/scope.js +37 -15
  431. package/dist/core/substrate/on-read.js +23 -21
  432. package/dist/core/substrate/render.js +3 -3
  433. package/dist/core/view/loader.js +2 -2
  434. package/dist/core/wake.d.ts +2 -2
  435. package/dist/core/wake.js +7 -7
  436. package/dist/daemon/__tests__/predicate-eval.test.js +109 -0
  437. package/dist/daemon/crtrd.js +222 -103
  438. package/dist/daemon/predicate-eval.d.ts +52 -0
  439. package/dist/daemon/predicate-eval.js +248 -0
  440. package/dist/hearth/control-plane/__tests__/node-message.test.js +60 -0
  441. package/dist/hearth/control-plane/__tests__/rate-limit-recurrence.test.js +49 -0
  442. package/dist/hearth/control-plane/__tests__/relay-security.test.js +314 -0
  443. package/dist/hearth/control-plane/__tests__/scheduler-scan-loop.test.js +133 -0
  444. package/dist/hearth/control-plane/__tests__/trigger-delivery.test.js +170 -0
  445. package/dist/hearth/control-plane/__tests__/webhook-ingress.test.js +167 -0
  446. package/dist/hearth/control-plane/config.d.ts +21 -0
  447. package/dist/hearth/control-plane/config.js +77 -0
  448. package/dist/hearth/control-plane/db.d.ts +30 -0
  449. package/dist/hearth/control-plane/db.js +534 -0
  450. package/dist/hearth/control-plane/ingress/rate-limit.d.ts +24 -0
  451. package/dist/hearth/control-plane/ingress/rate-limit.js +100 -0
  452. package/dist/hearth/control-plane/ingress/route-store.d.ts +31 -0
  453. package/dist/hearth/control-plane/ingress/route-store.js +61 -0
  454. package/dist/hearth/control-plane/ingress/webhook-delivery-store.d.ts +41 -0
  455. package/dist/hearth/control-plane/ingress/webhook-delivery-store.js +69 -0
  456. package/dist/hearth/control-plane/ingress/webhook-route.d.ts +55 -0
  457. package/dist/hearth/control-plane/ingress/webhook-route.js +285 -0
  458. package/dist/hearth/control-plane/main.js +88 -0
  459. package/dist/hearth/control-plane/node-message.d.ts +31 -0
  460. package/dist/hearth/control-plane/node-message.js +98 -0
  461. package/dist/hearth/control-plane/register.d.ts +15 -0
  462. package/dist/hearth/control-plane/register.js +34 -0
  463. package/dist/hearth/control-plane/registry.d.ts +17 -0
  464. package/dist/hearth/control-plane/registry.js +161 -0
  465. package/dist/hearth/control-plane/relay.d.ts +40 -0
  466. package/dist/hearth/control-plane/relay.js +642 -0
  467. package/dist/hearth/control-plane/scheduler/fire-store.d.ts +36 -0
  468. package/dist/hearth/control-plane/scheduler/fire-store.js +73 -0
  469. package/dist/hearth/control-plane/scheduler/recurrence.d.ts +7 -0
  470. package/dist/hearth/control-plane/scheduler/recurrence.js +58 -0
  471. package/dist/hearth/control-plane/scheduler/scan-loop.d.ts +38 -0
  472. package/dist/hearth/control-plane/scheduler/scan-loop.js +138 -0
  473. package/dist/hearth/control-plane/scheduler/schedule-store.d.ts +32 -0
  474. package/dist/hearth/control-plane/scheduler/schedule-store.js +66 -0
  475. package/dist/hearth/control-plane/secrets.d.ts +17 -0
  476. package/dist/hearth/control-plane/secrets.js +113 -0
  477. package/dist/hearth/control-plane/server.d.ts +27 -0
  478. package/dist/hearth/control-plane/server.js +346 -0
  479. package/dist/hearth/control-plane/session.d.ts +68 -0
  480. package/dist/hearth/control-plane/session.js +273 -0
  481. package/dist/hearth/control-plane/triggers/acl.d.ts +14 -0
  482. package/dist/hearth/control-plane/triggers/acl.js +52 -0
  483. package/dist/hearth/control-plane/triggers/audit-store.d.ts +38 -0
  484. package/dist/hearth/control-plane/triggers/audit-store.js +79 -0
  485. package/dist/hearth/control-plane/triggers/deliver.d.ts +43 -0
  486. package/dist/hearth/control-plane/triggers/deliver.js +76 -0
  487. package/dist/hearth/control-plane/triggers/envelope.d.ts +29 -0
  488. package/dist/hearth/control-plane/triggers/envelope.js +38 -0
  489. package/dist/hearth/control-plane/types.d.ts +66 -0
  490. package/dist/hearth/control-plane/wake.d.ts +80 -0
  491. package/dist/hearth/control-plane/wake.js +312 -0
  492. package/dist/hearth/wake-proxy/__tests__/guest-source.test.js +2 -2
  493. package/dist/hearth/wake-proxy/home.d.ts +2 -8
  494. package/dist/hearth/wake-proxy/home.js +48 -12
  495. package/dist/pi-extensions/canvas-doc-substrate.js +28 -2
  496. package/dist/pi-extensions/canvas-nav.js +1 -1
  497. package/dist/prompts/view.js +7 -8
  498. package/dist/types.js +4 -4
  499. package/dist/web-client/assets/{index-D36PNBj4.js → index-BRKxe-hy.js} +2 -2
  500. package/dist/web-client/index.html +1 -1
  501. package/package.json +12 -8
  502. package/scripts/postinstall.mjs +8 -0
  503. package/dist/clients/attach/__tests__/action-parity.test.js +0 -48
  504. package/dist/clients/attach/__tests__/autocomplete-and-bash-mode.test.js +0 -96
  505. package/dist/clients/attach/__tests__/bash-bang-routing.test.js +0 -58
  506. package/dist/clients/attach/__tests__/bundle-pi-tui-dedup.test.js +0 -56
  507. package/dist/clients/attach/__tests__/clipboard-image.test.js +0 -76
  508. package/dist/clients/attach/__tests__/editor-newline.test.js +0 -82
  509. package/dist/clients/attach/__tests__/git-info.test.js +0 -31
  510. package/dist/clients/attach/__tests__/onrequest-wired.test.js +0 -20
  511. package/dist/clients/attach/__tests__/reconnect-giveup.test.js +0 -30
  512. package/dist/clients/attach/__tests__/slash-quit-copy.test.js +0 -42
  513. package/dist/clients/attach/__tests__/titled-editor.test.js +0 -60
  514. package/dist/commands/memory/__tests__/lint-schema.test.js +0 -52
  515. package/dist/core/__tests__/argv-parser.test.js +0 -217
  516. package/dist/core/__tests__/artifact-paths.test.js +0 -44
  517. package/dist/core/__tests__/draw-style.test.js +0 -258
  518. package/dist/core/__tests__/editor-label.test.js +0 -26
  519. package/dist/core/__tests__/fault-marker.test.js +0 -112
  520. package/dist/core/__tests__/fault-retry-rewind.test.d.ts +0 -1
  521. package/dist/core/__tests__/fault-retry-rewind.test.js +0 -123
  522. package/dist/core/__tests__/frame-decoder-perf.test.d.ts +0 -1
  523. package/dist/core/__tests__/frame-decoder-perf.test.js +0 -224
  524. package/dist/core/__tests__/keystone.test.d.ts +0 -1
  525. package/dist/core/__tests__/keystone.test.js +0 -185
  526. package/dist/core/__tests__/listing-completeness.test.d.ts +0 -1
  527. package/dist/core/__tests__/listing-completeness.test.js +0 -31
  528. package/dist/core/__tests__/memory-resolver.test.d.ts +0 -1
  529. package/dist/core/__tests__/memory-resolver.test.js +0 -119
  530. package/dist/core/__tests__/memory.test.d.ts +0 -1
  531. package/dist/core/__tests__/memory.test.js +0 -60
  532. package/dist/core/__tests__/model-ladders.test.d.ts +0 -1
  533. package/dist/core/__tests__/model-ladders.test.js +0 -160
  534. package/dist/core/__tests__/node-env.test.d.ts +0 -1
  535. package/dist/core/__tests__/node-env.test.js +0 -26
  536. package/dist/core/__tests__/pane-column.test.d.ts +0 -1
  537. package/dist/core/__tests__/pane-column.test.js +0 -153
  538. package/dist/core/__tests__/persona-compose.test.d.ts +0 -1
  539. package/dist/core/__tests__/persona-compose.test.js +0 -53
  540. package/dist/core/__tests__/persona-subkind.test.d.ts +0 -1
  541. package/dist/core/__tests__/persona-subkind.test.js +0 -65
  542. package/dist/core/__tests__/persona.test.d.ts +0 -1
  543. package/dist/core/__tests__/persona.test.js +0 -107
  544. package/dist/core/__tests__/unknown-path.test.d.ts +0 -1
  545. package/dist/core/__tests__/unknown-path.test.js +0 -58
  546. package/dist/core/canvas/wakeups.d.ts +0 -76
  547. package/dist/core/canvas/wakeups.js +0 -185
  548. package/dist/hearth/wake-proxy/__tests__/source-bridge-gate.test.d.ts +0 -1
  549. package/dist/hearth/wake-proxy/__tests__/source-bridge-gate.test.js +0 -455
  550. /package/dist/clients/attach/__tests__/{action-parity.test.d.ts → crtr-output-coverage.test.d.ts} +0 -0
  551. /package/dist/clients/attach/__tests__/{autocomplete-and-bash-mode.test.d.ts → crtr-output-render.test.d.ts} +0 -0
  552. /package/dist/{clients/attach/__tests__/bash-bang-routing.test.d.ts → core/__tests__/boot.test.d.ts} +0 -0
  553. /package/dist/{clients/attach/__tests__/bundle-pi-tui-dedup.test.d.ts → core/__tests__/hearth-bootstrap.test.d.ts} +0 -0
  554. /package/dist/{clients/attach/__tests__/clipboard-image.test.d.ts → core/__tests__/preview-registry-sync.test.d.ts} +0 -0
  555. /package/dist/{clients/attach/__tests__/editor-newline.test.d.ts → core/__tests__/prune-to-limit.test.d.ts} +0 -0
  556. /package/dist/{clients/attach/__tests__/git-info.test.d.ts → core/__tests__/trigger-migration.test.d.ts} +0 -0
  557. /package/dist/{clients/attach/__tests__/onrequest-wired.test.d.ts → core/hearth/__tests__/model-auth-guest.test.d.ts} +0 -0
  558. /package/dist/{clients/attach/__tests__/reconnect-giveup.test.d.ts → daemon/__tests__/predicate-eval.test.d.ts} +0 -0
  559. /package/dist/{clients/attach/__tests__/slash-quit-copy.test.d.ts → hearth/control-plane/__tests__/node-message.test.d.ts} +0 -0
  560. /package/dist/{clients/attach/__tests__/titled-editor.test.d.ts → hearth/control-plane/__tests__/rate-limit-recurrence.test.d.ts} +0 -0
  561. /package/dist/{commands/memory/__tests__/lint-schema.test.d.ts → hearth/control-plane/__tests__/relay-security.test.d.ts} +0 -0
  562. /package/dist/{core/__tests__/argv-parser.test.d.ts → hearth/control-plane/__tests__/scheduler-scan-loop.test.d.ts} +0 -0
  563. /package/dist/{core/__tests__/artifact-paths.test.d.ts → hearth/control-plane/__tests__/trigger-delivery.test.d.ts} +0 -0
  564. /package/dist/{core/__tests__/draw-style.test.d.ts → hearth/control-plane/__tests__/webhook-ingress.test.d.ts} +0 -0
  565. /package/dist/{core/__tests__/editor-label.test.d.ts → hearth/control-plane/main.d.ts} +0 -0
  566. /package/dist/{core/__tests__/fault-marker.test.d.ts → hearth/control-plane/types.js} +0 -0
@@ -0,0 +1,201 @@
1
+ import { resolve } from 'path';
2
+ import { parseArgs } from 'util';
3
+ import { prettyToken } from './parse/cst.js';
4
+ import { Lexer } from './parse/lexer.js';
5
+ import { Parser } from './parse/parser.js';
6
+ import { Composer } from './compose/composer.js';
7
+ import { LineCounter } from './parse/line-counter.js';
8
+ import { prettifyError } from './errors.js';
9
+ import { visit } from './visit.js';
10
+
11
+ const help = `\
12
+ yaml: A command-line YAML processor and inspector
13
+
14
+ Reads stdin and writes output to stdout and errors & warnings to stderr.
15
+
16
+ Usage:
17
+ yaml Process a YAML stream, outputting it as YAML
18
+ yaml cst Parse the CST of a YAML stream
19
+ yaml lex Parse the lexical tokens of a YAML stream
20
+ yaml valid Validate a YAML stream, returning 0 on success
21
+
22
+ Options:
23
+ --help, -h Show this message.
24
+ --json, -j Output JSON.
25
+ --indent 2 Output pretty-printed data, indented by the given number of spaces.
26
+ --merge, -m Enable support for "<<" merge keys.
27
+
28
+ Additional options for bare "yaml" command:
29
+ --doc, -d Output pretty-printed JS Document objects.
30
+ --single, -1 Require the input to consist of a single YAML document.
31
+ --strict, -s Stop on errors.
32
+ --visit, -v Apply a visitor to each document (requires a path to import)
33
+ --yaml 1.1 Set the YAML version. (default: 1.2)`;
34
+ class UserError extends Error {
35
+ constructor(code, message) {
36
+ super(`Error: ${message}`);
37
+ this.code = code;
38
+ }
39
+ }
40
+ UserError.ARGS = 2;
41
+ UserError.SINGLE = 3;
42
+ async function cli(stdin, done, argv) {
43
+ let args;
44
+ try {
45
+ args = parseArgs({
46
+ args: argv,
47
+ allowPositionals: true,
48
+ options: {
49
+ doc: { type: 'boolean', short: 'd' },
50
+ help: { type: 'boolean', short: 'h' },
51
+ indent: { type: 'string', short: 'i' },
52
+ merge: { type: 'boolean', short: 'm' },
53
+ json: { type: 'boolean', short: 'j' },
54
+ single: { type: 'boolean', short: '1' },
55
+ strict: { type: 'boolean', short: 's' },
56
+ visit: { type: 'string', short: 'v' },
57
+ yaml: { type: 'string', default: '1.2' }
58
+ }
59
+ });
60
+ }
61
+ catch (error) {
62
+ return done(new UserError(UserError.ARGS, error.message));
63
+ }
64
+ const { positionals: [mode], values: opt } = args;
65
+ let indent = Number(opt.indent);
66
+ stdin.setEncoding('utf-8');
67
+ // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
68
+ switch (opt.help || mode) {
69
+ /* istanbul ignore next */
70
+ case true: // --help
71
+ console.log(help);
72
+ break;
73
+ case 'lex': {
74
+ const lexer = new Lexer();
75
+ const data = [];
76
+ const add = (tok) => {
77
+ if (opt.json)
78
+ data.push(tok);
79
+ else
80
+ console.log(prettyToken(tok));
81
+ };
82
+ stdin.on('data', (chunk) => {
83
+ for (const tok of lexer.lex(chunk, true))
84
+ add(tok);
85
+ });
86
+ stdin.on('end', () => {
87
+ for (const tok of lexer.lex('', false))
88
+ add(tok);
89
+ if (opt.json)
90
+ console.log(JSON.stringify(data, null, indent));
91
+ done();
92
+ });
93
+ break;
94
+ }
95
+ case 'cst': {
96
+ const parser = new Parser();
97
+ const data = [];
98
+ const add = (tok) => {
99
+ if (opt.json)
100
+ data.push(tok);
101
+ else
102
+ console.dir(tok, { depth: null });
103
+ };
104
+ stdin.on('data', (chunk) => {
105
+ for (const tok of parser.parse(chunk, true))
106
+ add(tok);
107
+ });
108
+ stdin.on('end', () => {
109
+ for (const tok of parser.parse('', false))
110
+ add(tok);
111
+ if (opt.json)
112
+ console.log(JSON.stringify(data, null, indent));
113
+ done();
114
+ });
115
+ break;
116
+ }
117
+ case undefined:
118
+ case 'valid': {
119
+ const lineCounter = new LineCounter();
120
+ const parser = new Parser(lineCounter.addNewLine);
121
+ // @ts-expect-error Version is validated at runtime
122
+ const composer = new Composer({ version: opt.yaml, merge: opt.merge });
123
+ const visitor = opt.visit
124
+ ? (await import(resolve(opt.visit))).default
125
+ : null;
126
+ let source = '';
127
+ let hasDoc = false;
128
+ let reqDocEnd = false;
129
+ const data = [];
130
+ const add = (doc) => {
131
+ if (hasDoc && opt.single) {
132
+ return done(new UserError(UserError.SINGLE, 'Input stream contains multiple documents'));
133
+ }
134
+ for (const error of doc.errors) {
135
+ prettifyError(source, lineCounter)(error);
136
+ if (opt.strict || mode === 'valid')
137
+ return done(error);
138
+ console.error(error);
139
+ }
140
+ for (const warning of doc.warnings) {
141
+ prettifyError(source, lineCounter)(warning);
142
+ console.error(warning);
143
+ }
144
+ if (visitor)
145
+ visit(doc, visitor);
146
+ if (mode === 'valid')
147
+ doc.toJS();
148
+ else if (opt.json)
149
+ data.push(doc);
150
+ else if (opt.doc) {
151
+ Object.defineProperties(doc, {
152
+ options: { enumerable: false },
153
+ schema: { enumerable: false }
154
+ });
155
+ console.dir(doc, { depth: null });
156
+ }
157
+ else {
158
+ if (reqDocEnd)
159
+ console.log('...');
160
+ try {
161
+ indent || (indent = 2);
162
+ const str = doc.toString({ indent });
163
+ console.log(str.endsWith('\n') ? str.slice(0, -1) : str);
164
+ }
165
+ catch (error) {
166
+ done(error);
167
+ }
168
+ }
169
+ hasDoc = true;
170
+ reqDocEnd = !doc.directives?.docEnd;
171
+ };
172
+ stdin.on('data', (chunk) => {
173
+ source += chunk;
174
+ for (const tok of parser.parse(chunk, true)) {
175
+ for (const doc of composer.next(tok))
176
+ add(doc);
177
+ }
178
+ });
179
+ stdin.on('end', () => {
180
+ for (const tok of parser.parse('', false)) {
181
+ for (const doc of composer.next(tok))
182
+ add(doc);
183
+ }
184
+ for (const doc of composer.end(false))
185
+ add(doc);
186
+ if (opt.single && !hasDoc) {
187
+ return done(new UserError(UserError.SINGLE, 'Input stream contained no documents'));
188
+ }
189
+ if (mode !== 'valid' && opt.json) {
190
+ console.log(JSON.stringify(opt.single ? data[0] : data, null, indent));
191
+ }
192
+ done();
193
+ });
194
+ break;
195
+ }
196
+ default:
197
+ done(new UserError(UserError.ARGS, `Unknown command: ${JSON.stringify(mode)}`));
198
+ }
199
+ }
200
+
201
+ export { UserError, cli, help };
@@ -0,0 +1,11 @@
1
+ import type { ParsedNode } from '../nodes/Node';
2
+ import type { BlockMap, BlockSequence, FlowCollection, SourceToken } from '../parse/cst';
3
+ import type { ComposeContext, ComposeNode } from './compose-node';
4
+ import type { ComposeErrorHandler } from './composer';
5
+ interface Props {
6
+ anchor: SourceToken | null;
7
+ tag: SourceToken | null;
8
+ newlineAfterProp: SourceToken | null;
9
+ }
10
+ export declare function composeCollection(CN: ComposeNode, ctx: ComposeContext, token: BlockMap | BlockSequence | FlowCollection, props: Props, onError: ComposeErrorHandler): ParsedNode;
11
+ export {};
@@ -0,0 +1,90 @@
1
+ 'use strict';
2
+
3
+ var identity = require('../nodes/identity.js');
4
+ var Scalar = require('../nodes/Scalar.js');
5
+ var YAMLMap = require('../nodes/YAMLMap.js');
6
+ var YAMLSeq = require('../nodes/YAMLSeq.js');
7
+ var resolveBlockMap = require('./resolve-block-map.js');
8
+ var resolveBlockSeq = require('./resolve-block-seq.js');
9
+ var resolveFlowCollection = require('./resolve-flow-collection.js');
10
+
11
+ function resolveCollection(CN, ctx, token, onError, tagName, tag) {
12
+ const coll = token.type === 'block-map'
13
+ ? resolveBlockMap.resolveBlockMap(CN, ctx, token, onError, tag)
14
+ : token.type === 'block-seq'
15
+ ? resolveBlockSeq.resolveBlockSeq(CN, ctx, token, onError, tag)
16
+ : resolveFlowCollection.resolveFlowCollection(CN, ctx, token, onError, tag);
17
+ const Coll = coll.constructor;
18
+ // If we got a tagName matching the class, or the tag name is '!',
19
+ // then use the tagName from the node class used to create it.
20
+ if (tagName === '!' || tagName === Coll.tagName) {
21
+ coll.tag = Coll.tagName;
22
+ return coll;
23
+ }
24
+ if (tagName)
25
+ coll.tag = tagName;
26
+ return coll;
27
+ }
28
+ function composeCollection(CN, ctx, token, props, onError) {
29
+ const tagToken = props.tag;
30
+ const tagName = !tagToken
31
+ ? null
32
+ : ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg));
33
+ if (token.type === 'block-seq') {
34
+ const { anchor, newlineAfterProp: nl } = props;
35
+ const lastProp = anchor && tagToken
36
+ ? anchor.offset > tagToken.offset
37
+ ? anchor
38
+ : tagToken
39
+ : (anchor ?? tagToken);
40
+ if (lastProp && (!nl || nl.offset < lastProp.offset)) {
41
+ const message = 'Missing newline after block sequence props';
42
+ onError(lastProp, 'MISSING_CHAR', message);
43
+ }
44
+ }
45
+ const expType = token.type === 'block-map'
46
+ ? 'map'
47
+ : token.type === 'block-seq'
48
+ ? 'seq'
49
+ : token.start.source === '{'
50
+ ? 'map'
51
+ : 'seq';
52
+ // shortcut: check if it's a generic YAMLMap or YAMLSeq
53
+ // before jumping into the custom tag logic.
54
+ if (!tagToken ||
55
+ !tagName ||
56
+ tagName === '!' ||
57
+ (tagName === YAMLMap.YAMLMap.tagName && expType === 'map') ||
58
+ (tagName === YAMLSeq.YAMLSeq.tagName && expType === 'seq')) {
59
+ return resolveCollection(CN, ctx, token, onError, tagName);
60
+ }
61
+ let tag = ctx.schema.tags.find(t => t.tag === tagName && t.collection === expType);
62
+ if (!tag) {
63
+ const kt = ctx.schema.knownTags[tagName];
64
+ if (kt?.collection === expType) {
65
+ ctx.schema.tags.push(Object.assign({}, kt, { default: false }));
66
+ tag = kt;
67
+ }
68
+ else {
69
+ if (kt) {
70
+ onError(tagToken, 'BAD_COLLECTION_TYPE', `${kt.tag} used for ${expType} collection, but expects ${kt.collection ?? 'scalar'}`, true);
71
+ }
72
+ else {
73
+ onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, true);
74
+ }
75
+ return resolveCollection(CN, ctx, token, onError, tagName);
76
+ }
77
+ }
78
+ const coll = resolveCollection(CN, ctx, token, onError, tagName, tag);
79
+ const res = tag.resolve?.(coll, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg), ctx.options) ?? coll;
80
+ const node = identity.isNode(res)
81
+ ? res
82
+ : new Scalar.Scalar(res);
83
+ node.range = coll.range;
84
+ node.tag = tagName;
85
+ if (tag?.format)
86
+ node.format = tag.format;
87
+ return node;
88
+ }
89
+
90
+ exports.composeCollection = composeCollection;
@@ -0,0 +1,7 @@
1
+ import type { Directives } from '../doc/directives';
2
+ import { Document } from '../doc/Document';
3
+ import type { ParsedNode } from '../nodes/Node';
4
+ import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
5
+ import type * as CST from '../parse/cst';
6
+ import type { ComposeErrorHandler } from './composer';
7
+ export declare function composeDoc<Contents extends ParsedNode = ParsedNode, Strict extends boolean = true>(options: ParseOptions & DocumentOptions & SchemaOptions, directives: Directives, { offset, start, value, end }: CST.Document, onError: ComposeErrorHandler): Document.Parsed<Contents, Strict>;
@@ -0,0 +1,45 @@
1
+ 'use strict';
2
+
3
+ var Document = require('../doc/Document.js');
4
+ var composeNode = require('./compose-node.js');
5
+ var resolveEnd = require('./resolve-end.js');
6
+ var resolveProps = require('./resolve-props.js');
7
+
8
+ function composeDoc(options, directives, { offset, start, value, end }, onError) {
9
+ const opts = Object.assign({ _directives: directives }, options);
10
+ const doc = new Document.Document(undefined, opts);
11
+ const ctx = {
12
+ atKey: false,
13
+ atRoot: true,
14
+ directives: doc.directives,
15
+ options: doc.options,
16
+ schema: doc.schema
17
+ };
18
+ const props = resolveProps.resolveProps(start, {
19
+ indicator: 'doc-start',
20
+ next: value ?? end?.[0],
21
+ offset,
22
+ onError,
23
+ parentIndent: 0,
24
+ startOnNewline: true
25
+ });
26
+ if (props.found) {
27
+ doc.directives.docStart = true;
28
+ if (value &&
29
+ (value.type === 'block-map' || value.type === 'block-seq') &&
30
+ !props.hasNewline)
31
+ onError(props.end, 'MISSING_CHAR', 'Block collection cannot start on same line with directives-end marker');
32
+ }
33
+ // @ts-expect-error If Contents is set, let's trust the user
34
+ doc.contents = value
35
+ ? composeNode.composeNode(ctx, value, props, onError)
36
+ : composeNode.composeEmptyNode(ctx, props.end, start, null, props, onError);
37
+ const contentEnd = doc.contents.range[2];
38
+ const re = resolveEnd.resolveEnd(end, contentEnd, false, onError);
39
+ if (re.comment)
40
+ doc.comment = re.comment;
41
+ doc.range = [offset, contentEnd, re.offset];
42
+ return doc;
43
+ }
44
+
45
+ exports.composeDoc = composeDoc;
@@ -0,0 +1,29 @@
1
+ import type { Directives } from '../doc/directives';
2
+ import type { ParsedNode } from '../nodes/Node';
3
+ import type { ParseOptions } from '../options';
4
+ import type { SourceToken, Token } from '../parse/cst';
5
+ import type { Schema } from '../schema/Schema';
6
+ import type { ComposeErrorHandler } from './composer';
7
+ export interface ComposeContext {
8
+ atKey: boolean;
9
+ atRoot: boolean;
10
+ directives: Directives;
11
+ options: Readonly<Required<Omit<ParseOptions, 'lineCounter'>>>;
12
+ schema: Readonly<Schema>;
13
+ }
14
+ interface Props {
15
+ spaceBefore: boolean;
16
+ comment: string;
17
+ anchor: SourceToken | null;
18
+ tag: SourceToken | null;
19
+ newlineAfterProp: SourceToken | null;
20
+ end: number;
21
+ }
22
+ declare const CN: {
23
+ composeNode: typeof composeNode;
24
+ composeEmptyNode: typeof composeEmptyNode;
25
+ };
26
+ export type ComposeNode = typeof CN;
27
+ export declare function composeNode(ctx: ComposeContext, token: Token, props: Props, onError: ComposeErrorHandler): ParsedNode;
28
+ export declare function composeEmptyNode(ctx: ComposeContext, offset: number, before: Token[] | undefined, pos: number | null, { spaceBefore, comment, anchor, tag, end }: Props, onError: ComposeErrorHandler): import('../index').Scalar.Parsed;
29
+ export {};
@@ -0,0 +1,112 @@
1
+ 'use strict';
2
+
3
+ var Alias = require('../nodes/Alias.js');
4
+ var identity = require('../nodes/identity.js');
5
+ var composeCollection = require('./compose-collection.js');
6
+ var composeScalar = require('./compose-scalar.js');
7
+ var resolveEnd = require('./resolve-end.js');
8
+ var utilEmptyScalarPosition = require('./util-empty-scalar-position.js');
9
+
10
+ const CN = { composeNode, composeEmptyNode };
11
+ function composeNode(ctx, token, props, onError) {
12
+ const atKey = ctx.atKey;
13
+ const { spaceBefore, comment, anchor, tag } = props;
14
+ let node;
15
+ let isSrcToken = true;
16
+ switch (token.type) {
17
+ case 'alias':
18
+ node = composeAlias(ctx, token, onError);
19
+ if (anchor || tag)
20
+ onError(token, 'ALIAS_PROPS', 'An alias node must not specify any properties');
21
+ break;
22
+ case 'scalar':
23
+ case 'single-quoted-scalar':
24
+ case 'double-quoted-scalar':
25
+ case 'block-scalar':
26
+ node = composeScalar.composeScalar(ctx, token, tag, onError);
27
+ if (anchor)
28
+ node.anchor = anchor.source.substring(1);
29
+ break;
30
+ case 'block-map':
31
+ case 'block-seq':
32
+ case 'flow-collection':
33
+ try {
34
+ node = composeCollection.composeCollection(CN, ctx, token, props, onError);
35
+ if (anchor)
36
+ node.anchor = anchor.source.substring(1);
37
+ }
38
+ catch (error) {
39
+ // Almost certainly here due to a stack overflow
40
+ const message = error instanceof Error ? error.message : String(error);
41
+ onError(token, 'RESOURCE_EXHAUSTION', message);
42
+ }
43
+ break;
44
+ default: {
45
+ const message = token.type === 'error'
46
+ ? token.message
47
+ : `Unsupported token (type: ${token.type})`;
48
+ onError(token, 'UNEXPECTED_TOKEN', message);
49
+ isSrcToken = false;
50
+ }
51
+ }
52
+ node ?? (node = composeEmptyNode(ctx, token.offset, undefined, null, props, onError));
53
+ if (anchor && node.anchor === '')
54
+ onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string');
55
+ if (atKey &&
56
+ ctx.options.stringKeys &&
57
+ (!identity.isScalar(node) ||
58
+ typeof node.value !== 'string' ||
59
+ (node.tag && node.tag !== 'tag:yaml.org,2002:str'))) {
60
+ const msg = 'With stringKeys, all keys must be strings';
61
+ onError(tag ?? token, 'NON_STRING_KEY', msg);
62
+ }
63
+ if (spaceBefore)
64
+ node.spaceBefore = true;
65
+ if (comment) {
66
+ if (token.type === 'scalar' && token.source === '')
67
+ node.comment = comment;
68
+ else
69
+ node.commentBefore = comment;
70
+ }
71
+ // @ts-expect-error Type checking misses meaning of isSrcToken
72
+ if (ctx.options.keepSourceTokens && isSrcToken)
73
+ node.srcToken = token;
74
+ return node;
75
+ }
76
+ function composeEmptyNode(ctx, offset, before, pos, { spaceBefore, comment, anchor, tag, end }, onError) {
77
+ const token = {
78
+ type: 'scalar',
79
+ offset: utilEmptyScalarPosition.emptyScalarPosition(offset, before, pos),
80
+ indent: -1,
81
+ source: ''
82
+ };
83
+ const node = composeScalar.composeScalar(ctx, token, tag, onError);
84
+ if (anchor) {
85
+ node.anchor = anchor.source.substring(1);
86
+ if (node.anchor === '')
87
+ onError(anchor, 'BAD_ALIAS', 'Anchor cannot be an empty string');
88
+ }
89
+ if (spaceBefore)
90
+ node.spaceBefore = true;
91
+ if (comment) {
92
+ node.comment = comment;
93
+ node.range[2] = end;
94
+ }
95
+ return node;
96
+ }
97
+ function composeAlias({ options }, { offset, source, end }, onError) {
98
+ const alias = new Alias.Alias(source.substring(1));
99
+ if (alias.source === '')
100
+ onError(offset, 'BAD_ALIAS', 'Alias cannot be an empty string');
101
+ if (alias.source.endsWith(':'))
102
+ onError(offset + source.length - 1, 'BAD_ALIAS', 'Alias ending in : is ambiguous', true);
103
+ const valueEnd = offset + source.length;
104
+ const re = resolveEnd.resolveEnd(end, valueEnd, options.strict, onError);
105
+ alias.range = [offset, valueEnd, re.offset];
106
+ if (re.comment)
107
+ alias.comment = re.comment;
108
+ return alias;
109
+ }
110
+
111
+ exports.composeEmptyNode = composeEmptyNode;
112
+ exports.composeNode = composeNode;
@@ -0,0 +1,5 @@
1
+ import { Scalar } from '../nodes/Scalar';
2
+ import type { BlockScalar, FlowScalar, SourceToken } from '../parse/cst';
3
+ import type { ComposeContext } from './compose-node';
4
+ import type { ComposeErrorHandler } from './composer';
5
+ export declare function composeScalar(ctx: ComposeContext, token: FlowScalar | BlockScalar, tagToken: SourceToken | null, onError: ComposeErrorHandler): Scalar.Parsed;
@@ -0,0 +1,88 @@
1
+ 'use strict';
2
+
3
+ var identity = require('../nodes/identity.js');
4
+ var Scalar = require('../nodes/Scalar.js');
5
+ var resolveBlockScalar = require('./resolve-block-scalar.js');
6
+ var resolveFlowScalar = require('./resolve-flow-scalar.js');
7
+
8
+ function composeScalar(ctx, token, tagToken, onError) {
9
+ const { value, type, comment, range } = token.type === 'block-scalar'
10
+ ? resolveBlockScalar.resolveBlockScalar(ctx, token, onError)
11
+ : resolveFlowScalar.resolveFlowScalar(token, ctx.options.strict, onError);
12
+ const tagName = tagToken
13
+ ? ctx.directives.tagName(tagToken.source, msg => onError(tagToken, 'TAG_RESOLVE_FAILED', msg))
14
+ : null;
15
+ let tag;
16
+ if (ctx.options.stringKeys && ctx.atKey) {
17
+ tag = ctx.schema[identity.SCALAR];
18
+ }
19
+ else if (tagName)
20
+ tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError);
21
+ else if (token.type === 'scalar')
22
+ tag = findScalarTagByTest(ctx, value, token, onError);
23
+ else
24
+ tag = ctx.schema[identity.SCALAR];
25
+ let scalar;
26
+ try {
27
+ const res = tag.resolve(value, msg => onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg), ctx.options);
28
+ scalar = identity.isScalar(res) ? res : new Scalar.Scalar(res);
29
+ }
30
+ catch (error) {
31
+ const msg = error instanceof Error ? error.message : String(error);
32
+ onError(tagToken ?? token, 'TAG_RESOLVE_FAILED', msg);
33
+ scalar = new Scalar.Scalar(value);
34
+ }
35
+ scalar.range = range;
36
+ scalar.source = value;
37
+ if (type)
38
+ scalar.type = type;
39
+ if (tagName)
40
+ scalar.tag = tagName;
41
+ if (tag.format)
42
+ scalar.format = tag.format;
43
+ if (comment)
44
+ scalar.comment = comment;
45
+ return scalar;
46
+ }
47
+ function findScalarTagByName(schema, value, tagName, tagToken, onError) {
48
+ if (tagName === '!')
49
+ return schema[identity.SCALAR]; // non-specific tag
50
+ const matchWithTest = [];
51
+ for (const tag of schema.tags) {
52
+ if (!tag.collection && tag.tag === tagName) {
53
+ if (tag.default && tag.test)
54
+ matchWithTest.push(tag);
55
+ else
56
+ return tag;
57
+ }
58
+ }
59
+ for (const tag of matchWithTest)
60
+ if (tag.test?.test(value))
61
+ return tag;
62
+ const kt = schema.knownTags[tagName];
63
+ if (kt && !kt.collection) {
64
+ // Ensure that the known tag is available for stringifying,
65
+ // but does not get used by default.
66
+ schema.tags.push(Object.assign({}, kt, { default: false, test: undefined }));
67
+ return kt;
68
+ }
69
+ onError(tagToken, 'TAG_RESOLVE_FAILED', `Unresolved tag: ${tagName}`, tagName !== 'tag:yaml.org,2002:str');
70
+ return schema[identity.SCALAR];
71
+ }
72
+ function findScalarTagByTest({ atKey, directives, schema }, value, token, onError) {
73
+ const tag = schema.tags.find(tag => (tag.default === true || (atKey && tag.default === 'key')) &&
74
+ tag.test?.test(value)) || schema[identity.SCALAR];
75
+ if (schema.compat) {
76
+ const compat = schema.compat.find(tag => tag.default && tag.test?.test(value)) ??
77
+ schema[identity.SCALAR];
78
+ if (tag.tag !== compat.tag) {
79
+ const ts = directives.tagString(tag.tag);
80
+ const cs = directives.tagString(compat.tag);
81
+ const msg = `Value may be parsed as either ${ts} or ${cs}`;
82
+ onError(token, 'TAG_RESOLVE_FAILED', msg, true);
83
+ }
84
+ }
85
+ return tag;
86
+ }
87
+
88
+ exports.composeScalar = composeScalar;
@@ -0,0 +1,63 @@
1
+ import { Directives } from '../doc/directives';
2
+ import { Document } from '../doc/Document';
3
+ import type { ErrorCode } from '../errors';
4
+ import { YAMLParseError, YAMLWarning } from '../errors';
5
+ import type { ParsedNode, Range } from '../nodes/Node';
6
+ import type { DocumentOptions, ParseOptions, SchemaOptions } from '../options';
7
+ import type { Token } from '../parse/cst';
8
+ type ErrorSource = number | [number, number] | Range | {
9
+ offset: number;
10
+ source?: string;
11
+ };
12
+ export type ComposeErrorHandler = (source: ErrorSource, code: ErrorCode, message: string, warning?: boolean) => void;
13
+ /**
14
+ * Compose a stream of CST nodes into a stream of YAML Documents.
15
+ *
16
+ * ```ts
17
+ * import { Composer, Parser } from 'yaml'
18
+ *
19
+ * const src: string = ...
20
+ * const tokens = new Parser().parse(src)
21
+ * const docs = new Composer().compose(tokens)
22
+ * ```
23
+ */
24
+ export declare class Composer<Contents extends ParsedNode = ParsedNode, Strict extends boolean = true> {
25
+ private directives;
26
+ private doc;
27
+ private options;
28
+ private atDirectives;
29
+ private prelude;
30
+ private errors;
31
+ private warnings;
32
+ constructor(options?: ParseOptions & DocumentOptions & SchemaOptions);
33
+ private onError;
34
+ private decorate;
35
+ /**
36
+ * Current stream status information.
37
+ *
38
+ * Mostly useful at the end of input for an empty stream.
39
+ */
40
+ streamInfo(): {
41
+ comment: string;
42
+ directives: Directives;
43
+ errors: YAMLParseError[];
44
+ warnings: YAMLWarning[];
45
+ };
46
+ /**
47
+ * Compose tokens into documents.
48
+ *
49
+ * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
50
+ * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
51
+ */
52
+ compose(tokens: Iterable<Token>, forceDoc?: boolean, endOffset?: number): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
53
+ /** Advance the composer by one CST token. */
54
+ next(token: Token): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
55
+ /**
56
+ * Call at end of input to yield any remaining document.
57
+ *
58
+ * @param forceDoc - If the stream contains no document, still emit a final document including any comments and directives that would be applied to a subsequent document.
59
+ * @param endOffset - Should be set if `forceDoc` is also set, to set the document range end and to indicate errors correctly.
60
+ */
61
+ end(forceDoc?: boolean, endOffset?: number): Generator<Document.Parsed<Contents, Strict>, void, unknown>;
62
+ }
63
+ export {};