Add side-by-side review flow for selected Page changes before publishing
Summary Add a “Review selected changes” flow for non-conflicted Page changes so editors can compare the published version against the current autosave before publishing. This should reuse the existing side-by-side comparison UI used by conflict resolution, but must not change conflict detection or conflict resolution behavior. Problem Currently, side-by-side comparison is mainly available during conflict resolution. Editors also need a way to review selected Page changes when there are no conflicts, especially to compare autosaved changes against the published version before publishing. Requirements - Add a review flow for selected non-conflicted Page changes. - Reuse the existing side-by-side comparison UI where possible. - Keep conflict detection and conflict resolution logic unchanged. - Support Visual and Text comparison views for Page entities. - Do not show conflict-specific route/component names for shared preview behavior. - Selecting the old/published version should discard the pending autosave. - Selecting the new/autosave version should keep the change selected for publishing. - After all selected changes are reviewed, show an “All files reviewed” state with a publish action. - The preview route should use a common name, e.g. /version-preview/..., not /conflict-preview/.... Expected UX From the publish review dropdown: 1. User selects one or more Page changes. 2. User clicks “Review selected changes”. 3. User is taken to a side-by-side review screen. 4. User can compare: - Old version / published version - New version / autosave version 5. User can select: - Old version: discard pending changes - New version: publish selected changes 6. User can move through selected changes using Previous / Next. 7. When all files are reviewed, user can publish selected changes. Acceptance Criteria - “Review selected changes” opens a review route for selected Page changes. - The review screen uses reusable shared comparison components. - Conflict resolution behavior remains unchanged. - Conflict-specific naming is not used for shared comparison/preview code. - Open-preview icon appears only where appropriate. - Storybook coverage exists for the review panel states. - Unit tests cover review selection behavior. - Playwright e2e coverage exists for reviewing, discarding, and publishing selected Page changes. Testing Notes Expected test coverage should include: - TypeScript type-check. - Unit tests for: - review page behavior - version selection - publish/discard actions - comparison UI controls - Storybook build. - Playwright e2e flow: - select Page changes - open review flow - compare old/new versions - discard old/published selection - publish remaining selected autosave changes
issue