Final polish for the onboarding epic: an end-to-end test of the flow plus the docs/strings
cleanup the earlier tickets defer. Per-unit tests live in their own tickets (#28, #29);
this ticket covers the cross-screen E2E path and documentation.
Scope
Instrumented onboarding E2E test: fresh install (no accounts) -> welcome -> picker ->
add an account (GreenMail-backed IMAP/SMTP for the app-password/manual path) ->
"add another?" -> land on the first account's inbox.
Register the test in the E2E matrix. Keep the Gradle Managed Devices list in app/build.gradle.kts in lockstep with the E2E matrix in .github/workflows/ci.yml
(per CLAUDE.md).
README reconciliation: the "Gmail account setup (OAuth client)" section and the
"no stored passwords for Gmail" claim now conflict with onboarding's app-password
approach (see #9 decision log). Update the README to describe Gmail/Yahoo/iCloud as
app-password vendors in onboarding, and note the app-password prerequisites
(e.g. Gmail requires 2-Step Verification).
strings.xml audit for all new onboarding copy; confirm every new source file starts
with the // SPDX-License-Identifier: GPL-3.0-or-later header.
Run the fast CI gate (/preflight: assembleDebug + testDebugUnitTest + lintDebug).
Acceptance criteria
The onboarding E2E test passes on the managed-device matrix in CI.
README no longer contradicts the shipped Gmail auth behavior.
ktlint/detekt/lint clean; all new files SPDX-headed.
Relevant files
app/src/androidTest/kotlin/org/libremail/ui/... (new E2E test)
Part of #9.
## Context
Final polish for the onboarding epic: an end-to-end test of the flow plus the docs/strings
cleanup the earlier tickets defer. Per-unit tests live in their own tickets (#28, #29);
this ticket covers the cross-screen E2E path and documentation.
## Scope
- [ ] Instrumented onboarding E2E test: fresh install (no accounts) -> welcome -> picker ->
add an account (GreenMail-backed IMAP/SMTP for the app-password/manual path) ->
"add another?" -> land on the first account's inbox.
- [ ] Register the test in the E2E matrix. Keep the Gradle Managed Devices list in
`app/build.gradle.kts` in lockstep with the E2E matrix in `.github/workflows/ci.yml`
(per CLAUDE.md).
- [ ] **README reconciliation:** the "Gmail account setup (OAuth client)" section and the
"no stored passwords for Gmail" claim now conflict with onboarding's app-password
approach (see #9 decision log). Update the README to describe Gmail/Yahoo/iCloud as
app-password vendors in onboarding, and note the app-password prerequisites
(e.g. Gmail requires 2-Step Verification).
- [ ] `strings.xml` audit for all new onboarding copy; confirm every new source file starts
with the `// SPDX-License-Identifier: GPL-3.0-or-later` header.
- [ ] Run the fast CI gate (`/preflight`: assembleDebug + testDebugUnitTest + lintDebug).
## Acceptance criteria
- The onboarding E2E test passes on the managed-device matrix in CI.
- README no longer contradicts the shipped Gmail auth behavior.
- ktlint/detekt/lint clean; all new files SPDX-headed.
## Relevant files
- `app/src/androidTest/kotlin/org/libremail/ui/...` (new E2E test)
- `app/build.gradle.kts`, `.github/workflows/ci.yml` (managed devices <-> E2E matrix)
- `README.md`, `app/src/main/res/values/strings.xml`
## Dependencies
Depends on #26-#30 being in place.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Part of #9.
Context
Final polish for the onboarding epic: an end-to-end test of the flow plus the docs/strings
cleanup the earlier tickets defer. Per-unit tests live in their own tickets (#28, #29);
this ticket covers the cross-screen E2E path and documentation.
Scope
add an account (GreenMail-backed IMAP/SMTP for the app-password/manual path) ->
"add another?" -> land on the first account's inbox.
app/build.gradle.ktsin lockstep with the E2E matrix in.github/workflows/ci.yml(per CLAUDE.md).
"no stored passwords for Gmail" claim now conflict with onboarding's app-password
approach (see #9 decision log). Update the README to describe Gmail/Yahoo/iCloud as
app-password vendors in onboarding, and note the app-password prerequisites
(e.g. Gmail requires 2-Step Verification).
strings.xmlaudit for all new onboarding copy; confirm every new source file startswith the
// SPDX-License-Identifier: GPL-3.0-or-laterheader./preflight: assembleDebug + testDebugUnitTest + lintDebug).Acceptance criteria
Relevant files
app/src/androidTest/kotlin/org/libremail/ui/...(new E2E test)app/build.gradle.kts,.github/workflows/ci.yml(managed devices <-> E2E matrix)README.md,app/src/main/res/values/strings.xmlDependencies
Depends on #26-#30 being in place.