The user_apps check was silently failing because sqlx::query_scalar without an explicit type annotation would hit a runtime decoding error, which .unwrap_or(None) swallowed — always returning None → 403. All three DB calls in check_push_access now use match + tracing::error! so failures are visible in logs instead of looking like a missing grant. https://claude.ai/code/session_01FKCW3FDjNFj6jve4niMFXH |
||
|---|---|---|
| .. | ||
| routes | ||
| auth.rs | ||
| builder.rs | ||
| db.rs | ||
| main.rs | ||
| models.rs | ||