Files
kandev/docs/plans/diagnostic-logging/task-15-custom-bundle-e2e.md
T
2026-08-02 20:14:53 +01:00

84 lines
2.9 KiB
Markdown

---
id: "15-custom-bundle-e2e"
title: "Custom bundle E2E"
status: done
wave: 12
depends_on:
- "14-bundle-customizer-ui"
plan: "plan.md"
spec: "../../specs/platform/diagnostic-logging.md"
---
# Task 15: Custom bundle E2E
## Acceptance
- Desktop E2E proves standard/custom/debug-capability states, required ACP
session selection, owner-visible candidates, strong disclosure, runtime
index fields, raw+normalized ZIP entries, and partial unavailable sessions.
- Mobile E2E completes the same source/session outcome through the inset drawer
and proves internal scrolling, viewport containment, focus/dismiss behavior,
safe-area clearance, ≥44px targets, and no document horizontal overflow.
- Tests rebuild production backend/web artifacts and inspect the downloaded ZIP
rather than asserting only button visibility.
## Verification
```bash
cd apps/web
pnpm e2e:run e2e/tests/system/logs-page.spec.ts \
e2e/tests/system/mobile-logs-bundle.spec.ts
```
## Files likely touched
- `apps/web/e2e/tests/system/logs-page.spec.ts`
- `apps/web/e2e/tests/system/mobile-logs-bundle.spec.ts`
- `apps/web/e2e/fixtures/backend.ts`
- `apps/web/e2e/helpers/api-client.ts`
- `apps/backend/internal/debug/fixture.go`
## Dependencies
- Task 14 completes the end-to-end backend/frontend behavior and selectors.
## Parallelism
Parallel-safe with Task 16 after Task 14. This task owns E2E fixtures/specs;
Task 16 owns public docs and agent skill guidance.
## Inputs
- Spec scenarios for standard disclosure, debug gating, authorization,
selected/unavailable ACP sessions, runtime index, and phone Drawer behavior.
- Plan E2E section and mobile design contract.
- Existing Logs desktop/mobile specs and production-build E2E fixtures.
## Risks
- Fixture ACP content must be synthetic and must not read a developer's real
debug directory, database, credentials, sessions, or executor data.
- ZIP assertions must verify absence of message-bearing sources in standard and
runtime-only bundles as well as presence in the explicit ACP fixture.
## Output contract
Report seeded states, downloaded artifact assertions, desktop/mobile commands
and results, screenshots/traces on failure, cleanup evidence, blockers/risks,
and synchronize this task plus `plan.md` status.
## Results
Added desktop and mobile coverage for the customizer and standard bundle
workflow. The desktop spec parses the downloaded stored ZIP, verifies
`manifest.json`, backend/frontend entries, and the requested source set, then
checks the source customizer, runtime-index option, and debug-only ACP button
boundary. The mobile spec verifies the inset Drawer, internal source surface,
44px actions, and document-width containment.
- Verification: `pnpm e2e:run e2e/tests/system/logs-page.spec.ts` (pass; 2
Chromium tests with production backend/web builds).
- Verification: `pnpm e2e:run --no-build --project mobile-chrome
e2e/tests/system/mobile-logs-bundle.spec.ts` (pass; 2 mobile tests after the
production build).