@12ui/design 0.2.56 → 0.2.58
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.
- package/SKILL.md +1 -1
- package/dist/artifact-materializer.d.ts.map +1 -1
- package/dist/artifact-materializer.js +4 -1
- package/dist/artifact-materializer.js.map +1 -1
- package/dist/branch-client.d.ts +86 -2
- package/dist/branch-client.d.ts.map +1 -1
- package/dist/branch-client.js +31 -0
- package/dist/branch-client.js.map +1 -1
- package/dist/cli-arguments.d.ts.map +1 -1
- package/dist/cli-arguments.js +3 -1
- package/dist/cli-arguments.js.map +1 -1
- package/dist/cli-capabilities.d.ts +1 -1
- package/dist/cli-conversion-derivation.js +2 -2
- package/dist/cli-conversion-derivation.js.map +1 -1
- package/dist/cli-convert-command.d.ts +2 -0
- package/dist/cli-convert-command.d.ts.map +1 -1
- package/dist/cli-convert-command.js +176 -38
- package/dist/cli-convert-command.js.map +1 -1
- package/dist/cli-corpus-command.js +2 -2
- package/dist/cli-corpus-command.js.map +1 -1
- package/dist/cli-corpus-evidence.d.ts.map +1 -1
- package/dist/cli-corpus-evidence.js +2 -1
- package/dist/cli-corpus-evidence.js.map +1 -1
- package/dist/cli-corpus-reference-downloads.d.ts +1 -0
- package/dist/cli-corpus-reference-downloads.d.ts.map +1 -1
- package/dist/cli-corpus-reference-downloads.js +13 -3
- package/dist/cli-corpus-reference-downloads.js.map +1 -1
- package/dist/cli-corpus-types.d.ts +2 -0
- package/dist/cli-corpus-types.d.ts.map +1 -1
- package/dist/cli-draft-command.d.ts +9 -0
- package/dist/cli-draft-command.d.ts.map +1 -1
- package/dist/cli-draft-command.js +26 -1
- package/dist/cli-draft-command.js.map +1 -1
- package/dist/cli-help/design.d.ts +7 -4
- package/dist/cli-help/design.d.ts.map +1 -1
- package/dist/cli-help/design.js +23 -6
- package/dist/cli-help/design.js.map +1 -1
- package/dist/cli-help/index.d.ts +9 -6
- package/dist/cli-help/index.d.ts.map +1 -1
- package/dist/cli-help/meta.d.ts +2 -2
- package/dist/cli-help/meta.d.ts.map +1 -1
- package/dist/cli-help/meta.js +4 -1
- package/dist/cli-help/meta.js.map +1 -1
- package/dist/cli-improve-command.d.ts.map +1 -1
- package/dist/cli-improve-command.js +273 -28
- package/dist/cli-improve-command.js.map +1 -1
- package/dist/cli-redesign-command.d.ts.map +1 -1
- package/dist/cli-redesign-command.js +97 -24
- package/dist/cli-redesign-command.js.map +1 -1
- package/dist/cli-run.d.ts.map +1 -1
- package/dist/cli-run.js +13 -3
- package/dist/cli-run.js.map +1 -1
- package/dist/cli-spend-command.d.ts +12 -1
- package/dist/cli-spend-command.d.ts.map +1 -1
- package/dist/cli-spend-command.js +94 -2
- package/dist/cli-spend-command.js.map +1 -1
- package/dist/cli-usage.js +5 -5
- package/dist/cli-usage.js.map +1 -1
- package/dist/concept-input.d.ts +6 -56
- package/dist/concept-input.d.ts.map +1 -1
- package/dist/concept-input.js +6 -65
- package/dist/concept-input.js.map +1 -1
- package/dist/conversion-client.d.ts +92 -3
- package/dist/conversion-client.d.ts.map +1 -1
- package/dist/conversion-client.js +317 -23
- package/dist/conversion-client.js.map +1 -1
- package/dist/corpus-client.d.ts +7 -1
- package/dist/corpus-client.d.ts.map +1 -1
- package/dist/corpus-client.js +3 -2
- package/dist/corpus-client.js.map +1 -1
- package/dist/corpus-reference-download-retry.d.ts +68 -0
- package/dist/corpus-reference-download-retry.d.ts.map +1 -0
- package/dist/corpus-reference-download-retry.js +123 -0
- package/dist/corpus-reference-download-retry.js.map +1 -0
- package/dist/corpus-request-error.d.ts +17 -0
- package/dist/corpus-request-error.d.ts.map +1 -0
- package/dist/corpus-request-error.js +21 -0
- package/dist/corpus-request-error.js.map +1 -0
- package/dist/draft-run.d.ts +15 -0
- package/dist/draft-run.d.ts.map +1 -1
- package/dist/draft-run.js +32 -5
- package/dist/draft-run.js.map +1 -1
- package/dist/draft-workspace.d.ts +2 -1
- package/dist/draft-workspace.d.ts.map +1 -1
- package/dist/draft-workspace.js.map +1 -1
- package/dist/hosted-draft-identity.d.ts +9 -0
- package/dist/hosted-draft-identity.d.ts.map +1 -1
- package/dist/hosted-draft-identity.js +2 -0
- package/dist/hosted-draft-identity.js.map +1 -1
- package/dist/improve-added-specs.d.ts +12 -31
- package/dist/improve-added-specs.d.ts.map +1 -1
- package/dist/improve-added-specs.js +64 -152
- package/dist/improve-added-specs.js.map +1 -1
- package/dist/improve-artifact-writer.d.ts +13 -0
- package/dist/improve-artifact-writer.d.ts.map +1 -0
- package/dist/improve-artifact-writer.js +27 -0
- package/dist/improve-artifact-writer.js.map +1 -0
- package/dist/improve-bootstrap-history.d.ts +21 -0
- package/dist/improve-bootstrap-history.d.ts.map +1 -0
- package/dist/improve-bootstrap-history.js +43 -0
- package/dist/improve-bootstrap-history.js.map +1 -0
- package/dist/improve-bootstrap-secret.d.ts +35 -0
- package/dist/improve-bootstrap-secret.d.ts.map +1 -0
- package/dist/improve-bootstrap-secret.js +61 -0
- package/dist/improve-bootstrap-secret.js.map +1 -0
- package/dist/improve-branch-stage.d.ts +10 -0
- package/dist/improve-branch-stage.d.ts.map +1 -0
- package/dist/improve-branch-stage.js +325 -0
- package/dist/improve-branch-stage.js.map +1 -0
- package/dist/improve-capture-redirect.d.ts +65 -0
- package/dist/improve-capture-redirect.d.ts.map +1 -0
- package/dist/improve-capture-redirect.js +85 -0
- package/dist/improve-capture-redirect.js.map +1 -0
- package/dist/improve-capture-words.d.ts +43 -0
- package/dist/improve-capture-words.d.ts.map +1 -0
- package/dist/improve-capture-words.js +25 -0
- package/dist/improve-capture-words.js.map +1 -0
- package/dist/improve-concept.d.ts +6 -7
- package/dist/improve-concept.d.ts.map +1 -1
- package/dist/improve-concept.js +12 -38
- package/dist/improve-concept.js.map +1 -1
- package/dist/improve-conversion-attempts.d.ts +21 -9
- package/dist/improve-conversion-attempts.d.ts.map +1 -1
- package/dist/improve-conversion-attempts.js +6 -1
- package/dist/improve-conversion-attempts.js.map +1 -1
- package/dist/improve-conversion-stage.d.ts +20 -2
- package/dist/improve-conversion-stage.d.ts.map +1 -1
- package/dist/improve-conversion-stage.js +386 -178
- package/dist/improve-conversion-stage.js.map +1 -1
- package/dist/improve-convert-progress.d.ts +44 -0
- package/dist/improve-convert-progress.d.ts.map +1 -0
- package/dist/improve-convert-progress.js +47 -0
- package/dist/improve-convert-progress.js.map +1 -0
- package/dist/improve-convert-resilience.d.ts +96 -58
- package/dist/improve-convert-resilience.d.ts.map +1 -1
- package/dist/improve-convert-resilience.js +128 -72
- package/dist/improve-convert-resilience.js.map +1 -1
- package/dist/improve-core/concept-input.d.ts +80 -0
- package/dist/improve-core/concept-input.d.ts.map +1 -0
- package/dist/improve-core/concept-input.js +92 -0
- package/dist/improve-core/concept-input.js.map +1 -0
- package/dist/improve-core/improve-added-specs.d.ts +62 -0
- package/dist/improve-core/improve-added-specs.d.ts.map +1 -0
- package/dist/improve-core/improve-added-specs.js +160 -0
- package/dist/improve-core/improve-added-specs.js.map +1 -0
- package/dist/improve-core/improve-artifacts.d.ts +18 -0
- package/dist/improve-core/improve-artifacts.d.ts.map +1 -0
- package/dist/improve-core/improve-artifacts.js +4 -0
- package/dist/improve-core/improve-artifacts.js.map +1 -0
- package/dist/improve-core/improve-concept.d.ts +7 -0
- package/dist/improve-core/improve-concept.d.ts.map +1 -0
- package/dist/improve-core/improve-concept.js +185 -0
- package/dist/improve-core/improve-concept.js.map +1 -0
- package/dist/improve-core/improve-discovery.d.ts +84 -0
- package/dist/improve-core/improve-discovery.d.ts.map +1 -0
- package/dist/improve-core/improve-discovery.js +154 -0
- package/dist/improve-core/improve-discovery.js.map +1 -0
- package/dist/improve-core/improve-dom-anchor.d.ts.map +1 -0
- package/dist/{improve-dom-anchor.js → improve-core/improve-dom-anchor.js} +2 -0
- package/dist/improve-core/improve-dom-anchor.js.map +1 -0
- package/dist/improve-core/improve-dom-diff.d.ts +59 -0
- package/dist/improve-core/improve-dom-diff.d.ts.map +1 -0
- package/dist/improve-core/improve-dom-diff.js +151 -0
- package/dist/improve-core/improve-dom-diff.js.map +1 -0
- package/dist/improve-core/improve-dom-extract.d.ts.map +1 -0
- package/dist/{improve-dom-extract.js → improve-core/improve-dom-extract.js} +2 -0
- package/dist/improve-core/improve-dom-extract.js.map +1 -0
- package/dist/improve-core/improve-dom-gate.d.ts +49 -0
- package/dist/improve-core/improve-dom-gate.d.ts.map +1 -0
- package/dist/improve-core/improve-dom-gate.js +99 -0
- package/dist/improve-core/improve-dom-gate.js.map +1 -0
- package/dist/improve-core/improve-dom-neighbour.d.ts.map +1 -0
- package/dist/{improve-dom-neighbour.js → improve-core/improve-dom-neighbour.js} +2 -0
- package/dist/improve-core/improve-dom-neighbour.js.map +1 -0
- package/dist/improve-core/improve-dom-scale.d.ts.map +1 -0
- package/dist/{improve-dom-scale.js → improve-core/improve-dom-scale.js} +2 -0
- package/dist/improve-core/improve-dom-scale.js.map +1 -0
- package/dist/improve-core/improve-icon-svg.d.ts +29 -0
- package/dist/improve-core/improve-icon-svg.d.ts.map +1 -0
- package/dist/improve-core/improve-icon-svg.js +85 -0
- package/dist/improve-core/improve-icon-svg.js.map +1 -0
- package/dist/improve-core/improve-kit-asset-model.d.ts +177 -0
- package/dist/improve-core/improve-kit-asset-model.d.ts.map +1 -0
- package/dist/improve-core/improve-kit-asset-model.js +269 -0
- package/dist/improve-core/improve-kit-asset-model.js.map +1 -0
- package/dist/improve-core/improve-layerdoc-diff.d.ts.map +1 -0
- package/dist/{improve-layerdoc-diff.js → improve-core/improve-layerdoc-diff.js} +2 -0
- package/dist/improve-core/improve-layerdoc-diff.js.map +1 -0
- package/dist/{improve-layerdoc-types.d.ts → improve-core/improve-layerdoc-types.d.ts} +9 -0
- package/dist/improve-core/improve-layerdoc-types.d.ts.map +1 -0
- package/dist/improve-core/improve-layerdoc-types.js +4 -0
- package/dist/improve-core/improve-layerdoc-types.js.map +1 -0
- package/dist/improve-core/improve-page-words.d.ts +180 -0
- package/dist/improve-core/improve-page-words.d.ts.map +1 -0
- package/dist/improve-core/improve-page-words.js +303 -0
- package/dist/improve-core/improve-page-words.js.map +1 -0
- package/dist/{improve-plan-annotated-render.d.ts → improve-core/improve-plan-annotated-render.d.ts} +19 -2
- package/dist/improve-core/improve-plan-annotated-render.d.ts.map +1 -0
- package/dist/{improve-plan-annotated-render.js → improve-core/improve-plan-annotated-render.js} +77 -28
- package/dist/improve-core/improve-plan-annotated-render.js.map +1 -0
- package/dist/improve-core/improve-plan-annotator.d.ts +34 -0
- package/dist/improve-core/improve-plan-annotator.d.ts.map +1 -0
- package/dist/improve-core/improve-plan-annotator.js +52 -0
- package/dist/improve-core/improve-plan-annotator.js.map +1 -0
- package/dist/{improve-plan-render.d.ts → improve-core/improve-plan-render.d.ts} +2 -1
- package/dist/improve-core/improve-plan-render.d.ts.map +1 -0
- package/dist/{improve-plan-render.js → improve-core/improve-plan-render.js} +7 -1
- package/dist/improve-core/improve-plan-render.js.map +1 -0
- package/dist/improve-core/improve-plan-vector-keep.d.ts +29 -0
- package/dist/improve-core/improve-plan-vector-keep.d.ts.map +1 -0
- package/dist/improve-core/improve-plan-vector-keep.js +68 -0
- package/dist/improve-core/improve-plan-vector-keep.js.map +1 -0
- package/dist/{improve-raster-layers-section.d.ts → improve-core/improve-raster-layers-section.d.ts} +9 -1
- package/dist/improve-core/improve-raster-layers-section.d.ts.map +1 -0
- package/dist/{improve-raster-layers-section.js → improve-core/improve-raster-layers-section.js} +5 -2
- package/dist/improve-core/improve-raster-layers-section.js.map +1 -0
- package/dist/improve-core/improve-refusal.d.ts +6 -0
- package/dist/improve-core/improve-refusal.d.ts.map +1 -0
- package/dist/improve-core/improve-refusal.js +27 -0
- package/dist/improve-core/improve-refusal.js.map +1 -0
- package/dist/improve-core/improve-retain.d.ts +121 -0
- package/dist/improve-core/improve-retain.d.ts.map +1 -0
- package/dist/improve-core/improve-retain.js +115 -0
- package/dist/improve-core/improve-retain.js.map +1 -0
- package/dist/improve-core/improve-site-plan.d.ts +75 -0
- package/dist/improve-core/improve-site-plan.d.ts.map +1 -0
- package/dist/improve-core/improve-site-plan.js +135 -0
- package/dist/improve-core/improve-site-plan.js.map +1 -0
- package/dist/improve-core/improve-site-shell.d.ts +56 -0
- package/dist/improve-core/improve-site-shell.d.ts.map +1 -0
- package/dist/improve-core/improve-site-shell.js +152 -0
- package/dist/improve-core/improve-site-shell.js.map +1 -0
- package/dist/improve-core/improve-site-tokens.d.ts +44 -0
- package/dist/improve-core/improve-site-tokens.d.ts.map +1 -0
- package/dist/improve-core/improve-site-tokens.js +87 -0
- package/dist/improve-core/improve-site-tokens.js.map +1 -0
- package/dist/improve-core/improve-source-hints.d.ts +25 -0
- package/dist/improve-core/improve-source-hints.d.ts.map +1 -0
- package/dist/improve-core/improve-source-hints.js +17 -0
- package/dist/improve-core/improve-source-hints.js.map +1 -0
- package/dist/{improve-token-patch.d.ts → improve-core/improve-token-patch.d.ts} +2 -0
- package/dist/improve-core/improve-token-patch.d.ts.map +1 -0
- package/dist/{improve-token-patch.js → improve-core/improve-token-patch.js} +25 -5
- package/dist/improve-core/improve-token-patch.js.map +1 -0
- package/dist/improve-core/index.d.ts +47 -0
- package/dist/improve-core/index.d.ts.map +1 -0
- package/dist/improve-core/index.js +49 -0
- package/dist/improve-core/index.js.map +1 -0
- package/dist/improve-delivery-stages.d.ts +6 -0
- package/dist/improve-delivery-stages.d.ts.map +1 -1
- package/dist/improve-delivery-stages.js +91 -6
- package/dist/improve-delivery-stages.js.map +1 -1
- package/dist/improve-dom-diff.d.ts +8 -24
- package/dist/improve-dom-diff.d.ts.map +1 -1
- package/dist/improve-dom-diff.js +23 -123
- package/dist/improve-dom-diff.js.map +1 -1
- package/dist/improve-dom-gate.d.ts +1 -18
- package/dist/improve-dom-gate.d.ts.map +1 -1
- package/dist/improve-dom-gate.js +1 -46
- package/dist/improve-dom-gate.js.map +1 -1
- package/dist/improve-generation-stages.d.ts +0 -2
- package/dist/improve-generation-stages.d.ts.map +1 -1
- package/dist/improve-generation-stages.js +191 -15
- package/dist/improve-generation-stages.js.map +1 -1
- package/dist/improve-kit-assets.d.ts +8 -116
- package/dist/improve-kit-assets.d.ts.map +1 -1
- package/dist/improve-kit-assets.js +9 -229
- package/dist/improve-kit-assets.js.map +1 -1
- package/dist/improve-kit-ignore.d.ts +32 -0
- package/dist/improve-kit-ignore.d.ts.map +1 -0
- package/dist/improve-kit-ignore.js +111 -0
- package/dist/improve-kit-ignore.js.map +1 -0
- package/dist/improve-kit-readme.d.ts +4 -0
- package/dist/improve-kit-readme.d.ts.map +1 -1
- package/dist/improve-kit-readme.js +155 -24
- package/dist/improve-kit-readme.js.map +1 -1
- package/dist/improve-kit-stall.d.ts +51 -3
- package/dist/improve-kit-stall.d.ts.map +1 -1
- package/dist/improve-kit-stall.js +205 -21
- package/dist/improve-kit-stall.js.map +1 -1
- package/dist/improve-kit-status.d.ts +36 -0
- package/dist/improve-kit-status.d.ts.map +1 -1
- package/dist/improve-kit-status.js +82 -7
- package/dist/improve-kit-status.js.map +1 -1
- package/dist/improve-options.d.ts +14 -0
- package/dist/improve-options.d.ts.map +1 -1
- package/dist/improve-options.js +95 -12
- package/dist/improve-options.js.map +1 -1
- package/dist/improve-passthrough-flags.d.ts +8 -0
- package/dist/improve-passthrough-flags.d.ts.map +1 -0
- package/dist/improve-passthrough-flags.js +11 -0
- package/dist/improve-passthrough-flags.js.map +1 -0
- package/dist/improve-plan-annotator.d.ts +13 -2
- package/dist/improve-plan-annotator.d.ts.map +1 -1
- package/dist/improve-plan-annotator.js +35 -37
- package/dist/improve-plan-annotator.js.map +1 -1
- package/dist/improve-pricing-plan.d.ts +3 -0
- package/dist/improve-pricing-plan.d.ts.map +1 -1
- package/dist/improve-pricing-plan.js +33 -5
- package/dist/improve-pricing-plan.js.map +1 -1
- package/dist/improve-recheck.d.ts +9 -0
- package/dist/improve-recheck.d.ts.map +1 -0
- package/dist/improve-recheck.js +200 -0
- package/dist/improve-recheck.js.map +1 -0
- package/dist/improve-reset.d.ts.map +1 -1
- package/dist/improve-reset.js +11 -0
- package/dist/improve-reset.js.map +1 -1
- package/dist/improve-run-summary.d.ts +6 -0
- package/dist/improve-run-summary.d.ts.map +1 -1
- package/dist/improve-run-summary.js +77 -7
- package/dist/improve-run-summary.js.map +1 -1
- package/dist/improve-site-plan.d.ts +57 -0
- package/dist/improve-site-plan.d.ts.map +1 -0
- package/dist/improve-site-plan.js +79 -0
- package/dist/improve-site-plan.js.map +1 -0
- package/dist/improve-site-shell.d.ts +11 -0
- package/dist/improve-site-shell.d.ts.map +1 -0
- package/dist/improve-site-shell.js +24 -0
- package/dist/improve-site-shell.js.map +1 -0
- package/dist/improve-site-stage.d.ts +10 -0
- package/dist/improve-site-stage.d.ts.map +1 -0
- package/dist/improve-site-stage.js +84 -0
- package/dist/improve-site-stage.js.map +1 -0
- package/dist/improve-site-tokens.d.ts +9 -0
- package/dist/improve-site-tokens.d.ts.map +1 -0
- package/dist/improve-site-tokens.js +17 -0
- package/dist/improve-site-tokens.js.map +1 -0
- package/dist/improve-source-hints.d.ts +3 -12
- package/dist/improve-source-hints.d.ts.map +1 -1
- package/dist/improve-source-hints.js +4 -5
- package/dist/improve-source-hints.js.map +1 -1
- package/dist/improve-spend-ledger.d.ts +69 -0
- package/dist/improve-spend-ledger.d.ts.map +1 -0
- package/dist/improve-spend-ledger.js +118 -0
- package/dist/improve-spend-ledger.js.map +1 -0
- package/dist/improve-stage-runners.d.ts +5 -2
- package/dist/improve-stage-runners.d.ts.map +1 -1
- package/dist/improve-stage-runners.js +5 -2
- package/dist/improve-stage-runners.js.map +1 -1
- package/dist/improve-stage-shared.d.ts +49 -2
- package/dist/improve-stage-shared.d.ts.map +1 -1
- package/dist/improve-stage-shared.js +80 -3
- package/dist/improve-stage-shared.js.map +1 -1
- package/dist/improve-stop-handler.d.ts +15 -0
- package/dist/improve-stop-handler.d.ts.map +1 -1
- package/dist/improve-stop-handler.js +74 -3
- package/dist/improve-stop-handler.js.map +1 -1
- package/dist/improve-terminal-event.d.ts.map +1 -1
- package/dist/improve-terminal-event.js +13 -4
- package/dist/improve-terminal-event.js.map +1 -1
- package/dist/improve-workspace.d.ts +282 -9
- package/dist/improve-workspace.d.ts.map +1 -1
- package/dist/improve-workspace.js +250 -78
- package/dist/improve-workspace.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/legacy-skill-catalog.d.ts.map +1 -1
- package/dist/legacy-skill-catalog.js +202 -0
- package/dist/legacy-skill-catalog.js.map +1 -1
- package/dist/mcp-convert.js +1 -1
- package/dist/mcp-convert.js.map +1 -1
- package/dist/redesign-capture.d.ts +146 -15
- package/dist/redesign-capture.d.ts.map +1 -1
- package/dist/redesign-capture.js +182 -65
- package/dist/redesign-capture.js.map +1 -1
- package/dist/redesign-workspace.d.ts +13 -0
- package/dist/redesign-workspace.d.ts.map +1 -1
- package/dist/redesign-workspace.js +14 -0
- package/dist/redesign-workspace.js.map +1 -1
- package/dist/responsive-alternative-materializer.d.ts +24 -0
- package/dist/responsive-alternative-materializer.d.ts.map +1 -0
- package/dist/responsive-alternative-materializer.js +93 -0
- package/dist/responsive-alternative-materializer.js.map +1 -0
- package/dist/result-integrity.d.ts +38 -0
- package/dist/result-integrity.d.ts.map +1 -0
- package/dist/result-integrity.js +46 -0
- package/dist/result-integrity.js.map +1 -0
- package/dist/review-edit-source.d.ts.map +1 -1
- package/dist/review-edit-source.js +6 -2
- package/dist/review-edit-source.js.map +1 -1
- package/dist/review-edit.js +2 -2
- package/dist/review-edit.js.map +1 -1
- package/dist/review-prototype-gap.js +1 -1
- package/dist/review-prototype-gap.js.map +1 -1
- package/dist/spend-run-filter.d.ts +21 -0
- package/dist/spend-run-filter.d.ts.map +1 -0
- package/dist/spend-run-filter.js +65 -0
- package/dist/spend-run-filter.js.map +1 -0
- package/dist/spend-scoped-report-lines.d.ts +4 -0
- package/dist/spend-scoped-report-lines.d.ts.map +1 -0
- package/dist/spend-scoped-report-lines.js +46 -0
- package/dist/spend-scoped-report-lines.js.map +1 -0
- package/dist/spend-scoped-report.d.ts +28 -0
- package/dist/spend-scoped-report.d.ts.map +1 -0
- package/dist/spend-scoped-report.js +45 -0
- package/dist/spend-scoped-report.js.map +1 -0
- package/open-design.json +2 -2
- package/package.json +5 -5
- package/skills/12ui-design/SKILL.md +14 -4
- package/skills/12ui-design/improve.md +67 -5
- package/skills/12ui-design/inspire.md +1 -1
- package/dist/improve-dom-anchor.d.ts.map +0 -1
- package/dist/improve-dom-anchor.js.map +0 -1
- package/dist/improve-dom-extract.d.ts.map +0 -1
- package/dist/improve-dom-extract.js.map +0 -1
- package/dist/improve-dom-neighbour.d.ts.map +0 -1
- package/dist/improve-dom-neighbour.js.map +0 -1
- package/dist/improve-dom-scale.d.ts.map +0 -1
- package/dist/improve-dom-scale.js.map +0 -1
- package/dist/improve-layerdoc-diff.d.ts.map +0 -1
- package/dist/improve-layerdoc-diff.js.map +0 -1
- package/dist/improve-layerdoc-types.d.ts.map +0 -1
- package/dist/improve-layerdoc-types.js +0 -2
- package/dist/improve-layerdoc-types.js.map +0 -1
- package/dist/improve-plan-annotated-render.d.ts.map +0 -1
- package/dist/improve-plan-annotated-render.js.map +0 -1
- package/dist/improve-plan-render.d.ts.map +0 -1
- package/dist/improve-plan-render.js.map +0 -1
- package/dist/improve-raster-layers-section.d.ts.map +0 -1
- package/dist/improve-raster-layers-section.js.map +0 -1
- package/dist/improve-token-patch.d.ts.map +0 -1
- package/dist/improve-token-patch.js.map +0 -1
- /package/dist/{improve-dom-anchor.d.ts → improve-core/improve-dom-anchor.d.ts} +0 -0
- /package/dist/{improve-dom-extract.d.ts → improve-core/improve-dom-extract.d.ts} +0 -0
- /package/dist/{improve-dom-neighbour.d.ts → improve-core/improve-dom-neighbour.d.ts} +0 -0
- /package/dist/{improve-dom-scale.d.ts → improve-core/improve-dom-scale.d.ts} +0 -0
- /package/dist/{improve-layerdoc-diff.d.ts → improve-core/improve-layerdoc-diff.d.ts} +0 -0
package/dist/corpus-client.js
CHANGED
|
@@ -2,9 +2,10 @@ import { createHash } from 'node:crypto';
|
|
|
2
2
|
import { readConversionConfig } from './config.js';
|
|
3
3
|
import { declareClientVersion } from './client-version.js';
|
|
4
4
|
import { appendClientAuthGuidance } from './client-auth-guidance.js';
|
|
5
|
+
import { CorpusRequestError } from './corpus-request-error.js';
|
|
5
6
|
import { normalizeOptionalIdempotencyKey } from './idempotency-key.js';
|
|
6
7
|
export const CORPUS_IMAGE_SIZES = ['thumb', 'thumb-hd', 'ref', 'ref-hd'];
|
|
7
|
-
export const INSPIRATION_MODES = ['direct', 'balanced', 'adventurer'];
|
|
8
|
+
export const INSPIRATION_MODES = ['direct', 'balanced', 'adventurer', 'hedge'];
|
|
8
9
|
export const MAX_CORPUS_INSPIRE_SEED = 0xffffffff;
|
|
9
10
|
export const MAX_CORPUS_REFERENCE_IMAGE_BYTES = 6_000_000;
|
|
10
11
|
export const CORPUS_QUERY_IDEMPOTENCY_REVISION = 'corpus-query-idempotency-v2';
|
|
@@ -103,7 +104,7 @@ export class TwelveUiCorpusClient {
|
|
|
103
104
|
const response = await this.#fetch(`${this.#config.origin}${path}`, { ...init, headers });
|
|
104
105
|
if (!response.ok) {
|
|
105
106
|
const detail = await response.text().catch(() => '');
|
|
106
|
-
throw new
|
|
107
|
+
throw new CorpusRequestError(appendClientAuthGuidance(`12UI corpus request failed (${response.status}): ${detail.slice(0, 500)}`, response.status), response.status);
|
|
107
108
|
}
|
|
108
109
|
return response;
|
|
109
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"corpus-client.js","sourceRoot":"","sources":["../src/corpus-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,oBAAoB,EAAyB,MAAM,aAAa,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC3D,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,+BAA+B,EAAE,MAAM,sBAAsB,CAAC;AAIvE,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,CAAU,CAAC;AAElF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"corpus-client.js","sourceRoot":"","sources":["../src/corpus-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bounded retry for ONE corpus reference image download.
|
|
3
|
+
*
|
|
4
|
+
* `completeReferenceDownloads` fans out over every reference the corpus
|
|
5
|
+
* returned and fails the whole run if any single download fails. That
|
|
6
|
+
* all-or-nothing shape was tolerable while a Draft fetched four references;
|
|
7
|
+
* it is not now that the balanced Draft path fetches
|
|
8
|
+
* `DRAFT_BALANCED_REFERENCE_COUNT` (12) of them. At an independent
|
|
9
|
+
* per-download failure probability p the run's failure probability is
|
|
10
|
+
* 1 - (1 - p)^n, so moving n from 4 to 12 takes p = 1% from 3.9% to 11.4% and
|
|
11
|
+
* p = 0.5% from 2.0% to 5.8%. Nothing about the individual download got worse;
|
|
12
|
+
* there are simply three times as many chances to lose the run.
|
|
13
|
+
*
|
|
14
|
+
* The answer here is a retry and ONLY a retry. Proceeding with fewer
|
|
15
|
+
* references than the caller asked for would change what a Draft is, and this
|
|
16
|
+
* module does not do that: when the attempts are spent the original failure is
|
|
17
|
+
* rethrown unchanged and the run still aborts naming what could not be
|
|
18
|
+
* fetched.
|
|
19
|
+
*
|
|
20
|
+
* Two properties keep the retry from being worse than the problem:
|
|
21
|
+
*
|
|
22
|
+
* - It fires only on TRANSIENT failures. A 404 on a reference the service
|
|
23
|
+
* does not have is a settled answer, and retrying it would turn a fast,
|
|
24
|
+
* truthful failure into a slow one. So would retrying an auth refusal, a
|
|
25
|
+
* digest mismatch, or a caller's abort. See `isTransientCorpusDownloadFailure`.
|
|
26
|
+
* - The added latency is bounded and small. Three attempts spend at most
|
|
27
|
+
* `CORPUS_REFERENCE_DOWNLOAD_MAX_ADDED_DELAY_MS` (1.5s) of backoff per
|
|
28
|
+
* download, and because `completeReferenceDownloads` runs the downloads
|
|
29
|
+
* concurrently that is also the bound for a run where EVERY reference
|
|
30
|
+
* fails every attempt — 1.5 seconds against a Draft that spends tens of
|
|
31
|
+
* seconds generating images.
|
|
32
|
+
*
|
|
33
|
+
* The transient/terminal split follows `operation-poll-policy.ts`: 5xx and the
|
|
34
|
+
* two "come back later" client statuses are transient, every other answered
|
|
35
|
+
* status is terminal.
|
|
36
|
+
*/
|
|
37
|
+
/** Attempts per download, retries included. Three, so at most two backoffs. */
|
|
38
|
+
export declare const CORPUS_REFERENCE_DOWNLOAD_ATTEMPTS = 3;
|
|
39
|
+
/**
|
|
40
|
+
* The wait before attempt 2 and attempt 3. Fixed rather than jittered: the
|
|
41
|
+
* bound is what matters here and a deterministic ladder is one less thing for
|
|
42
|
+
* a test to have to tolerate. The fan-out is a dozen requests, not a herd
|
|
43
|
+
* whose synchronised retry could hurt the service.
|
|
44
|
+
*/
|
|
45
|
+
export declare const CORPUS_REFERENCE_DOWNLOAD_RETRY_DELAYS_MS: readonly number[];
|
|
46
|
+
/** Worst-case backoff one download can add before it gives up. */
|
|
47
|
+
export declare const CORPUS_REFERENCE_DOWNLOAD_MAX_ADDED_DELAY_MS: number;
|
|
48
|
+
/**
|
|
49
|
+
* Whether a failed reference download is worth attempting again.
|
|
50
|
+
*
|
|
51
|
+
* An answered request decides on its status: 5xx, 408, 425 and 429 are the
|
|
52
|
+
* service saying "not now", anything else — 404 above all — is the service
|
|
53
|
+
* saying "not this reference", and a client that retried it would stall for
|
|
54
|
+
* the full backoff before reporting the same truth.
|
|
55
|
+
*
|
|
56
|
+
* An unanswered request decides on its transport code. Everything else is
|
|
57
|
+
* terminal by default, which deliberately covers the digest and decode
|
|
58
|
+
* refusals `cli-corpus-reference-downloads.ts` raises around the download and
|
|
59
|
+
* a caller's own abort: none of those become true by being asked twice.
|
|
60
|
+
*/
|
|
61
|
+
export declare const isTransientCorpusDownloadFailure: (error: unknown) => boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Run `download`, retrying a transient failure up to the bounded attempt
|
|
64
|
+
* count. The failure the caller finally sees is the last one thrown, unchanged
|
|
65
|
+
* — an exhausted retry reports the same error a single attempt would have.
|
|
66
|
+
*/
|
|
67
|
+
export declare const withBoundedCorpusDownloadRetry: <Value>(download: () => Promise<Value>, sleep: (milliseconds: number) => Promise<void>) => Promise<Value>;
|
|
68
|
+
//# sourceMappingURL=corpus-reference-download-retry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corpus-reference-download-retry.d.ts","sourceRoot":"","sources":["../src/corpus-reference-download-retry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,+EAA+E;AAC/E,eAAO,MAAM,kCAAkC,IAAI,CAAC;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,yCAAyC,EAAE,SAAS,MAAM,EAAiB,CAAC;AAEzF,kEAAkE;AAClE,eAAO,MAAM,4CAA4C,QACZ,CAAC;AAiC9C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,gCAAgC,GAAI,OAAO,OAAO,KAAG,OAQjE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,GAAU,KAAK,EACxD,UAAU,MAAM,OAAO,CAAC,KAAK,CAAC,EAC9B,OAAO,CAAC,YAAY,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,KAC7C,OAAO,CAAC,KAAK,CAWf,CAAC"}
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Bounded retry for ONE corpus reference image download.
|
|
3
|
+
*
|
|
4
|
+
* `completeReferenceDownloads` fans out over every reference the corpus
|
|
5
|
+
* returned and fails the whole run if any single download fails. That
|
|
6
|
+
* all-or-nothing shape was tolerable while a Draft fetched four references;
|
|
7
|
+
* it is not now that the balanced Draft path fetches
|
|
8
|
+
* `DRAFT_BALANCED_REFERENCE_COUNT` (12) of them. At an independent
|
|
9
|
+
* per-download failure probability p the run's failure probability is
|
|
10
|
+
* 1 - (1 - p)^n, so moving n from 4 to 12 takes p = 1% from 3.9% to 11.4% and
|
|
11
|
+
* p = 0.5% from 2.0% to 5.8%. Nothing about the individual download got worse;
|
|
12
|
+
* there are simply three times as many chances to lose the run.
|
|
13
|
+
*
|
|
14
|
+
* The answer here is a retry and ONLY a retry. Proceeding with fewer
|
|
15
|
+
* references than the caller asked for would change what a Draft is, and this
|
|
16
|
+
* module does not do that: when the attempts are spent the original failure is
|
|
17
|
+
* rethrown unchanged and the run still aborts naming what could not be
|
|
18
|
+
* fetched.
|
|
19
|
+
*
|
|
20
|
+
* Two properties keep the retry from being worse than the problem:
|
|
21
|
+
*
|
|
22
|
+
* - It fires only on TRANSIENT failures. A 404 on a reference the service
|
|
23
|
+
* does not have is a settled answer, and retrying it would turn a fast,
|
|
24
|
+
* truthful failure into a slow one. So would retrying an auth refusal, a
|
|
25
|
+
* digest mismatch, or a caller's abort. See `isTransientCorpusDownloadFailure`.
|
|
26
|
+
* - The added latency is bounded and small. Three attempts spend at most
|
|
27
|
+
* `CORPUS_REFERENCE_DOWNLOAD_MAX_ADDED_DELAY_MS` (1.5s) of backoff per
|
|
28
|
+
* download, and because `completeReferenceDownloads` runs the downloads
|
|
29
|
+
* concurrently that is also the bound for a run where EVERY reference
|
|
30
|
+
* fails every attempt — 1.5 seconds against a Draft that spends tens of
|
|
31
|
+
* seconds generating images.
|
|
32
|
+
*
|
|
33
|
+
* The transient/terminal split follows `operation-poll-policy.ts`: 5xx and the
|
|
34
|
+
* two "come back later" client statuses are transient, every other answered
|
|
35
|
+
* status is terminal.
|
|
36
|
+
*/
|
|
37
|
+
/** Attempts per download, retries included. Three, so at most two backoffs. */
|
|
38
|
+
export const CORPUS_REFERENCE_DOWNLOAD_ATTEMPTS = 3;
|
|
39
|
+
/**
|
|
40
|
+
* The wait before attempt 2 and attempt 3. Fixed rather than jittered: the
|
|
41
|
+
* bound is what matters here and a deterministic ladder is one less thing for
|
|
42
|
+
* a test to have to tolerate. The fan-out is a dozen requests, not a herd
|
|
43
|
+
* whose synchronised retry could hurt the service.
|
|
44
|
+
*/
|
|
45
|
+
export const CORPUS_REFERENCE_DOWNLOAD_RETRY_DELAYS_MS = [300, 1_200];
|
|
46
|
+
/** Worst-case backoff one download can add before it gives up. */
|
|
47
|
+
export const CORPUS_REFERENCE_DOWNLOAD_MAX_ADDED_DELAY_MS = CORPUS_REFERENCE_DOWNLOAD_RETRY_DELAYS_MS
|
|
48
|
+
.reduce((total, delay) => total + delay, 0);
|
|
49
|
+
/** Statuses below 500 that still describe the moment rather than the reference. */
|
|
50
|
+
const TRANSIENT_CLIENT_STATUSES = new Set([408, 425, 429]);
|
|
51
|
+
/**
|
|
52
|
+
* Transport-level codes that mean the request never got an answer. `fetch`
|
|
53
|
+
* reports these on the `cause` chain of the TypeError it rejects with, so the
|
|
54
|
+
* chain is walked rather than the top-level error inspected.
|
|
55
|
+
*/
|
|
56
|
+
const TRANSIENT_TRANSPORT_CODES = new Set([
|
|
57
|
+
'ECONNABORTED',
|
|
58
|
+
'ECONNREFUSED',
|
|
59
|
+
'ECONNRESET',
|
|
60
|
+
'EAI_AGAIN',
|
|
61
|
+
'EHOSTUNREACH',
|
|
62
|
+
'ENETDOWN',
|
|
63
|
+
'ENETUNREACH',
|
|
64
|
+
'EPIPE',
|
|
65
|
+
'ETIMEDOUT',
|
|
66
|
+
'UND_ERR_BODY_TIMEOUT',
|
|
67
|
+
'UND_ERR_CONNECT_TIMEOUT',
|
|
68
|
+
'UND_ERR_HEADERS_TIMEOUT',
|
|
69
|
+
'UND_ERR_SOCKET',
|
|
70
|
+
]);
|
|
71
|
+
const hasTransientTransportCode = (value, depth = 0) => {
|
|
72
|
+
if (depth > 4 || typeof value !== 'object' || value === null)
|
|
73
|
+
return false;
|
|
74
|
+
const code = value.code;
|
|
75
|
+
if (typeof code === 'string' && TRANSIENT_TRANSPORT_CODES.has(code))
|
|
76
|
+
return true;
|
|
77
|
+
return hasTransientTransportCode(value.cause, depth + 1);
|
|
78
|
+
};
|
|
79
|
+
/**
|
|
80
|
+
* Whether a failed reference download is worth attempting again.
|
|
81
|
+
*
|
|
82
|
+
* An answered request decides on its status: 5xx, 408, 425 and 429 are the
|
|
83
|
+
* service saying "not now", anything else — 404 above all — is the service
|
|
84
|
+
* saying "not this reference", and a client that retried it would stall for
|
|
85
|
+
* the full backoff before reporting the same truth.
|
|
86
|
+
*
|
|
87
|
+
* An unanswered request decides on its transport code. Everything else is
|
|
88
|
+
* terminal by default, which deliberately covers the digest and decode
|
|
89
|
+
* refusals `cli-corpus-reference-downloads.ts` raises around the download and
|
|
90
|
+
* a caller's own abort: none of those become true by being asked twice.
|
|
91
|
+
*/
|
|
92
|
+
export const isTransientCorpusDownloadFailure = (error) => {
|
|
93
|
+
if (!(error instanceof Error))
|
|
94
|
+
return false;
|
|
95
|
+
if (error.name === 'AbortError' || error.name === 'TimeoutError')
|
|
96
|
+
return false;
|
|
97
|
+
const status = error.status;
|
|
98
|
+
if (typeof status === 'number') {
|
|
99
|
+
return status >= 500 || TRANSIENT_CLIENT_STATUSES.has(status);
|
|
100
|
+
}
|
|
101
|
+
return hasTransientTransportCode(error);
|
|
102
|
+
};
|
|
103
|
+
/**
|
|
104
|
+
* Run `download`, retrying a transient failure up to the bounded attempt
|
|
105
|
+
* count. The failure the caller finally sees is the last one thrown, unchanged
|
|
106
|
+
* — an exhausted retry reports the same error a single attempt would have.
|
|
107
|
+
*/
|
|
108
|
+
export const withBoundedCorpusDownloadRetry = async (download, sleep) => {
|
|
109
|
+
for (let attempt = 1;; attempt += 1) {
|
|
110
|
+
try {
|
|
111
|
+
return await download();
|
|
112
|
+
}
|
|
113
|
+
catch (error) {
|
|
114
|
+
const delay = CORPUS_REFERENCE_DOWNLOAD_RETRY_DELAYS_MS[attempt - 1];
|
|
115
|
+
if (attempt >= CORPUS_REFERENCE_DOWNLOAD_ATTEMPTS || delay === undefined)
|
|
116
|
+
throw error;
|
|
117
|
+
if (!isTransientCorpusDownloadFailure(error))
|
|
118
|
+
throw error;
|
|
119
|
+
await sleep(delay);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
//# sourceMappingURL=corpus-reference-download-retry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corpus-reference-download-retry.js","sourceRoot":"","sources":["../src/corpus-reference-download-retry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,kCAAkC,GAAG,CAAC,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yCAAyC,GAAsB,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAEzF,kEAAkE;AAClE,MAAM,CAAC,MAAM,4CAA4C,GAAG,yCAAyC;KAClG,MAAM,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC;AAE9C,mFAAmF;AACnF,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;AAE3D;;;;GAIG;AACH,MAAM,yBAAyB,GAAG,IAAI,GAAG,CAAC;IACxC,cAAc;IACd,cAAc;IACd,YAAY;IACZ,WAAW;IACX,cAAc;IACd,UAAU;IACV,aAAa;IACb,OAAO;IACP,WAAW;IACX,sBAAsB;IACtB,yBAAyB;IACzB,yBAAyB;IACzB,gBAAgB;CACjB,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,CAAC,KAAc,EAAE,KAAK,GAAG,CAAC,EAAW,EAAE;IACvE,IAAI,KAAK,GAAG,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC3E,MAAM,IAAI,GAAI,KAA4B,CAAC,IAAI,CAAC;IAChD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACjF,OAAO,yBAAyB,CAAE,KAA6B,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;AACpF,CAAC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,KAAc,EAAW,EAAE;IAC1E,IAAI,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;QAAE,OAAO,KAAK,CAAC;IAC/E,MAAM,MAAM,GAAI,KAA8B,CAAC,MAAM,CAAC;IACtD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,MAAM,IAAI,GAAG,IAAI,yBAAyB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChE,CAAC;IACD,OAAO,yBAAyB,CAAC,KAAK,CAAC,CAAC;AAC1C,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,EACjD,QAA8B,EAC9B,KAA8C,EAC9B,EAAE;IAClB,KAAK,IAAI,OAAO,GAAG,CAAC,GAAI,OAAO,IAAI,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC;YACH,OAAO,MAAM,QAAQ,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,yCAAyC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YACrE,IAAI,OAAO,IAAI,kCAAkC,IAAI,KAAK,KAAK,SAAS;gBAAE,MAAM,KAAK,CAAC;YACtF,IAAI,CAAC,gCAAgC,CAAC,KAAK,CAAC;gBAAE,MAAM,KAAK,CAAC;YAC1D,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The failure a corpus HTTP answer becomes.
|
|
3
|
+
*
|
|
4
|
+
* It exists so a caller can decide from the ANSWER rather than from the
|
|
5
|
+
* message text: `cli-corpus-reference-downloads.ts` retries a reference image
|
|
6
|
+
* that was refused with 503 and does not retry one that was refused with 404,
|
|
7
|
+
* and reading a status out of a prose string to make that call would be a
|
|
8
|
+
* guess that breaks the first time the wording changes.
|
|
9
|
+
*
|
|
10
|
+
* The message is byte-identical to the one this path threw before the class
|
|
11
|
+
* existed; only the structure is new.
|
|
12
|
+
*/
|
|
13
|
+
export declare class CorpusRequestError extends Error {
|
|
14
|
+
readonly status: number;
|
|
15
|
+
constructor(message: string, status: number, options?: ErrorOptions);
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=corpus-request-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corpus-request-error.d.ts","sourceRoot":"","sources":["../src/corpus-request-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAmB,SAAQ,KAAK;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;gBAEZ,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,YAAY;CAKpE"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The failure a corpus HTTP answer becomes.
|
|
3
|
+
*
|
|
4
|
+
* It exists so a caller can decide from the ANSWER rather than from the
|
|
5
|
+
* message text: `cli-corpus-reference-downloads.ts` retries a reference image
|
|
6
|
+
* that was refused with 503 and does not retry one that was refused with 404,
|
|
7
|
+
* and reading a status out of a prose string to make that call would be a
|
|
8
|
+
* guess that breaks the first time the wording changes.
|
|
9
|
+
*
|
|
10
|
+
* The message is byte-identical to the one this path threw before the class
|
|
11
|
+
* existed; only the structure is new.
|
|
12
|
+
*/
|
|
13
|
+
export class CorpusRequestError extends Error {
|
|
14
|
+
status;
|
|
15
|
+
constructor(message, status, options) {
|
|
16
|
+
super(message, options);
|
|
17
|
+
this.name = 'CorpusRequestError';
|
|
18
|
+
this.status = status;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=corpus-request-error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"corpus-request-error.js","sourceRoot":"","sources":["../src/corpus-request-error.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,kBAAmB,SAAQ,KAAK;IAClC,MAAM,CAAS;IAExB,YAAY,OAAe,EAAE,MAAc,EAAE,OAAsB;QACjE,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,oBAAoB,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CACF"}
|
package/dist/draft-run.d.ts
CHANGED
|
@@ -2,14 +2,23 @@ import type { CreateRetainPolicy, TwelveUiBranchClient } from './branch-client.j
|
|
|
2
2
|
import { type InspirationClient } from './cli-corpus-types.js';
|
|
3
3
|
import type { CorpusReferenceImageEvidence } from './cli-corpus-reference-image.js';
|
|
4
4
|
import type { CorpusReferenceImageInput } from './corpus-client.js';
|
|
5
|
+
import type { CorpusStatus } from './corpus-client.js';
|
|
5
6
|
import { type DraftMode, type DraftPaths, type DraftRecord } from './draft-workspace.js';
|
|
6
7
|
/** Hosted draft preparation: one corpus search, one service run claim, no local provider. */
|
|
7
8
|
export declare const DRAFT_CANDIDATE_COUNT = 4;
|
|
8
9
|
export declare const DRAFT_CANDIDATE_COUNT_MINIMUM = 2;
|
|
9
10
|
export declare const DRAFT_CANDIDATE_COUNT_MAXIMUM: 16;
|
|
11
|
+
export declare const DRAFT_BALANCED_REFERENCE_COUNT = 12;
|
|
12
|
+
export type DraftReferenceRetrieval = {
|
|
13
|
+
mode: 'balanced' | 'hedge';
|
|
14
|
+
k: number;
|
|
15
|
+
};
|
|
16
|
+
/** Older Workers do not advertise the flag, so their Drafts retain the historical slate. */
|
|
17
|
+
export declare const draftReferenceRetrieval: (status: Pick<CorpusStatus, "draftReferenceMode">, candidateCount: number) => DraftReferenceRetrieval;
|
|
10
18
|
export declare const draftRunCorpusKey: (args: {
|
|
11
19
|
query: string;
|
|
12
20
|
candidateCount?: number;
|
|
21
|
+
retrieval?: DraftReferenceRetrieval;
|
|
13
22
|
redesignSourceSha256?: string | null;
|
|
14
23
|
}) => string;
|
|
15
24
|
export type DraftAspect = 'landscape' | 'portrait' | 'square';
|
|
@@ -26,6 +35,12 @@ export type PrepareDraftRunInput = {
|
|
|
26
35
|
aspect: DraftAspect;
|
|
27
36
|
candidateCount: number;
|
|
28
37
|
retain: CreateRetainPolicy | null;
|
|
38
|
+
/**
|
|
39
|
+
* The attached page's own visible text, verbatim. Only improve supplies it,
|
|
40
|
+
* and only when the run retained `content` and the reference is the caller's
|
|
41
|
+
* own page — the service refuses it in any other posture.
|
|
42
|
+
*/
|
|
43
|
+
pageWords?: string;
|
|
29
44
|
redesignSource?: {
|
|
30
45
|
path: string;
|
|
31
46
|
sha256: string;
|
package/dist/draft-run.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft-run.d.ts","sourceRoot":"","sources":["../src/draft-run.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,EAElB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"draft-run.d.ts","sourceRoot":"","sources":["../src/draft-run.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,kBAAkB,EAElB,oBAAoB,EACrB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EAEL,KAAK,iBAAiB,EACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAOvD,OAAO,EAGL,KAAK,SAAS,EAEd,KAAK,UAAU,EACf,KAAK,WAAW,EACjB,MAAM,sBAAsB,CAAC;AAE9B,6FAA6F;AAE7F,eAAO,MAAM,qBAAqB,IAAI,CAAC;AACvC,eAAO,MAAM,6BAA6B,IAAI,CAAC;AAC/C,eAAO,MAAM,6BAA6B,IAA6B,CAAC;AAExE,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,MAAM,MAAM,uBAAuB,GAAG;IAAE,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEhF,4FAA4F;AAC5F,eAAO,MAAM,uBAAuB,GAClC,QAAQ,IAAI,CAAC,YAAY,EAAE,oBAAoB,CAAC,EAChD,gBAAgB,MAAM,KACrB,uBAoBF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,uBAAuB,CAAC;IACpC,oBAAoB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC,KAAG,MAKF,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;AAE9D,KAAK,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;AAE3E,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,UAAU,CAAC;IAClB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,YAAY,EAAE,sBAAsB,CAAC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE;QACf,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,4BAA4B,CAAC;QACvC,KAAK,EAAE,yBAAyB,CAAC;KAClC,CAAC;IACF,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB,CAAC;AAkBF,eAAO,MAAM,eAAe,GAAU,OAAO,oBAAoB,KAAG,OAAO,CAAC,WAAW,CA2HtF,CAAC"}
|
package/dist/draft-run.js
CHANGED
|
@@ -10,11 +10,29 @@ import { DRAFT_CANDIDATE_IDS, writeDraftRecord, } from './draft-workspace.js';
|
|
|
10
10
|
export const DRAFT_CANDIDATE_COUNT = 4;
|
|
11
11
|
export const DRAFT_CANDIDATE_COUNT_MINIMUM = 2;
|
|
12
12
|
export const DRAFT_CANDIDATE_COUNT_MAXIMUM = DRAFT_CANDIDATE_IDS.length;
|
|
13
|
-
const
|
|
13
|
+
export const DRAFT_BALANCED_REFERENCE_COUNT = 12;
|
|
14
|
+
/** Older Workers do not advertise the flag, so their Drafts retain the historical slate. */
|
|
15
|
+
export const draftReferenceRetrieval = (status, candidateCount) => {
|
|
16
|
+
if (status.draftReferenceMode !== 'hedge') {
|
|
17
|
+
return { mode: 'balanced', k: DRAFT_BALANCED_REFERENCE_COUNT };
|
|
18
|
+
}
|
|
19
|
+
// Hedge asks for one reference per Draft slot, so the only meaningful bound
|
|
20
|
+
// is the Draft slot window the CLI already advertises (--candidates 2-16).
|
|
21
|
+
// It is deliberately expressed with those constants and not with a retrieval
|
|
22
|
+
// cap: an earlier 4..12 here mirrored the corpus serving cap of the day and
|
|
23
|
+
// hard-refused the 2- and 3-slot Drafts the CLI accepts everywhere else.
|
|
24
|
+
if (!Number.isInteger(candidateCount)
|
|
25
|
+
|| candidateCount < DRAFT_CANDIDATE_COUNT_MINIMUM
|
|
26
|
+
|| candidateCount > DRAFT_CANDIDATE_COUNT_MAXIMUM) {
|
|
27
|
+
throw new Error(`A Draft needs between ${DRAFT_CANDIDATE_COUNT_MINIMUM} and ${DRAFT_CANDIDATE_COUNT_MAXIMUM}`
|
|
28
|
+
+ ` slots; received ${candidateCount}.`);
|
|
29
|
+
}
|
|
30
|
+
return { mode: 'hedge', k: candidateCount };
|
|
31
|
+
};
|
|
14
32
|
export const draftRunCorpusKey = (args) => draftCorpusKey({
|
|
15
33
|
query: args.query,
|
|
16
|
-
mode:
|
|
17
|
-
count: args.
|
|
34
|
+
mode: args.retrieval?.mode ?? 'balanced',
|
|
35
|
+
count: args.retrieval?.k ?? DRAFT_BALANCED_REFERENCE_COUNT,
|
|
18
36
|
redesignSourceSha256: args.redesignSourceSha256 ?? null,
|
|
19
37
|
});
|
|
20
38
|
const draftSlotFor = (index) => String.fromCharCode('a'.charCodeAt(0) + index);
|
|
@@ -29,14 +47,16 @@ const assertClaimedSlots = (expected, actual) => {
|
|
|
29
47
|
export const prepareDraftRun = async (input) => {
|
|
30
48
|
const now = input.now ?? (() => new Date());
|
|
31
49
|
const corpusQuery = input.corpusQuery ?? input.query;
|
|
50
|
+
const retrieval = draftReferenceRetrieval(await input.client.status(), input.candidateCount);
|
|
32
51
|
const manifest = await downloadCorpusInspiration({
|
|
33
52
|
client: input.client,
|
|
34
|
-
request: { q: corpusQuery, mode:
|
|
53
|
+
request: { q: corpusQuery, mode: retrieval.mode, k: retrieval.k },
|
|
35
54
|
outDir: input.paths.referencesDir,
|
|
36
55
|
origin: input.origin,
|
|
37
56
|
idempotencyKey: draftRunCorpusKey({
|
|
38
57
|
query: corpusQuery,
|
|
39
58
|
candidateCount: input.candidateCount,
|
|
59
|
+
retrieval,
|
|
40
60
|
redesignSourceSha256: input.redesignSource?.sha256 ?? null,
|
|
41
61
|
}),
|
|
42
62
|
...(input.redesignSource
|
|
@@ -56,7 +76,11 @@ export const prepareDraftRun = async (input) => {
|
|
|
56
76
|
.slice(0, input.candidateCount)
|
|
57
77
|
.map((_id, index) => usesUpload
|
|
58
78
|
? { slot: draftSlotFor(index), useReferenceImage: true }
|
|
59
|
-
: {
|
|
79
|
+
: {
|
|
80
|
+
slot: draftSlotFor(index),
|
|
81
|
+
referenceId: references[index].id,
|
|
82
|
+
...(references[index].evidence ? { referenceEvidence: references[index].evidence } : {}),
|
|
83
|
+
});
|
|
60
84
|
let referenceImage;
|
|
61
85
|
if (input.redesignSource) {
|
|
62
86
|
referenceImage = {
|
|
@@ -73,6 +97,7 @@ export const prepareDraftRun = async (input) => {
|
|
|
73
97
|
candidates: requestCandidates,
|
|
74
98
|
...(referenceImage ? { referenceImageSha256: referenceImage.sha256 } : {}),
|
|
75
99
|
retainIdentity: draftRetainIdentity(input.retain),
|
|
100
|
+
...(input.pageWords ? { pageWords: input.pageWords } : {}),
|
|
76
101
|
});
|
|
77
102
|
const hosted = await input.hostedClient.startCreateRun({
|
|
78
103
|
concept: input.query,
|
|
@@ -81,6 +106,7 @@ export const prepareDraftRun = async (input) => {
|
|
|
81
106
|
...(input.retain ? { retain: input.retain } : {}),
|
|
82
107
|
candidates: requestCandidates,
|
|
83
108
|
...(referenceImage ? { referenceImage } : {}),
|
|
109
|
+
...(input.pageWords ? { words: input.pageWords } : {}),
|
|
84
110
|
}, idempotencyKey);
|
|
85
111
|
assertClaimedSlots(requestCandidates, hosted);
|
|
86
112
|
await mkdir(input.paths.candidatesDir, { recursive: true });
|
|
@@ -124,6 +150,7 @@ export const prepareDraftRun = async (input) => {
|
|
|
124
150
|
path: reference.file,
|
|
125
151
|
sha256: reference.sha256,
|
|
126
152
|
aspect: reference.aspect,
|
|
153
|
+
...(reference.evidence ? { evidence: reference.evidence } : {}),
|
|
127
154
|
})),
|
|
128
155
|
},
|
|
129
156
|
hosted: {
|
package/dist/draft-run.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft-run.js","sourceRoot":"","sources":["../src/draft-run.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,IAAI,MAAM,WAAW,CAAC;AAO7B,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EACL,yBAAyB,GAE1B,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"draft-run.js","sourceRoot":"","sources":["../src/draft-run.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,7 +64,7 @@ export type DraftRecord = {
|
|
|
64
64
|
} | null;
|
|
65
65
|
corpus: {
|
|
66
66
|
query: string;
|
|
67
|
-
mode: 'direct' | 'balanced' | 'adventurer';
|
|
67
|
+
mode: 'direct' | 'balanced' | 'adventurer' | 'hedge';
|
|
68
68
|
setId: string;
|
|
69
69
|
idempotencyKey: string;
|
|
70
70
|
manifestPath: string;
|
|
@@ -74,6 +74,7 @@ export type DraftRecord = {
|
|
|
74
74
|
path: string;
|
|
75
75
|
sha256: string;
|
|
76
76
|
aspect: string;
|
|
77
|
+
evidence?: Readonly<Record<string, unknown>>;
|
|
77
78
|
}[];
|
|
78
79
|
};
|
|
79
80
|
hosted: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft-workspace.d.ts","sourceRoot":"","sources":["../src/draft-workspace.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D;;;;;;;;;;GAUG;AAEH,eAAO,MAAM,qBAAqB,eAAe,CAAC;AAClD,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,0BAA0B,eAAe,CAAC;AACvD,eAAO,MAAM,+BAA+B,wBAAwB,CAAC;AACrE,eAAO,MAAM,yBAAyB,wBAAwB,CAAC;AAC/D,eAAO,MAAM,sBAAsB,WAAW,CAAC;AAE/C,eAAO,MAAM,mBAAmB,2FAGtB,CAAC;AACX,MAAM,MAAM,gBAAgB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAElE,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,sBAAsB,GAAG,6BAA6B,CAAC;AAEjG,8EAA8E;AAC9E,eAAO,MAAM,SAAS,GAAI,OAAO,MAAM,KAAG,MAYzC,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,QAAQ,MAAM,KAAG,UAW3C,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,MAAM;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,KAAG,OAAO,CAAC,UAAU,CAIrB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC,EAAE,EAAE,gBAAgB,CAAC;IACrB,4DAA4D;IAC5D,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC5C,aAAa,EAAE,aAAa,GAAG,oBAAoB,CAAC;IACpD,2EAA2E;IAC3E,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,MAAM,EAAE;QACN,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"draft-workspace.d.ts","sourceRoot":"","sources":["../src/draft-workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"draft-workspace.js","sourceRoot":"","sources":["../src/draft-workspace.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAI7B;;;;;;;;;;GAUG;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,YAAY,CAAC;AAClD,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC;AACvD,MAAM,CAAC,MAAM,0BAA0B,GAAG,YAAY,CAAC;AACvD,MAAM,CAAC,MAAM,+BAA+B,GAAG,qBAAqB,CAAC;AACrE,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAAC;AAC/D,MAAM,CAAC,MAAM,sBAAsB,GAAG,QAAQ,CAAC;AAE/C,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;IACtC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG;CAC9B,CAAC;AAKX,8EAA8E;AAC9E,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAa,EAAU,EAAE;IACjD,MAAM,IAAI,GAAG,KAAK;SACf,WAAW,EAAE;SACb,OAAO,CAAC,cAAc,EAAE,GAAG,CAAC;SAC5B,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;SACxB,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,OAAO,CAAC;SACf,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,IAAI,CAAC,GAAG,CAAC;SACT,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SACZ,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvB,OAAO,IAAI,IAAI,QAAQ,CAAC;AAC1B,CAAC,CAAC;AAYF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,MAAc,EAAc,EAAE;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO;QACL,MAAM,EAAE,QAAQ;QAChB,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC;QAC9D,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC;QAC9D,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,qBAAqB,CAAC;QACvD,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,+BAA+B,CAAC;QACrE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,yBAAyB,CAAC;QAC1D,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC;KACvD,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,IAI1C,EAAuB,EAAE;IACxB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAChF,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"draft-workspace.js","sourceRoot":"","sources":["../src/draft-workspace.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ export type HostedDraftCandidateSpecInput = {
|
|
|
4
4
|
slot: string;
|
|
5
5
|
direction?: string;
|
|
6
6
|
referenceId?: string;
|
|
7
|
+
referenceEvidence?: Readonly<Record<string, unknown>>;
|
|
7
8
|
useReferenceImage?: boolean;
|
|
8
9
|
};
|
|
9
10
|
/**
|
|
@@ -17,5 +18,13 @@ export declare const hostedDraftRunKey: (args: {
|
|
|
17
18
|
candidates: readonly HostedDraftCandidateSpecInput[];
|
|
18
19
|
referenceImageSha256?: string;
|
|
19
20
|
retainIdentity?: string;
|
|
21
|
+
/**
|
|
22
|
+
* The attached page's own visible text, when improve carried it. Different
|
|
23
|
+
* words are a different image prompt and therefore a different purchase, so
|
|
24
|
+
* they belong in the paid identity — and they are APPENDED ONLY WHEN PRESENT
|
|
25
|
+
* so every key claimed before this existed still hashes to the same run and
|
|
26
|
+
* replays instead of re-buying (CLAUDE.md item 3).
|
|
27
|
+
*/
|
|
28
|
+
pageWords?: string;
|
|
20
29
|
}) => string;
|
|
21
30
|
//# sourceMappingURL=hosted-draft-identity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-draft-identity.d.ts","sourceRoot":"","sources":["../src/hosted-draft-identity.ts"],"names":[],"mappings":"AAEA,4DAA4D;AAC5D,eAAO,MAAM,8BAA8B,oBAAoB,CAAC;AAEhE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;
|
|
1
|
+
{"version":3,"file":"hosted-draft-identity.d.ts","sourceRoot":"","sources":["../src/hosted-draft-identity.ts"],"names":[],"mappings":"AAEA,4DAA4D;AAC5D,eAAO,MAAM,8BAA8B,oBAAoB,CAAC;AAEhE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IACtD,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAcF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,SAAS,6BAA6B,EAAE,CAAC;IACrD,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,KAAG,MAgBO,CAAC"}
|
|
@@ -6,6 +6,7 @@ const canonicalCandidate = (candidate) => [
|
|
|
6
6
|
candidate.slot,
|
|
7
7
|
candidate.direction ?? '',
|
|
8
8
|
candidate.referenceId ?? '',
|
|
9
|
+
candidate.referenceEvidence ? JSON.stringify(candidate.referenceEvidence) : '',
|
|
9
10
|
candidate.useReferenceImage === true ? 'upload' : '',
|
|
10
11
|
].join('\0');
|
|
11
12
|
/**
|
|
@@ -25,6 +26,7 @@ export const hostedDraftRunKey = (args) => [
|
|
|
25
26
|
.sort((left, right) => left.slot.localeCompare(right.slot))
|
|
26
27
|
.map(canonicalCandidate)
|
|
27
28
|
.join('\u0001'),
|
|
29
|
+
...(args.pageWords ? [args.pageWords] : []),
|
|
28
30
|
HOSTED_DRAFT_WORKFLOW_REVISION,
|
|
29
31
|
].join('\u0002')),
|
|
30
32
|
].join(':');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hosted-draft-identity.js","sourceRoot":"","sources":["../src/hosted-draft-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,4DAA4D;AAC5D,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"hosted-draft-identity.js","sourceRoot":"","sources":["../src/hosted-draft-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,4DAA4D;AAC5D,MAAM,CAAC,MAAM,8BAA8B,GAAG,iBAAiB,CAAC;AAUhE,MAAM,WAAW,GAAG,CAAC,KAAa,EAAE,UAAU,GAAG,EAAE,EAAU,EAAE,CAAC,CAC9D,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CACtE,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,SAAwC,EAAU,EAAE,CAAC;IAC/E,SAAS,CAAC,IAAI;IACd,SAAS,CAAC,SAAS,IAAI,EAAE;IACzB,SAAS,CAAC,WAAW,IAAI,EAAE;IAC3B,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE;IAC9E,SAAS,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;CACrD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,IAejC,EAAU,EAAE,CAAC;IACZ,OAAO;IACP,WAAW;IACX,WAAW,CAAC;QACV,IAAI,CAAC,OAAO;QACZ,IAAI,CAAC,MAAM;QACX,IAAI,CAAC,IAAI,IAAI,aAAa;QAC1B,IAAI,CAAC,oBAAoB,IAAI,EAAE;QAC/B,IAAI,CAAC,cAAc,IAAI,EAAE;QACzB,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC;aACjB,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aAC1D,GAAG,CAAC,kBAAkB,CAAC;aACvB,IAAI,CAAC,QAAQ,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,8BAA8B;KAC/B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;CAClB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC"}
|
|
@@ -1,32 +1,13 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
type
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
destination?: string;
|
|
14
|
-
resolvable: boolean;
|
|
15
|
-
};
|
|
16
|
-
};
|
|
17
|
-
/** Flatten target leaves while retaining group ancestry for sibling placement. */
|
|
18
|
-
export declare const flattenImproveHierarchy: (document: unknown) => HierarchyLeaf[];
|
|
19
|
-
export declare const buildImproveAddedElementSpecs: (args: {
|
|
20
|
-
targetDoc: unknown;
|
|
21
|
-
designPath: string;
|
|
22
|
-
normalizedTarget: readonly LayerLeaf[];
|
|
23
|
-
before: readonly LayerLeaf[];
|
|
24
|
-
canvas: {
|
|
25
|
-
width: number;
|
|
26
|
-
height: number;
|
|
27
|
-
};
|
|
28
|
-
diff: LayerDiffResult;
|
|
29
|
-
outDir: string;
|
|
30
|
-
}) => Promise<AddedElementSpec[]>;
|
|
31
|
-
export {};
|
|
1
|
+
import type { ImproveAssetResolver } from './improve-core/index.js';
|
|
2
|
+
export { buildImproveAddedElementSpecs, flattenImproveHierarchy, improveArtifactIds, type AddedElementSpec, type ImproveAssetResolver, } from './improve-core/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Resolves an added element's extracted raster against what the conversion left
|
|
5
|
+
* beside the target design.
|
|
6
|
+
*
|
|
7
|
+
* The manifest is the declaration and the directory is the fact, so a declared
|
|
8
|
+
* `localPath` only wins if it is really there; otherwise the artifact id's own
|
|
9
|
+
* file is looked up by prefix. Both reads happen once per plan rather than once
|
|
10
|
+
* per leaf, and synchronously, because the plan core is synchronous by design.
|
|
11
|
+
*/
|
|
12
|
+
export declare const createImproveAssetResolver: (designPath: string) => ImproveAssetResolver;
|
|
32
13
|
//# sourceMappingURL=improve-added-specs.d.ts.map
|