bulk commit changes!
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Hero primary action opens in-site TL;DR summary
|
||||
The homepage hero primary CTA SHALL open the in-site summary modal for the hero article instead of navigating off-site.
|
||||
|
||||
#### Scenario: Hero CTA opens summary modal
|
||||
- **WHEN** a user clicks the hero primary CTA
|
||||
- **THEN** the system opens the summary modal for the current hero article
|
||||
- **AND** no external navigation is triggered by that CTA
|
||||
|
||||
### Requirement: Hero source link remains available as secondary action
|
||||
The hero section SHALL keep an explicit secondary source-link action for external navigation.
|
||||
|
||||
#### Scenario: Source link navigates externally
|
||||
- **WHEN** a user clicks the hero source link
|
||||
- **THEN** the system opens the article source URL in a new tab
|
||||
|
||||
### Requirement: Hero metadata readability over images
|
||||
Hero metadata (`LATEST`, relative time, headline, and summary) SHALL remain visually legible across bright and dark images on desktop and mobile.
|
||||
|
||||
#### Scenario: Bright image background
|
||||
- **WHEN** the hero image contains bright regions under metadata text
|
||||
- **THEN** overlay and text styles preserve readable contrast for metadata and headline blocks
|
||||
|
||||
#### Scenario: Mobile viewport readability
|
||||
- **WHEN** the hero renders on a mobile viewport
|
||||
- **THEN** metadata and title remain readable without overlapping controls or clipping
|
||||
@@ -0,0 +1,33 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Modal width supports comfortable desktop reading
|
||||
The summary modal SHALL render with a desktop width that is approximately half of viewport width or larger when space allows, while remaining responsive on small screens.
|
||||
|
||||
#### Scenario: Desktop width expansion
|
||||
- **WHEN** the modal opens on desktop viewport widths
|
||||
- **THEN** the modal content area renders wider than the previous narrow baseline
|
||||
- **AND** text blocks are readable without excessive line wrapping
|
||||
|
||||
#### Scenario: Mobile responsiveness
|
||||
- **WHEN** the modal opens on small mobile viewport widths
|
||||
- **THEN** modal width remains fully usable without horizontal overflow
|
||||
|
||||
### Requirement: Modal height supports near-full viewport scrolling
|
||||
The summary modal SHALL use near full-height viewport behavior when content overflows.
|
||||
|
||||
#### Scenario: Overflowing summary content
|
||||
- **WHEN** summary content exceeds modal viewport height
|
||||
- **THEN** modal body remains scrollable with close controls accessible
|
||||
- **AND** modal container uses near full viewport height constraints
|
||||
|
||||
### Requirement: TL;DR loading placeholder is explicit
|
||||
The modal SHALL show a horizontal shimmer placeholder for TL;DR content while TL;DR bullets are not yet available.
|
||||
|
||||
#### Scenario: TL;DR pending state
|
||||
- **WHEN** the summary modal is open and TL;DR bullet data is pending
|
||||
- **THEN** the system displays a low-height horizontal shimmer placeholder
|
||||
|
||||
#### Scenario: TL;DR loaded state
|
||||
- **WHEN** TL;DR bullet data becomes available
|
||||
- **THEN** shimmer placeholder is removed
|
||||
- **AND** TL;DR bullet list is rendered
|
||||
@@ -0,0 +1,23 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Image query fallback uses AI-focused defaults
|
||||
When extracted image keywords are insufficient, the system SHALL use AI-focused default fallback terms.
|
||||
|
||||
#### Scenario: Empty keyword extraction
|
||||
- **WHEN** keyword extraction yields no usable topic keywords
|
||||
- **THEN** the system uses default fallback terms including AI-domain keywords (for example `ai`, `machine learning`, `deep learning`)
|
||||
|
||||
### Requirement: Generic AI image fallback is guaranteed
|
||||
If provider lookups fail to return a usable summary image, the system SHALL use a generic AI-themed fallback image.
|
||||
|
||||
#### Scenario: Provider chain failure
|
||||
- **WHEN** all configured image providers return no usable image
|
||||
- **THEN** the system assigns a generic AI fallback image URL/path for summary image
|
||||
|
||||
### Requirement: Fallback behavior remains context-aware first
|
||||
The system SHALL attempt context-aware keyword retrieval before any generic fallback image is selected.
|
||||
|
||||
#### Scenario: Context-aware attempt precedes fallback
|
||||
- **WHEN** summary image selection runs for a news item
|
||||
- **THEN** the system first attempts provider queries from extracted context-aware keywords
|
||||
- **AND** only falls back to generic AI image if these attempts fail
|
||||
Reference in New Issue
Block a user