feat: add chat group daily summarizer
Deploy Dashboard / deploy (push) Failing after 38s

- Telegram collector (Telethon MTProto) with checkpoint-based message fetching
- Claude API summarization via proxy (haiku model)
- Dashboard page with date picker, markdown summary, raw message drill-down
- Separate container lifecycle from dashboard for stable Telethon sessions
- Shared SQLite DB mounted read-only into dashboard
This commit is contained in:
Gan, Jimmy
2026-02-27 02:51:52 +08:00
parent 7f94013bf9
commit c676c84bc1
14 changed files with 441 additions and 1 deletions
+2 -1
View File
@@ -5,7 +5,7 @@ from fastapi.responses import JSONResponse
from slowapi import Limiter
from slowapi.util import get_remote_address
from slowapi.errors import RateLimitExceeded
from routers import docker_router, gitea, files, terminal, system, auth
from routers import docker_router, gitea, files, terminal, system, auth, chat_summary
import auth as auth_module
import asyncio
@@ -139,6 +139,7 @@ app.include_router(docker_router.router, prefix="/api/docker", dependencies=[Dep
app.include_router(gitea.router, prefix="/api/gitea", dependencies=[Depends(auth_module.get_current_user)])
app.include_router(files.router, prefix="/api/files", dependencies=[Depends(auth_module.get_current_user)])
app.include_router(system.router, prefix="/api/system", dependencies=[Depends(auth_module.get_current_user)])
app.include_router(chat_summary.router, prefix="/api/chat-summary", dependencies=[Depends(auth_module.get_current_user)])
# WebSocket endpoint (auth handled inside handler via Query param)
app.add_api_websocket_route("/ws/terminal", terminal.ws_endpoint)