Automattic / Automattic/data-liberation-agent

Wix Bookings captures as a frozen calendar picture: app-surface imports need a product decision, not more fidelity

Open
#183 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
31
Forks
3
Avg merge
10h 14m
Merged PRs (30d)
81

Description

## What the customer gets

A Brisbane law firm's Wix site drives everything toward "Book a Free Consultation". After import, that CTA lands on a page showing a September 2026 calendar grid: the Wix Bookings widget, captured pixel-perfect as static markup. No date can be picked, no time slot loads, no booking exists. Next year the page will still say September 2026. The same pattern hit nukabaylodge.com's Retreat Calendar page a week earlier (an empty expanse there, because the widget only paints for interactive visitors).

This is not a capture bug. Capture did exactly what it promises: a faithful copy of what the page showed. The point of this issue is that for Wix *app* surfaces (Bookings here; Stores, Events, Members elsewhere), a faithful copy is structurally a decoy, and no amount of capture fidelity changes that. What to do instead is a product decision, so filing this as the product-direction question rather than a fix request.

Observed on an import of `https://www.kdclegal.com/` (Wix, 65 routes; Wix Bookings service "Free Initial Consultation" in the sitemap) via `studio create --from`, DLA PR #119 @ `e7926f7`.

## Options that exist today (none chosen by anyone yet)

1. **Map to a WordPress booking equivalent** — materialize a booking plugin's flow seeded with the captured service (name, duration, timezone). Highest value, largest scope, needs a plugin-provider decision like the Jetpack forms path.
2. **Preserve as a link-out** — if the source booking flow has a public URL on the platform (Wix bookings pages keep working on the old site until it is shut down), replace the frozen widget with an honest link. Cheap, ugly, truthful.
3. **At minimum, mark the decoy** — the import already emits `preserved_runtime_island` receipts (20 on this site). Nothing today distinguishes "decorative runtime island" from "the site's revenue path is now inert". A severity or capability tag ("booking", "commerce") on the receipt would let the report and any onboarding UI say "your booking calendar did not survive; here is what to do".

## Cross-references

- kdclegal run report (7 Sep 2026) and nukabaylodge run report (1 Sep 2026) in the Wix migration gap list
- Automattic/static-site-importer#706 (Woo cart/checkout materialization; the Stores sibling of this question)
- #25 (early Wix testing feedback)

Contributor guide

Open the contributing guide

Research direction

Start with the `studio create --from` import described here, DLA PR #119 at `e7926f7`, and the Wix migration gap-list reports for kdclegal.com and nukabaylodge.com. Compare the related static-site-importer#706 and issue #25 discussions; done means a product direction for Wix app surfaces is chosen and its scope is documented.

Written by the indexing model from the issue text.

Assessment

Domain
tooling, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.