f550f04ce2
Unit Tests / test (push) Successful in 15m29s
DDNS registration (setup_cell.py): - Replace pyotp dependency with stdlib TOTP (HMAC-SHA1, RFC 6238) pyotp is only available inside the Docker container, not on the host where setup_cell.py runs — registration was silently skipped every time - OTP header still sent if generation succeeds; omitted gracefully if not Wizard pre-fill (setup_manager + Setup.jsx): - GET /api/setup/status now returns 'preconfigured' dict with cell_name, domain_mode, domain_name, and provider tokens from installer-written config - Setup.jsx fetches status on mount and pre-fills all form state so the user only needs to set password, services, and timezone — not re-enter the identity they already configured in the bash installer - Fails silently so wizard still works on fresh installs with no config Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>