docs: reconciliar OpenSpec e escopo do MVP (MAN-124) (#50)

This commit is contained in:
2026-08-11 12:05:00 -03:00
committed by GitHub
parent f8765add85
commit 213d6843e7
29 changed files with 359 additions and 28 deletions

View File

@@ -0,0 +1,51 @@
## MODIFIED Requirements
### Requirement: Public routes have no critical or serious accessibility issues
The system SHALL run automated accessibility checks on the public routes covered by the browser suite (SPEC §6.5, §13.8) after the Heritage Editorial motion enhancement. A critical or serious issue MUST fail the suite.
#### Scenario: Critical issue blocks the suite
- **WHEN** the automated accessibility check reports a critical or serious issue on a covered route
- **THEN** the browser suite MUST fail and report the offending rule and selector
#### Scenario: Covered routes are checked
- **WHEN** the accessibility suite runs
- **THEN** home, services listing, portfolio listing, case detail, about, contact, privacy and branded 404 MUST each be checked
### Requirement: Reduced motion preference is honored
The system SHALL suppress non-essential animation and transition when the user agent reports `prefers-reduced-motion: reduce`, including page openings, editorial reveals, image hover scales, interaction feedback and menu transitions. All affected content MUST render in its final visible and interactive state.
#### Scenario: Reduced motion disables transitions
- **GIVEN** the browser reports `prefers-reduced-motion: reduce`
- **WHEN** a public page is loaded
- **THEN** decorative transitions and animations MUST NOT run
- **AND** every motion target MUST be in its final visible and interactive state
### Requirement: Public pages emit no console errors
Covered public routes SHALL load without JavaScript console errors in a real browser (SPEC §13.8, §19), including home, services listing, portfolio listing, case detail, about, contact, privacy, branded 404, and pages that load the mobile navigation or motion runtime.
#### Scenario: Console stays clean on covered routes
- **WHEN** a covered public route is loaded in the browser suite
- **THEN** the console MUST contain no error-level messages
## ADDED Requirements
### Requirement: Motion enhancement failure does not hide or disable content
The public site SHALL remain readable, keyboard-operable, and interactive when JavaScript is disabled or `IntersectionObserver` is unavailable. Motion targets MUST default to their final state without relying on timeout recovery.
#### Scenario: JavaScript disabled keeps public page usable
- **WHEN** a visitor loads a public page with JavaScript disabled
- **THEN** headings, copy, navigation, CTAs, and form controls MUST be visible and operable
#### Scenario: Observer unavailable keeps reveals final
- **WHEN** the motion runtime executes without `IntersectionObserver`
- **THEN** reveal targets MUST remain in the final state