@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
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { mkdir, writeFile } from 'node:fs/promises';
|
|
1
|
+
import { mkdir, readFile, stat, writeFile } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
3
|
import { formatDuration } from './cli-progress.js';
|
|
4
4
|
import { readImproveKitAssets } from './improve-kit-assets.js';
|
|
5
|
-
import { IMPROVE_NO_APPROXIMATION_RULE, improveRecoveryLine, readImproveKitStatus, } from './improve-kit-status.js';
|
|
6
|
-
import { improveConversionIdFromText, improveErrorText, improveResumeConversion, } from './improve-convert-resilience.js';
|
|
7
|
-
import { renderImproveRasterLayers } from './improve-
|
|
5
|
+
import { IMPROVE_NO_APPROXIMATION_RULE, IMPROVE_STALL_RESOLVED_HEADING, improveRecoveryLine, readImproveKitStatus, shellArg, } from './improve-kit-status.js';
|
|
6
|
+
import { improveConversionIdFromText, improveErrorText, improveResponsiveOutcomeWord, improveResumeConversion, } from './improve-convert-resilience.js';
|
|
7
|
+
import { renderImproveRasterLayers } from './improve-core/index.js';
|
|
8
8
|
import { improveAbandonedLines } from './improve-reset.js';
|
|
9
9
|
import { readRunJournal } from './run-journal.js';
|
|
10
|
-
import { improvePaths } from './improve-workspace.js';
|
|
10
|
+
import { improvePaths, } from './improve-workspace.js';
|
|
11
11
|
/**
|
|
12
12
|
* A stalled run still writes a plan directory.
|
|
13
13
|
*
|
|
@@ -34,7 +34,14 @@ export const collectImproveStallFacts = async (args) => {
|
|
|
34
34
|
const hostedRunId = args.inFlight
|
|
35
35
|
? journalled ?? improveConversionIdFromText(text) ?? recorded
|
|
36
36
|
: recorded ?? improveConversionIdFromText(text) ?? journalled;
|
|
37
|
-
|
|
37
|
+
// A `convert` block still on the record while this run is INSIDE convert
|
|
38
|
+
// settled an earlier conversion — the same reason the hosted run above prefers
|
|
39
|
+
// the journal. Only the convert stage owns that block, so a stop during plan
|
|
40
|
+
// leaves it alone: there the settled conversion really is what a resume
|
|
41
|
+
// replays, and saying nothing would send a lane to convert again.
|
|
42
|
+
const resume = improveResumeConversion(args.record, {
|
|
43
|
+
inFlight: args.inFlight === true && args.stage === 'convert',
|
|
44
|
+
});
|
|
38
45
|
// An attempt whose id never reached the record, named from the journal
|
|
39
46
|
// instead. It is the same conversion: the open attempt is what THIS
|
|
40
47
|
// invocation dispatched, and `inFlight` is what makes the journal's newest
|
|
@@ -76,8 +83,20 @@ const targetContents = (status) => {
|
|
|
76
83
|
* which is false and costs a conversion when the reader buys another instead.
|
|
77
84
|
*/
|
|
78
85
|
const resumeLines = (facts) => {
|
|
79
|
-
|
|
80
|
-
|
|
86
|
+
// A report that cannot say how to reattach is a report that costs the reader a
|
|
87
|
+
// conversion. `facts.resume` is populated by the resume ledger, and whether it
|
|
88
|
+
// exists depends on WHEN a signal landed — a SIGTERM early enough leaves the
|
|
89
|
+
// hosted run alive with nothing recorded about it. That is exactly the case in
|
|
90
|
+
// which the reader most needs the id, so returning nothing here was backwards:
|
|
91
|
+
// the run id we already hold is enough to reattach, and it is on the record.
|
|
92
|
+
if (!facts.resume) {
|
|
93
|
+
return facts.hostedRunId
|
|
94
|
+
? [`- Resume attaches to: \`${facts.hostedRunId}\` — the first command below`
|
|
95
|
+
+ ' re-attaches to the conversion this run dispatched, rather than buying another']
|
|
96
|
+
: ['- Resume attaches to: the conversion this kit dispatched under its recorded key —'
|
|
97
|
+
+ ' no id was recorded before the run stopped, but the key is on the record, so the'
|
|
98
|
+
+ ' first command below rebuilds it and re-attaches rather than buying another'];
|
|
99
|
+
}
|
|
81
100
|
const reaches = facts.resume.reason === 'settled'
|
|
82
101
|
? 'the first command below replays it and buys nothing'
|
|
83
102
|
: 'the first command below rebuilds this kit\'s conversion key and re-attaches to it,'
|
|
@@ -98,39 +117,204 @@ const resumeLines = (facts) => {
|
|
|
98
117
|
}
|
|
99
118
|
return lines;
|
|
100
119
|
};
|
|
120
|
+
/**
|
|
121
|
+
* What a recovered run owes its reader: what stalled, what shipped instead, and
|
|
122
|
+
* how to collect the stalled half later without buying anything. That later
|
|
123
|
+
* responsive collection does not revise the plan: its anchored evidence is the
|
|
124
|
+
* free fixed-layout derivation this invocation actually used.
|
|
125
|
+
*
|
|
126
|
+
* `12ui resume` collects an existing purchase — it never retries, reconfigures
|
|
127
|
+
* or creates — so it is the only honest way to offer the responsive export a
|
|
128
|
+
* lane already paid for. The kit itself needs no re-run: the plan is built.
|
|
129
|
+
*/
|
|
130
|
+
const fallbackLines = (facts, runDir) => [
|
|
131
|
+
'',
|
|
132
|
+
'## What shipped instead',
|
|
133
|
+
'',
|
|
134
|
+
'- The fixed-layout HTML derived free from the same conversion, and the plan was built from'
|
|
135
|
+
+ ' that derivation. It is not a responsive deliverable.',
|
|
136
|
+
'- The LayerDoc and its assets are unaffected: they are the full-quality source of truth and'
|
|
137
|
+
+ ' the plan anchors to them.',
|
|
138
|
+
'- Nothing here needs re-running, and nothing was bought twice.',
|
|
139
|
+
'',
|
|
140
|
+
'## Recovery',
|
|
141
|
+
'',
|
|
142
|
+
// A conversion the SERVICE failed is finished. Offering `resume` for it sends
|
|
143
|
+
// a lane to collect an artifact that will never exist (F34).
|
|
144
|
+
...(facts.responsiveOutcome === 'server-failed'
|
|
145
|
+
? ['The service failed this export; the reason is on the line above. There is nothing to'
|
|
146
|
+
+ ' collect and nothing running. A responsive deliverable needs a new conversion, which'
|
|
147
|
+
+ ' costs money — decide that deliberately rather than as a recovery step.']
|
|
148
|
+
: [
|
|
149
|
+
'If the responsive export completes later, collect `target/winner.html`. `resume` recovers an'
|
|
150
|
+
+ ' existing purchase; it never retries, reconfigures, or creates a conversion, so it buys nothing.',
|
|
151
|
+
'The plan remains based on the fixed-layout fallback; collection does not silently revise it:',
|
|
152
|
+
'',
|
|
153
|
+
...(facts.hostedRunId
|
|
154
|
+
? [` 12ui resume ${facts.hostedRunId} --out-dir ${shellArg(path.join(runDir, 'target'))}`]
|
|
155
|
+
: [' 12ui resume <conversion-id> --out-dir <kit>/target']),
|
|
156
|
+
]),
|
|
157
|
+
'',
|
|
158
|
+
];
|
|
101
159
|
export const renderImproveStall = (args) => {
|
|
102
160
|
const waited = args.facts.waitedSeconds === undefined
|
|
103
161
|
? 'unrecorded'
|
|
104
162
|
: `${formatDuration(args.facts.waitedSeconds)}`
|
|
163
|
+
+ `${args.facts.boundSeconds === undefined
|
|
164
|
+
? ''
|
|
165
|
+
: ` (bound ${formatDuration(args.facts.boundSeconds)})`}`
|
|
105
166
|
+ `${args.facts.typicalSeconds === undefined
|
|
106
167
|
? ''
|
|
107
168
|
: ` against a typical ${formatDuration(args.facts.typicalSeconds)}`}`;
|
|
169
|
+
const fallback = args.facts.kind === 'fallback';
|
|
108
170
|
const lines = [
|
|
109
|
-
|
|
171
|
+
// A recovered run is not INCOMPLETE — the kit is whole and the plan is
|
|
172
|
+
// built — so it must not lead with the word that tells a lane to stop and
|
|
173
|
+
// resume. It still leads with what stalled, because that is the fact the
|
|
174
|
+
// summary, the README and this file all have to agree on (F8).
|
|
175
|
+
fallback
|
|
176
|
+
? `# Responsive export ${improveResponsiveOutcomeWord(args.facts.responsiveOutcome)}`
|
|
177
|
+
+ ' — plan from the fixed-layout fallback'
|
|
178
|
+
: `# INCOMPLETE — this run ${args.facts.kind === 'stopped' ? 'was stopped' : 'stalled'}`,
|
|
110
179
|
'',
|
|
111
|
-
`- Stage: ${args.facts.stage}`
|
|
180
|
+
`- Stage: ${args.facts.stage}${fallback ? ' (responsive export)' : ''}`
|
|
112
181
|
+ `${args.facts.serviceStage ? ` (service stage \`${args.facts.serviceStage}\`)` : ''}`,
|
|
113
182
|
`- Waited: ${waited}`,
|
|
114
183
|
`- Hosted run: ${args.facts.hostedRunId ? `\`${args.facts.hostedRunId}\`` : 'not recorded'}`,
|
|
115
|
-
...resumeLines(args.facts),
|
|
184
|
+
...(fallback ? [] : resumeLines(args.facts)),
|
|
116
185
|
`- In \`target/\`: ${targetContents(args.status)}`,
|
|
117
186
|
`- Reason: ${args.facts.reason}`,
|
|
118
187
|
...improveAbandonedLines(args.record),
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
188
|
+
...(fallback ? fallbackLines(args.facts, args.record.runDir) : [
|
|
189
|
+
'',
|
|
190
|
+
'## Recovery',
|
|
191
|
+
'',
|
|
192
|
+
'Run the first command; it resumes and replays every settled stage rather than buying them again.',
|
|
193
|
+
'',
|
|
194
|
+
...args.status.recovery.map(improveRecoveryLine),
|
|
195
|
+
// The conversion this run was waiting on is still running and still
|
|
196
|
+
// billing, and improve bought nothing to replace it (F19). `resume`
|
|
197
|
+
// collects it — it never retries, reconfigures or creates — so it is the
|
|
198
|
+
// second thing to reach for, ahead of any command that converts again.
|
|
199
|
+
...(args.facts.hostedRunId ? [
|
|
200
|
+
'',
|
|
201
|
+
'The conversion above is still running. Collect it directly once it finishes;'
|
|
202
|
+
+ ' `resume` recovers an existing purchase and buys nothing:',
|
|
203
|
+
'',
|
|
204
|
+
` 12ui resume ${args.facts.hostedRunId}`
|
|
205
|
+
+ ` --out-dir ${shellArg(path.join(args.record.runDir, 'target'))}`,
|
|
206
|
+
] : []),
|
|
207
|
+
'',
|
|
208
|
+
// Only for a kit that is actually missing something. Telling a complete
|
|
209
|
+
// fallback kit to "resume or convert first" would send a lane to buy the
|
|
210
|
+
// conversion it already has.
|
|
211
|
+
IMPROVE_NO_APPROXIMATION_RULE,
|
|
212
|
+
'',
|
|
213
|
+
]),
|
|
128
214
|
];
|
|
129
215
|
if (args.status.present.layerDoc) {
|
|
130
|
-
lines.push(
|
|
216
|
+
lines.push(
|
|
217
|
+
// What the LayerDoc makes available, in the words the README uses for the
|
|
218
|
+
// same fact (F22). "Usable without a plan" read as permission to build
|
|
219
|
+
// the page without one, three lines under a rule that forbids exactly
|
|
220
|
+
// that; the boundary now lives in one place and both files print it.
|
|
221
|
+
'A LayerDoc survived this run, so the design\'s raster layers are already extracted.'
|
|
222
|
+
+ ' They are files: carry them.', '', ...renderImproveRasterLayers({ layers: args.index.rasterLayers }));
|
|
131
223
|
}
|
|
132
224
|
return lines.join('\n');
|
|
133
225
|
};
|
|
226
|
+
/**
|
|
227
|
+
* The same file, for the run that recovered.
|
|
228
|
+
*
|
|
229
|
+
* The facts come off the durable record rather than out of an error, because
|
|
230
|
+
* there is no error: the responsive export stalled, the free derivation took
|
|
231
|
+
* over, and the run went on to build a plan. A kit written before
|
|
232
|
+
* `responsiveStall` existed records the fallback but not its timings, so this
|
|
233
|
+
* writes what it has and never invents a number.
|
|
234
|
+
*/
|
|
235
|
+
export const writeImproveFallbackStall = async (args) => {
|
|
236
|
+
const convert = args.record.convert;
|
|
237
|
+
if (convert?.layout !== 'fixed')
|
|
238
|
+
return undefined;
|
|
239
|
+
const paths = improvePaths(args.record.runDir);
|
|
240
|
+
const stall = convert.responsiveStall;
|
|
241
|
+
const facts = {
|
|
242
|
+
stage: 'convert',
|
|
243
|
+
kind: 'fallback',
|
|
244
|
+
...(stall?.conversionId ?? convert.sourceConversionId
|
|
245
|
+
? { hostedRunId: stall?.conversionId ?? convert.sourceConversionId }
|
|
246
|
+
: {}),
|
|
247
|
+
...(stall ? { waitedSeconds: stall.waitedSeconds, boundSeconds: stall.boundSeconds } : {}),
|
|
248
|
+
...(convert.responsiveOutcome ? { responsiveOutcome: convert.responsiveOutcome } : {}),
|
|
249
|
+
reason: convert.responsiveWarning ?? 'Responsive HTML was unavailable.',
|
|
250
|
+
};
|
|
251
|
+
const [status, index] = await Promise.all([
|
|
252
|
+
readImproveKitStatus({
|
|
253
|
+
record: args.record,
|
|
254
|
+
...(args.requestedTo ? { requestedTo: args.requestedTo } : {}),
|
|
255
|
+
}),
|
|
256
|
+
readImproveKitAssets({ runDir: args.record.runDir, layerDocPath: paths.targetLayerDoc }),
|
|
257
|
+
]);
|
|
258
|
+
await mkdir(paths.planDir, { recursive: true });
|
|
259
|
+
const file = path.join(paths.planDir, 'STALL.md');
|
|
260
|
+
await writeFile(file, renderImproveStall({ record: args.record, facts, status, index }), 'utf8');
|
|
261
|
+
return file;
|
|
262
|
+
};
|
|
263
|
+
const stalledStageFrom = (content) => (/^- Stage: ([a-z]+)/mu.exec(content)?.[1]);
|
|
264
|
+
/**
|
|
265
|
+
* The stall this kit recorded is over, so the file that recorded it stops
|
|
266
|
+
* saying the kit is INCOMPLETE (F21).
|
|
267
|
+
*
|
|
268
|
+
* Freshdesk's `--from convert` resume settled at 18:56:41Z and wrote a whole
|
|
269
|
+
* plan; the `plan/STALL.md` from 18:48:17Z survived beside it, still saying
|
|
270
|
+
* "this run was stopped", "no plan", and "resume or convert first" — directly
|
|
271
|
+
* contradicting the README above it, which said the plan was settled. A reader
|
|
272
|
+
* opening that kit cold got two mutually exclusive statuses and no way to tell
|
|
273
|
+
* which was current.
|
|
274
|
+
*
|
|
275
|
+
* The file is REPLACED rather than deleted: it is the durable record that this
|
|
276
|
+
* kit stalled once, which is worth keeping, and a README that links to it must
|
|
277
|
+
* not link to nothing. Its mtime is when the stall was written, which is the
|
|
278
|
+
* one timestamp neither the record nor the journal keeps.
|
|
279
|
+
*/
|
|
280
|
+
export const resolveImproveStall = async (args) => {
|
|
281
|
+
// Only once every stage this kit was asked for has settled. A `--to pick`
|
|
282
|
+
// run, or one that stalled again, leaves the file standing because it is
|
|
283
|
+
// still true.
|
|
284
|
+
if (!args.status.present.stall)
|
|
285
|
+
return undefined;
|
|
286
|
+
if (args.status.stages.some((stage) => stage.state === 'incomplete'))
|
|
287
|
+
return undefined;
|
|
288
|
+
// A fallback kit's STALL.md is rewritten by `writeImproveFallbackStall` every
|
|
289
|
+
// run and describes a stall that is not over: the responsive export never
|
|
290
|
+
// arrived, and the recovery it offers still collects it.
|
|
291
|
+
if (args.record.convert?.layout === 'fixed')
|
|
292
|
+
return undefined;
|
|
293
|
+
const file = path.join(improvePaths(args.record.runDir).planDir, 'STALL.md');
|
|
294
|
+
const [content, stalledAt] = await Promise.all([
|
|
295
|
+
readFile(file, 'utf8').catch(() => undefined),
|
|
296
|
+
stat(file).then((entry) => entry.mtime).catch(() => undefined),
|
|
297
|
+
]);
|
|
298
|
+
if (content === undefined)
|
|
299
|
+
return undefined;
|
|
300
|
+
if (content.startsWith(IMPROVE_STALL_RESOLVED_HEADING))
|
|
301
|
+
return file;
|
|
302
|
+
const stage = stalledStageFrom(content);
|
|
303
|
+
await writeFile(file, [
|
|
304
|
+
IMPROVE_STALL_RESOLVED_HEADING,
|
|
305
|
+
'',
|
|
306
|
+
`- Stalled at: ${stalledAt ? stalledAt.toISOString() : 'unrecorded'}`
|
|
307
|
+
+ `${stage ? ` (stage ${stage})` : ''}`,
|
|
308
|
+
`- Resumed and settled at: ${(args.now ?? new Date()).toISOString()}`,
|
|
309
|
+
'- Every stage this kit was asked for has settled since. The plan and the target'
|
|
310
|
+
+ ' beside this file are current, and nothing here needs re-running.',
|
|
311
|
+
'',
|
|
312
|
+
'This file is kept as the record that the run stalled once. `README.md` has the'
|
|
313
|
+
+ ' kit\'s status, and `plan/plan-annotated.md` has the work.',
|
|
314
|
+
'',
|
|
315
|
+
].join('\n'), 'utf8');
|
|
316
|
+
return file;
|
|
317
|
+
};
|
|
134
318
|
/**
|
|
135
319
|
* Write `plan/STALL.md`, creating `plan/` when the plan stage never ran.
|
|
136
320
|
* Returns the file so the caller can journal it as an artifact.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"improve-kit-stall.js","sourceRoot":"","sources":["../src/improve-kit-stall.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"improve-kit-stall.js","sourceRoot":"","sources":["../src/improve-kit-stall.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,6 +41,8 @@ export type ImproveKitStatus = {
|
|
|
41
41
|
plan: boolean;
|
|
42
42
|
gate: boolean;
|
|
43
43
|
stall: boolean;
|
|
44
|
+
/** The `STALL.md` present is the record of a stall that has since settled. */
|
|
45
|
+
stallResolved: boolean;
|
|
44
46
|
};
|
|
45
47
|
/** The file a reader should look at and a conversion can be re-run from. */
|
|
46
48
|
designImage: string;
|
|
@@ -48,6 +50,25 @@ export type ImproveKitStatus = {
|
|
|
48
50
|
designKind: 'image' | 'layerdoc';
|
|
49
51
|
recovery: ImproveRecoveryCommand[];
|
|
50
52
|
};
|
|
53
|
+
/**
|
|
54
|
+
* The heading a `plan/STALL.md` leads with once the stall it recorded has
|
|
55
|
+
* settled. It lives here rather than beside the renderer because the kit
|
|
56
|
+
* status has to be able to tell a live stall from a resolved one without
|
|
57
|
+
* importing the renderer that writes it.
|
|
58
|
+
*/
|
|
59
|
+
export declare const IMPROVE_STALL_RESOLVED_HEADING = "# Resolved \u2014 the stall recorded here has settled";
|
|
60
|
+
/**
|
|
61
|
+
* THE ONE BOUNDARY SENTENCE, and the reason it is one sentence in one module.
|
|
62
|
+
*
|
|
63
|
+
* The README and `plan/STALL.md` shipped together and disagreed (F22). The
|
|
64
|
+
* README said "do not approximate the design in CSS from the PNG while a stage
|
|
65
|
+
* is incomplete"; three lines further down STALL.md said "a LayerDoc survived
|
|
66
|
+
* this run, so the design's raster layers are usable without a plan". Both are
|
|
67
|
+
* true of different things — carry the rasters, do not redraw the layout — but
|
|
68
|
+
* nothing in the kit said so, and a lane had to adjudicate the contradiction
|
|
69
|
+
* itself, after both of its conversions were already spent. Every renderer
|
|
70
|
+
* prints this string; none writes its own version of it.
|
|
71
|
+
*/
|
|
51
72
|
export declare const IMPROVE_NO_APPROXIMATION_RULE: string;
|
|
52
73
|
/**
|
|
53
74
|
* A recovery command is presented as copy-and-run, so it has to survive being
|
|
@@ -55,6 +76,21 @@ export declare const IMPROVE_NO_APPROXIMATION_RULE: string;
|
|
|
55
76
|
* either one unquoted breaks the line or backgrounds it at the `&`.
|
|
56
77
|
*/
|
|
57
78
|
export declare const shellArg: (value: string) => string;
|
|
79
|
+
/**
|
|
80
|
+
* The draw is ready and nobody has chosen.
|
|
81
|
+
*
|
|
82
|
+
* `--pick` has no default, so a run with candidates and no pick is a finished
|
|
83
|
+
* run holding a drafts-only kit — not a stall. It is the one incomplete state
|
|
84
|
+
* whose recovery is neither a resume nor a conversion.
|
|
85
|
+
*/
|
|
86
|
+
export declare const improveAwaitingPick: (record: ImproveRecord) => boolean;
|
|
87
|
+
/**
|
|
88
|
+
* The `--pick` placeholder, in one place, so the run summary and the kit README
|
|
89
|
+
* cannot drift into naming different slots for the same draw.
|
|
90
|
+
*/
|
|
91
|
+
export declare const improvePickSlotHint: (record: ImproveRecord) => string;
|
|
92
|
+
/** The one sentence a never-picked kit needs before its recovery command. */
|
|
93
|
+
export declare const IMPROVE_AWAITING_PICK_RULE: string;
|
|
58
94
|
export declare const improveRecoveryCommands: (args: {
|
|
59
95
|
record: ImproveRecord;
|
|
60
96
|
designImage: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"improve-kit-status.d.ts","sourceRoot":"","sources":["../src/improve-kit-status.ts"],"names":[],"mappings":"AAGA,OAAO,
|
|
1
|
+
{"version":3,"file":"improve-kit-status.d.ts","sourceRoot":"","sources":["../src/improve-kit-status.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,aAAa,EAClB,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAEhC;;;;;;;GAOG;AAEH,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,SAAS,GACT,UAAU,GACV,SAAS,GACT,YAAY,GACZ,eAAe,CAAC;AAEpB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,iBAAiB,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,uBAAuB,GACvB,eAAe,GACf,MAAM,CAAC;AAEX,sDAAsD;AACtD,MAAM,MAAM,sBAAsB,GAAG;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,+EAA+E;IAC/E,QAAQ,EAAE,OAAO,CAAC;IAClB;;;;;OAKG;IACH,WAAW,EAAE,OAAO,CAAC;IACrB,8EAA8E;IAC9E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,OAAO,EAAE;QACP,MAAM,EAAE,OAAO,CAAC;QAChB,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,OAAO,CAAC;QAChB,UAAU,EAAE,OAAO,CAAC;QACpB,IAAI,EAAE,OAAO,CAAC;QACd,IAAI,EAAE,OAAO,CAAC;QACd,KAAK,EAAE,OAAO,CAAC;QACf,8EAA8E;QAC9E,aAAa,EAAE,OAAO,CAAC;KACxB,CAAC;IACF,4EAA4E;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,6EAA6E;IAC7E,UAAU,EAAE,OAAO,GAAG,UAAU,CAAC;IACjC,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACpC,CAAC;AA8DF;;;;;GAKG;AACH,eAAO,MAAM,8BAA8B,0DAAqD,CAAC;AAEjG;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,6BAA6B,QAE2C,CAAC;AAEtF;;;;GAIG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,KAAG,MAExC,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,aAAa,KAAG,OAE3D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,mBAAmB,GAAI,QAAQ,aAAa,KAAG,MAG3D,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,0BAA0B,QAEoC,CAAC;AAE5E,eAAO,MAAM,uBAAuB,GAAI,MAAM;IAC5C,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;CACrB,KAAG,sBAAsB,EA8BzB,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,mBAAmB,GAAI,OAAO,sBAAsB,KAAG,MAEnE,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAU,MAAM;IAC/C,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,CAAC,EAAE,YAAY,CAAC;CAC5B,KAAG,OAAO,CAAC,gBAAgB,CAwF3B,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAAI,QAAQ,kBAAkB,KAAG,MAGnE,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { stat } from 'node:fs/promises';
|
|
1
|
+
import { readFile, stat } from 'node:fs/promises';
|
|
2
2
|
import path from 'node:path';
|
|
3
|
-
import { IMPROVE_STAGES, improvePaths } from './improve-workspace.js';
|
|
3
|
+
import { IMPROVE_STAGES, improvePaths, improveStagesForScope, } from './improve-workspace.js';
|
|
4
4
|
const isFile = async (file) => Boolean(await stat(file).then((entry) => entry.isFile()).catch(() => false));
|
|
5
5
|
const isDirectory = async (file) => Boolean(await stat(file).then((entry) => entry.isDirectory()).catch(() => false));
|
|
6
6
|
const stageState = (args) => {
|
|
@@ -13,6 +13,20 @@ const stageState = (args) => {
|
|
|
13
13
|
if (settled.outcome === 'skipped') {
|
|
14
14
|
return { stage: args.stage, state: 'skipped', detail: 'a target was supplied' };
|
|
15
15
|
}
|
|
16
|
+
// Recorded at dispatch and never settled (F19). The entry exists so the kit
|
|
17
|
+
// can price the paid call it is still owed a result for; it is not evidence
|
|
18
|
+
// the stage ran, and reading it as one would call a stalled kit settled.
|
|
19
|
+
// `stalled` is the same entry after the run gave up on it (F28) — still
|
|
20
|
+
// incomplete, and still the stage `plan/STALL.md` is about.
|
|
21
|
+
if (settled.outcome === 'dispatched' || settled.outcome === 'stalled') {
|
|
22
|
+
return {
|
|
23
|
+
stage: args.stage,
|
|
24
|
+
state: 'incomplete',
|
|
25
|
+
detail: settled.outcome === 'stalled'
|
|
26
|
+
? 'a paid call was dispatched and stalled; read `plan/STALL.md`'
|
|
27
|
+
: 'a paid call was dispatched and has not settled; read `plan/STALL.md`',
|
|
28
|
+
};
|
|
29
|
+
}
|
|
16
30
|
if (args.blocked) {
|
|
17
31
|
return {
|
|
18
32
|
stage: args.stage,
|
|
@@ -35,18 +49,69 @@ const stageState = (args) => {
|
|
|
35
49
|
...(settled.replayCount > 0 ? { detail: `replayed ${settled.replayCount}×, bought once` } : {}),
|
|
36
50
|
};
|
|
37
51
|
};
|
|
38
|
-
|
|
39
|
-
|
|
52
|
+
/**
|
|
53
|
+
* The heading a `plan/STALL.md` leads with once the stall it recorded has
|
|
54
|
+
* settled. It lives here rather than beside the renderer because the kit
|
|
55
|
+
* status has to be able to tell a live stall from a resolved one without
|
|
56
|
+
* importing the renderer that writes it.
|
|
57
|
+
*/
|
|
58
|
+
export const IMPROVE_STALL_RESOLVED_HEADING = '# Resolved — the stall recorded here has settled';
|
|
59
|
+
/**
|
|
60
|
+
* THE ONE BOUNDARY SENTENCE, and the reason it is one sentence in one module.
|
|
61
|
+
*
|
|
62
|
+
* The README and `plan/STALL.md` shipped together and disagreed (F22). The
|
|
63
|
+
* README said "do not approximate the design in CSS from the PNG while a stage
|
|
64
|
+
* is incomplete"; three lines further down STALL.md said "a LayerDoc survived
|
|
65
|
+
* this run, so the design's raster layers are usable without a plan". Both are
|
|
66
|
+
* true of different things — carry the rasters, do not redraw the layout — but
|
|
67
|
+
* nothing in the kit said so, and a lane had to adjudicate the contradiction
|
|
68
|
+
* itself, after both of its conversions were already spent. Every renderer
|
|
69
|
+
* prints this string; none writes its own version of it.
|
|
70
|
+
*/
|
|
71
|
+
export const IMPROVE_NO_APPROXIMATION_RULE = 'Once the LayerDoc exists, carry its raster layers as'
|
|
72
|
+
+ ' real assets — copy the files and reference them. Do not approximate the design\'s layout or'
|
|
73
|
+
+ ' text in CSS from the PNG while a stage is incomplete; resume or convert first.';
|
|
40
74
|
/**
|
|
41
75
|
* A recovery command is presented as copy-and-run, so it has to survive being
|
|
42
76
|
* pasted. Capture URLs carry query strings and `--out-dir` paths carry spaces;
|
|
43
77
|
* either one unquoted breaks the line or backgrounds it at the `&`.
|
|
44
78
|
*/
|
|
45
79
|
export const shellArg = (value) => (/^[A-Za-z0-9_./:=-]+$/u.test(value) ? value : `'${value.replace(/'/gu, "'\\''")}'`);
|
|
80
|
+
/**
|
|
81
|
+
* The draw is ready and nobody has chosen.
|
|
82
|
+
*
|
|
83
|
+
* `--pick` has no default, so a run with candidates and no pick is a finished
|
|
84
|
+
* run holding a drafts-only kit — not a stall. It is the one incomplete state
|
|
85
|
+
* whose recovery is neither a resume nor a conversion.
|
|
86
|
+
*/
|
|
87
|
+
export const improveAwaitingPick = (record) => (!record.pick && !record.target && (record.draft?.candidates.length ?? 0) > 0);
|
|
88
|
+
/**
|
|
89
|
+
* The `--pick` placeholder, in one place, so the run summary and the kit README
|
|
90
|
+
* cannot drift into naming different slots for the same draw.
|
|
91
|
+
*/
|
|
92
|
+
export const improvePickSlotHint = (record) => {
|
|
93
|
+
const slots = (record.draft?.candidates ?? []).map((candidate) => candidate.slot);
|
|
94
|
+
return `<A-${slots.at(-1) ?? 'P'}>`;
|
|
95
|
+
};
|
|
96
|
+
/** The one sentence a never-picked kit needs before its recovery command. */
|
|
97
|
+
export const IMPROVE_AWAITING_PICK_RULE = 'The draw is ready and nothing has been picked.'
|
|
98
|
+
+ ' The CLI stops after drafting by design: nothing is converted until you choose a candidate,'
|
|
99
|
+
+ ' because converting a candidate nobody chose spends money on a guess.';
|
|
46
100
|
export const improveRecoveryCommands = (args) => {
|
|
47
101
|
const runDir = shellArg(args.record.runDir);
|
|
48
102
|
const input = shellArg(args.record.input.value);
|
|
49
103
|
const design = shellArg(args.designImage);
|
|
104
|
+
// A never-picked kit has no winner, so `designImage` falls back to the
|
|
105
|
+
// capture — the page the run was asked to improve. The three commands below
|
|
106
|
+
// all resolve to it, so offering them here sent a reader to buy a conversion
|
|
107
|
+
// of the page they were improving. The pick is this state's only recovery.
|
|
108
|
+
if (improveAwaitingPick(args.record)) {
|
|
109
|
+
return [{
|
|
110
|
+
command: `12ui improve ${input} --out-dir ${runDir}`
|
|
111
|
+
+ ` --from pick --pick ${improvePickSlotHint(args.record)}`,
|
|
112
|
+
spends: 'picks a candidate, then buys its conversion and plan',
|
|
113
|
+
}];
|
|
114
|
+
}
|
|
50
115
|
return [
|
|
51
116
|
{
|
|
52
117
|
command: `12ui improve ${input} --out-dir ${runDir} --from convert`,
|
|
@@ -67,7 +132,8 @@ export const improveRecoveryCommands = (args) => {
|
|
|
67
132
|
export const improveRecoveryLine = (entry) => (` ${entry.command} # ${entry.spends}`);
|
|
68
133
|
export const readImproveKitStatus = async (args) => {
|
|
69
134
|
const paths = improvePaths(args.record.runDir);
|
|
70
|
-
const
|
|
135
|
+
const scopeStages = improveStagesForScope(args.record.scope);
|
|
136
|
+
const requestedTo = args.requestedTo ?? scopeStages[scopeStages.length - 1];
|
|
71
137
|
const [winner, sourceImage, layerDoc, assets, plan, gate, stall] = await Promise.all([
|
|
72
138
|
isFile(paths.winnerImage),
|
|
73
139
|
isFile(paths.sourceImage),
|
|
@@ -77,6 +143,9 @@ export const readImproveKitStatus = async (args) => {
|
|
|
77
143
|
isFile(path.join(paths.planDir, 'GATE.md')),
|
|
78
144
|
isFile(path.join(paths.planDir, 'STALL.md')),
|
|
79
145
|
]);
|
|
146
|
+
const stallResolved = stall && (await readFile(path.join(paths.planDir, 'STALL.md'), 'utf8')
|
|
147
|
+
.then((content) => content.startsWith(IMPROVE_STALL_RESOLVED_HEADING))
|
|
148
|
+
.catch(() => false));
|
|
80
149
|
const recordedHtml = args.record.convert?.html;
|
|
81
150
|
const targetHtml = recordedHtml ? await isFile(recordedHtml) : await isFile(paths.targetHtml);
|
|
82
151
|
// Name a file that is actually here. A `--target <layerdoc>` kit never gets a
|
|
@@ -96,11 +165,15 @@ export const readImproveKitStatus = async (args) => {
|
|
|
96
165
|
capture: Boolean(args.record.capture),
|
|
97
166
|
draft: Boolean(args.record.draft),
|
|
98
167
|
pick: Boolean(args.record.pick),
|
|
168
|
+
// A page-scope kit never runs branch or site; `stageState` reads the
|
|
169
|
+
// record's own settlement ledger to tell "skipped" from "did not settle".
|
|
170
|
+
branch: Boolean(args.record.branch),
|
|
99
171
|
convert: layerDoc,
|
|
100
172
|
plan: plan || gate,
|
|
173
|
+
site: Boolean(args.record.site),
|
|
101
174
|
};
|
|
102
175
|
const gateBlocked = gate && !plan;
|
|
103
|
-
const stages =
|
|
176
|
+
const stages = scopeStages.map((stage) => stageState({
|
|
104
177
|
record: args.record,
|
|
105
178
|
stage,
|
|
106
179
|
requestedTo,
|
|
@@ -132,7 +205,9 @@ export const readImproveKitStatus = async (args) => {
|
|
|
132
205
|
gateBlocked,
|
|
133
206
|
missing,
|
|
134
207
|
targetMode,
|
|
135
|
-
present: {
|
|
208
|
+
present: {
|
|
209
|
+
design: winner || sourceImage, layerDoc, assets, targetHtml, plan, gate, stall, stallResolved,
|
|
210
|
+
},
|
|
136
211
|
designImage,
|
|
137
212
|
designKind,
|
|
138
213
|
recovery: improveRecoveryCommands({ record: args.record, designImage }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"improve-kit-status.js","sourceRoot":"","sources":["../src/improve-kit-status.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"improve-kit-status.js","sourceRoot":"","sources":["../src/improve-kit-status.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import type { CreateRetainPolicy } from './branch-client.js';
|
|
2
2
|
import { type CliFlags } from './cli-arguments.js';
|
|
3
|
+
import { type ImprovePassthroughFlags } from './improve-passthrough-flags.js';
|
|
3
4
|
import { type ConversionModel } from './conversion-models.js';
|
|
4
5
|
import { type ResponsiveConversionQuality } from './responsive-quality.js';
|
|
5
6
|
import { type ImproveBootstrapAction } from './redesign-capture.js';
|
|
6
7
|
import { type ImprovePaths, type ImproveStage } from './improve-workspace.js';
|
|
7
8
|
export type ImproveOptions = {
|
|
9
|
+
scope: 'page' | 'site';
|
|
8
10
|
input: {
|
|
9
11
|
kind: 'url' | 'image';
|
|
10
12
|
value: string;
|
|
@@ -32,6 +34,12 @@ export type ImproveOptions = {
|
|
|
32
34
|
fullPage: boolean;
|
|
33
35
|
bootstrapValues: string[];
|
|
34
36
|
bootstrap: ImproveBootstrapAction[];
|
|
37
|
+
/**
|
|
38
|
+
* Improve the page the capture actually landed on, even when a redirect took
|
|
39
|
+
* it somewhere else (F27). Without it a redirected capture refuses before the
|
|
40
|
+
* draft purchase instead of buying a surface against the wrong page.
|
|
41
|
+
*/
|
|
42
|
+
allowRedirect: boolean;
|
|
35
43
|
paths: ImprovePaths;
|
|
36
44
|
from: ImproveStage;
|
|
37
45
|
to: ImproveStage;
|
|
@@ -44,6 +52,12 @@ export type ImproveOptions = {
|
|
|
44
52
|
fresh: boolean;
|
|
45
53
|
/** Re-buy the whole draw: new candidates, then a new pick. */
|
|
46
54
|
redraw: boolean;
|
|
55
|
+
pages: number;
|
|
56
|
+
explicitPages: string[];
|
|
57
|
+
pageConcurrency: number;
|
|
58
|
+
referenceOrder: 'current-first' | 'root-first';
|
|
59
|
+
recheck: boolean;
|
|
60
|
+
passthrough: ImprovePassthroughFlags;
|
|
47
61
|
};
|
|
48
62
|
export declare const parseImproveOptions: (args: {
|
|
49
63
|
command: readonly string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"improve-options.d.ts","sourceRoot":"","sources":["../src/improve-options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"improve-options.d.ts","sourceRoot":"","sources":["../src/improve-options.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAC7D,OAAO,EAIL,KAAK,QAAQ,EACd,MAAM,oBAAoB,CAAC;AAS5B,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAEL,KAAK,2BAA2B,EACjC,MAAM,yBAAyB,CAAC;AAWjC,OAAO,EAAkC,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACpG,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,YAAY,EAClB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE;QAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,eAAe,CAAC;IACjC,iBAAiB,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,QAAQ,EAAE,OAAO,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,SAAS,EAAE,sBAAsB,EAAE,CAAC;IACpC;;;;OAIG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,EAAE,YAAY,CAAC;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,EAAE,EAAE,YAAY,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,OAAO,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,8EAA8E;IAC9E,mBAAmB,EAAE,MAAM,CAAC;IAC5B,mEAAmE;IACnE,KAAK,EAAE,OAAO,CAAC;IACf,8DAA8D;IAC9D,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,eAAe,GAAG,YAAY,CAAC;IAC/C,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,uBAAuB,CAAC;CACtC,CAAC;AAyHF,eAAO,MAAM,mBAAmB,GAAI,MAAM;IACxC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,KAAK,EAAE,QAAQ,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,KAAG,cAwMH,CAAC"}
|