Skip to content

test(compiler): enforce preview render parity#2166

Merged
jrusso1020 merged 1 commit into
mainfrom
07-10_test_compiler_enforce_preview_render_parity
Jul 18, 2026
Merged

test(compiler): enforce preview render parity#2166
jrusso1020 merged 1 commit into
mainfrom
07-10_test_compiler_enforce_preview_render_parity

Conversation

@jrusso1020

@jrusso1020 jrusso1020 commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator

What

Add a normalized preview/render semantic parity corpus.

Why

Preview and render compilation had accumulated one-sided fixes in timing, bootstrap, styles, URLs, and manifests.

How

Define a neutral parity contract and run shared fixtures through core preview and producer render compilation.

Test plan

  • core html parity and producer htmlCompiler parity suites
  • Stack-wide lint, format, build, typecheck, and relevant integration gates

jrusso1020 commented Jul 10, 2026

Copy link
Copy Markdown
Collaborator Author

This stack of pull requests is managed by Graphite. Learn more about stacking.

@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch from 3e37058 to 8674f33 Compare July 13, 2026 20:27
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from d442be2 to 9cc75ad Compare July 13, 2026 20:27
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch from 8674f33 to 9149838 Compare July 13, 2026 20:33
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch 2 times, most recently from 8592418 to f532570 Compare July 13, 2026 22:09
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch 2 times, most recently from 7367bc9 to a0e9003 Compare July 13, 2026 22:18
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from f532570 to 6277174 Compare July 13, 2026 22:18
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch 2 times, most recently from ec35495 to a7cb697 Compare July 14, 2026 00:03
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch 2 times, most recently from 9625478 to f9a0051 Compare July 14, 2026 03:20
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch from a7cb697 to ec27019 Compare July 14, 2026 03:20
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from f9a0051 to f4f46f9 Compare July 14, 2026 17:03
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch from ec27019 to f2e9e31 Compare July 14, 2026 17:03
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from f4f46f9 to fe9a6a8 Compare July 14, 2026 17:11
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch 2 times, most recently from a691499 to f25e511 Compare July 14, 2026 17:35
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from 232e3c7 to de87827 Compare July 14, 2026 17:57
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch from f25e511 to 9aa0b74 Compare July 14, 2026 17:57
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from de87827 to b8e0eb9 Compare July 14, 2026 18:06
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch 2 times, most recently from 52688c3 to 58e16a2 Compare July 14, 2026 19:37
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch 2 times, most recently from 1e09810 to 7ab91ed Compare July 14, 2026 19:42
@jrusso1020
jrusso1020 force-pushed the 07-10_test_compiler_enforce_preview_render_parity branch 2 times, most recently from 37f5dda to e1e8f5b Compare July 14, 2026 19:47
@jrusso1020
jrusso1020 force-pushed the 07-10_refactor_studio_gate_sdk_operation_families branch from 7ab91ed to 8591f27 Compare July 14, 2026 19:47

@miguel-heygen miguel-heygen left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fresh exact-head review at f0956e594.

  • packages/core/src/compiler/htmlParityContract.ts:44 normalizes legacy/current timing, canonicalizes nested variable JSON, collapses embedded and project-relative assets into the same local semantic class, and keeps stable identities for compositions, timed elements, and resources.
  • packages/producer/src/services/htmlCompiler.parity.test.ts:30 runs the same authored fixtures through the actual Core preview bundler and Producer render compiler before comparing structured contracts; this is a genuine cross-pipeline assertion, not a shared snapshot.
  • packages/core/src/compiler/htmlParityContract.test.ts:4 independently pins the extractor against literal timing, track, variable, and resource expectations, reducing the risk of both pipelines passing through a broken normalizer.

I read the complete four-file diff, traced both compiler entry points, checked existing feedback and threads, verified the exact merge base, and pulled exact-head required CI. No blocker found. The existing note about adding explicit non-empty guards to each Producer fixture is a worthwhile robustness follow-up, but the pinned Core extractor tests make it non-gating here.

Verdict: APPROVE
Reasoning: The corpus compares real preview and render outputs through a neutral, independently tested semantic contract, covers the stated drift classes, and all required exact-head checks are green.

— Magi

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.

2 participants