timmy/270-sign-in-throttle
main
Closes #270
Adds durable source-scoped sign-in throttling, trusted-proxy-aware client resolution, bounded/expiring SQLite state, and a mobile retry countdown.
Tests: pytest -q (479 passed); node --check frontend/login.js.
pytest -q
node --check frontend/login.js
No dependencies set.
The note is not visible to the blocked user.
Closes #270
Adds durable source-scoped sign-in throttling, trusted-proxy-aware client resolution, bounded/expiring SQLite state, and a mobile retry countdown.
Tests:
pytest -q(479 passed);node --check frontend/login.js.