Skip to content

Test debt: Pagefind search-input a11y violation breaks axe scans #86

@a6b8

Description

@a6b8

Pre-existing test debt — not caused by Memo 060.

The Pagefind library renders a search input without a visible label:
```html
<input class="pagefind-ui__search-input" type="text" placeholder="Search" title="Search" ...>
```

Axe-core flags this as `label-title-only` (serious impact): "Only title used to generate label for form element."

Affected tests (all in tests/a11y/):

  • mobile-menu.a11y.spec.mjs (3 tests)
  • not-found.a11y.spec.mjs (1 test)
  • search-modal.a11y.spec.mjs (4 tests)

Total: 8 tests fail on chromium-desktop, 8 more on mobile-safari = 16 failures.

Options:

  1. Wrap Pagefind input with <label> in our search modal integration
  2. Exclude .pagefind-ui__search-input from axe scan (lossy but pragmatic)
  3. Patch Pagefind upstream (not realistic)

Recommendation: Option 1 for the modal-open scan, Option 2 for the page-level scans.

Surfaced during Memo 060 Phase 9 CI verification. Not blocking the rollout — the search input is functional, just a11y-imperfect.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions