zeroclaw/web/src
argenis de la rosa 4e31d1dd3a
fix(pairing): add SQLite persistence, fix config defaults, align with plan
- Add SQLite persistence to DeviceRegistry (backed by rusqlite)
- Rename config fields: ttl_secs -> code_ttl_secs, max_pending -> max_pending_codes, max_attempts -> max_failed_attempts
- Update defaults: code_length 6 -> 8, ttl_secs 300 -> 3600, max_pending 10 -> 3
- Add attempts tracking to PendingPairing struct
- Add token_hash() and authenticate_and_hash() to PairingGuard
- Fix route paths: /api/pairing/submit -> /api/pair, /api/devices/{id}/rotate -> /api/devices/{id}/token/rotate
- Add QR code placeholder to Pairing.tsx
- Pass workspace_dir to DeviceRegistry constructor

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-24 15:17:29 +03:00
..
components/layout feat(web/i18n): add full Chinese locale and complete Turkish translations (#3777) 2026-03-24 15:17:26 +03:00
hooks feat(web): add pairing dashboard page 2026-03-24 15:17:29 +03:00
lib fix(web): remove duplicate dashboard keys in Turkish locale (#3812) 2026-03-24 15:17:27 +03:00
pages fix(pairing): add SQLite persistence, fix config defaults, align with plan 2026-03-24 15:17:29 +03:00
types feat(gateway): add cron run history API and dashboard panel (#3440) 2026-03-13 17:06:44 -04:00
App.tsx feat(web): add pairing dashboard page 2026-03-24 15:17:29 +03:00
index.css feat(web): electric blue dashboard restyle with animations and logo (#3445) 2026-03-13 17:27:41 -04:00
main.tsx fix(gateway): align dashboard API client and embed built web assets 2026-02-21 16:14:01 +08:00
vite-env.d.ts feat(gateway): add embedded web dashboard with React frontend 2026-02-21 16:14:01 +08:00