Files
2608_BuB/docs/verification.md
T
André Fiedler 8d1e6742bf
showcase/deploy Live at https://showcase.andrefiedler.de/2608_BuB/
Add styled legal dialogs with unchanged supplied content
2026-09-10 11:35:39 +02:00

6.3 KiB
Raw Blame History

Verification

Local checks on 2026-09-07:

  • Compared the rendered page against the supplied PDF at 1200 × 900, retaining artwork positions and correcting body text baselines. Inspected 1800 px desktop and 320, 390 and 768 px mobile/tablet screenshots.
  • Browser checks at 320, 390, 600, 768, 1024, 1200 and 1800 px: document width equals viewport width; all images load.
  • No failed or third-party resource requests in the completed page.
  • Clipboard action copies exactly DE04870958245044385904 and announces success through the live status region.
  • Keyboard navigation begins with the visible-on-focus skip link.
  • With JavaScript disabled, the page content and seven native links remain available without overflow at 390 px.
  • macOS Vision decodes the optimized PayPal QR as the original managed PayPal QR URL: https://www.paypal.com/qrcodes/managed/d49af904-76e1-4181-9e35-064be97b4f66?utm_source=payandgetpaid.
  • Syntax checks pass for both .mjs files. Local asset references, unique IDs, fragment links, JSON-LD, sitemap XML, manifest icons and production-file exclusions pass.
  • npm run build produces an approximately 807 kB static artifact, including social-preview and icon assets that are not requested during normal page rendering.

Deployment checks on 2026-09-07:

  • The showcase/deploy status succeeded for the initial publication on main.
  • The exact HTTPS route https://showcase.andrefiedler.de/2608_BuB/ returns HTTP 200.
  • All 22 public files match the local build byte for byte, including JavaScript modules, fonts, favicon assets, sitemap and manifest.
  • Design originals, preparation scripts, Git configuration and Finder metadata return HTTP 404 on the deployed site.
  • The build excludes hidden files in asset directories.
  • The live page at 390 px loads all images and local fonts, has no horizontal overflow, no console errors or warnings, and no requests to other origins.
  • The repository page and API load without authentication. Anonymous Git access returns the same main revision as the local checkout.
  • The server-wide inventory contains 13 repositories. Only showcase/2608_BuB appears in anonymous repository search; all 12 other repositories are private and reject anonymous API and Git access.

For each published revision, check the showcase/deploy status on its Gitea commit and compare the served files with dist.

Desktop band follow-up on 2026-09-07:

  • The desktop backdrop containing the original band uses fixed positioning above 1024 px. At 1024 px and below, the backdrop and separate band use absolute positioning and scroll normally.
  • Real scrolling at 1200, 1025, 1024 and 390 px confirms the appropriate positioning and no horizontal overflow. Screenshot comparisons of the decorative area remain identical after scrolling on desktop and change on mobile.
  • Inspected the initial and scrolled desktop screenshots against the previously deployed composition; layout and artwork placement are retained.
  • A foreground mask keeps the opaque desktop tape above scrolling content. At 1200 px, a tape region previously covered by text stays pixel-identical before and after scrolling; the foreground does not intercept pointer events. Checks at 1025, 1024 and 390 px confirm the breakpoint and mobile scrolling behavior, with no horizontal overflow.
  • The mask also includes the soft shadow. At 1200 px with 90 px of scrolling, 260 previously white logo pixels receive visible shading; differences are confined to the logo passing under the shadow. The initial desktop screenshot remains pixel-identical, confirming the background shadow is not doubled.

Mobile touch follow-up on 2026-09-07:

  • The reported blocked scrolling was not reproduced with touch events in current desktop Chrome's mobile simulation or native swipes in Android 14 with Chrome 113. The user's physical phone was not available; the user subsequently suspected their browser had hung.
  • Simplified mobile decoration to normal body backgrounds and removed its pseudo-elements and isolated stacking context as a compatibility measure. Native Android swipes reach the bottom of the updated page (scroll position 538.18 px, viewport 760 px, document 1298 px).
  • Updated desktop (1200 px) and mobile (390 px) scrolled screenshots are pixel-identical to the previous rendering. Checks at 1025 and 1024 px retain the desktop/mobile breakpoint and show no horizontal overflow.

Mobile shadow and heading follow-up on 2026-09-07:

  • Added each strip's shadow to the separate mobile tape SVG. At 390 px, initial screenshot differences are confined to the tape and shadow area (the top 146 px); content positions are unchanged. The 1200 px desktop screenshot remains pixel-identical.
  • At 390 px, the Kontodaten heading's text center is 194.99 px against the viewport center of 195 px. Desktop keeps its original alignment. No horizontal overflow is present.
  • The complete bank section is now centered on narrow mobile layouts: account holder, bank name, and each IBAN/BIC label-value row. Text centers match the viewport center at 320, 390 and 600 px, with no horizontal overflow. Checks at 601 and 1200 px retain the original alignment.

Legal dialogs on 2026-09-10:

  • Retained both supplied PDFs byte for byte under design/legal/. scripts/verify-legal-content.py confirms that the complete embedded Impressum (712 characters) and Datenschutz (19,921 characters) HTML match their PDF form fields, allowing only line endings, indentation, and accessible title attributes.
  • Built with npm run build; module syntax and git diff --check pass. No runtime dependencies or third-party resource requests were added.
  • Inspected both dialogs at 1200, 390 and 320 px, including the final paragraphs. The complete text scrolls to the bottom, the close control remains visible, and neither the document nor reading area overflows horizontally. The popup also fits an 844 × 390 landscape viewport.
  • Close links, Escape, backdrop clicks, browser Back and direct fragment URLs work. Tab and Shift+Tab remain within each modal; closing restores focus to its footer link and preserves the underlying scroll position.
  • Emulated mobile touch input scrolls the Datenschutz reading area while the page remains stationary; after closing, normal page touch scrolling resumes. No JavaScript errors or external requests occurred.
  • With JavaScript disabled, both footer fragment links expose the full legal text through the CSS fallback; the close link returns to the footer.