@sitecoreai-labs/sitecoreai-cli 0.0.4 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1387) hide show
  1. package/AGENTS.md +146 -55
  2. package/README.md +372 -325
  3. package/dist/agents/api/agents.d.ts +27 -0
  4. package/dist/agents/api/agents.js +70 -0
  5. package/dist/agents/api/catalog.d.ts +8 -0
  6. package/dist/agents/api/catalog.js +33 -0
  7. package/dist/agents/api/custom-mcps.d.ts +26 -0
  8. package/dist/agents/api/custom-mcps.js +53 -0
  9. package/dist/agents/api/html-templates.d.ts +35 -0
  10. package/dist/agents/api/html-templates.js +116 -0
  11. package/dist/agents/api/request.d.ts +28 -0
  12. package/dist/agents/api/request.js +207 -0
  13. package/dist/agents/api/runs.d.ts +31 -0
  14. package/dist/agents/api/runs.js +82 -0
  15. package/dist/agents/api/schema.d.ts +182 -0
  16. package/dist/agents/api/schema.js +10 -0
  17. package/dist/agents/api/schemas.d.ts +37 -0
  18. package/dist/agents/api/schemas.js +95 -0
  19. package/dist/agents/api/skills.d.ts +25 -0
  20. package/dist/agents/api/skills.js +55 -0
  21. package/dist/agents/api/spaces.d.ts +34 -0
  22. package/dist/agents/api/spaces.js +72 -0
  23. package/dist/agents/api/tools.d.ts +4 -0
  24. package/dist/agents/api/tools.js +18 -0
  25. package/dist/agents/api/widgets.d.ts +32 -0
  26. package/dist/agents/api/widgets.js +89 -0
  27. package/dist/agents/client.d.ts +18 -0
  28. package/dist/agents/client.js +28 -0
  29. package/dist/agents/index.d.ts +31 -0
  30. package/dist/agents/index.js +51 -0
  31. package/dist/agents/recipe/agent.diff.d.ts +4 -0
  32. package/dist/agents/recipe/agent.diff.js +55 -0
  33. package/dist/agents/recipe/agent.kind.d.ts +12 -0
  34. package/dist/agents/recipe/agent.kind.js +107 -0
  35. package/dist/agents/recipe/agent.schema.d.ts +26 -0
  36. package/dist/agents/recipe/agent.schema.js +42 -0
  37. package/dist/agents/recipe/client.d.ts +4 -0
  38. package/dist/agents/recipe/client.js +15 -0
  39. package/dist/agents/recipe/converge.d.ts +11 -0
  40. package/dist/agents/recipe/converge.js +32 -0
  41. package/dist/agents/recipe/custom-mcp.kind.d.ts +4 -0
  42. package/dist/agents/recipe/custom-mcp.kind.js +42 -0
  43. package/dist/agents/recipe/custom-mcp.schema.d.ts +11 -0
  44. package/dist/agents/recipe/custom-mcp.schema.js +15 -0
  45. package/dist/agents/recipe/html-template.kind.d.ts +4 -0
  46. package/dist/agents/recipe/html-template.kind.js +50 -0
  47. package/dist/agents/recipe/html-template.schema.d.ts +13 -0
  48. package/dist/agents/recipe/html-template.schema.js +17 -0
  49. package/dist/agents/recipe/index.d.ts +43 -0
  50. package/dist/agents/recipe/index.js +81 -0
  51. package/dist/agents/recipe/schema.kind.d.ts +4 -0
  52. package/dist/agents/recipe/schema.kind.js +50 -0
  53. package/dist/agents/recipe/schema.schema.d.ts +15 -0
  54. package/dist/agents/recipe/schema.schema.js +21 -0
  55. package/dist/agents/recipe/skill.kind.d.ts +4 -0
  56. package/dist/agents/recipe/skill.kind.js +48 -0
  57. package/dist/agents/recipe/skill.schema.d.ts +14 -0
  58. package/dist/agents/recipe/skill.schema.js +18 -0
  59. package/dist/agents/recipe/widget.kind.d.ts +4 -0
  60. package/dist/agents/recipe/widget.kind.js +49 -0
  61. package/dist/agents/recipe/widget.schema.d.ts +20 -0
  62. package/dist/agents/recipe/widget.schema.js +23 -0
  63. package/dist/agents/session/index.d.ts +50 -0
  64. package/dist/agents/session/index.js +127 -0
  65. package/dist/agents/session/playwright-login.d.ts +11 -0
  66. package/dist/agents/session/playwright-login.js +169 -0
  67. package/dist/agents/session/types.d.ts +72 -0
  68. package/dist/agents/session/types.js +26 -0
  69. package/dist/agents/tasks/agent.d.ts +27 -0
  70. package/dist/agents/tasks/agent.js +183 -0
  71. package/dist/agents/tasks/index.d.ts +14 -0
  72. package/dist/agents/tasks/index.js +30 -0
  73. package/dist/agents/tasks/resources.d.ts +39 -0
  74. package/dist/agents/tasks/resources.js +219 -0
  75. package/dist/agents/tasks/session.d.ts +6 -0
  76. package/dist/agents/tasks/session.js +63 -0
  77. package/dist/agents/tasks/shared.d.ts +38 -0
  78. package/dist/agents/tasks/shared.js +72 -0
  79. package/dist/agents/tasks/space.d.ts +12 -0
  80. package/dist/agents/tasks/space.js +55 -0
  81. package/dist/brand/api/auth.d.ts +58 -0
  82. package/dist/brand/api/auth.js +141 -0
  83. package/dist/brand/api/client.d.ts +40 -0
  84. package/dist/brand/api/client.js +83 -0
  85. package/dist/brand/api/types.d.ts +119 -0
  86. package/dist/brand/api/types.js +9 -0
  87. package/dist/brand/credential.d.ts +55 -0
  88. package/dist/brand/credential.js +87 -0
  89. package/dist/brand/documents/list.d.ts +85 -0
  90. package/dist/brand/documents/list.js +53 -0
  91. package/dist/brand/documents/upload.d.ts +113 -0
  92. package/dist/brand/documents/upload.js +106 -0
  93. package/dist/brand/index.d.ts +33 -0
  94. package/dist/brand/index.js +76 -0
  95. package/dist/brand/kits/create.d.ts +58 -0
  96. package/dist/brand/kits/create.js +68 -0
  97. package/dist/brand/kits/list.d.ts +53 -0
  98. package/dist/brand/kits/list.js +36 -0
  99. package/dist/brand/kits/sections.d.ts +156 -0
  100. package/dist/brand/kits/sections.js +80 -0
  101. package/dist/brand/pipeline/run.d.ts +58 -0
  102. package/dist/brand/pipeline/run.js +63 -0
  103. package/dist/brand/recipe/client.d.ts +4 -0
  104. package/dist/brand/recipe/client.js +24 -0
  105. package/dist/brand/recipe/diff.d.ts +4 -0
  106. package/dist/brand/recipe/diff.js +74 -0
  107. package/dist/brand/recipe/index.d.ts +10 -0
  108. package/dist/brand/recipe/index.js +20 -0
  109. package/dist/brand/recipe/kind.d.ts +4 -0
  110. package/dist/brand/recipe/kind.js +0 -0
  111. package/dist/brand/recipe/schema.d.ts +54 -0
  112. package/dist/brand/recipe/schema.js +59 -0
  113. package/dist/brand/review/format-json.d.ts +33 -0
  114. package/dist/brand/review/format-json.js +36 -0
  115. package/dist/brand/review/format-sarif.d.ts +64 -0
  116. package/dist/brand/review/format-sarif.js +77 -0
  117. package/dist/brand/review/format-text.d.ts +24 -0
  118. package/dist/brand/review/format-text.js +60 -0
  119. package/dist/brand/review/generate.d.ts +37 -0
  120. package/dist/brand/review/generate.js +146 -0
  121. package/dist/brand/review/outcomes.d.ts +43 -0
  122. package/dist/brand/review/outcomes.js +58 -0
  123. package/dist/brand/seed.d.ts +81 -0
  124. package/dist/brand/seed.js +151 -0
  125. package/dist/brand/tasks/login.d.ts +37 -0
  126. package/dist/brand/tasks/login.js +192 -0
  127. package/dist/brand/tasks/review.d.ts +111 -0
  128. package/dist/brand/tasks/review.js +310 -0
  129. package/dist/brief/api/brief-types.d.ts +64 -0
  130. package/dist/brief/api/brief-types.js +103 -0
  131. package/dist/brief/api/briefs.d.ts +66 -0
  132. package/dist/brief/api/briefs.js +58 -0
  133. package/dist/brief/api/comments.d.ts +43 -0
  134. package/dist/brief/api/comments.js +29 -0
  135. package/dist/brief/api/request.d.ts +5 -0
  136. package/dist/brief/api/request.js +83 -0
  137. package/dist/brief/api/schema.d.ts +158 -0
  138. package/dist/brief/api/schema.js +18 -0
  139. package/dist/brief/api/tasks.d.ts +41 -0
  140. package/dist/brief/api/tasks.js +24 -0
  141. package/dist/brief/api/types.d.ts +17 -0
  142. package/dist/brief/api/types.js +21 -0
  143. package/dist/brief/auth.d.ts +44 -0
  144. package/dist/brief/auth.js +101 -0
  145. package/dist/brief/client.d.ts +25 -0
  146. package/dist/brief/client.js +56 -0
  147. package/dist/brief/index.d.ts +31 -0
  148. package/dist/brief/index.js +53 -0
  149. package/dist/brief/recipe/client.d.ts +4 -0
  150. package/dist/brief/recipe/client.js +52 -0
  151. package/dist/brief/recipe/diff.d.ts +4 -0
  152. package/dist/brief/recipe/diff.js +74 -0
  153. package/dist/brief/recipe/index.d.ts +10 -0
  154. package/dist/brief/recipe/index.js +23 -0
  155. package/dist/brief/recipe/kind.d.ts +4 -0
  156. package/dist/brief/recipe/kind.js +114 -0
  157. package/dist/brief/recipe/schema.d.ts +152 -0
  158. package/dist/brief/recipe/schema.js +99 -0
  159. package/dist/brief/tasks/index.d.ts +128 -0
  160. package/dist/brief/tasks/index.js +286 -0
  161. package/dist/campaigns/api/deliverables.d.ts +37 -0
  162. package/dist/campaigns/api/deliverables.js +30 -0
  163. package/dist/campaigns/api/projects.d.ts +49 -0
  164. package/dist/campaigns/api/projects.js +45 -0
  165. package/dist/campaigns/api/request.d.ts +5 -0
  166. package/dist/campaigns/api/request.js +119 -0
  167. package/dist/campaigns/api/schema.d.ts +144 -0
  168. package/dist/campaigns/api/schema.js +22 -0
  169. package/dist/campaigns/api/tasks.d.ts +42 -0
  170. package/dist/campaigns/api/tasks.js +68 -0
  171. package/dist/campaigns/api/types.d.ts +17 -0
  172. package/dist/campaigns/api/types.js +27 -0
  173. package/dist/campaigns/api/users.d.ts +13 -0
  174. package/dist/campaigns/api/users.js +16 -0
  175. package/dist/campaigns/auth.d.ts +19 -0
  176. package/dist/campaigns/auth.js +86 -0
  177. package/dist/campaigns/client.d.ts +25 -0
  178. package/dist/campaigns/client.js +48 -0
  179. package/dist/campaigns/index.d.ts +29 -0
  180. package/dist/campaigns/index.js +47 -0
  181. package/dist/campaigns/recipe/client.d.ts +4 -0
  182. package/dist/campaigns/recipe/client.js +41 -0
  183. package/dist/campaigns/recipe/diff.d.ts +4 -0
  184. package/dist/campaigns/recipe/diff.js +119 -0
  185. package/dist/campaigns/recipe/index.d.ts +10 -0
  186. package/dist/campaigns/recipe/index.js +19 -0
  187. package/dist/campaigns/recipe/kind.d.ts +4 -0
  188. package/dist/campaigns/recipe/kind.js +217 -0
  189. package/dist/campaigns/recipe/schema.d.ts +79 -0
  190. package/dist/campaigns/recipe/schema.js +67 -0
  191. package/dist/campaigns/tasks/index.d.ts +124 -0
  192. package/dist/campaigns/tasks/index.js +271 -0
  193. package/dist/cli.d.ts +0 -1
  194. package/dist/cli.js +84 -63
  195. package/dist/commands/agents/index.d.ts +28 -0
  196. package/dist/commands/agents/index.js +289 -0
  197. package/dist/commands/agents/sync.d.ts +13 -0
  198. package/dist/commands/agents/sync.js +139 -0
  199. package/dist/commands/audit/all.d.ts +2 -0
  200. package/dist/commands/audit/all.js +26 -0
  201. package/dist/commands/audit/alt-text-missing.d.ts +2 -0
  202. package/dist/commands/audit/alt-text-missing.js +19 -0
  203. package/dist/commands/audit/baseline.d.ts +2 -0
  204. package/dist/commands/audit/baseline.js +75 -0
  205. package/dist/commands/audit/broken-images.d.ts +2 -0
  206. package/dist/commands/audit/broken-images.js +25 -0
  207. package/dist/commands/audit/broken-links.d.ts +2 -0
  208. package/dist/commands/audit/broken-links.js +18 -0
  209. package/dist/commands/audit/datasource-missing.d.ts +2 -0
  210. package/dist/commands/audit/datasource-missing.js +19 -0
  211. package/dist/commands/audit/dead-templates.d.ts +2 -0
  212. package/dist/commands/audit/dead-templates.js +18 -0
  213. package/dist/commands/audit/duplicates.d.ts +2 -0
  214. package/dist/commands/audit/duplicates.js +21 -0
  215. package/dist/commands/audit/empty-items.d.ts +2 -0
  216. package/dist/commands/audit/empty-items.js +19 -0
  217. package/dist/commands/audit/empty-links.d.ts +2 -0
  218. package/dist/commands/audit/empty-links.js +25 -0
  219. package/dist/commands/audit/empty-roles.d.ts +2 -0
  220. package/dist/commands/audit/empty-roles.js +18 -0
  221. package/dist/commands/audit/fallback-drift.d.ts +2 -0
  222. package/dist/commands/audit/fallback-drift.js +22 -0
  223. package/dist/commands/audit/find-replace.d.ts +2 -0
  224. package/dist/commands/audit/find-replace.js +27 -0
  225. package/dist/commands/audit/heavy-templates.d.ts +2 -0
  226. package/dist/commands/audit/heavy-templates.js +19 -0
  227. package/dist/commands/audit/history.d.ts +2 -0
  228. package/dist/commands/audit/history.js +44 -0
  229. package/dist/commands/audit/index.d.ts +2 -0
  230. package/dist/commands/audit/index.js +100 -0
  231. package/dist/commands/audit/language-data.d.ts +2 -0
  232. package/dist/commands/audit/language-data.js +24 -0
  233. package/dist/commands/audit/large-fields.d.ts +2 -0
  234. package/dist/commands/audit/large-fields.js +21 -0
  235. package/dist/commands/audit/missing-meta.d.ts +2 -0
  236. package/dist/commands/audit/missing-meta.js +22 -0
  237. package/dist/commands/audit/orphans.d.ts +2 -0
  238. package/dist/commands/audit/orphans.js +22 -0
  239. package/dist/commands/audit/page-design-orphans.d.ts +2 -0
  240. package/dist/commands/audit/page-design-orphans.js +18 -0
  241. package/dist/commands/audit/personalization-broken.d.ts +2 -0
  242. package/dist/commands/audit/personalization-broken.js +18 -0
  243. package/dist/commands/audit/references.d.ts +2 -0
  244. package/dist/commands/audit/references.js +27 -0
  245. package/dist/commands/audit/role-bloat.d.ts +2 -0
  246. package/dist/commands/audit/role-bloat.js +19 -0
  247. package/dist/commands/audit/shared.d.ts +7 -0
  248. package/dist/commands/audit/shared.js +32 -0
  249. package/dist/commands/audit/site-residue.d.ts +2 -0
  250. package/dist/commands/audit/site-residue.js +22 -0
  251. package/dist/commands/audit/slug-conflicts.d.ts +2 -0
  252. package/dist/commands/audit/slug-conflicts.js +20 -0
  253. package/dist/commands/audit/stale-content.d.ts +2 -0
  254. package/dist/commands/audit/stale-content.js +21 -0
  255. package/dist/commands/audit/stale-users.d.ts +2 -0
  256. package/dist/commands/audit/stale-users.js +21 -0
  257. package/dist/commands/audit/stale-workflow.d.ts +2 -0
  258. package/dist/commands/audit/stale-workflow.js +19 -0
  259. package/dist/commands/audit/suite.d.ts +2 -0
  260. package/dist/commands/audit/suite.js +31 -0
  261. package/dist/commands/audit/template-dependencies.d.ts +2 -0
  262. package/dist/commands/audit/template-dependencies.js +22 -0
  263. package/dist/commands/audit/translation-coverage.d.ts +2 -0
  264. package/dist/commands/audit/translation-coverage.js +22 -0
  265. package/dist/commands/audit/unused-media.d.ts +2 -0
  266. package/dist/commands/audit/unused-media.js +21 -0
  267. package/dist/commands/brand/docs.d.ts +9 -0
  268. package/dist/commands/brand/docs.js +168 -0
  269. package/dist/commands/brand/index.d.ts +13 -0
  270. package/dist/commands/brand/index.js +37 -0
  271. package/dist/commands/brand/ingest-enrich.d.ts +3 -0
  272. package/dist/commands/brand/ingest-enrich.js +71 -0
  273. package/dist/commands/brand/kits.d.ts +18 -0
  274. package/dist/commands/brand/kits.js +361 -0
  275. package/dist/commands/brand/review.d.ts +13 -0
  276. package/dist/commands/brand/review.js +65 -0
  277. package/dist/commands/brand/seed.d.ts +9 -0
  278. package/dist/commands/brand/seed.js +136 -0
  279. package/dist/commands/brand/sync.d.ts +11 -0
  280. package/dist/commands/brand/sync.js +128 -0
  281. package/dist/commands/brief/comments.d.ts +11 -0
  282. package/dist/commands/brief/comments.js +55 -0
  283. package/dist/commands/brief/delete.d.ts +10 -0
  284. package/dist/commands/brief/delete.js +40 -0
  285. package/dist/commands/brief/index.d.ts +19 -0
  286. package/dist/commands/brief/index.js +53 -0
  287. package/dist/commands/brief/list.d.ts +2 -0
  288. package/dist/commands/brief/list.js +19 -0
  289. package/dist/commands/brief/set-status.d.ts +10 -0
  290. package/dist/commands/brief/set-status.js +33 -0
  291. package/dist/commands/brief/show.d.ts +2 -0
  292. package/dist/commands/brief/show.js +19 -0
  293. package/dist/commands/brief/sync.d.ts +12 -0
  294. package/dist/commands/brief/sync.js +121 -0
  295. package/dist/commands/brief/todos.d.ts +9 -0
  296. package/dist/commands/brief/todos.js +28 -0
  297. package/dist/commands/brief/types.d.ts +16 -0
  298. package/dist/commands/brief/types.js +129 -0
  299. package/dist/commands/campaign/index.d.ts +2 -0
  300. package/dist/commands/campaign/index.js +309 -0
  301. package/dist/commands/campaign/sync.d.ts +12 -0
  302. package/dist/commands/campaign/sync.js +121 -0
  303. package/dist/commands/cleanup/archive.d.ts +2 -0
  304. package/dist/commands/cleanup/archive.js +21 -0
  305. package/dist/commands/cleanup/dead-templates.d.ts +2 -0
  306. package/dist/commands/cleanup/dead-templates.js +21 -0
  307. package/dist/commands/cleanup/duplicates.d.ts +2 -0
  308. package/dist/commands/cleanup/duplicates.js +49 -0
  309. package/dist/commands/cleanup/empty-folders.d.ts +2 -0
  310. package/dist/commands/cleanup/empty-folders.js +18 -0
  311. package/dist/commands/cleanup/field-set.d.ts +2 -0
  312. package/dist/commands/cleanup/field-set.js +44 -0
  313. package/dist/commands/cleanup/find-replace.d.ts +2 -0
  314. package/dist/commands/cleanup/find-replace.js +35 -0
  315. package/dist/commands/cleanup/index.d.ts +2 -0
  316. package/dist/commands/cleanup/index.js +48 -0
  317. package/dist/commands/cleanup/language-versions.d.ts +2 -0
  318. package/dist/commands/cleanup/language-versions.js +25 -0
  319. package/dist/commands/cleanup/rename.d.ts +2 -0
  320. package/dist/commands/cleanup/rename.js +32 -0
  321. package/dist/commands/cleanup/roles.d.ts +2 -0
  322. package/dist/commands/cleanup/roles.js +20 -0
  323. package/dist/commands/cleanup/shared.d.ts +2 -0
  324. package/dist/commands/cleanup/shared.js +15 -0
  325. package/dist/commands/cleanup/site-residue.d.ts +2 -0
  326. package/dist/commands/cleanup/site-residue.js +32 -0
  327. package/dist/commands/cleanup/slug-conflicts.d.ts +2 -0
  328. package/dist/commands/cleanup/slug-conflicts.js +54 -0
  329. package/dist/commands/cleanup/subtree.d.ts +2 -0
  330. package/dist/commands/cleanup/subtree.js +25 -0
  331. package/dist/commands/cleanup/users.d.ts +2 -0
  332. package/dist/commands/cleanup/users.js +23 -0
  333. package/dist/commands/cleanup/versions.d.ts +2 -0
  334. package/dist/commands/cleanup/versions.js +42 -0
  335. package/dist/commands/cleanup/workflow.d.ts +2 -0
  336. package/dist/commands/cleanup/workflow.js +40 -0
  337. package/dist/commands/config.d.ts +0 -1
  338. package/dist/commands/config.js +3 -3
  339. package/dist/commands/content/index.d.ts +2 -0
  340. package/dist/commands/content/index.js +11 -0
  341. package/dist/commands/content/version/index.d.ts +2 -0
  342. package/dist/commands/content/version/index.js +19 -0
  343. package/dist/commands/content/version/inspect.d.ts +2 -0
  344. package/dist/commands/content/version/inspect.js +22 -0
  345. package/dist/commands/content/version/set-never-publish.d.ts +2 -0
  346. package/dist/commands/content/version/set-never-publish.js +40 -0
  347. package/dist/commands/content/version/set-validity.d.ts +2 -0
  348. package/dist/commands/content/version/set-validity.js +30 -0
  349. package/dist/commands/deploy/deployments.d.ts +0 -1
  350. package/dist/commands/deploy/deployments.js +9 -9
  351. package/dist/commands/deploy/editing-host.d.ts +0 -1
  352. package/dist/commands/deploy/editing-host.js +25 -13
  353. package/dist/commands/deploy/environments/deployments.d.ts +0 -1
  354. package/dist/commands/deploy/environments/deployments.js +3 -3
  355. package/dist/commands/deploy/environments/index.d.ts +0 -1
  356. package/dist/commands/deploy/environments/index.js +1 -0
  357. package/dist/commands/deploy/environments/mutations.d.ts +0 -1
  358. package/dist/commands/deploy/environments/mutations.js +18 -17
  359. package/dist/commands/deploy/environments/queries.d.ts +1 -1
  360. package/dist/commands/deploy/environments/queries.js +29 -8
  361. package/dist/commands/deploy/environments/variables.d.ts +0 -1
  362. package/dist/commands/deploy/environments/variables.js +9 -8
  363. package/dist/commands/deploy/environments.d.ts +0 -1
  364. package/dist/commands/deploy/index.d.ts +0 -1
  365. package/dist/commands/deploy/index.js +1 -1
  366. package/dist/commands/deploy/logs.d.ts +0 -1
  367. package/dist/commands/deploy/logs.js +4 -4
  368. package/dist/commands/deploy/organizations.d.ts +0 -1
  369. package/dist/commands/deploy/organizations.js +5 -5
  370. package/dist/commands/deploy/projects.d.ts +0 -1
  371. package/dist/commands/deploy/projects.js +32 -20
  372. package/dist/commands/deploy/shared.d.ts +0 -1
  373. package/dist/commands/deploy/shared.js +1 -0
  374. package/dist/commands/deploy/site.d.ts +2 -3
  375. package/dist/commands/deploy/site.js +6 -5
  376. package/dist/commands/deploy/source-control.d.ts +0 -1
  377. package/dist/commands/deploy/source-control.js +13 -13
  378. package/dist/commands/deploy.d.ts +0 -1
  379. package/dist/commands/explain/index.d.ts +14 -0
  380. package/dist/commands/explain/index.js +25 -0
  381. package/dist/commands/explain/orphan-site.d.ts +11 -0
  382. package/dist/commands/explain/orphan-site.js +36 -0
  383. package/dist/commands/explain/why-blocked.d.ts +13 -0
  384. package/dist/commands/explain/why-blocked.js +42 -0
  385. package/dist/commands/health.d.ts +2 -0
  386. package/dist/commands/health.js +28 -0
  387. package/dist/commands/history.d.ts +0 -1
  388. package/dist/commands/history.js +11 -42
  389. package/dist/commands/init.d.ts +0 -1
  390. package/dist/commands/init.js +42 -8
  391. package/dist/commands/login.d.ts +11 -1
  392. package/dist/commands/login.js +35 -4
  393. package/dist/commands/logout.d.ts +0 -1
  394. package/dist/commands/logout.js +3 -3
  395. package/dist/commands/mcp/serve.d.ts +27 -0
  396. package/dist/commands/mcp/serve.js +120 -0
  397. package/dist/commands/mcp/tools.d.ts +8 -0
  398. package/dist/commands/mcp/tools.js +75 -0
  399. package/dist/commands/mcp.d.ts +2 -0
  400. package/dist/commands/mcp.js +23 -0
  401. package/dist/commands/policy.d.ts +16 -0
  402. package/dist/commands/policy.js +296 -0
  403. package/dist/commands/publish/all.d.ts +2 -0
  404. package/dist/commands/publish/all.js +41 -0
  405. package/dist/commands/publish/cancel.d.ts +2 -0
  406. package/dist/commands/publish/cancel.js +25 -0
  407. package/dist/commands/publish/history.d.ts +2 -0
  408. package/dist/commands/publish/history.js +34 -0
  409. package/dist/commands/publish/index.d.ts +2 -0
  410. package/dist/commands/publish/index.js +30 -0
  411. package/dist/commands/publish/item.d.ts +2 -0
  412. package/dist/commands/publish/item.js +55 -0
  413. package/dist/commands/publish/status.d.ts +2 -0
  414. package/dist/commands/publish/status.js +34 -0
  415. package/dist/commands/publish/unpublish.d.ts +2 -0
  416. package/dist/commands/publish/unpublish.js +52 -0
  417. package/dist/commands/recipe/index.d.ts +0 -1
  418. package/dist/commands/recipe/index.js +19 -15
  419. package/dist/commands/serialization/index.d.ts +0 -1
  420. package/dist/commands/serialization/index.js +14 -9
  421. package/dist/commands/serialization/package.d.ts +0 -1
  422. package/dist/commands/serialization/package.js +3 -3
  423. package/dist/commands/setup-client.d.ts +17 -0
  424. package/dist/commands/setup-client.js +148 -0
  425. package/dist/commands/shared.d.ts +72 -2
  426. package/dist/commands/shared.js +151 -24
  427. package/dist/commands/shell.d.ts +0 -1
  428. package/dist/commands/shell.js +1 -1
  429. package/dist/commands/status.d.ts +0 -1
  430. package/dist/commands/status.js +3 -3
  431. package/dist/commands/sync.d.ts +23 -0
  432. package/dist/commands/sync.js +154 -0
  433. package/dist/commands/telemetry.d.ts +0 -1
  434. package/dist/commands/telemetry.js +40 -2
  435. package/dist/commands/topics/index.d.ts +5 -0
  436. package/dist/commands/topics/index.js +102 -0
  437. package/dist/commands/webhook/create.d.ts +2 -0
  438. package/dist/commands/webhook/create.js +52 -0
  439. package/dist/commands/webhook/delete.d.ts +2 -0
  440. package/dist/commands/webhook/delete.js +20 -0
  441. package/dist/commands/webhook/event-types.d.ts +2 -0
  442. package/dist/commands/webhook/event-types.js +22 -0
  443. package/dist/commands/webhook/index.d.ts +2 -0
  444. package/dist/commands/webhook/index.js +33 -0
  445. package/dist/commands/webhook/inspect.d.ts +2 -0
  446. package/dist/commands/webhook/inspect.js +17 -0
  447. package/dist/commands/webhook/list.d.ts +2 -0
  448. package/dist/commands/webhook/list.js +24 -0
  449. package/dist/commands/webhook/shared.d.ts +2 -0
  450. package/dist/commands/webhook/shared.js +11 -0
  451. package/dist/commands/workflow/advance.d.ts +2 -0
  452. package/dist/commands/workflow/advance.js +22 -0
  453. package/dist/commands/workflow/apply.d.ts +2 -0
  454. package/dist/commands/workflow/apply.js +22 -0
  455. package/dist/commands/workflow/assigned.d.ts +2 -0
  456. package/dist/commands/workflow/assigned.js +21 -0
  457. package/dist/commands/workflow/index.d.ts +2 -0
  458. package/dist/commands/workflow/index.js +35 -0
  459. package/dist/commands/workflow/inspect.d.ts +2 -0
  460. package/dist/commands/workflow/inspect.js +17 -0
  461. package/dist/commands/workflow/list-commands.d.ts +2 -0
  462. package/dist/commands/workflow/list-commands.js +17 -0
  463. package/dist/commands/workflow/list-defs.d.ts +2 -0
  464. package/dist/commands/workflow/list-defs.js +17 -0
  465. package/dist/commands/workflow/reset.d.ts +2 -0
  466. package/dist/commands/workflow/reset.js +20 -0
  467. package/dist/commands/workflow/shared.d.ts +3 -0
  468. package/dist/commands/workflow/shared.js +12 -0
  469. package/dist/commands/workflow/status.d.ts +2 -0
  470. package/dist/commands/workflow/status.js +18 -0
  471. package/dist/config/env-overrides.d.ts +0 -1
  472. package/dist/config/env-overrides.js +41 -5
  473. package/dist/config/index.d.ts +15 -3
  474. package/dist/config/index.js +43 -3
  475. package/dist/config/modules.d.ts +0 -1
  476. package/dist/config/modules.js +2 -2
  477. package/dist/config/paths.d.ts +0 -1
  478. package/dist/config/paths.js +11 -2
  479. package/dist/config/root-config.d.ts +24 -1
  480. package/dist/config/root-config.js +84 -7
  481. package/dist/config/schema.json +113 -25
  482. package/dist/config/types.d.ts +228 -13
  483. package/dist/config/types.js +1 -1
  484. package/dist/config/validation.d.ts +1 -4
  485. package/dist/content/api/version-fields.d.ts +129 -0
  486. package/dist/content/api/version-fields.js +193 -0
  487. package/dist/content/index.d.ts +15 -0
  488. package/dist/content/index.js +40 -0
  489. package/dist/content/tasks/shared.d.ts +86 -0
  490. package/dist/content/tasks/shared.js +130 -0
  491. package/dist/content/tasks/version-inspect.d.ts +13 -0
  492. package/dist/content/tasks/version-inspect.js +56 -0
  493. package/dist/content/tasks/version-never-publish.d.ts +16 -0
  494. package/dist/content/tasks/version-never-publish.js +115 -0
  495. package/dist/content/tasks/version-validity.d.ts +24 -0
  496. package/dist/content/tasks/version-validity.js +159 -0
  497. package/dist/deploy/api/client-naming.d.ts +80 -0
  498. package/dist/deploy/api/client-naming.js +124 -0
  499. package/dist/deploy/api/client.d.ts +72 -0
  500. package/dist/deploy/api/client.js +72 -0
  501. package/dist/deploy/api/clients.d.ts +126 -0
  502. package/dist/deploy/api/clients.js +89 -0
  503. package/dist/deploy/api/common/headers.d.ts +0 -1
  504. package/dist/deploy/api/common/request.d.ts +0 -5
  505. package/dist/deploy/api/common/request.js +93 -120
  506. package/dist/deploy/api/common/transport-events.d.ts +31 -0
  507. package/dist/deploy/api/common/transport-events.js +24 -0
  508. package/dist/deploy/api/common/types.d.ts +60 -1
  509. package/dist/deploy/api/deployment-logs.d.ts +0 -1
  510. package/dist/deploy/api/deployment-logs.js +5 -5
  511. package/dist/deploy/api/deployments.d.ts +1 -2
  512. package/dist/deploy/api/deployments.js +22 -20
  513. package/dist/deploy/api/environments.d.ts +28 -2
  514. package/dist/deploy/api/environments.js +103 -20
  515. package/dist/deploy/api/index.d.ts +31 -9
  516. package/dist/deploy/api/index.js +129 -22
  517. package/dist/deploy/api/logs.d.ts +1 -2
  518. package/dist/deploy/api/logs.js +9 -7
  519. package/dist/deploy/api/organizations.d.ts +1 -2
  520. package/dist/deploy/api/organizations.js +8 -7
  521. package/dist/deploy/api/projects.d.ts +19 -4
  522. package/dist/deploy/api/projects.js +75 -13
  523. package/dist/deploy/api/source-control.d.ts +1 -2
  524. package/dist/deploy/api/source-control.js +25 -24
  525. package/dist/deploy/api.d.ts +0 -1
  526. package/dist/deploy/context.d.ts +52 -0
  527. package/dist/deploy/context.js +234 -0
  528. package/dist/deploy/index.d.ts +11 -0
  529. package/dist/deploy/index.js +38 -0
  530. package/dist/deploy/tasks/deployment-result.d.ts +0 -1
  531. package/dist/deploy/tasks/deployments.d.ts +0 -1
  532. package/dist/deploy/tasks/deployments.js +12 -11
  533. package/dist/deploy/tasks/editing-host.d.ts +0 -1
  534. package/dist/deploy/tasks/editing-host.js +48 -18
  535. package/dist/deploy/tasks/environments.d.ts +3 -3
  536. package/dist/deploy/tasks/environments.js +108 -24
  537. package/dist/deploy/tasks/health.d.ts +23 -0
  538. package/dist/deploy/tasks/health.js +181 -0
  539. package/dist/deploy/tasks/logs.d.ts +0 -1
  540. package/dist/deploy/tasks/logs.js +4 -4
  541. package/dist/deploy/tasks/organizations.d.ts +0 -1
  542. package/dist/deploy/tasks/organizations.js +5 -5
  543. package/dist/deploy/tasks/projects.d.ts +6 -2
  544. package/dist/deploy/tasks/projects.js +61 -42
  545. package/dist/deploy/tasks/shared.d.ts +9 -52
  546. package/dist/deploy/tasks/shared.js +46 -222
  547. package/dist/deploy/tasks/site-bind.d.ts +1 -2
  548. package/dist/deploy/tasks/site-bind.js +7 -7
  549. package/dist/deploy/tasks/site.d.ts +2 -3
  550. package/dist/deploy/tasks/site.js +4 -4
  551. package/dist/deploy/tasks/source-control.d.ts +0 -1
  552. package/dist/deploy/tasks/source-control.js +14 -14
  553. package/dist/deploy/tasks/transport-spinner.d.ts +5 -0
  554. package/dist/deploy/tasks/transport-spinner.js +118 -0
  555. package/dist/deploy/tasks/types.d.ts +16 -3
  556. package/dist/deploy/tasks/types.js +1 -1
  557. package/dist/hygiene/api/client.d.ts +294 -0
  558. package/dist/hygiene/api/client.js +827 -0
  559. package/dist/hygiene/api/graphql.d.ts +4 -0
  560. package/dist/hygiene/api/graphql.js +18 -0
  561. package/dist/hygiene/audit-suite.d.ts +84 -0
  562. package/dist/hygiene/audit-suite.js +95 -0
  563. package/dist/hygiene/baseline.d.ts +56 -0
  564. package/dist/hygiene/baseline.js +248 -0
  565. package/dist/hygiene/cache.d.ts +35 -0
  566. package/dist/hygiene/cache.js +179 -0
  567. package/dist/hygiene/history.d.ts +70 -0
  568. package/dist/hygiene/history.js +148 -0
  569. package/dist/hygiene/index.d.ts +128 -0
  570. package/dist/hygiene/index.js +168 -0
  571. package/dist/hygiene/output-adapters.d.ts +49 -0
  572. package/dist/hygiene/output-adapters.js +270 -0
  573. package/dist/hygiene/tasks/audit/all.d.ts +58 -0
  574. package/dist/hygiene/tasks/audit/all.js +274 -0
  575. package/dist/hygiene/tasks/audit/alt-text-missing.d.ts +27 -0
  576. package/dist/hygiene/tasks/audit/alt-text-missing.js +87 -0
  577. package/dist/hygiene/tasks/audit/baseline.d.ts +66 -0
  578. package/dist/hygiene/tasks/audit/baseline.js +185 -0
  579. package/dist/hygiene/tasks/audit/broken-images.d.ts +41 -0
  580. package/dist/hygiene/tasks/audit/broken-images.js +183 -0
  581. package/dist/hygiene/tasks/audit/broken-links.d.ts +53 -0
  582. package/dist/hygiene/tasks/audit/broken-links.js +121 -0
  583. package/dist/hygiene/tasks/audit/datasource-missing.d.ts +44 -0
  584. package/dist/hygiene/tasks/audit/datasource-missing.js +146 -0
  585. package/dist/hygiene/tasks/audit/dead-templates.d.ts +46 -0
  586. package/dist/hygiene/tasks/audit/dead-templates.js +216 -0
  587. package/dist/hygiene/tasks/audit/duplicates.d.ts +48 -0
  588. package/dist/hygiene/tasks/audit/duplicates.js +94 -0
  589. package/dist/hygiene/tasks/audit/empty-items.d.ts +24 -0
  590. package/dist/hygiene/tasks/audit/empty-items.js +53 -0
  591. package/dist/hygiene/tasks/audit/empty-links.d.ts +37 -0
  592. package/dist/hygiene/tasks/audit/empty-links.js +145 -0
  593. package/dist/hygiene/tasks/audit/empty-roles.d.ts +41 -0
  594. package/dist/hygiene/tasks/audit/empty-roles.js +51 -0
  595. package/dist/hygiene/tasks/audit/fallback-drift.d.ts +53 -0
  596. package/dist/hygiene/tasks/audit/fallback-drift.js +115 -0
  597. package/dist/hygiene/tasks/audit/find-replace.d.ts +75 -0
  598. package/dist/hygiene/tasks/audit/find-replace.js +142 -0
  599. package/dist/hygiene/tasks/audit/heavy-templates.d.ts +46 -0
  600. package/dist/hygiene/tasks/audit/heavy-templates.js +73 -0
  601. package/dist/hygiene/tasks/audit/history.d.ts +30 -0
  602. package/dist/hygiene/tasks/audit/history.js +161 -0
  603. package/dist/hygiene/tasks/audit/language-data.d.ts +55 -0
  604. package/dist/hygiene/tasks/audit/language-data.js +126 -0
  605. package/dist/hygiene/tasks/audit/large-fields.d.ts +48 -0
  606. package/dist/hygiene/tasks/audit/large-fields.js +84 -0
  607. package/dist/hygiene/tasks/audit/missing-meta.d.ts +57 -0
  608. package/dist/hygiene/tasks/audit/missing-meta.js +97 -0
  609. package/dist/hygiene/tasks/audit/orphans.d.ts +47 -0
  610. package/dist/hygiene/tasks/audit/orphans.js +78 -0
  611. package/dist/hygiene/tasks/audit/page-design-orphans.d.ts +24 -0
  612. package/dist/hygiene/tasks/audit/page-design-orphans.js +80 -0
  613. package/dist/hygiene/tasks/audit/personalization-broken.d.ts +25 -0
  614. package/dist/hygiene/tasks/audit/personalization-broken.js +96 -0
  615. package/dist/hygiene/tasks/audit/references.d.ts +70 -0
  616. package/dist/hygiene/tasks/audit/references.js +142 -0
  617. package/dist/hygiene/tasks/audit/role-bloat.d.ts +42 -0
  618. package/dist/hygiene/tasks/audit/role-bloat.js +64 -0
  619. package/dist/hygiene/tasks/audit/site-residue.d.ts +39 -0
  620. package/dist/hygiene/tasks/audit/site-residue.js +164 -0
  621. package/dist/hygiene/tasks/audit/slug-conflicts.d.ts +58 -0
  622. package/dist/hygiene/tasks/audit/slug-conflicts.js +87 -0
  623. package/dist/hygiene/tasks/audit/stale-content.d.ts +68 -0
  624. package/dist/hygiene/tasks/audit/stale-content.js +133 -0
  625. package/dist/hygiene/tasks/audit/stale-users.d.ts +54 -0
  626. package/dist/hygiene/tasks/audit/stale-users.js +83 -0
  627. package/dist/hygiene/tasks/audit/stale-workflow.d.ts +50 -0
  628. package/dist/hygiene/tasks/audit/stale-workflow.js +109 -0
  629. package/dist/hygiene/tasks/audit/suite-run.d.ts +28 -0
  630. package/dist/hygiene/tasks/audit/suite-run.js +46 -0
  631. package/dist/hygiene/tasks/audit/template-dependencies.d.ts +72 -0
  632. package/dist/hygiene/tasks/audit/template-dependencies.js +97 -0
  633. package/dist/hygiene/tasks/audit/translation-coverage.d.ts +64 -0
  634. package/dist/hygiene/tasks/audit/translation-coverage.js +123 -0
  635. package/dist/hygiene/tasks/audit/unused-media.d.ts +58 -0
  636. package/dist/hygiene/tasks/audit/unused-media.js +144 -0
  637. package/dist/hygiene/tasks/browse.d.ts +49 -0
  638. package/dist/hygiene/tasks/browse.js +50 -0
  639. package/dist/hygiene/tasks/cleanup/archive-purge.d.ts +50 -0
  640. package/dist/hygiene/tasks/cleanup/archive-purge.js +129 -0
  641. package/dist/hygiene/tasks/cleanup/dead-templates.d.ts +74 -0
  642. package/dist/hygiene/tasks/cleanup/dead-templates.js +247 -0
  643. package/dist/hygiene/tasks/cleanup/duplicates.d.ts +86 -0
  644. package/dist/hygiene/tasks/cleanup/duplicates.js +189 -0
  645. package/dist/hygiene/tasks/cleanup/empty-folders.d.ts +75 -0
  646. package/dist/hygiene/tasks/cleanup/empty-folders.js +165 -0
  647. package/dist/hygiene/tasks/cleanup/field-set.d.ts +108 -0
  648. package/dist/hygiene/tasks/cleanup/field-set.js +230 -0
  649. package/dist/hygiene/tasks/cleanup/find-replace.d.ts +77 -0
  650. package/dist/hygiene/tasks/cleanup/find-replace.js +180 -0
  651. package/dist/hygiene/tasks/cleanup/language-version-add.d.ts +74 -0
  652. package/dist/hygiene/tasks/cleanup/language-version-add.js +136 -0
  653. package/dist/hygiene/tasks/cleanup/rename.d.ts +78 -0
  654. package/dist/hygiene/tasks/cleanup/rename.js +152 -0
  655. package/dist/hygiene/tasks/cleanup/roles.d.ts +58 -0
  656. package/dist/hygiene/tasks/cleanup/roles.js +177 -0
  657. package/dist/hygiene/tasks/cleanup/site-residue.d.ts +55 -0
  658. package/dist/hygiene/tasks/cleanup/site-residue.js +247 -0
  659. package/dist/hygiene/tasks/cleanup/slug-conflicts.d.ts +126 -0
  660. package/dist/hygiene/tasks/cleanup/slug-conflicts.js +296 -0
  661. package/dist/hygiene/tasks/cleanup/subtree-prune.d.ts +40 -0
  662. package/dist/hygiene/tasks/cleanup/subtree-prune.js +113 -0
  663. package/dist/hygiene/tasks/cleanup/subtree.d.ts +123 -0
  664. package/dist/hygiene/tasks/cleanup/subtree.js +312 -0
  665. package/dist/hygiene/tasks/cleanup/users.d.ts +48 -0
  666. package/dist/hygiene/tasks/cleanup/users.js +92 -0
  667. package/dist/hygiene/tasks/cleanup/versions-archive.d.ts +57 -0
  668. package/dist/hygiene/tasks/cleanup/versions-archive.js +162 -0
  669. package/dist/hygiene/tasks/cleanup/versions-prune.d.ts +76 -0
  670. package/dist/hygiene/tasks/cleanup/versions-prune.js +194 -0
  671. package/dist/hygiene/tasks/cleanup/workflow-advance.d.ts +76 -0
  672. package/dist/hygiene/tasks/cleanup/workflow-advance.js +185 -0
  673. package/dist/hygiene/tasks/cleanup/workflow-apply.d.ts +97 -0
  674. package/dist/hygiene/tasks/cleanup/workflow-apply.js +310 -0
  675. package/dist/hygiene/tasks/explain/orphan-site.d.ts +53 -0
  676. package/dist/hygiene/tasks/explain/orphan-site.js +83 -0
  677. package/dist/hygiene/tasks/explain/why-blocked.d.ts +81 -0
  678. package/dist/hygiene/tasks/explain/why-blocked.js +149 -0
  679. package/dist/hygiene/tasks/reference-kind.d.ts +47 -0
  680. package/dist/hygiene/tasks/reference-kind.js +73 -0
  681. package/dist/hygiene/tasks/shared.d.ts +350 -0
  682. package/dist/hygiene/tasks/shared.js +532 -0
  683. package/dist/mcp/auth.d.ts +80 -0
  684. package/dist/mcp/auth.js +165 -0
  685. package/dist/mcp/build-registry.d.ts +12 -0
  686. package/dist/mcp/build-registry.js +75 -0
  687. package/dist/mcp/descriptions.d.ts +22 -0
  688. package/dist/mcp/descriptions.js +113 -0
  689. package/dist/mcp/dispatch.d.ts +44 -0
  690. package/dist/mcp/dispatch.js +110 -0
  691. package/dist/mcp/errors.d.ts +31 -0
  692. package/dist/mcp/errors.js +117 -0
  693. package/dist/mcp/http.d.ts +42 -0
  694. package/dist/mcp/http.js +128 -0
  695. package/dist/mcp/logging.d.ts +28 -0
  696. package/dist/mcp/logging.js +78 -0
  697. package/dist/mcp/prompts/workflows.d.ts +13 -0
  698. package/dist/mcp/prompts/workflows.js +171 -0
  699. package/dist/mcp/redact.d.ts +11 -0
  700. package/dist/mcp/redact.js +35 -0
  701. package/dist/mcp/registry.d.ts +84 -0
  702. package/dist/mcp/registry.js +62 -0
  703. package/dist/mcp/resources/brand.d.ts +20 -0
  704. package/dist/mcp/resources/brand.js +514 -0
  705. package/dist/mcp/resources/env.d.ts +10 -0
  706. package/dist/mcp/resources/env.js +120 -0
  707. package/dist/mcp/resources/help.d.ts +10 -0
  708. package/dist/mcp/resources/help.js +475 -0
  709. package/dist/mcp/resources/recipes.d.ts +13 -0
  710. package/dist/mcp/resources/recipes.js +270 -0
  711. package/dist/mcp/schemas/common.d.ts +22 -0
  712. package/dist/mcp/schemas/common.js +43 -0
  713. package/dist/mcp/server.d.ts +26 -0
  714. package/dist/mcp/server.js +88 -0
  715. package/dist/mcp/tools/access-check.d.ts +11 -0
  716. package/dist/mcp/tools/access-check.js +47 -0
  717. package/dist/mcp/tools/agents-recipe.d.ts +2 -0
  718. package/dist/mcp/tools/agents-recipe.js +139 -0
  719. package/dist/mcp/tools/agents.d.ts +2 -0
  720. package/dist/mcp/tools/agents.js +148 -0
  721. package/dist/mcp/tools/audit.d.ts +41 -0
  722. package/dist/mcp/tools/audit.js +584 -0
  723. package/dist/mcp/tools/bootstrap.d.ts +8 -0
  724. package/dist/mcp/tools/bootstrap.js +200 -0
  725. package/dist/mcp/tools/brand-recipe.d.ts +2 -0
  726. package/dist/mcp/tools/brand-recipe.js +123 -0
  727. package/dist/mcp/tools/brand.d.ts +28 -0
  728. package/dist/mcp/tools/brand.js +549 -0
  729. package/dist/mcp/tools/brief-recipe.d.ts +2 -0
  730. package/dist/mcp/tools/brief-recipe.js +123 -0
  731. package/dist/mcp/tools/brief.d.ts +16 -0
  732. package/dist/mcp/tools/brief.js +388 -0
  733. package/dist/mcp/tools/browse.d.ts +9 -0
  734. package/dist/mcp/tools/browse.js +57 -0
  735. package/dist/mcp/tools/campaign-recipe.d.ts +2 -0
  736. package/dist/mcp/tools/campaign-recipe.js +125 -0
  737. package/dist/mcp/tools/campaign.d.ts +20 -0
  738. package/dist/mcp/tools/campaign.js +342 -0
  739. package/dist/mcp/tools/cleanup.d.ts +22 -0
  740. package/dist/mcp/tools/cleanup.js +608 -0
  741. package/dist/mcp/tools/deploy.d.ts +19 -0
  742. package/dist/mcp/tools/deploy.js +797 -0
  743. package/dist/mcp/tools/explain.d.ts +2 -0
  744. package/dist/mcp/tools/explain.js +132 -0
  745. package/dist/mcp/tools/inspector.d.ts +12 -0
  746. package/dist/mcp/tools/inspector.js +101 -0
  747. package/dist/mcp/tools/onboard.d.ts +11 -0
  748. package/dist/mcp/tools/onboard.js +65 -0
  749. package/dist/mcp/tools/publish.d.ts +30 -0
  750. package/dist/mcp/tools/publish.js +173 -0
  751. package/dist/mcp/tools/recipe-sync.d.ts +2 -0
  752. package/dist/mcp/tools/recipe-sync.js +117 -0
  753. package/dist/mcp/tools/recipe.d.ts +18 -0
  754. package/dist/mcp/tools/recipe.js +250 -0
  755. package/dist/mcp/tools/serialization.d.ts +17 -0
  756. package/dist/mcp/tools/serialization.js +282 -0
  757. package/dist/mcp/tools/webhook.d.ts +12 -0
  758. package/dist/mcp/tools/webhook.js +246 -0
  759. package/dist/mcp/tools/workflow.d.ts +21 -0
  760. package/dist/mcp/tools/workflow.js +436 -0
  761. package/dist/policy/access-check.d.ts +56 -0
  762. package/dist/policy/access-check.js +160 -0
  763. package/dist/policy/allow-write.d.ts +37 -0
  764. package/dist/policy/allow-write.js +78 -0
  765. package/dist/policy/authorize.d.ts +36 -0
  766. package/dist/policy/authorize.js +102 -0
  767. package/dist/policy/caller.d.ts +23 -0
  768. package/dist/policy/caller.js +66 -0
  769. package/dist/policy/enforce.d.ts +25 -0
  770. package/dist/policy/enforce.js +57 -0
  771. package/dist/policy/enroll.d.ts +57 -0
  772. package/dist/policy/enroll.js +101 -0
  773. package/dist/policy/environment.d.ts +35 -0
  774. package/dist/policy/environment.js +44 -0
  775. package/dist/policy/identity.d.ts +24 -0
  776. package/dist/policy/identity.js +58 -0
  777. package/dist/policy/index.d.ts +22 -0
  778. package/dist/policy/index.js +42 -0
  779. package/dist/policy/operations.d.ts +24 -0
  780. package/dist/policy/operations.js +37 -0
  781. package/dist/policy/organization.d.ts +62 -0
  782. package/dist/policy/organization.js +97 -0
  783. package/dist/policy/paths.d.ts +21 -0
  784. package/dist/policy/paths.js +46 -0
  785. package/dist/policy/resolve.d.ts +15 -0
  786. package/dist/policy/resolve.js +67 -0
  787. package/dist/policy/schema.d.ts +137 -0
  788. package/dist/policy/schema.js +92 -0
  789. package/dist/policy/store.d.ts +25 -0
  790. package/dist/policy/store.js +85 -0
  791. package/dist/policy/types.d.ts +52 -0
  792. package/dist/policy/types.js +22 -0
  793. package/dist/program.d.ts +35 -0
  794. package/dist/program.js +131 -0
  795. package/dist/publishing/api/auth.d.ts +49 -0
  796. package/dist/publishing/api/auth.js +173 -0
  797. package/dist/publishing/api/client.d.ts +5 -0
  798. package/dist/publishing/api/client.js +153 -0
  799. package/dist/publishing/api/languages.d.ts +61 -0
  800. package/dist/publishing/api/languages.js +116 -0
  801. package/dist/publishing/api/path-resolver.d.ts +10 -0
  802. package/dist/publishing/api/path-resolver.js +76 -0
  803. package/dist/publishing/api/sites.d.ts +23 -0
  804. package/dist/publishing/api/sites.js +27 -0
  805. package/dist/publishing/api/types.d.ts +166 -0
  806. package/dist/publishing/api/types.js +17 -0
  807. package/dist/publishing/index.d.ts +25 -0
  808. package/dist/publishing/index.js +51 -0
  809. package/dist/publishing/job-diagnostics.d.ts +44 -0
  810. package/dist/publishing/job-diagnostics.js +87 -0
  811. package/dist/publishing/job-watcher.d.ts +33 -0
  812. package/dist/publishing/job-watcher.js +118 -0
  813. package/dist/publishing/tasks/all.d.ts +41 -0
  814. package/dist/publishing/tasks/all.js +234 -0
  815. package/dist/publishing/tasks/cancel.d.ts +18 -0
  816. package/dist/publishing/tasks/cancel.js +147 -0
  817. package/dist/publishing/tasks/history.d.ts +22 -0
  818. package/dist/publishing/tasks/history.js +85 -0
  819. package/dist/publishing/tasks/item.d.ts +69 -0
  820. package/dist/publishing/tasks/item.js +194 -0
  821. package/dist/publishing/tasks/status.d.ts +17 -0
  822. package/dist/publishing/tasks/status.js +74 -0
  823. package/dist/publishing/tasks/unpublish.d.ts +69 -0
  824. package/dist/publishing/tasks/unpublish.js +546 -0
  825. package/dist/recipe/api/auth.d.ts +1 -2
  826. package/dist/recipe/api/auth.js +1 -1
  827. package/dist/recipe/api/authoring-client.d.ts +9 -3
  828. package/dist/recipe/api/authoring-client.js +101 -17
  829. package/dist/recipe/api/client.d.ts +50 -1
  830. package/dist/recipe/api/graphql.d.ts +2 -3
  831. package/dist/recipe/api/graphql.js +1 -1
  832. package/dist/recipe/api/ref-encoding.d.ts +0 -1
  833. package/dist/recipe/api/ref-encoding.js +5 -5
  834. package/dist/recipe/api/site-discovery.d.ts +1 -2
  835. package/dist/recipe/api/sites-client.d.ts +6 -3
  836. package/dist/recipe/api/sites-client.js +11 -8
  837. package/dist/recipe/cache.d.ts +0 -1
  838. package/dist/recipe/compile/component-section.d.ts +1 -2
  839. package/dist/recipe/compile/component-section.js +2 -2
  840. package/dist/recipe/compile/component-template.d.ts +0 -1
  841. package/dist/recipe/compile/component-template.js +15 -19
  842. package/dist/recipe/compile/content-item.d.ts +42 -22
  843. package/dist/recipe/compile/content-item.js +198 -46
  844. package/dist/recipe/compile/content-template.d.ts +0 -1
  845. package/dist/recipe/compile/content-template.js +25 -1
  846. package/dist/recipe/compile/design-parameters-template.d.ts +13 -0
  847. package/dist/recipe/compile/design-parameters-template.js +92 -0
  848. package/dist/recipe/compile/enumeration.d.ts +0 -1
  849. package/dist/recipe/compile/enumeration.js +4 -4
  850. package/dist/recipe/compile/page-design.d.ts +0 -1
  851. package/dist/recipe/compile/page-design.js +1 -1
  852. package/dist/recipe/compile/page-template.d.ts +30 -0
  853. package/dist/recipe/compile/page-template.js +121 -0
  854. package/dist/recipe/compile/page.d.ts +26 -0
  855. package/dist/recipe/compile/page.js +184 -0
  856. package/dist/recipe/compile/partial-design.d.ts +0 -1
  857. package/dist/recipe/compile/partial-design.js +1 -1
  858. package/dist/recipe/compile/placeholder.d.ts +23 -0
  859. package/dist/recipe/compile/placeholder.js +32 -0
  860. package/dist/recipe/compile/section-definition.d.ts +0 -1
  861. package/dist/recipe/compile/shared.d.ts +52 -7
  862. package/dist/recipe/compile/shared.js +55 -15
  863. package/dist/recipe/compile/site-template.d.ts +0 -1
  864. package/dist/recipe/compile/site-template.js +1 -1
  865. package/dist/recipe/compile/site.d.ts +0 -1
  866. package/dist/recipe/compile/site.js +1 -1
  867. package/dist/recipe/compile/webhook-authorization.d.ts +23 -0
  868. package/dist/recipe/compile/webhook-authorization.js +116 -0
  869. package/dist/recipe/compile/workflow.d.ts +46 -0
  870. package/dist/recipe/compile/workflow.js +368 -0
  871. package/dist/recipe/compile.d.ts +19 -3
  872. package/dist/recipe/compile.js +297 -11
  873. package/dist/recipe/ensure-marker-field.d.ts +25 -0
  874. package/dist/recipe/ensure-marker-field.js +140 -0
  875. package/dist/recipe/execute.d.ts +19 -2
  876. package/dist/recipe/execute.js +39 -8
  877. package/dist/recipe/guids.d.ts +106 -9
  878. package/dist/recipe/guids.js +126 -15
  879. package/dist/recipe/index.d.ts +11 -5
  880. package/dist/recipe/index.js +46 -23
  881. package/dist/recipe/io.d.ts +0 -1
  882. package/dist/recipe/io.js +33 -10
  883. package/dist/recipe/ir/operations.d.ts +66 -4
  884. package/dist/recipe/ir/operations.js +55 -2
  885. package/dist/recipe/ir/sitecore-templates.d.ts +87 -1
  886. package/dist/recipe/ir/sitecore-templates.js +94 -1
  887. package/dist/recipe/layout/emit.d.ts +22 -3
  888. package/dist/recipe/layout/emit.js +18 -7
  889. package/dist/recipe/layout/parse.d.ts +164 -0
  890. package/dist/recipe/layout/parse.js +295 -0
  891. package/dist/recipe/layout/templates-mapping.d.ts +0 -1
  892. package/dist/recipe/marker.d.ts +28 -0
  893. package/dist/recipe/marker.js +37 -0
  894. package/dist/recipe/plan.d.ts +9 -2
  895. package/dist/recipe/plan.js +195 -19
  896. package/dist/recipe/policy.d.ts +0 -1
  897. package/dist/recipe/policy.js +19 -1
  898. package/dist/recipe/read-current.d.ts +109 -0
  899. package/dist/recipe/read-current.js +1285 -0
  900. package/dist/recipe/recipe-kind.d.ts +4 -0
  901. package/dist/recipe/recipe-kind.js +217 -0
  902. package/dist/recipe/rollback-log.d.ts +52 -0
  903. package/dist/recipe/rollback-log.js +90 -0
  904. package/dist/recipe/rollback.d.ts +12 -1
  905. package/dist/recipe/rollback.js +32 -7
  906. package/dist/recipe/sandbox/load.d.ts +17 -0
  907. package/dist/recipe/sandbox/load.js +145 -0
  908. package/dist/recipe/sandbox/recipe-runner.cjs +49 -0
  909. package/dist/recipe/sandbox/transpile.d.ts +17 -0
  910. package/dist/recipe/sandbox/transpile.js +46 -0
  911. package/dist/recipe/schema/field-types.d.ts +3 -4
  912. package/dist/recipe/schema/recipe.d.ts +1631 -213
  913. package/dist/recipe/schema/recipe.js +576 -37
  914. package/dist/recipe/schema/source-fields.d.ts +0 -1
  915. package/dist/recipe/tasks/compile.d.ts +1 -2
  916. package/dist/recipe/tasks/compile.js +14 -4
  917. package/dist/recipe/tasks/diff.d.ts +1 -2
  918. package/dist/recipe/tasks/placeholder-allow.d.ts +0 -1
  919. package/dist/recipe/tasks/placeholder-allow.js +3 -7
  920. package/dist/recipe/tasks/plan.d.ts +3 -4
  921. package/dist/recipe/tasks/plan.js +5 -5
  922. package/dist/recipe/tasks/prune-defaults.d.ts +1 -2
  923. package/dist/recipe/tasks/prune-defaults.js +6 -7
  924. package/dist/recipe/tasks/push.d.ts +1 -2
  925. package/dist/recipe/tasks/push.js +46 -6
  926. package/dist/recipe/tasks/shared.d.ts +21 -4
  927. package/dist/recipe/tasks/shared.js +34 -21
  928. package/dist/recipe/unstable.d.ts +18 -0
  929. package/dist/recipe/unstable.js +36 -0
  930. package/dist/recipe/validate.d.ts +51 -2
  931. package/dist/recipe/validate.js +162 -15
  932. package/dist/scripting/connect.d.ts +24 -0
  933. package/dist/scripting/connect.js +17 -0
  934. package/dist/scripting/helpers/multilist.d.ts +26 -0
  935. package/dist/scripting/helpers/multilist.js +75 -0
  936. package/dist/scripting/index.d.ts +20 -0
  937. package/dist/scripting/index.js +57 -0
  938. package/dist/serialization/api/auth.d.ts +57 -0
  939. package/dist/serialization/api/auth.js +433 -0
  940. package/dist/serialization/api/client.d.ts +41 -0
  941. package/dist/serialization/api/client.js +41 -0
  942. package/dist/serialization/api/graphql.d.ts +11 -0
  943. package/dist/serialization/api/history.d.ts +8 -0
  944. package/dist/serialization/api/index.d.ts +23 -0
  945. package/dist/serialization/api/index.js +64 -0
  946. package/dist/serialization/api/items.d.ts +7 -0
  947. package/dist/serialization/api/items.js +132 -0
  948. package/dist/serialization/api/publish.d.ts +43 -0
  949. package/dist/serialization/api/publish.js +67 -0
  950. package/dist/serialization/api/roles.d.ts +8 -0
  951. package/dist/serialization/api/types.d.ts +65 -0
  952. package/dist/serialization/api/types.js +2 -0
  953. package/dist/serialization/api/users.d.ts +8 -0
  954. package/dist/serialization/commands.d.ts +0 -1
  955. package/dist/serialization/compare.d.ts +0 -1
  956. package/dist/serialization/context.d.ts +25 -0
  957. package/dist/serialization/context.js +58 -0
  958. package/dist/serialization/field-filter.d.ts +0 -1
  959. package/dist/serialization/filesystem-store/constants.d.ts +0 -1
  960. package/dist/serialization/filesystem-store/items.d.ts +0 -1
  961. package/dist/serialization/filesystem-store/items.js +1 -1
  962. package/dist/serialization/filesystem-store/roles.d.ts +1 -2
  963. package/dist/serialization/filesystem-store/users.d.ts +1 -2
  964. package/dist/serialization/filesystem-store/utils.d.ts +0 -1
  965. package/dist/serialization/index.d.ts +12 -0
  966. package/dist/serialization/index.js +32 -0
  967. package/dist/serialization/item-path.d.ts +0 -1
  968. package/dist/serialization/item-path.js +3 -3
  969. package/dist/serialization/path-provider.d.ts +0 -1
  970. package/dist/serialization/path-provider.js +4 -4
  971. package/dist/serialization/signature.d.ts +0 -1
  972. package/dist/serialization/tasks/diff.d.ts +0 -1
  973. package/dist/serialization/tasks/diff.js +176 -48
  974. package/dist/serialization/tasks/env/constants.d.ts +13 -1
  975. package/dist/serialization/tasks/env/constants.js +64 -1
  976. package/dist/serialization/tasks/env/deploy-token.d.ts +0 -1
  977. package/dist/serialization/tasks/env/deploy-token.js +69 -17
  978. package/dist/serialization/tasks/env/init/auth.d.ts +11 -3
  979. package/dist/serialization/tasks/env/init/auth.js +19 -17
  980. package/dist/serialization/tasks/env/init/deploy-lookup.d.ts +1 -2
  981. package/dist/serialization/tasks/env/init/deploy-lookup.js +18 -5
  982. package/dist/serialization/tasks/env/init.d.ts +0 -1
  983. package/dist/serialization/tasks/env/init.js +18 -12
  984. package/dist/serialization/tasks/env/logout.d.ts +0 -1
  985. package/dist/serialization/tasks/env/logout.js +13 -6
  986. package/dist/serialization/tasks/env/onboard.d.ts +40 -0
  987. package/dist/serialization/tasks/env/onboard.js +53 -0
  988. package/dist/serialization/tasks/env/setup-clients.d.ts +24 -0
  989. package/dist/serialization/tasks/env/setup-clients.js +119 -0
  990. package/dist/serialization/tasks/env/setup-env.d.ts +54 -0
  991. package/dist/serialization/tasks/env/setup-env.js +216 -0
  992. package/dist/serialization/tasks/env/setup-org-client.d.ts +21 -0
  993. package/dist/serialization/tasks/env/setup-org-client.js +146 -0
  994. package/dist/serialization/tasks/env/status.d.ts +0 -1
  995. package/dist/serialization/tasks/env/status.js +36 -11
  996. package/dist/serialization/tasks/helpers/collect.d.ts +1 -2
  997. package/dist/serialization/tasks/helpers/collect.js +22 -15
  998. package/dist/serialization/tasks/helpers/commands.d.ts +0 -1
  999. package/dist/serialization/tasks/helpers/filesystem.d.ts +0 -1
  1000. package/dist/serialization/tasks/helpers/filesystem.js +4 -4
  1001. package/dist/serialization/tasks/helpers/items.d.ts +0 -1
  1002. package/dist/serialization/tasks/helpers/sitecore.d.ts +1 -2
  1003. package/dist/serialization/tasks/helpers/sitecore.js +2 -2
  1004. package/dist/serialization/tasks/info.d.ts +0 -1
  1005. package/dist/serialization/tasks/package.d.ts +0 -1
  1006. package/dist/serialization/tasks/package.js +21 -16
  1007. package/dist/serialization/tasks/pull.d.ts +0 -1
  1008. package/dist/serialization/tasks/pull.js +24 -9
  1009. package/dist/serialization/tasks/push.d.ts +0 -1
  1010. package/dist/serialization/tasks/push.js +27 -11
  1011. package/dist/serialization/tasks/roles.d.ts +2 -2
  1012. package/dist/serialization/tasks/roles.js +9 -9
  1013. package/dist/serialization/tasks/shared.d.ts +9 -16
  1014. package/dist/serialization/tasks/shared.js +14 -44
  1015. package/dist/serialization/tasks/types.d.ts +44 -4
  1016. package/dist/serialization/tasks/types.js +1 -1
  1017. package/dist/serialization/tasks/users.d.ts +2 -2
  1018. package/dist/serialization/tasks/users.js +9 -9
  1019. package/dist/serialization/tasks/validate.d.ts +0 -1
  1020. package/dist/serialization/tasks/validate.js +2 -2
  1021. package/dist/serialization/tasks/watch.d.ts +0 -1
  1022. package/dist/serialization/tasks/watch.js +9 -8
  1023. package/dist/serialization/tree-spec.d.ts +0 -1
  1024. package/dist/serialization/tree-spec.js +21 -21
  1025. package/dist/serialization/types.d.ts +0 -1
  1026. package/dist/serialization/wildcard.d.ts +0 -1
  1027. package/dist/serialization/wildcard.js +2 -2
  1028. package/dist/serialization/yaml.d.ts +0 -1
  1029. package/dist/serialization/yaml.js +1 -1
  1030. package/dist/shared/browser.d.ts +0 -1
  1031. package/dist/shared/cli-options.d.ts +0 -1
  1032. package/dist/shared/cli-tasks.d.ts +1 -2
  1033. package/dist/shared/cli-tasks.js +2 -2
  1034. package/dist/shared/client-credential.d.ts +82 -0
  1035. package/dist/shared/client-credential.js +117 -0
  1036. package/dist/shared/concurrency.d.ts +20 -0
  1037. package/dist/shared/concurrency.js +67 -0
  1038. package/dist/shared/config-template.d.ts +0 -1
  1039. package/dist/shared/credential-matrix.d.ts +83 -0
  1040. package/dist/shared/credential-matrix.js +65 -0
  1041. package/dist/shared/env-tier.d.ts +2 -0
  1042. package/dist/shared/env-tier.js +31 -0
  1043. package/dist/shared/envelope.d.ts +69 -0
  1044. package/dist/shared/envelope.js +84 -0
  1045. package/dist/shared/errors.d.ts +79 -9
  1046. package/dist/shared/errors.js +49 -11
  1047. package/dist/shared/graphql.d.ts +2 -3
  1048. package/dist/shared/graphql.js +31 -15
  1049. package/dist/shared/history.d.ts +25 -1
  1050. package/dist/shared/history.js +35 -1
  1051. package/dist/shared/human-only-operations.d.ts +28 -0
  1052. package/dist/shared/human-only-operations.js +33 -0
  1053. package/dist/shared/keychain.d.ts +68 -1
  1054. package/dist/shared/keychain.js +416 -46
  1055. package/dist/shared/logger.d.ts +2 -1
  1056. package/dist/shared/logger.js +12 -1
  1057. package/dist/shared/output.d.ts +0 -1
  1058. package/dist/shared/prompt.d.ts +0 -1
  1059. package/dist/shared/prompt.js +2 -2
  1060. package/dist/shared/publish-audit.d.ts +154 -0
  1061. package/dist/shared/publish-audit.js +52 -0
  1062. package/dist/shared/publish-consent.d.ts +104 -0
  1063. package/dist/shared/publish-consent.js +148 -0
  1064. package/dist/shared/redact.d.ts +0 -1
  1065. package/dist/shared/redact.js +4 -2
  1066. package/dist/shared/region.d.ts +96 -0
  1067. package/dist/shared/region.js +129 -0
  1068. package/dist/shared/rwlock.d.ts +43 -0
  1069. package/dist/shared/rwlock.js +110 -0
  1070. package/dist/shared/spinner.d.ts +0 -1
  1071. package/dist/shared/style.d.ts +0 -1
  1072. package/dist/shared/telemetry.d.ts +15 -2
  1073. package/dist/shared/telemetry.js +59 -34
  1074. package/dist/shared/topics.d.ts +33 -0
  1075. package/dist/shared/topics.js +151 -0
  1076. package/dist/shared/validate.d.ts +0 -1
  1077. package/dist/shared/validate.js +18 -3
  1078. package/dist/sites/api/collections.d.ts +0 -1
  1079. package/dist/sites/api/jobs.d.ts +0 -1
  1080. package/dist/sites/api/languages.d.ts +0 -1
  1081. package/dist/sites/api/request.d.ts +0 -1
  1082. package/dist/sites/api/request.js +13 -4
  1083. package/dist/sites/api/sites.d.ts +44 -1
  1084. package/dist/sites/api/sites.js +42 -1
  1085. package/dist/sites/api/types.d.ts +0 -1
  1086. package/dist/sites/index.d.ts +25 -0
  1087. package/dist/sites/index.js +44 -0
  1088. package/dist/sync/aggregate-kinds.d.ts +7 -0
  1089. package/dist/sync/aggregate-kinds.js +32 -0
  1090. package/dist/sync/aggregate.d.ts +100 -0
  1091. package/dist/sync/aggregate.js +173 -0
  1092. package/dist/sync/engine.d.ts +28 -0
  1093. package/dist/sync/engine.js +38 -0
  1094. package/dist/sync/index.d.ts +18 -0
  1095. package/dist/sync/index.js +25 -0
  1096. package/dist/sync/io.d.ts +8 -0
  1097. package/dist/sync/io.js +52 -0
  1098. package/dist/sync/kind.d.ts +80 -0
  1099. package/dist/sync/kind.js +2 -0
  1100. package/dist/sync/plan.d.ts +55 -0
  1101. package/dist/sync/plan.js +27 -0
  1102. package/dist/sync/registry.d.ts +7 -0
  1103. package/dist/sync/registry.js +36 -0
  1104. package/dist/webhooks/api/client.d.ts +134 -0
  1105. package/dist/webhooks/api/client.js +326 -0
  1106. package/dist/webhooks/api/graphql.d.ts +4 -0
  1107. package/dist/webhooks/api/graphql.js +18 -0
  1108. package/dist/webhooks/api/templates.d.ts +41 -0
  1109. package/dist/webhooks/api/templates.js +78 -0
  1110. package/dist/webhooks/index.d.ts +16 -0
  1111. package/dist/webhooks/index.js +43 -0
  1112. package/dist/webhooks/tasks/create.d.ts +58 -0
  1113. package/dist/webhooks/tasks/create.js +127 -0
  1114. package/dist/webhooks/tasks/delete.d.ts +14 -0
  1115. package/dist/webhooks/tasks/delete.js +57 -0
  1116. package/dist/webhooks/tasks/event-types.d.ts +21 -0
  1117. package/dist/webhooks/tasks/event-types.js +32 -0
  1118. package/dist/webhooks/tasks/inspect.d.ts +12 -0
  1119. package/dist/webhooks/tasks/inspect.js +65 -0
  1120. package/dist/webhooks/tasks/list.d.ts +29 -0
  1121. package/dist/webhooks/tasks/list.js +41 -0
  1122. package/dist/webhooks/tasks/shared.d.ts +35 -0
  1123. package/dist/webhooks/tasks/shared.js +38 -0
  1124. package/dist/workflow/api/client.d.ts +208 -0
  1125. package/dist/workflow/api/client.js +421 -0
  1126. package/dist/workflow/api/graphql.d.ts +4 -0
  1127. package/dist/workflow/api/graphql.js +18 -0
  1128. package/dist/workflow/api/resolve-command.d.ts +27 -0
  1129. package/dist/workflow/api/resolve-command.js +26 -0
  1130. package/dist/workflow/index.d.ts +18 -0
  1131. package/dist/workflow/index.js +37 -0
  1132. package/dist/workflow/tasks/advance.d.ts +39 -0
  1133. package/dist/workflow/tasks/advance.js +182 -0
  1134. package/dist/workflow/tasks/apply.d.ts +47 -0
  1135. package/dist/workflow/tasks/apply.js +193 -0
  1136. package/dist/workflow/tasks/assigned.d.ts +33 -0
  1137. package/dist/workflow/tasks/assigned.js +41 -0
  1138. package/dist/workflow/tasks/inspect.d.ts +60 -0
  1139. package/dist/workflow/tasks/inspect.js +171 -0
  1140. package/dist/workflow/tasks/list-commands.d.ts +21 -0
  1141. package/dist/workflow/tasks/list-commands.js +54 -0
  1142. package/dist/workflow/tasks/list-defs.d.ts +21 -0
  1143. package/dist/workflow/tasks/list-defs.js +28 -0
  1144. package/dist/workflow/tasks/reset.d.ts +33 -0
  1145. package/dist/workflow/tasks/reset.js +137 -0
  1146. package/dist/workflow/tasks/shared.d.ts +75 -0
  1147. package/dist/workflow/tasks/shared.js +124 -0
  1148. package/dist/workflow/tasks/status.d.ts +21 -0
  1149. package/dist/workflow/tasks/status.js +41 -0
  1150. package/package.json +102 -8
  1151. package/dist/cli.d.ts.map +0 -1
  1152. package/dist/commands/config.d.ts.map +0 -1
  1153. package/dist/commands/deploy/deployments.d.ts.map +0 -1
  1154. package/dist/commands/deploy/editing-host.d.ts.map +0 -1
  1155. package/dist/commands/deploy/environments/deployments.d.ts.map +0 -1
  1156. package/dist/commands/deploy/environments/index.d.ts.map +0 -1
  1157. package/dist/commands/deploy/environments/mutations.d.ts.map +0 -1
  1158. package/dist/commands/deploy/environments/queries.d.ts.map +0 -1
  1159. package/dist/commands/deploy/environments/variables.d.ts.map +0 -1
  1160. package/dist/commands/deploy/environments.d.ts.map +0 -1
  1161. package/dist/commands/deploy/index.d.ts.map +0 -1
  1162. package/dist/commands/deploy/logs.d.ts.map +0 -1
  1163. package/dist/commands/deploy/organizations.d.ts.map +0 -1
  1164. package/dist/commands/deploy/projects.d.ts.map +0 -1
  1165. package/dist/commands/deploy/shared.d.ts.map +0 -1
  1166. package/dist/commands/deploy/site.d.ts.map +0 -1
  1167. package/dist/commands/deploy/source-control.d.ts.map +0 -1
  1168. package/dist/commands/deploy.d.ts.map +0 -1
  1169. package/dist/commands/history.d.ts.map +0 -1
  1170. package/dist/commands/init.d.ts.map +0 -1
  1171. package/dist/commands/login.d.ts.map +0 -1
  1172. package/dist/commands/logout.d.ts.map +0 -1
  1173. package/dist/commands/recipe/index.d.ts.map +0 -1
  1174. package/dist/commands/serialization/index.d.ts.map +0 -1
  1175. package/dist/commands/serialization/package.d.ts.map +0 -1
  1176. package/dist/commands/shared.d.ts.map +0 -1
  1177. package/dist/commands/shell.d.ts.map +0 -1
  1178. package/dist/commands/status.d.ts.map +0 -1
  1179. package/dist/commands/telemetry.d.ts.map +0 -1
  1180. package/dist/config/env-overrides.d.ts.map +0 -1
  1181. package/dist/config/index.d.ts.map +0 -1
  1182. package/dist/config/modules.d.ts.map +0 -1
  1183. package/dist/config/paths.d.ts.map +0 -1
  1184. package/dist/config/root-config.d.ts.map +0 -1
  1185. package/dist/config/types.d.ts.map +0 -1
  1186. package/dist/config/validation.d.ts.map +0 -1
  1187. package/dist/deploy/api/common/headers.d.ts.map +0 -1
  1188. package/dist/deploy/api/common/index.d.ts +0 -4
  1189. package/dist/deploy/api/common/index.d.ts.map +0 -1
  1190. package/dist/deploy/api/common/index.js +0 -19
  1191. package/dist/deploy/api/common/request.d.ts.map +0 -1
  1192. package/dist/deploy/api/common/types.d.ts.map +0 -1
  1193. package/dist/deploy/api/common.d.ts +0 -2
  1194. package/dist/deploy/api/common.d.ts.map +0 -1
  1195. package/dist/deploy/api/common.js +0 -17
  1196. package/dist/deploy/api/deployment-logs.d.ts.map +0 -1
  1197. package/dist/deploy/api/deployments.d.ts.map +0 -1
  1198. package/dist/deploy/api/environments.d.ts.map +0 -1
  1199. package/dist/deploy/api/index.d.ts.map +0 -1
  1200. package/dist/deploy/api/logs.d.ts.map +0 -1
  1201. package/dist/deploy/api/organizations.d.ts.map +0 -1
  1202. package/dist/deploy/api/projects.d.ts.map +0 -1
  1203. package/dist/deploy/api/source-control.d.ts.map +0 -1
  1204. package/dist/deploy/api.d.ts.map +0 -1
  1205. package/dist/deploy/tasks/deployment-result.d.ts.map +0 -1
  1206. package/dist/deploy/tasks/deployments.d.ts.map +0 -1
  1207. package/dist/deploy/tasks/editing-host.d.ts.map +0 -1
  1208. package/dist/deploy/tasks/environments.d.ts.map +0 -1
  1209. package/dist/deploy/tasks/index.d.ts +0 -10
  1210. package/dist/deploy/tasks/index.d.ts.map +0 -1
  1211. package/dist/deploy/tasks/index.js +0 -25
  1212. package/dist/deploy/tasks/logs.d.ts.map +0 -1
  1213. package/dist/deploy/tasks/organizations.d.ts.map +0 -1
  1214. package/dist/deploy/tasks/projects.d.ts.map +0 -1
  1215. package/dist/deploy/tasks/shared.d.ts.map +0 -1
  1216. package/dist/deploy/tasks/site-bind.d.ts.map +0 -1
  1217. package/dist/deploy/tasks/site.d.ts.map +0 -1
  1218. package/dist/deploy/tasks/source-control.d.ts.map +0 -1
  1219. package/dist/deploy/tasks/types.d.ts.map +0 -1
  1220. package/dist/deploy/tasks.d.ts +0 -3
  1221. package/dist/deploy/tasks.d.ts.map +0 -1
  1222. package/dist/deploy/tasks.js +0 -18
  1223. package/dist/recipe/api/auth.d.ts.map +0 -1
  1224. package/dist/recipe/api/authoring-client.d.ts.map +0 -1
  1225. package/dist/recipe/api/client.d.ts.map +0 -1
  1226. package/dist/recipe/api/graphql.d.ts.map +0 -1
  1227. package/dist/recipe/api/ref-encoding.d.ts.map +0 -1
  1228. package/dist/recipe/api/site-discovery.d.ts.map +0 -1
  1229. package/dist/recipe/api/sites-client.d.ts.map +0 -1
  1230. package/dist/recipe/cache.d.ts.map +0 -1
  1231. package/dist/recipe/compile/component-section.d.ts.map +0 -1
  1232. package/dist/recipe/compile/component-template.d.ts.map +0 -1
  1233. package/dist/recipe/compile/content-item.d.ts.map +0 -1
  1234. package/dist/recipe/compile/content-template.d.ts.map +0 -1
  1235. package/dist/recipe/compile/enumeration.d.ts.map +0 -1
  1236. package/dist/recipe/compile/page-design.d.ts.map +0 -1
  1237. package/dist/recipe/compile/parameters-template.d.ts +0 -14
  1238. package/dist/recipe/compile/parameters-template.d.ts.map +0 -1
  1239. package/dist/recipe/compile/parameters-template.js +0 -92
  1240. package/dist/recipe/compile/partial-design.d.ts.map +0 -1
  1241. package/dist/recipe/compile/section-definition.d.ts.map +0 -1
  1242. package/dist/recipe/compile/shared.d.ts.map +0 -1
  1243. package/dist/recipe/compile/site-template.d.ts.map +0 -1
  1244. package/dist/recipe/compile/site.d.ts.map +0 -1
  1245. package/dist/recipe/compile.d.ts.map +0 -1
  1246. package/dist/recipe/execute.d.ts.map +0 -1
  1247. package/dist/recipe/guids.d.ts.map +0 -1
  1248. package/dist/recipe/index.d.ts.map +0 -1
  1249. package/dist/recipe/io.d.ts.map +0 -1
  1250. package/dist/recipe/ir/operations.d.ts.map +0 -1
  1251. package/dist/recipe/ir/sitecore-templates.d.ts.map +0 -1
  1252. package/dist/recipe/layout/emit.d.ts.map +0 -1
  1253. package/dist/recipe/layout/templates-mapping.d.ts.map +0 -1
  1254. package/dist/recipe/plan.d.ts.map +0 -1
  1255. package/dist/recipe/policy.d.ts.map +0 -1
  1256. package/dist/recipe/rollback.d.ts.map +0 -1
  1257. package/dist/recipe/schema/field-types.d.ts.map +0 -1
  1258. package/dist/recipe/schema/recipe.d.ts.map +0 -1
  1259. package/dist/recipe/schema/source-fields.d.ts.map +0 -1
  1260. package/dist/recipe/tasks/compile.d.ts.map +0 -1
  1261. package/dist/recipe/tasks/diff.d.ts.map +0 -1
  1262. package/dist/recipe/tasks/index.d.ts +0 -9
  1263. package/dist/recipe/tasks/index.d.ts.map +0 -1
  1264. package/dist/recipe/tasks/index.js +0 -13
  1265. package/dist/recipe/tasks/placeholder-allow.d.ts.map +0 -1
  1266. package/dist/recipe/tasks/plan.d.ts.map +0 -1
  1267. package/dist/recipe/tasks/prune-defaults.d.ts.map +0 -1
  1268. package/dist/recipe/tasks/push.d.ts.map +0 -1
  1269. package/dist/recipe/tasks/shared.d.ts.map +0 -1
  1270. package/dist/recipe/validate.d.ts.map +0 -1
  1271. package/dist/serialization/commands.d.ts.map +0 -1
  1272. package/dist/serialization/compare.d.ts.map +0 -1
  1273. package/dist/serialization/field-filter.d.ts.map +0 -1
  1274. package/dist/serialization/filesystem-store/constants.d.ts.map +0 -1
  1275. package/dist/serialization/filesystem-store/index.d.ts +0 -4
  1276. package/dist/serialization/filesystem-store/index.d.ts.map +0 -1
  1277. package/dist/serialization/filesystem-store/index.js +0 -15
  1278. package/dist/serialization/filesystem-store/items.d.ts.map +0 -1
  1279. package/dist/serialization/filesystem-store/roles.d.ts.map +0 -1
  1280. package/dist/serialization/filesystem-store/users.d.ts.map +0 -1
  1281. package/dist/serialization/filesystem-store/utils.d.ts.map +0 -1
  1282. package/dist/serialization/filesystem-store.d.ts +0 -2
  1283. package/dist/serialization/filesystem-store.d.ts.map +0 -1
  1284. package/dist/serialization/filesystem-store.js +0 -17
  1285. package/dist/serialization/item-path.d.ts.map +0 -1
  1286. package/dist/serialization/path-provider.d.ts.map +0 -1
  1287. package/dist/serialization/signature.d.ts.map +0 -1
  1288. package/dist/serialization/sitecore-api/auth.d.ts +0 -31
  1289. package/dist/serialization/sitecore-api/auth.d.ts.map +0 -1
  1290. package/dist/serialization/sitecore-api/auth.js +0 -319
  1291. package/dist/serialization/sitecore-api/graphql.d.ts +0 -12
  1292. package/dist/serialization/sitecore-api/graphql.d.ts.map +0 -1
  1293. package/dist/serialization/sitecore-api/history.d.ts +0 -9
  1294. package/dist/serialization/sitecore-api/history.d.ts.map +0 -1
  1295. package/dist/serialization/sitecore-api/index.d.ts +0 -7
  1296. package/dist/serialization/sitecore-api/index.d.ts.map +0 -1
  1297. package/dist/serialization/sitecore-api/index.js +0 -22
  1298. package/dist/serialization/sitecore-api/items.d.ts +0 -8
  1299. package/dist/serialization/sitecore-api/items.d.ts.map +0 -1
  1300. package/dist/serialization/sitecore-api/items.js +0 -132
  1301. package/dist/serialization/sitecore-api/publish.d.ts +0 -14
  1302. package/dist/serialization/sitecore-api/publish.d.ts.map +0 -1
  1303. package/dist/serialization/sitecore-api/publish.js +0 -43
  1304. package/dist/serialization/sitecore-api/roles.d.ts +0 -9
  1305. package/dist/serialization/sitecore-api/roles.d.ts.map +0 -1
  1306. package/dist/serialization/sitecore-api/users.d.ts +0 -9
  1307. package/dist/serialization/sitecore-api/users.d.ts.map +0 -1
  1308. package/dist/serialization/sitecore-api.d.ts +0 -2
  1309. package/dist/serialization/sitecore-api.d.ts.map +0 -1
  1310. package/dist/serialization/sitecore-api.js +0 -17
  1311. package/dist/serialization/tasks/diff.d.ts.map +0 -1
  1312. package/dist/serialization/tasks/env/constants.d.ts.map +0 -1
  1313. package/dist/serialization/tasks/env/deploy-token.d.ts.map +0 -1
  1314. package/dist/serialization/tasks/env/index.d.ts +0 -5
  1315. package/dist/serialization/tasks/env/index.d.ts.map +0 -1
  1316. package/dist/serialization/tasks/env/index.js +0 -11
  1317. package/dist/serialization/tasks/env/init/auth.d.ts.map +0 -1
  1318. package/dist/serialization/tasks/env/init/deploy-lookup.d.ts.map +0 -1
  1319. package/dist/serialization/tasks/env/init.d.ts.map +0 -1
  1320. package/dist/serialization/tasks/env/logout.d.ts.map +0 -1
  1321. package/dist/serialization/tasks/env/status.d.ts.map +0 -1
  1322. package/dist/serialization/tasks/env.d.ts +0 -2
  1323. package/dist/serialization/tasks/env.d.ts.map +0 -1
  1324. package/dist/serialization/tasks/env.js +0 -17
  1325. package/dist/serialization/tasks/helpers/collect.d.ts.map +0 -1
  1326. package/dist/serialization/tasks/helpers/commands.d.ts.map +0 -1
  1327. package/dist/serialization/tasks/helpers/filesystem.d.ts.map +0 -1
  1328. package/dist/serialization/tasks/helpers/index.d.ts +0 -6
  1329. package/dist/serialization/tasks/helpers/index.d.ts.map +0 -1
  1330. package/dist/serialization/tasks/helpers/index.js +0 -13
  1331. package/dist/serialization/tasks/helpers/items.d.ts.map +0 -1
  1332. package/dist/serialization/tasks/helpers/sitecore.d.ts.map +0 -1
  1333. package/dist/serialization/tasks/helpers.d.ts +0 -2
  1334. package/dist/serialization/tasks/helpers.d.ts.map +0 -1
  1335. package/dist/serialization/tasks/helpers.js +0 -17
  1336. package/dist/serialization/tasks/index.d.ts +0 -8
  1337. package/dist/serialization/tasks/index.d.ts.map +0 -1
  1338. package/dist/serialization/tasks/index.js +0 -19
  1339. package/dist/serialization/tasks/info.d.ts.map +0 -1
  1340. package/dist/serialization/tasks/package.d.ts.map +0 -1
  1341. package/dist/serialization/tasks/pull.d.ts.map +0 -1
  1342. package/dist/serialization/tasks/push.d.ts.map +0 -1
  1343. package/dist/serialization/tasks/roles.d.ts.map +0 -1
  1344. package/dist/serialization/tasks/shared.d.ts.map +0 -1
  1345. package/dist/serialization/tasks/types.d.ts.map +0 -1
  1346. package/dist/serialization/tasks/users.d.ts.map +0 -1
  1347. package/dist/serialization/tasks/validate.d.ts.map +0 -1
  1348. package/dist/serialization/tasks/watch.d.ts.map +0 -1
  1349. package/dist/serialization/tasks.d.ts +0 -4
  1350. package/dist/serialization/tasks.d.ts.map +0 -1
  1351. package/dist/serialization/tasks.js +0 -19
  1352. package/dist/serialization/tree-spec.d.ts.map +0 -1
  1353. package/dist/serialization/types.d.ts.map +0 -1
  1354. package/dist/serialization/wildcard.d.ts.map +0 -1
  1355. package/dist/serialization/yaml.d.ts.map +0 -1
  1356. package/dist/shared/browser.d.ts.map +0 -1
  1357. package/dist/shared/cli-options.d.ts.map +0 -1
  1358. package/dist/shared/cli-tasks.d.ts.map +0 -1
  1359. package/dist/shared/config-template.d.ts.map +0 -1
  1360. package/dist/shared/env.d.ts +0 -28
  1361. package/dist/shared/env.d.ts.map +0 -1
  1362. package/dist/shared/env.js +0 -38
  1363. package/dist/shared/errors.d.ts.map +0 -1
  1364. package/dist/shared/graphql.d.ts.map +0 -1
  1365. package/dist/shared/history.d.ts.map +0 -1
  1366. package/dist/shared/keychain.d.ts.map +0 -1
  1367. package/dist/shared/logger.d.ts.map +0 -1
  1368. package/dist/shared/output.d.ts.map +0 -1
  1369. package/dist/shared/prompt.d.ts.map +0 -1
  1370. package/dist/shared/redact.d.ts.map +0 -1
  1371. package/dist/shared/spinner.d.ts.map +0 -1
  1372. package/dist/shared/style.d.ts.map +0 -1
  1373. package/dist/shared/telemetry.d.ts.map +0 -1
  1374. package/dist/shared/validate.d.ts.map +0 -1
  1375. package/dist/sites/api/collections.d.ts.map +0 -1
  1376. package/dist/sites/api/index.d.ts +0 -26
  1377. package/dist/sites/api/index.d.ts.map +0 -1
  1378. package/dist/sites/api/index.js +0 -55
  1379. package/dist/sites/api/jobs.d.ts.map +0 -1
  1380. package/dist/sites/api/languages.d.ts.map +0 -1
  1381. package/dist/sites/api/request.d.ts.map +0 -1
  1382. package/dist/sites/api/sites.d.ts.map +0 -1
  1383. package/dist/sites/api/types.d.ts.map +0 -1
  1384. /package/dist/serialization/{sitecore-api → api}/graphql.js +0 -0
  1385. /package/dist/serialization/{sitecore-api → api}/history.js +0 -0
  1386. /package/dist/serialization/{sitecore-api → api}/roles.js +0 -0
  1387. /package/dist/serialization/{sitecore-api → api}/users.js +0 -0
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RecipeSchema = exports.EnumerationRecipeSchema = exports.EnumerationValueSchema = exports.SiteRecipeSchema = exports.SiteGroupingSchema = exports.SiteTemplateRecipeSchema = exports.SiteTemplateTaxonomyEntrySchema = exports.SiteTemplateDictionaryEntrySchema = exports.PageDesignRecipeSchema = exports.PartialDesignRecipeSchema = exports.LayoutSchema = exports.ComponentPlacementSchema = exports.ContentItemRecipeSchema = exports.ContentFieldValueSchema = exports.SectionDefinitionRecipeSchema = exports.ParametersTemplateRecipeSchema = exports.ContentTemplateRecipeSchema = exports.RecipeMetaSchema = exports.RecipeMetaTaxSchema = exports.ComponentTemplateRecipeSchema = exports.ComponentSectionRecipeSchema = exports.RecipeDatasourceSchema = exports.RenderingDatasourceLocationSchema = exports.PlaceholderDefinitionSchema = exports.RenderingVariantDefinitionSchema = exports.ParamDefinitionSchema = exports.FieldDefinitionSchema = exports.SitecoreFieldAugmentSchema = void 0;
3
+ exports.RecipeSchema = exports.WorkflowRecipeSchema = exports.WebhookAuthorizationRecipeSchema = exports.EnumerationRecipeSchema = exports.EnumerationValueSchema = exports.SiteRecipeSchema = exports.SiteGroupingSchema = exports.SiteTemplateRecipeSchema = exports.SiteTemplateTaxonomyEntrySchema = exports.SiteTemplateDictionaryEntrySchema = exports.PageDesignRecipeSchema = exports.PartialDesignRecipeSchema = exports.PageRecipeSchema = exports.PageTemplateRecipeSchema = exports.LayoutSchema = exports.ComponentPlacementSchema = exports.ContentItemRecipeSchema = exports.ContentVersionSchema = exports.ContentVariantSchema = exports.ContentTranslationSchema = exports.ContentFieldValueSchema = exports.SectionDefinitionRecipeSchema = exports.DesignParametersTemplateRecipeSchema = exports.ContentTemplateRecipeSchema = exports.RecipeMetaSchema = exports.RecipeMetaTaxSchema = exports.ComponentTemplateRecipeSchema = exports.ComponentSectionRecipeSchema = exports.RecipeDatasourceSchema = exports.RenderingDatasourceLocationSchema = exports.PlaceholderRecipeSchema = exports.PlaceholderDefinitionSchema = exports.RenderingVariantDefinitionSchema = exports.DesignParameterSchema = exports.FieldDefinitionSchema = exports.SitecoreFieldAugmentSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const field_types_1 = require("./field-types");
6
6
  /**
@@ -112,6 +112,19 @@ exports.SitecoreFieldAugmentSchema = zod_1.z
112
112
  * not `params`/`variants`). Defaults to "Content".
113
113
  */
114
114
  section: zod_1.z.string().optional(),
115
+ /**
116
+ * Sitecore field storage axis — how a value is scoped on items
117
+ * conforming to the template:
118
+ * - `versioned` (default) — a value per language *and* per numbered
119
+ * version.
120
+ * - `unversioned` — a value per language, shared across numbered
121
+ * versions.
122
+ * - `shared` — a single value for the whole item, every language and
123
+ * version.
124
+ * Omit for the Sitecore default (`versioned`). Determines whether
125
+ * per-language / per-version content is meaningful for this field.
126
+ */
127
+ storage: zod_1.z.enum(["versioned", "unversioned", "shared"]).optional(),
115
128
  })
116
129
  .refine((v) => v.sourceRaw === undefined ||
117
130
  (v.sourceTypes === undefined && v.sourceQuery === undefined && v.sourceScope === undefined), {
@@ -129,7 +142,7 @@ exports.FieldDefinitionSchema = zod_1.z.object({
129
142
  default: zod_1.z.string().optional(),
130
143
  sitecore: exports.SitecoreFieldAugmentSchema.optional(),
131
144
  });
132
- exports.ParamDefinitionSchema = zod_1.z.object({
145
+ exports.DesignParameterSchema = zod_1.z.object({
133
146
  name: zod_1.z.string().min(1),
134
147
  shape: field_types_1.FieldShapeSchema,
135
148
  values: zod_1.z.array(zod_1.z.string()).optional(),
@@ -162,11 +175,108 @@ exports.RenderingVariantDefinitionSchema = zod_1.z.object({
162
175
  message: "Variant `name` must be PascalCase (e.g. `Default`, `FullWidth`) — the Content SDK uses it as a case-sensitive key into the component module's named exports.",
163
176
  }),
164
177
  });
178
+ /**
179
+ * An inline placeholder slot a container component EXPOSES for child
180
+ * renderings to drop into. The hybrid placeholder model's component-owned
181
+ * half: a Section / Grid / Tabs component declares the slots it owns
182
+ * here; site-level chrome slots (`/header`, `/footer`) that belong to no
183
+ * single component are authored as a standalone `PlaceholderRecipe`
184
+ * instead.
185
+ *
186
+ * Both forms compile to the same artifact — one Sitecore Placeholder
187
+ * Settings item per unique `key` — emitted by the cross-recipe
188
+ * `buildPlaceholderSettingsAggregate` (see `compile.ts`). Identity is the
189
+ * `key`, so an inline slot and a `PlaceholderRecipe` MUST NOT name the
190
+ * same key; `validateRecipeSet` flags the collision.
191
+ */
165
192
  exports.PlaceholderDefinitionSchema = zod_1.z.object({
166
- /** Placeholder key string used in layout XML. */
193
+ /**
194
+ * Sitecore Placeholder Key — the string layout XML references in its
195
+ * `placeh` attribute (e.g. `headless-main`, `grid-content`). For a
196
+ * `dynamic` placeholder this is the static PREFIX; SXA appends the
197
+ * `-{uid}-{index}` suffix at render time.
198
+ */
199
+ key: zod_1.z.string().min(1),
200
+ /** Author-facing label on the Placeholder Settings item. Defaults to `key`. */
201
+ displayName: zod_1.z.string().min(1).optional(),
202
+ /**
203
+ * Optional grouping folder path under the placeholder settings root —
204
+ * the Placeholder Settings item lands at
205
+ * `<placeholderSettingsRoot>/<folder>/<name>`. Multi-segment paths
206
+ * (`"Partial Design/Header"`) split on `/`; each segment is
207
+ * materialised once as a `CreateOnly` folder conforming to the SXA
208
+ * `Placeholder Settings Folder` template, so it inherits the right
209
+ * Insert Options. Recipes naming the same folder share it. Omit → the
210
+ * item lands flat at the root.
211
+ */
212
+ folder: zod_1.z.string().min(1).optional(),
213
+ /**
214
+ * SXA dynamic placeholder. When true the host rendering must also set
215
+ * `dynamicPlaceholders: true` so SXA generates per-instance keys; the
216
+ * Placeholder Settings item is still keyed by the static prefix here.
217
+ */
218
+ dynamic: zod_1.z.boolean().optional(),
219
+ /**
220
+ * Restriction: only renderings of these `ComponentTemplateRecipe`
221
+ * handles may be dropped into this slot. Compiles to the slot's
222
+ * `Allowed Controls` whitelist, unioned with any component that names
223
+ * this `key` in its `placedIn`. Empty/omitted = no slot-side
224
+ * restriction (the union is then driven entirely by `placedIn`).
225
+ */
226
+ allowedComponents: zod_1.z.array(zod_1.z.string().regex(HANDLE_PATTERN)).optional(),
227
+ });
228
+ /**
229
+ * A standalone placeholder — the hybrid model's site-chrome half. Slots
230
+ * like `/header`, `/footer`, `/main`, or a page-design CTA band belong to
231
+ * no single component; they're authored as their own recipe so partials
232
+ * and page designs have a typed, validated target to place renderings
233
+ * into.
234
+ *
235
+ * Compiles (via `buildPlaceholderSettingsAggregate`) to one Sitecore
236
+ * Placeholder Settings item under the tenant's `placeholderSettingsRoot`,
237
+ * carrying the `Placeholder Key` and an `Allowed Controls` whitelist =
238
+ * `allowedComponents` ∪ every component whose `placedIn` names this
239
+ * `key`.
240
+ *
241
+ * Identity: `placeholderSettingsId(site, key)` — keyed by `key`, not
242
+ * `handle`. The `handle` is the authoring-surface identity used for
243
+ * cross-recipe references and validation messages.
244
+ */
245
+ exports.PlaceholderRecipeSchema = zod_1.z.object({
246
+ kind: zod_1.z.literal("placeholder"),
247
+ schemaVersion: zod_1.z.literal("1"),
248
+ handle: zod_1.z.string().regex(HANDLE_PATTERN, {
249
+ message: "handle must match `<kebab-name>@<major>`, e.g. site-header-slot@1",
250
+ }),
251
+ /**
252
+ * Sitecore Placeholder Key — the string layout XML references. For a
253
+ * `dynamic` placeholder this is the static prefix. Load-bearing: the
254
+ * emitted item's GUID derives from `key`, so renaming it creates a
255
+ * different placeholder.
256
+ */
167
257
  key: zod_1.z.string().min(1),
168
- /** Optional restriction: only these rendering handles may drop here. */
169
- allowedRenderingHandles: zod_1.z.array(zod_1.z.string()).optional(),
258
+ /** Sitecore item name under the Placeholder Settings root. */
259
+ name: zod_1.z.string().min(1),
260
+ displayName: zod_1.z.string().min(1),
261
+ description: zod_1.z.string().optional(),
262
+ icon: zod_1.z.string().optional(),
263
+ /**
264
+ * Optional grouping folder path under the placeholder settings root —
265
+ * the item lands at `<placeholderSettingsRoot>/<folder>/<name>`.
266
+ * Multi-segment (`"Partial Design/Header"`) splits on `/`; each
267
+ * segment is a `CreateOnly` folder conforming to the SXA `Placeholder
268
+ * Settings Folder` template (inheriting its Insert Options). Recipes
269
+ * naming the same folder share it. Omit → flat at the root.
270
+ */
271
+ folder: zod_1.z.string().min(1).optional(),
272
+ /** SXA dynamic placeholder — see `PlaceholderDefinitionSchema.dynamic`. */
273
+ dynamic: zod_1.z.boolean().default(false),
274
+ /**
275
+ * `ComponentTemplateRecipe` handles whose renderings may be dropped
276
+ * here. Unioned with any component naming this `key` in `placedIn` to
277
+ * form the `Allowed Controls` whitelist.
278
+ */
279
+ allowedComponents: zod_1.z.array(zod_1.z.string().regex(HANDLE_PATTERN)).default([]),
170
280
  });
171
281
  /**
172
282
  * One entry in the modern semantic-scope datasource locations list.
@@ -354,7 +464,7 @@ exports.ComponentTemplateRecipeSchema = zod_1.z.object({
354
464
  */
355
465
  datasource: exports.RecipeDatasourceSchema.optional(),
356
466
  /**
357
- * Reference to a separate `ParametersTemplateRecipe`. When present,
467
+ * Reference to a separate `DesignParametersTemplateRecipe`. When present,
358
468
  * the rendering's Parameters Template field points at this template
359
469
  * and the compiler does NOT synthesise an anonymous parameters
360
470
  * template from inline `params:`.
@@ -392,16 +502,23 @@ exports.ComponentTemplateRecipeSchema = zod_1.z.object({
392
502
  */
393
503
  availableIn: zod_1.z.array(zod_1.z.string().regex(HANDLE_PATTERN)).optional(),
394
504
  variants: zod_1.z.array(exports.RenderingVariantDefinitionSchema).default([]),
395
- params: zod_1.z.array(exports.ParamDefinitionSchema).default([]),
505
+ params: zod_1.z.array(exports.DesignParameterSchema).default([]),
396
506
  /**
397
507
  * SXA placeholder keys this rendering can be PLACED INTO — the
398
- * allow-list. At apply time scai walks the configured Placeholder
399
- * Settings roots, finds items whose `Placeholder Key` field matches
400
- * each entry here, and appends this rendering's itemId to their
401
- * `Allowed Controls` field. Without this, the rendering exists in
402
- * CM but Pages won't offer it in any placeholder picker.
508
+ * placement allow-list. Each key contributes this rendering to that
509
+ * placeholder's `Allowed Controls` whitelist; without it the rendering
510
+ * exists in CM but Pages won't offer it in the slot's picker.
511
+ *
512
+ * Resolution is split by whether the key is recipe-defined:
513
+ * - Keys that match a `PlaceholderRecipe` or an inline
514
+ * `placeholders` slot in the same set → folded into the
515
+ * `buildPlaceholderSettingsAggregate` IR write (one-push
516
+ * convergence on a fresh tenant).
517
+ * - Keys with no recipe declaration → resolved post-IR by
518
+ * `applyPlaceholderAllowControls`, which walks the tenant's
519
+ * existing Placeholder Settings items and patches the match.
403
520
  *
404
- * Example: `["headless-main", "headless-main-{*}", "sxa-footer"]`.
521
+ * Example: `["headless-main", "sxa-footer"]`.
405
522
  *
406
523
  * Distinct from `placeholders` (below), which declares slots THIS
407
524
  * component EXPOSES for child renderings.
@@ -409,10 +526,11 @@ exports.ComponentTemplateRecipeSchema = zod_1.z.object({
409
526
  placedIn: zod_1.z.array(zod_1.z.string().min(1)).default([]),
410
527
  /**
411
528
  * Container slots — placeholders this component DEFINES for child
412
- * renderings to drop into. Only meaningful for container components
413
- * (e.g. a section wrapper that exposes a `headless-main-{*}` slot).
414
- * Each entry carries the placeholder key + an optional restriction
415
- * on which rendering handles may be dropped there.
529
+ * renderings to drop into. The hybrid placeholder model's
530
+ * component-owned half: only meaningful for container components
531
+ * (a Section / Grid / Tabs wrapper). Each entry compiles to a
532
+ * Sitecore Placeholder Settings item via
533
+ * `buildPlaceholderSettingsAggregate`.
416
534
  *
417
535
  * Distinct from `placedIn` (above), which lists placeholder keys
418
536
  * this rendering can be placed INTO.
@@ -503,6 +621,16 @@ exports.ContentTemplateRecipeSchema = zod_1.z.object({
503
621
  * that allows item content templates underneath).
504
622
  */
505
623
  insertOptions: zod_1.z.array(zod_1.z.string()).optional(),
624
+ /**
625
+ * Optional `WorkflowRecipe` handle to bind on the template's
626
+ * `__Standard Values` item. When set, the compiler emits a
627
+ * `SetField` writing `__Default workflow` to the workflow's refKey,
628
+ * so new items conforming to this template enter the workflow at
629
+ * its initial state automatically. Equivalent to declaring the same
630
+ * handle in the workflow recipe's `bindings.templates[]` — pick
631
+ * whichever side is more natural to author.
632
+ */
633
+ defaultWorkflow: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
506
634
  });
507
635
  /**
508
636
  * A standalone Parameters Template — a Sitecore template item that holds
@@ -517,15 +645,15 @@ exports.ContentTemplateRecipeSchema = zod_1.z.object({
517
645
  * into an anonymous parameters template owned by one component);
518
646
  * standalone parameters templates are reusable across components.
519
647
  *
520
- * Identity: `paramsTemplateId(handle)` derives the deterministic GUID.
648
+ * Identity: `designParametersTemplateId(handle)` derives the deterministic GUID.
521
649
  * Same identity scheme as the inline-hoisted variant — the seed is the
522
650
  * recipe handle, and the namespace is `NAMESPACE_TEMPLATE`. The seed
523
651
  * suffix is `::params`, identical between inline and standalone forms,
524
652
  * which keeps re-pushes idempotent if a recipe migrates from inline to
525
653
  * standalone (the GUID stays the same).
526
654
  */
527
- exports.ParametersTemplateRecipeSchema = zod_1.z.object({
528
- kind: zod_1.z.literal("parameters-template"),
655
+ exports.DesignParametersTemplateRecipeSchema = zod_1.z.object({
656
+ kind: zod_1.z.literal("design-parameters-template"),
529
657
  schemaVersion: zod_1.z.literal("1"),
530
658
  handle: zod_1.z.string().regex(HANDLE_PATTERN, {
531
659
  message: "handle must match `<kebab-name>@<major>`, e.g. cta-button-params@1",
@@ -541,7 +669,7 @@ exports.ParametersTemplateRecipeSchema = zod_1.z.object({
541
669
  * presentation parameters are organised per-section by convention.
542
670
  */
543
671
  section: zod_1.z.string().min(1),
544
- params: zod_1.z.array(exports.ParamDefinitionSchema).default([]),
672
+ params: zod_1.z.array(exports.DesignParameterSchema).default([]),
545
673
  });
546
674
  /**
547
675
  * Available Rendering Section Definition — declares an SXA section
@@ -642,6 +770,54 @@ exports.ContentFieldValueSchema = zod_1.z.discriminatedUnion("shape", [
642
770
  refs: zod_1.z.array(zod_1.z.string().min(1)),
643
771
  }),
644
772
  ]);
773
+ /** Per-language field values — a simple-mode translation of a content item. */
774
+ exports.ContentTranslationSchema = zod_1.z.object({
775
+ /** Field values for this language, keyed by field name. */
776
+ fields: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).default({}),
777
+ });
778
+ /**
779
+ * A personalization variant within a numbered version — an
780
+ * audience-conditional alternative. Carries a partial field delta (and an
781
+ * optional layout) against the version's default.
782
+ *
783
+ * The exact XM Cloud personalization wire model is unverified; the compiler
784
+ * mapping for `variants` is deferred — see docs/recipe-sync-architecture.md,
785
+ * "Personalization variants".
786
+ */
787
+ exports.ContentVariantSchema = zod_1.z.object({
788
+ /** Audience / variant identifier the personalization rule targets. */
789
+ audience: zod_1.z.string().min(1),
790
+ /** Field-value delta against the version's default. */
791
+ fields: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).default({}),
792
+ /** Optional per-variant layout override. */
793
+ layout: zod_1.z.lazy(() => exports.LayoutSchema).optional(),
794
+ });
795
+ /**
796
+ * One numbered version of a content item in a single language — the unit a
797
+ * story-seed recipe authors. See docs/recipe-sync-architecture.md,
798
+ * "Content versioning — seeding a story".
799
+ */
800
+ exports.ContentVersionSchema = zod_1.z.object({
801
+ /** Sitecore numbered version (1-based). */
802
+ version: zod_1.z.number().int().positive(),
803
+ /** Field values for this version, keyed by field name. */
804
+ fields: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).default({}),
805
+ /**
806
+ * Workflow STATE this version sits in (e.g. "Draft", "Approved") — the
807
+ * item's `__Workflow state`. Distinct from the item-level `workflow`,
808
+ * which names the workflow *definition* the item is attached to.
809
+ */
810
+ workflowState: zod_1.z.string().min(1).optional(),
811
+ /** ISO 8601 timestamp narrating when this version lands in the story. */
812
+ date: zod_1.z.string().optional(),
813
+ /**
814
+ * Per-version layout. Writes to the item's `__Final Renderings`
815
+ * (per-version) field — not the shared `__Renderings`.
816
+ */
817
+ layout: zod_1.z.lazy(() => exports.LayoutSchema).optional(),
818
+ /** Personalization variants for this version. */
819
+ variants: zod_1.z.array(exports.ContentVariantSchema).optional(),
820
+ });
645
821
  /**
646
822
  * A concrete content item — one Sitecore item conforming to a content
647
823
  * template, populated with the recipe's field values. The Phase 4
@@ -673,16 +849,49 @@ exports.ContentItemRecipeSchema = zod_1.z.object({
673
849
  templateType: zod_1.z.string().regex(HANDLE_PATTERN, {
674
850
  message: "templateType must match `<kebab-name>@<major>`, e.g. nav-link@1",
675
851
  }),
676
- /** Field values keyed by field name on the template. */
852
+ /**
853
+ * Field values keyed by field name — the primary language, single
854
+ * version. The simple-mode common case; mutually exclusive with
855
+ * `versions` (story mode). The compiler enforces the exclusivity.
856
+ */
677
857
  fields: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).default({}),
858
+ /**
859
+ * Simple mode — additional languages, one version each, keyed by ISO
860
+ * language code (`fr`, `de`, …). Additive and backward-compatible: omit
861
+ * for a single-language item. Mutually exclusive with `versions`.
862
+ */
863
+ translations: zod_1.z.record(zod_1.z.string(), exports.ContentTranslationSchema).optional(),
864
+ /**
865
+ * Story mode — explicit numbered versions for seeding a narrative, keyed
866
+ * by ISO language code, each an ordered list of `ContentVersion`s.
867
+ * Mutually exclusive with `fields` / `translations` — a recipe is simple
868
+ * OR a story. See docs/recipe-sync-architecture.md, "Content versioning".
869
+ */
870
+ versions: zod_1.z.record(zod_1.z.string(), zod_1.z.array(exports.ContentVersionSchema)).optional(),
871
+ /**
872
+ * Item-level `storage: shared` field values — one value for the whole
873
+ * item, no language or version. In story mode these have no version to
874
+ * live under, so they sit here.
875
+ */
876
+ shared: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).optional(),
877
+ /**
878
+ * Optional `WorkflowRecipe` handle to attach this item to. When set,
879
+ * the compiler emits a `SetField` writing the item's `__Workflow`
880
+ * field to the workflow's refKey. Use this to override the template's
881
+ * `__Default workflow` for a single item, or to put items under a
882
+ * workflow without a template-level default. The item's
883
+ * `__Workflow state` is not written here — Sitecore initialises new
884
+ * items at the workflow's initial state from the workflow definition.
885
+ */
886
+ workflow: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
678
887
  });
679
888
  /**
680
889
  * One rendering placed into a placeholder, with its variant, parameters,
681
890
  * and datasource binding. The Phase 4 compiler emits each ComponentPlacement
682
891
  * as one `<r>` element in Sitecore's layout XML.
683
892
  *
684
- * The single shape used by anything that holds layout — `PartialDesignRecipe`,
685
- * `PageDesignRecipe`, and (when Phase 3 lands) `PageRecipe`. The
893
+ * The single shape used by anything that holds layout —
894
+ * `PartialDesignRecipe`, `PageDesignRecipe`, and `PageRecipe`. The
686
895
  * `componentHandle` resolves to a `ComponentTemplateRecipe`'s rendering
687
896
  * GUID via `renderingId(handle)`.
688
897
  *
@@ -690,9 +899,10 @@ exports.ContentItemRecipeSchema = zod_1.z.object({
690
899
  *
691
900
  * shared — points at a `ContentItemRecipe` by handle (catalog-shipped
692
901
  * reusable content like `site-logo-content@1`).
693
- * scoped — page-local content at `<page>/<slot>`. Used by `PageRecipe`;
694
- * `PartialDesignRecipe` and `PageDesignRecipe` typically don't
695
- * use this kind, but the shared schema accepts it.
902
+ * scoped — page-local content materialised at `<page>/Data/<slot>`.
903
+ * Only valid in a `PageRecipe` layout (a page has a content
904
+ * home to scope under); `PartialDesignRecipe` and
905
+ * `PageDesignRecipe` reject it — they have no host page.
696
906
  * none — config-driven rendering with no datasource (rare).
697
907
  */
698
908
  exports.ComponentPlacementSchema = zod_1.z.object({
@@ -714,7 +924,13 @@ exports.ComponentPlacementSchema = zod_1.z.object({
714
924
  }),
715
925
  zod_1.z.object({
716
926
  kind: zod_1.z.literal("scoped"),
717
- /** Slot path within the host item, e.g. `/main/0`. */
927
+ /**
928
+ * Page-local datasource name. `compilePageRecipe` materialises
929
+ * a datasource item at `<page>/Data/<slot>` (conforming to the
930
+ * placed component's datasource template) and points the
931
+ * placement's `ds` at it. Must be a valid Sitecore item name.
932
+ * Only valid in a `PageRecipe` layout.
933
+ */
718
934
  slot: zod_1.z.string().min(1),
719
935
  }),
720
936
  zod_1.z.object({ kind: zod_1.z.literal("none") }),
@@ -728,6 +944,138 @@ exports.ComponentPlacementSchema = zod_1.z.object({
728
944
  exports.LayoutSchema = zod_1.z.object({
729
945
  placeholders: zod_1.z.record(zod_1.z.string(), zod_1.z.array(exports.ComponentPlacementSchema)).default({}),
730
946
  });
947
+ /**
948
+ * A page template — a Sitecore data template that items in a site's
949
+ * content tree conform to in order to BE authorable pages. The
950
+ * page-level peer of `ComponentTemplateRecipe`: where a component
951
+ * template backs a placeable rendering, a page template backs a
952
+ * navigable page.
953
+ *
954
+ * Unlike `ContentTemplateRecipe` (a plain data shape), a page template
955
+ * inherits the SXA Headless page base set (`SXA_HEADLESS_PAGE_BASE_TEMPLATES`
956
+ * — Base Page + _Navigable + _Taggable + _Designable + _Sitemap) so
957
+ * items conforming to it pick up the layout/presentation fields, the
958
+ * navigation facet, taxonomy tagging, the page-design binding, and
959
+ * sitemap metadata. The compiler also stamps the template's
960
+ * `__Standard Values` `__Renderings` with a JSON-layout shell
961
+ * (`<r><d id="{device}" l="{jsonLayout}" /></r>`), optionally seeded
962
+ * with `layout` placements.
963
+ *
964
+ * Page templates are the resolution target for `PageDesignRecipe.appliesTo`,
965
+ * `SiteTemplateRecipe.pageTemplates`, `insertOptionsMatrix`, and
966
+ * `templatesToDesigns` keys. The default template→design binding is the
967
+ * `TemplatesMapping` aggregate on the Page Designs root (driven by
968
+ * `PageDesignRecipe.appliesTo`); the per-page `Page Design` override
969
+ * field is left unset.
970
+ *
971
+ * Identity: `templateId(site, handle)` — a page template IS a Sitecore
972
+ * template, same GUID family as component/content templates.
973
+ */
974
+ exports.PageTemplateRecipeSchema = zod_1.z.object({
975
+ kind: zod_1.z.literal("page-template"),
976
+ schemaVersion: zod_1.z.literal("1"),
977
+ handle: zod_1.z.string().regex(HANDLE_PATTERN, {
978
+ message: "handle must match `<kebab-name>@<major>`, e.g. article-page@1",
979
+ }),
980
+ name: zod_1.z.string().min(1),
981
+ displayName: zod_1.z.string().min(1),
982
+ description: zod_1.z.string().optional(),
983
+ /** Defaults to the SXA page icon if omitted. */
984
+ icon: zod_1.z.string().optional(),
985
+ /**
986
+ * Optional taxonomy metadata. `meta.tax.group` nests the template one
987
+ * folder level deep: when set, the template lands at
988
+ * `<pageTemplatesRoot>/<group>/<name>` (the group folder is emitted
989
+ * once per recipe set as a `CreateOnly` op) instead of flat under
990
+ * `<pageTemplatesRoot>/<name>`. Other taxonomy fields pass through
991
+ * unmodified for downstream consumers.
992
+ */
993
+ meta: exports.RecipeMetaSchema,
994
+ /**
995
+ * Page-specific fields beyond the inherited SXA base — SEO copy,
996
+ * hero overrides, structured metadata. Grouped into sections the
997
+ * same way component/content template fields are.
998
+ */
999
+ fields: zod_1.z.array(exports.FieldDefinitionSchema).default([]),
1000
+ /**
1001
+ * Page-template handles allowed as child pages under items of this
1002
+ * template — the Sitecore Insert Options surface for content authors.
1003
+ * Resolve to other `PageTemplateRecipe` handles.
1004
+ */
1005
+ insertOptions: zod_1.z.array(zod_1.z.string().regex(HANDLE_PATTERN)).optional(),
1006
+ /**
1007
+ * Optional default presentation baked into the template's
1008
+ * `__Standard Values` layout. Most page templates leave this empty —
1009
+ * page chrome comes from the page design's partials, and page-local
1010
+ * content lands on the page item's own `__Final Renderings`. Set it
1011
+ * only for renderings every page of this template should carry
1012
+ * regardless of design.
1013
+ */
1014
+ layout: exports.LayoutSchema.optional(),
1015
+ /**
1016
+ * Optional `WorkflowRecipe` handle bound on the template's
1017
+ * `__Standard Values` `__Default workflow` — new pages of this
1018
+ * template enter the workflow automatically. Mirrors
1019
+ * `ContentTemplateRecipe.defaultWorkflow`.
1020
+ */
1021
+ defaultWorkflow: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
1022
+ });
1023
+ /**
1024
+ * A page — a concrete, navigable item in the site content tree. The
1025
+ * page-level peer of `ContentItemRecipe`: where a content item is a
1026
+ * shared datasource shape, a `PageRecipe` is an authorable page.
1027
+ *
1028
+ * It conforms to a `PageTemplateRecipe` (inheriting the SXA page
1029
+ * presentation facets), carries field values for the page's own
1030
+ * fields, and may declare a `layout` — written to the page item's
1031
+ * `__Final Renderings` (the per-version final layout), distinct from a
1032
+ * page design's `__Renderings`.
1033
+ *
1034
+ * Layout placements bind via `datasourceRef`: `shared` (a
1035
+ * `ContentItemRecipe`), `scoped` (a page-local datasource item the
1036
+ * compiler materialises at `<page>/Data/<slot>`), or `none`. Pages
1037
+ * currently land flat under `pagesRoot` — page-tree nesting (a `parent`
1038
+ * page handle) is the one deferred follow-up.
1039
+ *
1040
+ * Identity: `pageItemId(site, handle)`. `SiteRecipe.initialHome`
1041
+ * resolves to a `PageRecipe` handle.
1042
+ */
1043
+ exports.PageRecipeSchema = zod_1.z.object({
1044
+ kind: zod_1.z.literal("page"),
1045
+ schemaVersion: zod_1.z.literal("1"),
1046
+ handle: zod_1.z.string().regex(HANDLE_PATTERN, {
1047
+ message: "handle must match `<kebab-name>@<major>`, e.g. home@1",
1048
+ }),
1049
+ /** Sitecore item name under the pages root. */
1050
+ name: zod_1.z.string().min(1),
1051
+ displayName: zod_1.z.string().min(1),
1052
+ description: zod_1.z.string().optional(),
1053
+ /**
1054
+ * Handle of the `PageTemplateRecipe` this page conforms to. Compiler
1055
+ * resolves via `templateId(handle)` to set the item's Template-Of.
1056
+ */
1057
+ template: zod_1.z.string().regex(HANDLE_PATTERN, {
1058
+ message: "template must reference a PageTemplateRecipe by handle, e.g. article-page@1",
1059
+ }),
1060
+ /**
1061
+ * Field values keyed by field name on the page template. Same
1062
+ * encoding surface as `ContentItemRecipe.fields` (`link-internal`
1063
+ * is deferred — use `reference` or `link-external`).
1064
+ */
1065
+ fields: zod_1.z.record(zod_1.z.string(), exports.ContentFieldValueSchema).default({}),
1066
+ /**
1067
+ * Optional page-local presentation, written to the page item's
1068
+ * `__Final Renderings`. Placements use `datasourceRef` `shared`
1069
+ * (a `ContentItemRecipe`), `scoped` (a page-local datasource at
1070
+ * `<page>/Data/<slot>`, materialised by the compiler), or `none`.
1071
+ */
1072
+ layout: exports.LayoutSchema.optional(),
1073
+ /**
1074
+ * Optional `WorkflowRecipe` handle — sets the page item's
1075
+ * `__Workflow` field. Mirrors `ContentItemRecipe.workflow`.
1076
+ */
1077
+ workflow: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
1078
+ });
731
1079
  /**
732
1080
  * A reusable layout chunk — header, footer, sidebar, byline. Lives at
733
1081
  * `/sitecore/.../Presentation/Partial Designs/<name>` on a tenant. Linked
@@ -831,7 +1179,7 @@ exports.SiteTemplateTaxonomyEntrySchema = zod_1.z.object({
831
1179
  * Authoring GraphQL, not the Sites API.
832
1180
  *
833
1181
  * Cross-recipe handle resolution: `pageTemplates` and
834
- * `insertOptionsMatrix.*` resolve to `ContentTemplateRecipe` handles;
1182
+ * `insertOptionsMatrix.*` resolve to `PageTemplateRecipe` handles;
835
1183
  * `pageDesigns` and `templatesToDesigns.*` values resolve to
836
1184
  * `PageDesignRecipe` handles. The cross-recipe validator
837
1185
  * (`validateRecipeSet`) catches missing handles before push.
@@ -848,7 +1196,7 @@ exports.SiteTemplateRecipeSchema = zod_1.z.object({
848
1196
  icon: zod_1.z.string().optional(),
849
1197
  /**
850
1198
  * Page-template handles this brand offers (resolve to
851
- * `ContentTemplateRecipe`). The site's content tree allows pages
1199
+ * `PageTemplateRecipe`). The site's content tree allows pages
852
1200
  * conforming to any of these.
853
1201
  */
854
1202
  pageTemplates: zod_1.z.array(zod_1.z.string().regex(HANDLE_PATTERN)).default([]),
@@ -937,8 +1285,7 @@ exports.SiteGroupingSchema = zod_1.z.object({
937
1285
  *
938
1286
  * Cross-recipe handle resolution: `siteTemplate` resolves to a
939
1287
  * `SiteTemplateRecipe`; `initialHome` (when present) resolves to a
940
- * `PageRecipe` (Phase 6+ — schema accepts the handle now, executor
941
- * support lands later).
1288
+ * `PageRecipe`.
942
1289
  */
943
1290
  exports.SiteRecipeSchema = zod_1.z.object({
944
1291
  kind: zod_1.z.literal("site"),
@@ -1027,10 +1374,8 @@ exports.SiteRecipeSchema = zod_1.z.object({
1027
1374
  */
1028
1375
  taxonomyOverrides: zod_1.z.record(zod_1.z.string().min(1), zod_1.z.array(zod_1.z.string().min(1))).optional(),
1029
1376
  /**
1030
- * Optional initial home page — a `PageRecipe` handle. Phase 6+
1031
- * concern; schema accepts the handle now so SiteRecipes can
1032
- * declare it; the executor will materialise it once page-recipe
1033
- * execution lands.
1377
+ * Optional initial home page — a `PageRecipe` handle. Cross-recipe
1378
+ * validation resolves it to a `page` recipe in the set.
1034
1379
  */
1035
1380
  initialHome: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
1036
1381
  });
@@ -1160,16 +1505,210 @@ exports.EnumerationRecipeSchema = zod_1.z.object({
1160
1505
  */
1161
1506
  default: zod_1.z.string().min(1).optional(),
1162
1507
  });
1508
+ // ─────────────────────────────────────────────────────────────────────
1509
+ // Workflow + webhook recipes
1510
+ //
1511
+ // Full reference (behavior, payload, endpoint contract, auth types,
1512
+ // failure modes, troubleshooting): docs/recipes/workflow.md
1513
+ // ─────────────────────────────────────────────────────────────────────
1514
+ /**
1515
+ * Stable, kebab-case key for a workflow state or command. Used as part
1516
+ * of the deterministic GUID seed — renaming a key creates a different
1517
+ * item (and orphans transitions that pointed at the old key). Format
1518
+ * is restricted to lowercase letters, digits, and hyphens so the
1519
+ * generated content-tree paths stay URL-safe across all Sitecore
1520
+ * tenants without re-quoting.
1521
+ */
1522
+ const WorkflowKeyPattern = /^[a-z][a-z0-9-]*$/;
1523
+ const WorkflowKey = zod_1.z.string().regex(WorkflowKeyPattern, {
1524
+ message: "key must match `^[a-z][a-z0-9-]*$` (lowercase, kebab)",
1525
+ });
1526
+ /** `$ENV:VAR_NAME` reference — secrets never inline in the recipe file. */
1527
+ const SecretRef = zod_1.z.string().regex(/^\$ENV:[A-Z_][A-Z0-9_]*$/, {
1528
+ message: "use $ENV:NAME for secret values; never inline plaintext credentials",
1529
+ });
1530
+ /**
1531
+ * Webhook authorization recipe — declares a reusable `Webhook
1532
+ * Authorization` item under `/sitecore/system/Settings/Webhooks/Authorizations`.
1533
+ * Workflow webhook actions and event handlers reference one of these
1534
+ * via `authorizationRef: <handle>`.
1535
+ *
1536
+ * The authorization templates live under
1537
+ * `/sitecore/templates/System/Webhooks/Authorizations/...`. The
1538
+ * compiler emits `templateOf: { kind: "ref-path", value: ... }` so the
1539
+ * push pipeline resolves the template GUID at apply time — these
1540
+ * GUIDs aren't published as a public contract.
1541
+ *
1542
+ * Secrets are always by `$ENV:VAR_NAME` reference; the apply step
1543
+ * resolves the env var at push time. Missing env vars surface as a
1544
+ * plan-phase error before any item write.
1545
+ */
1546
+ const WebhookAuthorizationApiKeySchema = zod_1.z.object({
1547
+ type: zod_1.z.literal("ApiKey"),
1548
+ /** Header name to attach (e.g. `X-Api-Key`, `Authorization`). */
1549
+ headerName: zod_1.z.string().min(1),
1550
+ /** `$ENV:VAR_NAME` reference to the key/token. */
1551
+ key: SecretRef,
1552
+ });
1553
+ const WebhookAuthorizationBasicSchema = zod_1.z.object({
1554
+ type: zod_1.z.literal("Basic"),
1555
+ username: zod_1.z.string().min(1),
1556
+ password: SecretRef,
1557
+ });
1558
+ const WebhookAuthorizationOAuth2Schema = zod_1.z.object({
1559
+ type: zod_1.z.literal("OAuth2ClientCredentialsGrant"),
1560
+ tokenEndpoint: zod_1.z.string().url(),
1561
+ clientId: zod_1.z.string().min(1),
1562
+ clientSecret: SecretRef,
1563
+ scope: zod_1.z.string().optional(),
1564
+ audience: zod_1.z.string().optional(),
1565
+ });
1566
+ exports.WebhookAuthorizationRecipeSchema = zod_1.z.object({
1567
+ kind: zod_1.z.literal("webhook-authorization"),
1568
+ schemaVersion: zod_1.z.literal("1"),
1569
+ handle: zod_1.z.string().regex(HANDLE_PATTERN, {
1570
+ message: "handle must match `<kebab-name>@<major>`, e.g. ci-bearer@1",
1571
+ }),
1572
+ /** Sitecore item name. */
1573
+ name: zod_1.z.string().min(1),
1574
+ displayName: zod_1.z.string().min(1),
1575
+ description: zod_1.z.string().optional(),
1576
+ auth: zod_1.z.discriminatedUnion("type", [
1577
+ WebhookAuthorizationApiKeySchema,
1578
+ WebhookAuthorizationBasicSchema,
1579
+ WebhookAuthorizationOAuth2Schema,
1580
+ ]),
1581
+ });
1582
+ /**
1583
+ * Either an intra-recipe reference to a `webhook-authorization` recipe
1584
+ * (`authorizationRef: <handle>`) or an absolute content-tree path
1585
+ * (`authorizationPath: /sitecore/system/Settings/Webhooks/Authorizations/...`)
1586
+ * to an existing tenant-side Authorization item. Exactly one of the two
1587
+ * (enforced via superRefine on the workflow recipe).
1588
+ */
1589
+ const WebhookActionAuthRefSchema = zod_1.z.object({
1590
+ authorizationRef: zod_1.z.string().regex(HANDLE_PATTERN).optional(),
1591
+ authorizationPath: zod_1.z.string().startsWith("/sitecore/").optional(),
1592
+ });
1593
+ const WebhookActionBaseSchema = WebhookActionAuthRefSchema.extend({
1594
+ /**
1595
+ * Sitecore item name for the action item. Derived from the action's
1596
+ * key within its state/command (e.g. `notify-reviewer`) — must be
1597
+ * unique among siblings under that state or command.
1598
+ */
1599
+ key: WorkflowKey,
1600
+ url: zod_1.z.string().url(),
1601
+ displayName: zod_1.z.string().min(1).optional(),
1602
+ description: zod_1.z.string().optional(),
1603
+ serializationType: zod_1.z.enum(["JSON", "XML"]).default("JSON"),
1604
+ enabled: zod_1.z.boolean().default(true),
1605
+ });
1606
+ const WebhookSubmitActionSchema = WebhookActionBaseSchema.extend({
1607
+ kind: zod_1.z.literal("webhook-submit"),
1608
+ });
1609
+ const WebhookValidationActionSchema = WebhookActionBaseSchema.extend({
1610
+ kind: zod_1.z.literal("webhook-validation"),
1611
+ });
1612
+ const WorkflowActionSchema = zod_1.z.discriminatedUnion("kind", [
1613
+ WebhookSubmitActionSchema,
1614
+ WebhookValidationActionSchema,
1615
+ ]);
1616
+ const AppearanceEvaluatorSchema = zod_1.z.enum(["default", "lock", "unlock"]);
1617
+ const WorkflowCommandSchema = zod_1.z.object({
1618
+ key: WorkflowKey,
1619
+ name: zod_1.z.string().min(1),
1620
+ displayName: zod_1.z.string().min(1),
1621
+ nextState: WorkflowKey,
1622
+ /** Maps to the standard `__Auto Publish` field on a workflow Command. */
1623
+ autoPublish: zod_1.z.boolean().default(false),
1624
+ /** Maps to the standard `Suppress comment` field — silences the comment prompt. */
1625
+ suppressComment: zod_1.z.boolean().default(false),
1626
+ /** Maps to `Appearance Evaluator Type`. */
1627
+ appearanceEvaluator: AppearanceEvaluatorSchema.default("default"),
1628
+ /**
1629
+ * When true, the compiler emits a `SetField` to restrict the command
1630
+ * to administrators (sets the standard `__Security` field with a
1631
+ * deny-everyone ACL plus an allow-admin ACL). Suitable for sensitive
1632
+ * commands like "Publish to Production" that shouldn't be available
1633
+ * to all reviewers.
1634
+ */
1635
+ secured: zod_1.z.boolean().default(false),
1636
+ /** Validation actions attached to this command (synchronous gates). */
1637
+ validations: zod_1.z.array(WebhookValidationActionSchema).default([]),
1638
+ });
1639
+ const WorkflowStateSchema = zod_1.z.object({
1640
+ key: WorkflowKey,
1641
+ name: zod_1.z.string().min(1),
1642
+ displayName: zod_1.z.string().min(1),
1643
+ /** Maps to the standard `Final` checkbox on the State item. */
1644
+ final: zod_1.z.boolean().default(false),
1645
+ /** Maps to `Preview` — items in this state appear in the preview database. */
1646
+ preview: zod_1.z.boolean().default(false),
1647
+ /** Submit or validation actions that fire on entry into this state. */
1648
+ actions: zod_1.z.array(WorkflowActionSchema).default([]),
1649
+ commands: zod_1.z.array(WorkflowCommandSchema).default([]),
1650
+ });
1651
+ const WorkflowBindingsSchema = zod_1.z
1652
+ .object({
1653
+ /**
1654
+ * Templates to bind this workflow to. Each entry is either an
1655
+ * intra-recipe content-template handle (resolves via refKey) or an
1656
+ * absolute path to a tenant-existing template (resolves via
1657
+ * `crossRecipeRefs`). The compiler emits a `SetField` op against
1658
+ * each template's `__Standard Values` item setting the
1659
+ * `__Default workflow` field.
1660
+ */
1661
+ templates: zod_1.z
1662
+ .array(zod_1.z.union([zod_1.z.string().regex(HANDLE_PATTERN), zod_1.z.string().startsWith("/sitecore/templates/")]))
1663
+ .default([]),
1664
+ })
1665
+ .default({ templates: [] });
1666
+ /**
1667
+ * Cross-field validations (`initialState` must match a declared state,
1668
+ * `nextState` refs must resolve, at least one final state, action auth
1669
+ * is `Ref` XOR `Path`) live in `compileWorkflowRecipe` — not on the
1670
+ * schema — because Zod's `discriminatedUnion` rejects `ZodEffects`
1671
+ * members and we need this schema in `RecipeSchema`. Same pattern
1672
+ * `EnumerationRecipeSchema` uses for its `default ∈ values` check.
1673
+ */
1674
+ exports.WorkflowRecipeSchema = zod_1.z.object({
1675
+ kind: zod_1.z.literal("workflow"),
1676
+ schemaVersion: zod_1.z.literal("1"),
1677
+ handle: zod_1.z.string().regex(HANDLE_PATTERN, {
1678
+ message: "handle must match `<kebab-name>@<major>`, e.g. blog-article-approval@1",
1679
+ }),
1680
+ name: zod_1.z.string().min(1),
1681
+ displayName: zod_1.z.string().min(1),
1682
+ description: zod_1.z.string().optional(),
1683
+ icon: zod_1.z.string().optional(),
1684
+ /**
1685
+ * Optional taxonomy metadata. `meta.tax.group` is the only field
1686
+ * the compiler currently consumes — it drives a one-level Workflow
1687
+ * Folder under `/sitecore/system/Workflows/<group>/<name>`. Other
1688
+ * fields are accepted for registry → recipe pipeline compatibility
1689
+ * but aren't load-bearing.
1690
+ */
1691
+ meta: exports.RecipeMetaSchema,
1692
+ /** State key of the workflow's initial state (must match one of `states`). */
1693
+ initialState: WorkflowKey,
1694
+ states: zod_1.z.array(WorkflowStateSchema).min(1),
1695
+ bindings: WorkflowBindingsSchema,
1696
+ });
1163
1697
  exports.RecipeSchema = zod_1.z.discriminatedUnion("kind", [
1164
1698
  exports.ComponentSectionRecipeSchema,
1165
1699
  exports.ComponentTemplateRecipeSchema,
1166
1700
  exports.ContentTemplateRecipeSchema,
1167
1701
  exports.ContentItemRecipeSchema,
1168
- exports.ParametersTemplateRecipeSchema,
1702
+ exports.PageTemplateRecipeSchema,
1703
+ exports.PageRecipeSchema,
1704
+ exports.PlaceholderRecipeSchema,
1705
+ exports.DesignParametersTemplateRecipeSchema,
1169
1706
  exports.SectionDefinitionRecipeSchema,
1170
1707
  exports.PartialDesignRecipeSchema,
1171
1708
  exports.PageDesignRecipeSchema,
1172
1709
  exports.SiteTemplateRecipeSchema,
1173
1710
  exports.SiteRecipeSchema,
1174
1711
  exports.EnumerationRecipeSchema,
1712
+ exports.WorkflowRecipeSchema,
1713
+ exports.WebhookAuthorizationRecipeSchema,
1175
1714
  ]);