Files
2026-10-31 19:23:46 +02:00

64 lines
3.7 KiB
Markdown

---
id: 24-10
title: 24-10 Redesign Integration Verification
status: Done
date: 2026-10-31
parent: 24
---
## Description
Verify the finished redesign as a whole before it is offered for deployment, and fix any defect
found within the files touched by tasks 24-1 to 24-9. This task adds no feature. Build the assets
(`npm run build`) first so the pages are not rendered from stale CSS.
Check, on the local site (`https://libra.test` via Valet, or `php artisan serve`), with at least
three published posts in the database and working hours configured so slots exist:
1. **Pages** — `/`, `/about`, `/posts`, one `/posts/{post}`, `/booking`, `/booking/success`,
`/page/terms`, `/page/privacy`, `/login`, `/forgot-password`: each in Arabic (RTL) and English
(LTR), each at 1440, 768 and 390px wide.
2. **Booking end-to-end** — one guest booking from the home card and one from `/booking`, each
reaching `/booking/success` and each appearing in the admin's pending bookings
(`/admin/bookings/pending`).
3. **Unchanged areas** — `/admin/dashboard`, `/admin/bookings/pending`, `/admin/posts`,
`/client/dashboard`, `/client/consultations/book`, `/forms/nablus-workshop`.
4. **Motion** — load `/` with and without `prefers-reduced-motion: reduce` emulated.
5. **Navigation** — move between public pages with the navigation links (`wire:navigate`) and back
to `/`.
Fix defects in the redesign's own files only: `resources/css/public.css`, `resources/js/public.js`,
`resources/js/site/*.js`, `resources/views/components/site/*.blade.php`,
`resources/views/components/navigation.blade.php`, `resources/views/components/footer.blade.php`,
`resources/views/components/layouts/public.blade.php`,
`resources/views/components/layouts/auth/*.blade.php`, `resources/views/partials/site-fonts.blade.php`,
`resources/views/livewire/pages/home.blade.php`, `about.blade.php`, `booking.blade.php`,
`booking-success.blade.php`, `posts/index.blade.php`, `posts/show.blade.php`,
`resources/views/livewire/availability-calendar.blade.php`, `resources/views/pages/legal.blade.php`,
`terms.blade.php`, `privacy.blade.php`, `lang/ar/site.php`, `lang/en/site.php`.
## Acceptance Criteria
- [ ] Every page in item 1, in both languages and at all three widths, has no horizontal scroll
(`document.documentElement.scrollWidth <= innerWidth`), no console error, and no missing
translation key (no raw `site.` or `home.` key text visible).
- [ ] Each page in item 1 has exactly one `<h1>`, every `<img>` has a non-empty `alt`, and every
interactive element in the navigation, footer and booking card is reachable by Tab with a
visible gold focus ring.
- [ ] Both bookings in item 2 succeed and appear in `/admin/bookings/pending`.
- [ ] The pages in item 3 contain no `public.css`, `public.js`, `class="site` or `site-auth`, and
`git diff BASE -- resources/css/app.css resources/views/livewire/admin resources/views/livewire/client resources/views/components/layouts/app.blade.php resources/views/components/layouts/app resources/views/livewire/pages/forms`
(BASE = the commit recorded before task 24-1) is empty.
- [ ] With reduced motion emulated, all `[data-reveal]` content is visible on load and every
balance is level; without it, the hero balance settles and the finale levels on scroll.
- [ ] After five `wire:navigate` hops ending on `/`, the hero balance and reveal still work and the
finale still levels.
- [ ] Contrast: body text on cream, `--gold-lt` text on forest, and the gold button text meet
WCAG AA (4.5:1 for body text, 3:1 for large text) — measured, values noted in the task's QA
record.
- [ ] No page contains the text "Unsplash" or "mockup".
## Sub-tasks
None.