@12ui/design 0.2.81 → 0.2.83

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 (301) hide show
  1. package/README.md +11 -7
  2. package/SKILL.md +1 -1
  3. package/dist/branch-execution.d.ts.map +1 -1
  4. package/dist/branch-execution.js +6 -0
  5. package/dist/branch-execution.js.map +1 -1
  6. package/dist/branch-materialize.d.ts.map +1 -1
  7. package/dist/branch-materialize.js +6 -2
  8. package/dist/branch-materialize.js.map +1 -1
  9. package/dist/cli-capabilities.d.ts +4 -7
  10. package/dist/cli-capabilities.d.ts.map +1 -1
  11. package/dist/cli-capabilities.js +4 -4
  12. package/dist/cli-capabilities.js.map +1 -1
  13. package/dist/cli-help/conversion.d.ts +1 -1
  14. package/dist/cli-help/conversion.js +1 -1
  15. package/dist/cli-help/conversion.js.map +1 -1
  16. package/dist/cli-help/index.d.ts +3 -3
  17. package/dist/cli-help/workflow.d.ts +2 -2
  18. package/dist/cli-help/workflow.js +4 -4
  19. package/dist/cli-help/workflow.js.map +1 -1
  20. package/dist/cli-image-backend.d.ts +6 -1
  21. package/dist/cli-image-backend.d.ts.map +1 -1
  22. package/dist/cli-image-backend.js +8 -3
  23. package/dist/cli-image-backend.js.map +1 -1
  24. package/dist/cli-local-runtime.d.ts +6 -0
  25. package/dist/cli-local-runtime.d.ts.map +1 -1
  26. package/dist/cli-local-runtime.js +14 -1
  27. package/dist/cli-local-runtime.js.map +1 -1
  28. package/dist/cli-usage.d.ts.map +1 -1
  29. package/dist/cli-usage.js +8 -7
  30. package/dist/cli-usage.js.map +1 -1
  31. package/dist/cli-workspace-draw.d.ts.map +1 -1
  32. package/dist/cli-workspace-draw.js +2 -0
  33. package/dist/cli-workspace-draw.js.map +1 -1
  34. package/dist/cli-workspace-runner.d.ts.map +1 -1
  35. package/dist/cli-workspace-runner.js +2 -1
  36. package/dist/cli-workspace-runner.js.map +1 -1
  37. package/dist/legacy-skill-catalog.d.ts.map +1 -1
  38. package/dist/legacy-skill-catalog.js +13 -1
  39. package/dist/legacy-skill-catalog.js.map +1 -1
  40. package/dist/mcp-slate-tool-defs.d.ts.map +1 -1
  41. package/dist/mcp-slate-tool-defs.js +3 -2
  42. package/dist/mcp-slate-tool-defs.js.map +1 -1
  43. package/dist/mcp-slate-ui-copy.d.ts +10 -0
  44. package/dist/mcp-slate-ui-copy.d.ts.map +1 -1
  45. package/dist/mcp-slate-ui-copy.js +9 -0
  46. package/dist/mcp-slate-ui-copy.js.map +1 -1
  47. package/dist/mcp-slate-ui-locales/de-DE.d.ts.map +1 -1
  48. package/dist/mcp-slate-ui-locales/de-DE.js +5 -0
  49. package/dist/mcp-slate-ui-locales/de-DE.js.map +1 -1
  50. package/dist/mcp-slate-ui-locales/es-419.d.ts.map +1 -1
  51. package/dist/mcp-slate-ui-locales/es-419.js +5 -0
  52. package/dist/mcp-slate-ui-locales/es-419.js.map +1 -1
  53. package/dist/mcp-slate-ui-locales/es-ES.d.ts.map +1 -1
  54. package/dist/mcp-slate-ui-locales/es-ES.js +5 -0
  55. package/dist/mcp-slate-ui-locales/es-ES.js.map +1 -1
  56. package/dist/mcp-slate-ui-locales/fr-FR.d.ts.map +1 -1
  57. package/dist/mcp-slate-ui-locales/fr-FR.js +5 -0
  58. package/dist/mcp-slate-ui-locales/fr-FR.js.map +1 -1
  59. package/dist/mcp-slate-ui-locales/hi-IN.d.ts.map +1 -1
  60. package/dist/mcp-slate-ui-locales/hi-IN.js +5 -0
  61. package/dist/mcp-slate-ui-locales/hi-IN.js.map +1 -1
  62. package/dist/mcp-slate-ui-locales/it-IT.d.ts.map +1 -1
  63. package/dist/mcp-slate-ui-locales/it-IT.js +5 -0
  64. package/dist/mcp-slate-ui-locales/it-IT.js.map +1 -1
  65. package/dist/mcp-slate-ui-locales/ja-JP.d.ts.map +1 -1
  66. package/dist/mcp-slate-ui-locales/ja-JP.js +5 -0
  67. package/dist/mcp-slate-ui-locales/ja-JP.js.map +1 -1
  68. package/dist/mcp-slate-ui-locales/ko-KR.d.ts.map +1 -1
  69. package/dist/mcp-slate-ui-locales/ko-KR.js +5 -0
  70. package/dist/mcp-slate-ui-locales/ko-KR.js.map +1 -1
  71. package/dist/mcp-slate-ui-locales/pt-BR.d.ts.map +1 -1
  72. package/dist/mcp-slate-ui-locales/pt-BR.js +5 -0
  73. package/dist/mcp-slate-ui-locales/pt-BR.js.map +1 -1
  74. package/dist/mcp-slate-ui-locales/zh-CN.d.ts.map +1 -1
  75. package/dist/mcp-slate-ui-locales/zh-CN.js +5 -0
  76. package/dist/mcp-slate-ui-locales/zh-CN.js.map +1 -1
  77. package/dist/mcp-slate-ui-locales/zh-TW.d.ts.map +1 -1
  78. package/dist/mcp-slate-ui-locales/zh-TW.js +5 -0
  79. package/dist/mcp-slate-ui-locales/zh-TW.js.map +1 -1
  80. package/dist/mcp-slate-ui-script-board.d.ts +19 -0
  81. package/dist/mcp-slate-ui-script-board.d.ts.map +1 -0
  82. package/dist/mcp-slate-ui-script-board.js +126 -0
  83. package/dist/mcp-slate-ui-script-board.js.map +1 -0
  84. package/dist/mcp-slate-ui-script-designs.d.ts +1 -1
  85. package/dist/mcp-slate-ui-script-designs.d.ts.map +1 -1
  86. package/dist/mcp-slate-ui-script-designs.js +24 -15
  87. package/dist/mcp-slate-ui-script-designs.js.map +1 -1
  88. package/dist/mcp-slate-ui-script-inspiration-collage.d.ts +5 -2
  89. package/dist/mcp-slate-ui-script-inspiration-collage.d.ts.map +1 -1
  90. package/dist/mcp-slate-ui-script-inspiration-collage.js +9 -5
  91. package/dist/mcp-slate-ui-script-inspiration-collage.js.map +1 -1
  92. package/dist/mcp-slate-ui-script-inspiration-gallery.d.ts +7 -4
  93. package/dist/mcp-slate-ui-script-inspiration-gallery.d.ts.map +1 -1
  94. package/dist/mcp-slate-ui-script-inspiration-gallery.js +46 -5
  95. package/dist/mcp-slate-ui-script-inspiration-gallery.js.map +1 -1
  96. package/dist/mcp-slate-ui-script-inspiration-grid.d.ts.map +1 -1
  97. package/dist/mcp-slate-ui-script-inspiration-grid.js +4 -0
  98. package/dist/mcp-slate-ui-script-inspiration-grid.js.map +1 -1
  99. package/dist/mcp-slate-ui-script-pause.d.ts +4 -0
  100. package/dist/mcp-slate-ui-script-pause.d.ts.map +1 -1
  101. package/dist/mcp-slate-ui-script-pause.js +9 -2
  102. package/dist/mcp-slate-ui-script-pause.js.map +1 -1
  103. package/dist/mcp-slate-ui-script-peek.d.ts +16 -0
  104. package/dist/mcp-slate-ui-script-peek.d.ts.map +1 -0
  105. package/dist/mcp-slate-ui-script-peek.js +89 -0
  106. package/dist/mcp-slate-ui-script-peek.js.map +1 -0
  107. package/dist/mcp-slate-ui-script-references.d.ts +4 -2
  108. package/dist/mcp-slate-ui-script-references.d.ts.map +1 -1
  109. package/dist/mcp-slate-ui-script-references.js +39 -7
  110. package/dist/mcp-slate-ui-script-references.js.map +1 -1
  111. package/dist/mcp-slate-ui-script-remote.js +2 -2
  112. package/dist/mcp-slate-ui-script-viewer.d.ts +7 -2
  113. package/dist/mcp-slate-ui-script-viewer.d.ts.map +1 -1
  114. package/dist/mcp-slate-ui-script-viewer.js +183 -50
  115. package/dist/mcp-slate-ui-script-viewer.js.map +1 -1
  116. package/dist/mcp-slate-ui-script.d.ts.map +1 -1
  117. package/dist/mcp-slate-ui-script.js +4 -0
  118. package/dist/mcp-slate-ui-script.js.map +1 -1
  119. package/dist/mcp-slate-ui-styles-board.d.ts +7 -0
  120. package/dist/mcp-slate-ui-styles-board.d.ts.map +1 -0
  121. package/dist/mcp-slate-ui-styles-board.js +30 -0
  122. package/dist/mcp-slate-ui-styles-board.js.map +1 -0
  123. package/dist/mcp-slate-ui-styles-designs.d.ts +2 -1
  124. package/dist/mcp-slate-ui-styles-designs.d.ts.map +1 -1
  125. package/dist/mcp-slate-ui-styles-designs.js +10 -8
  126. package/dist/mcp-slate-ui-styles-designs.js.map +1 -1
  127. package/dist/mcp-slate-ui-styles-inspiration.d.ts.map +1 -1
  128. package/dist/mcp-slate-ui-styles-inspiration.js +13 -2
  129. package/dist/mcp-slate-ui-styles-inspiration.js.map +1 -1
  130. package/dist/mcp-slate-ui-styles-loading.d.ts +18 -0
  131. package/dist/mcp-slate-ui-styles-loading.d.ts.map +1 -0
  132. package/dist/mcp-slate-ui-styles-loading.js +37 -0
  133. package/dist/mcp-slate-ui-styles-loading.js.map +1 -0
  134. package/dist/mcp-slate-ui-styles-peek.d.ts +8 -0
  135. package/dist/mcp-slate-ui-styles-peek.d.ts.map +1 -0
  136. package/dist/mcp-slate-ui-styles-peek.js +13 -0
  137. package/dist/mcp-slate-ui-styles-peek.js.map +1 -0
  138. package/dist/mcp-slate-ui-styles.d.ts.map +1 -1
  139. package/dist/mcp-slate-ui-styles.js +0 -3
  140. package/dist/mcp-slate-ui-styles.js.map +1 -1
  141. package/dist/mcp-slate-ui.d.ts.map +1 -1
  142. package/dist/mcp-slate-ui.js +4 -1
  143. package/dist/mcp-slate-ui.js.map +1 -1
  144. package/dist/mcp-workflow-tools.js +2 -2
  145. package/dist/mcp-workflow-tools.js.map +1 -1
  146. package/dist/prototype-browsers.d.ts +10 -2
  147. package/dist/prototype-browsers.d.ts.map +1 -1
  148. package/dist/prototype-browsers.js +27 -2
  149. package/dist/prototype-browsers.js.map +1 -1
  150. package/dist/review-files-server.d.ts +8 -0
  151. package/dist/review-files-server.d.ts.map +1 -0
  152. package/dist/review-files-server.js +133 -0
  153. package/dist/review-files-server.js.map +1 -0
  154. package/dist/review-page-assets.d.ts +1 -1
  155. package/dist/review-page-assets.d.ts.map +1 -1
  156. package/dist/review-page-assets.js +3 -1
  157. package/dist/review-page-assets.js.map +1 -1
  158. package/dist/review-page.d.ts +8 -1
  159. package/dist/review-page.d.ts.map +1 -1
  160. package/dist/review-page.js +32 -21
  161. package/dist/review-page.js.map +1 -1
  162. package/dist/review-server-guard.d.ts +33 -0
  163. package/dist/review-server-guard.d.ts.map +1 -0
  164. package/dist/review-server-guard.js +65 -0
  165. package/dist/review-server-guard.js.map +1 -0
  166. package/dist/review-server.d.ts +2 -0
  167. package/dist/review-server.d.ts.map +1 -1
  168. package/dist/review-server.js +45 -74
  169. package/dist/review-server.js.map +1 -1
  170. package/dist/server.d.ts.map +1 -1
  171. package/dist/server.js +2 -1
  172. package/dist/server.js.map +1 -1
  173. package/dist/slate-actions.d.ts +6 -7
  174. package/dist/slate-actions.d.ts.map +1 -1
  175. package/dist/slate-actions.js +6 -9
  176. package/dist/slate-actions.js.map +1 -1
  177. package/dist/slate-branch-runner.d.ts +120 -0
  178. package/dist/slate-branch-runner.d.ts.map +1 -0
  179. package/dist/slate-branch-runner.js +312 -0
  180. package/dist/slate-branch-runner.js.map +1 -0
  181. package/dist/slate-captions-local.d.ts +14 -0
  182. package/dist/slate-captions-local.d.ts.map +1 -0
  183. package/dist/slate-captions-local.js +70 -0
  184. package/dist/slate-captions-local.js.map +1 -0
  185. package/dist/slate-captions-remote.d.ts +29 -0
  186. package/dist/slate-captions-remote.d.ts.map +1 -0
  187. package/dist/slate-captions-remote.js +65 -0
  188. package/dist/slate-captions-remote.js.map +1 -0
  189. package/dist/slate-captions.d.ts +41 -0
  190. package/dist/slate-captions.d.ts.map +1 -0
  191. package/dist/slate-captions.js +112 -0
  192. package/dist/slate-captions.js.map +1 -0
  193. package/dist/slate-commit.d.ts.map +1 -1
  194. package/dist/slate-commit.js +8 -6
  195. package/dist/slate-commit.js.map +1 -1
  196. package/dist/slate-image-executor.d.ts +18 -3
  197. package/dist/slate-image-executor.d.ts.map +1 -1
  198. package/dist/slate-image-executor.js +18 -5
  199. package/dist/slate-image-executor.js.map +1 -1
  200. package/dist/slate-paths.d.ts +3 -1
  201. package/dist/slate-paths.d.ts.map +1 -1
  202. package/dist/slate-paths.js +8 -2
  203. package/dist/slate-paths.js.map +1 -1
  204. package/dist/slate-round-prompt.d.ts +0 -12
  205. package/dist/slate-round-prompt.d.ts.map +1 -1
  206. package/dist/slate-round-prompt.js +0 -15
  207. package/dist/slate-round-prompt.js.map +1 -1
  208. package/dist/slate-round-runner.d.ts.map +1 -1
  209. package/dist/slate-round-runner.js +8 -14
  210. package/dist/slate-round-runner.js.map +1 -1
  211. package/dist/slate-runner-context.d.ts +3 -0
  212. package/dist/slate-runner-context.d.ts.map +1 -1
  213. package/dist/slate-runner-context.js.map +1 -1
  214. package/dist/slate-runner-main.d.ts +3 -0
  215. package/dist/slate-runner-main.d.ts.map +1 -1
  216. package/dist/slate-runner-main.js +5 -1
  217. package/dist/slate-runner-main.js.map +1 -1
  218. package/dist/slate-runner-spawn.js +2 -2
  219. package/dist/slate-runner-spawn.js.map +1 -1
  220. package/dist/slate-site-references-capture.d.ts +38 -1
  221. package/dist/slate-site-references-capture.d.ts.map +1 -1
  222. package/dist/slate-site-references-capture.js +25 -7
  223. package/dist/slate-site-references-capture.js.map +1 -1
  224. package/dist/slate-site-references-client.d.ts +13 -1
  225. package/dist/slate-site-references-client.d.ts.map +1 -1
  226. package/dist/slate-site-references-client.js +39 -14
  227. package/dist/slate-site-references-client.js.map +1 -1
  228. package/dist/slate-site-references-local.d.ts +3 -0
  229. package/dist/slate-site-references-local.d.ts.map +1 -1
  230. package/dist/slate-site-references-local.js +20 -1
  231. package/dist/slate-site-references-local.js.map +1 -1
  232. package/dist/slate-site-references-suggest.d.ts +25 -2
  233. package/dist/slate-site-references-suggest.d.ts.map +1 -1
  234. package/dist/slate-site-references-suggest.js +71 -12
  235. package/dist/slate-site-references-suggest.js.map +1 -1
  236. package/dist/slate-site-references.d.ts +11 -0
  237. package/dist/slate-site-references.d.ts.map +1 -1
  238. package/dist/slate-site-references.js +42 -3
  239. package/dist/slate-site-references.js.map +1 -1
  240. package/dist/slate-view-contract.d.ts +39 -1
  241. package/dist/slate-view-contract.d.ts.map +1 -1
  242. package/dist/slate-view.d.ts.map +1 -1
  243. package/dist/slate-view.js +8 -0
  244. package/dist/slate-view.js.map +1 -1
  245. package/dist/slate-workspace-parse.d.ts.map +1 -1
  246. package/dist/slate-workspace-parse.js +35 -0
  247. package/dist/slate-workspace-parse.js.map +1 -1
  248. package/dist/slate-workspace-types.d.ts +31 -2
  249. package/dist/slate-workspace-types.d.ts.map +1 -1
  250. package/dist/workflow/adapter-12ui.js +1 -1
  251. package/dist/workflow/adapter-12ui.js.map +1 -1
  252. package/dist/workflow/adapters.d.ts.map +1 -1
  253. package/dist/workflow/adapters.js +3 -3
  254. package/dist/workflow/adapters.js.map +1 -1
  255. package/dist/workflow/providers.js +2 -2
  256. package/dist/workflow/providers.js.map +1 -1
  257. package/dist/workflow/routing.d.ts +8 -1
  258. package/dist/workflow/routing.d.ts.map +1 -1
  259. package/dist/workflow/routing.js +9 -2
  260. package/dist/workflow/routing.js.map +1 -1
  261. package/dist/workflow/types.d.ts +5 -2
  262. package/dist/workflow/types.d.ts.map +1 -1
  263. package/dist/workflow/types.js.map +1 -1
  264. package/dist/workflow-transport.d.ts.map +1 -1
  265. package/dist/workflow-transport.js +4 -2
  266. package/dist/workflow-transport.js.map +1 -1
  267. package/dist/workspace-draw-branch.d.ts +27 -0
  268. package/dist/workspace-draw-branch.d.ts.map +1 -0
  269. package/dist/workspace-draw-branch.js +101 -0
  270. package/dist/workspace-draw-branch.js.map +1 -0
  271. package/dist/workspace-draw-client.d.ts +27 -0
  272. package/dist/workspace-draw-client.d.ts.map +1 -1
  273. package/dist/workspace-draw-client.js +30 -0
  274. package/dist/workspace-draw-client.js.map +1 -1
  275. package/dist/workspace-draw-codex.d.ts +5 -5
  276. package/dist/workspace-draw-codex.d.ts.map +1 -1
  277. package/dist/workspace-draw-codex.js +4 -3
  278. package/dist/workspace-draw-codex.js.map +1 -1
  279. package/dist/workspace-draw-run.d.ts +19 -3
  280. package/dist/workspace-draw-run.d.ts.map +1 -1
  281. package/dist/workspace-draw-run.js +44 -4
  282. package/dist/workspace-draw-run.js.map +1 -1
  283. package/dist/workspace-draw-types.d.ts +18 -2
  284. package/dist/workspace-draw-types.d.ts.map +1 -1
  285. package/dist/workspace-draw-types.js.map +1 -1
  286. package/dist/workspace-runner-main.d.ts +9 -2
  287. package/dist/workspace-runner-main.d.ts.map +1 -1
  288. package/dist/workspace-runner-main.js +21 -2
  289. package/dist/workspace-runner-main.js.map +1 -1
  290. package/dist/workspace-runner-spawn.js +1 -1
  291. package/dist/workspace-runner-spawn.js.map +1 -1
  292. package/open-design.json +2 -2
  293. package/package.json +1 -1
  294. package/runtime/codex-conversion/bin/convert.mjs +1 -1
  295. package/runtime/codex-conversion/src/codex/caller-home.mjs +95 -0
  296. package/runtime/codex-conversion/src/codex/home.mjs +8 -2
  297. package/runtime/codex-conversion/src/images/execute.mjs +1 -1
  298. package/runtime/codex-conversion/src/images/native-invoke.mjs +21 -13
  299. package/runtime/codex-conversion/src/images/native.mjs +42 -19
  300. package/runtime/codex-conversion/src/run.mjs +2 -1
  301. package/skills/12ui-design/SKILL.md +6 -6
@@ -1,27 +1,11 @@
1
- import { createReadStream } from 'node:fs';
2
- import { realpath, stat } from 'node:fs/promises';
3
1
  import http from 'node:http';
4
2
  import path from 'node:path';
5
3
  import { discoverReviewModel } from './review-discovery.js';
4
+ import { startReviewFilesServer } from './review-files-server.js';
6
5
  import { discoveryNotice } from './review-run-roots.js';
7
6
  import { renderReviewPage } from './review-page.js';
7
+ import { assertReviewAccess, newReviewToken } from './review-server-guard.js';
8
8
  import { saveReviewFeedback } from './review-store.js';
9
- const CONTENT_TYPES = {
10
- '.avif': 'image/avif',
11
- '.css': 'text/css; charset=utf-8',
12
- '.gif': 'image/gif',
13
- '.html': 'text/html; charset=utf-8',
14
- '.jpeg': 'image/jpeg',
15
- '.jpg': 'image/jpeg',
16
- '.js': 'text/javascript; charset=utf-8',
17
- '.json': 'application/json; charset=utf-8',
18
- '.png': 'image/png',
19
- '.svg': 'image/svg+xml',
20
- '.ttf': 'font/ttf',
21
- '.webp': 'image/webp',
22
- '.woff': 'font/woff',
23
- '.woff2': 'font/woff2',
24
- };
25
9
  const sendJson = (response, status, value) => {
26
10
  response.writeHead(status, {
27
11
  'content-type': 'application/json; charset=utf-8',
@@ -29,13 +13,14 @@ const sendJson = (response, status, value) => {
29
13
  });
30
14
  response.end(`${JSON.stringify(value)}\n`);
31
15
  };
32
- const sendPage = (response, page, head = false) => {
16
+ /** The page loads run files only from their own origin (`review-files-server.ts`), and talks only to this one. */
17
+ const sendPage = (response, page, files, head = false) => {
33
18
  const bytes = Buffer.from(page, 'utf8');
34
19
  response.writeHead(200, {
35
20
  'content-type': 'text/html; charset=utf-8',
36
21
  'content-length': bytes.byteLength,
37
22
  'cache-control': 'no-store',
38
- 'content-security-policy': "default-src 'self'; img-src 'self' data: https:; frame-src 'self'; style-src 'unsafe-inline'; script-src 'unsafe-inline'; connect-src 'self'",
23
+ 'content-security-policy': `default-src 'self'; img-src 'self' ${files} data: https:; frame-src ${files}; style-src 'unsafe-inline'; script-src 'unsafe-inline'; connect-src 'self'`,
39
24
  });
40
25
  response.end(head ? undefined : bytes);
41
26
  };
@@ -73,45 +58,6 @@ const requestedRun = (model, runId) => {
73
58
  throw new Error('This review run no longer exists');
74
59
  return run;
75
60
  };
76
- const serveRunFile = async (args) => {
77
- const segments = args.pathname.split('/').slice(2).map((segment) => decodeURIComponent(segment));
78
- const runId = segments.shift();
79
- const run = args.model.runs.find((candidate) => candidate.id === runId);
80
- if (!run || segments.length === 0 || segments.some((segment) => (!segment
81
- || segment === '.'
82
- || segment === '..'
83
- || segment.startsWith('.')
84
- || segment.includes('/')
85
- || segment.includes('\\')))) {
86
- args.response.writeHead(404).end('not found');
87
- return;
88
- }
89
- const root = await realpath(run.root).catch(() => null);
90
- const candidate = path.resolve(run.root, ...segments);
91
- const file = await realpath(candidate).catch(() => null);
92
- if (!root || !file || (file !== root && !file.startsWith(`${root}${path.sep}`))) {
93
- args.response.writeHead(403).end('forbidden');
94
- return;
95
- }
96
- if (path.relative(root, file).split(path.sep).some((segment) => segment.startsWith('.'))) {
97
- args.response.writeHead(404).end('not found');
98
- return;
99
- }
100
- const details = await stat(file).catch(() => null);
101
- if (!details?.isFile()) {
102
- args.response.writeHead(404).end('not found');
103
- return;
104
- }
105
- args.response.writeHead(200, {
106
- 'content-type': CONTENT_TYPES[path.extname(file).toLowerCase()] ?? 'application/octet-stream',
107
- 'content-length': details.size,
108
- 'cache-control': 'no-store',
109
- });
110
- if (args.method === 'HEAD')
111
- args.response.end();
112
- else
113
- createReadStream(file).pipe(args.response);
114
- };
115
61
  export const startReviewServer = async (options) => {
116
62
  const discovery = {
117
63
  ...(options.target ? { target: options.target } : {}),
@@ -123,10 +69,16 @@ export const startReviewServer = async (options) => {
123
69
  };
124
70
  let model = await discoverReviewModel(discovery);
125
71
  const activePrototypeRuns = new Set();
72
+ // This session's secret, embedded only in the page this server serves (`review-server-guard.ts`).
73
+ const token = newReviewToken();
74
+ let port = 0;
126
75
  const refresh = async () => {
127
76
  model = await discoverReviewModel(discovery);
128
77
  return model;
129
78
  };
79
+ const files = await startReviewFilesServer(() => model);
80
+ /** The files origin under the loopback name the page was asked for, so the page and its files stay one site. */
81
+ const filesOrigin = (request) => (`http://${request.headers.host?.startsWith('localhost:') ? 'localhost' : '127.0.0.1'}:${files.port}`);
130
82
  const server = http.createServer(async (request, response) => {
131
83
  const method = request.method ?? 'GET';
132
84
  let pathname;
@@ -137,13 +89,18 @@ export const startReviewServer = async (options) => {
137
89
  response.writeHead(400).end('bad request');
138
90
  return;
139
91
  }
92
+ try {
93
+ assertReviewAccess(request, { port, token });
94
+ }
95
+ catch (error) {
96
+ const refused = error;
97
+ sendJson(response, refused.status, { ok: false, code: refused.code, error: refused.message });
98
+ return;
99
+ }
140
100
  try {
141
101
  if ((method === 'GET' || method === 'HEAD') && (pathname === '/' || pathname === '/index.html')) {
142
- sendPage(response, renderReviewPage(await refresh()), method === 'HEAD');
143
- return;
144
- }
145
- if ((method === 'GET' || method === 'HEAD') && pathname.startsWith('/files/')) {
146
- await serveRunFile({ model, pathname, method, response });
102
+ const origin = filesOrigin(request);
103
+ sendPage(response, renderReviewPage(await refresh(), { token, files: origin }), origin, method === 'HEAD');
147
104
  return;
148
105
  }
149
106
  if (method === 'POST' && pathname === '/api/feedback') {
@@ -255,25 +212,39 @@ export const startReviewServer = async (options) => {
255
212
  });
256
213
  }
257
214
  });
258
- await new Promise((resolve, reject) => {
259
- server.once('error', reject);
260
- server.listen(options.port ?? 0, '127.0.0.1', () => resolve());
261
- });
215
+ try {
216
+ await new Promise((resolve, reject) => {
217
+ server.once('error', reject);
218
+ server.listen(options.port ?? 0, '127.0.0.1', () => resolve());
219
+ });
220
+ }
221
+ catch (error) {
222
+ await files.close();
223
+ throw error;
224
+ }
262
225
  const address = server.address();
263
226
  if (!address || typeof address === 'string') {
264
227
  await new Promise((resolve) => server.close(() => resolve()));
228
+ await files.close();
265
229
  throw new Error('Review server did not bind a local TCP port');
266
230
  }
231
+ port = address.port;
267
232
  return {
268
233
  url: `http://127.0.0.1:${address.port}`,
269
234
  port: address.port,
235
+ filesUrl: `http://127.0.0.1:${files.port}`,
270
236
  ...(discoveryNotice(model) ? { notice: discoveryNotice(model) } : {}),
271
- close: () => new Promise((resolve, reject) => {
272
- server.close((error) => { if (error)
273
- reject(error);
274
- else
275
- resolve(); });
276
- }),
237
+ close: async () => {
238
+ await Promise.all([
239
+ new Promise((resolve, reject) => {
240
+ server.close((error) => { if (error)
241
+ reject(error);
242
+ else
243
+ resolve(); });
244
+ }),
245
+ files.close(),
246
+ ]);
247
+ },
277
248
  };
278
249
  };
279
250
  //# sourceMappingURL=review-server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"review-server.js","sourceRoot":"","sources":["../src/review-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-server.js","sourceRoot":"","sources":["../src/review-server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAWnE,OAAO,EAAoB,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAYzF,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;;;;OAOG;IACH,MAAM,EAAE,gBAAgB,GAAG,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACpD,sFAAsF;IACtF,YAAY,CAAC,EAAE,YAAY,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC;IACnD;;;;OAIG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF,qGAAqG;AACrG,eAAO,MAAM,eAAe,GAAI,SAAS,gBAAgB,KAAG,MA6C3D,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAWnE,OAAO,EAAoB,KAAK,gBAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAazF,OAAO,EAIL,KAAK,gBAAgB,EACtB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,gBAAgB,GAAG;IAC7B;;;;;;;OAOG;IACH,MAAM,EAAE,gBAAgB,GAAG,CAAC,MAAM,gBAAgB,CAAC,CAAC;IACpD,sFAAsF;IACtF,YAAY,CAAC,EAAE,YAAY,GAAG,CAAC,MAAM,YAAY,CAAC,CAAC;IACnD;;;;OAIG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B,CAAC;AAEF,qGAAqG;AACrG,eAAO,MAAM,eAAe,GAAI,SAAS,gBAAgB,KAAG,MA6C3D,CAAC;AAEF,wBAAsB,cAAc,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E"}
package/dist/server.js CHANGED
@@ -6,6 +6,7 @@ import { readCorpusConfig } from './config.js';
6
6
  import { MCP_TOOL_DEFINITIONS } from './mcp-tool-definitions.js';
7
7
  import { callMcpTool, createMcpCorpusDependencies, createMcpToolDependencies, } from './mcp-tool-handler.js';
8
8
  import { lazyCorpus } from './slate-corpus.js';
9
+ import { startLocalCaptions } from './slate-captions-local.js';
9
10
  import { startLocalReferences } from './slate-site-references-local.js';
10
11
  import { listSlateResources, readSlateResource } from './mcp-slate-resource.js';
11
12
  import { SLATE_TOOL_DEFINITIONS, createSlateToolHandler, isSlateTool, } from './mcp-slate-tools.js';
@@ -29,7 +30,7 @@ export const createMcpServer = (options) => {
29
30
  const slateTools = createSlateToolHandler({
30
31
  // The workspace's free reference search reads the same optional-auth corpus configuration, lazily.
31
32
  corpus: lazyCorpus(resolveCorpusConfig),
32
- gatherReferences: (root) => { startLocalReferences(root); },
33
+ gatherReferences: (root) => { startLocalReferences(root); startLocalCaptions(root); },
33
34
  ...options.slate,
34
35
  });
35
36
  const server = new Server({ name: PACKAGE_NAME, version: packageIdentity().version }, { capabilities: { tools: {}, resources: {} } });
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,GAE1B,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAA4C,MAAM,aAAa,CAAC;AACzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EACL,WAAW,EACX,2BAA2B,EAC3B,yBAAyB,GAG1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,WAAW,GAEZ,MAAM,sBAAsB,CAAC;AAsB9B,qGAAqG;AACrG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAyB,EAAU,EAAE;IACnE,IAAI,YAA6C,CAAC;IAClD,IAAI,MAAyC,CAAC;IAC9C,MAAM,aAAa,GAAG,GAAqB,EAAE,CAAC,CAC5C,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CACzE,CAAC;IACF,MAAM,mBAAmB,GAAG,GAAiB,EAAE;QAC7C,MAAM,MAAM,GAAG,OAAO,CAAC,YAAY,IAAI,CAAC,OAAO,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACzG,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC1F,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,GAA0B,EAAE;QACrD,MAAM,KAAK,2BAA2B,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,kBAAkB,GAAG,GAAwB,EAAE;QACnD,YAAY,KAAK,yBAAyB,CAAC,aAAa,EAAE,CAAC,CAAC;QAC5D,OAAO,YAAY,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,sBAAsB,CAAC;QACxC,mGAAmG;QACnG,MAAM,EAAE,UAAU,CAAC,mBAAmB,CAAC;QACvC,gBAAgB,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrF,GAAG,OAAO,CAAC,KAAK;KACjB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,OAAO,EAAE,EAC1D,EAAE,YAAY,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,CAC/C,CAAC;IAEF,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAC5D,KAAK,EAAE,CAAC,GAAG,oBAAoB,EAAE,GAAG,sBAAsB,CAAC;KAC5D,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAA2B,EAAE;QACzF,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;QACjD,IAAI,WAAW,CAAC,IAAI,CAAC;YAAE,OAAO,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACrD,OAAO,MAAM,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,kBAAkB,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;IAC1F,CAAC,CAAC,CAAC;IACH,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;QAChE,SAAS,EAAE,kBAAkB,EAAE;KAChC,CAAC,CAAC,CAAC;IACJ,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,CACrE,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CACtC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,OAAyB;IAC5D,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;AACrE,CAAC"}
@@ -29,15 +29,16 @@ export type RoundAction = {
29
29
  brief?: string;
30
30
  };
31
31
  /**
32
- * Branch: grow the other pages of the product from one design, the design attached as the identity reference. The
33
- * pages are the person's names (one option each), or, with none, `count` pages the drawing model chooses.
32
+ * Branch: the real branch pipeline (`12ui branch execute`) grown from one design. `page` continues the design below
33
+ * the fold into its full page; `site` adds the product's other pages and routes, the person's names when given.
34
34
  */
35
+ export type BranchScope = 'page' | 'site';
35
36
  export type BranchAction = {
36
37
  kind: 'round';
37
38
  mode: 'branch';
38
39
  note: null;
39
40
  fromVersionId: string;
40
- count: number;
41
+ scope: BranchScope;
41
42
  pages: string[];
42
43
  };
43
44
  export type EditAction = {
@@ -47,11 +48,9 @@ export type EditAction = {
47
48
  strokes: SlateStroke[];
48
49
  };
49
50
  export type SlateWorkAction = RoundAction | BranchAction | EditAction;
50
- export declare const BRANCH_DEFAULT_PAGES = 4;
51
- export declare const BRANCH_MAX_PAGES = 8;
51
+ /** The branch service plans at most 4 pages beyond the design's own (workers/api/src/slate/limits.ts SLATE_BRANCH.maxPages). */
52
+ export declare const BRANCH_MAX_PAGES = 4;
52
53
  export declare const PAGE_NAME_MAX_CHARACTERS = 60;
53
- /** The pages a branch draws when the person names none, in this order (a product without one draws its closest equivalent). */
54
- export declare const BRANCH_DEFAULT_PAGE_NAMES: readonly ["Detail", "Sign in", "Pricing", "Settings", "Dashboard", "Search", "Profile", "Checkout"];
55
54
  /** Control characters are stripped except tab and newline; the rest is the user's text. */
56
55
  export declare const cleanUserText: (value: string) => string;
57
56
  /** Freehand strokes as integer permille points; anything outside the limits is refused, never trimmed. */
@@ -1 +1 @@
1
- {"version":3,"file":"slate-actions.d.ts","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5G;;;GAGG;AAEH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,8BAA+B,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,eAAO,MAAM,0BAA0B,EAAE,gBAAoB,CAAC;AAC9D,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,qBAAqB,OAA8B,CAAC;AACjE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,6KAA6K,CAAC;AACjN,eAAO,MAAM,aAAa;;;;CAAqE,CAAC;AAGhG,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAChI,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC;AACrG,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAEtE,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,+HAA+H;AAC/H,eAAO,MAAM,yBAAyB,qGAAsG,CAAC;AAQ7I,2FAA2F;AAC3F,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,MAG7C,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,WAAW,EAsB5D,CAAC;AAEF,kGAAkG;AAClG,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,gBAKpD,CAAC;AAEF,sIAAsI;AACtI,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,MAAM,EAWrD,CAAC;AAWF,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,eAsChD,CAAC"}
1
+ {"version":3,"file":"slate-actions.d.ts","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkD,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAE5G;;;GAGG;AAEH,4FAA4F;AAC5F,eAAO,MAAM,mBAAmB,8BAA+B,CAAC;AAChE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,eAAO,MAAM,0BAA0B,EAAE,gBAAoB,CAAC;AAC9D,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,qBAAqB,OAA8B,CAAC;AACjE;;;GAGG;AACH,eAAO,MAAM,sBAAsB,6KAA6K,CAAC;AACjN,eAAO,MAAM,aAAa;;;;CAAqE,CAAC;AAGhG,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,oHAAoH;IACpH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,MAAM,CAAC;AAC1C,MAAM,MAAM,YAAY,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AACrI,MAAM,MAAM,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC;AACrG,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,CAAC;AAEtE,gIAAgI;AAChI,eAAO,MAAM,gBAAgB,IAAI,CAAC;AAClC,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAQ3C,2FAA2F;AAC3F,eAAO,MAAM,aAAa,GAAI,OAAO,MAAM,KAAG,MAG7C,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,gBAAgB,GAAI,OAAO,OAAO,KAAG,WAAW,EAsB5D,CAAC;AAEF,kGAAkG;AAClG,eAAO,MAAM,mBAAmB,GAAI,OAAO,OAAO,KAAG,gBAKpD,CAAC;AAEF,sIAAsI;AACtI,eAAO,MAAM,cAAc,GAAI,OAAO,OAAO,KAAG,MAAM,EAWrD,CAAC;AAUF,eAAO,MAAM,eAAe,GAAI,OAAO,OAAO,KAAG,eAsChD,CAAC"}
@@ -17,11 +17,9 @@ export const EDIT_PROMPT_MAX_BYTES = SLATE_EDIT_PROMPT_MAX_BYTES;
17
17
  export const EDIT_MARKS_ONLY_PROMPT = 'Infer the change from the marks: an X or a cross-out means remove that element, a circle or a scribble means adjust it, and any words written there are the instruction.';
18
18
  export const STROKE_LIMITS = { strokes: 24, pointsPerStroke: 400, pointsTotal: 3_000 };
19
19
  const ROUND_BRIEF_MAX_CHARACTERS = 2_000;
20
- export const BRANCH_DEFAULT_PAGES = 4;
21
- export const BRANCH_MAX_PAGES = 8;
20
+ /** The branch service plans at most 4 pages beyond the design's own (workers/api/src/slate/limits.ts SLATE_BRANCH.maxPages). */
21
+ export const BRANCH_MAX_PAGES = 4;
22
22
  export const PAGE_NAME_MAX_CHARACTERS = 60;
23
- /** The pages a branch draws when the person names none, in this order (a product without one draws its closest equivalent). */
24
- export const BRANCH_DEFAULT_PAGE_NAMES = ['Detail', 'Sign in', 'Pricing', 'Settings', 'Dashboard', 'Search', 'Profile', 'Checkout'];
25
23
  const isRecord = (value) => (!!value && typeof value === 'object' && !Array.isArray(value));
26
24
  const invalid = (message, l10n) => { throw new SlateError('invalid_input', message, l10n ? { l10n } : {}); };
27
25
  /** Control characters are stripped except tab and newline; the rest is the user's text. */
@@ -91,11 +89,10 @@ const normalizeBranch = (input) => {
91
89
  const fromVersionId = input.fromVersionId;
92
90
  if (typeof fromVersionId !== 'string' || !VERSION_ID_PATTERN.test(fromVersionId))
93
91
  return invalid('A branch needs the version it grows from (fromVersionId).');
94
- const pages = normalizePages(input.pages);
95
- const count = pages.length > 0 ? pages.length : (input.count ?? BRANCH_DEFAULT_PAGES);
96
- if (typeof count !== 'number' || !Number.isInteger(count) || count < 1 || count > BRANCH_MAX_PAGES)
97
- return invalid(`A branch draws 1 to ${BRANCH_MAX_PAGES} pages.`);
98
- return { kind: 'round', mode: 'branch', note: null, fromVersionId, count, pages: pages.length > 0 ? pages : BRANCH_DEFAULT_PAGE_NAMES.slice(0, count) };
92
+ if (input.scope !== 'page' && input.scope !== 'site')
93
+ return invalid('A branch scope is page (the full page) or site (more pages).');
94
+ const pages = input.scope === 'site' ? normalizePages(input.pages) : [];
95
+ return { kind: 'round', mode: 'branch', note: null, fromVersionId, scope: input.scope, pages };
99
96
  };
100
97
  export const normalizeAction = (input) => {
101
98
  if (!isRecord(input))
@@ -1 +1 @@
1
- {"version":3,"file":"slate-actions.js","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slate-actions.js","sourceRoot":"","sources":["../src/slate-actions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,120 @@
1
+ import { type Outcome, type RunnerEnv } from './slate-runner-context.js';
2
+ import type { SlateOp, SlateRoundParams } from './slate-workspace-types.js';
3
+ /**
4
+ * A branch runs the real branch pipeline (`followBranchRun`), here for the local runner's branch round: `12ui branch execute` on the design it grows from, in
5
+ * `branches/<roundId>/`, as a child of this runner. The runner reads what that run records while it works and lands
6
+ * each page in the Designs tab the moment its screens are in:
7
+ *
8
+ * - `branch/branch.plan.json` names the pages, their surfaces and the viewports (screens) of each page;
9
+ * - `branch/branch.progress.json` says which screens are in (the board's "n of m");
10
+ * - every screen is one option, placed on the branch's board (`boardOf`): its column (0 is the design the branch grows
11
+ * from, with the full page continued under it; then the plan's other pages, in order), its row in that column, and
12
+ * how the column stacks (`page`: one continuous web page, flush; `states`: app states, framed one by one). Each screen
13
+ * lands the moment it is in, so the board fills in place.
14
+ *
15
+ * The child runs on the person's own 12ui sign-in, with no extra step before it starts. A rerun of the op reruns the same command in the same
16
+ * folder, which resumes the recorded branch run instead of repeating its paid work.
17
+ */
18
+ export type BranchChild = {
19
+ exited: Promise<number>;
20
+ };
21
+ export type BranchLaunch = (args: {
22
+ cwd: string;
23
+ argv: string[];
24
+ }) => BranchChild;
25
+ /** The default launch: this CLI's own `branch execute`, with the runner's environment (the stored 12ui sign-in under HOME). */
26
+ export declare const spawnBranchExecute: BranchLaunch;
27
+ /** How a page's screens read together: one continuous web page (flush), or separate app states (framed). */
28
+ export type BoardFlow = 'page' | 'states';
29
+ export type PlanPage = {
30
+ index: number;
31
+ title: string;
32
+ startsFromWinner: boolean;
33
+ flow: BoardFlow;
34
+ };
35
+ type PlanScreen = {
36
+ slot: string;
37
+ pageIndex: number;
38
+ viewportOrdinal: number;
39
+ status: string;
40
+ };
41
+ type Plan = {
42
+ pages: PlanPage[];
43
+ screens: PlanScreen[];
44
+ };
45
+ /** A screen's place on the board: its column, its row in that column, and how the column stacks. */
46
+ export type BoardPlace = {
47
+ column: number;
48
+ screen: number;
49
+ flow: BoardFlow;
50
+ };
51
+ /** A page of the board as the runner reports it: `source` when it continues the design the branch grows from (column 0). */
52
+ export type BoardPage = {
53
+ title: string;
54
+ flow: BoardFlow;
55
+ source: boolean;
56
+ screens: number;
57
+ };
58
+ export type BoardScreen = {
59
+ slot: string;
60
+ title: string;
61
+ place: BoardPlace;
62
+ };
63
+ /** The board's screens from its pages in board order: the one rule both stores (and the runner) place screens by. */
64
+ export declare const boardPlaces: (pages: readonly BoardPage[]) => {
65
+ title: string;
66
+ place: BoardPlace;
67
+ }[];
68
+ /**
69
+ * The board of a plan: its pages in board order (the page that continues the design first, as column 0; then the rest
70
+ * in plan order, as columns 1, 2, ...) and every screen in that order, each page's screens by viewport. A screen's
71
+ * position in `screens` is its option's position: the server and the local store make the options in this order.
72
+ */
73
+ export declare const boardOf: (plan: Plan) => {
74
+ pages: BoardPage[];
75
+ screens: BoardScreen[];
76
+ };
77
+ export declare const readBranchPlan: (branchDir: string) => Promise<Plan | null>;
78
+ /**
79
+ * The words `branch execute` plans from: the workspace brief, as the web /branch page sends its prompt (Branch.tsx
80
+ * `startBranch`: the brief, trimmed, nothing added). The same design and brief then get the web's plan: the page the
81
+ * design starts continued below the fold, the planner's other pages, the same header, footer and screen cap.
82
+ * The scope is no sentence: `--scope page` keeps that plan's source page (the web board's first column), `site` all of
83
+ * it. Page names the person gave are the one addition, said the way a person on the web writes them into the brief:
84
+ * what the rest of the product must cover.
85
+ */
86
+ export declare const branchConcept: (params: Pick<SlateRoundParams, "concept" | "scope" | "pages">) => string;
87
+ /** Where a followed branch run lands what it records: the local workspace, or the hosted one (workspace-draw-branch.ts). */
88
+ export type BranchHooks = {
89
+ /** Every poll once the plan is in: its pages in board order (`boardOf`) and how many screens are in. */
90
+ progress: (pages: BoardPage[], screens: {
91
+ ready: number;
92
+ total: number;
93
+ }) => Promise<void>;
94
+ /** Whether the screen at this position has already landed (or failed): a resumed run skips it. */
95
+ settled: (position: number) => Promise<boolean>;
96
+ /** The screen at this position is done: its picture, or null when it was not drawn. */
97
+ land: (position: number, screen: BoardScreen, png: Buffer | null) => Promise<void>;
98
+ };
99
+ /**
100
+ * Runs `12ui branch execute` from `source` in `runDir` (resuming the recorded run when there is one) and follows what
101
+ * it records until it exits: the local runner's branch round and the hosted workspace's branch op
102
+ * (workspace-draw-branch.ts) both land their pages through `hooks`. `planned` says whether its plan ever named a page.
103
+ */
104
+ export declare const followBranchRun: (args: {
105
+ launch: BranchLaunch;
106
+ runDir: string;
107
+ scope: "page" | "site";
108
+ concept: string;
109
+ source: Buffer;
110
+ sleep: (milliseconds: number) => Promise<void>;
111
+ log: (entry: Record<string, unknown>) => Promise<void>;
112
+ hooks: BranchHooks;
113
+ }) => Promise<{
114
+ exitCode: number;
115
+ planned: boolean;
116
+ branchDir: string;
117
+ }>;
118
+ export declare const runBranch: (env: RunnerEnv, op: SlateOp) => Promise<Outcome>;
119
+ export {};
120
+ //# sourceMappingURL=slate-branch-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slate-branch-runner.d.ts","sourceRoot":"","sources":["../src/slate-branch-runner.ts"],"names":[],"mappings":"AAUA,OAAO,EAA8B,KAAK,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGrG,OAAO,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE5E;;;;;;;;;;;;;;GAcG;AAEH,MAAM,MAAM,WAAW,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAA;CAAE,CAAC;AACtD,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,KAAK,WAAW,CAAC;AAWlF,+HAA+H;AAC/H,eAAO,MAAM,kBAAkB,EAAE,YAShC,CAAC;AAEF,4GAA4G;AAC5G,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC1C,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,gBAAgB,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AACpG,KAAK,UAAU,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAC/F,KAAK,IAAI,GAAG;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,OAAO,EAAE,UAAU,EAAE,CAAA;CAAE,CAAC;AAEzD,oGAAoG;AACpG,MAAM,MAAM,UAAU,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC;AAC7E,4HAA4H;AAC5H,MAAM,MAAM,SAAS,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7F,MAAM,MAAM,WAAW,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,CAAC;AAQ7E,qHAAqH;AACrH,eAAO,MAAM,WAAW,GAAI,OAAO,SAAS,SAAS,EAAE,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,UAAU,CAAA;CAAE,EAQ7F,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,OAAO,GAAI,MAAM,IAAI,KAAG;IAAE,KAAK,EAAE,SAAS,EAAE,CAAC;IAAC,OAAO,EAAE,WAAW,EAAE,CAAA;CAahF,CAAC;AAYF,eAAO,MAAM,cAAc,GAAU,WAAW,MAAM,KAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAkB3E,CAAC;AAiCF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,GAAI,QAAQ,IAAI,CAAC,gBAAgB,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC,KAAG,MAM7F,CAAC;AAEF,4HAA4H;AAC5H,MAAM,MAAM,WAAW,GAAG;IACxB,wGAAwG;IACxG,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3F,kGAAkG;IAClG,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAChD,uFAAuF;IACvF,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF,CAAC;AAuBF;;;;GAIG;AACH,eAAO,MAAM,eAAe,GAAU,MAAM;IAC1C,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,KAAK,EAAE,WAAW,CAAC;CACpB,KAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAkBpE,CAAC;AA4FF,eAAO,MAAM,SAAS,GAAU,KAAK,SAAS,EAAE,IAAI,OAAO,KAAG,OAAO,CAAC,OAAO,CA2B5E,CAAC"}