Commit Graph

30 Commits

Author SHA1 Message Date
Estrella Pan
b57d3c49ae feat(security): add security config UI and improve auth/MCP security
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 17:19:14 +01:00
Estrella Pan
eefe85db4b chore: bump version to 3.2.3 and update changelog for release
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 12:06:30 +01:00
Estrella Pan
339166508b test(e2e): add comprehensive E2E integration test suite
67 tests across 11 phases exercising the full AutoBangumi workflow
against Docker infrastructure (qBittorrent + mock RSS server).
Covers setup wizard, auth, config, RSS CRUD, bangumi, downloader,
program lifecycle, log, search, notification, and credential updates
with both happy paths and error conditions.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 11:44:03 +01:00
Estrella Pan
fb2dd17c0c feat(mcp): add MCP server for LLM tool integration via SSE
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 16:42:39 +01:00
Estrella Pan
a88e01d3f5 chore: bump version to 3.2.3-beta.4
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-22 14:11:34 +01:00
Estrella Pan
c173454a67 chore: bump version to 3.2.3-beta.3
fix: Episode 0 incorrectly renamed to E01 (#977)
fix: NoneType error in match_list when title_raw is null (#976)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 13:13:15 +01:00
Estrella Pan
5eb21bfcfa chore: bump version to 3.2.3-beta.2
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-28 20:27:39 +01:00
Estrella Pan
b33ec01363 fix: improve rename reliability and add torrent tagging API
- Fix qBittorrent rename verification (verify file actually renamed)
- Add pending rename cooldown to prevent spam when rename delayed
- Add torrent tagging API for accurate offset lookup
- Add auto calendar refresh every 24 hours
- Fix frontend error handling (don't logout on server errors)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 20:54:04 +01:00
EstrellaXD
b0c00598a5 chore: bump version to 3.2.2 2026-01-27 11:05:36 +01:00
EstrellaXD
f06ed41c0d chore: bump version to 3.2.1 2026-01-27 10:40:35 +01:00
Estrella Pan
3146029d0b fix: add socksio dependency to support SOCKS proxy (#961)
When users have a SOCKS proxy configured (via HTTP_PROXY or ALL_PROXY
environment variables), httpx's AsyncClient automatically tries to use
it but fails without the socksio package installed.

Changed httpx dependency from httpx>=0.25.0 to httpx[socks]>=0.25.0 to
include the socksio package as an extra dependency.

Fixes #961

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-01-27 06:42:03 +01:00
EstrellaXD
7b5c8d9ac5 chore: upgrade Python version to 3.13
- Update requires-python to >=3.13 in pyproject.toml
- Update ruff and black target versions to py313
- Update Dockerfile to use python:3.13-alpine
- Add explicit Python 3.13 setup in CI workflow
- Regenerate uv.lock for Python 3.13

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 16:30:25 +01:00
EstrellaXD
4e2a22aba5 chore: bump version to 3.2.0-beta.13
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 15:56:49 +01:00
EstrellaXD
08a71b877c chore: bump version to 3.2.0-beta.12
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-26 14:02:19 +01:00
Estrella Pan
93d2f2e7d2 chore: bump version to 3.2.0-beta.11
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 23:15:52 +01:00
Estrella Pan
9790dce06c fix(passkey): add data field to ResponseModel for passkey login
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 19:37:53 +01:00
Estrella Pan
c044b65fef chore: bump version to 3.2.0-beta.9
Fix TypeScript error in ab-search-bar.vue and include pending changes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 19:29:12 +01:00
Estrella Pan
f1fb4d7926 chore: bump version to 3.2.0-beta.8 2026-01-25 19:25:06 +01:00
Estrella Pan
6ce3f92c74 chore: bump version to 3.2.0-beta.7 2026-01-25 11:50:32 +01:00
Estrella Pan
5064d42d59 chore: bump version to 3.2.0-beta.6
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-25 09:48:29 +01:00
Estrella Pan
929a88c343 test: add comprehensive test suite for core business logic
Cover RSS engine, downloader, renamer, auth, notifications, search,
config, API endpoints, and end-to-end integration flows. When all
210 tests pass, the program's key behavioral contracts are verified.

Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-01-24 18:59:18 +01:00
Estrella Pan
9ebf469539 chore: bump version to 3.2.0-beta.4
Generated with [Claude Code](https://claude.ai/code)
via [Happy](https://happy.engineering)

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Happy <yesreply@happy.engineering>
2026-01-24 18:29:08 +01:00
EstrellaXD
3edddfec09 Merge branch 'feature/uv-migration' into 3.2-dev
# Conflicts:
#	backend/pyproject.toml
#	backend/requirements.txt
#	backend/src/module/api/passkey.py
#	backend/src/module/database/combine.py
#	backend/src/module/database/engine.py
#	backend/src/module/security/auth_strategy.py
#	backend/src/module/security/webauthn.py
#	webui/src/components/setting/config-passkey.vue
#	webui/src/hooks/usePasskey.ts
#	webui/src/pages/index/config.vue
#	webui/src/pages/login.vue
#	webui/src/services/webauthn.ts
2026-01-23 17:58:37 +01:00
EstrellaXD
d2cfd9b150 feat: add WebAuthn passkey authentication support
- Add passkey login as alternative authentication method
- Support multiple passkeys per user with custom names
- Backend: WebAuthn service, auth strategy pattern, API endpoints
- Frontend: passkey management UI in settings, login option
- Fix: convert downloader check from sync requests to async httpx
  to prevent blocking the event loop when downloader unavailable

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 14:57:00 +01:00
EstrellaXD
9c5474d8e9 feat: migrate backend to uv package manager
Replace pip + requirements.txt with uv for dependency management.

- Multi-stage Dockerfile using ghcr.io/astral-sh/uv builder image
- CI updated to use astral-sh/setup-uv@v4
- Ruff config moved to [tool.ruff.lint] (fixes deprecation)
- Transitive deps removed, missing direct deps added (requests, PySocks, urllib3)
- Database layer migrated to async (AsyncSession + aiosqlite)
- Tests updated to match async database interface

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-23 12:56:23 +01:00
EstrellaXD
bfba010471 feat: add WebAuthn passkey authentication support
- Add passkey login as alternative authentication method
- Support multiple passkeys per user with custom names
- Backend: WebAuthn service, auth strategy pattern, API endpoints
- Frontend: passkey management UI in settings, login option
- Fix: convert downloader check from sync requests to async httpx
  to prevent blocking the event loop when downloader unavailable

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 11:50:55 +01:00
100gle
aefcbee8e8 ci: integrate black and pre-commit for formatting codes 2023-06-13 22:12:21 +08:00
100gle
01c7318fbe ci: comment for lint rules 2023-06-07 21:48:23 +08:00
100gle
60a66fca69 ci: fix lint error 2023-06-07 20:58:11 +08:00
zthxxx
069a86faa0 chore: move Auto_Bangumi/src -> Auto_Bangumi/backend/src, prepare for merge WebUI repo 2023-06-06 22:33:00 +08:00