EN 301 549 · source-fix procurement posture
EN 301 549, signed at the pull request — not at the spreadsheet.
Public-sector procurement asks for clause-by-clause conformance evidence. The source-fix pull request is the answer — the diff the Sigil scanner files on every deploy is the audit-grade artifact a municipality, ministry, or public-sector buyer can sign against under the European Accessibility Act (Directive (EU) 2019/882) and the EN 301 549 V3.2.1 (2021) harmonised standard invoked by it.
Procurement-frame panel
Three procurement-pressure points shape the answer.
Public-sector procurement reads accessibility differently from private-sector review. The legible line — the line a municipality, ministry, or public-sector buyer actually signs against — is the source-fix pull request, mapped clause by clause to EN 301 549 and the questionnaire item.
- EN 301 549 baseline
Public-sector procurement asks for clause-by-clause conformance evidence. EN 301 549 V3.2.1 (2021) — the harmonised standard invoked by the EAA — sets the line; the source-fix pull request is the per-clause artifact a buyer signs against.
- European Accessibility Act
Directive (EU) 2019/882 applies the EAA to most relevant products and services in scope. Web and ICT sit behind the EN 301 549 §9.4 (content) and §11.x (two-way voice) mappings; applicability and effective dates vary per member-state.
- Supplier questionnaire burden
Self-attestation under a procurement questionnaire is the buyer’s first reading position. The audit-grade artifact behind it is the source-fix pull request — signed in CI, signed in the diff, signed at the deploy.
EN 301 549 + EAA references
First-class citations a procurement reader recognises in seconds.
EN 301 549 (V3.2.1, 2021)
Harmonised standard invoked by Directive (EU) 2019/882 for ICT products and services.
European Accessibility Act — Directive (EU) 2019/882
Establishes accessibility requirements for products and services placed on the EU market.
WCAG 2.2 conformance
Referenced through EN 301 549 §9.4 (web content) and §11.x (ICT with two-way voice).
Worked remediation example
One public-facing form, six WCAG 2.2 + EN 301 549 citations.
Below is a static, gov.uk-pattern accessible form (page H1 as the question, fieldset + legend for grouped inputs, hint wired through aria-describedby, error summary above the H1). The conformance map beside it is the trace a public-sector buyer reads when auditing a procurement questionnaire response.
Why this matters to procurement
The answered questionnaire line, end to end.
Each row below is the procurement question a public-sector buyer is asking, paired with where in the worked example the source-fix evidence lives. The audit-grade artifact behind the answer is the pull request — file the same diff Sigil files in your own repository on every deploy, and the questionnaire row writes itself.
- Q: Where in the repo is the evidence that grouped radio inputs are programmatically grouped with a legend that matches the question?
- A: src/lib/contracts/public-sector.ts — field id has-previous-permit (radiogroup) cites WCAG 2.2 SC 1.3.1, SC 2.4.6, SC 4.1.2 at EN 301 549 §9.4.1.1 and §9.4.1.3.
- Q: Where in the repo is the evidence that form inputs are programmatically labelled and hint text is wired to the input it describes?
- A: src/lib/contracts/public-sector.ts — field id full-name (text) cites WCAG 2.2 SC 1.3.1, SC 1.4.3, SC 2.4.6, SC 3.3.2 at EN 301 549 §9.4.1.1, §9.4.1.3, §9.4.1.4.
- Q: Where in the repo is the evidence that errors are surfaced in an error-summary pattern matching the GOV.UK / gov.uk design-system?
- A: src/app/(custom)/public-sector/_components/accessible-form-island.tsx — error summary sits above the H1 with one inline link to the offending field, gov.uk-pattern shape.
Procurement walkthrough
Bring a signed pull request to the procurement meeting.
The public-sector buyer is reading a questionnaire written against EN 301 549 V3.2.1 (2021) and the European Accessibility Act (Directive (EU) 2019/882). The audit-grade artifact that answers those rows is the source-fix pull request — the diff a Sigil pilot files against your own repository on every deploy, mapped clause-by-clause to the questionnaire line.