Add Jin10 QR connection with cancellable login tasks

Store account credentials encrypted and bind QR tasks to administrator sessions. Report calendar access as awaiting validation after login.

Prevent late polls and status responses from overwriting cancelled or newer operations, and clean up QR tasks when settings unmount. Cover authentication, cancellation races, and stale frontend responses.
This commit is contained in:
eezd committed 2026-10-30 22:42:26 +08:00
1 parent 5a991e3d29
commit 62d8c7eb65
14 files changed
+871 -1

No files matched your search

+2 -1
View File
@@ -5,7 +5,7 @@ from fastapi.exceptions import RequestValidationError
from fastapi.responses import RedirectResponse
from starlette.exceptions import HTTPException
from alphapulse.api import auth, calendar, chat, crawler, market, news, settings, skills, trading, risk
from alphapulse.api import auth, calendar, chat, crawler, market, news, settings, skills, trading, risk, jin10
from alphapulse.api.response import (
ApiResponse, ValidationErrors, http_error, internal_error, success, validation_error,
)
@@ -30,6 +30,7 @@ app.include_router(chat.router)
app.include_router(trading.router)
app.include_router(calendar.router)
app.include_router(risk.router)
app.include_router(jin10.router)
@app.get("/api/health", include_in_schema=False)