uttrflow / uttrflow/uttrflow-swift
Sign-in says "you agree to the Terms of Use and the Privacy Policy" but neither is a link, here or anywhere in the app
- Dominant language
- Swift
- Stars
- 4
- Forks
- 17
- Avg merge
- 3h 32m
- Merged PRs (30d)
- 277
Description
## What happens
The sign-in page in onboarding ends with:
> By continuing you agree to the Terms of Use and the Privacy Policy.
(`Sources/UttrflowUX/OnboardingPresenter.swift:53`). It is drawn as plain `Text` (`Sources/Uttrflow/Onboarding/OnboardingView.swift:136-142`); neither document is a link, and nothing in `Sources` holds an address for either (a search for "terms", "privacy policy" and site URLs in `Sources/Uttrflow`, `Sources/UttrflowUX` and `Sources/UttrflowAccount` finds none). The Account page and Settings → Privacy do not link them either.
"Continue on this Mac", which creates no account, sits on the same page under the same sentence.
## Why it matters
A person is told they are agreeing to two documents they have no way to open from the app. That undermines the privacy promises the rest of onboarding makes, and it is the kind of thing a careful user (or an organisation's IT reviewer) checks first. It is also unclear whether "Continue on this Mac" is covered by the same terms.
## How to reproduce
Open onboarding to the sign-in page and try to click "Terms of Use" or "Privacy Policy".
## Acceptance criteria
Product input needed (hence `needs-info`): the published addresses of both documents, and whether they apply to local use without an account.
Then:
- Both names are links that open in the user's browser (onboarding already opens the browser for sign-in through `openBrowser`).
- The sentence says which choice it applies to if the answer above differs between signing in and "Continue on this Mac".
- The same two links are reachable after onboarding, from the Account page or Settings → Privacy.
- VoiceOver reads each link as a link.
- `Tests/UttrflowUXTests/OnboardingPresenterTests.swift` covers the fineprint carrying both destinations (as data on `OnboardingPage`, not only in the view).
Contributor guide
Research direction
First resolve the product input for the published Terms of Use and Privacy Policy addresses and whether they apply to local use. Read Sources/UttrflowUX/OnboardingPresenter.swift:53 and Sources/Uttrflow/Onboarding/OnboardingView.swift:136-142, then inspect the Account and Settings → Privacy destinations. Use Tests/UttrflowUXTests/OnboardingPresenterTests.swift to verify both destinations are carried as OnboardingPage data; done means links work in onboarding and after onboarding, with correct choice-specific wording and VoiceOver link announcements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- accessibility, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 55/100