# 2026-07-01 OpenMouse right-edge regression

## Debug report

- Symptom: After adding multi-display arrangement support, crossing from this Mac to the other Mac through the right edge stopped working. The app sometimes said it was controlling the peer, but the mouse did not appear remotely.
- Root cause: The live app was still using a build that multiplied Electron display bounds by `scaleFactor`. `robot.getMousePos()` reports logical coordinates on this Mac, so Display 1 was logged as `3024x1964` while the pointer maxed out around `1511x982`. Left/top edges still fired because zero stayed zero, but the right edge was unreachable.
- Secondary issue: Coordinate frames could arrive over UDP before `control:start`, producing `REMOTE_INPUT_IGNORED coord ... without active control session`.
- Fix: Keep display bounds in logical coordinate space, send coord frames over TCP before UDP fallback, advertise peer Accessibility status, and block/show a clear status if either side lacks Accessibility permission.
- Evidence: The old logs showed `bounds=0,0,3024x1964` with pointer positions around `1511,982`. The fixed installed app matches the packaged app hash and starts with `ACCESSIBILITY trusted` after macOS permission was re-granted.
- Verification: `node --check app.js`, `node --check app-ui/renderer.js`, `npm run package:mac`, ad-hoc codesign verify for `dist/OpenMouse-darwin-arm64/OpenMouse.app` and `/Applications/OpenMouse.app`, and signed zip creation/verification all passed.
- Status: DONE_WITH_CONCERNS. The fixed build is installed locally, but the two-Mac physical crossing still needs a live right-edge attempt after the permission restart.
