* main: (107 commits)
Document the new sign in method
Replace handle_ naming
Use same constant for fake magic links
Replace FakeMagicLink with a temporary object
Tidy up session_token
Clean up interfaces
Split tests by controller or responsibility
Simplify auth logic
Fix due to unit test when creating with invalid emails
Restore sessions_controller test on creating invalid email address
Move magic link api tests to their own files
Rename test to clarify what they're about
Cleanup session creation
Update to always return a pending auth token for JSON responses.
Update API test for cross code
Change test expectation on single tenant mode account creation
Add unit tests for the new endpoints
Pass a server token when creating a magic link via API
Simplify code a bit
Simplify session create logic for both html and json
...
We had a call about this. In short, we could reuse access tokens but then the user would see access tokens for every mobile device they have without any indication as to what is going on. So, since this really is just logging in instead of an integration which seems to be the primary purpose of access tokens, we can just use our regular session cookie for authentication.
As the tests for it could lead to confusion where it seems drafted cards
are not accessible to someone with access to the board and with the
direct drafted card URL.
Replace duplicate .count calls with cached variables using .size method.
This reduces database queries by approximately 50% on mobile board views.
Changes:
- Cache card counts in local variables (postponed, awaiting_triage, closed, active)
- Use .size instead of .count (more intelligent - leverages preload when available)
- Reuse cached values instead of making duplicate SQL queries
Impact:
- Mobile columns view: reduced from ~6 to ~3 COUNT queries
- Better performance with no visual changes to the UI
* mobile-app/scoped-styles:
Replace android and ios css layers with platform layer
Change how show-on-native works
Use the correct css layers for Android and iOS