Files
kandev/docs/plans/diagnostic-logging/task-15-custom-bundle-e2e.md
2026-08-24 11:09:03 +00:00

2.9 KiB

id, title, status, wave, depends_on, plan, spec
id title status wave depends_on plan spec
15-custom-bundle-e2e Custom bundle E2E done 12
14-bundle-customizer-ui
plan.md ../../specs/platform/requirements/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

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).