Skip to content

Separate product-neutral responsive layout companions - #1191

Merged
chubes4 merged 7 commits into
trunkfrom
fix/1143-responsive-layout-contract
Aug 25, 2026
Merged

Separate product-neutral responsive layout companions#1191
chubes4 merged 7 commits into
trunkfrom
fix/1143-responsive-layout-contract

Conversation

@chubes4

@chubes4 chubes4 commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Summary

  • emit a dedicated responsive-layout companion block instead of overloading responsive-media with kind: layout
  • move the WordPress companion payload and renderer capabilities into the producer-owned blocks-engine/* namespace
  • keep responsive-media rendering narrow while bounding and sanitizing static layout capture
  • remove executable contract knowledge of Static Site Importer from Blocks Engine

Closes #1143

Consumer: Automattic/static-site-importer#1301

Verification

  • composer test in php-transformer
  • 287 parity fixtures
  • package-install proof
  • composer validate --strict
  • git diff --check

AI assistance

OpenCode with OpenAI gpt-5.6-sol traced the producer/consumer ownership leak, separated responsive layout from responsive media, migrated contracts to producer-owned identifiers, and ran the full PHP Transformer suite. Chris Huber directed the architecture and remains responsible for the change.

@aagam-shah

Copy link
Copy Markdown

Ran this branch (ae9716ef) with Automattic/static-site-importer#1301 on a real 28-page Wix store artifact. The captured content is no longer swallowed, but the plan is stopped by two policy gates before any page renders:

  • editability policy (enforcement: required): max_nesting_depth 26 vs maximum 20 on 10 pages (36 failures) — Wix wraps <main> in 21+ divs;
  • SSI quality gate: 2 interactive_form fallbacks for the contact form (provider_materializable_form).

The composed plan holds 2 custom/responsive-layout, 54 custom/responsive-media, 1,614 custom/layout-shell, and 58 core/html blocks. Shared plan grew from 39 MB on trunk to 231 MB here; compile_pages went from 427 s to 728 s (overlapping runs, so treat timings as rough).

Full numbers and the trunk comparison: Automattic/static-site-importer#1301 (comment)

AI assistance: Claude Code (Claude Fable 5) ran the comparison and drafted this comment. Aagam Shah directed the work and is responsible for it.

@chubes4
chubes4 merged commit 3b014fd into trunk Aug 25, 2026
10 checks passed
@chubes4
chubes4 deleted the fix/1143-responsive-layout-contract branch August 25, 2026 13:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Render typed responsive layout boundaries instead of dropping them

2 participants