@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
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
/**
|
|
4
|
+
* Page discovery policy for improve: which same-origin pages a site's root
|
|
5
|
+
* claims are its key screens, and in what order.
|
|
6
|
+
*
|
|
7
|
+
* ONE RANKER, TWO HOSTS. The hosted capture service renders the root in
|
|
8
|
+
* Playwright and collects layout facts (`collectRenderedLinksInPage`); the CLI
|
|
9
|
+
* reads the root's HTML and collects the structural facts a parsed document
|
|
10
|
+
* can state (`collectLinksFromDocument`). Both hand the same fact shape to
|
|
11
|
+
* `rankRenderedLinks`, so the two products cannot disagree about ordering
|
|
12
|
+
* policy — only about how much the page told them.
|
|
13
|
+
*
|
|
14
|
+
* WHY RANK AT ALL. Scoping discovery to `nav`/`header`/`footer` loses whole
|
|
15
|
+
* sites: chargedesk.com states 112 same-origin links, every one of them in
|
|
16
|
+
* div chrome, and landmark-scoped discovery captured the root alone (owner
|
|
17
|
+
* report 2026-09-02). Nothing is dropped here; links are ordered and the
|
|
18
|
+
* caller's `maxPages` cap decides how deep it goes.
|
|
19
|
+
*
|
|
20
|
+
* Every fact is one the page declared or the browser measured — no guessing
|
|
21
|
+
* at a link's importance from its text (CLAUDE.md item 8).
|
|
22
|
+
*/
|
|
23
|
+
/** Pages captured for a site when the caller states no cap (root included). */
|
|
24
|
+
export const IMPROVE_DISCOVERY_DEFAULT_MAX_PAGES = 5;
|
|
25
|
+
/**
|
|
26
|
+
* Landmark chrome: where a site states its own key screens. Mirrored as a
|
|
27
|
+
* literal inside `collectRenderedLinksInPage` because Playwright serializes
|
|
28
|
+
* that function into the page — see the note there.
|
|
29
|
+
*/
|
|
30
|
+
export const CHROME_LANDMARK_SELECTOR = 'nav, header, footer, [role="navigation"], [role="banner"], [role="contentinfo"]';
|
|
31
|
+
const TOP_BAND_PX = 160;
|
|
32
|
+
const BOTTOM_BAND_PX = 700;
|
|
33
|
+
/** Account plumbing is rarely a "key screen"; it is ranked last, never dropped. */
|
|
34
|
+
const LOW_VALUE_PATH = /(^|\/)(sign-?in|log-?in|sign-?up|sign-?out|log-?out|register|forgot|reset|cart|checkout|connect)(\/|$)/iu;
|
|
35
|
+
/**
|
|
36
|
+
* Runs inside the rendered page: every anchor with its landmark and layout
|
|
37
|
+
* facts. Playwright serializes this function, so it must be self-contained —
|
|
38
|
+
* no module-scope references survive `page.evaluate`. The landmark selector is
|
|
39
|
+
* therefore repeated here as a literal; `improve-discovery.test.ts` asserts it
|
|
40
|
+
* still matches `CHROME_LANDMARK_SELECTOR`.
|
|
41
|
+
*/
|
|
42
|
+
export const collectRenderedLinksInPage = () => {
|
|
43
|
+
const scrollY = window.scrollY || 0;
|
|
44
|
+
const links = Array.from(document.querySelectorAll('a[href]')).map((anchor) => {
|
|
45
|
+
const rect = anchor.getBoundingClientRect();
|
|
46
|
+
return {
|
|
47
|
+
href: anchor.getAttribute('href'),
|
|
48
|
+
chrome: Boolean(anchor.closest('nav, header, footer, [role="navigation"], [role="banner"], [role="contentinfo"]')),
|
|
49
|
+
y: Math.round(rect.top + scrollY),
|
|
50
|
+
visible: rect.width > 0 && rect.height > 0,
|
|
51
|
+
};
|
|
52
|
+
}).filter((link) => typeof link.href === 'string');
|
|
53
|
+
return { docHeight: document.documentElement.scrollHeight, links };
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* The same facts from a parsed document: landmark membership is declared in
|
|
57
|
+
* the markup, position and visibility are not, so they are left absent rather
|
|
58
|
+
* than invented. Absent position ranks a link in the body tier, where document
|
|
59
|
+
* order decides — the only positional fact static HTML actually states.
|
|
60
|
+
*/
|
|
61
|
+
export const collectLinksFromDocument = (document) => {
|
|
62
|
+
const links = [];
|
|
63
|
+
for (const anchor of Array.from(document.querySelectorAll('a[href]'))) {
|
|
64
|
+
const href = anchor.getAttribute('href');
|
|
65
|
+
if (typeof href !== 'string')
|
|
66
|
+
continue;
|
|
67
|
+
links.push({ href, chrome: Boolean(anchor.closest(CHROME_LANDMARK_SELECTOR)) });
|
|
68
|
+
}
|
|
69
|
+
return { docHeight: 0, links };
|
|
70
|
+
};
|
|
71
|
+
const tierOf = (link, docHeight) => {
|
|
72
|
+
if (link.chrome)
|
|
73
|
+
return 0;
|
|
74
|
+
if (typeof link.y !== 'number')
|
|
75
|
+
return 3;
|
|
76
|
+
if (link.y < TOP_BAND_PX)
|
|
77
|
+
return 1;
|
|
78
|
+
if (docHeight && link.y > docHeight - BOTTOM_BAND_PX)
|
|
79
|
+
return 2;
|
|
80
|
+
return 3;
|
|
81
|
+
};
|
|
82
|
+
const safePathname = (href) => {
|
|
83
|
+
try {
|
|
84
|
+
return new URL(href, 'https://rank.invalid/').pathname;
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return '';
|
|
88
|
+
}
|
|
89
|
+
};
|
|
90
|
+
/**
|
|
91
|
+
* Orders links by how likely they are to be a key screen: landmark chrome
|
|
92
|
+
* first, then the top band (div headers), then the bottom band (div footers),
|
|
93
|
+
* then body links — visible before hidden within a tier, account plumbing
|
|
94
|
+
* last. Document order breaks every remaining tie.
|
|
95
|
+
*
|
|
96
|
+
* Accepts a collection, a bare fact list, or plain href strings (no facts →
|
|
97
|
+
* body tier, document order), so a caller that measured nothing still works.
|
|
98
|
+
*/
|
|
99
|
+
export const rankRenderedLinks = (input) => {
|
|
100
|
+
const list = Array.isArray(input)
|
|
101
|
+
? input
|
|
102
|
+
: input?.links ?? [];
|
|
103
|
+
const docHeight = Array.isArray(input)
|
|
104
|
+
? 0
|
|
105
|
+
: input?.docHeight ?? 0;
|
|
106
|
+
return list
|
|
107
|
+
.map((raw, index) => (typeof raw === 'string' ? { href: raw, index } : { ...raw, index }))
|
|
108
|
+
.filter((link) => typeof link.href === 'string')
|
|
109
|
+
.map((link) => ({
|
|
110
|
+
href: link.href,
|
|
111
|
+
index: link.index,
|
|
112
|
+
key: [
|
|
113
|
+
LOW_VALUE_PATH.test(safePathname(link.href)) ? 1 : 0,
|
|
114
|
+
tierOf(link, docHeight),
|
|
115
|
+
link.visible === false ? 1 : 0,
|
|
116
|
+
],
|
|
117
|
+
}))
|
|
118
|
+
.sort((a, b) => (a.key[0] - b.key[0]
|
|
119
|
+
|| a.key[1] - b.key[1]
|
|
120
|
+
|| a.key[2] - b.key[2]
|
|
121
|
+
|| a.index - b.index))
|
|
122
|
+
.map((link) => link.href);
|
|
123
|
+
};
|
|
124
|
+
/** Homepage first, then ranked same-origin links, one per pathname, capped. */
|
|
125
|
+
export const discoverSameOriginPages = (rootUrl, hrefs, maxPages = IMPROVE_DISCOVERY_DEFAULT_MAX_PAGES) => {
|
|
126
|
+
const root = new URL(rootUrl);
|
|
127
|
+
root.hash = '';
|
|
128
|
+
const seen = new Set([root.pathname || '/']);
|
|
129
|
+
const pages = [root.toString()];
|
|
130
|
+
for (const href of hrefs) {
|
|
131
|
+
if (pages.length >= maxPages)
|
|
132
|
+
break;
|
|
133
|
+
if (typeof href !== 'string' || !href || href.startsWith('#')
|
|
134
|
+
|| href.startsWith('mailto:') || href.startsWith('tel:'))
|
|
135
|
+
continue;
|
|
136
|
+
let candidate;
|
|
137
|
+
try {
|
|
138
|
+
candidate = new URL(href, root);
|
|
139
|
+
}
|
|
140
|
+
catch {
|
|
141
|
+
continue;
|
|
142
|
+
}
|
|
143
|
+
if (candidate.origin !== root.origin)
|
|
144
|
+
continue;
|
|
145
|
+
candidate.hash = '';
|
|
146
|
+
const key = candidate.pathname || '/';
|
|
147
|
+
if (seen.has(key))
|
|
148
|
+
continue;
|
|
149
|
+
seen.add(key);
|
|
150
|
+
pages.push(candidate.toString());
|
|
151
|
+
}
|
|
152
|
+
return pages;
|
|
153
|
+
};
|
|
154
|
+
//# sourceMappingURL=improve-discovery.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-discovery.js","sourceRoot":"","sources":["../../src/improve-core/improve-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-anchor.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-dom-anchor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EACV,mBAAmB,EACnB,QAAQ,EACR,cAAc,EACd,SAAS,EACV,MAAM,6BAA6B,CAAC;AAErC,eAAO,MAAM,aAAa,GAAI,MAAM,SAAS,GAAG,SAAS,KAAG,MAQ3D,CAAC;AAIF,eAAO,MAAM,WAAW,GAAI,OAAO,QAAQ,GAAG,SAAS,EAAE,OAAO,QAAQ,GAAG,SAAS,KAAG,MAKtF,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,SAAS,SAAS,cAAc,EAAE,EAClC,QAAQ,SAAS,SAAS,EAAE,EAC5B,OAAO,SAAS,SAAS,EAAE,EAC3B,mBAAgB,KACf,GAAG,CAAC,MAAM,CAcZ,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,KAAK,QAAQ,EACb,QAAQ,SAAS,SAAS,EAAE,KAC3B;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CA6BtD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,SAAS,SAAS,cAAc,EAAE,EAClC,QAAQ,SAAS,SAAS,EAAE,EAC5B,OAAO,SAAS,SAAS,EAAE,EAC3B,QAAQ;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EACzC,WAAW,WAAW,CAAC,MAAM,CAAC,KAC7B,GAAG,CAAC,MAAM,EAAE,mBAAmB,EAAE,CA0CnC,CAAC;AAEF,eAAO,MAAM,KAAK;;;0BAAgB,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
1
3
|
import { boxIou } from './improve-layerdoc-diff.js';
|
|
2
4
|
import { toCanvasFrame } from './improve-dom-scale.js';
|
|
3
5
|
export const selectorLabel = (leaf) => {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-anchor.js","sourceRoot":"","sources":["../../src/improve-core/improve-dom-anchor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { ImproveArtifactMap } from './improve-artifacts.js';
|
|
2
|
+
import { type ImproveRasterLayer } from './improve-kit-asset-model.js';
|
|
3
|
+
import type { ImproveCaptureIdentity, ImproveGate, LayerDiffResult, LayerLeaf } from './improve-layerdoc-types.js';
|
|
4
|
+
export type ImproveDomDiff = {
|
|
5
|
+
result: LayerDiffResult;
|
|
6
|
+
beforeLeaves: LayerLeaf[];
|
|
7
|
+
targetLeaves: LayerLeaf[];
|
|
8
|
+
beforeCanvas: {
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
};
|
|
12
|
+
targetCanvas: {
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
};
|
|
16
|
+
lengthScale: number;
|
|
17
|
+
domCoverage: number;
|
|
18
|
+
designCoverage: number;
|
|
19
|
+
gate: ImproveGate;
|
|
20
|
+
markdown: string;
|
|
21
|
+
};
|
|
22
|
+
export declare const computeImproveDomDiff: (args: {
|
|
23
|
+
beforeDoc: unknown;
|
|
24
|
+
targetDoc: unknown;
|
|
25
|
+
gatePct?: number;
|
|
26
|
+
captureIdentity?: ImproveCaptureIdentity;
|
|
27
|
+
}) => ImproveDomDiff;
|
|
28
|
+
/** The kit names for the four files a DOM-anchored plan owns. */
|
|
29
|
+
export declare const IMPROVE_GATE_FILE = "GATE.md";
|
|
30
|
+
export declare const IMPROVE_DIFF_FILE = "diff.json";
|
|
31
|
+
export declare const IMPROVE_CHANGES_FILE = "changes.md";
|
|
32
|
+
/**
|
|
33
|
+
* A blocked gate emits the refusal and removes every artifact that would imply
|
|
34
|
+
* a plan exists; a passing gate emits the machine diff and its readable half
|
|
35
|
+
* and removes the stale gate. `generatedAt` is injected because a run that
|
|
36
|
+
* stamps its own clock cannot be compared byte-for-byte against another host.
|
|
37
|
+
* `labels` name the two inputs as the reader should see them — the CLI passes
|
|
38
|
+
* the paths it read, the web passes the capture and target it converted.
|
|
39
|
+
*/
|
|
40
|
+
export declare const planImproveDomDiffArtifacts: (args: {
|
|
41
|
+
beforeDoc: unknown;
|
|
42
|
+
targetDoc: unknown;
|
|
43
|
+
labels: {
|
|
44
|
+
beforePath: string;
|
|
45
|
+
targetPath: string;
|
|
46
|
+
};
|
|
47
|
+
gatePct?: number;
|
|
48
|
+
captureIdentity?: ImproveCaptureIdentity;
|
|
49
|
+
generatedAt: string;
|
|
50
|
+
/**
|
|
51
|
+
* The target's raster layers, when the host can see the kit's files. A
|
|
52
|
+
* blocked gate names them in `GATE.md` because it deletes the plan that
|
|
53
|
+
* otherwise carries them.
|
|
54
|
+
*/
|
|
55
|
+
rasterLayers?: readonly ImproveRasterLayer[];
|
|
56
|
+
}) => ImproveDomDiff & {
|
|
57
|
+
artifacts: ImproveArtifactMap;
|
|
58
|
+
};
|
|
59
|
+
//# sourceMappingURL=improve-dom-diff.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-diff.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-dom-diff.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAiC,KAAK,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AACtG,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACX,eAAe,EACf,SAAS,EACV,MAAM,6BAA6B,CAAC;AAErC,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,eAAe,CAAC;IACxB,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE,SAAS,EAAE,CAAC;IAC1B,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,MAAM;IAC1C,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C,KAAG,cA4EH,CAAC;AAEF,iEAAiE;AACjE,eAAO,MAAM,iBAAiB,YAAY,CAAC;AAC3C,eAAO,MAAM,iBAAiB,cAAc,CAAC;AAC7C,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAIjD;;;;;;;GAOG;AACH,eAAO,MAAM,2BAA2B,GAAI,MAAM;IAChD,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,sBAAsB,CAAC;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9C,KAAG,cAAc,GAAG;IAAE,SAAS,EAAE,kBAAkB,CAAA;CAiDnD,CAAC"}
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
import { canvasOfDoc, computeLayerDeltas, diffLayerDocs, flattenLayerDoc, } from './improve-layerdoc-diff.js';
|
|
4
|
+
import { confidentMatches, impliedPaddingDeltas } from './improve-dom-anchor.js';
|
|
5
|
+
import { evaluateImproveGate, renderImproveGate } from './improve-dom-gate.js';
|
|
6
|
+
import { repairByNeighbourOffset } from './improve-dom-neighbour.js';
|
|
7
|
+
import { normalizeLayerDoc } from './improve-dom-scale.js';
|
|
8
|
+
import { renderDomChanges } from './improve-plan-render.js';
|
|
9
|
+
import { improveRasterLayersOfDocument } from './improve-kit-asset-model.js';
|
|
10
|
+
export const computeImproveDomDiff = (args) => {
|
|
11
|
+
const beforeCanvas = canvasOfDoc(args.beforeDoc);
|
|
12
|
+
const targetCanvas = canvasOfDoc(args.targetDoc);
|
|
13
|
+
const viewport = args.beforeDoc && typeof args.beforeDoc === 'object' && 'source' in args.beforeDoc
|
|
14
|
+
&& args.beforeDoc.source && typeof args.beforeDoc.source === 'object' && 'viewport' in args.beforeDoc.source
|
|
15
|
+
&& args.beforeDoc.source.viewport && typeof args.beforeDoc.source.viewport === 'object'
|
|
16
|
+
? args.beforeDoc.source.viewport
|
|
17
|
+
: undefined;
|
|
18
|
+
const anchoredHeight = typeof viewport?.height === 'number' && viewport.height !== beforeCanvas.height
|
|
19
|
+
? viewport.height
|
|
20
|
+
: 0;
|
|
21
|
+
const lengthScale = beforeCanvas.width / targetCanvas.width;
|
|
22
|
+
const normalizedBefore = normalizeLayerDoc(args.beforeDoc, 1, anchoredHeight);
|
|
23
|
+
const normalizedTarget = normalizeLayerDoc(args.targetDoc, lengthScale);
|
|
24
|
+
const beforeLeaves = flattenLayerDoc(normalizedBefore);
|
|
25
|
+
const targetLeaves = flattenLayerDoc(normalizedTarget);
|
|
26
|
+
const result = diffLayerDocs(normalizedBefore, normalizedTarget, {
|
|
27
|
+
strategy: 'fallback',
|
|
28
|
+
contentKeyMode: 'family',
|
|
29
|
+
});
|
|
30
|
+
const firstConfidence = confidentMatches(result.matched, beforeLeaves, targetLeaves);
|
|
31
|
+
const neighbour = repairByNeighbourOffset({
|
|
32
|
+
result,
|
|
33
|
+
before: beforeLeaves,
|
|
34
|
+
after: targetLeaves,
|
|
35
|
+
confident: firstConfidence,
|
|
36
|
+
canvas: beforeCanvas,
|
|
37
|
+
});
|
|
38
|
+
for (const entry of result.matched.filter((candidate) => candidate.matchStrategy === 'neighbour')) {
|
|
39
|
+
entry.deltas = computeLayerDeltas(beforeLeaves[entry.beforeIndex], targetLeaves[entry.afterIndex]);
|
|
40
|
+
entry.changed = entry.deltas.length > 0;
|
|
41
|
+
}
|
|
42
|
+
const confident = confidentMatches(result.matched, beforeLeaves, targetLeaves);
|
|
43
|
+
result.matched.filter((entry) => entry.matchStrategy === 'neighbour')
|
|
44
|
+
.forEach((entry) => confident.add(entry.beforeIndex));
|
|
45
|
+
const padding = impliedPaddingDeltas(result.matched, beforeLeaves, targetLeaves, beforeCanvas, confident);
|
|
46
|
+
result.matched.forEach((entry) => {
|
|
47
|
+
entry.selector = beforeLeaves[entry.beforeIndex]?.dom?.selector;
|
|
48
|
+
entry.confident = confident.has(entry.beforeIndex);
|
|
49
|
+
entry.impliedPadding = padding.get(entry.beforeIndex);
|
|
50
|
+
});
|
|
51
|
+
result.meta = {
|
|
52
|
+
...result.meta,
|
|
53
|
+
matchedCount: result.matched.length,
|
|
54
|
+
plausibleMatchedCount: confident.size,
|
|
55
|
+
changedCount: result.matched.filter((entry) => entry.changed).length,
|
|
56
|
+
unchangedCount: result.matched.filter((entry) => !entry.changed).length,
|
|
57
|
+
addedCount: result.added.length,
|
|
58
|
+
removedCount: result.removed.length,
|
|
59
|
+
matchCoverage: confident.size / Math.max(beforeLeaves.length, targetLeaves.length, 1),
|
|
60
|
+
neighbourRepaired: neighbour.repaired,
|
|
61
|
+
neighbourReleased: neighbour.released,
|
|
62
|
+
};
|
|
63
|
+
const domCoverage = confident.size / Math.max(beforeLeaves.length, 1);
|
|
64
|
+
const designCoverage = confident.size / Math.max(targetLeaves.length, 1);
|
|
65
|
+
const gate = evaluateImproveGate(domCoverage, args.gatePct, args.captureIdentity);
|
|
66
|
+
return {
|
|
67
|
+
result,
|
|
68
|
+
beforeLeaves,
|
|
69
|
+
targetLeaves,
|
|
70
|
+
beforeCanvas,
|
|
71
|
+
targetCanvas,
|
|
72
|
+
lengthScale,
|
|
73
|
+
domCoverage,
|
|
74
|
+
designCoverage,
|
|
75
|
+
gate,
|
|
76
|
+
markdown: renderDomChanges({
|
|
77
|
+
result,
|
|
78
|
+
beforeLeaves,
|
|
79
|
+
beforePath: 'current.domdoc.json',
|
|
80
|
+
targetPath: 'target/winner.layerdoc.json',
|
|
81
|
+
domCoverage,
|
|
82
|
+
designCoverage,
|
|
83
|
+
gate,
|
|
84
|
+
}),
|
|
85
|
+
};
|
|
86
|
+
};
|
|
87
|
+
/** The kit names for the four files a DOM-anchored plan owns. */
|
|
88
|
+
export const IMPROVE_GATE_FILE = 'GATE.md';
|
|
89
|
+
export const IMPROVE_DIFF_FILE = 'diff.json';
|
|
90
|
+
export const IMPROVE_CHANGES_FILE = 'changes.md';
|
|
91
|
+
const IMPROVE_ANNOTATED_PLAN_FILE = 'plan-annotated.md';
|
|
92
|
+
const IMPROVE_TOKEN_PATCH_FILE = 'token-patch.css';
|
|
93
|
+
/**
|
|
94
|
+
* A blocked gate emits the refusal and removes every artifact that would imply
|
|
95
|
+
* a plan exists; a passing gate emits the machine diff and its readable half
|
|
96
|
+
* and removes the stale gate. `generatedAt` is injected because a run that
|
|
97
|
+
* stamps its own clock cannot be compared byte-for-byte against another host.
|
|
98
|
+
* `labels` name the two inputs as the reader should see them — the CLI passes
|
|
99
|
+
* the paths it read, the web passes the capture and target it converted.
|
|
100
|
+
*/
|
|
101
|
+
export const planImproveDomDiffArtifacts = (args) => {
|
|
102
|
+
const computed = computeImproveDomDiff({
|
|
103
|
+
beforeDoc: args.beforeDoc,
|
|
104
|
+
targetDoc: args.targetDoc,
|
|
105
|
+
...(args.gatePct === undefined ? {} : { gatePct: args.gatePct }),
|
|
106
|
+
...(args.captureIdentity === undefined ? {} : { captureIdentity: args.captureIdentity }),
|
|
107
|
+
});
|
|
108
|
+
if (!computed.gate.passed) {
|
|
109
|
+
return {
|
|
110
|
+
...computed,
|
|
111
|
+
artifacts: {
|
|
112
|
+
files: {
|
|
113
|
+
[IMPROVE_GATE_FILE]: renderImproveGate({
|
|
114
|
+
gate: computed.gate,
|
|
115
|
+
result: computed.result,
|
|
116
|
+
beforePath: args.labels.beforePath,
|
|
117
|
+
targetPath: args.labels.targetPath,
|
|
118
|
+
designCoverage: computed.designCoverage,
|
|
119
|
+
rasterLayers: args.rasterLayers ?? improveRasterLayersOfDocument(args.targetDoc),
|
|
120
|
+
}),
|
|
121
|
+
},
|
|
122
|
+
remove: [
|
|
123
|
+
IMPROVE_DIFF_FILE,
|
|
124
|
+
IMPROVE_CHANGES_FILE,
|
|
125
|
+
IMPROVE_ANNOTATED_PLAN_FILE,
|
|
126
|
+
IMPROVE_TOKEN_PATCH_FILE,
|
|
127
|
+
],
|
|
128
|
+
},
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
...computed,
|
|
133
|
+
artifacts: {
|
|
134
|
+
files: {
|
|
135
|
+
[IMPROVE_DIFF_FILE]: `${JSON.stringify({
|
|
136
|
+
generatedAt: args.generatedAt,
|
|
137
|
+
before: args.labels.beforePath,
|
|
138
|
+
after: args.labels.targetPath,
|
|
139
|
+
frames: { lengthScale: computed.lengthScale },
|
|
140
|
+
gate: computed.gate,
|
|
141
|
+
domCoverage: computed.domCoverage,
|
|
142
|
+
designCoverage: computed.designCoverage,
|
|
143
|
+
...computed.result,
|
|
144
|
+
}, null, 2)}\n`,
|
|
145
|
+
[IMPROVE_CHANGES_FILE]: computed.markdown,
|
|
146
|
+
},
|
|
147
|
+
remove: [IMPROVE_GATE_FILE],
|
|
148
|
+
},
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
//# sourceMappingURL=improve-dom-diff.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-diff.js","sourceRoot":"","sources":["../../src/improve-core/improve-dom-diff.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-extract.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-dom-extract.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AACH,eAAO,MAAM,uBAAuB,GAAI,SAAS;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,KAAG,OA2UxE,CAAC"}
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
1
3
|
/**
|
|
2
4
|
* Browser-side DOM walker. Playwright serializes this function, so it must be
|
|
3
5
|
* self-contained. It emits a LayerDoc-v2-shaped document whose leaves carry
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-extract.js","sourceRoot":"","sources":["../../src/improve-core/improve-dom-extract.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { ImproveRasterLayer } from './improve-kit-asset-model.js';
|
|
2
|
+
import type { ImproveCaptureIdentity, ImproveGate, LayerDiffResult } from './improve-layerdoc-types.js';
|
|
3
|
+
/** Measured pilot separator: good route/state pairs were ~82%; the bad pair was ~25%. */
|
|
4
|
+
export declare const IMPROVE_DEFAULT_GATE_PCT = 60;
|
|
5
|
+
/**
|
|
6
|
+
* Low overlap is only a capture mismatch when the capture is unproven (F42).
|
|
7
|
+
*
|
|
8
|
+
* The threshold alone was measured over the 28 wave-2 kits that reached it and
|
|
9
|
+
* scored 0 for 6 on its own hypothesis: every one of its 6 blocks landed on a
|
|
10
|
+
* capture whose URL identity matched the request, and all 5 runs that really
|
|
11
|
+
* had captured another page passed — notion `/app` captured `/signin` and was
|
|
12
|
+
* certified at 100.0%, because coverage scores the target against the capture
|
|
13
|
+
* and both halves were the sign-in page.
|
|
14
|
+
*
|
|
15
|
+
* Two mechanisms produced the false alarms, neither of them a mismatch. The
|
|
16
|
+
* statuspage landing carries 267 `.no-data` uptime ticks in a 305-leaf DOM
|
|
17
|
+
* against a 44-leaf design, so its arithmetic ceiling is 14.4% and no design
|
|
18
|
+
* could ever clear 60% (F10). The sparse landings (7-13 leaves) move 8-14
|
|
19
|
+
* points per element, and a full-bleed redesign replaces most of them — which
|
|
20
|
+
* is the direction the run was asked for. Both delivered: the ledger's
|
|
21
|
+
* verification block records notion "landing went letterboxed-card -> full-
|
|
22
|
+
* bleed", improved, on a kit the gate had blocked at 55.6%.
|
|
23
|
+
*
|
|
24
|
+
* The gate also runs after draft and convert have settled, so blocking buys no
|
|
25
|
+
* money back; it only withholds the anchored plan. The pre-spend refusal in
|
|
26
|
+
* `improve-capture-redirect.ts` is what protects spend. So: arbitrate on the
|
|
27
|
+
* declared fact, and keep the threshold for the runs where that fact is
|
|
28
|
+
* missing — `--allow-redirect`, an unrecorded capture URL, or an image input.
|
|
29
|
+
*/
|
|
30
|
+
export declare const evaluateImproveGate: (coverage: number, thresholdPct?: number, captureIdentity?: ImproveCaptureIdentity) => ImproveGate;
|
|
31
|
+
/**
|
|
32
|
+
* The low-overlap sentence carried by an emitted plan (`lowOverlap`), so the
|
|
33
|
+
* plan and `changes.md` cannot describe the same situation two ways.
|
|
34
|
+
*/
|
|
35
|
+
export declare const improveLowOverlapNote: (gate: ImproveGate) => string | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* A blocked gate deletes `plan-annotated.md`, and with it the only copy of
|
|
38
|
+
* "Raster layers to carry". The assets are still on disk and still the design,
|
|
39
|
+
* so the instruction to carry them has to survive here or it exists nowhere.
|
|
40
|
+
*/
|
|
41
|
+
export declare const renderImproveGate: (args: {
|
|
42
|
+
gate: ImproveGate;
|
|
43
|
+
result: LayerDiffResult;
|
|
44
|
+
beforePath: string;
|
|
45
|
+
targetPath: string;
|
|
46
|
+
designCoverage: number;
|
|
47
|
+
rasterLayers?: readonly ImproveRasterLayer[];
|
|
48
|
+
}) => string;
|
|
49
|
+
//# sourceMappingURL=improve-dom-gate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-gate.d.ts","sourceRoot":"","sources":["../../src/improve-core/improve-dom-gate.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEvE,OAAO,KAAK,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAExG,yFAAyF;AACzF,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,mBAAmB,GAC9B,UAAU,MAAM,EAChB,qBAAuC,EACvC,kBAAiB,sBAAqC,KACrD,WAeF,CAAC;AAUF;;;GAGG;AACH,eAAO,MAAM,qBAAqB,GAAI,MAAM,WAAW,KAAG,MAAM,GAAG,SAQlE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAAI,MAAM;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,EAAE,eAAe,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;CAC9C,KAAG,MA4BQ,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
// GENERATED — do not edit. Copied verbatim from
|
|
2
|
+
// packages/layerdoc/src/improve-core by scripts/sync-improve-core.mjs.
|
|
3
|
+
import { renderImproveRasterLayers } from './improve-raster-layers-section.js';
|
|
4
|
+
/** Measured pilot separator: good route/state pairs were ~82%; the bad pair was ~25%. */
|
|
5
|
+
export const IMPROVE_DEFAULT_GATE_PCT = 60;
|
|
6
|
+
/**
|
|
7
|
+
* Low overlap is only a capture mismatch when the capture is unproven (F42).
|
|
8
|
+
*
|
|
9
|
+
* The threshold alone was measured over the 28 wave-2 kits that reached it and
|
|
10
|
+
* scored 0 for 6 on its own hypothesis: every one of its 6 blocks landed on a
|
|
11
|
+
* capture whose URL identity matched the request, and all 5 runs that really
|
|
12
|
+
* had captured another page passed — notion `/app` captured `/signin` and was
|
|
13
|
+
* certified at 100.0%, because coverage scores the target against the capture
|
|
14
|
+
* and both halves were the sign-in page.
|
|
15
|
+
*
|
|
16
|
+
* Two mechanisms produced the false alarms, neither of them a mismatch. The
|
|
17
|
+
* statuspage landing carries 267 `.no-data` uptime ticks in a 305-leaf DOM
|
|
18
|
+
* against a 44-leaf design, so its arithmetic ceiling is 14.4% and no design
|
|
19
|
+
* could ever clear 60% (F10). The sparse landings (7-13 leaves) move 8-14
|
|
20
|
+
* points per element, and a full-bleed redesign replaces most of them — which
|
|
21
|
+
* is the direction the run was asked for. Both delivered: the ledger's
|
|
22
|
+
* verification block records notion "landing went letterboxed-card -> full-
|
|
23
|
+
* bleed", improved, on a kit the gate had blocked at 55.6%.
|
|
24
|
+
*
|
|
25
|
+
* The gate also runs after draft and convert have settled, so blocking buys no
|
|
26
|
+
* money back; it only withholds the anchored plan. The pre-spend refusal in
|
|
27
|
+
* `improve-capture-redirect.ts` is what protects spend. So: arbitrate on the
|
|
28
|
+
* declared fact, and keep the threshold for the runs where that fact is
|
|
29
|
+
* missing — `--allow-redirect`, an unrecorded capture URL, or an image input.
|
|
30
|
+
*/
|
|
31
|
+
export const evaluateImproveGate = (coverage, thresholdPct = IMPROVE_DEFAULT_GATE_PCT, captureIdentity = 'unrecorded') => {
|
|
32
|
+
if (!Number.isFinite(thresholdPct) || thresholdPct < 0 || thresholdPct > 100) {
|
|
33
|
+
throw new Error(`gate must be a percentage from 0 to 100; received ${thresholdPct}`);
|
|
34
|
+
}
|
|
35
|
+
const normalized = Number.isFinite(coverage) ? coverage : 0;
|
|
36
|
+
const meetsThreshold = normalized * 100 >= thresholdPct;
|
|
37
|
+
const proven = captureIdentity === 'matched';
|
|
38
|
+
return {
|
|
39
|
+
passed: meetsThreshold || proven,
|
|
40
|
+
lowOverlap: !meetsThreshold && proven,
|
|
41
|
+
captureIdentity,
|
|
42
|
+
coverage: normalized,
|
|
43
|
+
coveragePct: normalized * 100,
|
|
44
|
+
thresholdPct,
|
|
45
|
+
};
|
|
46
|
+
};
|
|
47
|
+
/** Why this run could not prove the capture is the requested page. */
|
|
48
|
+
const UNPROVEN_CAUSE = {
|
|
49
|
+
redirected: 'the capture landed on a different URL than the one requested and'
|
|
50
|
+
+ ' `--allow-redirect` waived the pre-spend refusal, so nothing here knows which page the target describes',
|
|
51
|
+
unrecorded: 'this kit records no captured URL, so the requested page and the photographed page cannot be compared',
|
|
52
|
+
image: 'the input was an image rather than a URL, so there is no page identity to compare',
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* The low-overlap sentence carried by an emitted plan (`lowOverlap`), so the
|
|
56
|
+
* plan and `changes.md` cannot describe the same situation two ways.
|
|
57
|
+
*/
|
|
58
|
+
export const improveLowOverlapNote = (gate) => (gate.lowOverlap
|
|
59
|
+
? `Anchor overlap is low: ${gate.coveragePct.toFixed(1)}% of the existing page's elements`
|
|
60
|
+
+ ` matched, under the ${gate.thresholdPct.toFixed(1)}% gate. The capture was verified to be the`
|
|
61
|
+
+ ' page that was requested, so this is a design delta, not a capture mismatch: most of the'
|
|
62
|
+
+ ' target is new and arrives as added elements and raster layers. The anchored items below'
|
|
63
|
+
+ ' are still real selectors — treat the rest as new work rather than as edits.'
|
|
64
|
+
: undefined);
|
|
65
|
+
/**
|
|
66
|
+
* A blocked gate deletes `plan-annotated.md`, and with it the only copy of
|
|
67
|
+
* "Raster layers to carry". The assets are still on disk and still the design,
|
|
68
|
+
* so the instruction to carry them has to survive here or it exists nowhere.
|
|
69
|
+
*/
|
|
70
|
+
export const renderImproveGate = (args) => [
|
|
71
|
+
'# DOM diff coverage gate',
|
|
72
|
+
'',
|
|
73
|
+
'**BLOCKED — no selector-anchored plan emitted**',
|
|
74
|
+
'',
|
|
75
|
+
`- Before: \`${args.beforePath}\``,
|
|
76
|
+
`- Target: \`${args.targetPath}\``,
|
|
77
|
+
`- DOM-side confident coverage: **${args.gate.coveragePct.toFixed(1)}%** (${args.result.meta.plausibleMatchedCount}/${args.result.meta.beforeLeafCount})`,
|
|
78
|
+
`- Required coverage: **${args.gate.thresholdPct.toFixed(1)}%**`,
|
|
79
|
+
`- Design-side confident coverage: ${(args.designCoverage * 100).toFixed(1)}%`,
|
|
80
|
+
`- Capture identity: **${args.gate.captureIdentity}**`,
|
|
81
|
+
'',
|
|
82
|
+
`Low overlap blocks here because ${UNPROVEN_CAUSE[args.gate.captureIdentity]}.`
|
|
83
|
+
+ ' A run whose capture is provably the requested page emits the plan with a low-overlap note'
|
|
84
|
+
+ ' instead of blocking, because a full-bleed redesign scores low against the page it replaces.',
|
|
85
|
+
'',
|
|
86
|
+
'## Recommended fallback',
|
|
87
|
+
'',
|
|
88
|
+
'- Re-capture the current page in the exact state depicted by the target, then run improve again.',
|
|
89
|
+
'- Otherwise use the responsive target and LayerDoc as an unanchored sidecar reference.',
|
|
90
|
+
'',
|
|
91
|
+
...(args.rasterLayers && args.rasterLayers.length > 0
|
|
92
|
+
? [
|
|
93
|
+
'No plan was emitted, but the target\'s raster layers are extracted and usable without one.',
|
|
94
|
+
'',
|
|
95
|
+
...renderImproveRasterLayers({ layers: args.rasterLayers }),
|
|
96
|
+
]
|
|
97
|
+
: []),
|
|
98
|
+
].join('\n');
|
|
99
|
+
//# sourceMappingURL=improve-dom-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"improve-dom-gate.js","sourceRoot":"","sources":["../../src/improve-core/improve-dom-gate.ts"],"names":[],"mappings":"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"}
|