@12ui/design 0.2.12 → 0.2.14

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 (203) hide show
  1. package/README.md +44 -9
  2. package/dist/branch-client.d.ts +155 -0
  3. package/dist/branch-client.d.ts.map +1 -0
  4. package/dist/branch-client.js +179 -0
  5. package/dist/branch-client.js.map +1 -0
  6. package/dist/branch-completion.d.ts +37 -0
  7. package/dist/branch-completion.d.ts.map +1 -0
  8. package/dist/branch-completion.js +137 -0
  9. package/dist/branch-completion.js.map +1 -0
  10. package/dist/branch-dispatch-loop.d.ts +84 -0
  11. package/dist/branch-dispatch-loop.d.ts.map +1 -0
  12. package/dist/branch-dispatch-loop.js +206 -0
  13. package/dist/branch-dispatch-loop.js.map +1 -0
  14. package/dist/branch-downloads.d.ts +43 -0
  15. package/dist/branch-downloads.d.ts.map +1 -0
  16. package/dist/branch-downloads.js +94 -0
  17. package/dist/branch-downloads.js.map +1 -0
  18. package/dist/branch-execution-types.d.ts +54 -0
  19. package/dist/branch-execution-types.d.ts.map +1 -0
  20. package/dist/branch-execution-types.js +2 -0
  21. package/dist/branch-execution-types.js.map +1 -0
  22. package/dist/branch-execution.d.ts +18 -0
  23. package/dist/branch-execution.d.ts.map +1 -0
  24. package/dist/branch-execution.js +261 -0
  25. package/dist/branch-execution.js.map +1 -0
  26. package/dist/branch-identity.d.ts +71 -0
  27. package/dist/branch-identity.d.ts.map +1 -0
  28. package/dist/branch-identity.js +72 -0
  29. package/dist/branch-identity.js.map +1 -0
  30. package/dist/branch-materialize.d.ts +22 -0
  31. package/dist/branch-materialize.d.ts.map +1 -0
  32. package/dist/branch-materialize.js +47 -0
  33. package/dist/branch-materialize.js.map +1 -0
  34. package/dist/branch-page-conversion.d.ts +39 -0
  35. package/dist/branch-page-conversion.d.ts.map +1 -0
  36. package/dist/branch-page-conversion.js +206 -0
  37. package/dist/branch-page-conversion.js.map +1 -0
  38. package/dist/branch-plan.d.ts +63 -0
  39. package/dist/branch-plan.d.ts.map +1 -0
  40. package/dist/branch-plan.js +95 -0
  41. package/dist/branch-plan.js.map +1 -0
  42. package/dist/branch-progress.d.ts +75 -0
  43. package/dist/branch-progress.d.ts.map +1 -0
  44. package/dist/branch-progress.js +159 -0
  45. package/dist/branch-progress.js.map +1 -0
  46. package/dist/branch-run-record.d.ts +153 -0
  47. package/dist/branch-run-record.d.ts.map +1 -0
  48. package/dist/branch-run-record.js +94 -0
  49. package/dist/branch-run-record.js.map +1 -0
  50. package/dist/branch-schedule.d.ts +74 -0
  51. package/dist/branch-schedule.d.ts.map +1 -0
  52. package/dist/branch-schedule.js +130 -0
  53. package/dist/branch-schedule.js.map +1 -0
  54. package/dist/branch-status.d.ts +11 -0
  55. package/dist/branch-status.d.ts.map +1 -0
  56. package/dist/branch-status.js +115 -0
  57. package/dist/branch-status.js.map +1 -0
  58. package/dist/branch-viewport-normalization.d.ts +74 -0
  59. package/dist/branch-viewport-normalization.d.ts.map +1 -0
  60. package/dist/branch-viewport-normalization.js +120 -0
  61. package/dist/branch-viewport-normalization.js.map +1 -0
  62. package/dist/cli-arguments.d.ts.map +1 -1
  63. package/dist/cli-arguments.js +5 -0
  64. package/dist/cli-arguments.js.map +1 -1
  65. package/dist/cli-branch-command.d.ts +46 -0
  66. package/dist/cli-branch-command.d.ts.map +1 -0
  67. package/dist/cli-branch-command.js +426 -0
  68. package/dist/cli-branch-command.js.map +1 -0
  69. package/dist/cli-capabilities.d.ts +28 -0
  70. package/dist/cli-capabilities.d.ts.map +1 -1
  71. package/dist/cli-capabilities.js +29 -1
  72. package/dist/cli-capabilities.js.map +1 -1
  73. package/dist/cli-create-command.d.ts +21 -0
  74. package/dist/cli-create-command.d.ts.map +1 -0
  75. package/dist/cli-create-command.js +319 -0
  76. package/dist/cli-create-command.js.map +1 -0
  77. package/dist/cli-detach.d.ts +62 -0
  78. package/dist/cli-detach.d.ts.map +1 -0
  79. package/dist/cli-detach.js +123 -0
  80. package/dist/cli-detach.js.map +1 -0
  81. package/dist/cli-draft-command.d.ts +63 -0
  82. package/dist/cli-draft-command.d.ts.map +1 -0
  83. package/dist/cli-draft-command.js +220 -0
  84. package/dist/cli-draft-command.js.map +1 -0
  85. package/dist/cli-export-command.d.ts.map +1 -1
  86. package/dist/cli-export-command.js +2 -3
  87. package/dist/cli-export-command.js.map +1 -1
  88. package/dist/cli-image-batch-command.d.ts +21 -0
  89. package/dist/cli-image-batch-command.d.ts.map +1 -1
  90. package/dist/cli-image-batch-command.js +166 -54
  91. package/dist/cli-image-batch-command.js.map +1 -1
  92. package/dist/cli-image-batch-materialize.d.ts +27 -0
  93. package/dist/cli-image-batch-materialize.d.ts.map +1 -0
  94. package/dist/cli-image-batch-materialize.js +41 -0
  95. package/dist/cli-image-batch-materialize.js.map +1 -0
  96. package/dist/cli-image-batch-resume.d.ts +34 -0
  97. package/dist/cli-image-batch-resume.d.ts.map +1 -0
  98. package/dist/cli-image-batch-resume.js +175 -0
  99. package/dist/cli-image-batch-resume.js.map +1 -0
  100. package/dist/cli-image-command.d.ts.map +1 -1
  101. package/dist/cli-image-command.js +14 -2
  102. package/dist/cli-image-command.js.map +1 -1
  103. package/dist/cli-package-command.d.ts +18 -0
  104. package/dist/cli-package-command.d.ts.map +1 -0
  105. package/dist/cli-package-command.js +112 -0
  106. package/dist/cli-package-command.js.map +1 -0
  107. package/dist/cli-progress.d.ts +61 -0
  108. package/dist/cli-progress.d.ts.map +1 -1
  109. package/dist/cli-progress.js +53 -0
  110. package/dist/cli-progress.js.map +1 -1
  111. package/dist/cli-select-command.d.ts +12 -0
  112. package/dist/cli-select-command.d.ts.map +1 -0
  113. package/dist/cli-select-command.js +66 -0
  114. package/dist/cli-select-command.js.map +1 -0
  115. package/dist/cli.js +140 -7
  116. package/dist/cli.js.map +1 -1
  117. package/dist/create-identity.d.ts +25 -0
  118. package/dist/create-identity.d.ts.map +1 -0
  119. package/dist/create-identity.js +0 -0
  120. package/dist/create-identity.js.map +1 -0
  121. package/dist/draft-identity.d.ts +30 -0
  122. package/dist/draft-identity.d.ts.map +1 -0
  123. package/dist/draft-identity.js +0 -0
  124. package/dist/draft-identity.js.map +1 -0
  125. package/dist/draft-prompts.d.ts +35 -0
  126. package/dist/draft-prompts.d.ts.map +1 -0
  127. package/dist/draft-prompts.js +51 -0
  128. package/dist/draft-prompts.js.map +1 -0
  129. package/dist/draft-run.d.ts +32 -0
  130. package/dist/draft-run.d.ts.map +1 -0
  131. package/dist/draft-run.js +152 -0
  132. package/dist/draft-run.js.map +1 -0
  133. package/dist/draft-workspace.d.ts +90 -0
  134. package/dist/draft-workspace.d.ts.map +1 -0
  135. package/dist/draft-workspace.js +64 -0
  136. package/dist/draft-workspace.js.map +1 -0
  137. package/dist/image-batch-status.d.ts +42 -0
  138. package/dist/image-batch-status.d.ts.map +1 -0
  139. package/dist/image-batch-status.js +142 -0
  140. package/dist/image-batch-status.js.map +1 -0
  141. package/dist/image-dimensions.d.ts +12 -0
  142. package/dist/image-dimensions.d.ts.map +1 -0
  143. package/dist/image-dimensions.js +14 -0
  144. package/dist/image-dimensions.js.map +1 -0
  145. package/dist/image-generation-batch-attempt.d.ts +28 -0
  146. package/dist/image-generation-batch-attempt.d.ts.map +1 -0
  147. package/dist/image-generation-batch-attempt.js +48 -0
  148. package/dist/image-generation-batch-attempt.js.map +1 -0
  149. package/dist/image-generation-completion.d.ts +43 -0
  150. package/dist/image-generation-completion.d.ts.map +1 -0
  151. package/dist/image-generation-completion.js +54 -0
  152. package/dist/image-generation-completion.js.map +1 -0
  153. package/dist/image-generation-fs.d.ts +3 -0
  154. package/dist/image-generation-fs.d.ts.map +1 -0
  155. package/dist/image-generation-fs.js +23 -0
  156. package/dist/image-generation-fs.js.map +1 -0
  157. package/dist/image-generation-request.d.ts +13 -3
  158. package/dist/image-generation-request.d.ts.map +1 -1
  159. package/dist/image-generation-request.js +21 -19
  160. package/dist/image-generation-request.js.map +1 -1
  161. package/dist/image-generation-resume.d.ts +49 -0
  162. package/dist/image-generation-resume.d.ts.map +1 -0
  163. package/dist/image-generation-resume.js +96 -0
  164. package/dist/image-generation-resume.js.map +1 -0
  165. package/dist/image-generation-run.d.ts +11 -0
  166. package/dist/image-generation-run.d.ts.map +1 -1
  167. package/dist/image-generation-run.js +23 -9
  168. package/dist/image-generation-run.js.map +1 -1
  169. package/dist/image-generation-staging.d.ts +25 -0
  170. package/dist/image-generation-staging.d.ts.map +1 -0
  171. package/dist/image-generation-staging.js +80 -0
  172. package/dist/image-generation-staging.js.map +1 -0
  173. package/dist/index.d.ts +5 -0
  174. package/dist/index.d.ts.map +1 -1
  175. package/dist/index.js +4 -0
  176. package/dist/index.js.map +1 -1
  177. package/dist/legacy-skill-catalog.d.ts.map +1 -1
  178. package/dist/legacy-skill-catalog.js +133 -0
  179. package/dist/legacy-skill-catalog.js.map +1 -1
  180. package/dist/package-manifest-file.d.ts +21 -0
  181. package/dist/package-manifest-file.d.ts.map +1 -0
  182. package/dist/package-manifest-file.js +119 -0
  183. package/dist/package-manifest-file.js.map +1 -0
  184. package/dist/package-manifest-template.d.ts +23 -0
  185. package/dist/package-manifest-template.d.ts.map +1 -0
  186. package/dist/package-manifest-template.js +60 -0
  187. package/dist/package-manifest-template.js.map +1 -0
  188. package/dist/package-submission.d.ts +103 -0
  189. package/dist/package-submission.d.ts.map +1 -0
  190. package/dist/package-submission.js +173 -0
  191. package/dist/package-submission.js.map +1 -0
  192. package/dist/selection-record.d.ts +95 -0
  193. package/dist/selection-record.d.ts.map +1 -0
  194. package/dist/selection-record.js +121 -0
  195. package/dist/selection-record.js.map +1 -0
  196. package/package.json +1 -1
  197. package/skills/design/SKILL.md +55 -240
  198. package/skills/design-branch/SKILL.md +36 -116
  199. package/skills/design-convert/SKILL.md +62 -132
  200. package/skills/design-draft/SKILL.md +71 -135
  201. package/skills/design-search/SKILL.md +29 -78
  202. package/skills/design/references/continuation-contract.md +0 -60
  203. package/skills/design/references/selection-contract.md +0 -96
@@ -1 +1 @@
1
- {"version":3,"file":"cli-image-batch-command.js","sourceRoot":"","sources":["../src/cli-image-batch-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-image-batch-command.js","sourceRoot":"","sources":["../src/cli-image-batch-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { type ImageBatchCompletion } from './image-generation-completion.js';
2
+ export type ImageBatchCandidateIdentity = {
3
+ candidateId?: string;
4
+ outputPath: string;
5
+ idempotencyKey: string;
6
+ };
7
+ /**
8
+ * Move every candidate the provider settled — succeeded or failed — out of the
9
+ * hidden staging directory in one pass. Nothing is delivered mid-flight, so the
10
+ * candidates directory goes from empty to complete rather than through a
11
+ * half-written state that reads as failure.
12
+ */
13
+ export declare const materializeImageBatch: (candidates: readonly ImageBatchCandidateIdentity[]) => Promise<void>;
14
+ export declare const publishImageBatchCompletion: (args: {
15
+ manifestPath: string;
16
+ manifestSha256: string;
17
+ batchAttemptFile: string;
18
+ provider: string;
19
+ model: string;
20
+ resumed: boolean;
21
+ status: "succeeded" | "failed";
22
+ candidates: readonly ImageBatchCandidateIdentity[];
23
+ }) => Promise<{
24
+ completionPath: string;
25
+ completion: ImageBatchCompletion;
26
+ }>;
27
+ //# sourceMappingURL=cli-image-batch-materialize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-image-batch-materialize.d.ts","sourceRoot":"","sources":["../src/cli-image-batch-materialize.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EAC1B,MAAM,kCAAkC,CAAC;AAG1C,MAAM,MAAM,2BAA2B,GAAG;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AAMF;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,GAChC,YAAY,SAAS,2BAA2B,EAAE,KACjD,OAAO,CAAC,IAAI,CAId,CAAC;AAEF,eAAO,MAAM,2BAA2B,GAAU,MAAM;IACtD,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,UAAU,EAAE,SAAS,2BAA2B,EAAE,CAAC;CACpD,KAAG,OAAO,CAAC;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,oBAAoB,CAAA;CAAE,CA2BvE,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { imageBatchCompletionPath, summarizeImageBatchCandidates, writeImageBatchCompletion, } from './image-generation-completion.js';
2
+ import { materializeImageGeneration } from './image-generation-staging.js';
3
+ const identityId = (candidate, index) => (candidate.candidateId ?? String(index + 1));
4
+ /**
5
+ * Move every candidate the provider settled — succeeded or failed — out of the
6
+ * hidden staging directory in one pass. Nothing is delivered mid-flight, so the
7
+ * candidates directory goes from empty to complete rather than through a
8
+ * half-written state that reads as failure.
9
+ */
10
+ export const materializeImageBatch = async (candidates) => {
11
+ await Promise.all(candidates.map((candidate) => (materializeImageGeneration(candidate.outputPath))));
12
+ };
13
+ export const publishImageBatchCompletion = async (args) => {
14
+ const completionPath = imageBatchCompletionPath({
15
+ manifestPath: args.manifestPath,
16
+ outputPaths: args.candidates.map((candidate) => candidate.outputPath),
17
+ });
18
+ const candidates = await summarizeImageBatchCandidates(args.candidates.map((candidate, index) => ({
19
+ id: identityId(candidate, index),
20
+ outputPath: candidate.outputPath,
21
+ idempotencyKey: candidate.idempotencyKey,
22
+ })));
23
+ const completion = {
24
+ version: 1,
25
+ status: args.status,
26
+ manifestPath: args.manifestPath,
27
+ manifestSha256: args.manifestSha256,
28
+ batchAttemptFile: args.batchAttemptFile,
29
+ provider: args.provider,
30
+ model: args.model,
31
+ resumed: args.resumed,
32
+ completedAt: new Date().toISOString(),
33
+ candidateCount: candidates.length,
34
+ succeededCount: candidates.filter((candidate) => candidate.status === 'succeeded').length,
35
+ failedCount: candidates.filter((candidate) => candidate.status !== 'succeeded').length,
36
+ candidates,
37
+ };
38
+ await writeImageBatchCompletion(completionPath, completion);
39
+ return { completionPath, completion };
40
+ };
41
+ //# sourceMappingURL=cli-image-batch-materialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-image-batch-materialize.js","sourceRoot":"","sources":["../src/cli-image-batch-materialize.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,6BAA6B,EAC7B,yBAAyB,GAE1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,0BAA0B,EAAE,MAAM,+BAA+B,CAAC;AAQ3E,MAAM,UAAU,GAAG,CAAC,SAAsC,EAAE,KAAa,EAAU,EAAE,CAAC,CACpF,SAAS,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAC3C,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,EACxC,UAAkD,EACnC,EAAE;IACjB,MAAM,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAC9C,0BAA0B,CAAC,SAAS,CAAC,UAAU,CAAC,CACjD,CAAC,CAAC,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,2BAA2B,GAAG,KAAK,EAAE,IASjD,EAAyE,EAAE;IAC1E,MAAM,cAAc,GAAG,wBAAwB,CAAC;QAC9C,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,WAAW,EAAE,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC;KACtE,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,MAAM,6BAA6B,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;QAChG,EAAE,EAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC;QAChC,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,cAAc,EAAE,SAAS,CAAC,cAAc;KACzC,CAAC,CAAC,CAAC,CAAC;IACL,MAAM,UAAU,GAAyB;QACvC,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;QACvC,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACrC,cAAc,EAAE,UAAU,CAAC,MAAM;QACjC,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;QACzF,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;QACtF,UAAU;KACX,CAAC;IACF,MAAM,yBAAyB,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;IAC5D,OAAO,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC;AACxC,CAAC,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { ensembleImage } from '@just-every/ensemble';
2
+ import { type ImageBatchAttempt } from './image-generation-batch-attempt.js';
3
+ import type { ImageGenerationRequest } from './image-generation-request.js';
4
+ import { type ImageGenerationResumeState } from './image-generation-resume.js';
5
+ import { preflightImageProvider } from './image-provider-preflight.js';
6
+ /**
7
+ * THE redirect for a batch nobody has dispatched yet. It names the next command
8
+ * and its duration, and it deliberately shares no vocabulary with the recovery
9
+ * report — no counts, no "unrecoverable" — because the failure mode being fixed
10
+ * here is a caller reading a recovery report as a provider outage.
11
+ */
12
+ export declare const neverDispatchedBatchMessage: (manifestPath: string) => string;
13
+ export declare const describeBatchRecovery: (states: readonly ImageGenerationResumeState[]) => string;
14
+ /**
15
+ * Recover a batch whose candidates were dispatched but never delivered.
16
+ *
17
+ * Every candidate is classified from its own durable ledger entry first. Work
18
+ * that was already bought is delivered from staging; work that provably was not
19
+ * bought, or that the provider will return again for free under the recorded
20
+ * idempotency key, is re-requested under that same identity. Anything else is
21
+ * refused rather than bought a second time.
22
+ */
23
+ export declare const resumeImageBatchCommand: (args: {
24
+ manifestPath: string;
25
+ manifestSha256: string;
26
+ batchAttemptFile: string;
27
+ batchAttempt: ImageBatchAttempt;
28
+ requests: ImageGenerationRequest[];
29
+ dependencies: {
30
+ generate?: typeof ensembleImage;
31
+ preflight?: typeof preflightImageProvider;
32
+ };
33
+ }) => Promise<void>;
34
+ //# sourceMappingURL=cli-image-batch-resume.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-image-batch-resume.d.ts","sourceRoot":"","sources":["../src/cli-image-batch-resume.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAOrD,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAE5E,OAAO,EAIL,KAAK,0BAA0B,EAChC,MAAM,8BAA8B,CAAC;AAStC,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAcvE;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,GAAI,cAAc,MAAM,KAAG,MAKlE,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAChC,QAAQ,SAAS,0BAA0B,EAAE,KAC5C,MASF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,GAAU,MAAM;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,iBAAiB,CAAC;IAChC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;IACnC,YAAY,EAAE;QACZ,QAAQ,CAAC,EAAE,OAAO,aAAa,CAAC;QAChC,SAAS,CAAC,EAAE,OAAO,sBAAsB,CAAC;KAC3C,CAAC;CACH,KAAG,OAAO,CAAC,IAAI,CAqJf,CAAC"}
@@ -0,0 +1,175 @@
1
+ import { materializeImageBatch, publishImageBatchCompletion, } from './cli-image-batch-materialize.js';
2
+ import { writeBatchAttempt, } from './image-generation-batch-attempt.js';
3
+ import { prepareImageGenerationRequest } from './image-generation-request.js';
4
+ import { classifyImageGenerationResume, describeResumeState, resumeStateSummary, } from './image-generation-resume.js';
5
+ import { dispatchImageGeneration, markImageGenerationDispatched, resumeReservedImageGeneration, } from './image-generation-run.js';
6
+ import { materializeImageGeneration } from './image-generation-staging.js';
7
+ import { summarizeImageGenerationUsage } from './image-generation-usage.js';
8
+ import { preflightImageProvider } from './image-provider-preflight.js';
9
+ const errorMessage = (error) => (error instanceof Error ? error.message : String(error));
10
+ const identities = (requests) => requests.map((request) => ({
11
+ ...(request.candidateId ? { candidateId: request.candidateId } : {}),
12
+ outputPath: request.outputPath,
13
+ idempotencyKey: request.idempotencyKey,
14
+ }));
15
+ /**
16
+ * THE redirect for a batch nobody has dispatched yet. It names the next command
17
+ * and its duration, and it deliberately shares no vocabulary with the recovery
18
+ * report — no counts, no "unrecoverable" — because the failure mode being fixed
19
+ * here is a caller reading a recovery report as a provider outage.
20
+ */
21
+ export const neverDispatchedBatchMessage = (manifestPath) => (`This batch has never been dispatched — there is nothing to resume, and nothing has failed.`
22
+ + ` Run \`12ui image generate-batch --manifest ${manifestPath}\` to dispatch it; it blocks for`
23
+ + ' about 90 seconds and writes every candidate at once when it finishes.'
24
+ + ' Use --resume only after a dispatch you watched start and lose its output.');
25
+ export const describeBatchRecovery = (states) => {
26
+ const summary = resumeStateSummary(states);
27
+ const parts = [
28
+ `${summary.materialized} already on disk`,
29
+ `${summary.stageable} generated and awaiting delivery`,
30
+ `${summary.redispatchable} recoverable without new spend`,
31
+ `${summary.unrecoverable} unrecoverable`,
32
+ ];
33
+ return `${states.length} candidate(s): ${parts.join(', ')}`;
34
+ };
35
+ /**
36
+ * Recover a batch whose candidates were dispatched but never delivered.
37
+ *
38
+ * Every candidate is classified from its own durable ledger entry first. Work
39
+ * that was already bought is delivered from staging; work that provably was not
40
+ * bought, or that the provider will return again for free under the recorded
41
+ * idempotency key, is re-requested under that same identity. Anything else is
42
+ * refused rather than bought a second time.
43
+ */
44
+ export const resumeImageBatchCommand = async (args) => {
45
+ const { batchAttempt, batchAttemptFile, manifestPath, manifestSha256, requests } = args;
46
+ const states = await Promise.all(requests.map((request) => classifyImageGenerationResume({
47
+ outputPath: request.outputPath,
48
+ ...(request.candidateId ? { candidateId: request.candidateId } : {}),
49
+ })));
50
+ const summary = resumeStateSummary(states);
51
+ const candidates = identities(requests);
52
+ if (summary.stageable === 0 && summary.redispatchable === 0 && summary.unrecoverable === 0) {
53
+ // Nothing is outstanding. This is the state the eleven benchmark runs were
54
+ // actually in when they gave up: the batch had finished. Republish the
55
+ // sentinel so the caller can read what it already owns, then refuse — a
56
+ // completed batch is never re-run, because that would be a second purchase.
57
+ const { completionPath, completion } = await publishImageBatchCompletion({
58
+ manifestPath,
59
+ manifestSha256,
60
+ batchAttemptFile,
61
+ provider: batchAttempt.provider,
62
+ model: batchAttempt.model,
63
+ resumed: true,
64
+ status: 'succeeded',
65
+ candidates,
66
+ });
67
+ throw new Error(`Image batch already completed; every candidate is on disk and nothing can be resumed.`
68
+ + ` Re-running it would be a second paid call. Candidates: ${completion.candidates
69
+ .map((candidate) => `${candidate.id} ${candidate.outputPath}`
70
+ + ` sha256=${candidate.sha256 ?? 'unknown'} bytes=${candidate.bytes ?? 0}`)
71
+ .join('; ')}. Completion sentinel: ${completionPath}`);
72
+ }
73
+ const delivered = states.filter((state) => state.disposition === 'stageable');
74
+ await Promise.all(delivered.map((state) => materializeImageGeneration(state.outputPath)));
75
+ const redispatch = states.filter((state) => state.disposition === 'redispatchable');
76
+ const results = [];
77
+ const errors = [];
78
+ if (redispatch.length > 0) {
79
+ const outstanding = new Map(redispatch.map((state) => [state.outputPath, state]));
80
+ const pending = requests.filter((request) => outstanding.has(request.outputPath));
81
+ const preflight = await (args.dependencies.preflight ?? preflightImageProvider)({
82
+ provider: batchAttempt.requestedProvider,
83
+ projectRoot: batchAttempt.projectRoot,
84
+ });
85
+ if (preflight.provider !== batchAttempt.provider) {
86
+ throw new Error(`Refusing to resume with ${preflight.provider} because the batch was dispatched to`
87
+ + ` ${batchAttempt.provider}; switching providers after dispatch is never a resume.`);
88
+ }
89
+ const prepared = await Promise.all(pending.map((request) => (prepareImageGenerationRequest(request, { mode: 'resume' }))));
90
+ const reserved = prepared.map((request) => resumeReservedImageGeneration({
91
+ request,
92
+ preflight,
93
+ attempt: outstanding.get(request.outputPath)?.attempt ?? {
94
+ schemaVersion: 4,
95
+ status: 'prepared',
96
+ idempotencyKey: request.idempotencyKey,
97
+ provider: preflight.provider,
98
+ model: preflight.model,
99
+ providerIdempotencyEnforced: preflight.provider === 'openai',
100
+ providerEvidence: preflight.provider === 'codex'
101
+ ? { codexVersion: preflight.codexVersion }
102
+ : { keySource: preflight.keySource },
103
+ prompt: request.prompt,
104
+ promptSource: request.promptSource,
105
+ promptSha256: request.promptSha256,
106
+ reference: { path: request.reference.path, sha256: request.reference.sha256 },
107
+ referenceMode: request.referenceMode,
108
+ outputPath: request.outputPath,
109
+ preparedAt: new Date().toISOString(),
110
+ },
111
+ }));
112
+ await Promise.all(reserved.map((item) => markImageGenerationDispatched(item)));
113
+ const settled = await Promise.allSettled(reserved.map((item) => (dispatchImageGeneration(item, { generate: args.dependencies.generate }))));
114
+ for (const outcome of settled) {
115
+ if (outcome.status === 'fulfilled')
116
+ results.push(outcome.value);
117
+ else
118
+ errors.push(errorMessage(outcome.reason));
119
+ }
120
+ batchAttempt.accounting = summarizeImageGenerationUsage(reserved.map((item) => item.attempt.usage), preflight.provider);
121
+ }
122
+ await materializeImageBatch(candidates);
123
+ const unrecoverable = states.filter((state) => state.disposition === 'unrecoverable');
124
+ const failed = errors.length > 0 || unrecoverable.length > 0;
125
+ const { completionPath, completion } = await publishImageBatchCompletion({
126
+ manifestPath,
127
+ manifestSha256,
128
+ batchAttemptFile,
129
+ provider: batchAttempt.provider,
130
+ model: batchAttempt.model,
131
+ resumed: true,
132
+ status: failed ? 'failed' : 'succeeded',
133
+ candidates,
134
+ });
135
+ batchAttempt.status = failed ? 'failed' : 'succeeded';
136
+ batchAttempt.completedAt = new Date().toISOString();
137
+ batchAttempt.completionPath = completionPath;
138
+ batchAttempt.resumedAt = [...batchAttempt.resumedAt ?? [], new Date().toISOString()];
139
+ if (results.length > 0)
140
+ batchAttempt.results = [...batchAttempt.results ?? [], ...results];
141
+ if (failed) {
142
+ batchAttempt.errors = [
143
+ ...errors,
144
+ ...unrecoverable.map((state) => describeResumeState(state)),
145
+ ];
146
+ }
147
+ await writeBatchAttempt(batchAttemptFile, batchAttempt);
148
+ if (failed) {
149
+ throw new AggregateError(batchAttempt.errors ?? [], `Image batch resume recovered ${completion.succeededCount} of ${completion.candidateCount}`
150
+ + ` candidate(s) without new spend, and cannot recover the rest.`
151
+ + ` ${describeBatchRecovery(states)}.`
152
+ // Say what this is NOT. A recovery report that only counts what it could
153
+ // not recover reads as a dead provider, and a caller that believes the
154
+ // provider is dead abandons the pipeline and hand-writes the page.
155
+ + ' This is a delivery gap on candidates that were already dispatched and'
156
+ + ' already paid for — it is not a provider outage, and image generation is not'
157
+ + ` broken. Any candidate listed as already on disk is valid: read it and carry on.`
158
+ + ' Give any unrecoverable candidate a new output path and idempotency key to buy'
159
+ + ` it again. Evidence: ${batchAttemptFile}.`
160
+ + ` Completion sentinel: ${completionPath}`);
161
+ }
162
+ console.log(JSON.stringify({
163
+ provider: batchAttempt.provider,
164
+ model: batchAttempt.model,
165
+ manifestPath,
166
+ batchAttemptFile,
167
+ completionPath,
168
+ resumed: true,
169
+ deliveredFromStaging: delivered.length,
170
+ redispatchedWithoutNewSpend: results.length,
171
+ accounting: batchAttempt.accounting,
172
+ candidates: completion.candidates,
173
+ }, null, 2));
174
+ };
175
+ //# sourceMappingURL=cli-image-batch-resume.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-image-batch-resume.js","sourceRoot":"","sources":["../src/cli-image-batch-resume.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cli-image-command.d.ts","sourceRoot":"","sources":["../src/cli-image-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAgB/D,OAAO,EAGL,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAoCvC,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,GAAG,SAAS,EAC1B,OAAO,QAAQ,EACf,eAAc;IACZ,QAAQ,CAAC,EAAE,OAAO,aAAa,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,sBAAsB,CAAC;CACtC,KACL,OAAO,CAAC,IAAI,CA0Dd,CAAC"}
1
+ {"version":3,"file":"cli-image-command.d.ts","sourceRoot":"","sources":["../src/cli-image-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAiB/D,OAAO,EAGL,sBAAsB,EACvB,MAAM,+BAA+B,CAAC;AAoCvC,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,GAAG,SAAS,EAC1B,OAAO,QAAQ,EACf,eAAc;IACZ,QAAQ,CAAC,EAAE,OAAO,aAAa,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,sBAAsB,CAAC;CACtC,KACL,OAAO,CAAC,IAAI,CAoEd,CAAC"}
@@ -3,6 +3,7 @@ import path from 'node:path';
3
3
  import { stringFlag } from './cli-arguments.js';
4
4
  import { dispatchImageGeneration, markImageGenerationDispatched, reserveImageGeneration, } from './image-generation-run.js';
5
5
  import { IMAGE_GENERATION_ASPECTS, IMAGE_GENERATION_REFERENCE_MODES, isImageGenerationAspect, isImageGenerationReferenceMode, prepareImageGenerationRequest, } from './image-generation-request.js';
6
+ import { materializeImageGeneration } from './image-generation-staging.js';
6
7
  import { IMAGE_GENERATION_PROVIDERS, isImageGenerationProvider, preflightImageProvider, } from './image-provider-preflight.js';
7
8
  import { normalizeOptionalIdempotencyKey } from './idempotency-key.js';
8
9
  const referenceFlag = (flags) => {
@@ -86,7 +87,18 @@ export const runImageCommand = async (action, flags, dependencies = {}) => {
86
87
  });
87
88
  const reserved = await reserveImageGeneration({ request, preflight });
88
89
  await markImageGenerationDispatched(reserved);
89
- const result = await dispatchImageGeneration(reserved, { generate: dependencies.generate });
90
- console.log(JSON.stringify(result, null, 2));
90
+ try {
91
+ const result = await dispatchImageGeneration(reserved, { generate: dependencies.generate });
92
+ // The PNG and its completed ledger entry appear together. Until this
93
+ // returns, the destination directory holds neither.
94
+ await materializeImageGeneration(outputPath);
95
+ console.log(JSON.stringify(result, null, 2));
96
+ }
97
+ catch (error) {
98
+ // Terminal failures still owe the caller their evidence at the documented
99
+ // path, even though there is no image to deliver.
100
+ await materializeImageGeneration(outputPath).catch(() => undefined);
101
+ throw error;
102
+ }
91
103
  };
92
104
  //# sourceMappingURL=cli-image-command.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cli-image-command.js","sourceRoot":"","sources":["../src/cli-image-command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli-image-command.js","sourceRoot":"","sources":["../src/cli-image-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { type CliFlags } from './cli-arguments.js';
2
+ import { readConversionConfig } from './config.js';
3
+ import { TwelveUiConversionPackageClient } from './package-client.js';
4
+ import { type PackageSubmissionResult } from './package-submission.js';
5
+ /**
6
+ * `12ui convert package` — the ordered-viewport submission that had no CLI at
7
+ * all. Without it the terminal step of the branch path was the least supported
8
+ * operation in the product, and an agent that got that far fell back to
9
+ * per-image conversion, losing page order and stitching.
10
+ */
11
+ export declare const PACKAGE_USAGE: string;
12
+ /** A multi-viewport page converts its viewports in parallel, then composes. */
13
+ export declare const PACKAGE_DURATION_SECONDS = 360;
14
+ export declare const runPackageCommand: (flags: CliFlags, dependencies?: {
15
+ readConfig?: typeof readConversionConfig;
16
+ createClient?: (config: ReturnType<typeof readConversionConfig>) => TwelveUiConversionPackageClient;
17
+ }) => Promise<PackageSubmissionResult>;
18
+ //# sourceMappingURL=cli-package-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-package-command.d.ts","sourceRoot":"","sources":["../src/cli-package-command.ts"],"names":[],"mappings":"AAGA,OAAO,EAA2B,KAAK,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC5E,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAGnD,OAAO,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAEtE,OAAO,EAIL,KAAK,uBAAuB,EAC7B,MAAM,yBAAyB,CAAC;AAGjC;;;;;GAKG;AAEH,eAAO,MAAM,aAAa,QAEmC,CAAC;AAE9D,+EAA+E;AAC/E,eAAO,MAAM,wBAAwB,MAAM,CAAC;AA0B5C,eAAO,MAAM,iBAAiB,GAC5B,OAAO,QAAQ,EACf,eAAc;IACZ,UAAU,CAAC,EAAE,OAAO,oBAAoB,CAAC;IACzC,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,KAAK,+BAA+B,CAAC;CAChG,KACL,OAAO,CAAC,uBAAuB,CA+EjC,CAAC"}
@@ -0,0 +1,112 @@
1
+ import { stat } from 'node:fs/promises';
2
+ import path from 'node:path';
3
+ import { booleanFlag, stringFlag } from './cli-arguments.js';
4
+ import { readConversionConfig } from './config.js';
5
+ import { conversionPackageKey } from './branch-identity.js';
6
+ import { normalizeOptionalIdempotencyKey } from './idempotency-key.js';
7
+ import { TwelveUiConversionPackageClient } from './package-client.js';
8
+ import { readLocalPackageManifest } from './package-manifest-file.js';
9
+ import { PACKAGE_RESULT_FILENAME, submitConversionPackage, writePackageResultRecord, } from './package-submission.js';
10
+ import { formatDuration, nextActionLine } from './cli-progress.js';
11
+ /**
12
+ * `12ui convert package` — the ordered-viewport submission that had no CLI at
13
+ * all. Without it the terminal step of the branch path was the least supported
14
+ * operation in the product, and an agent that got that far fell back to
15
+ * per-image conversion, losing page order and stitching.
16
+ */
17
+ export const PACKAGE_USAGE = 'Usage: 12ui convert package --manifest <package.json>'
18
+ + ' --out-dir <directory> [--idempotency-key <key>] [--timeout-ms <ms>] [--wait] [--quiet]'
19
+ + '\n 12ui convert package --template > package.json';
20
+ /** A multi-viewport page converts its viewports in parallel, then composes. */
21
+ export const PACKAGE_DURATION_SECONDS = 360;
22
+ const parseTimeoutMs = (value) => {
23
+ if (value === undefined)
24
+ return undefined;
25
+ const timeoutMs = Number(value);
26
+ if (!Number.isFinite(timeoutMs) || timeoutMs < 1_000) {
27
+ throw new Error('--timeout-ms must be a number of at least 1000');
28
+ }
29
+ return Math.floor(timeoutMs);
30
+ };
31
+ const refuseExistingResult = async (outDir) => {
32
+ const existing = path.join(outDir, PACKAGE_RESULT_FILENAME);
33
+ try {
34
+ await stat(existing);
35
+ }
36
+ catch (error) {
37
+ if (error.code === 'ENOENT')
38
+ return;
39
+ throw error;
40
+ }
41
+ throw new Error(`A package result already exists at ${existing}. It names the package id and every page's`
42
+ + ' conversion id — read it back rather than submitting the same pages again, or choose a'
43
+ + ' new --out-dir if you genuinely want another package.');
44
+ };
45
+ export const runPackageCommand = async (flags, dependencies = {}) => {
46
+ const manifestFlag = stringFlag(flags, 'manifest')?.trim();
47
+ const outDirFlag = stringFlag(flags, 'out-dir')?.trim();
48
+ if (!manifestFlag || !outDirFlag)
49
+ throw new Error(PACKAGE_USAGE);
50
+ const manifestPath = path.resolve(manifestFlag);
51
+ const outDir = path.resolve(outDirFlag);
52
+ const quiet = booleanFlag(flags, 'quiet');
53
+ await refuseExistingResult(outDir);
54
+ const manifest = await readLocalPackageManifest(manifestPath);
55
+ const idempotencyKey = normalizeOptionalIdempotencyKey(stringFlag(flags, 'idempotency-key'), '--idempotency-key') ?? conversionPackageKey({
56
+ manifestSha256: manifest.manifestSha256,
57
+ output: manifest.output,
58
+ });
59
+ const config = (dependencies.readConfig ?? readConversionConfig)({
60
+ origin: stringFlag(flags, 'origin'),
61
+ apiKey: stringFlag(flags, 'api-key'),
62
+ });
63
+ const client = (dependencies.createClient ?? ((value) => (new TwelveUiConversionPackageClient(value))))(config);
64
+ const viewportCount = manifest.pages.reduce((total, page) => total + page.viewports.length, 0);
65
+ if (!quiet) {
66
+ process.stderr.write(`12ui convert package — ${manifest.pages.length} page(s), ${viewportCount} viewport(s)`
67
+ + ` to ${manifest.output}; expect about ${formatDuration(PACKAGE_DURATION_SECONDS)}\n`);
68
+ }
69
+ const startedAt = Date.now();
70
+ const result = await submitConversionPackage({
71
+ client,
72
+ outDir,
73
+ submission: {
74
+ output: manifest.output,
75
+ ...(manifest.model ? { model: manifest.model } : {}),
76
+ ...(manifest.responsiveQuality ? { responsiveQuality: manifest.responsiveQuality } : {}),
77
+ pages: manifest.pages,
78
+ idempotencyKey,
79
+ },
80
+ ...(parseTimeoutMs(stringFlag(flags, 'timeout-ms')) === undefined
81
+ ? {}
82
+ : { timeoutMs: parseTimeoutMs(stringFlag(flags, 'timeout-ms')) }),
83
+ onSubmitted: quiet
84
+ ? undefined
85
+ : (packageId) => {
86
+ process.stderr.write(`12ui convert package ${packageId} submitted.\n${nextActionLine({
87
+ what: 'A multi-viewport page conversion',
88
+ typicalSeconds: PACKAGE_DURATION_SECONDS,
89
+ statusCommand: `GET /api/v1/convert/package/${packageId}`,
90
+ waitHint: 'or leave this command running, which is what --wait already does by default',
91
+ })}\n`);
92
+ },
93
+ onProgress: quiet
94
+ ? undefined
95
+ : (event) => {
96
+ const elapsed = formatDuration((Date.now() - startedAt) / 1000);
97
+ const percent = event.percent === undefined ? '' : ` ${event.percent}%`;
98
+ process.stderr.write(`[${elapsed}] package: ${event.stage}${percent}\n`);
99
+ },
100
+ });
101
+ const resultPath = await writePackageResultRecord(outDir, result);
102
+ const reported = { ...result, resultPath };
103
+ console.log(JSON.stringify({ manifestPath, outDir, ...reported }, null, 2));
104
+ const failed = reported.pages.filter((page) => page.status === 'failed');
105
+ if (failed.length > 0) {
106
+ throw new Error(`Package ${reported.packageId} converted ${reported.pages.length - failed.length} of`
107
+ + ` ${reported.pages.length} page(s). Failed: ${failed.map((page) => page.id).join(', ')}.`
108
+ + ` Evidence: ${resultPath}`);
109
+ }
110
+ return reported;
111
+ };
112
+ //# sourceMappingURL=cli-package-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-package-command.js","sourceRoot":"","sources":["../src/cli-package-command.ts"],"names":[],"mappings":"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"}
@@ -20,8 +20,69 @@ export declare const CONVERSION_DURATION_HINTS: {
20
20
  readonly fused: 300;
21
21
  };
22
22
  export type ConversionDurationHintKind = keyof typeof CONVERSION_DURATION_HINTS;
23
+ /**
24
+ * Every long operation's typical wall time, in one place, so a status line, a
25
+ * skill sentence, and a capability document can never quote three different
26
+ * numbers for the same wait.
27
+ */
28
+ export declare const OPERATION_DURATION_HINTS: {
29
+ /** One generated candidate from the local image provider. */
30
+ readonly imageCandidate: 90;
31
+ /** Four candidates, started concurrently. */
32
+ readonly imageBatch: 90;
33
+ /** The build claim: the planner runs inline and buys no image. */
34
+ readonly branchClaim: 15;
35
+ /** One branch screen. The server's own provider budget is 150 s. */
36
+ readonly branchScreen: 90;
37
+ readonly branchScreenBudget: 150;
38
+ /** A whole `--scope page` run: serial trunk continuations plus one package. */
39
+ readonly branchPage: 720;
40
+ /** A whole `--scope site` run: several pages, one package each. */
41
+ readonly branchSite: 1200;
42
+ /** One package conversion of a multi-viewport page to responsive HTML. */
43
+ readonly package: 360;
44
+ /** image -> LayerDoc. Extraction plus materialization. */
45
+ readonly convert: 240;
46
+ /** A responsive HTML export run on its own, after the conversion finished. */
47
+ readonly export: 240;
48
+ /**
49
+ * Fused convert + export. The export's reference and anchor conversions run
50
+ * alongside the conversion, so the bundle costs about the slower half plus
51
+ * assembly rather than the sum of both.
52
+ */
53
+ readonly fused: 300;
54
+ };
55
+ export type OperationDurationHintKind = keyof typeof OPERATION_DURATION_HINTS;
23
56
  export declare const formatDuration: (seconds: number) => string;
24
57
  export declare const durationHint: (kind: ConversionDurationHintKind) => string;
58
+ /**
59
+ * `45s elapsed, ~90s typical`. A bare elapsed time reads as a stall; the pair
60
+ * is what tells a caller the wait is still inside the expected envelope.
61
+ */
62
+ export declare const elapsedAgainstTypical: (elapsedSeconds: number, typicalSeconds: number) => string;
63
+ /**
64
+ * THE mandatory closing line of any output that is not yet terminal.
65
+ *
66
+ * A poll surface that answers with bare absence is what makes a model conclude
67
+ * the process stalled and improvise around it. Every not-yet-done response ends
68
+ * by naming the typical duration, the exact command that narrates progress, and
69
+ * the blocking alternative — so the caller can sleep, schedule, or block
70
+ * according to what it can actually do.
71
+ */
72
+ export declare const nextActionLine: (args: {
73
+ what: string;
74
+ typicalSeconds: number;
75
+ statusCommand: string;
76
+ checkAgainSeconds?: number;
77
+ waitHint?: string;
78
+ }) => string;
79
+ /** `3 complete, 2 generating, 4 waiting, 0 blocked` — zeros included on purpose. */
80
+ export declare const narrateCounts: (counts: readonly {
81
+ label: string;
82
+ count: number;
83
+ detail?: string;
84
+ }[]) => string;
85
+ export declare const secondsSince: (iso: string | undefined, now: number) => number | undefined;
25
86
  export declare const stageLabel: (stage: string) => string;
26
87
  export type ProgressReporter = {
27
88
  onProgress: (operation: ConversionOperation) => void;