Skip to content

Konva canvas touch interactions and narrow-viewport analysis inputs untested on real devices #11

Description

@AlaskanTuna

Limitations W-8 and A-7 are recorded as resolved, but the 26/04/26 progress entry is explicit that the fix was a "tactical sweep, not a full mobile pass" — the layout shell was made responsive and the Workbench canvas was given a min-h-[60vh] so it stops collapsing, but Konva touch handlers (pinch zoom, multi-touch rotation) and the AnalysisSidebar's 3-column PR/Losses/DC-AC inputs at very narrow widths were intentionally deferred as needing real-device testing, not viewport emulation. That deferral is the only genuinely unresolved functional gap left in docs/limitations.md and docs/uat.md — every other Open-looking row is stale bookkeeping against a shipped fix. It matters more now than it did during UAT: a LinkedIn audience opens links on phones.

Scope: frontend/src/hooks/useCanvasInteractions.ts, frontend/src/components/workbench/, frontend/src/components/analysis/AnalysisSidebar.tsx

Checklist

  • Test on at least one real iOS Safari and one real Android Chrome device against a LAN dev server — emulation is what produced the false confidence the first time
  • Exercise each canvas gesture and record pass/fail per gesture: single-panel drag, single-panel rotate, marquee multi-select, rigid-body group rotation, pinch zoom, two-finger pan
  • Check that the guided tour, the layout-preset modal, the panel-model drawer, and the chat launcher are all reachable and dismissable at 360 px width
  • Check the AnalysisSidebar 3-column PR / Losses / DC-AC input row at 360 px and fix the wrap
  • Fix only what fails; do not embark on a general mobile redesign — this is a gap-closing task, not a redesign
  • Record the findings as a new dated session in docs/uat.md with Severity and Status columns, per the project's UAT format
  • verify: every gesture in the list above has a recorded pass, or an explicit and justified Wont Fix with the reason
  • verify: pnpm test green and pnpm typecheck clean
  • verify: pnpm dlx impeccable detect <changed files> reports 0 unwaived findings

Priority: Medium · Phase 12 task 12 of the maintainer's migration plan.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2-mediumShould fix, not blockingbugSomething isn't workingmobileTouch / small-viewport behaviour

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions