34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
## Purpose
|
|
|
|
Canonical specification for footer-policy-links requirements synced from OpenSpec change deltas.
|
|
|
|
## Requirements
|
|
|
|
### Requirement: Footer exposes policy navigation links
|
|
The system SHALL display footer controls for Terms of Use and Attribution on the landing page and open their disclosure content in in-page modal dialogs while preserving compact sticky-footer behavior.
|
|
|
|
#### Scenario: Footer policy controls visible and focusable
|
|
- **WHEN** a user loads the main page
|
|
- **THEN** the footer includes controls labeled "Terms of Use" and "Attribution"
|
|
- **AND** controls are visually distinguishable and keyboard focusable
|
|
|
|
#### Scenario: Footer policy controls open modal disclosures
|
|
- **WHEN** a user activates either policy control
|
|
- **THEN** the system opens the corresponding policy modal
|
|
- **AND** activation succeeds without full-page navigation dependency
|
|
|
|
#### Scenario: Sticky compact footer
|
|
- **WHEN** user scrolls through content
|
|
- **THEN** footer remains sticky at viewport bottom
|
|
- **AND** footer height stays compact enough to avoid readability obstruction
|
|
|
|
#### Scenario: Floating back-to-top island
|
|
- **WHEN** page is scrolled beyond initial viewport
|
|
- **THEN** a floating back-to-top control is visible
|
|
- **AND** activating it returns viewport to top smoothly
|
|
|
|
#### Scenario: Footer includes optional GitHub and email links
|
|
- **WHEN** GitHub repository URL and/or contact email are configured
|
|
- **THEN** footer renders corresponding links without replacing policy controls
|
|
- **AND** absent values do not break footer layout
|