@wix/agent-skills 1.33.1 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (619) hide show
  1. package/README.md +3 -0
  2. package/package.json +1 -1
  3. package/skills/wix-export/SKILL.md +83 -0
  4. package/skills/wix-harmony-editor/.publish-manifest.json +8 -0
  5. package/skills/wix-harmony-editor/COPY-SITE.md +494 -0
  6. package/skills/wix-harmony-editor/SKILL.md +317 -0
  7. package/skills/wix-harmony-editor/scripts/copy/build-description.mjs +249 -0
  8. package/skills/wix-harmony-editor/scripts/copy/check-description.mjs +225 -0
  9. package/skills/wix-harmony-editor/scripts/copy/check-mirror.mjs +89 -0
  10. package/skills/wix-harmony-editor/scripts/copy/compare-preview.mjs +76 -0
  11. package/skills/wix-harmony-editor/scripts/copy/deploy-description.mjs +212 -0
  12. package/skills/wix-harmony-editor/scripts/copy/desc-hash.mjs +44 -0
  13. package/skills/wix-harmony-editor/scripts/copy/editor-run.mjs +45 -0
  14. package/skills/wix-harmony-editor/scripts/copy/export-page.mjs +53 -0
  15. package/skills/wix-harmony-editor/scripts/copy/find-interactions.mjs +76 -0
  16. package/skills/wix-harmony-editor/scripts/copy/hide-scrollbars.mjs +16 -0
  17. package/skills/wix-harmony-editor/scripts/copy/import-media.mjs +150 -0
  18. package/skills/wix-harmony-editor/scripts/copy/link-url.mjs +27 -0
  19. package/skills/wix-harmony-editor/scripts/copy/lint-api.mjs +56 -0
  20. package/skills/wix-harmony-editor/scripts/copy/measure-source.mjs +211 -0
  21. package/skills/wix-harmony-editor/scripts/copy/merge-mirrors.mjs +29 -0
  22. package/skills/wix-harmony-editor/scripts/copy/mirror-site.mjs +92 -0
  23. package/skills/wix-harmony-editor/scripts/copy/mobile-stage.mjs +56 -0
  24. package/skills/wix-harmony-editor/scripts/copy/preview-widths.mjs +73 -0
  25. package/skills/wix-harmony-editor/scripts/copy/render-plate.mjs +67 -0
  26. package/skills/wix-harmony-editor/scripts/copy/serve-mirror.mjs +102 -0
  27. package/skills/wix-harmony-editor/scripts/copy/snapshot-capabilities.mjs +40 -0
  28. package/skills/wix-harmony-editor/scripts/copy/split-sections.mjs +191 -0
  29. package/skills/wix-harmony-editor/scripts/copy/upload-media-manager.mjs +61 -0
  30. package/skills/wix-harmony-editor/scripts/launch.sh +359 -0
  31. package/skills/wix-headless/SKILL.md +7 -2
  32. package/skills/wix-headless/references/CAPABILITIES.md +6 -1
  33. package/skills/wix-headless/references/DISCOVERY.md +2 -1
  34. package/skills/wix-headless/references/SDK_HANDOFF.md +6 -1
  35. package/skills/wix-headless/references/SEED.md +3 -2
  36. package/skills/wix-headless/references/SETUP.md +1 -0
  37. package/skills/wix-headless/references/inline-recipes/experience-donations.md +102 -0
  38. package/skills/wix-headless/references/inline-recipes/how-to-code-donations.md +146 -0
  39. package/skills/wix-headless/references/inline-recipes/setup-donations.md +15 -0
  40. package/skills/wix-headless/references/managed/CREATE.md +1 -1
  41. package/skills/wix-headless-kit/SKILL.md +110 -21
  42. package/skills/wix-headless-kit/guides/api-run.md +15 -13
  43. package/skills/wix-headless-kit/guides/existing-site.md +31 -0
  44. package/skills/wix-headless-kit/guides/migration.md +49 -17
  45. package/skills/wix-headless-kit/install/agents-md.mjs +1 -1
  46. package/skills/wix-headless-kit/install/context.mjs +61 -6
  47. package/skills/wix-headless-kit/install/pins.json +1 -1
  48. package/skills/wix-headless-kit/install/setup.mjs +107 -12
  49. package/skills/wix-headless-replatform/.publish-manifest.json +8 -0
  50. package/skills/wix-headless-replatform/SKILL.md +116 -0
  51. package/skills/wix-headless-replatform/agents/openai.yaml +6 -0
  52. package/skills/wix-headless-replatform/references/control-and-visual-fidelity-contract.md +43 -0
  53. package/skills/wix-headless-replatform/references/extraction-schema.md +187 -0
  54. package/skills/wix-headless-replatform/references/interaction-runtime-contract.md +137 -0
  55. package/skills/wix-headless-replatform/references/layout-blueprint-contract.md +41 -0
  56. package/skills/wix-headless-replatform/references/output-contract.md +93 -0
  57. package/skills/wix-headless-replatform/references/post-build-gap-contract.md +125 -0
  58. package/skills/wix-headless-replatform/references/qa-checklist.md +83 -0
  59. package/skills/wix-headless-replatform/references/safety.md +19 -0
  60. package/skills/wix-headless-replatform/references/ui-normalization-contract.md +70 -0
  61. package/skills/wix-headless-replatform/references/workflow.md +157 -0
  62. package/skills/wix-headless-replatform/registry/README.md +20 -0
  63. package/skills/wix-headless-replatform/registry/approvals/button/shadcn-default-ac60ef5.json +28 -0
  64. package/skills/wix-headless-replatform/registry/items/button/shadcn-default-ac60ef5/button.tsx +54 -0
  65. package/skills/wix-headless-replatform/registry/items/button/shadcn-default-ac60ef5/capabilities.json +60 -0
  66. package/skills/wix-headless-replatform/registry/items/button/shadcn-default-ac60ef5/contract.md +48 -0
  67. package/skills/wix-headless-replatform/registry/licenses/shadcn-ui-ac60ef5-MIT.txt +21 -0
  68. package/skills/wix-headless-replatform/registry/registry.json +36 -0
  69. package/skills/wix-headless-replatform/resources/rp-facelift/SKILL.md +32 -0
  70. package/skills/wix-headless-replatform/resources/rp-project-context/SKILL.md +62 -0
  71. package/skills/wix-headless-replatform/resources/rp-qa-gap-loop/SKILL.md +64 -0
  72. package/skills/wix-headless-replatform/resources/rp-source-evidence/SKILL.md +42 -0
  73. package/skills/wix-headless-replatform/resources/rp-ui-implementation/SKILL.md +73 -0
  74. package/skills/wix-headless-replatform/schemas/build-plan.schema.json +10 -0
  75. package/skills/wix-headless-replatform/schemas/candidate.schema.json +19 -0
  76. package/skills/wix-headless-replatform/schemas/common.schema.json +33 -0
  77. package/skills/wix-headless-replatform/schemas/decision-patch.schema.json +10 -0
  78. package/skills/wix-headless-replatform/schemas/decision-request.schema.json +10 -0
  79. package/skills/wix-headless-replatform/schemas/extraction-gap.schema.json +28 -0
  80. package/skills/wix-headless-replatform/schemas/extraction-manifest.schema.json +34 -0
  81. package/skills/wix-headless-replatform/schemas/final-report.schema.json +10 -0
  82. package/skills/wix-headless-replatform/schemas/foundation.schema.json +11 -0
  83. package/skills/wix-headless-replatform/schemas/metadata.schema.json +11 -0
  84. package/skills/wix-headless-replatform/schemas/observation-packet.schema.json +17 -0
  85. package/skills/wix-headless-replatform/schemas/page-capture.schema.json +11 -0
  86. package/skills/wix-headless-replatform/schemas/page-resolution.schema.json +33 -0
  87. package/skills/wix-headless-replatform/schemas/shared-chrome.schema.json +11 -0
  88. package/skills/wix-headless-replatform/schemas/unit.schema.json +40 -0
  89. package/skills/wix-headless-replatform/scripts/assemble-extraction.mjs +844 -0
  90. package/skills/wix-headless-replatform/scripts/benchmark-extraction.mjs +163 -0
  91. package/skills/wix-headless-replatform/scripts/browser-extraction-preflight.mjs +42 -0
  92. package/skills/wix-headless-replatform/scripts/build-extracted-homepage.mjs +228 -0
  93. package/skills/wix-headless-replatform/scripts/clear-wix-starter.mjs +87 -0
  94. package/skills/wix-headless-replatform/scripts/create-wix-project.mjs +505 -0
  95. package/skills/wix-headless-replatform/scripts/discover-urls.mjs +142 -0
  96. package/skills/wix-headless-replatform/scripts/extract-assets.mjs +140 -0
  97. package/skills/wix-headless-replatform/scripts/extract-design-system.mjs +637 -0
  98. package/skills/wix-headless-replatform/scripts/extract-interactions.mjs +1903 -0
  99. package/skills/wix-headless-replatform/scripts/extract-page.mjs +2461 -0
  100. package/skills/wix-headless-replatform/scripts/extract-seo.mjs +25 -0
  101. package/skills/wix-headless-replatform/scripts/extract-tokens.mjs +63 -0
  102. package/skills/wix-headless-replatform/scripts/finalize-extraction-report.mjs +126 -0
  103. package/skills/wix-headless-replatform/scripts/finalize-gap-review.mjs +180 -0
  104. package/skills/wix-headless-replatform/scripts/finalize-gap-review.test.mjs +98 -0
  105. package/skills/wix-headless-replatform/scripts/finalize-migration-website.mjs +103 -0
  106. package/skills/wix-headless-replatform/scripts/generate-control-state-contract.mjs +176 -0
  107. package/skills/wix-headless-replatform/scripts/generate-design-md.mjs +261 -0
  108. package/skills/wix-headless-replatform/scripts/generate-extraction-validators.mjs +25 -0
  109. package/skills/wix-headless-replatform/scripts/generate-invoice-download-backend.mjs +342 -0
  110. package/skills/wix-headless-replatform/scripts/generate-layout-blueprint.mjs +140 -0
  111. package/skills/wix-headless-replatform/scripts/generate-repeater-cms.mjs +22 -0
  112. package/skills/wix-headless-replatform/scripts/generate-route-plan.mjs +143 -0
  113. package/skills/wix-headless-replatform/scripts/generate-scene-contract.mjs +288 -0
  114. package/skills/wix-headless-replatform/scripts/generate-ui-normalization.mjs +266 -0
  115. package/skills/wix-headless-replatform/scripts/generate-visual-assets.mjs +111 -0
  116. package/skills/wix-headless-replatform/scripts/lib/browser-tooling.mjs +570 -0
  117. package/skills/wix-headless-replatform/scripts/lib/common.mjs +329 -0
  118. package/skills/wix-headless-replatform/scripts/lib/component-capabilities.mjs +121 -0
  119. package/skills/wix-headless-replatform/scripts/lib/component-registry.mjs +282 -0
  120. package/skills/wix-headless-replatform/scripts/lib/content-boundary.mjs +61 -0
  121. package/skills/wix-headless-replatform/scripts/lib/extraction-contract.mjs +374 -0
  122. package/skills/wix-headless-replatform/scripts/lib/extraction-detectors.mjs +243 -0
  123. package/skills/wix-headless-replatform/scripts/lib/extraction-validators.generated.mjs +1139 -0
  124. package/skills/wix-headless-replatform/scripts/lib/font-contract.mjs +326 -0
  125. package/skills/wix-headless-replatform/scripts/lib/frontend-automation-state.mjs +184 -0
  126. package/skills/wix-headless-replatform/scripts/lib/gap-analysis.mjs +396 -0
  127. package/skills/wix-headless-replatform/scripts/lib/html-extract.mjs +168 -0
  128. package/skills/wix-headless-replatform/scripts/lib/interaction-bootstrap.mjs +10 -0
  129. package/skills/wix-headless-replatform/scripts/lib/interaction-runtime.mjs +194 -0
  130. package/skills/wix-headless-replatform/scripts/lib/interaction-timeline.mjs +348 -0
  131. package/skills/wix-headless-replatform/scripts/lib/layout-blueprint/classifiers.mjs +141 -0
  132. package/skills/wix-headless-replatform/scripts/lib/layout-blueprint/geometry.mjs +43 -0
  133. package/skills/wix-headless-replatform/scripts/lib/layout-blueprint/vocabulary.mjs +18 -0
  134. package/skills/wix-headless-replatform/scripts/lib/ui-normalization.css +64 -0
  135. package/skills/wix-headless-replatform/scripts/optimize-svg.mjs +31 -0
  136. package/skills/wix-headless-replatform/scripts/post-build-gap.mjs +358 -0
  137. package/skills/wix-headless-replatform/scripts/provision-repeater-cms.mjs +25 -0
  138. package/skills/wix-headless-replatform/scripts/record-gap-decision.mjs +39 -0
  139. package/skills/wix-headless-replatform/scripts/replay-extraction.mjs +107 -0
  140. package/skills/wix-headless-replatform/scripts/resolve-home-page.mjs +96 -0
  141. package/skills/wix-headless-replatform/scripts/site-clone.mjs +658 -0
  142. package/skills/wix-headless-replatform/scripts/validate-font-contract.mjs +29 -0
  143. package/skills/wix-headless-replatform/scripts/verify-interactions.mjs +669 -0
  144. package/skills/wix-headless-replatform/scripts/visual-qa.mjs +370 -0
  145. package/skills/wix-headless-templates/donations/INSTRUCTIONS.md +37 -24
  146. package/skills/wix-headless-templates/donations/app/components/donations/DonateForm.tsx +49 -23
  147. package/skills/wix-headless-templates/donations/app/components/donations/DonationReceipt.tsx +6 -5
  148. package/skills/wix-headless-templates/donations/app/components/donations/GoalProgress.tsx +5 -5
  149. package/skills/wix-headless-templates/donations/app/wix/donations/campaigns.ts +4 -4
  150. package/skills/wix-headless-templates/donations/app/wix/donations/donate.ts +7 -3
  151. package/skills/wix-headless-templates/donations/app/wix/donations/donation-store.ts +2 -2
  152. package/skills/wix-headless-templates/donations/app/wix/donations/donations-core.ts +12 -9
  153. package/skills/wix-headless-templates/donations/project/src/components/donations/DonateForm.tsx +49 -23
  154. package/skills/wix-headless-templates/donations/project/src/components/donations/DonationReceipt.tsx +6 -5
  155. package/skills/wix-headless-templates/donations/project/src/components/donations/GoalProgress.tsx +5 -5
  156. package/skills/wix-headless-templates/donations/project/src/wix/donations/campaigns.ts +4 -4
  157. package/skills/wix-headless-templates/donations/project/src/wix/donations/donate.ts +7 -3
  158. package/skills/wix-headless-templates/donations/project/src/wix/donations/donation-store.ts +2 -2
  159. package/skills/wix-headless-templates/donations/project/src/wix/donations/donations-core.ts +12 -9
  160. package/skills/wix-headless-templates/donations/rest/campaigns.ts +4 -4
  161. package/skills/wix-headless-templates/donations/rest/donate.ts +7 -3
  162. package/skills/wix-headless-templates/donations/seed/SEED.md +12 -7
  163. package/skills/wix-headless-templates/donations/tests/donation-contract.test.mjs +71 -0
  164. package/skills/wix-headless-templates/donations/tests/donation-form.test.cjs +137 -0
  165. package/skills/wix-headless-templates/restaurants/INSTRUCTIONS.md +28 -14
  166. package/skills/wix-headless-templates/restaurants/app/components/restaurants/OrderCartDrawer.tsx +87 -5
  167. package/skills/wix-headless-templates/restaurants/app/hooks/restaurants/useOrderCart.ts +9 -1
  168. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/order-store.ts +33 -4
  169. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/ordering-core.ts +100 -5
  170. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/ordering.ts +101 -15
  171. package/skills/wix-headless-templates/restaurants/app/wix/restaurants/types.ts +35 -1
  172. package/skills/wix-headless-templates/restaurants/project/src/components/restaurants/OrderCartDrawer.tsx +87 -5
  173. package/skills/wix-headless-templates/restaurants/project/src/hooks/restaurants/useOrderCart.ts +9 -1
  174. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/order-store.ts +33 -4
  175. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/ordering-core.ts +100 -5
  176. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/ordering.ts +101 -15
  177. package/skills/wix-headless-templates/restaurants/project/src/wix/restaurants/types.ts +35 -1
  178. package/skills/wix-headless-templates/restaurants/rest/ordering.ts +91 -14
  179. package/skills/wix-import/SKILL.md +90 -0
  180. package/skills/wix-manage/SKILL.md +14 -4
  181. package/skills/wix-manage/references/blog/how-to-create-blog-posts.md +2 -0
  182. package/skills/wix-manage/references/dashboard-navigation/dashboard-navigation.md +2 -1
  183. package/skills/wix-manage/references/dashboard-navigation/routes.json +249 -0
  184. package/skills/wix-manage/references/donations/create-and-update-donation-campaigns.md +139 -0
  185. package/skills/wix-manage/references/events/events-dashboard-navigation.md +81 -0
  186. package/skills/wix-manage/references/seo/manage-content-plan.md +207 -222
  187. package/skills/wix-manage/references/sites/manage-oauth-apps.md +1 -0
  188. package/skills/wix-manage/references/sites/upload-static-site.md +128 -8
  189. package/skills/wix-readme/SKILL.md +166 -0
  190. package/skills/wix-replatform/.publish-manifest.json +5 -5
  191. package/skills/wix-replatform/CLI.md +162 -0
  192. package/skills/wix-replatform/README.md +52 -0
  193. package/skills/wix-replatform/SKILL.md +229 -684
  194. package/skills/wix-replatform/console/account.css +1 -0
  195. package/skills/wix-replatform/console/app.css +1 -0
  196. package/skills/wix-replatform/console/app.js +117 -0
  197. package/skills/wix-replatform/console/index.html +4 -0
  198. package/skills/wix-replatform/console/json.css +11 -0
  199. package/skills/wix-replatform/lib/agent-adapters/index.js +71 -0
  200. package/skills/wix-replatform/lib/app-page-routing.js +75 -0
  201. package/skills/wix-replatform/lib/artifact-freshness.js +11 -1
  202. package/skills/wix-replatform/lib/blocked-data-requests.js +427 -0
  203. package/skills/wix-replatform/lib/census-reconciliation.js +426 -0
  204. package/skills/wix-replatform/lib/completion-report.js +1393 -13
  205. package/skills/wix-replatform/lib/config-env.js +85 -11
  206. package/skills/wix-replatform/lib/confirmed-pictures.js +212 -0
  207. package/skills/wix-replatform/lib/dependency-readiness.js +423 -0
  208. package/skills/wix-replatform/lib/dependency-recovery.js +21 -0
  209. package/skills/wix-replatform/lib/destination-choice.js +163 -0
  210. package/skills/wix-replatform/lib/destination-handoff.js +62 -0
  211. package/skills/wix-replatform/lib/destination-http.js +81 -0
  212. package/skills/wix-replatform/lib/destination-route.js +98 -0
  213. package/skills/wix-replatform/lib/destination.js +919 -0
  214. package/skills/wix-replatform/lib/discovered-census.js +231 -0
  215. package/skills/wix-replatform/lib/discovered-set-status.js +255 -0
  216. package/skills/wix-replatform/lib/document-url-guard.js +203 -0
  217. package/skills/wix-replatform/lib/entity-qa-attestation.js +339 -0
  218. package/skills/wix-replatform/lib/entity-verification.js +18 -0
  219. package/skills/wix-replatform/lib/execution-capability.js +120 -0
  220. package/skills/wix-replatform/lib/execution-log.js +170 -0
  221. package/skills/wix-replatform/lib/execution-manifest.js +20 -2
  222. package/skills/wix-replatform/lib/execution-state.js +22 -0
  223. package/skills/wix-replatform/lib/expectations-ledger.js +96 -0
  224. package/skills/wix-replatform/lib/generated-plugin-handoff.js +140 -0
  225. package/skills/wix-replatform/lib/import-readiness-contract.js +23 -0
  226. package/skills/wix-replatform/lib/import-recovery.js +800 -6
  227. package/skills/wix-replatform/lib/imported-redirect-targets.js +608 -0
  228. package/skills/wix-replatform/lib/internal-link-reconciliation.js +166 -0
  229. package/skills/wix-replatform/lib/link-audit.js +173 -0
  230. package/skills/wix-replatform/lib/link-census.js +194 -0
  231. package/skills/wix-replatform/lib/link-plan.js +148 -0
  232. package/skills/wix-replatform/lib/link-verification.js +274 -0
  233. package/skills/wix-replatform/lib/link-write-journal.js +42 -0
  234. package/skills/wix-replatform/lib/local-state.js +869 -30
  235. package/skills/wix-replatform/lib/member-completion.js +658 -0
  236. package/skills/wix-replatform/lib/member-crosswalk.js +69 -0
  237. package/skills/wix-replatform/lib/member-outcome-registry.js +265 -0
  238. package/skills/wix-replatform/lib/migration-completion.js +311 -0
  239. package/skills/wix-replatform/lib/operator-identity.js +47 -0
  240. package/skills/wix-replatform/lib/orchestration-decisions.js +248 -0
  241. package/skills/wix-replatform/lib/orchestration-preflight.js +401 -19
  242. package/skills/wix-replatform/lib/orchestration-router.js +608 -32
  243. package/skills/wix-replatform/lib/orchestration-state.js +188 -12
  244. package/skills/wix-replatform/lib/order-reference-readiness.js +30 -0
  245. package/skills/wix-replatform/lib/payments-outcome-registry.js +200 -0
  246. package/skills/wix-replatform/lib/plugin-cms-fallback.js +618 -0
  247. package/skills/wix-replatform/lib/preservation-approval-stamp.js +54 -0
  248. package/skills/wix-replatform/lib/product-media-deferral.js +96 -0
  249. package/skills/wix-replatform/lib/progress-log.js +19 -3
  250. package/skills/wix-replatform/lib/read-back-approval.js +184 -0
  251. package/skills/wix-replatform/lib/read-back-comparison.js +136 -0
  252. package/skills/wix-replatform/lib/read-back-contract.js +243 -0
  253. package/skills/wix-replatform/lib/read-back-extract.js +118 -0
  254. package/skills/wix-replatform/lib/read-back-gate.js +734 -0
  255. package/skills/wix-replatform/lib/read-back-reads.js +94 -0
  256. package/skills/wix-replatform/lib/read-back-state.js +107 -0
  257. package/skills/wix-replatform/lib/read-back-summary.js +81 -0
  258. package/skills/wix-replatform/lib/rerun-conflicts.js +334 -0
  259. package/skills/wix-replatform/lib/run-controller.js +401 -0
  260. package/skills/wix-replatform/lib/seo-outcome-registry.js +45 -0
  261. package/skills/wix-replatform/lib/setup-verification.js +148 -0
  262. package/skills/wix-replatform/lib/source-access.js +231 -0
  263. package/skills/wix-replatform/lib/source-coverage.js +1130 -0
  264. package/skills/wix-replatform/lib/source-secrets.js +277 -0
  265. package/skills/wix-replatform/lib/structured-link-patch.js +59 -0
  266. package/skills/wix-replatform/lib/task-state.js +110 -0
  267. package/skills/wix-replatform/lib/url-preservation-report.js +319 -0
  268. package/skills/wix-replatform/lib/url-preservation-state.js +349 -1
  269. package/skills/wix-replatform/lib/url-redirect-plan.js +728 -0
  270. package/skills/wix-replatform/lib/url-verification.js +315 -0
  271. package/skills/wix-replatform/lib/user-action-effects.js +42 -0
  272. package/skills/wix-replatform/lib/user-actions.js +264 -0
  273. package/skills/wix-replatform/lib/website-handoff.js +1220 -0
  274. package/skills/wix-replatform/lib/wix-client-callers.js +54 -0
  275. package/skills/wix-replatform/lib/wix-dashboard-url.js +35 -0
  276. package/skills/wix-replatform/lib/write-verification-state.js +92 -0
  277. package/skills/wix-replatform/lib/write-verification.js +274 -0
  278. package/skills/wix-replatform/resources/rp-destination/SKILL.md +137 -0
  279. package/skills/wix-replatform/resources/rp-discovery/SKILL.md +189 -16
  280. package/skills/wix-replatform/resources/rp-discovery/scripts/promote-source-coverage.js +47 -0
  281. package/skills/wix-replatform/resources/rp-execute-import/SKILL.md +869 -29
  282. package/skills/wix-replatform/resources/rp-execute-import/scripts/shipping-estimate-audit.js +70 -0
  283. package/skills/wix-replatform/resources/rp-execute-setup/SKILL.md +195 -29
  284. package/skills/wix-replatform/resources/rp-execute-setup/scripts/execute-setup.js +442 -0
  285. package/skills/wix-replatform/resources/rp-execution-policy/SKILL.md +112 -0
  286. package/skills/wix-replatform/resources/rp-execution-policy/lib/coupon-currency-plan-report.js +143 -0
  287. package/skills/wix-replatform/resources/rp-execution-policy/lib/payments-report.js +244 -0
  288. package/skills/wix-replatform/resources/rp-import-codegen/SKILL.md +2082 -38
  289. package/skills/wix-replatform/resources/rp-mapper/SKILL.md +528 -11
  290. package/skills/wix-replatform/resources/rp-mapper/lib/structure-bridge-planning.js +303 -0
  291. package/skills/wix-replatform/resources/rp-mapper/scripts/coverage-reconcile.js +88 -0
  292. package/skills/wix-replatform/resources/rp-mapper/wix-business-solutions-taxonomy.md +6 -5
  293. package/skills/wix-replatform/resources/rp-preflight/SKILL.md +40 -0
  294. package/skills/wix-replatform/resources/rp-project-intake/SKILL.md +55 -0
  295. package/skills/wix-replatform/resources/rp-quick-runtime/SKILL.md +60 -0
  296. package/skills/wix-replatform/resources/rp-quick-runtime/lib/import-progress.js +89 -0
  297. package/skills/wix-replatform/resources/rp-quick-runtime/lib/limit-recovery.js +36 -0
  298. package/skills/wix-replatform/resources/rp-quick-shopify/SKILL.md +123 -0
  299. package/skills/wix-replatform/resources/rp-quick-shopify/quick-mode.json +124 -0
  300. package/skills/wix-replatform/resources/rp-quick-shopify/scripts/quick-mode.js +522 -0
  301. package/skills/wix-replatform/resources/rp-quick-woocommerce/SKILL.md +56 -0
  302. package/skills/wix-replatform/resources/rp-quick-woocommerce/quick-mode.json +91 -0
  303. package/skills/wix-replatform/resources/rp-quick-woocommerce/scripts/quick-mode.js +255 -0
  304. package/skills/wix-replatform/resources/rp-setup-discovery/SKILL.md +80 -10
  305. package/skills/wix-replatform/resources/rp-setup-discovery/scripts/quick-setup-plan.js +44 -0
  306. package/skills/wix-replatform/resources/rp-source-csv/SKILL.md +3 -0
  307. package/skills/wix-replatform/resources/rp-source-csv/lib/csv-fileset.js +0 -0
  308. package/skills/wix-replatform/resources/rp-source-csv/scripts/csv-discovery.js +21 -1
  309. package/skills/wix-replatform/resources/rp-source-inputs/SKILL.md +66 -0
  310. package/skills/wix-replatform/resources/rp-source-sfcc/SKILL.md +153 -0
  311. package/skills/wix-replatform/resources/rp-source-shopify/SKILL.md +394 -0
  312. package/skills/wix-replatform/resources/rp-source-shopify/lib/discovery-reads.js +200 -0
  313. package/skills/wix-replatform/resources/rp-source-shopify/lib/import-findings.js +34 -0
  314. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-bulk-sqlite-worker.js +44 -0
  315. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-bulk.js +1470 -0
  316. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-cli.js +446 -0
  317. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-gift-cards.js +474 -0
  318. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-protected-fields.js +879 -0
  319. package/skills/wix-replatform/resources/rp-source-shopify/lib/shopify-session.js +426 -0
  320. package/skills/wix-replatform/resources/rp-source-shopify/queries/articles.graphql +24 -0
  321. package/skills/wix-replatform/resources/rp-source-shopify/queries/blogs.graphql +18 -0
  322. package/skills/wix-replatform/resources/rp-source-shopify/queries/collections.graphql +40 -0
  323. package/skills/wix-replatform/resources/rp-source-shopify/queries/customers.graphql +76 -0
  324. package/skills/wix-replatform/resources/rp-source-shopify/queries/delivery-profiles.graphql +51 -0
  325. package/skills/wix-replatform/resources/rp-source-shopify/queries/discounts.graphql +35 -0
  326. package/skills/wix-replatform/resources/rp-source-shopify/queries/files.graphql +20 -0
  327. package/skills/wix-replatform/resources/rp-source-shopify/queries/gift-cards.graphql +18 -0
  328. package/skills/wix-replatform/resources/rp-source-shopify/queries/inventory.graphql +31 -0
  329. package/skills/wix-replatform/resources/rp-source-shopify/queries/locations.graphql +21 -0
  330. package/skills/wix-replatform/resources/rp-source-shopify/queries/menus.graphql +21 -0
  331. package/skills/wix-replatform/resources/rp-source-shopify/queries/metaobjects.graphql +30 -0
  332. package/skills/wix-replatform/resources/rp-source-shopify/queries/orders-core.graphql +150 -0
  333. package/skills/wix-replatform/resources/rp-source-shopify/queries/orders-fulfillments.graphql +36 -0
  334. package/skills/wix-replatform/resources/rp-source-shopify/queries/orders-refunds.graphql +48 -0
  335. package/skills/wix-replatform/resources/rp-source-shopify/queries/pages.graphql +20 -0
  336. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-customers-address.graphql +8 -0
  337. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-customers-email.graphql +6 -0
  338. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-customers-name.graphql +8 -0
  339. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-customers-phone.graphql +8 -0
  340. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-orders-address.graphql +12 -0
  341. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-orders-email.graphql +6 -0
  342. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-orders-name.graphql +13 -0
  343. package/skills/wix-replatform/resources/rp-source-shopify/queries/probe-orders-phone.graphql +13 -0
  344. package/skills/wix-replatform/resources/rp-source-shopify/queries/products.graphql +73 -0
  345. package/skills/wix-replatform/resources/rp-source-shopify/queries/url-redirects.graphql +13 -0
  346. package/skills/wix-replatform/resources/rp-source-shopify/scripts/shopify-discovery.js +693 -0
  347. package/skills/wix-replatform/resources/rp-source-shopify/scripts/shopify-extract.js +283 -0
  348. package/skills/wix-replatform/resources/rp-source-shopify/scripts/shopify-gift-card-remedy.js +191 -0
  349. package/skills/wix-replatform/resources/rp-source-shopify/scripts/shopify-session-check.js +115 -0
  350. package/skills/wix-replatform/resources/rp-source-shopify/source-schema.example.json +201 -0
  351. package/skills/wix-replatform/resources/rp-source-wordpress/PLUGIN-READ-PLANS.md +146 -0
  352. package/skills/wix-replatform/resources/rp-source-wordpress/SKILL.md +736 -22
  353. package/skills/wix-replatform/resources/rp-source-wordpress/lib/blocked-data-handlers.js +73 -0
  354. package/skills/wix-replatform/resources/rp-source-wordpress/lib/checkout-field-csv-parser.js +115 -0
  355. package/skills/wix-replatform/resources/rp-source-wordpress/lib/checkout-field-csv-parser.test-fixture.js +91 -0
  356. package/skills/wix-replatform/resources/rp-source-wordpress/lib/coupon-discovery.js +440 -0
  357. package/skills/wix-replatform/resources/rp-source-wordpress/lib/currency-gate.js +125 -0
  358. package/skills/wix-replatform/resources/rp-source-wordpress/lib/gateway-source-keys.js +252 -0
  359. package/skills/wix-replatform/resources/rp-source-wordpress/lib/gateway-source-keys.json +183 -0
  360. package/skills/wix-replatform/resources/rp-source-wordpress/lib/gateway-summary.mjs +333 -0
  361. package/skills/wix-replatform/resources/rp-source-wordpress/lib/invoice-discovery.js +426 -0
  362. package/skills/wix-replatform/resources/rp-source-wordpress/lib/plugin-disposition.js +400 -0
  363. package/skills/wix-replatform/resources/rp-source-wordpress/lib/plugin-entity-read-plan.js +633 -0
  364. package/skills/wix-replatform/resources/rp-source-wordpress/lib/plugin-knowledge.js +1127 -0
  365. package/skills/wix-replatform/resources/rp-source-wordpress/lib/refund-corroboration.js +194 -0
  366. package/skills/wix-replatform/resources/rp-source-wordpress/lib/refund-corroboration.json +100 -0
  367. package/skills/wix-replatform/resources/rp-source-wordpress/lib/sampled-ids-batch.js +157 -0
  368. package/skills/wix-replatform/resources/rp-source-wordpress/lib/secret-value-guard.js +234 -0
  369. package/skills/wix-replatform/resources/rp-source-wordpress/lib/store-currency.js +101 -0
  370. package/skills/wix-replatform/resources/rp-source-wordpress/lib/structure-bridge-reader.js +755 -0
  371. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wix-wp-plugin-v2-client.js +1074 -0
  372. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wix-wp-plugin-v2-client.test-fixture.js +149 -0
  373. package/skills/wix-replatform/resources/rp-source-wordpress/lib/woo-inventory.js +25 -0
  374. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-http.js +204 -9
  375. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-image-url.js +186 -0
  376. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-plugin-detect.js +1422 -0
  377. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-redirect-sources.js +343 -0
  378. package/skills/wix-replatform/resources/rp-source-wordpress/lib/wp-route-classifier.js +262 -26
  379. package/skills/wix-replatform/resources/rp-source-wordpress/lib/yoast-product-seo-evidence.js +272 -0
  380. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/README.md +373 -0
  381. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/advanced-custom-fields.json +101 -0
  382. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/back-in-stock-notifier-for-woocommerce.json +81 -0
  383. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/capabilities-pending-decision.json +128 -0
  384. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/cms-fallback-eligible.json +18 -0
  385. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/contact-form-7.json +104 -0
  386. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/facebook-for-woocommerce.json +44 -0
  387. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/fingerprint-aliases.json +49 -0
  388. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/free-gifts-for-woocommerce.json +94 -0
  389. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/index.json +863 -0
  390. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/mailpoet.json +52 -0
  391. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/membership-for-woocommerce.json +161 -0
  392. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/mwb-bookings-for-woocommerce.json +180 -0
  393. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/no-migration-needed.json +286 -0
  394. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/pricing-deals-for-woocommerce.json +79 -0
  395. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/product-extras-for-woocommerce.json +120 -0
  396. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/pw-woocommerce-gift-cards.json +128 -0
  397. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/requires-development.json +88 -0
  398. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/seo-by-rank-math.json +80 -0
  399. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/seriously-simple-podcasting.json +46 -0
  400. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/strong-testimonials.json +55 -0
  401. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/subscriptions-for-woocommerce.json +99 -0
  402. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/tablepress.json +55 -0
  403. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/the-events-calendar.json +160 -0
  404. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/ti-woocommerce-wishlist.json +81 -0
  405. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woo-checkout-field-editor-pro.json +60 -0
  406. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woo-discount-rules.json +74 -0
  407. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woo-product-bundle.json +75 -0
  408. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woocommerce-gift-cards.json +60 -0
  409. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woocommerce-other-payment-gateway.json +44 -0
  410. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woocommerce-pdf-invoices-packing-slips.json +57 -0
  411. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woocommerce-product-addon.json +141 -0
  412. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/woocommerce-progressive-discounts.json +54 -0
  413. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/wordpress-seo.json +158 -0
  414. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/wpc-composite-products.json +97 -0
  415. package/skills/wix-replatform/resources/rp-source-wordpress/plugins/wpforms-lite.json +86 -0
  416. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/capture-store-settings.js +90 -0
  417. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/plugin-knowledge-validate.js +51 -0
  418. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/plugin-knowledge.js +103 -0
  419. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/wp-discovery.js +1668 -33
  420. package/skills/wix-replatform/resources/rp-source-wordpress/scripts/wp-plugin-inventory.js +273 -0
  421. package/skills/wix-replatform/resources/rp-source-wordpress/secret-value-patterns.v1.json +11 -0
  422. package/skills/wix-replatform/resources/rp-source-wordpress/sub-parts.json +13 -0
  423. package/skills/wix-replatform/resources/rp-target-wix/SKILL.md +446 -32
  424. package/skills/wix-replatform/resources/rp-target-wix/app-page-routing-capabilities.json +36 -0
  425. package/skills/wix-replatform/resources/rp-target-wix/domains/README.md +38 -2
  426. package/skills/wix-replatform/resources/rp-target-wix/domains/SERVICE-PLUGINS.md +322 -0
  427. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/docs-survey.json +70 -0
  428. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/domain.json +19 -9
  429. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/category.json +42 -8
  430. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/comment.json +54 -8
  431. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/post.json +66 -10
  432. package/skills/wix-replatform/resources/rp-target-wix/domains/blog/entities/tag.json +38 -7
  433. package/skills/wix-replatform/resources/rp-target-wix/domains/bookings/docs-survey.json +332 -0
  434. package/skills/wix-replatform/resources/rp-target-wix/domains/bookings/domain.json +75 -0
  435. package/skills/wix-replatform/resources/rp-target-wix/domains/bookings/entities/booking.json +181 -0
  436. package/skills/wix-replatform/resources/rp-target-wix/domains/bookings/entities/service-add-on.json +130 -0
  437. package/skills/wix-replatform/resources/rp-target-wix/domains/bookings/entities/service.json +180 -0
  438. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/docs-survey.json +161 -0
  439. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/domain.json +15 -4
  440. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/collection.json +39 -7
  441. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/data-item.json +47 -8
  442. package/skills/wix-replatform/resources/rp-target-wix/domains/cms/entities/reference.json +7 -1
  443. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/docs-survey.json +204 -0
  444. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/domain.json +17 -4
  445. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/contact.json +159 -15
  446. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/email-subscription.json +80 -12
  447. package/skills/wix-replatform/resources/rp-target-wix/domains/crm/entities/label.json +48 -8
  448. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/docs-survey.json +306 -0
  449. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/domain.json +30 -7
  450. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/delivery-profile.json +171 -0
  451. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/discount-rule.json +182 -0
  452. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-applied-discount.json +129 -0
  453. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-invoice-document.json +192 -0
  454. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-line-item-options.json +123 -0
  455. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-line-item.json +60 -12
  456. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-merchant-note.json +112 -0
  457. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-payment.json +191 -0
  458. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order-refund.json +140 -13
  459. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/order.json +383 -18
  460. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/pickup-location.json +122 -0
  461. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/shipping-option.json +98 -0
  462. package/skills/wix-replatform/resources/rp-target-wix/domains/ecom/entities/wishlist-item.json +86 -0
  463. package/skills/wix-replatform/resources/rp-target-wix/domains/events/docs-survey.json +128 -0
  464. package/skills/wix-replatform/resources/rp-target-wix/domains/events/domain.json +38 -0
  465. package/skills/wix-replatform/resources/rp-target-wix/domains/events/entities/category.json +73 -0
  466. package/skills/wix-replatform/resources/rp-target-wix/domains/events/entities/event.json +107 -0
  467. package/skills/wix-replatform/resources/rp-target-wix/domains/events/entities/registration-form.json +89 -0
  468. package/skills/wix-replatform/resources/rp-target-wix/domains/events/entities/rsvp.json +118 -0
  469. package/skills/wix-replatform/resources/rp-target-wix/domains/events/entities/ticket-definition.json +93 -0
  470. package/skills/wix-replatform/resources/rp-target-wix/domains/forms/docs-survey.json +86 -0
  471. package/skills/wix-replatform/resources/rp-target-wix/domains/forms/domain.json +56 -0
  472. package/skills/wix-replatform/resources/rp-target-wix/domains/forms/entities/form-submission.json +121 -0
  473. package/skills/wix-replatform/resources/rp-target-wix/domains/forms/entities/form.json +134 -0
  474. package/skills/wix-replatform/resources/rp-target-wix/domains/gift-cards/docs-survey.json +41 -0
  475. package/skills/wix-replatform/resources/rp-target-wix/domains/gift-cards/domain.json +50 -0
  476. package/skills/wix-replatform/resources/rp-target-wix/domains/gift-cards/entities/gift-card-product.json +87 -0
  477. package/skills/wix-replatform/resources/rp-target-wix/domains/gift-cards/entities/gift-card.json +130 -0
  478. package/skills/wix-replatform/resources/rp-target-wix/domains/index.json +914 -24
  479. package/skills/wix-replatform/resources/rp-target-wix/domains/media/docs-survey.json +41 -0
  480. package/skills/wix-replatform/resources/rp-target-wix/domains/media/domain.json +14 -4
  481. package/skills/wix-replatform/resources/rp-target-wix/domains/media/entities/media-file.json +45 -8
  482. package/skills/wix-replatform/resources/rp-target-wix/domains/media/entities/media-folder.json +41 -7
  483. package/skills/wix-replatform/resources/rp-target-wix/domains/members/docs-survey.json +119 -0
  484. package/skills/wix-replatform/resources/rp-target-wix/domains/members/domain.json +13 -3
  485. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/badge.json +41 -7
  486. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/custom-field.json +82 -0
  487. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/member-about.json +77 -0
  488. package/skills/wix-replatform/resources/rp-target-wix/domains/members/entities/member.json +165 -13
  489. package/skills/wix-replatform/resources/rp-target-wix/domains/pricing-plans/docs-survey.json +41 -0
  490. package/skills/wix-replatform/resources/rp-target-wix/domains/pricing-plans/domain.json +46 -0
  491. package/skills/wix-replatform/resources/rp-target-wix/domains/pricing-plans/entities/plan-order.json +137 -0
  492. package/skills/wix-replatform/resources/rp-target-wix/domains/pricing-plans/entities/plan.json +133 -0
  493. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/docs-survey.json +7 -0
  494. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/domain.json +36 -0
  495. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/amazon-shop-connect.json +71 -0
  496. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/ebay-shop-connect.json +67 -0
  497. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/google-youtube-connect.json +72 -0
  498. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/meta-catalog-connect.json +74 -0
  499. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/pinterest-catalog-connect.json +69 -0
  500. package/skills/wix-replatform/resources/rp-target-wix/domains/sales-channels/entities/tiktok-catalog-connect.json +61 -0
  501. package/skills/wix-replatform/resources/rp-target-wix/domains/schema.json +28 -1
  502. package/skills/wix-replatform/resources/rp-target-wix/domains/seo/docs-survey.json +109 -0
  503. package/skills/wix-replatform/resources/rp-target-wix/domains/seo/domain.json +73 -0
  504. package/skills/wix-replatform/resources/rp-target-wix/domains/seo/entities/item-seo-tags.json +148 -0
  505. package/skills/wix-replatform/resources/rp-target-wix/domains/seo/entities/seo-pattern.json +91 -0
  506. package/skills/wix-replatform/resources/rp-target-wix/domains/seo/entities/site-seo-tags.json +79 -0
  507. package/skills/wix-replatform/resources/rp-target-wix/domains/site/docs-survey.json +32 -0
  508. package/skills/wix-replatform/resources/rp-target-wix/domains/site/domain.json +49 -0
  509. package/skills/wix-replatform/resources/rp-target-wix/domains/site/entities/business-contact.json +103 -0
  510. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/docs-survey.json +203 -0
  511. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/domain.json +27 -10
  512. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/back-in-stock-request.json +119 -0
  513. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/brand.json +111 -0
  514. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/category.json +52 -8
  515. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/coupon.json +214 -10
  516. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/inventory-item.json +93 -13
  517. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/product-customization.json +111 -0
  518. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/product-tag.json +52 -10
  519. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/product.json +145 -14
  520. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/promotion.json +84 -0
  521. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/review.json +178 -0
  522. package/skills/wix-replatform/resources/rp-target-wix/domains/stores/entities/subscription-product.json +87 -0
  523. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/docs-survey.json +106 -0
  524. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/domain.json +64 -0
  525. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/entities/manual-tax-mapping.json +119 -0
  526. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/entities/tax-group.json +94 -0
  527. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/entities/tax-region.json +113 -0
  528. package/skills/wix-replatform/resources/rp-target-wix/domains/tax/entities/tax-settings.json +65 -0
  529. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-author-attribution.js +165 -0
  530. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build-client.js +60 -0
  531. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build-duplicates.js +201 -0
  532. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build-ledger.js +306 -0
  533. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build-report.js +229 -0
  534. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build-stage.js +55 -0
  535. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-build.js +715 -0
  536. package/skills/wix-replatform/resources/rp-target-wix/lib/blog-post-media.js +567 -0
  537. package/skills/wix-replatform/resources/rp-target-wix/lib/bulk-results.js +73 -0
  538. package/skills/wix-replatform/resources/rp-target-wix/lib/contact-extended-fields.js +194 -0
  539. package/skills/wix-replatform/resources/rp-target-wix/lib/contact-import.js +133 -0
  540. package/skills/wix-replatform/resources/rp-target-wix/lib/contract-ledger.js +13 -4
  541. package/skills/wix-replatform/resources/rp-target-wix/lib/coupon-redemption-drift.js +491 -0
  542. package/skills/wix-replatform/resources/rp-target-wix/lib/customer-member.js +104 -0
  543. package/skills/wix-replatform/resources/rp-target-wix/lib/data-extension-schema.js +673 -0
  544. package/skills/wix-replatform/resources/rp-target-wix/lib/domain-knowledge.js +453 -2
  545. package/skills/wix-replatform/resources/rp-target-wix/lib/gift-card-balance-reconciliation.js +119 -0
  546. package/skills/wix-replatform/resources/rp-target-wix/lib/gift-card-build.js +566 -0
  547. package/skills/wix-replatform/resources/rp-target-wix/lib/gift-card-redemption-build.js +249 -0
  548. package/skills/wix-replatform/resources/rp-target-wix/lib/order-applied-discount-build.js +63 -0
  549. package/skills/wix-replatform/resources/rp-target-wix/lib/order-buyer.js +187 -0
  550. package/skills/wix-replatform/resources/rp-target-wix/lib/order-channel-build.js +64 -0
  551. package/skills/wix-replatform/resources/rp-target-wix/lib/order-history.js +1027 -0
  552. package/skills/wix-replatform/resources/rp-target-wix/lib/order-invoice-contract.js +90 -0
  553. package/skills/wix-replatform/resources/rp-target-wix/lib/order-payment-mapping.js +420 -0
  554. package/skills/wix-replatform/resources/rp-target-wix/lib/pricing-plan-definition.js +177 -0
  555. package/skills/wix-replatform/resources/rp-target-wix/lib/product-import.js +151 -0
  556. package/skills/wix-replatform/resources/rp-target-wix/lib/product-seo.js +723 -0
  557. package/skills/wix-replatform/resources/rp-target-wix/lib/seo-redirects.js +353 -0
  558. package/skills/wix-replatform/resources/rp-target-wix/lib/shipping-build.js +1437 -0
  559. package/skills/wix-replatform/resources/rp-target-wix/lib/shipping-option-stage.js +354 -0
  560. package/skills/wix-replatform/resources/rp-target-wix/lib/store-config-build.js +134 -0
  561. package/skills/wix-replatform/resources/rp-target-wix/lib/stores-category-attach.js +221 -0
  562. package/skills/wix-replatform/resources/rp-target-wix/lib/stores-inventory.js +248 -0
  563. package/skills/wix-replatform/resources/rp-target-wix/lib/stores-verification.js +86 -3
  564. package/skills/wix-replatform/resources/rp-target-wix/lib/tax-build.js +231 -0
  565. package/skills/wix-replatform/resources/rp-target-wix/lib/url-mapper-transport.js +28 -0
  566. package/skills/wix-replatform/resources/rp-target-wix/lib/value-utils.js +14 -0
  567. package/skills/wix-replatform/resources/rp-target-wix/lib/variant-correlation.js +34 -0
  568. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-build.js +166 -15
  569. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-target-spec.js +19 -2
  570. package/skills/wix-replatform/resources/rp-target-wix/lib/wix-writers.js +4079 -257
  571. package/skills/wix-replatform/resources/rp-target-wix/lib/write-verification.js +3 -0
  572. package/skills/wix-replatform/resources/rp-target-wix/scripts/docs-survey-sync.js +150 -0
  573. package/skills/wix-replatform/resources/rp-target-wix/scripts/domain-knowledge-validate.js +40 -2
  574. package/skills/wix-replatform/resources/rp-target-wix/scripts/verify-stores.js +6 -1
  575. package/skills/wix-replatform/resources/rp-telemetry/SKILL.md +148 -8
  576. package/skills/wix-replatform/resources/rp-telemetry/lib/bi-sink.js +83 -15
  577. package/skills/wix-replatform/resources/rp-telemetry/lib/telemetry-recorder.js +1119 -215
  578. package/skills/wix-replatform/resources/rp-telemetry/lib/transcript-digest.js +318 -0
  579. package/skills/wix-replatform/resources/rp-telemetry/scripts/meter-from-audit.js +2 -2
  580. package/skills/wix-replatform/resources/rp-telemetry/scripts/rp-telemetry.js +106 -4
  581. package/skills/wix-replatform/resources/rp-website-continuation/SKILL.md +94 -0
  582. package/skills/wix-replatform/scripts/census-reconciliation.js +25 -0
  583. package/skills/wix-replatform/scripts/cms-fallback.js +89 -0
  584. package/skills/wix-replatform/scripts/discovered-census.js +26 -0
  585. package/skills/wix-replatform/scripts/discovered-set-status.js +33 -0
  586. package/skills/wix-replatform/scripts/entity-qa-attestation.js +130 -0
  587. package/skills/wix-replatform/scripts/execution-health-check.js +415 -0
  588. package/skills/wix-replatform/scripts/execution-manifest-validate.js +1 -1
  589. package/skills/wix-replatform/scripts/execution-state-prepare.js +1 -1
  590. package/skills/wix-replatform/scripts/expectations-ledger.js +44 -0
  591. package/skills/wix-replatform/scripts/import-contract-verify.js +183 -0
  592. package/skills/wix-replatform/scripts/internal-link-audit.js +90 -0
  593. package/skills/wix-replatform/scripts/item-seo-tags-verify.js +205 -0
  594. package/skills/wix-replatform/scripts/migration-completion.js +76 -0
  595. package/skills/wix-replatform/scripts/orchestration-preflight.js +21 -2
  596. package/skills/wix-replatform/scripts/orchestration-route.js +32 -1
  597. package/skills/wix-replatform/scripts/orchestration-state.js +146 -10
  598. package/skills/wix-replatform/scripts/read-back-gate.js +175 -0
  599. package/skills/wix-replatform/scripts/replatform-console.js +146 -0
  600. package/skills/wix-replatform/scripts/replatform.js +436 -0
  601. package/skills/wix-replatform/scripts/source-secrets.js +77 -0
  602. package/skills/wix-replatform/scripts/url-redirects.js +286 -0
  603. package/skills/wix-replatform/scripts/user-action.js +58 -0
  604. package/skills/wix-replatform/scripts/website-handoff-generate.js +64 -0
  605. package/skills/wix-replatform/scripts/wix-dashboard-url.js +54 -0
  606. package/skills/wix-replatform/scripts/wix-destination.js +143 -0
  607. package/skills/wix-replatform/scripts/wix-headless-scaffold.js +762 -0
  608. package/skills/wix-vibe-headless/SKILL.md +7 -3
  609. package/skills/wix-vibe-headless/install/deploy.cjs +61 -34
  610. package/skills/wix-vibe-headless/platforms/base44.md +1 -0
  611. package/skills/wix-vibe-headless/references/donations/INSTRUCTIONS.md +88 -0
  612. package/skills/wix-vibe-headless/references/donations/app/rest/wix-donations.js +112 -0
  613. package/skills/wix-vibe-headless/references/donations/seed/SEED.md +11 -0
  614. package/skills/wix-vibe-headless/references/donations/tests/donations.test.mjs +258 -0
  615. package/skills/wix-vibe-headless/references/restaurants/INSTRUCTIONS.md +5 -2
  616. package/skills/wix-vibe-headless/references/restaurants/app/context/OrderCartContext.jsx +4 -1
  617. package/skills/wix-vibe-headless/references/restaurants/app/rest/wix-restaurants-ordering.js +67 -3
  618. package/skills/wix-vibe-headless/references/shared/app/rest/wix-client.js +4 -3
  619. package/skills/wix-replatform/resources/rp-target-wix/SPEC-product-reviews-and-blog-authorship.md +0 -330
@@ -0,0 +1,187 @@
1
+ # Extraction-first artifact contract
2
+
3
+ Schema family: `0083.1`. The hand-authored JSON Schema 2020-12 files under
4
+ `schemas/` are authoritative. `scripts/generate-extraction-validators.mjs`
5
+ mechanically generates the dependency-free runtime validator committed at
6
+ `scripts/lib/extraction-validators.generated.mjs`; `--check` rejects schema and
7
+ validator drift. Semantic and cross-artifact checks remain in
8
+ `scripts/lib/extraction-contract.mjs`. Product runs do not download a validator.
9
+
10
+ ## Scope and order
11
+
12
+ This workflow resolves and reconstructs one home page. Do not accept non-home
13
+ scope or explicit additional URLs until a later approved workflow defines their
14
+ resolution and shared-evidence rules.
15
+
16
+ 1. Resolve the home page and `/` destination route.
17
+ 2. Capture browser evidence across the required viewports and safe states.
18
+ 3. Segment visible regions and assign exactly one owner.
19
+ 4. Extract the foundation, metadata, and shared chrome.
20
+ 5. Recursively extract section/component units.
21
+ 6. Enforce the rendered-content boundary, then validate and freeze accepted or provisional specs.
22
+
23
+ Content-bearing fields come from browser-rendered text, never raw parent `textContent`.
24
+ `script`, `style`, `noscript`, and `template` descendants are non-content even when a
25
+ parent section is visible. Visible `pre`/`code` remains valid authored content and carries
26
+ visible-code provenance. A strong source-code contamination signal omits only the affected
27
+ strings, creates an owned local gap, and makes that unit provisional without blocking the
28
+ rest of the home-page workflow. The content-extraction semantics version participates in
29
+ the capture fingerprint so a capture made under older text semantics is not reused as the
30
+ same capture.
31
+ 7. Derive a build plan only from the frozen manifest.
32
+ 8. Build, verify, recover bounded gaps, and issue the final report.
33
+
34
+ ## Canonical tree
35
+
36
+ ```text
37
+ docs/site-clone/
38
+ page-resolution.spec.json # early durable resolution checkpoint
39
+ extraction/
40
+ latest.json # capture id + frozen manifest hash only
41
+ <capture-id>/
42
+ page-resolution.spec.json
43
+ page-capture.spec.json
44
+ observations/
45
+ page.json
46
+ assets.json
47
+ seo.json
48
+ tokens.json
49
+ interaction-map.json
50
+ scene-contract.json
51
+ control-state-contract.json
52
+ visual-assets.json
53
+ layout-blueprint.json
54
+ ui-normalization.json
55
+ recursive-jobs.json
56
+ packets/*.packet.json # typed, sanitized replay inputs
57
+ foundation.spec.json
58
+ metadata.spec.json
59
+ shared-chrome.spec.json
60
+ sections/<section-id>/section.spec.json
61
+ sections/<section-id>/components/<component-id>.spec.json
62
+ extraction-gaps.json
63
+ spec-index.json
64
+ extraction-manifest.json
65
+ replay-report.json # replay captures only
66
+ build/
67
+ build-plan.json
68
+ component-selection.json
69
+ registry-installation.json
70
+ section-implementation.json
71
+ qa/
72
+ visual-qa.json
73
+ font-validation.json
74
+ registry-opportunities.json
75
+ final-report.json
76
+ final-report.md
77
+ ```
78
+
79
+ Observation files are retained inputs to deterministic projection. Their sanitized,
80
+ typed packet forms are the only replay inputs, and every packet/reference is paired
81
+ with a semantic hash in the manifest. Packet tampering therefore invalidates the
82
+ manifest before replay. Builders must not read observations or packets.
83
+ `spec-index.json` maps stable unit IDs to frozen spec paths;
84
+ `extraction-manifest.json` is the only authority for planning a build.
85
+
86
+ ## Frozen specs
87
+
88
+ Every foundation, metadata, shared-chrome, section, and component spec has:
89
+
90
+ - `schemaVersion`, `kind`, stable `id`, and `pageKey: "home"`;
91
+ - `status: "accepted" | "provisional"`;
92
+ - source-neutral content/layout/style/behavior/reconstruction/acceptance fields
93
+ appropriate to its kind;
94
+ - evidence/provenance references;
95
+ - direct dependency hashes;
96
+ - owned `gapRefs`;
97
+ - an immutable SHA-256 semantic hash.
98
+
99
+ An accepted spec supplies every required fact. A provisional spec supplies every
100
+ reliably observed fact and references at least one local gap naming every omitted
101
+ required field, assumption, dependency, and affected acceptance check. Builders
102
+ may implement the reliable portion but may not invent exact copy, assets, links,
103
+ business actions, or unobserved behavior.
104
+
105
+ ## Serialization and hashing
106
+
107
+ Use RFC 8785 canonical JSON and SHA-256. Semantic hashes include schema version,
108
+ semantic fields, evidence references, detector versions, and direct dependency
109
+ hashes. They exclude timestamps, formatting, logs, and machine-specific absolute
110
+ path prefixes. A changed spec or dependency gets a new hash and invalidates stale
111
+ downstream ledger entries. A hash proves identity/integrity, not confidence.
112
+
113
+ All product artifact schemas reject unknown top-level fields. Extension data is
114
+ allowed only in the explicitly named `extensions` object with a namespaced key.
115
+
116
+ ## Acceptance authority
117
+
118
+ Hard gates are deterministic and cannot be waived by the agent: schema validity,
119
+ referential integrity, exact ownership or explicit ignore/gap, required
120
+ provenance, safe-probe compliance, dependency closure, hash integrity, and no
121
+ unresolved global blocker.
122
+
123
+ Per-detector confidence is calibrated on the approved corpus. A high band must
124
+ meet at least 95% precision and may freeze automatically. Medium candidates become
125
+ compact typed decision requests for the orchestrating agent. Low confidence,
126
+ agent abstention, or invalid patches become gaps. The agent chooses only among
127
+ the typed choices and cannot override hard gates.
128
+
129
+ ## Anti-stuck gaps
130
+
131
+ Each gap declares owner, local/global scope, missing fields, reason, confidence,
132
+ evidence, dependency closure, acceptance impact, attempts, remaining budget,
133
+ assumptions, omissions, and user decision.
134
+
135
+ - A local gap never stops unrelated extraction, freeze, build, or QA.
136
+ - Affected work receives at most two distinct targeted attempts. Repeating the
137
+ same tactic without new evidence is rejected as no progress.
138
+ - After the budget is exhausted, the affected dependency closure freezes and
139
+ builds provisionally.
140
+ - Only unresolved home identity, unusable page-wide capture, corrupt integrity,
141
+ unisolatable safety failure, or inability to assemble/build/serve any viable
142
+ shell is a global blocker.
143
+ - Local gaps remaining at handoff produce `done_with_gaps` and a final report;
144
+ they do not produce a blocked run.
145
+
146
+ After assembly the user may accept, retry/fix, provide material, replace, omit,
147
+ or leave each provisional unit unresolved. Human acceptance does not relabel an
148
+ unverified unit as verified.
149
+
150
+ ## Safe behavior evidence
151
+
152
+ Probe only public unauthenticated pages. Allow scrolling, hover, focus, keyboard
153
+ navigation, resize, bounded waits, and controls confidently classified as local
154
+ presentation changes (tabs, disclosures, menus, carousel controls). Block form
155
+ submission, authentication, cart/checkout, purchase/booking, uploads, account or
156
+ admin state, destructive controls, navigation, mutating requests, and any
157
+ unclassified click. Record blocked actions/requests and hard action/time budgets.
158
+
159
+ ## Evidence lifecycle
160
+
161
+ Keep evidence local until explicit cleanup. Redact authorization/cookie headers,
162
+ secrets, sensitive query values, and form values before persistence. Content-hash
163
+ and deduplicate downloaded assets. Full browser traces/video are opt-in diagnostic
164
+ artifacts. Cap retained evidence at 250 MB, frozen specs and manifests at 10 MB, typed
165
+ agent decisions at 30, agent input at 50,000 tokens, and p95 extraction at ten
166
+ minutes on the approved benchmark.
167
+
168
+ Replay retained packets unless source fingerprint, required observation kind,
169
+ viewport/state set, capture semantics, or packet integrity changed. Detector,
170
+ schema projection, or typed-decision changes alone do not require recapture.
171
+
172
+ ## Registry boundary
173
+
174
+ The shadcn-format registry under `registry/` contains only pinned, human-approved
175
+ runtime revisions. Candidate intake and review happen outside the published
176
+ skill under the repository's `registry-candidates/` workspace; deterministic
177
+ promotion copies only approved source, capabilities, the compact agent contract,
178
+ license, and approval record into `registry/`.
179
+
180
+ Selection code filters hard license/accessibility/responsive/SSR/RTL/reduced-
181
+ motion/runtime requirements and the hash-pinned generic `capabilities.json`
182
+ axes, slots, states, compositions, and constraints. It records rejection
183
+ evidence and the resolved typed binding in `build/component-selection.json`.
184
+ The building agent reads that selection record and, only for a selected item,
185
+ the referenced `contract.md`. It does not scan the registry or read capability
186
+ JSON, approvals, licenses, source provenance, candidate reviews, or live
187
+ documentation. When nothing qualifies, use the bounded custom builder.
@@ -0,0 +1,137 @@
1
+ # Interaction Runtime Contract
2
+
3
+ Use this contract after `interaction-map.json` and `scene-contract.json` identify one or
4
+ more core scenes.
5
+
6
+ ## Principle
7
+
8
+ Implement the observed state machine, not the source library. A source may use GSAP,
9
+ Framer Motion, Web Animations, CSS transitions, or custom JavaScript. The clone may use a
10
+ different mechanism as long as its content, visual states, transition shape, responsive
11
+ behavior, and interaction invariants match the evidence.
12
+
13
+ Do not translate a scene contract to more descriptive prose. Start from the declared
14
+ primitive, bind extracted content and media to it, and expose the QA markers below.
15
+
16
+ ## Required markers
17
+
18
+ Every core scene:
19
+
20
+ ```html
21
+ <section data-rp-scene="home-home-section-002" data-rp-initialized="active-card-rail">...</section>
22
+ ```
23
+
24
+ Active-card rail:
25
+
26
+ ```html
27
+ <section data-rp-scene="..." data-rp-initial-state="all-collapsed">
28
+ <div data-rp-viewport>
29
+ <div data-rp-track>
30
+ <article data-rp-item data-rp-hover-target data-rp-active="true">
31
+ <button data-rp-activate>...</button>
32
+ </article>
33
+ </div>
34
+ </div>
35
+ </section>
36
+ ```
37
+
38
+ Content switcher:
39
+
40
+ ```html
41
+ <button data-rp-item data-rp-activate data-rp-active="true">...</button>
42
+ <div data-rp-panel>...</div>
43
+ ```
44
+
45
+ Scroll scene:
46
+
47
+ ```html
48
+ <section data-rp-scene="..." data-rp-phase="approach">
49
+ <div data-rp-visual>...</div>
50
+ <div data-rp-content>...</div>
51
+ <div data-rp-curtain="left"></div>
52
+ <div data-rp-curtain="right"></div>
53
+ <div data-rp-panel>...</div>
54
+ </section>
55
+ ```
56
+
57
+ Markers are implementation instrumentation. Do not copy source selectors into them.
58
+
59
+ `site-clone.mjs` installs framework-source copies and browser-ready public copies. The
60
+ default and safest startup is the exact contract bootstrap, included once by the page:
61
+
62
+ ```html
63
+ <script type="module" src="/site-clone/rp-interactions-bootstrap.mjs"></script>
64
+ ```
65
+
66
+ Do not use an inline raw-browser import of `../lib/rp-interactions.mjs`; a browser URL is
67
+ not resolved from `src/`. The bootstrap auto-binds complete marker contracts after DOM
68
+ readiness. `data-rp-initialized` is runtime evidence, not a marker to hard-code in markup.
69
+ Source-specific CSS and content still belong in the page/component implementation.
70
+
71
+ ## Primitive rules
72
+
73
+ ### `active-card-rail`
74
+
75
+ - Render every captured repeated item in source order.
76
+ - Keep a real horizontal track inside a separate scroll viewport; do not substitute a grid.
77
+ - Put `overflow-x` and scrolling on `data-rp-viewport`; put `width: max-content` or the
78
+ equivalent row sizing on `data-rp-track`. A max-content track cannot be its own viewport.
79
+ - Use the exact captured initial active indexes. Set `data-rp-initial-state="all-collapsed"`
80
+ when source has none; runtime initialization must not auto-open an item.
81
+ - Reproduce the measured separation mechanism: track gap, geometric gap, item margin,
82
+ divider, inner inset, or flush.
83
+ - Preserve the observed expanded/collapsed width ratio within the contract tolerance.
84
+ - Controls and direct item activation must update the same state.
85
+ - Mark the source hover surface with `data-rp-hover-target` and reproduce its visual hover
86
+ treatment with keyboard-equivalent focus styling.
87
+ - Reproduce nested reveal order and approximate settle time from the captured timeline.
88
+
89
+ ### `content-switcher`
90
+
91
+ - Use visible controls with one current state.
92
+ - Keep all captured state content in the implementation.
93
+ - Change the visible `data-rp-panel` content and active marker on activation.
94
+ - Preserve keyboard access and relevant ARIA state.
95
+ - Give controls and panels matching `data-rp-state` values so `bindContentSwitcher` can
96
+ manage state deterministically.
97
+
98
+ ### `scroll-scene`
99
+
100
+ - Derive progress from the scene's own scroll range.
101
+ - Preserve entry/approach phases and internal pinned phases in their captured order.
102
+ - Keep `data-rp-phase` synchronized with the visual state.
103
+ - Expose continuous `--rp-entry-progress` and `--rp-scroll-progress` custom properties.
104
+ - Mark only the measured pinned/cropped/scaled visual wrapper with `data-rp-visual`.
105
+ - Mark independently positioned copy with `data-rp-content` and keep it outside visual
106
+ scaling unless source content geometry explicitly scales.
107
+ - Reproduce large sibling reveal layers from `sceneLayers`, including paired curtains or
108
+ masks. Mark observed curtains with `data-rp-curtain` so reveal distance is verified even
109
+ when the media itself stays full-width.
110
+ - Do not flatten the scene into static columns when source evidence includes pinning.
111
+ - Pass captured phase names/progress thresholds to `bindScrollScene`; combine it with
112
+ `bindContentSwitcher` when tabs share the same scene.
113
+
114
+ ### `sticky-header` and `media-scene`
115
+
116
+ - Preserve the captured trigger threshold and material chrome changes.
117
+ - Keep source-backed media interactive with the recorded URL and playback flags.
118
+ - Treat a poster or background with `fallbackPolicy: "fallback-only"` as mutually exclusive
119
+ with a successfully loaded video/iframe. Do not leave it as a visible layer behind media.
120
+
121
+ ## Runtime QA
122
+
123
+ Start the clone locally, then run:
124
+
125
+ ```bash
126
+ node scripts/verify-interactions.mjs \
127
+ --out projects/<project-name> \
128
+ --clone-url http://127.0.0.1:4321 \
129
+ --project-root <project-root> \
130
+ --viewports 375,768,1440
131
+ ```
132
+
133
+ The command writes `docs/site-clone/interaction-qa.json` and exits non-zero if a core
134
+ scene is absent, lacks its runtime initialization token, or violates its assertions at
135
+ **any** of the listed viewports — a layout correct at 1440 and broken at 375 is a failure,
136
+ not a pass. Fix failures before final visual polish. Omitting `--viewports` checks only
137
+ the historical 1440px viewport.
@@ -0,0 +1,41 @@
1
+ # Section Layout Blueprint Contract
2
+
3
+ `layout-blueprint.json` is the source of truth for how every section is composed. It sits
4
+ between source/scene extraction and UI normalization. Implement one section at a time in
5
+ this order:
6
+
7
+ 1. canvas width, height, positioning context, overflow, and pinning;
8
+ 2. ordered background layers (`base`, `media`, `scrim`, `decoration`);
9
+ 3. foreground container;
10
+ 4. semantic regions and their normalized rectangles;
11
+ 5. important text geometry, observed line count, and wrapping policy;
12
+ 6. region relationships and responsive reflow;
13
+ 7. interaction mechanics, then UI normalization.
14
+
15
+ ## Controlled vocabulary
16
+
17
+ Use the vocabulary embedded in the artifact. Composition is one of `layered-overlay`,
18
+ `split`, `stack`, `grid`, `rail`, `scroll-narrative`, or `freeform`. Background is `none`,
19
+ `color`, `gradient`, `image`, `video`, or `composite`. Regions use roles such as `heading`,
20
+ `body-copy`, `media`, `action`, and `tabs`, with a nine-position placement anchor.
21
+ Text wrapping uses `single-line`, `wrapped`, or `clipped-or-overflowing`.
22
+
23
+ The terms make implementation consistent; normalized rectangles preserve distinctive
24
+ source geometry. Do not replace the measurements with a generic layout merely because its
25
+ name sounds similar.
26
+
27
+ ## Identity rules
28
+
29
+ - Composition, background-media role, layer order, and declared relationships are identity
30
+ locks.
31
+ - `layered-overlay` and `scroll-narrative` media must not become a peer column beside copy.
32
+ - `fallback-only` posters disappear when primary video/iframe media is ready.
33
+ - Scene evidence overrides static DOM evidence for animated or pinned phases.
34
+ - A measured single-line desktop heading must remain one line at the canonical desktop
35
+ viewport; preserve its inline-size constraint before adjusting typography.
36
+ - Responsive reflow may stack a declared split, but it must retain content hierarchy and
37
+ media role.
38
+
39
+ New best-practice rules should consume this artifact from UI normalization. Extend
40
+ `scripts/lib/layout-blueprint/` classifiers or vocabulary independently; bump the vocabulary
41
+ version when controlled terms change.
@@ -0,0 +1,93 @@
1
+ # Output contract
2
+
3
+ ## Project and recovery boundary
4
+
5
+ The default output is `projects/<project-name>` using Wix CLI Headless, Astro,
6
+ TypeScript, and Tailwind. Standalone build mode must provision a real Wix project
7
+ before writing clone artifacts. Migration mode reuses the handoff-owned project;
8
+ it never creates or retargets a second site.
9
+
10
+ Browser extraction requires the host preflight. Retry shell/PATH/tool resolution in
11
+ the compatible interactive login shell, then request browser/network escalation and
12
+ retry. Sandboxed browser-launch or network failures are not terminal on first occurrence
13
+ in one-click mode.
14
+
15
+ ## Implemented scope
16
+
17
+ The output owns one resolved home page at `/`. Additional static pages, explicit URL
18
+ scope, and multi-page shared-evidence conflict resolution are not implemented. Wix
19
+ business routes from a migration handoff may remain linked/preserved, but this skill does
20
+ not reconstruct their visual pages.
21
+
22
+ ## Required artifact tree
23
+
24
+ The durable source contract is:
25
+
26
+ - `docs/site-clone/page-resolution.spec.json`;
27
+ - `docs/site-clone/extraction/latest.json`;
28
+ - the referenced capture directory with observations, frozen specs, gaps, index,
29
+ and manifest;
30
+ - `docs/site-clone/build/build-plan.json` and `component-selection.json`;
31
+ - `docs/site-clone/build/section-implementation.json`;
32
+ - `docs/site-clone/qa/` verification artifacts;
33
+ - `docs/site-clone/final-report.json` and `.md`.
34
+
35
+ Old flat `source-map.json`, `tokens.json`, `seo.json`, page/component handoffs, and
36
+ their resume semantics are not builder contracts. Extractors may produce equivalent
37
+ signals internally, but they are frozen under the capture's `observations/` directory
38
+ and only projected specs cross into building.
39
+
40
+ ## Generated home page
41
+
42
+ - Verify the frozen manifest and build-plan hash before writing UI.
43
+ - Install the frozen foundation and metadata, then shared chrome, recursive
44
+ components, and sections in declared dependency/source order.
45
+ - Preserve exact observed text, links, source media/logos/fonts, layers, layout,
46
+ responsive behavior, accessibility, and safe observed interaction end states.
47
+ - Never invent missing copy, asset identity, navigation, business action, or
48
+ behavior. Implement the reliable portion provisionally and link it to its gaps.
49
+ - Use Astro for static/content-heavy UI and React only for useful interactive
50
+ islands with deliberate hydration.
51
+ - Select only pinned, human-approved items from the local registry. Record why an
52
+ item was selected/rejected and the exact approved capability-manifest hash and
53
+ agent-contract hash plus the resolved binding. Use only declared variations;
54
+ expose only the generated selection and selected `contract.md` to the builder,
55
+ and use the bounded custom path when none qualifies.
56
+ - Add stable `data-rp-unit`, manifest-hash, classification, state, and runtime
57
+ markers needed by generated acceptance tests.
58
+ - Keep the implementation ledger keyed to frozen spec hashes. Code inspection
59
+ cannot mark a unit verified.
60
+
61
+ ## Gap and completion status
62
+
63
+ A local gap never blocks unrelated units. It receives at most two distinct targeted
64
+ recovery attempts and then becomes provisional. The assembled page is handed to the
65
+ user with choices to accept, retry/fix, provide material, replace, omit, or leave the
66
+ unit unresolved.
67
+
68
+ `final-report.json` and `.md` must identify what could not be imported reliably and
69
+ why, its evidence/confidence/attempts, assumptions/omissions, affected checks and
70
+ dependencies, provisional output, and user decision. Remaining local gaps produce
71
+ `done_with_gaps`; only a genuine global blocker produces blocked. A provisional or
72
+ user-accepted limitation is never described as verified.
73
+
74
+ ## Migration terminal receipt
75
+
76
+ For `management_and_website`, `website/completion.json` is valid only after the
77
+ latest browser comparison/review has no unresolved critical/high identity finding,
78
+ the final report is present, and any requested facelift has its separate acceptance.
79
+ A successful build or backend import is not frontend completion. The receipt records
80
+ the handoff fingerprint, frozen manifest hash, release URL, final status, and evidence
81
+ references.
82
+
83
+ For a migration with public source URLs, the build also writes the **final route manifest**
84
+ `state/url-preservation/final-routes.json` in the migration project: `siteId`,
85
+ `deploymentId`, and per routed entity `sourceKey` (the URL ledger's `sourceStableKey`),
86
+ `targetEntityType`, `targetEntityId`, final site-relative `relativeUrl` and a stable
87
+ `pageMarker` string that the rendered page contains (for example a `data-entity-id`
88
+ attribute). Record the referenced entity itself, not a page that merely contains it. The
89
+ receipt references this manifest and the current `execution/url-preservation-report.json`
90
+ status. A successful build never implies that old URLs are preserved: old-link planning,
91
+ redirect application and public verification are separate helper runs
92
+ (`skills/wix-replatform/scripts/url-redirects.js`) that the cutover step schedules. Until
93
+ they run, the receipt shows the pending URL work instead of a substitute launch flow.
@@ -0,0 +1,125 @@
1
+ # Post-build gap analysis and fix contract
2
+
3
+ The first successful build is a comparison candidate, not the end of the clone.
4
+
5
+ ## Run the result extraction
6
+
7
+ Start the generated project and keep its local URL available, then run:
8
+
9
+ ```bash
10
+ node scripts/post-build-gap.mjs <source-url> \
11
+ --out projects/<project-name> \
12
+ --result-url http://localhost:<port>/
13
+ ```
14
+
15
+ The command reuses the capture primitives for the home result route. It captures the result's
16
+ desktop/tablet/mobile screenshots, page and section evidence, assets, fonts, SEO, interactions,
17
+ design tokens, scene contract, control-state contract, visual assets, layout blueprint, and UI
18
+ normalization evidence. Source contracts are read through `extraction/latest.json` and its
19
+ immutable frozen manifest; builders and QA do not read or recapture source observations as a
20
+ substitute for a missing spec fact. Result evidence is isolated under the numbered gap iteration
21
+ and never replaces the frozen extraction.
22
+
23
+ If Chromium launch is blocked by the execution environment, that is a recovery case before
24
+ it is a blocker: rerun the command with the required browser-launch escalation (or from a
25
+ normal local shell/session that permits Playwright to launch) before treating the gap run
26
+ as failed.
27
+
28
+ ## Deterministic comparison vocabulary
29
+
30
+ Findings use these categories:
31
+
32
+ - `dimensions`: full-page/section height, normalized region geometry, important text width,
33
+ line count, and logo size;
34
+ - `images`: source image/video/logo identity, count, role, and placement;
35
+ - `layout`: route and section coverage, section order, composition, background model, and
36
+ media ownership;
37
+ - `text`: visible headings, body copy, labels, tabs, and CTAs;
38
+ - `interactions`: source core behavior not observed in the running result.
39
+
40
+ Severity means:
41
+
42
+ - `critical`: missing route or identity-bearing brand media;
43
+ - `high`: source intent or a major layout/interaction is wrong;
44
+ - `medium`: meaningful supporting geometry/style differs beyond tolerance;
45
+ - `low`: review or cleanup that does not materially change identity.
46
+
47
+ Exact requirements and tolerance ranges are embedded in `gap-analysis.json`. Do not turn
48
+ this into a universal pixel-diff gate. Consent infrastructure, different video frames,
49
+ font antialiasing, timestamps, and small crop/compositing differences are non-blocking unless
50
+ they change layout or page intent.
51
+
52
+ ## Required screenshot judgment
53
+
54
+ The deterministic report creates `screenshotPairs[]` with source and result paths. Open every
55
+ pair at original size, at all captured viewports. Review the page section by section and add
56
+ only identity-affecting visual findings to the canonical iteration report referenced by
57
+ `latest.json.paths.reportJson`, using the same finding schema.
58
+
59
+ Write `iterations/<NNN>/visual-review.json` using this shape (one record for every pair):
60
+
61
+ ```json
62
+ {
63
+ "pairs": [
64
+ {
65
+ "pairId": "home-desktop",
66
+ "viewport": "desktop",
67
+ "observation": "Hero dog is substantially larger than the source and obscures the title.",
68
+ "verdict": "findings-recorded",
69
+ "findingIds": ["gap-041"]
70
+ },
71
+ {
72
+ "pairId": "home-mobile",
73
+ "viewport": "mobile",
74
+ "observation": "Header hierarchy, hero composition, and visible section order match source identity.",
75
+ "verdict": "no-identity-gap",
76
+ "rationale": "Only harmless antialiasing differences remain."
77
+ }
78
+ ]
79
+ }
80
+ ```
81
+
82
+ After review, run:
83
+
84
+ ```bash
85
+ node scripts/finalize-gap-review.mjs <source-url> \
86
+ --out projects/<project-name>
87
+ ```
88
+
89
+ The finalizer rejects missing, duplicate, unknown, or incomplete records; verifies linked
90
+ finding IDs against the canonical report; synchronizes the canonical report, latest pointers,
91
+ and iteration manifest; and recomputes acceptance.
92
+
93
+ ## Gap fix phase
94
+
95
+ Use `gap-fix-plan.md` in this order:
96
+
97
+ 1. missing page/section;
98
+ 2. text, logos, and source media;
99
+ 3. major section composition and background/media ownership;
100
+ 4. important dimensions, line counts, and responsive geometry;
101
+ 5. core interactions and initial states;
102
+ 6. supporting spacing and styling.
103
+
104
+ Fix the implementation rather than weakening tolerances or editing extracted result evidence.
105
+ For a new iteration following open critical/high findings, complete the generated
106
+ `visual-progress.json`. It must give every prior blocking finding a named section target plus
107
+ the matching canonical source, prior-result, and current-result screenshot paths; record visible
108
+ before/after observations and an `improved`, `no-visible-improvement`, or `regressed` verdict.
109
+ The finalizer rejects incomplete or untraceable proof, and an accepted resolution requires
110
+ `improved`. Build again, rerun `post-build-gap.mjs` to create the next immutable iteration,
111
+ inspect its new screenshot queue, and finalize the review. Run at most two fix passes by default.
112
+ Each owned extraction gap receives at most two distinct targeted recovery attempts. Repeating
113
+ the same tactic without new evidence is not progress. After exhaustion, keep the unit
114
+ provisional and continue unrelated work. Report what could not be imported reliably, why, and
115
+ the user's post-assembly choices instead of treating a local gap as a global blocker.
116
+
117
+ Completion requires:
118
+
119
+ - the latest build succeeds;
120
+ - visual review is `reviewed` (or legitimately `not-applicable`);
121
+ - no open critical or high findings remain;
122
+ - interaction QA passes for core scenes;
123
+ - residual medium/low and provisional extraction gaps are summarized rather than hidden;
124
+ - `final-report.json` and `.md` identify every unresolved/user-accepted gap;
125
+ - local gaps end as `done_with_gaps`; only a global blocker ends as blocked.
@@ -0,0 +1,83 @@
1
+ # Home-page QA checklist
2
+
3
+ Run QA after manifest-derived implementation. A build is not acceptance.
4
+
5
+ ## Frozen boundary
6
+
7
+ - `extraction/latest.json` matches the frozen manifest hash.
8
+ - Every spec and dependency hash verifies before QA.
9
+ - Every typed replay packet/reference hash verifies; a changed packet rejects replay.
10
+ - Every build-plan unit has a matching implementation-ledger entry and spec hash.
11
+ - `qa/visual-qa.json` contains one `unitAcceptance` record per planned unit and every
12
+ required frozen criterion is verified, pending, failed, or explicitly gap-backed.
13
+ - Accepted units contain every classification-required field; every provisional
14
+ omission is represented by an owned local gap.
15
+ - No builder/QA code rediscovered a source fact or read observations to fill a spec gap.
16
+
17
+ ## Unit fidelity
18
+
19
+ For foundation, metadata, shared chrome, each recursive component, and every section:
20
+
21
+ - Run the spec's content/order, asset, layer, layout, responsive, behavior,
22
+ accessibility, and visual/geometry acceptance checks at every required viewport.
23
+ - Preserve exact visible copy, menu/footer hierarchy, links, logos/media/font tuples,
24
+ background/media role, positioned layers, and important text geometry.
25
+ - Preserve observed control states, keyboard semantics, initial state, interaction end
26
+ states, reduced motion, and runtime initialization markers.
27
+ - Keep each finding on its smallest owning unit. Do not compensate through unrelated
28
+ global CSS or another section.
29
+ - Mark status `verified` only from rendered/browser evidence. Keep gap-backed work
30
+ `provisional`; human acceptance is `user-accepted`, not verified.
31
+
32
+ ## Page fidelity
33
+
34
+ - The home route builds and serves in the actual Wix Headless Astro project.
35
+ - Foundation/global CSS is installed once and shared chrome remains a first-class unit.
36
+ - Section order, full-page rhythm, desktop/tablet/mobile reflow, first viewport, and
37
+ page-level behavior match the frozen page contract.
38
+ - SEO metadata is applied without leaking metadata-only text into visible hero content.
39
+ - Consent infrastructure marked ignored is not cloned as content.
40
+ - No placeholder, clone-process, migration, or development copy appears.
41
+ - External links remain absolute and preserved internal links behave honestly.
42
+
43
+ ## Registry
44
+
45
+ - `build/component-selection.json` names the frozen manifest.
46
+ - Every selected item is a pinned local registry revision with a valid human approval,
47
+ license record, runtime class, source hash, capability-manifest hash, agent-contract hash,
48
+ and quality evidence.
49
+ - The resolved binding uses only manifest-declared axes/values, slots, states, and
50
+ compositions; unsupported requirements have deterministic rejection evidence.
51
+ - The builder read only `component-selection.json` and the selected item's `contract.md`;
52
+ candidate reviews/provenance and registry internals were not added to agent context.
53
+ - Astro/static versus React-island use is deliberate; interactive islands declare
54
+ hydration and accessible no-JavaScript behavior.
55
+ - Items pass accessibility, keyboard, focus, responsive, SSR, RTL, reduced-motion,
56
+ dependency, styling-isolation, and state/variant checks.
57
+ - When no item qualifies, rejection evidence exists and the bounded custom path is used.
58
+ - `build/registry-installation.json` proves each selected local file hash and exact
59
+ dependency/capability binding; `qa/registry-opportunities.json` records reusable custom gaps.
60
+
61
+ ## Browser comparison and recovery
62
+
63
+ - Run interaction verification and `post-build-gap.mjs` against the running home page.
64
+ - Open every desktop/tablet/mobile screenshot pair at original size and write one complete
65
+ `visual-review.json` record per pair.
66
+ - Fix missing structure/content/media first, then composition/geometry, core behavior,
67
+ and supporting polish.
68
+ - For prior critical/high findings, `visual-progress.json` links canonical source,
69
+ before-result, and after-result screenshots and proves visible improvement.
70
+ - A local evidence gap uses at most two distinct targeted recovery attempts. Repeating a
71
+ tactic without new evidence is no progress. After exhaustion, preserve the unit
72
+ provisionally and continue unrelated QA.
73
+ - Only unresolved home identity, unusable page-wide capture, corrupt integrity,
74
+ unisolatable safety failure, or inability to assemble/build/serve any shell is blocked.
75
+
76
+ ## Final report
77
+
78
+ - `final-report.json` and `.md` name every unresolved/user-accepted gap, visible location,
79
+ unavailable fact and reason, evidence/confidence/attempts, provisional implementation,
80
+ assumptions/omissions, affected checks/dependencies, and user choices.
81
+ - No gaps plus reviewed passing browser evidence may become `done`.
82
+ - Remaining local gaps become `done_with_gaps`.
83
+ - Only a global blocker becomes `blocked`.