OKF-DWP

Independent experimental publication. Not an official DWP service, benefits advice or an entitlement calculator.

View this version’s Markdown source

On this page

Learning-page browser regressions

Learning path · Source review and compact delivery

What the public check found

The learning site published from 548557f2cd176d27cda8c2c916394436592ecc75 matched all 377 expected public requests. Its three retained evidence examples passed their separate browser checks. Those results did not mean that every learning-page interaction passed.

Two failures remained visible in the subsequent browser check:

The failing observations remain retained. These are presentation defects; neither changes source evidence or establishes legal answerability.

The bounded repair

The focused skip link stays positioned outside normal page layout, visibly over the header. Keyboard activation still moves to the main content, and switching from keyboard focus to a pointer click no longer moves the navigation.

The renderer converts only its supported left, centre and right table alignments into classes defined in the external stylesheet. Unexpected or combined style declarations stop the build. Raw source HTML remains inert and the existing restrictive CSP is unchanged. The parser and CSS spelling center is retained as an upstream technical identifier.

Reproduce the checks

The regular isolated renderer tests are included in CI:

uv sync --locked --project tools/learning-site
uv run --locked --project tools/learning-site python -m unittest discover -s tools/learning-site -p test_learning_site.py

The separate browser regression accepts a freshly generated learning site, an already installed Playwright module and a fresh output directory:

uv run --locked --project tools/learning-site python scripts/build_learning_site.py \
  --commit "$(git rev-parse HEAD)" --output /tmp/okf-learning-regression-site
node tools/learning-site/check_browser_regressions.mjs \
  /tmp/okf-learning-regression-site /absolute/path/to/playwright/index.mjs \
  /tmp/okf-learning-regression-observation

Use new output directories for each run. The harness uses installed Chrome and fulfils every browser request locally from four rendered files; it neither fetches source material nor verifies a live deployment. Its receipt binds the input and executed harness hashes and retains failures.

At both desktop and mobile widths it checks the mixed keyboard-to-pointer sequence, keyboard skip activation, keyboard navigation, actual table alignment, no horizontal overflow and an unchanged CSP. Console errors or warnings fail the check. This is a focused regression, not exhaustive accessibility acceptance.

Local verification recorded 26 passing renderer tests and eight passing browser checks. The original rendered site failed the layout check; a separate negative control with the fixed stylesheet and original table HTML failed on 16 inline styles and CSP errors. Public acceptance still requires a fresh exact-commit Pages publication and browser observation after integration.