The crypto suite's deriveKey tests exceeded vitest's default 5s per-test
timeout in CI (passed locally only because the host is faster). Set a 30s
per-test timeout so the PBKDF2-heavy tests don't flake the pipeline.
- .gitea/workflows/deploy.yml: test+build on every push; auto-deploy
dist/index.html to /password_manager via WebDAV on push to main (DELETE-
then-PUT to bypass stale-file cache), verifying deployed bytes match.
- Build injects __VAULT_COMMIT__ (from VITE_COMMIT_HASH=github.sha in CI,
git HEAD locally) and main.js logs console.info({ commit_hash }) on
startup so a deploy is verifiable against its source commit.