86 lines
3.5 KiB
Markdown
86 lines
3.5 KiB
Markdown
---
|
|
id: "02-advanced-settings-e2e"
|
|
title: "Verify disclosure behavior on desktop and mobile"
|
|
status: completed
|
|
wave: 2
|
|
depends_on: ["01-advanced-settings-ui"]
|
|
plan: "plan.md"
|
|
spec: "../../specs/tasks/requirements/task-dependencies-create-dialog-advanced-settings.md"
|
|
---
|
|
|
|
# Task 02: Verify disclosure behavior on desktop and mobile
|
|
|
|
Extend the existing dependency-selector browser coverage to prove the new
|
|
collapsed default, expansion path, mobile touch behavior, and unchanged task
|
|
creation payload.
|
|
|
|
## Acceptance
|
|
|
|
- Desktop E2E proves the advanced row is collapsed on first render below the
|
|
model, executor, and workflow controls, the dependency trigger is hidden
|
|
until expansion, and the selector appears after expansion.
|
|
- Desktop E2E keeps the existing selector checks for the `No dependency`
|
|
default, labeled setting help, task icons, search, info help, multiple
|
|
selection, clearing, and `blocked_by` persistence after creation. It also
|
|
verifies the two-column option grid keeps the label to the left of the selector
|
|
on the same horizontal row and makes the option narrower than the full desktop grid.
|
|
- Mobile E2E expands the section with touch input, verifies the disclosure hit
|
|
box and setting help control are at least 44 CSS pixels, verifies the label
|
|
and selector remain on the same horizontal row with the label to the selector's
|
|
left, and retains picker containment, touch
|
|
selection, help readability, and no-horizontal-overflow checks.
|
|
- The managed desktop and mobile runs pass against a fresh production build
|
|
with no stale frontend artifacts.
|
|
|
|
## Verification
|
|
|
|
```bash
|
|
cd apps
|
|
pnpm install --frozen-lockfile
|
|
cd web
|
|
pnpm e2e:run --project chromium e2e/tests/task/create-task-dependency-selector.spec.ts
|
|
pnpm e2e:run --project mobile-chrome e2e/tests/task/mobile-create-task-dependency-selector.spec.ts
|
|
```
|
|
|
|
## Files likely touched
|
|
|
|
- `apps/web/e2e/tests/task/create-task-dependency-selector.spec.ts`
|
|
- `apps/web/e2e/tests/task/mobile-create-task-dependency-selector.spec.ts`
|
|
|
|
## Dependencies and risks
|
|
|
|
Task 01. The exact disclosure test ID and final placement are outputs of the UI
|
|
implementation. If the mobile hitbox is reduced because the visual label is
|
|
small, the E2E test should catch it before the change is considered complete.
|
|
|
|
## Parallelism
|
|
|
|
`sequential` after Task 01. The E2E files are independent of backend changes,
|
|
but they depend on the final UI contract.
|
|
|
|
## Inputs
|
|
|
|
- Scenarios and mobile contract in
|
|
`docs/specs/tasks/requirements/task-dependencies-create-dialog-advanced-settings.md`
|
|
- Existing desktop coverage in
|
|
`apps/web/e2e/tests/task/create-task-dependency-selector.spec.ts`
|
|
- Existing mobile coverage in
|
|
`apps/web/e2e/tests/task/mobile-create-task-dependency-selector.spec.ts`
|
|
- Layout helpers in `apps/web/e2e/helpers/layout-assertions.ts`
|
|
|
|
## Output contract
|
|
|
|
Report the exact managed commands, pass counts, viewport and overflow results,
|
|
artifacts, blockers, and the final Task 02 and plan status.
|
|
|
|
## Results
|
|
|
|
- `pnpm e2e:run --project chromium e2e/tests/task/create-task-dependency-selector.spec.ts`
|
|
passed 1 test on a fresh production build.
|
|
- `pnpm e2e:run --project mobile-chrome e2e/tests/task/mobile-create-task-dependency-selector.spec.ts`
|
|
passed 1 test on a fresh production build. The test covered the 44 CSS pixel
|
|
disclosure hitbox, picker containment, touch selection, help readability,
|
|
and no horizontal overflow.
|
|
- No E2E artifacts or blockers remain. The runner cleaned its temporary fixture
|
|
and test-result directories after each managed run.
|