@zaip-ai/cli 1.3.8 → 1.4.2

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 (317) hide show
  1. package/README.md +58 -3
  2. package/dist/commands/init.d.ts +1 -0
  3. package/dist/commands/init.d.ts.map +1 -1
  4. package/dist/commands/init.js +17 -6
  5. package/dist/commands/init.js.map +1 -1
  6. package/dist/index.d.ts +1 -0
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +2 -0
  9. package/dist/index.js.map +1 -1
  10. package/dist/services/adapters.js +4 -4
  11. package/dist/services/adapters.js.map +1 -1
  12. package/dist/services/codex-config-template.d.ts +2 -2
  13. package/dist/services/codex-config-template.d.ts.map +1 -1
  14. package/dist/services/codex-config-template.js +3 -3
  15. package/dist/services/codex-config-template.js.map +1 -1
  16. package/dist/services/codex-rules.d.ts +1 -1
  17. package/dist/services/codex-rules.d.ts.map +1 -1
  18. package/dist/services/codex-rules.js +9 -24
  19. package/dist/services/codex-rules.js.map +1 -1
  20. package/dist/services/delivery-git-preflight.d.ts +23 -0
  21. package/dist/services/delivery-git-preflight.d.ts.map +1 -0
  22. package/dist/services/delivery-git-preflight.js +69 -0
  23. package/dist/services/delivery-git-preflight.js.map +1 -0
  24. package/dist/services/doctor.d.ts.map +1 -1
  25. package/dist/services/doctor.js +13 -1
  26. package/dist/services/doctor.js.map +1 -1
  27. package/dist/services/install-agents-template.d.ts.map +1 -1
  28. package/dist/services/install-agents-template.js +22 -28
  29. package/dist/services/install-agents-template.js.map +1 -1
  30. package/dist/services/install-profile.d.ts +8 -0
  31. package/dist/services/install-profile.d.ts.map +1 -0
  32. package/dist/services/install-profile.js +56 -0
  33. package/dist/services/install-profile.js.map +1 -0
  34. package/dist/services/logger.d.ts.map +1 -1
  35. package/dist/services/logger.js +6 -5
  36. package/dist/services/logger.js.map +1 -1
  37. package/dist/services/stack-git.d.ts +9 -0
  38. package/dist/services/stack-git.d.ts.map +1 -0
  39. package/dist/services/stack-git.js +188 -0
  40. package/dist/services/stack-git.js.map +1 -0
  41. package/dist/services/stack-plan.d.ts +3 -1
  42. package/dist/services/stack-plan.d.ts.map +1 -1
  43. package/dist/services/stack-plan.js +15 -1
  44. package/dist/services/stack-plan.js.map +1 -1
  45. package/dist/services/stack-terraform.d.ts +13 -0
  46. package/dist/services/stack-terraform.d.ts.map +1 -0
  47. package/dist/services/stack-terraform.js +274 -0
  48. package/dist/services/stack-terraform.js.map +1 -0
  49. package/dist/services/template-manifest.d.ts.map +1 -1
  50. package/dist/services/template-manifest.js +14 -1
  51. package/dist/services/template-manifest.js.map +1 -1
  52. package/dist/types.d.ts +1 -0
  53. package/dist/types.d.ts.map +1 -1
  54. package/package.json +1 -1
  55. package/templates/.agents/.env.example +34 -0
  56. package/templates/{README.md → .agents/README.md} +124 -60
  57. package/templates/.agents/config/agents/catalog.yaml +23 -23
  58. package/templates/.agents/config/clients/codex/agents/zaip-agent-analyst.toml +1 -0
  59. package/templates/.agents/config/clients/codex/agents/zaip-agent-auditor.toml +1 -0
  60. package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.toml +5 -4
  61. package/templates/.agents/config/clients/codex/agents/zaip-agent-brand-strategist.toml +1 -0
  62. package/templates/.agents/config/clients/codex/agents/zaip-agent-builder.toml +1 -0
  63. package/templates/.agents/config/clients/codex/agents/zaip-agent-cloud-engineer.toml +10 -7
  64. package/templates/.agents/config/clients/codex/agents/zaip-agent-data-analyst.toml +1 -0
  65. package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +1 -0
  66. package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +1 -0
  67. package/templates/.agents/config/clients/codex/agents/zaip-agent-frontend.toml +5 -4
  68. package/templates/.agents/config/clients/codex/agents/zaip-agent-general-operations.toml +1 -0
  69. package/templates/.agents/config/clients/codex/agents/zaip-agent-governance-compliance.toml +1 -0
  70. package/templates/.agents/config/clients/codex/agents/zaip-agent-growth-strategist.toml +1 -0
  71. package/templates/.agents/config/clients/codex/agents/zaip-agent-integrator.toml +1 -0
  72. package/templates/.agents/config/clients/codex/agents/zaip-agent-marketing-analyst.toml +5 -4
  73. package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +1 -0
  74. package/templates/.agents/config/clients/codex/agents/zaip-agent-refactoring-specialist.toml +1 -0
  75. package/templates/.agents/config/clients/codex/agents/zaip-agent-reviewer.toml +1 -0
  76. package/templates/.agents/config/clients/codex/agents/zaip-agent-sales-specialist.toml +1 -0
  77. package/templates/.agents/config/clients/codex/agents/zaip-agent-security-auditor.toml +1 -0
  78. package/templates/.agents/config/clients/codex/agents/zaip-agent-task-executor.toml +1 -0
  79. package/templates/.agents/config/clients/codex/agents/zaip-agent-website-developer.toml +5 -4
  80. package/templates/.agents/config/clients/codex/agents/zaip-agent-writer.toml +1 -0
  81. package/templates/.agents/config/pricing/models.json +25 -1
  82. package/templates/.agents/config/project.yaml +2 -0
  83. package/templates/.agents/dashboard/.zaip-managed.json +208 -88
  84. package/templates/.agents/dashboard/DATA-DICTIONARY.md +1 -1
  85. package/templates/.agents/dashboard/README.md +58 -19
  86. package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-DwVZOmMV.js → CostCalculationGuidePage-snUCQYTC.js} +1 -1
  87. package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-VcLx9iOO.js → DashboardHelpDialog-oZVlf-l5.js} +72 -8
  88. package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-CyjMXkm8.js → PricingSettingsDialog-BPtVUGgs.js} +1 -1
  89. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-3Awyaovx.js +3 -0
  90. package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-DFZwIXSC.js → TraceabilityWorkspace-BYjVOHI_.js} +1 -1
  91. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-DbaLbU2q.js +68 -0
  92. package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-DXBOtWNI.js → icons-vendor-TPUT2IUt.js} +1 -1
  93. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-Cmlx8OYH.css +1 -0
  94. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-ZJFXmK7m.js +2 -0
  95. package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-DaNXQPyk.js → react-vendor-Ct48XHGL.js} +1 -1
  96. package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-I4AKqVDX.js → traceability-BDe4_Ubl.js} +1 -1
  97. package/templates/.agents/dashboard/apps/frontend/dist/index.html +6 -6
  98. package/templates/.agents/dashboard/apps/frontend/src/App.tsx +73 -67
  99. package/templates/.agents/dashboard/apps/frontend/src/AppLoadingBoundary.tsx +35 -7
  100. package/templates/.agents/dashboard/apps/frontend/src/AppWorkBoard.ts +55 -0
  101. package/templates/.agents/dashboard/apps/frontend/src/ProjectStackEditor.tsx +11 -0
  102. package/templates/.agents/dashboard/apps/frontend/src/app-loading-boundary.css +98 -0
  103. package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +5 -5
  104. package/templates/.agents/dashboard/apps/frontend/src/dashboard-api-reconciliation.ts +33 -0
  105. package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +75 -0
  106. package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +7 -8
  107. package/templates/.agents/dashboard/apps/frontend/src/project-settings-model.ts +14 -2
  108. package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +35 -0
  109. package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +78 -2
  110. package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +28 -0
  111. package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +8 -5
  112. package/templates/.agents/dashboard/apps/frontend/src/use-app-effects.ts +180 -1
  113. package/templates/.agents/dashboard/modules/cost-monitor/src/contracts.ts +7 -4
  114. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +13 -7
  115. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +14 -0
  116. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableDisplay.ts +211 -0
  117. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +152 -157
  118. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.tsx +155 -142
  119. package/templates/.agents/dashboard/modules/cost-monitor/src/react/InvocationManifestQuery.test.ts +145 -0
  120. package/templates/.agents/dashboard/modules/cost-monitor/src/react/period-cost-groups.ts +7 -5
  121. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-compact-cost-page.ts +4 -1
  122. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +4 -1
  123. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-run-page.ts +4 -1
  124. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +4 -4
  125. package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +79 -1
  126. package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +105 -11
  127. package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +482 -332
  128. package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +430 -285
  129. package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-runtime.mjs +14 -2
  130. package/templates/.agents/dashboard/packages/local-runtime/scripts/rebuild-sqlite-read-model.mjs +6 -26
  131. package/templates/.agents/dashboard/packages/local-runtime/scripts/validate-sqlite-read-model.mjs +1 -1
  132. package/templates/.agents/dashboard/packages/local-runtime/scripts/verify-persistent-launch.mjs +268 -0
  133. package/templates/.agents/dashboard/packages/local-runtime/server.mjs +482 -332
  134. package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.test.ts +90 -1
  135. package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +112 -22
  136. package/templates/.agents/dashboard/packages/local-runtime/src/server-agent-assets.ts +39 -0
  137. package/templates/.agents/dashboard/packages/local-runtime/src/server-browser-lease.ts +33 -0
  138. package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-refresh.test.ts +148 -11
  139. package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-result.test.ts +68 -0
  140. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.test.ts +19 -0
  141. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.ts +39 -43
  142. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-revision.test.ts +42 -0
  143. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-revision.ts +26 -0
  144. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-synchronization.ts +34 -0
  145. package/templates/.agents/dashboard/packages/local-runtime/src/server-startup.ts +30 -0
  146. package/templates/.agents/dashboard/packages/local-runtime/src/server-work-reconciliation.test.ts +89 -0
  147. package/templates/.agents/dashboard/packages/local-runtime/src/server-work-reconciliation.ts +88 -0
  148. package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +68 -7
  149. package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +11 -5
  150. package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +129 -99
  151. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-agent-productivity.test.ts +111 -0
  152. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-agent-productivity.ts +140 -0
  153. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.test.ts +127 -4
  154. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.ts +145 -5
  155. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-aggregates.ts +156 -23
  156. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-projection.ts +18 -9
  157. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-projection.ts +52 -0
  158. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-persistence.ts +35 -13
  159. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-force-canonical.test.ts +56 -0
  160. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-cache.test.ts +29 -0
  161. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-cache.ts +136 -0
  162. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-refresh.test.ts +251 -0
  163. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-projection.ts +22 -7
  164. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-cache.test-support.ts +1 -1
  165. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-canonical-parsing.ts +42 -0
  166. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-canonical.ts +793 -0
  167. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-duration.test.ts +270 -0
  168. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-fixture.ts +3 -2
  169. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider.test.ts +18 -4
  170. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.test.ts +87 -0
  171. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.ts +105 -16
  172. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.test.ts +131 -59
  173. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.ts +1000 -1115
  174. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-cache.ts +13 -92
  175. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-claims.test.mjs +79 -0
  176. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.mjs +27 -0
  177. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-lifecycle.mjs +6 -6
  178. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-prerequisites.mjs +1 -1
  179. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-refresh.mjs +2 -10
  180. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-runtime-selection.mjs +36 -0
  181. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-runtime-selection.test.mjs +63 -0
  182. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-server.mjs +142 -0
  183. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.mjs +262 -267
  184. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +18 -29
  185. package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +6 -0
  186. package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
  187. package/templates/.agents/requirements/autonomous-assurance.md +1 -1
  188. package/templates/.agents/requirements/cloud-hostinger-autonomy.md +47 -0
  189. package/templates/.agents/requirements/comparative-audit.md +1 -1
  190. package/templates/.agents/requirements/context-engine.md +1 -1
  191. package/templates/.agents/requirements/cost-observability.md +1 -1
  192. package/templates/.agents/requirements/dashboard-launch.md +2 -2
  193. package/templates/.agents/requirements/data-export.md +1 -1
  194. package/templates/.agents/requirements/design-system.md +1 -1
  195. package/templates/.agents/requirements/execution-engine.md +1 -1
  196. package/templates/.agents/requirements/kanban-dashboard.md +1 -1
  197. package/templates/.agents/requirements/model-orchestration.md +1 -1
  198. package/templates/.agents/requirements/public-distribution.md +1 -1
  199. package/templates/.agents/requirements/software-architecture.md +1 -1
  200. package/templates/.agents/requirements/strategic-improvements.md +1 -1
  201. package/templates/.agents/requirements/work-lifecycle.md +1 -1
  202. package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
  203. package/templates/.agents/rules/autonomy-decision.md +1 -1
  204. package/templates/.agents/rules/cloud-hostinger-autonomy.md +21 -0
  205. package/templates/.agents/rules/core.md +5 -4
  206. package/templates/.agents/rules/local-sqlite-storage.md +18 -0
  207. package/templates/.agents/rules/meta-mcp.md +21 -0
  208. package/templates/.agents/rules/workflow.md +1 -0
  209. package/templates/.agents/runtime/bin/zaip.mjs +305 -137
  210. package/templates/.agents/runtime/checksums.sha256 +2 -2
  211. package/templates/.agents/runtime/provenance.json +2 -2
  212. package/templates/.agents/skills/zaip-skill-api-to-mcp/SKILL.md +4 -0
  213. package/templates/.agents/skills/zaip-skill-brand-governance/SKILL.md +25 -9
  214. package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-framework.md +2 -2
  215. package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-standards.md +2 -2
  216. package/templates/.agents/skills/zaip-skill-change/references/observable-evidence.md +15 -0
  217. package/templates/.agents/skills/zaip-skill-dashboard-sqlite/SKILL.md +13 -5
  218. package/templates/.agents/skills/zaip-skill-data-analyst/SKILL.md +10 -5
  219. package/templates/.agents/skills/zaip-skill-execution/SKILL.md +5 -4
  220. package/templates/.agents/skills/zaip-skill-frontend-launcher/SKILL.md +4 -3
  221. package/templates/.agents/skills/zaip-skill-frontend-launcher/references/launcher-contract.md +5 -3
  222. package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +5 -5
  223. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.mjs +78 -13
  224. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.test.mjs +59 -0
  225. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/yaml-parser.mjs +157 -0
  226. package/templates/.agents/skills/zaip-skill-growth-strategy-revops/SKILL.md +11 -6
  227. package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/SKILL.md +17 -0
  228. package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/agents/openai.yaml +7 -0
  229. package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-cloud-inputs.example.json +41 -0
  230. package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-runner.md +84 -0
  231. package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/operational-contract.md +19 -0
  232. package/templates/.agents/skills/zaip-skill-local-credentials/SKILL.md +43 -0
  233. package/templates/.agents/skills/zaip-skill-local-credentials/agents/openai.yaml +6 -0
  234. package/templates/.agents/skills/zaip-skill-local-credentials/references/dotenv-resolution.md +47 -0
  235. package/templates/.agents/skills/zaip-skill-marketing/SKILL.md +8 -3
  236. package/templates/.agents/skills/zaip-skill-meta-ads/SKILL.md +16 -0
  237. package/templates/.agents/skills/zaip-skill-meta-ads/agents/openai.yaml +4 -0
  238. package/templates/.agents/skills/zaip-skill-meta-ads/references/setup.md +3 -0
  239. package/templates/.agents/skills/zaip-skill-meta-ads-setup/SKILL.md +24 -0
  240. package/templates/.agents/skills/zaip-skill-meta-ads-setup/agents/openai.yaml +4 -0
  241. package/templates/.agents/skills/zaip-skill-meta-ads-setup/references/diagnostics.md +13 -0
  242. package/templates/.agents/skills/zaip-skill-meta-ads-setup/references/official-sources.md +10 -0
  243. package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/SKILL.md +12 -0
  244. package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/agents/openai.yaml +4 -0
  245. package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/references/LICENSE +21 -0
  246. package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/references/upstream.md +77 -0
  247. package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/SKILL.md +12 -0
  248. package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/agents/openai.yaml +4 -0
  249. package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/references/LICENSE +21 -0
  250. package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/references/upstream.md +126 -0
  251. package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/SKILL.md +12 -0
  252. package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/agents/openai.yaml +4 -0
  253. package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/references/LICENSE +21 -0
  254. package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/references/upstream.md +67 -0
  255. package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/SKILL.md +12 -0
  256. package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/agents/openai.yaml +4 -0
  257. package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/references/LICENSE +21 -0
  258. package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/references/upstream.md +69 -0
  259. package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/SKILL.md +12 -0
  260. package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/agents/openai.yaml +4 -0
  261. package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/references/LICENSE +21 -0
  262. package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/references/upstream.md +79 -0
  263. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/SKILL.md +14 -0
  264. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/agents/openai.yaml +4 -0
  265. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/references/LICENSE +21 -0
  266. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/references/upstream.md +144 -0
  267. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/SKILL.md +12 -0
  268. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/agents/openai.yaml +4 -0
  269. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/references/LICENSE +21 -0
  270. package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/references/upstream.md +83 -0
  271. package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/SKILL.md +10 -0
  272. package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/agents/openai.yaml +4 -0
  273. package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/LICENSE +21 -0
  274. package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/setup.md +11 -0
  275. package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/upstream.md +55 -0
  276. package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/SKILL.md +12 -0
  277. package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/agents/openai.yaml +4 -0
  278. package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/references/LICENSE +21 -0
  279. package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/references/upstream.md +56 -0
  280. package/templates/.agents/skills/zaip-skill-sales-methodology/SKILL.md +12 -7
  281. package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +11 -4
  282. package/templates/.agents/skills/zaip-skill-tool-setup/SKILL.md +6 -4
  283. package/templates/.agents/skills/zaip-skill-tool-setup/references/codex-config.md +4 -2
  284. package/templates/.agents/skills/zaip-skill-tool-setup/references/secrets.md +1 -0
  285. package/templates/.agents/tools/catalog.yaml +6 -0
  286. package/templates/.agents/tools/cloud-runner-dns.mjs +28 -0
  287. package/templates/.agents/tools/cloud-runner-terraform.mjs +212 -0
  288. package/templates/.agents/tools/cloud-runner.integration.test.mjs +239 -0
  289. package/templates/.agents/tools/cloud-runner.mjs +786 -0
  290. package/templates/.agents/tools/cloud-runner.test.mjs +534 -0
  291. package/templates/.agents/tools/cloud-terraform-plan-policy.mjs +262 -0
  292. package/templates/.agents/tools/mcp/development/meta-devtools/README.md +14 -0
  293. package/templates/.agents/tools/mcp/development/meta-devtools/manifest.yaml +28 -0
  294. package/templates/.agents/tools/mcp/infra/cloudflare/manifest.yaml +2 -3
  295. package/templates/.agents/tools/mcp/infra/hostinger/manifest.yaml +1 -3
  296. package/templates/.agents/tools/mcp/marketing/meta-ads/README.md +15 -13
  297. package/templates/.agents/tools/mcp/marketing/meta-ads/manifest.yaml +15 -10
  298. package/templates/.agents/tools/profiles/development.yaml +3 -0
  299. package/templates/infra/terraform/.terraform.lock.hcl +42 -0
  300. package/templates/infra/terraform/README.md +31 -0
  301. package/templates/infra/terraform/backend.tf.json +13 -0
  302. package/templates/infra/terraform/deployment-inputs.example.yaml +22 -0
  303. package/templates/infra/terraform/fixtures/approved-targets.json +32 -0
  304. package/templates/infra/terraform/fixtures/plan-approved.json +67 -0
  305. package/templates/infra/terraform/main.tf +77 -0
  306. package/templates/infra/terraform/outputs.tf +20 -0
  307. package/templates/infra/terraform/terraform.tfvars.example +26 -0
  308. package/templates/infra/terraform/variables.tf +91 -0
  309. package/templates/infra/terraform/versions.tf +18 -0
  310. package/templates/scripts/validate-cloud-hostinger-contract.mjs +89 -0
  311. package/templates/scripts/validate-cloud-terraform-plan.mjs +1 -0
  312. package/templates/template-manifest.json +607 -167
  313. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BwnJpl02.js +0 -3
  314. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-C09KmlSw.js +0 -68
  315. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-Dyo_wpL4.js +0 -2
  316. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-hPPfVGQv.css +0 -1
  317. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-stale-seed.ts +0 -50
@@ -0,0 +1,157 @@
1
+ // Generated by scripts/build-deploy-yaml.mjs; do not edit.
2
+ /*
3
+ Copyright Eemeli Aro <eemeli@gmail.com>
4
+
5
+ Permission to use, copy, modify, and/or distribute this software for any purpose
6
+ with or without fee is hereby granted, provided that the above copyright notice
7
+ and this permission notice appear in all copies.
8
+
9
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
10
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
11
+ FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
12
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
13
+ OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
14
+ TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
15
+ THIS SOFTWARE.
16
+
17
+ */
18
+ import { createRequire } from "node:module"; const require = createRequire(import.meta.url);
19
+ var ba=Object.create;var Li=Object.defineProperty;var Sa=Object.getOwnPropertyDescriptor;var wa=Object.getOwnPropertyNames;var va=Object.getPrototypeOf,ka=Object.prototype.hasOwnProperty;var We=(s=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(s,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):s)(function(s){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+s+'" is not supported')});var g=(s,e)=>()=>{try{return e||s((e={exports:{}}).exports,e),e.exports}catch(t){throw e=0,t}};var Na=(s,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of wa(e))!ka.call(s,n)&&n!==t&&Li(s,n,{get:()=>e[n],enumerable:!(i=Sa(e,n))||i.enumerable});return s};var Aa=(s,e,t)=>(t=s!=null?ba(va(s)):{},Na(e||!s||!s.__esModule?Li(t,"default",{value:s,enumerable:!0}):t,s));var q=g(P=>{"use strict";var Qt=Symbol.for("yaml.alias"),Ei=Symbol.for("yaml.document"),Ge=Symbol.for("yaml.map"),Ti=Symbol.for("yaml.pair"),Wt=Symbol.for("yaml.scalar"),He=Symbol.for("yaml.seq"),F=Symbol.for("yaml.node.type"),qa=s=>!!s&&typeof s=="object"&&s[F]===Qt,Oa=s=>!!s&&typeof s=="object"&&s[F]===Ei,La=s=>!!s&&typeof s=="object"&&s[F]===Ge,Ea=s=>!!s&&typeof s=="object"&&s[F]===Ti,Ci=s=>!!s&&typeof s=="object"&&s[F]===Wt,Ta=s=>!!s&&typeof s=="object"&&s[F]===He;function Ii(s){if(s&&typeof s=="object")switch(s[F]){case Ge:case He:return!0}return!1}function Ca(s){if(s&&typeof s=="object")switch(s[F]){case Qt:case Ge:case Wt:case He:return!0}return!1}var Ia=s=>(Ci(s)||Ii(s))&&!!s.anchor;P.ALIAS=Qt;P.DOC=Ei;P.MAP=Ge;P.NODE_TYPE=F;P.PAIR=Ti;P.SCALAR=Wt;P.SEQ=He;P.hasAnchor=Ia;P.isAlias=qa;P.isCollection=Ii;P.isDocument=Oa;P.isMap=La;P.isNode=Ca;P.isPair=Ea;P.isScalar=Ci;P.isSeq=Ta});var ye=g(Gt=>{"use strict";var I=q(),M=Symbol("break visit"),Pi=Symbol("skip children"),K=Symbol("remove node");function Xe(s,e){let t=Mi(e);I.isDocument(s)?ae(null,s.contents,t,Object.freeze([s]))===K&&(s.contents=null):ae(null,s,t,Object.freeze([]))}Xe.BREAK=M;Xe.SKIP=Pi;Xe.REMOVE=K;function ae(s,e,t,i){let n=_i(s,e,t,i);if(I.isNode(n)||I.isPair(n))return $i(s,i,n),ae(s,n,t,i);if(typeof n!="symbol"){if(I.isCollection(e)){i=Object.freeze(i.concat(e));for(let r=0;r<e.items.length;++r){let a=ae(r,e.items[r],t,i);if(typeof a=="number")r=a-1;else{if(a===M)return M;a===K&&(e.items.splice(r,1),r-=1)}}}else if(I.isPair(e)){i=Object.freeze(i.concat(e));let r=ae("key",e.key,t,i);if(r===M)return M;r===K&&(e.key=null);let a=ae("value",e.value,t,i);if(a===M)return M;a===K&&(e.value=null)}}return n}async function xe(s,e){let t=Mi(e);I.isDocument(s)?await oe(null,s.contents,t,Object.freeze([s]))===K&&(s.contents=null):await oe(null,s,t,Object.freeze([]))}xe.BREAK=M;xe.SKIP=Pi;xe.REMOVE=K;async function oe(s,e,t,i){let n=await _i(s,e,t,i);if(I.isNode(n)||I.isPair(n))return $i(s,i,n),oe(s,n,t,i);if(typeof n!="symbol"){if(I.isCollection(e)){i=Object.freeze(i.concat(e));for(let r=0;r<e.items.length;++r){let a=await oe(r,e.items[r],t,i);if(typeof a=="number")r=a-1;else{if(a===M)return M;a===K&&(e.items.splice(r,1),r-=1)}}}else if(I.isPair(e)){i=Object.freeze(i.concat(e));let r=await oe("key",e.key,t,i);if(r===M)return M;r===K&&(e.key=null);let a=await oe("value",e.value,t,i);if(a===M)return M;a===K&&(e.value=null)}}return n}function Mi(s){return typeof s=="object"&&(s.Collection||s.Node||s.Value)?Object.assign({Alias:s.Node,Map:s.Node,Scalar:s.Node,Seq:s.Node},s.Value&&{Map:s.Value,Scalar:s.Value,Seq:s.Value},s.Collection&&{Map:s.Collection,Seq:s.Collection},s):s}function _i(s,e,t,i){if(typeof t=="function")return t(s,e,i);if(I.isMap(e))return t.Map?.(s,e,i);if(I.isSeq(e))return t.Seq?.(s,e,i);if(I.isPair(e))return t.Pair?.(s,e,i);if(I.isScalar(e))return t.Scalar?.(s,e,i);if(I.isAlias(e))return t.Alias?.(s,e,i)}function $i(s,e,t){let i=e[e.length-1];if(I.isCollection(i))i.items[s]=t;else if(I.isPair(i))s==="key"?i.key=t:i.value=t;else if(I.isDocument(i))i.contents=t;else{let n=I.isAlias(i)?"alias":"scalar";throw new Error(`Cannot replace node with ${n} parent`)}}Gt.visit=Xe;Gt.visitAsync=xe});var Ht=g(Bi=>{"use strict";var Di=q(),Pa=ye(),Ma={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},_a=s=>s.replace(/[!,[\]{}]/g,e=>Ma[e]),be=class s{constructor(e,t){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},s.defaultYaml,e),this.tags=Object.assign({},s.defaultTags,t)}clone(){let e=new s(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new s(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:s.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},s.defaultTags);break}return e}add(e,t){this.atNextDocument&&(this.yaml={explicit:s.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},s.defaultTags),this.atNextDocument=!1);let i=e.trim().split(/[ \t]+/),n=i.shift();switch(n){case"%TAG":{if(i.length!==2&&(t(0,"%TAG directive should contain exactly two parts"),i.length<2))return!1;let[r,a]=i;return this.tags[r]=a,!0}case"%YAML":{if(this.yaml.explicit=!0,i.length!==1)return t(0,"%YAML directive should contain exactly one part"),!1;let[r]=i;if(r==="1.1"||r==="1.2")return this.yaml.version=r,!0;{let a=/^\d+\.\d+$/.test(r);return t(6,`Unsupported YAML version ${r}`,a),!1}}default:return t(0,`Unknown directive ${n}`,!0),!1}}tagName(e,t){if(e==="!")return"!";if(e[0]!=="!")return t(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let a=e.slice(2,-1);return a==="!"||a==="!!"?(t(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&t("Verbatim tags must end with a >"),a)}let[,i,n]=e.match(/^(.*!)([^!]*)$/s);n||t(`The ${e} tag has no suffix`);let r=this.tags[i];if(r)try{return r+decodeURIComponent(n)}catch(a){return t(String(a)),null}return i==="!"?e:(t(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[t,i]of Object.entries(this.tags))if(e.startsWith(i))return t+_a(e.substring(i.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let t=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],i=Object.entries(this.tags),n;if(e&&i.length>0&&Di.isNode(e.contents)){let r={};Pa.visit(e.contents,(a,o)=>{Di.isNode(o)&&o.tag&&(r[o.tag]=!0)}),n=Object.keys(r)}else n=[];for(let[r,a]of i)r==="!!"&&a==="tag:yaml.org,2002:"||(!e||n.some(o=>o.startsWith(a)))&&t.push(`%TAG ${r} ${a}`);return t.join(`
20
+ `)}};be.defaultYaml={explicit:!1,version:"1.2"};be.defaultTags={"!!":"tag:yaml.org,2002:"};Bi.Directives=be});var ze=g(Se=>{"use strict";var Ki=q(),$a=ye();function Da(s){if(/[\x00-\x19\s,[\]{}]/.test(s)){let t=`Anchor must not contain whitespace or control characters: ${JSON.stringify(s)}`;throw new Error(t)}return!0}function ji(s){let e=new Set;return $a.visit(s,{Value(t,i){i.anchor&&e.add(i.anchor)}}),e}function Fi(s,e){for(let t=1;;++t){let i=`${s}${t}`;if(!e.has(i))return i}}function Ba(s,e){let t=[],i=new Map,n=null;return{onAnchor:r=>{t.push(r),n??(n=ji(s));let a=Fi(e,n);return n.add(a),a},setAnchors:()=>{for(let r of t){let a=i.get(r);if(typeof a=="object"&&a.anchor&&(Ki.isScalar(a.node)||Ki.isCollection(a.node)))a.node.anchor=a.anchor;else{let o=new Error("Failed to resolve repeated object (this should not happen)");throw o.source=r,o}}},sourceObjects:i}}Se.anchorIsValid=Da;Se.anchorNames=ji;Se.createNodeAnchors=Ba;Se.findNewAnchor=Fi});var Xt=g(Ri=>{"use strict";function we(s,e,t,i){if(i&&typeof i=="object")if(Array.isArray(i))for(let n=0,r=i.length;n<r;++n){let a=i[n],o=we(s,i,String(n),a);o===void 0?delete i[n]:o!==a&&(i[n]=o)}else if(i instanceof Map)for(let n of Array.from(i.keys())){let r=i.get(n),a=we(s,i,n,r);a===void 0?i.delete(n):a!==r&&i.set(n,a)}else if(i instanceof Set)for(let n of Array.from(i)){let r=we(s,i,n,n);r===void 0?i.delete(n):r!==n&&(i.delete(n),i.add(r))}else for(let[n,r]of Object.entries(i)){let a=we(s,i,n,r);a===void 0?delete i[n]:a!==r&&(i[n]=a)}return s.call(e,t,i)}Ri.applyReviver=we});var Y=g(Yi=>{"use strict";var Ka=q();function Ui(s,e,t){if(Array.isArray(s))return s.map((i,n)=>Ui(i,String(n),t));if(s&&typeof s.toJSON=="function"){if(!t||!Ka.hasAnchor(s))return s.toJSON(e,t);let i={aliasCount:0,count:1,res:void 0};t.anchors.set(s,i),t.onCreate=r=>{i.res=r,delete t.onCreate};let n=s.toJSON(e,t);return t.onCreate&&t.onCreate(n),n}return typeof s=="bigint"&&!t?.keep?Number(s):s}Yi.toJS=Ui});var Ze=g(Ji=>{"use strict";var ja=Xt(),Vi=q(),Fa=Y(),xt=class{constructor(e){Object.defineProperty(this,Vi.NODE_TYPE,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:t,maxAliasCount:i,onAnchor:n,reviver:r}={}){if(!Vi.isDocument(e))throw new TypeError("A document argument is required");let a={anchors:new Map,doc:e,keep:!0,mapAsMap:t===!0,mapKeyWarned:!1,maxAliasCount:typeof i=="number"?i:100},o=Fa.toJS(this,"",a);if(typeof n=="function")for(let{count:l,res:c}of a.anchors.values())n(c,l);return typeof r=="function"?ja.applyReviver(r,{"":o},"",o):o}};Ji.NodeBase=xt});var ve=g(Qi=>{"use strict";var Ra=ze(),Ua=ye(),le=q(),Ya=Ze(),Va=Y(),zt=class extends Ya.NodeBase{constructor(e){super(le.ALIAS),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e,t){if(t?.maxAliasCount===0)throw new ReferenceError("Alias resolution is disabled");let i;t?.aliasResolveCache?i=t.aliasResolveCache:(i=[],Ua.visit(e,{Node:(r,a)=>{(le.isAlias(a)||le.hasAnchor(a))&&i.push(a)}}),t&&(t.aliasResolveCache=i));let n;for(let r of i){if(r===this)break;r.anchor===this.source&&(n=r)}return n}toJSON(e,t){if(!t)return{source:this.source};let{anchors:i,doc:n,maxAliasCount:r}=t,a=this.resolve(n,t);if(!a){let l=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(l)}let o=i.get(a);if(o||(Va.toJS(a,null,t),o=i.get(a)),o?.res===void 0){let l="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(l)}if(r>=0&&(o.count+=1,o.aliasCount===0&&(o.aliasCount=et(n,a,i)),o.count*o.aliasCount>r)){let l="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(l)}return o.res}toString(e,t,i){let n=`*${this.source}`;if(e){if(Ra.anchorIsValid(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let r=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(r)}if(e.implicitKey)return`${n} `}return n}};function et(s,e,t){if(le.isAlias(e)){let i=e.resolve(s),n=t&&i&&t.get(i);return n?n.count*n.aliasCount:0}else if(le.isCollection(e)){let i=0;for(let n of e.items){let r=et(s,n,t);r>i&&(i=r)}return i}else if(le.isPair(e)){let i=et(s,e.key,t),n=et(s,e.value,t);return Math.max(i,n)}return 1}Qi.Alias=zt});var E=g(Zt=>{"use strict";var Ja=q(),Qa=Ze(),Wa=Y(),Ga=s=>!s||typeof s!="function"&&typeof s!="object",V=class extends Qa.NodeBase{constructor(e){super(Ja.SCALAR),this.value=e}toJSON(e,t){return t?.keep?this.value:Wa.toJS(this.value,e,t)}toString(){return String(this.value)}};V.BLOCK_FOLDED="BLOCK_FOLDED";V.BLOCK_LITERAL="BLOCK_LITERAL";V.PLAIN="PLAIN";V.QUOTE_DOUBLE="QUOTE_DOUBLE";V.QUOTE_SINGLE="QUOTE_SINGLE";Zt.Scalar=V;Zt.isScalarValue=Ga});var ke=g(Gi=>{"use strict";var Ha=ve(),Z=q(),Wi=E(),Xa="tag:yaml.org,2002:";function xa(s,e,t){if(e){let i=t.filter(r=>r.tag===e),n=i.find(r=>!r.format)??i[0];if(!n)throw new Error(`Tag ${e} not found`);return n}return t.find(i=>i.identify?.(s)&&!i.format)}function za(s,e,t){if(Z.isDocument(s)&&(s=s.contents),Z.isNode(s))return s;if(Z.isPair(s)){let f=t.schema[Z.MAP].createNode?.(t.schema,null,t);return f.items.push(s),f}(s instanceof String||s instanceof Number||s instanceof Boolean||typeof BigInt<"u"&&s instanceof BigInt)&&(s=s.valueOf());let{aliasDuplicateObjects:i,onAnchor:n,onTagObj:r,schema:a,sourceObjects:o}=t,l;if(i&&s&&typeof s=="object"){if(l=o.get(s),l)return l.anchor??(l.anchor=n(s)),new Ha.Alias(l.anchor);l={anchor:null,node:null},o.set(s,l)}e?.startsWith("!!")&&(e=Xa+e.slice(2));let c=xa(s,e,a.tags);if(!c){if(s&&typeof s.toJSON=="function"&&(s=s.toJSON()),!s||typeof s!="object"){let f=new Wi.Scalar(s);return l&&(l.node=f),f}c=s instanceof Map?a[Z.MAP]:Symbol.iterator in Object(s)?a[Z.SEQ]:a[Z.MAP]}r&&(r(c),delete t.onTagObj);let d=c?.createNode?c.createNode(t.schema,s,t):typeof c?.nodeClass?.from=="function"?c.nodeClass.from(t.schema,s,t):new Wi.Scalar(s);return e?d.tag=e:c.default||(d.tag=c.tag),l&&(l.node=d),d}Gi.createNode=za});var st=g(tt=>{"use strict";var Za=ke(),j=q(),eo=Ze();function es(s,e,t){let i=t;for(let n=e.length-1;n>=0;--n){let r=e[n];if(typeof r=="number"&&Number.isInteger(r)&&r>=0){let a=[];a[r]=i,i=a}else i=new Map([[r,i]])}return Za.createNode(i,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:s,sourceObjects:new Map})}var Hi=s=>s==null||typeof s=="object"&&!!s[Symbol.iterator]().next().done,ts=class extends eo.NodeBase{constructor(e,t){super(e),Object.defineProperty(this,"schema",{value:t,configurable:!0,enumerable:!1,writable:!0})}clone(e){let t=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(t.schema=e),t.items=t.items.map(i=>j.isNode(i)||j.isPair(i)?i.clone(e):i),this.range&&(t.range=this.range.slice()),t}addIn(e,t){if(Hi(e))this.add(t);else{let[i,...n]=e,r=this.get(i,!0);if(j.isCollection(r))r.addIn(n,t);else if(r===void 0&&this.schema)this.set(i,es(this.schema,n,t));else throw new Error(`Expected YAML collection at ${i}. Remaining path: ${n}`)}}deleteIn(e){let[t,...i]=e;if(i.length===0)return this.delete(t);let n=this.get(t,!0);if(j.isCollection(n))return n.deleteIn(i);throw new Error(`Expected YAML collection at ${t}. Remaining path: ${i}`)}getIn(e,t){let[i,...n]=e,r=this.get(i,!0);return n.length===0?!t&&j.isScalar(r)?r.value:r:j.isCollection(r)?r.getIn(n,t):void 0}hasAllNullValues(e){return this.items.every(t=>{if(!j.isPair(t))return!1;let i=t.value;return i==null||e&&j.isScalar(i)&&i.value==null&&!i.commentBefore&&!i.comment&&!i.tag})}hasIn(e){let[t,...i]=e;if(i.length===0)return this.has(t);let n=this.get(t,!0);return j.isCollection(n)?n.hasIn(i):!1}setIn(e,t){let[i,...n]=e;if(n.length===0)this.set(i,t);else{let r=this.get(i,!0);if(j.isCollection(r))r.setIn(n,t);else if(r===void 0&&this.schema)this.set(i,es(this.schema,n,t));else throw new Error(`Expected YAML collection at ${i}. Remaining path: ${n}`)}}};tt.Collection=ts;tt.collectionFromPath=es;tt.isEmptyPath=Hi});var Ne=g(it=>{"use strict";var to=s=>s.replace(/^(?!$)(?: $)?/gm,"#");function ss(s,e){return/^\n+$/.test(s)?s.substring(1):e?s.replace(/^(?! *$)/gm,e):s}var so=(s,e,t)=>s.endsWith(`
21
+ `)?ss(t,e):t.includes(`
22
+ `)?`
23
+ `+ss(t,e):(s.endsWith(" ")?"":" ")+t;it.indentComment=ss;it.lineComment=so;it.stringifyComment=to});var xi=g(Ae=>{"use strict";var io="flow",is="block",nt="quoted";function no(s,e,t="flow",{indentAtStart:i,lineWidth:n=80,minContentWidth:r=20,onFold:a,onOverflow:o}={}){if(!n||n<0)return s;n<r&&(r=0);let l=Math.max(1+r,1+n-e.length);if(s.length<=l)return s;let c=[],d={},f=n-e.length;typeof i=="number"&&(i>n-Math.max(2,r)?c.push(0):f=n-i);let u,m,y=!1,h=-1,p=-1,S=-1;t===is&&(h=Xi(s,h,e.length),h!==-1&&(f=h+l));for(let v;v=s[h+=1];){if(t===nt&&v==="\\"){switch(p=h,s[h+1]){case"x":h+=3;break;case"u":h+=5;break;case"U":h+=9;break;default:h+=1}S=h}if(v===`
24
+ `)t===is&&(h=Xi(s,h,e.length)),f=h+e.length+l,u=void 0;else{if(v===" "&&m&&m!==" "&&m!==`
25
+ `&&m!==" "){let k=s[h+1];k&&k!==" "&&k!==`
26
+ `&&k!==" "&&(u=h)}if(h>=f)if(u)c.push(u),f=u+l,u=void 0;else if(t===nt){for(;m===" "||m===" ";)m=v,v=s[h+=1],y=!0;let k=h>S+1?h-2:p-1;if(d[k])return s;c.push(k),d[k]=!0,f=k+l,u=void 0}else y=!0}m=v}if(y&&o&&o(),c.length===0)return s;a&&a();let w=s.slice(0,c[0]);for(let v=0;v<c.length;++v){let k=c[v],N=c[v+1]||s.length;k===0?w=`
27
+ ${e}${s.slice(0,N)}`:(t===nt&&d[k]&&(w+=`${s[k]}\\`),w+=`
28
+ ${e}${s.slice(k+1,N)}`)}return w}function Xi(s,e,t){let i=e,n=e+1,r=s[n];for(;r===" "||r===" ";)if(e<n+t)r=s[++e];else{do r=s[++e];while(r&&r!==`
29
+ `);i=e,n=e+1,r=s[n]}return i}Ae.FOLD_BLOCK=is;Ae.FOLD_FLOW=io;Ae.FOLD_QUOTED=nt;Ae.foldFlowLines=no});var Oe=g(zi=>{"use strict";var D=E(),J=xi(),at=(s,e)=>({indentAtStart:e?s.indent.length:s.indentAtStart,lineWidth:s.options.lineWidth,minContentWidth:s.options.minContentWidth}),ot=s=>/^(%|---|\.\.\.)/m.test(s);function ro(s,e,t){if(!e||e<0)return!1;let i=e-t,n=s.length;if(n<=i)return!1;for(let r=0,a=0;r<n;++r)if(s[r]===`
30
+ `){if(r-a>i)return!0;if(a=r+1,n-a<=i)return!1}return!0}function qe(s,e){let t=JSON.stringify(s);if(e.options.doubleQuotedAsJSON)return t;let{implicitKey:i}=e,n=e.options.doubleQuotedMinMultiLineLength,r=e.indent||(ot(s)?" ":""),a="",o=0;for(let l=0,c=t[l];c;c=t[++l])if(c===" "&&t[l+1]==="\\"&&t[l+2]==="n"&&(a+=t.slice(o,l)+"\\ ",l+=1,o=l,c="\\"),c==="\\")switch(t[l+1]){case"u":{a+=t.slice(o,l);let d=t.substr(l+2,4);switch(d){case"0000":a+="\\0";break;case"0007":a+="\\a";break;case"000b":a+="\\v";break;case"001b":a+="\\e";break;case"0085":a+="\\N";break;case"00a0":a+="\\_";break;case"2028":a+="\\L";break;case"2029":a+="\\P";break;default:d.substr(0,2)==="00"?a+="\\x"+d.substr(2):a+=t.substr(l,6)}l+=5,o=l+1}break;case"n":if(i||t[l+2]==='"'||t.length<n)l+=1;else{for(a+=t.slice(o,l)+`
31
+
32
+ `;t[l+2]==="\\"&&t[l+3]==="n"&&t[l+4]!=='"';)a+=`
33
+ `,l+=2;a+=r,t[l+2]===" "&&(a+="\\"),l+=1,o=l+1}break;default:l+=1}return a=o?a+t.slice(o):t,i?a:J.foldFlowLines(a,r,J.FOLD_QUOTED,at(e,!1))}function ns(s,e){if(e.options.singleQuote===!1||e.implicitKey&&s.includes(`
34
+ `)||/[ \t]\n|\n[ \t]/.test(s))return qe(s,e);let t=e.indent||(ot(s)?" ":""),i="'"+s.replace(/'/g,"''").replace(/\n+/g,`$&
35
+ ${t}`)+"'";return e.implicitKey?i:J.foldFlowLines(i,t,J.FOLD_FLOW,at(e,!1))}function ce(s,e){let{singleQuote:t}=e.options,i;if(t===!1)i=qe;else{let n=s.includes('"'),r=s.includes("'");n&&!r?i=ns:r&&!n?i=qe:i=t?ns:qe}return i(s,e)}var rs;try{rs=new RegExp(`(^|(?<!
36
+ ))
37
+ +(?!
38
+ |$)`,"g")}catch{rs=/\n+(?!\n|$)/g}function rt({comment:s,type:e,value:t},i,n,r){let{blockQuote:a,commentString:o,lineWidth:l}=i.options;if(!a||/\n[\t ]+$/.test(t))return ce(t,i);let c=i.indent||(i.forceBlockIndent||ot(t)?" ":""),d=a==="literal"?!0:a==="folded"||e===D.Scalar.BLOCK_FOLDED?!1:e===D.Scalar.BLOCK_LITERAL?!0:!ro(t,l,c.length);if(!t)return d?`|
39
+ `:`>
40
+ `;let f,u;for(u=t.length;u>0;--u){let N=t[u-1];if(N!==`
41
+ `&&N!==" "&&N!==" ")break}let m=t.substring(u),y=m.indexOf(`
42
+ `);y===-1?f="-":t===m||y!==m.length-1?(f="+",r&&r()):f="",m&&(t=t.slice(0,-m.length),m[m.length-1]===`
43
+ `&&(m=m.slice(0,-1)),m=m.replace(rs,`$&${c}`));let h=!1,p,S=-1;for(p=0;p<t.length;++p){let N=t[p];if(N===" ")h=!0;else if(N===`
44
+ `)S=p;else break}let w=t.substring(0,S<p?S+1:p);w&&(t=t.substring(w.length),w=w.replace(/\n+/g,`$&${c}`));let k=(h?c?"2":"1":"")+f;if(s&&(k+=" "+o(s.replace(/ ?[\r\n]+/g," ")),n&&n()),!d){let N=t.replace(/\n+/g,`
45
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${c}`),A=!1,L=at(i,!0);a!=="folded"&&e!==D.Scalar.BLOCK_FOLDED&&(L.onOverflow=()=>{A=!0});let b=J.foldFlowLines(`${w}${N}${m}`,c,J.FOLD_BLOCK,L);if(!A)return`>${k}
46
+ ${c}${b}`}return t=t.replace(/\n+/g,`$&${c}`),`|${k}
47
+ ${c}${w}${t}${m}`}function ao(s,e,t,i){let{type:n,value:r}=s,{actualString:a,implicitKey:o,indent:l,indentStep:c,inFlow:d}=e;if(o&&r.includes(`
48
+ `)||d&&/[[\]{},]/.test(r))return ce(r,e);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(r))return o||d||!r.includes(`
49
+ `)?ce(r,e):rt(s,e,t,i);if(!o&&!d&&n!==D.Scalar.PLAIN&&r.includes(`
50
+ `))return rt(s,e,t,i);if(ot(r)){if(l==="")return e.forceBlockIndent=!0,rt(s,e,t,i);if(o&&l===c)return ce(r,e)}let f=r.replace(/\n+/g,`$&
51
+ ${l}`);if(a){let u=h=>h.default&&h.tag!=="tag:yaml.org,2002:str"&&h.test?.test(f),{compat:m,tags:y}=e.doc.schema;if(y.some(u)||m?.some(u))return ce(r,e)}return o?f:J.foldFlowLines(f,l,J.FOLD_FLOW,at(e,!1))}function oo(s,e,t,i){let{implicitKey:n,inFlow:r}=e,a=typeof s.value=="string"?s:Object.assign({},s,{value:String(s.value)}),{type:o}=s;o!==D.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(a.value)&&(o=D.Scalar.QUOTE_DOUBLE);let l=d=>{switch(d){case D.Scalar.BLOCK_FOLDED:case D.Scalar.BLOCK_LITERAL:return n||r?ce(a.value,e):rt(a,e,t,i);case D.Scalar.QUOTE_DOUBLE:return qe(a.value,e);case D.Scalar.QUOTE_SINGLE:return ns(a.value,e);case D.Scalar.PLAIN:return ao(a,e,t,i);default:return null}},c=l(o);if(c===null){let{defaultKeyType:d,defaultStringType:f}=e.options,u=n&&d||f;if(c=l(u),c===null)throw new Error(`Unsupported default string type ${u}`)}return c}zi.stringifyString=oo});var Le=g(as=>{"use strict";var lo=ze(),Q=q(),co=Ne(),fo=Oe();function uo(s,e){let t=Object.assign({blockQuote:!0,commentString:co.stringifyComment,defaultKeyType:null,defaultStringType:"PLAIN",directives:null,doubleQuotedAsJSON:!1,doubleQuotedMinMultiLineLength:40,falseStr:"false",flowCollectionPadding:!0,indentSeq:!0,lineWidth:80,minContentWidth:20,nullStr:"null",simpleKeys:!1,singleQuote:null,trailingComma:!1,trueStr:"true",verifyAliasOrder:!0},s.schema.toStringOptions,e),i;switch(t.collectionStyle){case"block":i=!1;break;case"flow":i=!0;break;default:i=null}return{anchors:new Set,doc:s,flowCollectionPadding:t.flowCollectionPadding?" ":"",indent:"",indentStep:typeof t.indent=="number"?" ".repeat(t.indent):" ",inFlow:i,options:t}}function ho(s,e){if(e.tag){let n=s.filter(r=>r.tag===e.tag);if(n.length>0)return n.find(r=>r.format===e.format)??n[0]}let t,i;if(Q.isScalar(e)){i=e.value;let n=s.filter(r=>r.identify?.(i));if(n.length>1){let r=n.filter(a=>a.test);r.length>0&&(n=r)}t=n.find(r=>r.format===e.format)??n.find(r=>!r.format)}else i=e,t=s.find(n=>n.nodeClass&&i instanceof n.nodeClass);if(!t){let n=i?.constructor?.name??(i===null?"null":typeof i);throw new Error(`Tag not resolved for ${n} value`)}return t}function po(s,e,{anchors:t,doc:i}){if(!i.directives)return"";let n=[],r=(Q.isScalar(s)||Q.isCollection(s))&&s.anchor;r&&lo.anchorIsValid(r)&&(t.add(r),n.push(`&${r}`));let a=s.tag??(e.default?null:e.tag);return a&&n.push(i.directives.tagString(a)),n.join(" ")}function mo(s,e,t,i){if(Q.isPair(s))return s.toString(e,t,i);if(Q.isAlias(s)){if(e.doc.directives)return s.toString(e);if(e.resolvedAliases?.has(s))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(s):e.resolvedAliases=new Set([s]),s=s.resolve(e.doc)}let n,r=Q.isNode(s)?s:e.doc.createNode(s,{onTagObj:l=>n=l});n??(n=ho(e.doc.schema.tags,r));let a=po(r,n,e);a.length>0&&(e.indentAtStart=(e.indentAtStart??0)+a.length+1);let o=typeof n.stringify=="function"?n.stringify(r,e,t,i):Q.isScalar(r)?fo.stringifyString(r,e,t,i):r.toString(e,t,i);return a?Q.isScalar(r)||o[0]==="{"||o[0]==="["?`${a} ${o}`:`${a}
52
+ ${e.indent}${o}`:o}as.createStringifyContext=uo;as.stringify=mo});var sn=g(tn=>{"use strict";var R=q(),Zi=E(),en=Le(),Ee=Ne();function go({key:s,value:e},t,i,n){let{allNullValues:r,doc:a,indent:o,indentStep:l,options:{commentString:c,indentSeq:d,simpleKeys:f}}=t,u=R.isNode(s)&&s.comment||null;if(f){if(u)throw new Error("With simple keys, key nodes cannot have comments");if(R.isCollection(s)||!R.isNode(s)&&typeof s=="object"){let L="With simple keys, collection cannot be used as a key value";throw new Error(L)}}let m=!f&&(!s||u&&e==null&&!t.inFlow||R.isCollection(s)||(R.isScalar(s)?s.type===Zi.Scalar.BLOCK_FOLDED||s.type===Zi.Scalar.BLOCK_LITERAL:typeof s=="object"));t=Object.assign({},t,{allNullValues:!1,implicitKey:!m&&(f||!r),indent:o+l});let y=!1,h=!1,p=en.stringify(s,t,()=>y=!0,()=>h=!0);if(!m&&!t.inFlow&&p.length>1024){if(f)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");m=!0}if(t.inFlow){if(r||e==null)return y&&i&&i(),p===""?"?":m?`? ${p}`:p}else if(r&&!f||e==null&&m)return p=`? ${p}`,u&&!y?p+=Ee.lineComment(p,t.indent,c(u)):h&&n&&n(),p;y&&(u=null),m?(u&&(p+=Ee.lineComment(p,t.indent,c(u))),p=`? ${p}
53
+ ${o}:`):(p=`${p}:`,u&&(p+=Ee.lineComment(p,t.indent,c(u))));let S,w,v;R.isNode(e)?(S=!!e.spaceBefore,w=e.commentBefore,v=e.comment):(S=!1,w=null,v=null,e&&typeof e=="object"&&(e=a.createNode(e))),t.implicitKey=!1,!m&&!u&&R.isScalar(e)&&(t.indentAtStart=p.length+1),h=!1,!d&&l.length>=2&&!t.inFlow&&!m&&R.isSeq(e)&&!e.flow&&!e.tag&&!e.anchor&&(t.indent=t.indent.substring(2));let k=!1,N=en.stringify(e,t,()=>k=!0,()=>h=!0),A=" ";if(u||S||w){if(A=S?`
54
+ `:"",w){let L=c(w);A+=`
55
+ ${Ee.indentComment(L,t.indent)}`}N===""&&!t.inFlow?A===`
56
+ `&&v&&(A=`
57
+
58
+ `):A+=`
59
+ ${t.indent}`}else if(!m&&R.isCollection(e)){let L=N[0],b=N.indexOf(`
60
+ `),T=b!==-1,U=t.inFlow??e.flow??e.items.length===0;if(T||!U){let re=!1;if(T&&(L==="&"||L==="!")){let C=N.indexOf(" ");L==="&"&&C!==-1&&C<b&&N[C+1]==="!"&&(C=N.indexOf(" ",C+1)),(C===-1||b<C)&&(re=!0)}re||(A=`
61
+ ${t.indent}`)}}else(N===""||N[0]===`
62
+ `)&&(A="");return p+=A+N,t.inFlow?k&&i&&i():v&&!k?p+=Ee.lineComment(p,t.indent,c(v)):h&&n&&n(),p}tn.stringifyPair=go});var ls=g(os=>{"use strict";var nn=We("process");function yo(s,...e){s==="debug"&&console.log(...e)}function bo(s,e){(s==="debug"||s==="warn")&&(typeof nn.emitWarning=="function"?nn.emitWarning(e):console.warn(e))}os.debug=yo;os.warn=bo});var ht=g(ut=>{"use strict";var ft=q(),rn=E(),lt="<<",ct={identify:s=>s===lt||typeof s=="symbol"&&s.description===lt,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new rn.Scalar(Symbol(lt)),{addToJSMap:an}),stringify:()=>lt},So=(s,e)=>(ct.identify(e)||ft.isScalar(e)&&(!e.type||e.type===rn.Scalar.PLAIN)&&ct.identify(e.value))&&s?.doc.schema.tags.some(t=>t.tag===ct.tag&&t.default);function an(s,e,t){let i=on(s,t);if(ft.isSeq(i))for(let n of i.items)cs(s,e,n);else if(Array.isArray(i))for(let n of i)cs(s,e,n);else cs(s,e,i)}function cs(s,e,t){let i=on(s,t);if(!ft.isMap(i))throw new Error("Merge sources must be maps or map aliases");let n=i.toJSON(null,s,Map);for(let[r,a]of n)e instanceof Map?e.has(r)||e.set(r,a):e instanceof Set?e.add(r):Object.prototype.hasOwnProperty.call(e,r)||Object.defineProperty(e,r,{value:a,writable:!0,enumerable:!0,configurable:!0});return e}function on(s,e){return s&&ft.isAlias(e)?e.resolve(s.doc,s):e}ut.addMergeToJSMap=an;ut.isMergeKey=So;ut.merge=ct});var us=g(fn=>{"use strict";var wo=ls(),ln=ht(),vo=Le(),cn=q(),fs=Y();function ko(s,e,{key:t,value:i}){if(cn.isNode(t)&&t.addToJSMap)t.addToJSMap(s,e,i);else if(ln.isMergeKey(s,t))ln.addMergeToJSMap(s,e,i);else{let n=fs.toJS(t,"",s);if(e instanceof Map)e.set(n,fs.toJS(i,n,s));else if(e instanceof Set)e.add(n);else{let r=No(t,n,s),a=fs.toJS(i,r,s);r in e?Object.defineProperty(e,r,{value:a,writable:!0,enumerable:!0,configurable:!0}):e[r]=a}}return e}function No(s,e,t){if(e===null)return"";if(typeof e!="object")return String(e);if(cn.isNode(s)&&t?.doc){let i=vo.createStringifyContext(t.doc,{});i.anchors=new Set;for(let r of t.anchors.keys())i.anchors.add(r.anchor);i.inFlow=!0,i.inStringifyKey=!0;let n=s.toString(i);if(!t.mapKeyWarned){let r=JSON.stringify(n);r.length>40&&(r=r.substring(0,36)+'..."'),wo.warn(t.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${r}. Set mapAsMap: true to use object keys.`),t.mapKeyWarned=!0}return n}return JSON.stringify(e)}fn.addPairToJSMap=ko});var W=g(hs=>{"use strict";var un=ke(),Ao=sn(),qo=us(),dt=q();function Oo(s,e,t){let i=un.createNode(s,void 0,t),n=un.createNode(e,void 0,t);return new pt(i,n)}var pt=class s{constructor(e,t=null){Object.defineProperty(this,dt.NODE_TYPE,{value:dt.PAIR}),this.key=e,this.value=t}clone(e){let{key:t,value:i}=this;return dt.isNode(t)&&(t=t.clone(e)),dt.isNode(i)&&(i=i.clone(e)),new s(t,i)}toJSON(e,t){let i=t?.mapAsMap?new Map:{};return qo.addPairToJSMap(t,i,this)}toString(e,t,i){return e?.doc?Ao.stringifyPair(this,e,t,i):JSON.stringify(this)}};hs.Pair=pt;hs.createPair=Oo});var ds=g(dn=>{"use strict";var ee=q(),hn=Le(),mt=Ne();function Lo(s,e,t){return(e.inFlow??s.flow?To:Eo)(s,e,t)}function Eo({comment:s,items:e},t,{blockItemPrefix:i,flowChars:n,itemIndent:r,onChompKeep:a,onComment:o}){let{indent:l,options:{commentString:c}}=t,d=Object.assign({},t,{indent:r,type:null}),f=!1,u=[];for(let y=0;y<e.length;++y){let h=e[y],p=null;if(ee.isNode(h))!f&&h.spaceBefore&&u.push(""),gt(t,u,h.commentBefore,f),h.comment&&(p=h.comment);else if(ee.isPair(h)){let w=ee.isNode(h.key)?h.key:null;w&&(!f&&w.spaceBefore&&u.push(""),gt(t,u,w.commentBefore,f))}f=!1;let S=hn.stringify(h,d,()=>p=null,()=>f=!0);p&&(S+=mt.lineComment(S,r,c(p))),f&&p&&(f=!1),u.push(i+S)}let m;if(u.length===0)m=n.start+n.end;else{m=u[0];for(let y=1;y<u.length;++y){let h=u[y];m+=h?`
63
+ ${l}${h}`:`
64
+ `}}return s?(m+=`
65
+ `+mt.indentComment(c(s),l),o&&o()):f&&a&&a(),m}function To({items:s},e,{flowChars:t,itemIndent:i}){let{indent:n,indentStep:r,flowCollectionPadding:a,options:{commentString:o}}=e;i+=r;let l=Object.assign({},e,{indent:i,inFlow:!0,type:null}),c=!1,d=0,f=[];for(let y=0;y<s.length;++y){let h=s[y],p=null;if(ee.isNode(h))h.spaceBefore&&f.push(""),gt(e,f,h.commentBefore,!1),h.comment&&(p=h.comment);else if(ee.isPair(h)){let w=ee.isNode(h.key)?h.key:null;w&&(w.spaceBefore&&f.push(""),gt(e,f,w.commentBefore,!1),w.comment&&(c=!0));let v=ee.isNode(h.value)?h.value:null;v?(v.comment&&(p=v.comment),v.commentBefore&&(c=!0)):h.value==null&&w?.comment&&(p=w.comment)}p&&(c=!0);let S=hn.stringify(h,l,()=>p=null);c||(c=f.length>d||S.includes(`
66
+ `)),y<s.length-1?S+=",":e.options.trailingComma&&(e.options.lineWidth>0&&(c||(c=f.reduce((w,v)=>w+v.length+2,2)+(S.length+2)>e.options.lineWidth)),c&&(S+=",")),p&&(S+=mt.lineComment(S,i,o(p))),f.push(S),d=f.length}let{start:u,end:m}=t;if(f.length===0)return u+m;if(!c){let y=f.reduce((h,p)=>h+p.length+2,2);c=e.options.lineWidth>0&&y>e.options.lineWidth}if(c){let y=u;for(let h of f)y+=h?`
67
+ ${r}${n}${h}`:`
68
+ `;return`${y}
69
+ ${n}${m}`}else return`${u}${a}${f.join(" ")}${a}${m}`}function gt({indent:s,options:{commentString:e}},t,i,n){if(i&&n&&(i=i.replace(/^\n+/,"")),i){let r=mt.indentComment(e(i),s);t.push(r.trimStart())}}dn.stringifyCollection=Lo});var H=g(ms=>{"use strict";var Co=ds(),Io=us(),Po=st(),G=q(),yt=W(),Mo=E();function Te(s,e){let t=G.isScalar(e)?e.value:e;for(let i of s)if(G.isPair(i)&&(i.key===e||i.key===t||G.isScalar(i.key)&&i.key.value===t))return i}var ps=class extends Po.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(G.MAP,e),this.items=[]}static from(e,t,i){let{keepUndefined:n,replacer:r}=i,a=new this(e),o=(l,c)=>{if(typeof r=="function")c=r.call(t,l,c);else if(Array.isArray(r)&&!r.includes(l))return;(c!==void 0||n)&&a.items.push(yt.createPair(l,c,i))};if(t instanceof Map)for(let[l,c]of t)o(l,c);else if(t&&typeof t=="object")for(let l of Object.keys(t))o(l,t[l]);return typeof e.sortMapEntries=="function"&&a.items.sort(e.sortMapEntries),a}add(e,t){let i;G.isPair(e)?i=e:!e||typeof e!="object"||!("key"in e)?i=new yt.Pair(e,e?.value):i=new yt.Pair(e.key,e.value);let n=Te(this.items,i.key),r=this.schema?.sortMapEntries;if(n){if(!t)throw new Error(`Key ${i.key} already set`);G.isScalar(n.value)&&Mo.isScalarValue(i.value)?n.value.value=i.value:n.value=i.value}else if(r){let a=this.items.findIndex(o=>r(i,o)<0);a===-1?this.items.push(i):this.items.splice(a,0,i)}else this.items.push(i)}delete(e){let t=Te(this.items,e);return t?this.items.splice(this.items.indexOf(t),1).length>0:!1}get(e,t){let n=Te(this.items,e)?.value;return(!t&&G.isScalar(n)?n.value:n)??void 0}has(e){return!!Te(this.items,e)}set(e,t){this.add(new yt.Pair(e,t),!0)}toJSON(e,t,i){let n=i?new i:t?.mapAsMap?new Map:{};t?.onCreate&&t.onCreate(n);for(let r of this.items)Io.addPairToJSMap(t,n,r);return n}toString(e,t,i){if(!e)return JSON.stringify(this);for(let n of this.items)if(!G.isPair(n))throw new Error(`Map items must all be pairs; found ${JSON.stringify(n)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Co.stringifyCollection(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:i,onComment:t})}};ms.YAMLMap=ps;ms.findPair=Te});var fe=g(mn=>{"use strict";var _o=q(),pn=H(),$o={collection:"map",default:!0,nodeClass:pn.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(s,e){return _o.isMap(s)||e("Expected a mapping for this tag"),s},createNode:(s,e,t)=>pn.YAMLMap.from(s,e,t)};mn.map=$o});var X=g(gn=>{"use strict";var Do=ke(),Bo=ds(),Ko=st(),St=q(),jo=E(),Fo=Y(),gs=class extends Ko.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(St.SEQ,e),this.items=[]}add(e){this.items.push(e)}delete(e){let t=bt(e);return typeof t!="number"?!1:this.items.splice(t,1).length>0}get(e,t){let i=bt(e);if(typeof i!="number")return;let n=this.items[i];return!t&&St.isScalar(n)?n.value:n}has(e){let t=bt(e);return typeof t=="number"&&t<this.items.length}set(e,t){let i=bt(e);if(typeof i!="number")throw new Error(`Expected a valid index, not ${e}.`);let n=this.items[i];St.isScalar(n)&&jo.isScalarValue(t)?n.value=t:this.items[i]=t}toJSON(e,t){let i=[];t?.onCreate&&t.onCreate(i);let n=0;for(let r of this.items)i.push(Fo.toJS(r,String(n++),t));return i}toString(e,t,i){return e?Bo.stringifyCollection(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+" ",onChompKeep:i,onComment:t}):JSON.stringify(this)}static from(e,t,i){let{replacer:n}=i,r=new this(e);if(t&&Symbol.iterator in Object(t)){let a=0;for(let o of t){if(typeof n=="function"){let l=t instanceof Set?o:String(a++);o=n.call(t,l,o)}r.items.push(Do.createNode(o,void 0,i))}}return r}};function bt(s){let e=St.isScalar(s)?s.value:s;return e&&typeof e=="string"&&(e=Number(e)),typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}gn.YAMLSeq=gs});var ue=g(bn=>{"use strict";var Ro=q(),yn=X(),Uo={collection:"seq",default:!0,nodeClass:yn.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(s,e){return Ro.isSeq(s)||e("Expected a sequence for this tag"),s},createNode:(s,e,t)=>yn.YAMLSeq.from(s,e,t)};bn.seq=Uo});var Ce=g(Sn=>{"use strict";var Yo=Oe(),Vo={identify:s=>typeof s=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:s=>s,stringify(s,e,t,i){return e=Object.assign({actualString:!0},e),Yo.stringifyString(s,e,t,i)}};Sn.string=Vo});var wt=g(kn=>{"use strict";var wn=E(),vn={identify:s=>s==null,createNode:()=>new wn.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new wn.Scalar(null),stringify:({source:s},e)=>typeof s=="string"&&vn.test.test(s)?s:e.options.nullStr};kn.nullTag=vn});var ys=g(An=>{"use strict";var Jo=E(),Nn={identify:s=>typeof s=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:s=>new Jo.Scalar(s[0]==="t"||s[0]==="T"),stringify({source:s,value:e},t){if(s&&Nn.test.test(s)){let i=s[0]==="t"||s[0]==="T";if(e===i)return s}return e?t.options.trueStr:t.options.falseStr}};An.boolTag=Nn});var he=g(qn=>{"use strict";function Qo({format:s,minFractionDigits:e,tag:t,value:i}){if(typeof i=="bigint")return String(i);let n=typeof i=="number"?i:Number(i);if(!isFinite(n))return isNaN(n)?".nan":n<0?"-.inf":".inf";let r=Object.is(i,-0)?"-0":JSON.stringify(i);if(!s&&e&&(!t||t==="tag:yaml.org,2002:float")&&/^-?\d/.test(r)&&!r.includes("e")){let a=r.indexOf(".");a<0&&(a=r.length,r+=".");let o=e-(r.length-a-1);for(;o-- >0;)r+="0"}return r}qn.stringifyNumber=Qo});var Ss=g(vt=>{"use strict";var Wo=E(),bs=he(),Go={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:s=>s.slice(-3).toLowerCase()==="nan"?NaN:s[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:bs.stringifyNumber},Ho={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:s=>parseFloat(s),stringify(s){let e=Number(s.value);return isFinite(e)?e.toExponential():bs.stringifyNumber(s)}},Xo={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(s){let e=new Wo.Scalar(parseFloat(s)),t=s.indexOf(".");return t!==-1&&s[s.length-1]==="0"&&(e.minFractionDigits=s.length-t-1),e},stringify:bs.stringifyNumber};vt.float=Xo;vt.floatExp=Ho;vt.floatNaN=Go});var vs=g(Nt=>{"use strict";var On=he(),kt=s=>typeof s=="bigint"||Number.isInteger(s),ws=(s,e,t,{intAsBigInt:i})=>i?BigInt(s):parseInt(s.substring(e),t);function Ln(s,e,t){let{value:i}=s;return kt(i)&&i>=0?t+i.toString(e):On.stringifyNumber(s)}var xo={identify:s=>kt(s)&&s>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(s,e,t)=>ws(s,2,8,t),stringify:s=>Ln(s,8,"0o")},zo={identify:kt,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(s,e,t)=>ws(s,0,10,t),stringify:On.stringifyNumber},Zo={identify:s=>kt(s)&&s>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(s,e,t)=>ws(s,2,16,t),stringify:s=>Ln(s,16,"0x")};Nt.int=zo;Nt.intHex=Zo;Nt.intOct=xo});var Tn=g(En=>{"use strict";var el=fe(),tl=wt(),sl=ue(),il=Ce(),nl=ys(),ks=Ss(),Ns=vs(),rl=[el.map,sl.seq,il.string,tl.nullTag,nl.boolTag,Ns.intOct,Ns.int,Ns.intHex,ks.floatNaN,ks.floatExp,ks.float];En.schema=rl});var Pn=g(In=>{"use strict";var al=E(),ol=fe(),ll=ue();function Cn(s){return typeof s=="bigint"||Number.isInteger(s)}var At=({value:s})=>JSON.stringify(s),cl=[{identify:s=>typeof s=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:s=>s,stringify:At},{identify:s=>s==null,createNode:()=>new al.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:At},{identify:s=>typeof s=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:s=>s==="true",stringify:At},{identify:Cn,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(s,e,{intAsBigInt:t})=>t?BigInt(s):parseInt(s,10),stringify:({value:s})=>Cn(s)?s.toString():JSON.stringify(s)},{identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:s=>parseFloat(s),stringify:At}],fl={default:!0,tag:"",test:/^/,resolve(s,e){return e(`Unresolved plain scalar ${JSON.stringify(s)}`),s}},ul=[ol.map,ll.seq].concat(cl,fl);In.schema=ul});var qs=g(Mn=>{"use strict";var Ie=We("buffer"),As=E(),hl=Oe(),dl={identify:s=>s instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(s,e){if(typeof Ie.Buffer=="function")return Ie.Buffer.from(s,"base64");if(typeof atob=="function"){let t=atob(s.replace(/[\n\r]/g,"")),i=new Uint8Array(t.length);for(let n=0;n<t.length;++n)i[n]=t.charCodeAt(n);return i}else return e("This environment does not support reading binary tags; either Buffer or atob is required"),s},stringify({comment:s,type:e,value:t},i,n,r){if(!t)return"";let a=t,o;if(typeof Ie.Buffer=="function")o=a instanceof Ie.Buffer?a.toString("base64"):Ie.Buffer.from(a.buffer).toString("base64");else if(typeof btoa=="function"){let l="";for(let c=0;c<a.length;++c)l+=String.fromCharCode(a[c]);o=btoa(l)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(e??(e=As.Scalar.BLOCK_LITERAL),e!==As.Scalar.QUOTE_DOUBLE){let l=Math.max(i.options.lineWidth-i.indent.length,i.options.minContentWidth),c=Math.ceil(o.length/l),d=new Array(c);for(let f=0,u=0;f<c;++f,u+=l)d[f]=o.substr(u,l);o=d.join(e===As.Scalar.BLOCK_LITERAL?`
70
+ `:" ")}return hl.stringifyString({comment:s,type:e,value:o},i,n,r)}};Mn.binary=dl});var Lt=g(Ot=>{"use strict";var qt=q(),Os=W(),pl=E(),ml=X();function _n(s,e){if(qt.isSeq(s))for(let t=0;t<s.items.length;++t){let i=s.items[t];if(!qt.isPair(i)){if(qt.isMap(i)){i.items.length>1&&e("Each pair must have its own sequence indicator");let n=i.items[0]||new Os.Pair(new pl.Scalar(null));if(i.commentBefore&&(n.key.commentBefore=n.key.commentBefore?`${i.commentBefore}
71
+ ${n.key.commentBefore}`:i.commentBefore),i.comment){let r=n.value??n.key;r.comment=r.comment?`${i.comment}
72
+ ${r.comment}`:i.comment}i=n}s.items[t]=qt.isPair(i)?i:new Os.Pair(i)}}else e("Expected a sequence for this tag");return s}function $n(s,e,t){let{replacer:i}=t,n=new ml.YAMLSeq(s);n.tag="tag:yaml.org,2002:pairs";let r=0;if(e&&Symbol.iterator in Object(e))for(let a of e){typeof i=="function"&&(a=i.call(e,String(r++),a));let o,l;if(Array.isArray(a))if(a.length===2)o=a[0],l=a[1];else throw new TypeError(`Expected [key, value] tuple: ${a}`);else if(a&&a instanceof Object){let c=Object.keys(a);if(c.length===1)o=c[0],l=a[o];else throw new TypeError(`Expected tuple with one key, not ${c.length} keys`)}else o=a;n.items.push(Os.createPair(o,l,t))}return n}var gl={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:_n,createNode:$n};Ot.createPairs=$n;Ot.pairs=gl;Ot.resolvePairs=_n});var Ts=g(Es=>{"use strict";var Dn=q(),Ls=Y(),Pe=H(),yl=X(),Bn=Lt(),te=class s extends yl.YAMLSeq{constructor(){super(),this.add=Pe.YAMLMap.prototype.add.bind(this),this.delete=Pe.YAMLMap.prototype.delete.bind(this),this.get=Pe.YAMLMap.prototype.get.bind(this),this.has=Pe.YAMLMap.prototype.has.bind(this),this.set=Pe.YAMLMap.prototype.set.bind(this),this.tag=s.tag}toJSON(e,t){if(!t)return super.toJSON(e);let i=new Map;t?.onCreate&&t.onCreate(i);for(let n of this.items){let r,a;if(Dn.isPair(n)?(r=Ls.toJS(n.key,"",t),a=Ls.toJS(n.value,r,t)):r=Ls.toJS(n,"",t),i.has(r))throw new Error("Ordered maps must not include duplicate keys");i.set(r,a)}return i}static from(e,t,i){let n=Bn.createPairs(e,t,i),r=new this;return r.items=n.items,r}};te.tag="tag:yaml.org,2002:omap";var bl={collection:"seq",identify:s=>s instanceof Map,nodeClass:te,default:!1,tag:"tag:yaml.org,2002:omap",resolve(s,e){let t=Bn.resolvePairs(s,e),i=[];for(let{key:n}of t.items)Dn.isScalar(n)&&(i.includes(n.value)?e(`Ordered maps must not include duplicate keys: ${n.value}`):i.push(n.value));return Object.assign(new te,t)},createNode:(s,e,t)=>te.from(s,e,t)};Es.YAMLOMap=te;Es.omap=bl});var Un=g(Cs=>{"use strict";var Kn=E();function jn({value:s,source:e},t){return e&&(s?Fn:Rn).test.test(e)?e:s?t.options.trueStr:t.options.falseStr}var Fn={identify:s=>s===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Kn.Scalar(!0),stringify:jn},Rn={identify:s=>s===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Kn.Scalar(!1),stringify:jn};Cs.falseTag=Rn;Cs.trueTag=Fn});var Yn=g(Et=>{"use strict";var Sl=E(),Is=he(),wl={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:s=>s.slice(-3).toLowerCase()==="nan"?NaN:s[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Is.stringifyNumber},vl={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:s=>parseFloat(s.replace(/_/g,"")),stringify(s){let e=Number(s.value);return isFinite(e)?e.toExponential():Is.stringifyNumber(s)}},kl={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(s){let e=new Sl.Scalar(parseFloat(s.replace(/_/g,""))),t=s.indexOf(".");if(t!==-1){let i=s.substring(t+1).replace(/_/g,"");i[i.length-1]==="0"&&(e.minFractionDigits=i.length)}return e},stringify:Is.stringifyNumber};Et.float=kl;Et.floatExp=vl;Et.floatNaN=wl});var Jn=g(_e=>{"use strict";var Vn=he(),Me=s=>typeof s=="bigint"||Number.isInteger(s);function Tt(s,e,t,{intAsBigInt:i}){let n=s[0];if((n==="-"||n==="+")&&(e+=1),s=s.substring(e).replace(/_/g,""),i){switch(t){case 2:s=`0b${s}`;break;case 8:s=`0o${s}`;break;case 16:s=`0x${s}`;break}let a=BigInt(s);return n==="-"?BigInt(-1)*a:a}let r=parseInt(s,t);return n==="-"?-1*r:r}function Ps(s,e,t){let{value:i}=s;if(Me(i)){let n=i.toString(e);return i<0?"-"+t+n.substr(1):t+n}return Vn.stringifyNumber(s)}var Nl={identify:Me,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(s,e,t)=>Tt(s,2,2,t),stringify:s=>Ps(s,2,"0b")},Al={identify:Me,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(s,e,t)=>Tt(s,1,8,t),stringify:s=>Ps(s,8,"0")},ql={identify:Me,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(s,e,t)=>Tt(s,0,10,t),stringify:Vn.stringifyNumber},Ol={identify:Me,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(s,e,t)=>Tt(s,2,16,t),stringify:s=>Ps(s,16,"0x")};_e.int=ql;_e.intBin=Nl;_e.intHex=Ol;_e.intOct=Al});var _s=g(Ms=>{"use strict";var Pt=q(),Ct=W(),It=H(),se=class s extends It.YAMLMap{constructor(e){super(e),this.tag=s.tag}add(e){let t;Pt.isPair(e)?t=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?t=new Ct.Pair(e.key,null):t=new Ct.Pair(e,null),It.findPair(this.items,t.key)||this.items.push(t)}get(e,t){let i=It.findPair(this.items,e);return!t&&Pt.isPair(i)?Pt.isScalar(i.key)?i.key.value:i.key:i}set(e,t){if(typeof t!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof t}`);let i=It.findPair(this.items,e);i&&!t?this.items.splice(this.items.indexOf(i),1):!i&&t&&this.items.push(new Ct.Pair(e))}toJSON(e,t){return super.toJSON(e,t,Set)}toString(e,t,i){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),t,i);throw new Error("Set items must all have null values")}static from(e,t,i){let{replacer:n}=i,r=new this(e);if(t&&Symbol.iterator in Object(t))for(let a of t)typeof n=="function"&&(a=n.call(t,a,a)),r.items.push(Ct.createPair(a,null,i));return r}};se.tag="tag:yaml.org,2002:set";var Ll={collection:"map",identify:s=>s instanceof Set,nodeClass:se,default:!1,tag:"tag:yaml.org,2002:set",createNode:(s,e,t)=>se.from(s,e,t),resolve(s,e){if(Pt.isMap(s)){if(s.hasAllNullValues(!0))return Object.assign(new se,s);e("Set items must all have null values")}else e("Expected a mapping for this tag");return s}};Ms.YAMLSet=se;Ms.set=Ll});var Ds=g(Mt=>{"use strict";var El=he();function $s(s,e){let t=s[0],i=t==="-"||t==="+"?s.substring(1):s,n=a=>e?BigInt(a):Number(a),r=i.replace(/_/g,"").split(":").reduce((a,o)=>a*n(60)+n(o),n(0));return t==="-"?n(-1)*r:r}function Qn(s){let{value:e}=s,t=a=>a;if(typeof e=="bigint")t=a=>BigInt(a);else if(isNaN(e)||!isFinite(e))return El.stringifyNumber(s);let i="";e<0&&(i="-",e*=t(-1));let n=t(60),r=[e%n];return e<60?r.unshift(0):(e=(e-r[0])/n,r.unshift(e%n),e>=60&&(e=(e-r[0])/n,r.unshift(e))),i+r.map(a=>String(a).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var Tl={identify:s=>typeof s=="bigint"||Number.isInteger(s),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(s,e,{intAsBigInt:t})=>$s(s,t),stringify:Qn},Cl={identify:s=>typeof s=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:s=>$s(s,!1),stringify:Qn},Wn={identify:s=>s instanceof Date,default:!0,tag:"tag:yaml.org,2002:timestamp",test:RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"),resolve(s){let e=s.match(Wn.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,t,i,n,r,a,o]=e.map(Number),l=e[7]?Number((e[7]+"00").substr(1,3)):0,c=Date.UTC(t,i-1,n,r||0,a||0,o||0,l),d=e[8];if(d&&d!=="Z"){let f=$s(d,!1);Math.abs(f)<30&&(f*=60),c-=6e4*f}return new Date(c)},stringify:({value:s})=>s?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};Mt.floatTime=Cl;Mt.intTime=Tl;Mt.timestamp=Wn});var Xn=g(Hn=>{"use strict";var Il=fe(),Pl=wt(),Ml=ue(),_l=Ce(),$l=qs(),Gn=Un(),Bs=Yn(),_t=Jn(),Dl=ht(),Bl=Ts(),Kl=Lt(),jl=_s(),Ks=Ds(),Fl=[Il.map,Ml.seq,_l.string,Pl.nullTag,Gn.trueTag,Gn.falseTag,_t.intBin,_t.intOct,_t.int,_t.intHex,Bs.floatNaN,Bs.floatExp,Bs.float,$l.binary,Dl.merge,Bl.omap,Kl.pairs,jl.set,Ks.intTime,Ks.floatTime,Ks.timestamp];Hn.schema=Fl});var ar=g(Rs=>{"use strict";var er=fe(),Rl=wt(),tr=ue(),Ul=Ce(),Yl=ys(),js=Ss(),Fs=vs(),Vl=Tn(),Jl=Pn(),sr=qs(),$e=ht(),ir=Ts(),nr=Lt(),xn=Xn(),rr=_s(),$t=Ds(),zn=new Map([["core",Vl.schema],["failsafe",[er.map,tr.seq,Ul.string]],["json",Jl.schema],["yaml11",xn.schema],["yaml-1.1",xn.schema]]),Zn={binary:sr.binary,bool:Yl.boolTag,float:js.float,floatExp:js.floatExp,floatNaN:js.floatNaN,floatTime:$t.floatTime,int:Fs.int,intHex:Fs.intHex,intOct:Fs.intOct,intTime:$t.intTime,map:er.map,merge:$e.merge,null:Rl.nullTag,omap:ir.omap,pairs:nr.pairs,seq:tr.seq,set:rr.set,timestamp:$t.timestamp},Ql={"tag:yaml.org,2002:binary":sr.binary,"tag:yaml.org,2002:merge":$e.merge,"tag:yaml.org,2002:omap":ir.omap,"tag:yaml.org,2002:pairs":nr.pairs,"tag:yaml.org,2002:set":rr.set,"tag:yaml.org,2002:timestamp":$t.timestamp};function Wl(s,e,t){let i=zn.get(e);if(i&&!s)return t&&!i.includes($e.merge)?i.concat($e.merge):i.slice();let n=i;if(!n)if(Array.isArray(s))n=[];else{let r=Array.from(zn.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${r} or define customTags array`)}if(Array.isArray(s))for(let r of s)n=n.concat(r);else typeof s=="function"&&(n=s(n.slice()));return t&&(n=n.concat($e.merge)),n.reduce((r,a)=>{let o=typeof a=="string"?Zn[a]:a;if(!o){let l=JSON.stringify(a),c=Object.keys(Zn).map(d=>JSON.stringify(d)).join(", ");throw new Error(`Unknown custom tag ${l}; use one of ${c}`)}return r.includes(o)||r.push(o),r},[])}Rs.coreKnownTags=Ql;Rs.getTags=Wl});var Vs=g(or=>{"use strict";var Us=q(),Gl=fe(),Hl=ue(),Xl=Ce(),Dt=ar(),xl=(s,e)=>s.key<e.key?-1:s.key>e.key?1:0,Ys=class s{constructor({compat:e,customTags:t,merge:i,resolveKnownTags:n,schema:r,sortMapEntries:a,toStringDefaults:o}){this.compat=Array.isArray(e)?Dt.getTags(e,"compat"):e?Dt.getTags(null,e):null,this.name=typeof r=="string"&&r||"core",this.knownTags=n?Dt.coreKnownTags:{},this.tags=Dt.getTags(t,this.name,i),this.toStringOptions=o??null,Object.defineProperty(this,Us.MAP,{value:Gl.map}),Object.defineProperty(this,Us.SCALAR,{value:Xl.string}),Object.defineProperty(this,Us.SEQ,{value:Hl.seq}),this.sortMapEntries=typeof a=="function"?a:a===!0?xl:null}clone(){let e=Object.create(s.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}};or.Schema=Ys});var cr=g(lr=>{"use strict";var zl=q(),Js=Le(),De=Ne();function Zl(s,e){let t=[],i=e.directives===!0;if(e.directives!==!1&&s.directives){let l=s.directives.toString(s);l?(t.push(l),i=!0):s.directives.docStart&&(i=!0)}i&&t.push("---");let n=Js.createStringifyContext(s,e),{commentString:r}=n.options;if(s.commentBefore){t.length!==1&&t.unshift("");let l=r(s.commentBefore);t.unshift(De.indentComment(l,""))}let a=!1,o=null;if(s.contents){if(zl.isNode(s.contents)){if(s.contents.spaceBefore&&i&&t.push(""),s.contents.commentBefore){let d=r(s.contents.commentBefore);t.push(De.indentComment(d,""))}n.forceBlockIndent=!!s.comment,o=s.contents.comment}let l=o?void 0:()=>a=!0,c=Js.stringify(s.contents,n,()=>o=null,l);o&&(c+=De.lineComment(c,"",r(o))),(c[0]==="|"||c[0]===">")&&t[t.length-1]==="---"?t[t.length-1]=`--- ${c}`:t.push(c)}else t.push(Js.stringify(s.contents,n));if(s.directives?.docEnd)if(s.comment){let l=r(s.comment);l.includes(`
73
+ `)?(t.push("..."),t.push(De.indentComment(l,""))):t.push(`... ${l}`)}else t.push("...");else{let l=s.comment;l&&a&&(l=l.replace(/^\n+/,"")),l&&((!a||o)&&t[t.length-1]!==""&&t.push(""),t.push(De.indentComment(r(l),"")))}return t.join(`
74
+ `)+`
75
+ `}lr.stringifyDocument=Zl});var Be=g(fr=>{"use strict";var ec=ve(),de=st(),$=q(),tc=W(),sc=Y(),ic=Vs(),nc=cr(),Qs=ze(),rc=Xt(),ac=ke(),Ws=Ht(),Gs=class s{constructor(e,t,i){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,$.NODE_TYPE,{value:$.DOC});let n=null;typeof t=="function"||Array.isArray(t)?n=t:i===void 0&&t&&(i=t,t=void 0);let r=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},i);this.options=r;let{version:a}=r;i?._directives?(this.directives=i._directives.atDocument(),this.directives.yaml.explicit&&(a=this.directives.yaml.version)):this.directives=new Ws.Directives({version:a}),this.setSchema(a,i),this.contents=e===void 0?null:this.createNode(e,n,i)}clone(){let e=Object.create(s.prototype,{[$.NODE_TYPE]:{value:$.DOC}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=$.isNode(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){pe(this.contents)&&this.contents.add(e)}addIn(e,t){pe(this.contents)&&this.contents.addIn(e,t)}createAlias(e,t){if(!e.anchor){let i=Qs.anchorNames(this);e.anchor=!t||i.has(t)?Qs.findNewAnchor(t||"a",i):t}return new ec.Alias(e.anchor)}createNode(e,t,i){let n;if(typeof t=="function")e=t.call({"":e},"",e),n=t;else if(Array.isArray(t)){let p=w=>typeof w=="number"||w instanceof String||w instanceof Number,S=t.filter(p).map(String);S.length>0&&(t=t.concat(S)),n=t}else i===void 0&&t&&(i=t,t=void 0);let{aliasDuplicateObjects:r,anchorPrefix:a,flow:o,keepUndefined:l,onTagObj:c,tag:d}=i??{},{onAnchor:f,setAnchors:u,sourceObjects:m}=Qs.createNodeAnchors(this,a||"a"),y={aliasDuplicateObjects:r??!0,keepUndefined:l??!1,onAnchor:f,onTagObj:c,replacer:n,schema:this.schema,sourceObjects:m},h=ac.createNode(e,d,y);return o&&$.isCollection(h)&&(h.flow=!0),u(),h}createPair(e,t,i={}){let n=this.createNode(e,null,i),r=this.createNode(t,null,i);return new tc.Pair(n,r)}delete(e){return pe(this.contents)?this.contents.delete(e):!1}deleteIn(e){return de.isEmptyPath(e)?this.contents==null?!1:(this.contents=null,!0):pe(this.contents)?this.contents.deleteIn(e):!1}get(e,t){return $.isCollection(this.contents)?this.contents.get(e,t):void 0}getIn(e,t){return de.isEmptyPath(e)?!t&&$.isScalar(this.contents)?this.contents.value:this.contents:$.isCollection(this.contents)?this.contents.getIn(e,t):void 0}has(e){return $.isCollection(this.contents)?this.contents.has(e):!1}hasIn(e){return de.isEmptyPath(e)?this.contents!==void 0:$.isCollection(this.contents)?this.contents.hasIn(e):!1}set(e,t){this.contents==null?this.contents=de.collectionFromPath(this.schema,[e],t):pe(this.contents)&&this.contents.set(e,t)}setIn(e,t){de.isEmptyPath(e)?this.contents=t:this.contents==null?this.contents=de.collectionFromPath(this.schema,Array.from(e),t):pe(this.contents)&&this.contents.setIn(e,t)}setSchema(e,t={}){typeof e=="number"&&(e=String(e));let i;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Ws.Directives({version:"1.1"}),i={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new Ws.Directives({version:e}),i={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,i=null;break;default:{let n=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${n}`)}}if(t.schema instanceof Object)this.schema=t.schema;else if(i)this.schema=new ic.Schema(Object.assign(i,t));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:t,mapAsMap:i,maxAliasCount:n,onAnchor:r,reviver:a}={}){let o={anchors:new Map,doc:this,keep:!e,mapAsMap:i===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},l=sc.toJS(this.contents,t??"",o);if(typeof r=="function")for(let{count:c,res:d}of o.anchors.values())r(d,c);return typeof a=="function"?rc.applyReviver(a,{"":l},"",l):l}toJSON(e,t){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:t})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){let t=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${t}`)}return nc.stringifyDocument(this,e)}};function pe(s){if($.isCollection(s))return!0;throw new Error("Expected a YAML collection as document contents")}fr.Document=Gs});var Fe=g(je=>{"use strict";var Ke=class extends Error{constructor(e,t,i,n){super(),this.name=e,this.code=i,this.message=n,this.pos=t}},Hs=class extends Ke{constructor(e,t,i){super("YAMLParseError",e,t,i)}},Xs=class extends Ke{constructor(e,t,i){super("YAMLWarning",e,t,i)}},oc=(s,e)=>t=>{if(t.pos[0]===-1)return;t.linePos=t.pos.map(o=>e.linePos(o));let{line:i,col:n}=t.linePos[0];t.message+=` at line ${i}, column ${n}`;let r=n-1,a=s.substring(e.lineStarts[i-1],e.lineStarts[i]).replace(/[\n\r]+$/,"");if(r>=60&&a.length>80){let o=Math.min(r-39,a.length-79);a="\u2026"+a.substring(o),r-=o-1}if(a.length>80&&(a=a.substring(0,79)+"\u2026"),i>1&&/^ *$/.test(a.substring(0,r))){let o=s.substring(e.lineStarts[i-2],e.lineStarts[i-1]);o.length>80&&(o=o.substring(0,79)+`\u2026
76
+ `),a=o+a}if(/[^ ]/.test(a)){let o=1,l=t.linePos[1];l?.line===i&&l.col>n&&(o=Math.max(1,Math.min(l.col-n,80-r)));let c=" ".repeat(r)+"^".repeat(o);t.message+=`:
77
+
78
+ ${a}
79
+ ${c}
80
+ `}};je.YAMLError=Ke;je.YAMLParseError=Hs;je.YAMLWarning=Xs;je.prettifyError=oc});var Re=g(ur=>{"use strict";function lc(s,{flow:e,indicator:t,next:i,offset:n,onError:r,parentIndent:a,startOnNewline:o}){let l=!1,c=o,d=o,f="",u="",m=!1,y=!1,h=null,p=null,S=null,w=null,v=null,k=null,N=null;for(let b of s)switch(y&&(b.type!=="space"&&b.type!=="newline"&&b.type!=="comma"&&r(b.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),y=!1),h&&(c&&b.type!=="comment"&&b.type!=="newline"&&r(h,"TAB_AS_INDENT","Tabs are not allowed as indentation"),h=null),b.type){case"space":!e&&(t!=="doc-start"||i?.type!=="flow-collection")&&b.source.includes(" ")&&(h=b),d=!0;break;case"comment":{d||r(b,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let T=b.source.substring(1)||" ";f?f+=u+T:f=T,u="",c=!1;break}case"newline":c?f?f+=b.source:(!k||t!=="seq-item-ind")&&(l=!0):u+=b.source,c=!0,m=!0,(p||S)&&(w=b),d=!0;break;case"anchor":p&&r(b,"MULTIPLE_ANCHORS","A node can have at most one anchor"),b.source.endsWith(":")&&r(b.offset+b.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),p=b,N??(N=b.offset),c=!1,d=!1,y=!0;break;case"tag":{S&&r(b,"MULTIPLE_TAGS","A node can have at most one tag"),S=b,N??(N=b.offset),c=!1,d=!1,y=!0;break}case t:(p||S)&&r(b,"BAD_PROP_ORDER",`Anchors and tags must be after the ${b.source} indicator`),k&&r(b,"UNEXPECTED_TOKEN",`Unexpected ${b.source} in ${e??"collection"}`),k=b,c=t==="seq-item-ind"||t==="explicit-key-ind",d=!1;break;case"comma":if(e){v&&r(b,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),v=b,c=!1,d=!1;break}default:r(b,"UNEXPECTED_TOKEN",`Unexpected ${b.type} token`),c=!1,d=!1}let A=s[s.length-1],L=A?A.offset+A.source.length:n;return y&&i&&i.type!=="space"&&i.type!=="newline"&&i.type!=="comma"&&(i.type!=="scalar"||i.source!=="")&&r(i.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),h&&(c&&h.indent<=a||i?.type==="block-map"||i?.type==="block-seq")&&r(h,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:v,found:k,spaceBefore:l,comment:f,hasNewline:m,anchor:p,tag:S,newlineAfterProp:w,end:L,start:N??L}}ur.resolveProps=lc});var Bt=g(hr=>{"use strict";function xs(s){if(!s)return null;switch(s.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(s.source.includes(`
81
+ `))return!0;if(s.end){for(let e of s.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(let e of s.items){for(let t of e.start)if(t.type==="newline")return!0;if(e.sep){for(let t of e.sep)if(t.type==="newline")return!0}if(xs(e.key)||xs(e.value))return!0}return!1;default:return!0}}hr.containsNewline=xs});var zs=g(dr=>{"use strict";var cc=Bt();function fc(s,e,t){if(e?.type==="flow-collection"){let i=e.end[0];i.indent===s&&(i.source==="]"||i.source==="}")&&cc.containsNewline(e)&&t(i,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}dr.flowIndentCheck=fc});var Zs=g(mr=>{"use strict";var pr=q();function uc(s,e,t){let{uniqueKeys:i}=s.options;if(i===!1)return!1;let n=typeof i=="function"?i:(r,a)=>r===a||pr.isScalar(r)&&pr.isScalar(a)&&r.value===a.value;return e.some(r=>n(r.key,t))}mr.mapIncludes=uc});var vr=g(wr=>{"use strict";var gr=W(),hc=H(),yr=Re(),dc=Bt(),br=zs(),pc=Zs(),Sr="All mapping items must start at the same column";function mc({composeNode:s,composeEmptyNode:e},t,i,n,r){let a=r?.nodeClass??hc.YAMLMap,o=new a(t.schema);t.atRoot&&(t.atRoot=!1);let l=i.offset,c=null;for(let d of i.items){let{start:f,key:u,sep:m,value:y}=d,h=yr.resolveProps(f,{indicator:"explicit-key-ind",next:u??m?.[0],offset:l,onError:n,parentIndent:i.indent,startOnNewline:!0}),p=!h.found;if(p){if(u&&(u.type==="block-seq"?n(l,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in u&&u.indent!==i.indent&&n(l,"BAD_INDENT",Sr)),!h.anchor&&!h.tag&&!m){c=h.end,h.comment&&(o.comment?o.comment+=`
82
+ `+h.comment:o.comment=h.comment);continue}(h.newlineAfterProp||dc.containsNewline(u))&&n(u??f[f.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else h.found?.indent!==i.indent&&n(l,"BAD_INDENT",Sr);t.atKey=!0;let S=h.end,w=u?s(t,u,h,n):e(t,S,f,null,h,n);t.schema.compat&&br.flowIndentCheck(i.indent,u,n),t.atKey=!1,pc.mapIncludes(t,o.items,w)&&n(S,"DUPLICATE_KEY","Map keys must be unique");let v=yr.resolveProps(m??[],{indicator:"map-value-ind",next:y,offset:w.range[2],onError:n,parentIndent:i.indent,startOnNewline:!u||u.type==="block-scalar"});if(l=v.end,v.found){p&&(y?.type==="block-map"&&!v.hasNewline&&n(l,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),t.options.strict&&h.start<v.found.offset-1024&&n(w.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));let k=y?s(t,y,v,n):e(t,l,m,null,v,n);t.schema.compat&&br.flowIndentCheck(i.indent,y,n),l=k.range[2];let N=new gr.Pair(w,k);t.options.keepSourceTokens&&(N.srcToken=d),o.items.push(N)}else{p&&n(w.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),v.comment&&(w.comment?w.comment+=`
83
+ `+v.comment:w.comment=v.comment);let k=new gr.Pair(w);t.options.keepSourceTokens&&(k.srcToken=d),o.items.push(k)}}return c&&c<l&&n(c,"IMPOSSIBLE","Map comment with trailing content"),o.range=[i.offset,l,c??l],o}wr.resolveBlockMap=mc});var Nr=g(kr=>{"use strict";var gc=X(),yc=Re(),bc=zs();function Sc({composeNode:s,composeEmptyNode:e},t,i,n,r){let a=r?.nodeClass??gc.YAMLSeq,o=new a(t.schema);t.atRoot&&(t.atRoot=!1),t.atKey&&(t.atKey=!1);let l=i.offset,c=null;for(let{start:d,value:f}of i.items){let u=yc.resolveProps(d,{indicator:"seq-item-ind",next:f,offset:l,onError:n,parentIndent:i.indent,startOnNewline:!0});if(!u.found)if(u.anchor||u.tag||f)f?.type==="block-seq"?n(u.end,"BAD_INDENT","All sequence items must start at the same column"):n(l,"MISSING_CHAR","Sequence item without - indicator");else{c=u.end,u.comment&&(o.comment=u.comment);continue}let m=f?s(t,f,u,n):e(t,u.end,d,null,u,n);t.schema.compat&&bc.flowIndentCheck(i.indent,f,n),l=m.range[2],o.items.push(m)}return o.range=[i.offset,l,c??l],o}kr.resolveBlockSeq=Sc});var me=g(Ar=>{"use strict";function wc(s,e,t,i){let n="";if(s){let r=!1,a="";for(let o of s){let{source:l,type:c}=o;switch(c){case"space":r=!0;break;case"comment":{t&&!r&&i(o,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let d=l.substring(1)||" ";n?n+=a+d:n=d,a="";break}case"newline":n&&(a+=l),r=!0;break;default:i(o,"UNEXPECTED_TOKEN",`Unexpected ${c} at node end`)}e+=l.length}}return{comment:n,offset:e}}Ar.resolveEnd=wc});var Er=g(Lr=>{"use strict";var vc=q(),kc=W(),qr=H(),Nc=X(),Ac=me(),Or=Re(),qc=Bt(),Oc=Zs(),ei="Block collections are not allowed within flow collections",ti=s=>s&&(s.type==="block-map"||s.type==="block-seq");function Lc({composeNode:s,composeEmptyNode:e},t,i,n,r){let a=i.start.source==="{",o=a?"flow map":"flow sequence",l=r?.nodeClass??(a?qr.YAMLMap:Nc.YAMLSeq),c=new l(t.schema);c.flow=!0;let d=t.atRoot;d&&(t.atRoot=!1),t.atKey&&(t.atKey=!1);let f=i.offset+i.start.source.length;for(let p=0;p<i.items.length;++p){let S=i.items[p],{start:w,key:v,sep:k,value:N}=S,A=Or.resolveProps(w,{flow:o,indicator:"explicit-key-ind",next:v??k?.[0],offset:f,onError:n,parentIndent:i.indent,startOnNewline:!1});if(!A.found){if(!A.anchor&&!A.tag&&!k&&!N){p===0&&A.comma?n(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${o}`):p<i.items.length-1&&n(A.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${o}`),A.comment&&(c.comment?c.comment+=`
84
+ `+A.comment:c.comment=A.comment),f=A.end;continue}!a&&t.options.strict&&qc.containsNewline(v)&&n(v,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(p===0)A.comma&&n(A.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${o}`);else if(A.comma||n(A.start,"MISSING_CHAR",`Missing , between ${o} items`),A.comment){let L="";e:for(let b of w)switch(b.type){case"comma":case"space":break;case"comment":L=b.source.substring(1);break e;default:break e}if(L){let b=c.items[c.items.length-1];vc.isPair(b)&&(b=b.value??b.key),b.comment?b.comment+=`
85
+ `+L:b.comment=L,A.comment=A.comment.substring(L.length+1)}}if(!a&&!k&&!A.found){let L=N?s(t,N,A,n):e(t,A.end,k,null,A,n);c.items.push(L),f=L.range[2],ti(N)&&n(L.range,"BLOCK_IN_FLOW",ei)}else{t.atKey=!0;let L=A.end,b=v?s(t,v,A,n):e(t,L,w,null,A,n);ti(v)&&n(b.range,"BLOCK_IN_FLOW",ei),t.atKey=!1;let T=Or.resolveProps(k??[],{flow:o,indicator:"map-value-ind",next:N,offset:b.range[2],onError:n,parentIndent:i.indent,startOnNewline:!1});if(T.found){if(!a&&!A.found&&t.options.strict){if(k)for(let C of k){if(C===T.found)break;if(C.type==="newline"){n(C,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}A.start<T.found.offset-1024&&n(T.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else N&&("source"in N&&N.source?.[0]===":"?n(N,"MISSING_CHAR",`Missing space after : in ${o}`):n(T.start,"MISSING_CHAR",`Missing , or : between ${o} items`));let U=N?s(t,N,T,n):T.found?e(t,T.end,k,null,T,n):null;U?ti(N)&&n(U.range,"BLOCK_IN_FLOW",ei):T.comment&&(b.comment?b.comment+=`
86
+ `+T.comment:b.comment=T.comment);let re=new kc.Pair(b,U);if(t.options.keepSourceTokens&&(re.srcToken=S),a){let C=c;Oc.mapIncludes(t,C.items,b)&&n(L,"DUPLICATE_KEY","Map keys must be unique"),C.items.push(re)}else{let C=new qr.YAMLMap(t.schema);C.flow=!0,C.items.push(re);let Oi=(U??b).range;C.range=[b.range[0],Oi[1],Oi[2]],c.items.push(C)}f=U?U.range[2]:T.end}}let u=a?"}":"]",[m,...y]=i.end,h=f;if(m?.source===u)h=m.offset+m.source.length;else{let p=o[0].toUpperCase()+o.substring(1),S=d?`${p} must end with a ${u}`:`${p} in block collection must be sufficiently indented and end with a ${u}`;n(f,d?"MISSING_CHAR":"BAD_INDENT",S),m&&m.source.length!==1&&y.unshift(m)}if(y.length>0){let p=Ac.resolveEnd(y,h,t.options.strict,n);p.comment&&(c.comment?c.comment+=`
87
+ `+p.comment:c.comment=p.comment),c.range=[i.offset,h,p.offset]}else c.range=[i.offset,h,h];return c}Lr.resolveFlowCollection=Lc});var Cr=g(Tr=>{"use strict";var Ec=q(),Tc=E(),Cc=H(),Ic=X(),Pc=vr(),Mc=Nr(),_c=Er();function si(s,e,t,i,n,r){let a=t.type==="block-map"?Pc.resolveBlockMap(s,e,t,i,r):t.type==="block-seq"?Mc.resolveBlockSeq(s,e,t,i,r):_c.resolveFlowCollection(s,e,t,i,r),o=a.constructor;return n==="!"||n===o.tagName?(a.tag=o.tagName,a):(n&&(a.tag=n),a)}function $c(s,e,t,i,n){let r=i.tag,a=r?e.directives.tagName(r.source,u=>n(r,"TAG_RESOLVE_FAILED",u)):null;if(t.type==="block-seq"){let{anchor:u,newlineAfterProp:m}=i,y=u&&r?u.offset>r.offset?u:r:u??r;y&&(!m||m.offset<y.offset)&&n(y,"MISSING_CHAR","Missing newline after block sequence props")}let o=t.type==="block-map"?"map":t.type==="block-seq"?"seq":t.start.source==="{"?"map":"seq";if(!r||!a||a==="!"||a===Cc.YAMLMap.tagName&&o==="map"||a===Ic.YAMLSeq.tagName&&o==="seq")return si(s,e,t,n,a);let l=e.schema.tags.find(u=>u.tag===a&&u.collection===o);if(!l){let u=e.schema.knownTags[a];if(u?.collection===o)e.schema.tags.push(Object.assign({},u,{default:!1})),l=u;else return u?n(r,"BAD_COLLECTION_TYPE",`${u.tag} used for ${o} collection, but expects ${u.collection??"scalar"}`,!0):n(r,"TAG_RESOLVE_FAILED",`Unresolved tag: ${a}`,!0),si(s,e,t,n,a)}let c=si(s,e,t,n,a,l),d=l.resolve?.(c,u=>n(r,"TAG_RESOLVE_FAILED",u),e.options)??c,f=Ec.isNode(d)?d:new Tc.Scalar(d);return f.range=c.range,f.tag=a,l?.format&&(f.format=l.format),f}Tr.composeCollection=$c});var ni=g(Ir=>{"use strict";var ii=E();function Dc(s,e,t){let i=e.offset,n=Bc(e,s.options.strict,t);if(!n)return{value:"",type:null,comment:"",range:[i,i,i]};let r=n.mode===">"?ii.Scalar.BLOCK_FOLDED:ii.Scalar.BLOCK_LITERAL,a=e.source?Kc(e.source):[],o=a.length;for(let h=a.length-1;h>=0;--h){let p=a[h][1];if(p===""||p==="\r")o=h;else break}if(o===0){let h=n.chomp==="+"&&a.length>0?`
88
+ `.repeat(Math.max(1,a.length-1)):"",p=i+n.length;return e.source&&(p+=e.source.length),{value:h,type:r,comment:n.comment,range:[i,p,p]}}let l=e.indent+n.indent,c=e.offset+n.length,d=0;for(let h=0;h<o;++h){let[p,S]=a[h];if(S===""||S==="\r")n.indent===0&&p.length>l&&(l=p.length);else{p.length<l&&t(c+p.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),n.indent===0&&(l=p.length),d=h,l===0&&!s.atRoot&&t(c,"BAD_INDENT","Block scalar values in collections must be indented");break}c+=p.length+S.length+1}for(let h=a.length-1;h>=o;--h)a[h][0].length>l&&(o=h+1);let f="",u="",m=!1;for(let h=0;h<d;++h)f+=a[h][0].slice(l)+`
89
+ `;for(let h=d;h<o;++h){let[p,S]=a[h];c+=p.length+S.length+1;let w=S[S.length-1]==="\r";if(w&&(S=S.slice(0,-1)),S&&p.length<l){let k=`Block scalar lines must not be less indented than their ${n.indent?"explicit indentation indicator":"first line"}`;t(c-S.length-(w?2:1),"BAD_INDENT",k),p=""}r===ii.Scalar.BLOCK_LITERAL?(f+=u+p.slice(l)+S,u=`
90
+ `):p.length>l||S[0]===" "?(u===" "?u=`
91
+ `:!m&&u===`
92
+ `&&(u=`
93
+
94
+ `),f+=u+p.slice(l)+S,u=`
95
+ `,m=!0):S===""?u===`
96
+ `?f+=`
97
+ `:u=`
98
+ `:(f+=u+S,u=" ",m=!1)}switch(n.chomp){case"-":break;case"+":for(let h=o;h<a.length;++h)f+=`
99
+ `+a[h][0].slice(l);f[f.length-1]!==`
100
+ `&&(f+=`
101
+ `);break;default:f+=`
102
+ `}let y=i+n.length+e.source.length;return{value:f,type:r,comment:n.comment,range:[i,y,y]}}function Bc({offset:s,props:e},t,i){if(e[0].type!=="block-scalar-header")return i(e[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:n}=e[0],r=n[0],a=0,o="",l=-1;for(let u=1;u<n.length;++u){let m=n[u];if(!o&&(m==="-"||m==="+"))o=m;else{let y=Number(m);!a&&y?a=y:l===-1&&(l=s+u)}}l!==-1&&i(l,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${n}`);let c=!1,d="",f=n.length;for(let u=1;u<e.length;++u){let m=e[u];switch(m.type){case"space":c=!0;case"newline":f+=m.source.length;break;case"comment":t&&!c&&i(m,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),f+=m.source.length,d=m.source.substring(1);break;case"error":i(m,"UNEXPECTED_TOKEN",m.message),f+=m.source.length;break;default:{let y=`Unexpected token in block scalar header: ${m.type}`;i(m,"UNEXPECTED_TOKEN",y);let h=m.source;h&&typeof h=="string"&&(f+=h.length)}}}return{mode:r,indent:a,chomp:o,comment:d,length:f}}function Kc(s){let e=s.split(/\n( *)/),t=e[0],i=t.match(/^( *)/),r=[i?.[1]?[i[1],t.slice(i[1].length)]:["",t]];for(let a=1;a<e.length;a+=2)r.push([e[a],e[a+1]]);return r}Ir.resolveBlockScalar=Dc});var ai=g(Mr=>{"use strict";var ri=E(),jc=me();function Fc(s,e,t){let{offset:i,type:n,source:r,end:a}=s,o,l,c=(u,m,y)=>t(i+u,m,y);switch(n){case"scalar":o=ri.Scalar.PLAIN,l=Rc(r,c);break;case"single-quoted-scalar":o=ri.Scalar.QUOTE_SINGLE,l=Uc(r,c);break;case"double-quoted-scalar":o=ri.Scalar.QUOTE_DOUBLE,l=Yc(r,c);break;default:return t(s,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${n}`),{value:"",type:null,comment:"",range:[i,i+r.length,i+r.length]}}let d=i+r.length,f=jc.resolveEnd(a,d,e,t);return{value:l,type:o,comment:f.comment,range:[i,d,f.offset]}}function Rc(s,e){let t="";switch(s[0]){case" ":t="a tab character";break;case",":t="flow indicator character ,";break;case"%":t="directive indicator character %";break;case"|":case">":{t=`block scalar indicator ${s[0]}`;break}case"@":case"`":{t=`reserved character ${s[0]}`;break}}return t&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${t}`),Pr(s)}function Uc(s,e){return(s[s.length-1]!=="'"||s.length===1)&&e(s.length,"MISSING_CHAR","Missing closing 'quote"),Pr(s.slice(1,-1)).replace(/''/g,"'")}function Pr(s){let e,t;try{e=new RegExp(`(.*?)(?<![ ])[ ]*\r?
103
+ `,"sy"),t=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
104
+ `,"sy")}catch{e=/(.*?)[ \t]*\r?\n/sy,t=/[ \t]*(.*?)[ \t]*\r?\n/sy}let i=e.exec(s);if(!i)return s;let n=i[1],r=" ",a=e.lastIndex;for(t.lastIndex=a;i=t.exec(s);)i[1]===""?r===`
105
+ `?n+=r:r=`
106
+ `:(n+=r+i[1],r=" "),a=t.lastIndex;let o=/[ \t]*(.*)/sy;return o.lastIndex=a,i=o.exec(s),n+r+(i?.[1]??"")}function Yc(s,e){let t="";for(let i=1;i<s.length-1;++i){let n=s[i];if(!(n==="\r"&&s[i+1]===`
107
+ `))if(n===`
108
+ `){let{fold:r,offset:a}=Vc(s,i);t+=r,i=a}else if(n==="\\"){let r=s[++i],a=Jc[r];if(a)t+=a;else if(r===`
109
+ `)for(r=s[i+1];r===" "||r===" ";)r=s[++i+1];else if(r==="\r"&&s[i+1]===`
110
+ `)for(r=s[++i+1];r===" "||r===" ";)r=s[++i+1];else if(r==="x"||r==="u"||r==="U"){let o=r==="x"?2:r==="u"?4:8;t+=Qc(s,i+1,o,e),i+=o}else{let o=s.substr(i-1,2);e(i-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${o}`),t+=o}}else if(n===" "||n===" "){let r=i,a=s[i+1];for(;a===" "||a===" ";)a=s[++i+1];a!==`
111
+ `&&!(a==="\r"&&s[i+2]===`
112
+ `)&&(t+=i>r?s.slice(r,i+1):n)}else t+=n}return(s[s.length-1]!=='"'||s.length===1)&&e(s.length,"MISSING_CHAR",'Missing closing "quote'),t}function Vc(s,e){let t="",i=s[e+1];for(;(i===" "||i===" "||i===`
113
+ `||i==="\r")&&!(i==="\r"&&s[e+2]!==`
114
+ `);)i===`
115
+ `&&(t+=`
116
+ `),e+=1,i=s[e+1];return t||(t=" "),{fold:t,offset:e}}var Jc={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
117
+ `,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function Qc(s,e,t,i){let n=s.substr(e,t),a=n.length===t&&/^[0-9a-fA-F]+$/.test(n)?parseInt(n,16):NaN;try{return String.fromCodePoint(a)}catch{let o=s.substr(e-2,t+2);return i(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${o}`),o}}Mr.resolveFlowScalar=Fc});var Dr=g($r=>{"use strict";var ie=q(),_r=E(),Wc=ni(),Gc=ai();function Hc(s,e,t,i){let{value:n,type:r,comment:a,range:o}=e.type==="block-scalar"?Wc.resolveBlockScalar(s,e,i):Gc.resolveFlowScalar(e,s.options.strict,i),l=t?s.directives.tagName(t.source,f=>i(t,"TAG_RESOLVE_FAILED",f)):null,c;s.options.stringKeys&&s.atKey?c=s.schema[ie.SCALAR]:l?c=Xc(s.schema,n,l,t,i):e.type==="scalar"?c=xc(s,n,e,i):c=s.schema[ie.SCALAR];let d;try{let f=c.resolve(n,u=>i(t??e,"TAG_RESOLVE_FAILED",u),s.options);d=ie.isScalar(f)?f:new _r.Scalar(f)}catch(f){let u=f instanceof Error?f.message:String(f);i(t??e,"TAG_RESOLVE_FAILED",u),d=new _r.Scalar(n)}return d.range=o,d.source=n,r&&(d.type=r),l&&(d.tag=l),c.format&&(d.format=c.format),a&&(d.comment=a),d}function Xc(s,e,t,i,n){if(t==="!")return s[ie.SCALAR];let r=[];for(let o of s.tags)if(!o.collection&&o.tag===t)if(o.default&&o.test)r.push(o);else return o;for(let o of r)if(o.test?.test(e))return o;let a=s.knownTags[t];return a&&!a.collection?(s.tags.push(Object.assign({},a,{default:!1,test:void 0})),a):(n(i,"TAG_RESOLVE_FAILED",`Unresolved tag: ${t}`,t!=="tag:yaml.org,2002:str"),s[ie.SCALAR])}function xc({atKey:s,directives:e,schema:t},i,n,r){let a=t.tags.find(o=>(o.default===!0||s&&o.default==="key")&&o.test?.test(i))||t[ie.SCALAR];if(t.compat){let o=t.compat.find(l=>l.default&&l.test?.test(i))??t[ie.SCALAR];if(a.tag!==o.tag){let l=e.tagString(a.tag),c=e.tagString(o.tag),d=`Value may be parsed as either ${l} or ${c}`;r(n,"TAG_RESOLVE_FAILED",d,!0)}}return a}$r.composeScalar=Hc});var Kr=g(Br=>{"use strict";function zc(s,e,t){if(e){t??(t=e.length);for(let i=t-1;i>=0;--i){let n=e[i];switch(n.type){case"space":case"comment":case"newline":s-=n.source.length;continue}for(n=e[++i];n?.type==="space";)s+=n.source.length,n=e[++i];break}}return s}Br.emptyScalarPosition=zc});var Rr=g(li=>{"use strict";var Zc=ve(),ef=q(),tf=Cr(),jr=Dr(),sf=me(),nf=Kr(),rf={composeNode:Fr,composeEmptyNode:oi};function Fr(s,e,t,i){let n=s.atKey,{spaceBefore:r,comment:a,anchor:o,tag:l}=t,c,d=!0;switch(e.type){case"alias":c=af(s,e,i),(o||l)&&i(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":c=jr.composeScalar(s,e,l,i),o&&(c.anchor=o.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":try{c=tf.composeCollection(rf,s,e,t,i),o&&(c.anchor=o.source.substring(1))}catch(f){let u=f instanceof Error?f.message:String(f);i(e,"RESOURCE_EXHAUSTION",u)}break;default:{let f=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;i(e,"UNEXPECTED_TOKEN",f),d=!1}}return c??(c=oi(s,e.offset,void 0,null,t,i)),o&&c.anchor===""&&i(o,"BAD_ALIAS","Anchor cannot be an empty string"),n&&s.options.stringKeys&&(!ef.isScalar(c)||typeof c.value!="string"||c.tag&&c.tag!=="tag:yaml.org,2002:str")&&i(l??e,"NON_STRING_KEY","With stringKeys, all keys must be strings"),r&&(c.spaceBefore=!0),a&&(e.type==="scalar"&&e.source===""?c.comment=a:c.commentBefore=a),s.options.keepSourceTokens&&d&&(c.srcToken=e),c}function oi(s,e,t,i,{spaceBefore:n,comment:r,anchor:a,tag:o,end:l},c){let d={type:"scalar",offset:nf.emptyScalarPosition(e,t,i),indent:-1,source:""},f=jr.composeScalar(s,d,o,c);return a&&(f.anchor=a.source.substring(1),f.anchor===""&&c(a,"BAD_ALIAS","Anchor cannot be an empty string")),n&&(f.spaceBefore=!0),r&&(f.comment=r,f.range[2]=l),f}function af({options:s},{offset:e,source:t,end:i},n){let r=new Zc.Alias(t.substring(1));r.source===""&&n(e,"BAD_ALIAS","Alias cannot be an empty string"),r.source.endsWith(":")&&n(e+t.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let a=e+t.length,o=sf.resolveEnd(i,a,s.strict,n);return r.range=[e,a,o.offset],o.comment&&(r.comment=o.comment),r}li.composeEmptyNode=oi;li.composeNode=Fr});var Vr=g(Yr=>{"use strict";var of=Be(),Ur=Rr(),lf=me(),cf=Re();function ff(s,e,{offset:t,start:i,value:n,end:r},a){let o=Object.assign({_directives:e},s),l=new of.Document(void 0,o),c={atKey:!1,atRoot:!0,directives:l.directives,options:l.options,schema:l.schema},d=cf.resolveProps(i,{indicator:"doc-start",next:n??r?.[0],offset:t,onError:a,parentIndent:0,startOnNewline:!0});d.found&&(l.directives.docStart=!0,n&&(n.type==="block-map"||n.type==="block-seq")&&!d.hasNewline&&a(d.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),l.contents=n?Ur.composeNode(c,n,d,a):Ur.composeEmptyNode(c,d.end,i,null,d,a);let f=l.contents.range[2],u=lf.resolveEnd(r,f,!1,a);return u.comment&&(l.comment=u.comment),l.range=[t,f,u.offset],l}Yr.composeDoc=ff});var fi=g(Wr=>{"use strict";var uf=We("process"),hf=Ht(),df=Be(),Ue=Fe(),Jr=q(),pf=Vr(),mf=me();function Ye(s){if(typeof s=="number")return[s,s+1];if(Array.isArray(s))return s.length===2?s:[s[0],s[1]];let{offset:e,source:t}=s;return[e,e+(typeof t=="string"?t.length:1)]}function Qr(s){let e="",t=!1,i=!1;for(let n=0;n<s.length;++n){let r=s[n];switch(r[0]){case"#":e+=(e===""?"":i?`
118
+
119
+ `:`
120
+ `)+(r.substring(1)||" "),t=!0,i=!1;break;case"%":s[n+1]?.[0]!=="#"&&(n+=1),t=!1;break;default:t||(i=!0),t=!1}}return{comment:e,afterEmptyLine:i}}var ci=class{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(t,i,n,r)=>{let a=Ye(t);r?this.warnings.push(new Ue.YAMLWarning(a,i,n)):this.errors.push(new Ue.YAMLParseError(a,i,n))},this.directives=new hf.Directives({version:e.version||"1.2"}),this.options=e}decorate(e,t){let{comment:i,afterEmptyLine:n}=Qr(this.prelude);if(i){let r=e.contents;if(t)e.comment=e.comment?`${e.comment}
121
+ ${i}`:i;else if(n||e.directives.docStart||!r)e.commentBefore=i;else if(Jr.isCollection(r)&&!r.flow&&r.items.length>0){let a=r.items[0];Jr.isPair(a)&&(a=a.key);let o=a.commentBefore;a.commentBefore=o?`${i}
122
+ ${o}`:i}else{let a=r.commentBefore;r.commentBefore=a?`${i}
123
+ ${a}`:i}}if(t){for(let r=0;r<this.errors.length;++r)e.errors.push(this.errors[r]);for(let r=0;r<this.warnings.length;++r)e.warnings.push(this.warnings[r])}else e.errors=this.errors,e.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:Qr(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,t=!1,i=-1){for(let n of e)yield*this.next(n);yield*this.end(t,i)}*next(e){switch(uf.env.LOG_STREAM&&console.dir(e,{depth:null}),e.type){case"directive":this.directives.add(e.source,(t,i,n)=>{let r=Ye(e);r[0]+=t,this.onError(r,"BAD_DIRECTIVE",i,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let t=pf.composeDoc(this.options,this.directives,e,this.onError);this.atDirectives&&!t.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(t,!1),this.doc&&(yield this.doc),this.doc=t,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{let t=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,i=new Ue.YAMLParseError(Ye(e),"UNEXPECTED_TOKEN",t);this.atDirectives||!this.doc?this.errors.push(i):this.doc.errors.push(i);break}case"doc-end":{if(!this.doc){let i="Unexpected doc-end without preceding document";this.errors.push(new Ue.YAMLParseError(Ye(e),"UNEXPECTED_TOKEN",i));break}this.doc.directives.docEnd=!0;let t=mf.resolveEnd(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),t.comment){let i=this.doc.comment;this.doc.comment=i?`${i}
124
+ ${t.comment}`:t.comment}this.doc.range[2]=t.offset;break}default:this.errors.push(new Ue.YAMLParseError(Ye(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,t=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let i=Object.assign({_directives:this.directives},this.options),n=new df.Document(void 0,i);this.atDirectives&&this.onError(t,"MISSING_CHAR","Missing directives-end indicator line"),n.range=[0,t,t],this.decorate(n,!1),yield n}}};Wr.Composer=ci});var Xr=g(Kt=>{"use strict";var gf=ni(),yf=ai(),bf=Fe(),Gr=Oe();function Sf(s,e=!0,t){if(s){let i=(n,r,a)=>{let o=typeof n=="number"?n:Array.isArray(n)?n[0]:n.offset;if(t)t(o,r,a);else throw new bf.YAMLParseError([o,o+1],r,a)};switch(s.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yf.resolveFlowScalar(s,e,i);case"block-scalar":return gf.resolveBlockScalar({options:{strict:e}},s,i)}}return null}function wf(s,e){let{implicitKey:t=!1,indent:i,inFlow:n=!1,offset:r=-1,type:a="PLAIN"}=e,o=Gr.stringifyString({type:a,value:s},{implicitKey:t,indent:i>0?" ".repeat(i):"",inFlow:n,options:{blockQuote:!0,lineWidth:-1}}),l=e.end??[{type:"newline",offset:-1,indent:i,source:`
125
+ `}];switch(o[0]){case"|":case">":{let c=o.indexOf(`
126
+ `),d=o.substring(0,c),f=o.substring(c+1)+`
127
+ `,u=[{type:"block-scalar-header",offset:r,indent:i,source:d}];return Hr(u,l)||u.push({type:"newline",offset:-1,indent:i,source:`
128
+ `}),{type:"block-scalar",offset:r,indent:i,props:u,source:f}}case'"':return{type:"double-quoted-scalar",offset:r,indent:i,source:o,end:l};case"'":return{type:"single-quoted-scalar",offset:r,indent:i,source:o,end:l};default:return{type:"scalar",offset:r,indent:i,source:o,end:l}}}function vf(s,e,t={}){let{afterKey:i=!1,implicitKey:n=!1,inFlow:r=!1,type:a}=t,o="indent"in s?s.indent:null;if(i&&typeof o=="number"&&(o+=2),!a)switch(s.type){case"single-quoted-scalar":a="QUOTE_SINGLE";break;case"double-quoted-scalar":a="QUOTE_DOUBLE";break;case"block-scalar":{let c=s.props[0];if(c.type!=="block-scalar-header")throw new Error("Invalid block scalar header");a=c.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:a="PLAIN"}let l=Gr.stringifyString({type:a,value:e},{implicitKey:n||o===null,indent:o!==null&&o>0?" ".repeat(o):"",inFlow:r,options:{blockQuote:!0,lineWidth:-1}});switch(l[0]){case"|":case">":kf(s,l);break;case'"':ui(s,l,"double-quoted-scalar");break;case"'":ui(s,l,"single-quoted-scalar");break;default:ui(s,l,"scalar")}}function kf(s,e){let t=e.indexOf(`
129
+ `),i=e.substring(0,t),n=e.substring(t+1)+`
130
+ `;if(s.type==="block-scalar"){let r=s.props[0];if(r.type!=="block-scalar-header")throw new Error("Invalid block scalar header");r.source=i,s.source=n}else{let{offset:r}=s,a="indent"in s?s.indent:-1,o=[{type:"block-scalar-header",offset:r,indent:a,source:i}];Hr(o,"end"in s?s.end:void 0)||o.push({type:"newline",offset:-1,indent:a,source:`
131
+ `});for(let l of Object.keys(s))l!=="type"&&l!=="offset"&&delete s[l];Object.assign(s,{type:"block-scalar",indent:a,props:o,source:n})}}function Hr(s,e){if(e)for(let t of e)switch(t.type){case"space":case"comment":s.push(t);break;case"newline":return s.push(t),!0}return!1}function ui(s,e,t){switch(s.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":s.type=t,s.source=e;break;case"block-scalar":{let i=s.props.slice(1),n=e.length;s.props[0].type==="block-scalar-header"&&(n-=s.props[0].source.length);for(let r of i)r.offset+=n;delete s.props,Object.assign(s,{type:t,source:e,end:i});break}case"block-map":case"block-seq":{let n={type:"newline",offset:s.offset+e.length,indent:s.indent,source:`
132
+ `};delete s.items,Object.assign(s,{type:t,source:e,end:[n]});break}default:{let i="indent"in s?s.indent:-1,n="end"in s&&Array.isArray(s.end)?s.end.filter(r=>r.type==="space"||r.type==="comment"||r.type==="newline"):[];for(let r of Object.keys(s))r!=="type"&&r!=="offset"&&delete s[r];Object.assign(s,{type:t,indent:i,source:e,end:n})}}}Kt.createScalarToken=wf;Kt.resolveAsScalar=Sf;Kt.setScalarValue=vf});var zr=g(xr=>{"use strict";var Nf=s=>"type"in s?Ft(s):jt(s);function Ft(s){switch(s.type){case"block-scalar":{let e="";for(let t of s.props)e+=Ft(t);return e+s.source}case"block-map":case"block-seq":{let e="";for(let t of s.items)e+=jt(t);return e}case"flow-collection":{let e=s.start.source;for(let t of s.items)e+=jt(t);for(let t of s.end)e+=t.source;return e}case"document":{let e=jt(s);if(s.end)for(let t of s.end)e+=t.source;return e}default:{let e=s.source;if("end"in s&&s.end)for(let t of s.end)e+=t.source;return e}}}function jt({start:s,key:e,sep:t,value:i}){let n="";for(let r of s)n+=r.source;if(e&&(n+=Ft(e)),t)for(let r of t)n+=r.source;return i&&(n+=Ft(i)),n}xr.stringify=Nf});var sa=g(ta=>{"use strict";var hi=Symbol("break visit"),Af=Symbol("skip children"),Zr=Symbol("remove item");function ne(s,e){"type"in s&&s.type==="document"&&(s={start:s.start,value:s.value}),ea(Object.freeze([]),s,e)}ne.BREAK=hi;ne.SKIP=Af;ne.REMOVE=Zr;ne.itemAtPath=(s,e)=>{let t=s;for(let[i,n]of e){let r=t?.[i];if(r&&"items"in r)t=r.items[n];else return}return t};ne.parentCollection=(s,e)=>{let t=ne.itemAtPath(s,e.slice(0,-1)),i=e[e.length-1][0],n=t?.[i];if(n&&"items"in n)return n;throw new Error("Parent collection not found")};function ea(s,e,t){let i=t(e,s);if(typeof i=="symbol")return i;for(let n of["key","value"]){let r=e[n];if(r&&"items"in r){for(let a=0;a<r.items.length;++a){let o=ea(Object.freeze(s.concat([[n,a]])),r.items[a],t);if(typeof o=="number")a=o-1;else{if(o===hi)return hi;o===Zr&&(r.items.splice(a,1),a-=1)}}typeof i=="function"&&n==="key"&&(i=i(e,s))}}return typeof i=="function"?i(e,s):i}ta.visit=ne});var Rt=g(_=>{"use strict";var di=Xr(),qf=zr(),Of=sa(),pi="\uFEFF",mi="",gi="",yi="",Lf=s=>!!s&&"items"in s,Ef=s=>!!s&&(s.type==="scalar"||s.type==="single-quoted-scalar"||s.type==="double-quoted-scalar"||s.type==="block-scalar");function Tf(s){switch(s){case pi:return"<BOM>";case mi:return"<DOC>";case gi:return"<FLOW_END>";case yi:return"<SCALAR>";default:return JSON.stringify(s)}}function Cf(s){switch(s){case pi:return"byte-order-mark";case mi:return"doc-mode";case gi:return"flow-error-end";case yi:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
133
+ `:case`\r
134
+ `:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(s[0]){case" ":case" ":return"space";case"#":return"comment";case"%":return"directive-line";case"*":return"alias";case"&":return"anchor";case"!":return"tag";case"'":return"single-quoted-scalar";case'"':return"double-quoted-scalar";case"|":case">":return"block-scalar-header"}return null}_.createScalarToken=di.createScalarToken;_.resolveAsScalar=di.resolveAsScalar;_.setScalarValue=di.setScalarValue;_.stringify=qf.stringify;_.visit=Of.visit;_.BOM=pi;_.DOCUMENT=mi;_.FLOW_END=gi;_.SCALAR=yi;_.isCollection=Lf;_.isScalar=Ef;_.prettyToken=Tf;_.tokenType=Cf});var wi=g(na=>{"use strict";var Ve=Rt();function B(s){switch(s){case void 0:case" ":case`
135
+ `:case"\r":case" ":return!0;default:return!1}}var ia=new Set("0123456789ABCDEFabcdef"),If=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),Ut=new Set(",[]{}"),Pf=new Set(` ,[]{}
136
+ \r `),bi=s=>!s||Pf.has(s),Si=class{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(e,t=!1){if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!t;let i=this.next??"stream";for(;i&&(t||this.hasChars(1));)i=yield*this.parseNext(i)}atLineEnd(){let e=this.pos,t=this.buffer[e];for(;t===" "||t===" ";)t=this.buffer[++e];return!t||t==="#"||t===`
137
+ `?!0:t==="\r"?this.buffer[e+1]===`
138
+ `:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let t=this.buffer[e];if(this.indentNext>0){let i=0;for(;t===" ";)t=this.buffer[++i+e];if(t==="\r"){let n=this.buffer[i+e+1];if(n===`
139
+ `||!n&&!this.atEnd)return e+i+1}return t===`
140
+ `||i>=this.indentNext||!t&&!this.atEnd?e+i:-1}if(t==="-"||t==="."){let i=this.buffer.substr(e,3);if((i==="---"||i==="...")&&B(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&e<this.pos)&&(e=this.buffer.indexOf(`
141
+ `,this.pos),this.lineEndPos=e),e===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[e-1]==="\r"&&(e-=1),this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===Ve.BOM&&(yield*this.pushCount(1),e=e.substring(1)),e[0]==="%"){let t=e.length,i=e.indexOf("#");for(;i!==-1;){let r=e[i-1];if(r===" "||r===" "){t=i-1;break}else i=e.indexOf("#",i+1)}for(;;){let r=e[t-1];if(r===" "||r===" ")t-=1;else break}let n=(yield*this.pushCount(t))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-n),this.pushNewline(),"stream"}if(this.atLineEnd()){let t=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-t),yield*this.pushNewline(),"stream"}return yield Ve.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if(e==="-"||e==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let t=this.peek(3);if((t==="---"||t==="...")&&B(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,t==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!B(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[e,t]=this.peek(2);if(!t&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&B(t)){let i=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=i,"block-start"}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let e=this.getLine();if(e===null)return this.setNext("doc");let t=yield*this.pushIndicators();switch(e[t]){case"#":yield*this.pushCount(e.length-t);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(bi),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return t+=yield*this.parseBlockScalarHeader(),t+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-t),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,t,i=-1;do e=yield*this.pushNewline(),e>0?(t=yield*this.pushSpaces(!1),this.indentValue=i=t):t=0,t+=yield*this.pushSpaces(!0);while(e+t>0);let n=this.getLine();if(n===null)return this.setNext("flow");if((i!==-1&&i<this.indentNext&&n[0]!=="#"||i===0&&(n.startsWith("---")||n.startsWith("..."))&&B(n[3]))&&!(i===this.indentNext-1&&this.flowLevel===1&&(n[0]==="]"||n[0]==="}")))return this.flowLevel=0,yield Ve.FLOW_END,yield*this.parseLineStart();let r=0;for(;n[r]===",";)r+=yield*this.pushCount(1),r+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(r+=yield*this.pushIndicators(),n[r]){case void 0:return"flow";case"#":return yield*this.pushCount(n.length-r),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(bi),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let a=this.charAt(1);if(this.flowKey||B(a)||a===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let e=this.charAt(0),t=this.buffer.indexOf(e,this.pos+1);if(e==="'")for(;t!==-1&&this.buffer[t+1]==="'";)t=this.buffer.indexOf("'",t+2);else for(;t!==-1;){let r=0;for(;this.buffer[t-1-r]==="\\";)r+=1;if(r%2===0)break;t=this.buffer.indexOf('"',t+1)}let i=this.buffer.substring(0,t),n=i.indexOf(`
142
+ `,this.pos);if(n!==-1){for(;n!==-1;){let r=this.continueScalar(n+1);if(r===-1)break;n=i.indexOf(`
143
+ `,r)}n!==-1&&(t=n-(i[n-1]==="\r"?2:1))}if(t===-1){if(!this.atEnd)return this.setNext("quoted-scalar");t=this.buffer.length}return yield*this.pushToIndex(t+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){let t=this.buffer[++e];if(t==="+")this.blockScalarKeep=!0;else if(t>"0"&&t<="9")this.blockScalarIndent=Number(t)-1;else if(t!=="-")break}return yield*this.pushUntil(t=>B(t)||t==="#")}*parseBlockScalar(){let e=this.pos-1,t=0,i;e:for(let r=this.pos;i=this.buffer[r];++r)switch(i){case" ":t+=1;break;case`
144
+ `:e=r,t=0;break;case"\r":{let a=this.buffer[r+1];if(!a&&!this.atEnd)return this.setNext("block-scalar");if(a===`
145
+ `)break}default:break e}if(!i&&!this.atEnd)return this.setNext("block-scalar");if(t>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=t:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let r=this.continueScalar(e+1);if(r===-1)break;e=this.buffer.indexOf(`
146
+ `,r)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let n=e+1;for(i=this.buffer[n];i===" ";)i=this.buffer[++n];if(i===" "){for(;i===" "||i===" "||i==="\r"||i===`
147
+ `;)i=this.buffer[++n];e=n-1}else if(!this.blockScalarKeep)do{let r=e-1,a=this.buffer[r];a==="\r"&&(a=this.buffer[--r]);let o=r;for(;a===" ";)a=this.buffer[--r];if(a===`
148
+ `&&r>=this.pos&&r+1+t>o)e=r;else break}while(!0);return yield Ve.SCALAR,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let e=this.flowLevel>0,t=this.pos-1,i=this.pos-1,n;for(;n=this.buffer[++i];)if(n===":"){let r=this.buffer[i+1];if(B(r)||e&&Ut.has(r))break;t=i}else if(B(n)){let r=this.buffer[i+1];if(n==="\r"&&(r===`
149
+ `?(i+=1,n=`
150
+ `,r=this.buffer[i+1]):t=i),r==="#"||e&&Ut.has(r))break;if(n===`
151
+ `){let a=this.continueScalar(i+1);if(a===-1)break;i=Math.max(i,a-2)}}else{if(e&&Ut.has(n))break;t=i}return!n&&!this.atEnd?this.setNext("plain-scalar"):(yield Ve.SCALAR,yield*this.pushToIndex(t+1,!0),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,t){let i=this.buffer.slice(this.pos,e);return i?(yield i,this.pos+=i.length,i.length):(t&&(yield""),0)}*pushIndicators(){let e=0;e:for(;;){switch(this.charAt(0)){case"!":e+=yield*this.pushTag(),e+=yield*this.pushSpaces(!0);continue e;case"&":e+=yield*this.pushUntil(bi),e+=yield*this.pushSpaces(!0);continue e;case"-":case"?":case":":{let t=this.flowLevel>0,i=this.charAt(1);if(B(i)||t&&Ut.has(i)){t?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,e+=yield*this.pushCount(1),e+=yield*this.pushSpaces(!0);continue e}}}break e}return e}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,t=this.buffer[e];for(;!B(t)&&t!==">";)t=this.buffer[++e];return yield*this.pushToIndex(t===">"?e+1:e,!1)}else{let e=this.pos+1,t=this.buffer[e];for(;t;)if(If.has(t))t=this.buffer[++e];else if(t==="%"&&ia.has(this.buffer[e+1])&&ia.has(this.buffer[e+2]))t=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){let e=this.buffer[this.pos];return e===`
152
+ `?yield*this.pushCount(1):e==="\r"&&this.charAt(1)===`
153
+ `?yield*this.pushCount(2):0}*pushSpaces(e){let t=this.pos-1,i;do i=this.buffer[++t];while(i===" "||e&&i===" ");let n=t-this.pos;return n>0&&(yield this.buffer.substr(this.pos,n),this.pos=t),n}*pushUntil(e){let t=this.pos,i=this.buffer[t];for(;!e(i);)i=this.buffer[++t];return yield*this.pushToIndex(t,!1)}};na.Lexer=Si});var ki=g(ra=>{"use strict";var vi=class{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let t=0,i=this.lineStarts.length;for(;t<i;){let r=t+i>>1;this.lineStarts[r]<e?t=r+1:i=r}if(this.lineStarts[t]===e)return{line:t+1,col:1};if(t===0)return{line:0,col:e};let n=this.lineStarts[t-1];return{line:t,col:e-n+1}}}};ra.LineCounter=vi});var Ai=g(fa=>{"use strict";var Mf=We("process"),aa=Rt(),_f=wi();function x(s,e){for(let t=0;t<s.length;++t)if(s[t].type===e)return!0;return!1}function oa(s){for(let e=0;e<s.length;++e)switch(s[e].type){case"space":case"comment":case"newline":break;default:return e}return-1}function ca(s){switch(s?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function Yt(s){switch(s.type){case"document":return s.start;case"block-map":{let e=s.items[s.items.length-1];return e.sep??e.start}case"block-seq":return s.items[s.items.length-1].start;default:return[]}}function ge(s){if(s.length===0)return[];let e=s.length;e:for(;--e>=0;)switch(s[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;s[++e]?.type==="space";);return s.splice(e,s.length)}function Vt(s,e){if(e.length<1e5)Array.prototype.push.apply(s,e);else for(let t=0;t<e.length;++t)s.push(e[t])}function la(s){if(s.start.type==="flow-seq-start")for(let e of s.items)e.sep&&!e.value&&!x(e.start,"explicit-key-ind")&&!x(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,ca(e.value)?e.value.end?Vt(e.value.end,e.sep):e.value.end=e.sep:Vt(e.start,e.sep),delete e.sep)}var Ni=class{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new _f.Lexer,this.onNewLine=e}*parse(e,t=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let i of this.lexer.lex(e,t))yield*this.next(i);t||(yield*this.end())}*next(e){if(this.source=e,Mf.env.LOG_TOKENS&&console.log("|",aa.prettyToken(e)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let t=aa.tokenType(e);if(t)if(t==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=t,yield*this.step(),t){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{let i=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:i,source:e}),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let e=this.peek(1);if(this.type==="doc-end"&&e?.type!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){let t=e??this.stack.pop();if(!t)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield t;else{let i=this.peek(1);switch(t.type==="block-scalar"?t.indent="indent"in i?i.indent:0:t.type==="flow-collection"&&i.type==="document"&&(t.indent=0),t.type==="flow-collection"&&la(t),i.type){case"document":i.value=t;break;case"block-scalar":i.props.push(t);break;case"block-map":{let n=i.items[i.items.length-1];if(n.value){i.items.push({start:[],key:t,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=t;else{Object.assign(n,{key:t,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case"block-seq":{let n=i.items[i.items.length-1];n.value?i.items.push({start:[],value:t}):n.value=t;break}case"flow-collection":{let n=i.items[i.items.length-1];!n||n.value?i.items.push({start:[],key:t,sep:[]}):n.sep?n.value=t:Object.assign(n,{key:t,sep:[]});return}default:yield*this.pop(),yield*this.pop(t)}if((i.type==="document"||i.type==="block-map"||i.type==="block-seq")&&(t.type==="block-map"||t.type==="block-seq")){let n=t.items[t.items.length-1];n&&!n.sep&&!n.value&&n.start.length>0&&oa(n.start)===-1&&(t.indent===0||n.start.every(r=>r.type!=="comment"||r.indent<t.indent))&&(i.type==="document"?i.end=n.start:i.items.push({start:n.start}),t.items.splice(-1,1))}}}*stream(){switch(this.type){case"directive-line":yield{type:"directive",offset:this.offset,source:this.source};return;case"byte-order-mark":case"space":case"comment":case"newline":yield this.sourceToken;return;case"doc-mode":case"doc-start":{let e={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case"doc-start":{oa(e.start)!==-1?(yield*this.pop(),yield*this.step()):e.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}let t=this.startBlockValue(e);t?this.stack.push(t):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type==="map-value-ind"){let t=Yt(this.peek(2)),i=ge(t),n;e.end?(n=e.end,n.push(this.sourceToken),delete e.end):n=[this.sourceToken];let r={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:i,key:e,sep:n}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=r}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let t=this.source.indexOf(`
154
+ `)+1;for(;t!==0;)this.onNewLine(this.offset+t),t=this.source.indexOf(`
155
+ `,t)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,t.value){let i="end"in t.value?t.value.end:void 0;(Array.isArray(i)?i[i.length-1]:void 0)?.type==="comment"?i?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else if(t.sep)t.sep.push(this.sourceToken);else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Vt(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let i=!this.onKeyLine&&this.indent===e.indent,n=i&&(t.sep||t.explicitKey)&&this.type!=="seq-item-ind",r=[];if(n&&t.sep&&!t.value){let a=[];for(let o=0;o<t.sep.length;++o){let l=t.sep[o];switch(l.type){case"newline":a.push(o);break;case"space":break;case"comment":l.indent>e.indent&&(a.length=0);break;default:a.length=0}}a.length>=2&&(r=t.sep.splice(a[1]))}switch(this.type){case"anchor":case"tag":n||t.value?(r.push(this.sourceToken),e.items.push({start:r}),this.onKeyLine=!0):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"explicit-key-ind":!t.sep&&!t.explicitKey?(t.start.push(this.sourceToken),t.explicitKey=!0):n||t.value?(r.push(this.sourceToken),e.items.push({start:r,explicitKey:!0})):this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken],explicitKey:!0}]}),this.onKeyLine=!0;return;case"map-value-ind":if(t.explicitKey)if(t.sep)if(t.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(x(t.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:r,key:null,sep:[this.sourceToken]}]});else if(ca(t.key)&&!x(t.sep,"newline")){let a=ge(t.start),o=t.key,l=t.sep;l.push(this.sourceToken),delete t.key,delete t.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:o,sep:l}]})}else r.length>0?t.sep=t.sep.concat(r,this.sourceToken):t.sep.push(this.sourceToken);else if(x(t.start,"newline"))Object.assign(t,{key:null,sep:[this.sourceToken]});else{let a=ge(t.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else t.sep?t.value||n?e.items.push({start:r,key:null,sep:[this.sourceToken]}):x(t.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);n||t.value?(e.items.push({start:r,key:a,sep:[]}),this.onKeyLine=!0):t.sep?this.stack.push(a):(Object.assign(t,{key:a,sep:[]}),this.onKeyLine=!0);return}default:{let a=this.startBlockValue(e);if(a){if(a.type==="block-seq"){if(!t.explicitKey&&t.sep&&!x(t.sep,"newline")){yield*this.pop({type:"error",offset:this.offset,message:"Unexpected block-seq-ind on same line with key",source:this.source});return}}else i&&e.items.push({start:r});this.stack.push(a);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let t=e.items[e.items.length-1];switch(this.type){case"newline":if(t.value){let i="end"in t.value?t.value.end:void 0;(Array.isArray(i)?i[i.length-1]:void 0)?.type==="comment"?i?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else t.start.push(this.sourceToken);return;case"space":case"comment":if(t.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(t.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Vt(n,t.start),n.push(this.sourceToken),e.items.pop();return}}t.start.push(this.sourceToken)}return;case"anchor":case"tag":if(t.value||this.indent<=e.indent)break;t.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;t.value||x(t.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return}if(this.indent>e.indent){let i=this.startBlockValue(e);if(i){this.stack.push(i);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){let t=e.items[e.items.length-1];if(this.type==="flow-error-end"){let i;do yield*this.pop(),i=this.peek(1);while(i?.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!t||t.sep?e.items.push({start:[this.sourceToken]}):t.start.push(this.sourceToken);return;case"map-value-ind":!t||t.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):Object.assign(t,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!t||t.value?e.items.push({start:[this.sourceToken]}):t.sep?t.sep.push(this.sourceToken):t.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let n=this.flowScalar(this.type);!t||t.value?e.items.push({start:[],key:n,sep:[]}):t.sep?this.stack.push(n):Object.assign(t,{key:n,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let i=this.startBlockValue(e);i?this.stack.push(i):(yield*this.pop(),yield*this.step())}else{let i=this.peek(2);if(i.type==="block-map"&&(this.type==="map-value-ind"&&i.indent===e.indent||this.type==="newline"&&!i.items[i.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&i.type!=="flow-collection"){let n=Yt(i),r=ge(n);la(e);let a=e.end.splice(1,e.end.length);a.push(this.sourceToken);let o={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:r,key:e,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let t=this.source.indexOf(`
156
+ `)+1;for(;t!==0;)this.onNewLine(this.offset+t),t=this.source.indexOf(`
157
+ `,t)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){switch(this.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return this.flowScalar(this.type);case"block-scalar-header":return{type:"block-scalar",offset:this.offset,indent:this.indent,props:[this.sourceToken],source:""};case"flow-map-start":case"flow-seq-start":return{type:"flow-collection",offset:this.offset,indent:this.indent,start:this.sourceToken,items:[],end:[]};case"seq-item-ind":return{type:"block-seq",offset:this.offset,indent:this.indent,items:[{start:[this.sourceToken]}]};case"explicit-key-ind":{this.onKeyLine=!0;let t=Yt(e),i=ge(t);return i.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let t=Yt(e),i=ge(t);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,t){return this.type!=="comment"||this.indent<=t?!1:e.every(i=>i.type==="newline"||i.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){switch(this.type){case"comma":case"doc-start":case"doc-end":case"flow-seq-end":case"flow-map-end":case"map-value-ind":yield*this.pop(),yield*this.step();break;case"newline":this.onKeyLine=!1;default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};fa.Parser=Ni});var ma=g(Qe=>{"use strict";var ua=fi(),$f=Be(),Je=Fe(),Df=ls(),Bf=q(),Kf=ki(),ha=Ai();function da(s){let e=s.prettyErrors!==!1;return{lineCounter:s.lineCounter||e&&new Kf.LineCounter||null,prettyErrors:e}}function jf(s,e={}){let{lineCounter:t,prettyErrors:i}=da(e),n=new ha.Parser(t?.addNewLine),r=new ua.Composer(e),a=Array.from(r.compose(n.parse(s)));if(i&&t)for(let o of a)o.errors.forEach(Je.prettifyError(s,t)),o.warnings.forEach(Je.prettifyError(s,t));return a.length>0?a:Object.assign([],{empty:!0},r.streamInfo())}function pa(s,e={}){let{lineCounter:t,prettyErrors:i}=da(e),n=new ha.Parser(t?.addNewLine),r=new ua.Composer(e),a=null;for(let o of r.compose(n.parse(s),!0,s.length))if(!a)a=o;else if(a.options.logLevel!=="silent"){a.errors.push(new Je.YAMLParseError(o.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return i&&t&&(a.errors.forEach(Je.prettifyError(s,t)),a.warnings.forEach(Je.prettifyError(s,t))),a}function Ff(s,e,t){let i;typeof e=="function"?i=e:t===void 0&&e&&typeof e=="object"&&(t=e);let n=pa(s,t);if(!n)return null;if(n.warnings.forEach(r=>Df.warn(n.options.logLevel,r)),n.errors.length>0){if(n.options.logLevel!=="silent")throw n.errors[0];n.errors=[]}return n.toJS(Object.assign({reviver:i},t))}function Rf(s,e,t){let i=null;if(typeof e=="function"||Array.isArray(e)?i=e:t===void 0&&e&&(t=e),typeof t=="string"&&(t=t.length),typeof t=="number"){let n=Math.round(t);t=n<1?void 0:n>8?{indent:8}:{indent:n}}if(s===void 0){let{keepUndefined:n}=t??e??{};if(!n)return}return Bf.isDocument(s)&&!i?s.toString(t):new $f.Document(s,i,t).toString(t)}Qe.parse=Ff;Qe.parseAllDocuments=jf;Qe.parseDocument=pa;Qe.stringify=Rf});var ya=g(O=>{"use strict";var Uf=fi(),Yf=Be(),Vf=Vs(),qi=Fe(),Jf=ve(),z=q(),Qf=W(),Wf=E(),Gf=H(),Hf=X(),Xf=Rt(),xf=wi(),zf=ki(),Zf=Ai(),Jt=ma(),ga=ye();O.Composer=Uf.Composer;O.Document=Yf.Document;O.Schema=Vf.Schema;O.YAMLError=qi.YAMLError;O.YAMLParseError=qi.YAMLParseError;O.YAMLWarning=qi.YAMLWarning;O.Alias=Jf.Alias;O.isAlias=z.isAlias;O.isCollection=z.isCollection;O.isDocument=z.isDocument;O.isMap=z.isMap;O.isNode=z.isNode;O.isPair=z.isPair;O.isScalar=z.isScalar;O.isSeq=z.isSeq;O.Pair=Qf.Pair;O.Scalar=Wf.Scalar;O.YAMLMap=Gf.YAMLMap;O.YAMLSeq=Hf.YAMLSeq;O.CST=Xf;O.Lexer=xf.Lexer;O.LineCounter=zf.LineCounter;O.Parser=Zf.Parser;O.parse=Jt.parse;O.parseAllDocuments=Jt.parseAllDocuments;O.parseDocument=Jt.parseDocument;O.stringify=Jt.stringify;O.visit=ga.visit;O.visitAsync=ga.visitAsync});var eu=Aa(ya(),1);var export_parseDocument=eu.parseDocument;export{export_parseDocument as parseDocument};
@@ -11,11 +11,16 @@ Salve diagnósticos, estratégias, decisões de RevOps, hipóteses de experiment
11
11
 
12
12
  O arquivo central da área é `.agents/growth/strategy.md`; atualize-o quando uma decisão mudar a estratégia de Growth ou RevOps. Diagnósticos e experimentos específicos podem ser arquivos adicionais na mesma pasta.
13
13
 
14
- 1. Delimite a decisão de negócio, período, segmentos, funil, métricas, restrições e impacto financeiro esperado. Separe fatos observados, cálculo determinístico, hipótese e recomendação.
15
- 2. Examine a ponta a ponta do funil e dos handoffs de RevOps: aquisição, qualificação, conversão, receita, retenção, expansão, custos e capacidade. Não declare causalidade sem desenho ou evidência adequados.
16
- 3. Proponha testes com hipótese, população, métrica primária, guardrails, duração, critério de decisão, risco e responsável. Não execute campanhas, alterações comerciais externas ou experimentos sem a autorização e o escopo correspondentes.
17
- 4. Priorize oportunidades por impacto potencial, confiança, esforço, dependências e reversibilidade. Para recomendações financeiras, explicite fórmula, premissas, sensibilidade e lacunas; não prometa receita nem economia.
18
- 5. Em conselho ou planejamento de negócio, priorize portfólio, modelo de negócio, opções e handoffs de execução. Solicite análise reprodutível de Gabi quando houver dataset, cálculo, qualidade de dados ou significância. Encaminhe plataforma de marca à Sarah, campanha/copy a Lúcia e playbook/processo sales-facing a Aaron.
19
- 6. Produza uma recomendação consultiva: decisão, evidência, incerteza, opções, impacto esperado, próximo experimento e dono da próxima ação. Não produza campanha, Brandbook ou playbook comercial como substituto da recomendação.
14
+ ## Descoberta e entrega progressivas
15
+
16
+ 1. Comece pelas referências acessíveis fornecidas — texto, site, PDF, PPT, planilha, arquivo ou imagem. Registre cada fonte com locator e classifique seu conteúdo como fato, decisão aprovada, hipótese, dado ou lacuna. Reutilize os artefatos aprovados; não recrie sua fonte central nem duplique seu conteúdo em outro arquivo.
17
+ 2. Se o trabalho começar do zero ou o contexto for insuficiente, faça no máximo cinco perguntas críticas por turno, por até três turnos. Pergunte somente por lacunas que mudam a decisão: objetivo, período, segmentos, funil, métricas, restrições ou impacto financeiro. Espere as respostas antes de avançar nas partes que delas dependem; silêncio não é resposta nem aprovação. Após três turnos, prossiga somente com hipóteses delegáveis rotuladas e lacunas explícitas, sem inventar decisões, autoridade, métricas ou datasets.
18
+ 3. Um pedido pontual com contexto suficiente deve ser respondido diretamente, sem questionário obrigatório nem plano integral.
19
+ 4. Aplique somente as partes necessárias ao escopo solicitado: `diagnóstico do funil e handoffs` → `prioridades` → `experimento` → `estratégia consolidada`. Identifique a parte em construção e só consolide em `.agents/growth/strategy.md` quando o contexto sustentar uma decisão estratégica. Mantenha diagnósticos e experimentos específicos como arquivos complementares, sem duplicar a estratégia central; não exija todos os módulos ou formatos.
20
+ 5. No diagnóstico, examine aquisição, qualificação, conversão, receita, retenção, expansão, custos e capacidade. Separe fatos observados, cálculo determinístico, hipótese e recomendação; não declare causalidade sem desenho ou evidência adequados.
21
+ 6. Priorize oportunidades por impacto potencial, confiança, esforço, dependências e reversibilidade. Para recomendações financeiras, explicite fórmula, premissas, sensibilidade e lacunas; não prometa receita nem economia.
22
+ 7. Para cada experimento, registre hipótese, população, métrica primária, guardrails, duração, critério de decisão, risco e responsável. Não execute campanhas, alterações comerciais externas ou experimentos sem a autorização e o escopo correspondentes.
23
+ 8. Em conselho ou planejamento de negócio, priorize portfólio, modelo de negócio, opções e handoffs de execução. Solicite análise reprodutível de Gabi quando houver dataset, cálculo, qualidade de dados ou significância. Encaminhe plataforma de marca à Sarah, campanha/copy a Lúcia e playbook/processo sales-facing a Aaron.
24
+ 9. Produza uma recomendação consultiva: decisão, evidência, incerteza, opções, impacto esperado, próximo experimento e dono da próxima ação. Não produza campanha, Brandbook ou playbook comercial como substituto da recomendação.
20
25
 
21
26
  Consulte o [framework de decisão](references/growth-revops-framework.md) para planejar diagnóstico ou experimento.
@@ -0,0 +1,17 @@
1
+ ---
2
+ name: zaip-skill-hostinger-cloudflare-terraform
3
+ description: Operate Terraform for scoped Cloudflare DNS and Hostinger VPS with target-bound credentials, state safety, and truthful validation.
4
+ ---
5
+
6
+ # Terraform Cloudflare e Hostinger
7
+
8
+ Use para criar, importar, ler, alterar ou validar VPS Hostinger e DNS Cloudflare por Terraform. Leia o contrato de infraestrutura indicado pela Task, [o procedimento operacional](references/operational-contract.md) e [o guia do runner autônomo](references/autonomous-runner.md).
9
+
10
+ 1. Delimite o perfil `autonomous-cloud`, conta+zona Cloudflare, conta Hostinger, IDs das VPS e fingerprints SSH. Credenciais de dotenv não concedem autoridade nem permitem novo alvo. Use `.env` da raiz primeiro e `.agents/.env` somente quando selecionado pela execução.
11
+ Quando uma Task já registra mandato permanente e o `.env` raiz possui identificadores deliberados, faça descoberta somente de leitura para derivar o contrato de alvo; não exija JSON manual ou reautorização. Não generalize essa exceção a outro projeto.
12
+ 2. Aplique `$zaip-skill-local-credentials` e injete a credencial mínima por subprocesso: Cloudflare para DNS, Hostinger para VPS, backend de state quando aplicável, e referência de chave+fingerprint para SSH. Nunca mostre token, senha, state, plano binário ou material de chave.
13
+ 3. Cloudflare controla DNS e edge; Hostinger controla apenas VPS. Nunca chame ou modele DNS Hostinger. Preserve Pages como destino web separado da origem VPS.
14
+ 4. Exija VPS 1 como ingress público e VPS 2 como aplicação privada. Não exponha Redis, BullMQ, exporters, painéis ou observabilidade; declare transporte privado, firewall e executor de configuração antes de afirmar que existem.
15
+ 5. Antes de `apply`, exija backend remoto criptografado, versionado e com locking. Rode `init`, `fmt`, `validate` e plano salvo/revisado. Apply usa somente o plano revisado; importação exige ID explicitamente aprovado e revisão de state sem segredo.
16
+ 6. Depois de escrever, faça refresh/read-after-write e testes de DNS, TLS, saúde, negação de portas, isolamento beta/produção e restore. Sem execução observada contra os alvos delimitados, registre somente prova estática/local.
17
+ 7. Em criação, confirme nomes, plano, região, template e teto aprovados, vincule IDs observados e verifique fingerprint antes de SSH. Dentro desse escopo, portas aprovadas, firewall, rotação de chave e DNS são autônomos. Troca de conta/zona/VPS/fingerprint, expansão de orçamento, destino ou recurso desconhecido, ou efeito irreversível ainda não aprovado bloqueia até que a Task atualize o escopo.
@@ -0,0 +1,7 @@
1
+ interface:
2
+ display_name: "Terraform Cloudflare Hostinger"
3
+ short_description: "Opera DNS Cloudflare e VPS Hostinger delimitados"
4
+ default_prompt: "Use $zaip-skill-hostinger-cloudflare-terraform para validar alvos, state e uma operacao Terraform Cloudflare/Hostinger com evidencias honestas."
5
+ policy:
6
+ allow_implicit_invocation: true
7
+
@@ -0,0 +1,41 @@
1
+ {
2
+ "version": 1,
3
+ "profile": "autonomous-cloud",
4
+ "cloudflare": {
5
+ "account_id": "replace-with-cloudflare-account-id",
6
+ "zone_id": "replace-with-cloudflare-zone-id",
7
+ "zone_name": "example.com",
8
+ "dns_records": [],
9
+ "direct_dns_records": {},
10
+ "allowed_operations": []
11
+ },
12
+ "hostinger": {
13
+ "account_id": "replace-with-declared-hostinger-account-label",
14
+ "allowed_operations": [],
15
+ "vps": {
16
+ "edge": { "id": "replace-with-observed-vps-api-id" },
17
+ "application": { "id": "replace-with-observed-vps-api-id" }
18
+ }
19
+ },
20
+ "terraform": {
21
+ "working_directory": "infra/terraform",
22
+ "binary_path": ".local/tools/terraform",
23
+ "binary_sha256": "replace-with-verified-terraform-binary-sha256",
24
+ "allowed_operations": [],
25
+ "plan": {
26
+ "backend": {
27
+ "type": "s3",
28
+ "config": {
29
+ "bucket": "replace-with-approved-s3-bucket",
30
+ "key": "terraform/terraform.tfstate",
31
+ "region": "us-east-1",
32
+ "encrypt": true,
33
+ "use_lockfile": true
34
+ }
35
+ },
36
+ "path": ".local/cloud/plans/replace-with-plan-id.tfplan",
37
+ "policy_json_path": ".local/cloud/plans/replace-with-plan-id.json",
38
+ "policy_contract_path": "infra/terraform/fixtures/approved-targets.json"
39
+ }
40
+ }
41
+ }