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 |
||
|---|---|---|
| .. | ||
| src | ||
| Cargo.toml | ||