Spaces:
Sleeping
Sleeping
Commit History
-
fix(app): 503 on storage failures, validated currency, lock release on shutdown, per-IP login limit, unit-only npm test
Storage failures now surface as a 503 with a retry message instead of a bare 500: `guarded()` wraps every form action, passing redirects/HttpErrors/ActionFailures through and mapping anything else (including ReadOnlyError) to a 503 rendered by the new +error.svelte. - config: CURRENCY must be a 3-letter uppercase ISO 4217 code; reuse the validated session secret and compaction interval instead of recomputing them - app: release the writer lock on sveltekit:shutdown, with SIGTERM/SIGINT fallback - login: per-IP limiter (20/min) ahead of the per-username one; scrypt wait queue capped at 64 so a login flood is shed as a 503 rather than parked - npm test now runs unit tests only; integration tests move to vitest.integration.config.ts so the default run never touches the real bucket - nosniff/Referrer-Policy on every response, spelling fixes, drop unused splitParticipants, .git in .dockerignore, README env notese830ad4 -
fix(auth): bound scrypt params, cap concurrency, evict rate-limit keys, re-bootstrap admin
1c7b998 -
feat(users): add UsersRepo with admin bootstrap and password management
1cf4d4c