Opens the channel for mobile. The endpoints as built rather than as specced, both
deviations with the reasoning, and the parts that need no app build at all.
The two that matter: device registration moved to /api/sendoff/devices, because
/api/devices collided with the push-token registry and those are different
populations; and toUser is an account id rather than a username, because
users.name is nullable and a username is not a reliable address.
Both are cheap to change here and expensive to guess at, which the note says.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>