openplanr 3.1.0 → 3.2.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 (375) hide show
  1. package/CHANGELOG.md +56 -0
  2. package/README.md +1 -1
  3. package/dist/cli/commands/doctor.d.ts.map +1 -1
  4. package/dist/cli/commands/doctor.js +24 -1
  5. package/dist/cli/commands/doctor.js.map +1 -1
  6. package/dist/cli/commands/groups/delivery.d.ts.map +1 -1
  7. package/dist/cli/commands/groups/delivery.js +2 -0
  8. package/dist/cli/commands/groups/delivery.js.map +1 -1
  9. package/dist/cli/commands/planning-artifacts.d.ts.map +1 -1
  10. package/dist/cli/commands/planning-artifacts.js +22 -12
  11. package/dist/cli/commands/planning-artifacts.js.map +1 -1
  12. package/dist/cli/commands/ship.d.ts +3 -0
  13. package/dist/cli/commands/ship.d.ts.map +1 -0
  14. package/dist/cli/commands/ship.js +65 -0
  15. package/dist/cli/commands/ship.js.map +1 -0
  16. package/dist/dashboard/.vite/manifest.json +1 -1
  17. package/dist/dashboard/assets/{index-G7ygVDGg.js → index-L8qtwqv6.js} +2 -2
  18. package/dist/dashboard/assets/{index-G7ygVDGg.js.map → index-L8qtwqv6.js.map} +1 -1
  19. package/dist/dashboard/dashboard-manifest.json +8 -8
  20. package/dist/dashboard/index.html +1 -1
  21. package/dist/models/schema.d.ts +39 -23
  22. package/dist/models/schema.d.ts.map +1 -1
  23. package/dist/models/schema.js +19 -12
  24. package/dist/models/schema.js.map +1 -1
  25. package/dist/models/types.d.ts +6 -0
  26. package/dist/models/types.d.ts.map +1 -1
  27. package/dist/services/global-install-service.d.ts +24 -0
  28. package/dist/services/global-install-service.d.ts.map +1 -0
  29. package/dist/services/global-install-service.js +68 -0
  30. package/dist/services/global-install-service.js.map +1 -0
  31. package/dist/services/id-service.d.ts +1 -5
  32. package/dist/services/id-service.d.ts.map +1 -1
  33. package/dist/services/id-service.js +1 -34
  34. package/dist/services/id-service.js.map +1 -1
  35. package/dist/services/ship-checks/changes.d.ts +24 -0
  36. package/dist/services/ship-checks/changes.d.ts.map +1 -0
  37. package/dist/services/ship-checks/changes.js +135 -0
  38. package/dist/services/ship-checks/changes.js.map +1 -0
  39. package/dist/services/ship-checks/contract.d.ts +81 -0
  40. package/dist/services/ship-checks/contract.d.ts.map +1 -0
  41. package/dist/services/ship-checks/contract.js +7 -0
  42. package/dist/services/ship-checks/contract.js.map +1 -0
  43. package/dist/services/ship-checks/discover.d.ts +10 -0
  44. package/dist/services/ship-checks/discover.d.ts.map +1 -0
  45. package/dist/services/ship-checks/discover.js +250 -0
  46. package/dist/services/ship-checks/discover.js.map +1 -0
  47. package/dist/services/ship-checks/glob.d.ts +5 -0
  48. package/dist/services/ship-checks/glob.d.ts.map +1 -0
  49. package/dist/services/ship-checks/glob.js +39 -0
  50. package/dist/services/ship-checks/glob.js.map +1 -0
  51. package/dist/services/ship-checks/hooks.d.ts +7 -0
  52. package/dist/services/ship-checks/hooks.d.ts.map +1 -0
  53. package/dist/services/ship-checks/hooks.js +65 -0
  54. package/dist/services/ship-checks/hooks.js.map +1 -0
  55. package/dist/services/ship-checks/packages.d.ts +29 -0
  56. package/dist/services/ship-checks/packages.d.ts.map +1 -0
  57. package/dist/services/ship-checks/packages.js +197 -0
  58. package/dist/services/ship-checks/packages.js.map +1 -0
  59. package/dist/services/ship-checks/related-tests.d.ts +13 -0
  60. package/dist/services/ship-checks/related-tests.d.ts.map +1 -0
  61. package/dist/services/ship-checks/related-tests.js +73 -0
  62. package/dist/services/ship-checks/related-tests.js.map +1 -0
  63. package/dist/services/ship-checks/scope.d.ts +8 -0
  64. package/dist/services/ship-checks/scope.d.ts.map +1 -0
  65. package/dist/services/ship-checks/scope.js +66 -0
  66. package/dist/services/ship-checks/scope.js.map +1 -0
  67. package/dist/services/ship-checks/task-requirements.d.ts +14 -0
  68. package/dist/services/ship-checks/task-requirements.d.ts.map +1 -0
  69. package/dist/services/ship-checks/task-requirements.js +145 -0
  70. package/dist/services/ship-checks/task-requirements.js.map +1 -0
  71. package/dist/services/ship-checks/workflows.d.ts +21 -0
  72. package/dist/services/ship-checks/workflows.d.ts.map +1 -0
  73. package/dist/services/ship-checks/workflows.js +208 -0
  74. package/dist/services/ship-checks/workflows.js.map +1 -0
  75. package/dist/services/template-service.d.ts +2 -0
  76. package/dist/services/template-service.d.ts.map +1 -1
  77. package/dist/services/template-service.js +4 -0
  78. package/dist/services/template-service.js.map +1 -1
  79. package/dist/services/upgrade-service.d.ts +15 -1
  80. package/dist/services/upgrade-service.d.ts.map +1 -1
  81. package/dist/services/upgrade-service.js +102 -13
  82. package/dist/services/upgrade-service.js.map +1 -1
  83. package/dist/utils/slugify.d.ts +1 -8
  84. package/dist/utils/slugify.d.ts.map +1 -1
  85. package/dist/utils/slugify.js +1 -25
  86. package/dist/utils/slugify.js.map +1 -1
  87. package/docs/CLI.md +48 -1
  88. package/lib/backlog-item.d.mts +49 -0
  89. package/lib/backlog-item.mjs +339 -0
  90. package/lib/host-packages/adapter-registry.json +5 -5
  91. package/lib/host-packages/capability-map.json +1 -1
  92. package/lib/host-packages/claude/.claude-plugin/marketplace.json +2 -2
  93. package/lib/host-packages/claude/openplanr/.claude-plugin/plugin.json +1 -1
  94. package/lib/host-packages/claude/openplanr/.openplanr-content.json +126 -90
  95. package/lib/host-packages/claude/openplanr/CONNECTORS.md +4 -6
  96. package/lib/host-packages/claude/openplanr/README.md +1 -1
  97. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
  98. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
  99. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-document.mjs +385 -79
  100. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
  101. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
  102. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-review.mjs +45 -4
  103. package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → claude/openplanr/runtime/design/scripts/design-runtime-support-6774fd3d5d02.mjs} +1 -1
  104. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-share.mjs +8 -5
  105. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +40 -7
  106. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
  107. package/lib/host-packages/claude/openplanr/runtime/design/scripts/{design-shared-protocol-contracts-31a760fc.mjs → design-shared-protocol-contracts-b5f28f94.mjs} +284 -45
  108. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
  109. package/lib/host-packages/claude/openplanr/runtime/design/scripts/design.mjs +215 -55
  110. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
  111. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +246 -45
  112. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
  113. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
  114. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
  115. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
  116. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
  117. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
  118. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +163 -274
  119. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
  120. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
  121. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
  122. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
  123. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
  124. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
  125. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +115 -240
  126. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
  127. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
  128. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +215 -0
  129. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -0
  130. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
  131. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2170 -0
  132. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
  133. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
  134. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
  135. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
  136. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
  137. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1583 -0
  138. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
  139. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +5 -1
  140. package/lib/host-packages/{openai/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → claude/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.20.0}/design-document.schema.json +78 -5
  141. package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
  142. package/lib/host-packages/claude/openplanr/runtime/plan/scripts/design.mjs +45 -12
  143. package/lib/host-packages/claude/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
  144. package/lib/host-packages/claude/openplanr/skills/connect/references/connectors.md +4 -6
  145. package/lib/host-packages/claude/openplanr/skills/design/SKILL.md +12 -0
  146. package/lib/host-packages/claude/openplanr/skills/design/references/craft.md +14 -3
  147. package/lib/host-packages/claude/openplanr/skills/design/references/design-system.md +33 -1
  148. package/lib/host-packages/claude/openplanr/skills/design/references/discovery.md +18 -4
  149. package/lib/host-packages/claude/openplanr/skills/design/references/generation.md +74 -1
  150. package/lib/host-packages/claude/openplanr/skills/design/references/hosted-canvas.md +62 -0
  151. package/lib/host-packages/claude/openplanr/skills/design/references/review.md +46 -1
  152. package/lib/host-packages/claude/openplanr/skills/design/references/utilities.md +6 -0
  153. package/lib/host-packages/claude/openplanr/skills/design/schemas/design-document.schema.json +78 -5
  154. package/lib/host-packages/claude/openplanr/skills/design-loop/references/craft.md +14 -3
  155. package/lib/host-packages/claude/openplanr/skills/design-loop/references/design-system.md +33 -1
  156. package/lib/host-packages/claude/openplanr/skills/design-loop/references/discovery.md +18 -4
  157. package/lib/host-packages/claude/openplanr/skills/design-loop/references/generation.md +74 -1
  158. package/lib/host-packages/claude/openplanr/skills/design-loop/references/review.md +46 -1
  159. package/lib/host-packages/claude/openplanr/skills/design-loop/references/utilities.md +6 -0
  160. package/lib/host-packages/claude/openplanr/skills/design-loop/schemas/design-document.schema.json +78 -5
  161. package/lib/host-packages/claude/openplanr/skills/design-review/references/craft.md +14 -3
  162. package/lib/host-packages/claude/openplanr/skills/design-review/references/design-system.md +33 -1
  163. package/lib/host-packages/claude/openplanr/skills/design-review/references/discovery.md +18 -4
  164. package/lib/host-packages/claude/openplanr/skills/design-review/references/generation.md +74 -1
  165. package/lib/host-packages/claude/openplanr/skills/design-review/references/review.md +46 -1
  166. package/lib/host-packages/claude/openplanr/skills/design-review/references/utilities.md +6 -0
  167. package/lib/host-packages/claude/openplanr/skills/design-review/schemas/design-document.schema.json +78 -5
  168. package/lib/host-packages/claude/openplanr/skills/investigate/SKILL.md +10 -1
  169. package/lib/host-packages/claude/openplanr/skills/investigate/references/findings.md +92 -0
  170. package/lib/host-packages/claude/openplanr/skills/investigate/scripts/backlog-item.mjs +339 -0
  171. package/lib/host-packages/claude/openplanr/skills/plan/SKILL.md +3 -0
  172. package/lib/host-packages/claude/openplanr/skills/plan/schemas/design-document.schema.json +78 -5
  173. package/lib/host-packages/claude/openplanr/skills/share/references/connectors.md +4 -6
  174. package/lib/host-packages/claude/openplanr/skills/ship/SKILL.md +15 -4
  175. package/lib/host-packages/claude/openplanr/skills/ship/references/findings.md +92 -0
  176. package/lib/host-packages/claude/openplanr/skills/ship/references/result-contract.md +3 -1
  177. package/lib/host-packages/claude/openplanr/skills/ship/scripts/backlog-item.mjs +339 -0
  178. package/lib/host-packages/claude/openplanr/skills/sprint/references/connectors.md +4 -6
  179. package/lib/host-packages/claude/openplanr/skills/status/references/connectors.md +4 -6
  180. package/lib/host-packages/claude/openplanr/skills/sync/references/connectors.md +4 -6
  181. package/lib/host-packages/cursor/openplanr/.openplanr-content.json +125 -89
  182. package/lib/host-packages/cursor/openplanr/CONNECTORS.md +4 -6
  183. package/lib/host-packages/cursor/openplanr/manifest.json +1 -1
  184. package/lib/host-packages/cursor/openplanr/rules/planr-connect/references/connectors.md +4 -6
  185. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/craft.md +14 -3
  186. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/design-system.md +33 -1
  187. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/discovery.md +18 -4
  188. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/generation.md +74 -1
  189. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/hosted-canvas.md +62 -0
  190. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/review.md +46 -1
  191. package/lib/host-packages/cursor/openplanr/rules/planr-design/references/utilities.md +6 -0
  192. package/lib/host-packages/cursor/openplanr/rules/planr-design/schemas/design-document.schema.json +78 -5
  193. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/craft.md +14 -3
  194. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/design-system.md +33 -1
  195. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/discovery.md +18 -4
  196. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/generation.md +74 -1
  197. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/review.md +46 -1
  198. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/references/utilities.md +6 -0
  199. package/lib/host-packages/cursor/openplanr/rules/planr-design-loop/schemas/design-document.schema.json +78 -5
  200. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/craft.md +14 -3
  201. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/design-system.md +33 -1
  202. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/discovery.md +18 -4
  203. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/generation.md +74 -1
  204. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/review.md +46 -1
  205. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/references/utilities.md +6 -0
  206. package/lib/host-packages/cursor/openplanr/rules/planr-design-review/schemas/design-document.schema.json +78 -5
  207. package/lib/host-packages/cursor/openplanr/rules/planr-design.mdc +12 -0
  208. package/lib/host-packages/cursor/openplanr/rules/planr-investigate/references/findings.md +92 -0
  209. package/lib/host-packages/cursor/openplanr/rules/planr-investigate/scripts/backlog-item.mjs +339 -0
  210. package/lib/host-packages/cursor/openplanr/rules/planr-investigate.mdc +10 -1
  211. package/lib/host-packages/cursor/openplanr/rules/planr-plan/schemas/design-document.schema.json +78 -5
  212. package/lib/host-packages/cursor/openplanr/rules/planr-plan.mdc +3 -0
  213. package/lib/host-packages/cursor/openplanr/rules/planr-share/references/connectors.md +4 -6
  214. package/lib/host-packages/cursor/openplanr/rules/planr-ship/references/findings.md +92 -0
  215. package/lib/host-packages/cursor/openplanr/rules/planr-ship/references/result-contract.md +3 -1
  216. package/lib/host-packages/cursor/openplanr/rules/planr-ship/scripts/backlog-item.mjs +339 -0
  217. package/lib/host-packages/cursor/openplanr/rules/planr-ship.mdc +15 -4
  218. package/lib/host-packages/cursor/openplanr/rules/planr-sprint/references/connectors.md +4 -6
  219. package/lib/host-packages/cursor/openplanr/rules/planr-status/references/connectors.md +4 -6
  220. package/lib/host-packages/cursor/openplanr/rules/planr-sync/references/connectors.md +4 -6
  221. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
  222. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
  223. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-document.mjs +385 -79
  224. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
  225. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
  226. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-review.mjs +45 -4
  227. package/lib/host-packages/{openai/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → cursor/openplanr/runtime/design/scripts/design-runtime-support-6774fd3d5d02.mjs} +1 -1
  228. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-share.mjs +8 -5
  229. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +40 -7
  230. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
  231. package/lib/host-packages/{openai/openplanr/runtime/design/scripts/design-shared-protocol-contracts-31a760fc.mjs → cursor/openplanr/runtime/design/scripts/design-shared-protocol-contracts-b5f28f94.mjs} +284 -45
  232. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
  233. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/design.mjs +215 -55
  234. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
  235. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +246 -45
  236. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
  237. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
  238. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
  239. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
  240. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
  241. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
  242. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +163 -274
  243. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
  244. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
  245. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
  246. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
  247. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
  248. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
  249. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +115 -240
  250. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
  251. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
  252. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +215 -0
  253. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -0
  254. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
  255. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2170 -0
  256. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
  257. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
  258. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
  259. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
  260. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
  261. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1583 -0
  262. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
  263. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +5 -1
  264. package/lib/host-packages/{claude/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.20.0}/design-document.schema.json +78 -5
  265. package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
  266. package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/design.mjs +45 -12
  267. package/lib/host-packages/cursor/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
  268. package/lib/host-packages/openai/.claude-plugin/marketplace.json +2 -2
  269. package/lib/host-packages/openai/openplanr/.codex-plugin/plugin.json +1 -1
  270. package/lib/host-packages/openai/openplanr/.openplanr-content.json +128 -92
  271. package/lib/host-packages/openai/openplanr/CONNECTORS.md +4 -6
  272. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-artifact-shell.mjs +1 -1
  273. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-chunked-workspace-client.mjs +1 -1
  274. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-document.mjs +385 -79
  275. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-handoff.mjs +1 -1
  276. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-resource-pack.mjs +1 -1
  277. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-review.mjs +45 -4
  278. package/lib/host-packages/{claude/openplanr/runtime/design/scripts/design-runtime-support-e34c388a8e59.mjs → openai/openplanr/runtime/design/scripts/design-runtime-support-6774fd3d5d02.mjs} +1 -1
  279. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-share.mjs +8 -5
  280. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-shared-artifact-support-dependencies-design-support-protocol-contracts-3d9b1a86.mjs +40 -7
  281. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-shared-artifact-support-protocol-contracts-ea2cd15e.mjs +1 -1
  282. package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/design-shared-protocol-contracts-31a760fc.mjs → openai/openplanr/runtime/design/scripts/design-shared-protocol-contracts-b5f28f94.mjs} +284 -45
  283. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design-upload-spool.mjs +1 -1
  284. package/lib/host-packages/openai/openplanr/runtime/design/scripts/design.mjs +215 -55
  285. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/02-artifact-review-ui.js +23 -23
  286. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/03-protocol-contracts.js +246 -45
  287. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/06-artifact-review-ui.js +12 -12
  288. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources/08-artifact-review-ui.js +47 -14
  289. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/artifact/templates/artifact-review-stage.js.sources.json +11 -10
  290. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/package.json +4 -3
  291. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.css +16 -11
  292. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/01-module-runtime.js +7 -11
  293. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/02-react.js +163 -274
  294. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/03-react-dom-client-fiber-foundations.js +494 -967
  295. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/04-react-dom-client-reconciliation-hooks.js +346 -678
  296. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/05-react-dom-client-render-phases.js +382 -810
  297. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/06-react-dom-client-commit-effects.js +406 -730
  298. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/07-react-dom-client-work-loop-scheduling.js +259 -522
  299. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/08-react-dom-client-dom-events-properties-hydration.js +585 -937
  300. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/09-react-dom-client-public-roots.js +115 -240
  301. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/10-react.js +7 -17
  302. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/11-artifact-review-ui.js +3 -4
  303. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-protocol-contracts.js +215 -0
  304. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-design-review-experience.js +2766 -0
  305. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-studio-shell.js +134 -0
  306. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-canvas-engine.js +2170 -0
  307. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/16-design-review-experience.js +16 -0
  308. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-studio-shell.js +8 -0
  309. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/18-interface-primitives.js +3883 -0
  310. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/19-interface-primitives.js +966 -0
  311. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/{16-studio-shell.js → 20-studio-shell.js} +122 -227
  312. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/21-design-studio.js +1583 -0
  313. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources.json +101 -47
  314. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/protocol/package.json +5 -1
  315. package/lib/host-packages/{cursor/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.9.0 → openai/openplanr/runtime/design/scripts/runtime/packages/protocol/schemas/v1.20.0}/design-document.schema.json +78 -5
  316. package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design-protocol-contracts.mjs +247 -45
  317. package/lib/host-packages/openai/openplanr/runtime/plan/scripts/design.mjs +45 -12
  318. package/lib/host-packages/openai/openplanr/runtime/plan/scripts/runtime/packages/protocol/package.json +5 -1
  319. package/lib/host-packages/openai/openplanr/skills/connect/references/connectors.md +4 -6
  320. package/lib/host-packages/openai/openplanr/skills/design/SKILL.md +12 -0
  321. package/lib/host-packages/openai/openplanr/skills/design/openplanr.skill.json +11 -0
  322. package/lib/host-packages/openai/openplanr/skills/design/references/craft.md +14 -3
  323. package/lib/host-packages/openai/openplanr/skills/design/references/design-system.md +33 -1
  324. package/lib/host-packages/openai/openplanr/skills/design/references/discovery.md +18 -4
  325. package/lib/host-packages/openai/openplanr/skills/design/references/generation.md +74 -1
  326. package/lib/host-packages/openai/openplanr/skills/design/references/hosted-canvas.md +62 -0
  327. package/lib/host-packages/openai/openplanr/skills/design/references/review.md +46 -1
  328. package/lib/host-packages/openai/openplanr/skills/design/references/utilities.md +6 -0
  329. package/lib/host-packages/openai/openplanr/skills/design/schemas/design-document.schema.json +78 -5
  330. package/lib/host-packages/openai/openplanr/skills/design-loop/references/craft.md +14 -3
  331. package/lib/host-packages/openai/openplanr/skills/design-loop/references/design-system.md +33 -1
  332. package/lib/host-packages/openai/openplanr/skills/design-loop/references/discovery.md +18 -4
  333. package/lib/host-packages/openai/openplanr/skills/design-loop/references/generation.md +74 -1
  334. package/lib/host-packages/openai/openplanr/skills/design-loop/references/review.md +46 -1
  335. package/lib/host-packages/openai/openplanr/skills/design-loop/references/utilities.md +6 -0
  336. package/lib/host-packages/openai/openplanr/skills/design-loop/schemas/design-document.schema.json +78 -5
  337. package/lib/host-packages/openai/openplanr/skills/design-review/references/craft.md +14 -3
  338. package/lib/host-packages/openai/openplanr/skills/design-review/references/design-system.md +33 -1
  339. package/lib/host-packages/openai/openplanr/skills/design-review/references/discovery.md +18 -4
  340. package/lib/host-packages/openai/openplanr/skills/design-review/references/generation.md +74 -1
  341. package/lib/host-packages/openai/openplanr/skills/design-review/references/review.md +46 -1
  342. package/lib/host-packages/openai/openplanr/skills/design-review/references/utilities.md +6 -0
  343. package/lib/host-packages/openai/openplanr/skills/design-review/schemas/design-document.schema.json +78 -5
  344. package/lib/host-packages/openai/openplanr/skills/investigate/SKILL.md +10 -1
  345. package/lib/host-packages/openai/openplanr/skills/investigate/openplanr.skill.json +22 -0
  346. package/lib/host-packages/openai/openplanr/skills/investigate/references/findings.md +92 -0
  347. package/lib/host-packages/openai/openplanr/skills/investigate/scripts/backlog-item.mjs +339 -0
  348. package/lib/host-packages/openai/openplanr/skills/plan/SKILL.md +3 -0
  349. package/lib/host-packages/openai/openplanr/skills/plan/schemas/design-document.schema.json +78 -5
  350. package/lib/host-packages/openai/openplanr/skills/share/references/connectors.md +4 -6
  351. package/lib/host-packages/openai/openplanr/skills/ship/SKILL.md +15 -4
  352. package/lib/host-packages/openai/openplanr/skills/ship/openplanr.skill.json +22 -0
  353. package/lib/host-packages/openai/openplanr/skills/ship/references/findings.md +92 -0
  354. package/lib/host-packages/openai/openplanr/skills/ship/references/result-contract.md +3 -1
  355. package/lib/host-packages/openai/openplanr/skills/ship/scripts/backlog-item.mjs +339 -0
  356. package/lib/host-packages/openai/openplanr/skills/sprint/references/connectors.md +4 -6
  357. package/lib/host-packages/openai/openplanr/skills/status/references/connectors.md +4 -6
  358. package/lib/host-packages/openai/openplanr/skills/sync/references/connectors.md +4 -6
  359. package/package.json +3 -3
  360. package/dist/templates/backlog/backlog-item.md.hbs +0 -40
  361. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
  362. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
  363. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
  364. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
  365. package/lib/host-packages/claude/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
  366. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
  367. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
  368. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
  369. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
  370. package/lib/host-packages/cursor/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
  371. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/12-design-review-experience.js +0 -3589
  372. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/13-studio-shell.js +0 -184
  373. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/14-interface-primitives.js +0 -5229
  374. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/15-interface-primitives.js +0 -1733
  375. package/lib/host-packages/openai/openplanr/runtime/design/scripts/runtime/packages/design/templates/studio/studio.js.sources/17-design-studio.js +0 -1844
@@ -5,23 +5,13 @@
5
5
  "../../node_modules/react-dom/client.js"(exports, module) {
6
6
  "use strict";
7
7
  function checkDCE() {
8
- if (typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === "undefined" || typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== "function") {
9
- return;
10
- }
11
- if (false) {
12
- throw new Error("^_^");
13
- }
14
- try {
15
- __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);
16
- } catch (err) {
17
- console.error(err);
18
- }
19
- }
20
- if (true) {
21
- checkDCE();
22
- module.exports = require_react_dom_client_production();
23
- } else {
24
- module.exports = null;
8
+ if (!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ > "u" || typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE != "function"))
9
+ try {
10
+ __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);
11
+ } catch (err) {
12
+ console.error(err);
13
+ }
25
14
  }
15
+ checkDCE(), module.exports = require_react_dom_client_production();
26
16
  }
27
17
  });
@@ -3,11 +3,10 @@
3
3
  // ../artifact/lib/artifact/ui/stage-mount.mjs
4
4
  var ARTIFACT_STAGE_MOUNT_EVENT = "planr:artifact-stage-mount";
5
5
  function whenArtifactStage(window2) {
6
- const mounted = window2.__openPlanrArtifactStage;
7
- if (mounted) return Promise.resolve(mounted);
8
- return new Promise((resolve) => {
6
+ let mounted = window2.__openPlanrArtifactStage;
7
+ return mounted ? Promise.resolve(mounted) : new Promise((resolve) => {
9
8
  window2.addEventListener(ARTIFACT_STAGE_MOUNT_EVENT, (event) => resolve(event.detail), {
10
- once: true
9
+ once: !0
11
10
  });
12
11
  });
13
12
  }
@@ -0,0 +1,215 @@
1
+
2
+
3
+ // ../protocol/src/design-contracts.mjs
4
+ var DESIGN_DOCUMENT_VERSION = "1.0.0";
5
+ function initialFrameHeight(document2) {
6
+ let fixed = document2.frames.flatMap(
7
+ ({ height }) => typeof height == "number" && Number.isInteger(height) ? [height] : []
8
+ );
9
+ return fixed.length ? Math.max(...fixed) : 900;
10
+ }
11
+ var freeze = (value) => {
12
+ if (value && typeof value == "object") {
13
+ for (let nested of Object.values(value)) freeze(nested);
14
+ Object.freeze(value);
15
+ }
16
+ return value;
17
+ }, FRAME_SCHEMA = {
18
+ type: "array",
19
+ minItems: 1,
20
+ items: {
21
+ type: "object",
22
+ additionalProperties: !1,
23
+ required: ["id", "label", "width", "height"],
24
+ properties: {
25
+ id: { $ref: "#/$defs/id" },
26
+ label: { $ref: "#/$defs/text" },
27
+ width: { type: "integer", minimum: 1, maximum: 16384 },
28
+ height: { type: "integer", minimum: 1, maximum: 16384 }
29
+ }
30
+ }
31
+ }, DESIGN_DOCUMENT_V1_SCHEMA = freeze({
32
+ $schema: "https://json-schema.org/draft/2020-12/schema",
33
+ $id: "https://openplanr.dev/schemas/v1.9.0/design-document.schema.json",
34
+ "x-openplanr-contract": { id: "design-document", version: "1.9.0" },
35
+ title: "OpenPlanr authored design document",
36
+ type: "object",
37
+ additionalProperties: !1,
38
+ required: [
39
+ "kind",
40
+ "schemaVersion",
41
+ "id",
42
+ "title",
43
+ "brief",
44
+ "frames",
45
+ "screens",
46
+ "screenOrder",
47
+ "variants",
48
+ "selectedVariant",
49
+ "defaultView"
50
+ ],
51
+ properties: {
52
+ kind: { const: "openplanr-design-document" },
53
+ schemaVersion: { const: DESIGN_DOCUMENT_VERSION },
54
+ id: { $ref: "#/$defs/id" },
55
+ title: { $ref: "#/$defs/text" },
56
+ brief: {
57
+ type: "object",
58
+ additionalProperties: !1,
59
+ required: ["text", "source", "provenance"],
60
+ properties: {
61
+ text: { $ref: "#/$defs/text" },
62
+ source: { enum: ["spec", "png", "describe"] },
63
+ provenance: { enum: ["spec", "inferred"] },
64
+ references: { type: "array", items: { $ref: "#/$defs/text" }, uniqueItems: !0 }
65
+ }
66
+ },
67
+ designSystem: {
68
+ type: "object",
69
+ additionalProperties: !1,
70
+ properties: {
71
+ path: { $ref: "#/$defs/localPath" },
72
+ tokens: { $ref: "#/$defs/localPath" },
73
+ spacing: {
74
+ type: "array",
75
+ minItems: 1,
76
+ uniqueItems: !0,
77
+ items: { type: "number", minimum: 0, maximum: 16384 }
78
+ }
79
+ }
80
+ },
81
+ assets: { $ref: "#/$defs/paths" },
82
+ frames: FRAME_SCHEMA,
83
+ screens: {
84
+ type: "array",
85
+ minItems: 1,
86
+ items: {
87
+ type: "object",
88
+ additionalProperties: !1,
89
+ required: ["id", "title", "source"],
90
+ properties: {
91
+ id: { $ref: "#/$defs/id" },
92
+ title: { $ref: "#/$defs/text" },
93
+ description: { $ref: "#/$defs/text" },
94
+ source: { $ref: "#/$defs/source" },
95
+ anchors: { $ref: "#/$defs/ids" }
96
+ }
97
+ }
98
+ },
99
+ screenOrder: { type: "array", minItems: 1, items: { $ref: "#/$defs/id" }, uniqueItems: !0 },
100
+ flows: {
101
+ type: "array",
102
+ items: {
103
+ type: "object",
104
+ additionalProperties: !1,
105
+ required: ["id", "title", "screens"],
106
+ properties: {
107
+ id: { $ref: "#/$defs/id" },
108
+ title: { $ref: "#/$defs/text" },
109
+ screens: { type: "array", minItems: 1, items: { $ref: "#/$defs/id" } }
110
+ }
111
+ }
112
+ },
113
+ variants: {
114
+ type: "array",
115
+ minItems: 1,
116
+ items: {
117
+ type: "object",
118
+ additionalProperties: !1,
119
+ required: ["id", "label", "status"],
120
+ properties: {
121
+ id: { $ref: "#/$defs/id" },
122
+ label: { $ref: "#/$defs/text" },
123
+ description: { $ref: "#/$defs/text" },
124
+ status: { enum: ["ready", "failed"] },
125
+ issue: { $ref: "#/$defs/text" },
126
+ sources: { type: "object", additionalProperties: { $ref: "#/$defs/source" } }
127
+ },
128
+ if: { properties: { status: { const: "failed" } } },
129
+ then: { required: ["issue"] }
130
+ }
131
+ },
132
+ selectedVariant: { $ref: "#/$defs/id" },
133
+ defaultView: { enum: ["canvas", "prototype", "walkthrough"] }
134
+ },
135
+ $defs: {
136
+ id: { type: "string", minLength: 1, maxLength: 128, pattern: "^[A-Za-z][A-Za-z0-9_-]*$" },
137
+ text: { type: "string", minLength: 1, pattern: "\\S" },
138
+ ids: { type: "array", items: { $ref: "#/$defs/id" }, uniqueItems: !0 },
139
+ localPath: {
140
+ type: "string",
141
+ minLength: 1,
142
+ description: "Path relative to the authored document directory. No URL, traversal, encoded path, query or fragment.",
143
+ pattern: "^(?!/)(?!.*(?:^|/)\\.{1,2}(?:/|$))(?!.*//)(?!.*[/ ]$)[^\\\\:\\u0000-\\u001F%?#]+$"
144
+ },
145
+ paths: { type: "array", items: { $ref: "#/$defs/localPath" }, uniqueItems: !0 },
146
+ source: {
147
+ type: "object",
148
+ additionalProperties: !1,
149
+ required: ["html"],
150
+ properties: {
151
+ html: { $ref: "#/$defs/localPath" },
152
+ styles: { $ref: "#/$defs/paths" },
153
+ scripts: { $ref: "#/$defs/paths" }
154
+ }
155
+ }
156
+ }
157
+ }), DESIGN_DOCUMENT_SCHEMA = freeze({
158
+ ...DESIGN_DOCUMENT_V1_SCHEMA,
159
+ $id: "https://openplanr.dev/schemas/v1.20.0/design-document.schema.json",
160
+ "x-openplanr-contract": { id: "design-document", version: "1.20.0" },
161
+ properties: {
162
+ .../** @type {Record<string, unknown>} */
163
+ DESIGN_DOCUMENT_V1_SCHEMA.properties,
164
+ frames: {
165
+ ...FRAME_SCHEMA,
166
+ items: {
167
+ ...FRAME_SCHEMA.items,
168
+ properties: {
169
+ ...FRAME_SCHEMA.items.properties,
170
+ height: { anyOf: [{ type: "integer", minimum: 1, maximum: 16384 }, { const: "auto" }] }
171
+ }
172
+ }
173
+ },
174
+ layout: {
175
+ type: "object",
176
+ additionalProperties: !1,
177
+ properties: {
178
+ boards: {
179
+ type: "object",
180
+ description: "Keys are screenId, screenId/frameId or screenId/frameId/variantId; each ID must exist in the document.",
181
+ additionalProperties: {
182
+ type: "object",
183
+ additionalProperties: !1,
184
+ required: ["x", "y"],
185
+ properties: {
186
+ x: { $ref: "#/$defs/coordinate" },
187
+ y: { $ref: "#/$defs/coordinate" },
188
+ title: { $ref: "#/$defs/text" }
189
+ }
190
+ }
191
+ },
192
+ sections: {
193
+ type: "array",
194
+ items: {
195
+ type: "object",
196
+ additionalProperties: !1,
197
+ required: ["id", "x", "y", "text"],
198
+ properties: {
199
+ id: { $ref: "#/$defs/id" },
200
+ x: { $ref: "#/$defs/coordinate" },
201
+ y: { $ref: "#/$defs/coordinate" },
202
+ text: { $ref: "#/$defs/text" },
203
+ maxW: { type: "integer", minimum: 1, maximum: 16384 }
204
+ }
205
+ }
206
+ }
207
+ }
208
+ }
209
+ },
210
+ $defs: {
211
+ .../** @type {Record<string, unknown>} */
212
+ DESIGN_DOCUMENT_V1_SCHEMA.$defs,
213
+ coordinate: { type: "number", minimum: -1e7, maximum: 1e7 }
214
+ }
215
+ });