Files
pluriwave/openspec/changes/rediseno-funcional/specs/onboarding-welcome/spec.md
T

48 lines
1.6 KiB
Markdown

# Onboarding Welcome Specification
## Purpose
A first-run welcome surface in the new visual language, explicitly
monetization-free. Traceable to WU17.
## Requirements
### Requirement: Full-Screen Welcome Route
The welcome screen MUST render as a full-screen route (not a modal
dialog), containing: logo mark, headline, body copy, exactly 3 feature
bullets, and exactly one primary call-to-action ("Empezar a escuchar").
#### Scenario: All elements render, one CTA
- GIVEN the app launches for the first time
- WHEN the welcome screen renders
- THEN a logo, headline, body copy, and 3 feature bullets are visible
- AND exactly 1 primary CTA is present
### Requirement: No Monetization Content (First-Class, Binding)
The welcome screen MUST NOT render a PRO pill, any trial-duration text
(e.g. a day count), any price, or a secondary "free version" link. This
follows the binding no-monetization decision for this change.
#### Scenario: Rendered content contains no monetization strings
- GIVEN the welcome screen is rendered
- WHEN its widget tree's text content is scanned
- THEN it contains none of: the substring "PRO", a currency amount, or a day-count trial phrase
- AND no secondary "free version" link is present
### Requirement: CTA Dismisses to Escuchar
Tapping the primary CTA MUST dismiss the welcome screen and land on the
Escuchar tab (index 0), with the welcome route removed from the
navigation stack.
#### Scenario: CTA navigates to Escuchar
- GIVEN the welcome screen is showing
- WHEN the user taps "Empezar a escuchar"
- THEN the app shows the Escuchar tab
- AND the welcome route is no longer on the back stack