Skip to content

Commit 77fbaea

Browse files
committed
Fixed some linting and runtime issues
1 parent 1bb161c commit 77fbaea

3 files changed

Lines changed: 12 additions & 7 deletions

File tree

backend/app/main.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
import logging
22
from contextlib import asynccontextmanager
3-
from typing import Any, AsyncGenerator
3+
from typing import Any, AsyncGenerator, Callable, cast
44

55
from fastapi import FastAPI
66
from slowapi import _rate_limit_exceeded_handler
77
from slowapi.errors import RateLimitExceeded
88
from slowapi.middleware import SlowAPIMiddleware
99
from starlette.middleware.cors import CORSMiddleware
10+
from starlette.requests import Request
11+
from starlette.responses import Response
1012

1113
from app.core.config import settings
1214
from app.core.database import init_db
@@ -58,7 +60,10 @@ async def lifespan(_app: FastAPI) -> AsyncGenerator[None, Any]:
5860
)
5961

6062
app.state.limiter = limiter
61-
app.add_exception_handler(RateLimitExceeded, _rate_limit_exceeded_handler)
63+
app.add_exception_handler(
64+
RateLimitExceeded,
65+
cast(Callable[[Request, Exception], Response], _rate_limit_exceeded_handler),
66+
)
6267
app.add_middleware(SlowAPIMiddleware)
6368

6469
# ---------------------------------------------------------

backend/app/services/paper_service.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ async def summarise_paper(
3636
"""
3737
if query and query.strip():
3838
if not await SafetyService.check_moderation(query):
39-
logger.warning(f"Blocked toxic summary query: {query}")
39+
logger.warning("Blocked toxic summary query: %s", query)
4040
raise HTTPException(status_code=400, detail="Query violates content safety policy.")
4141

4242
external_id = "unknown"
@@ -49,7 +49,7 @@ async def summarise_paper(
4949

5050
raw_dump = json.dumps(summary_payload)
5151
if not SafetyService.validate_output(raw_dump):
52-
logger.critical(f"Canary triggered in summary for {external_id}")
52+
logger.critical("Canary triggered in summary for %s", external_id)
5353
raise HTTPException(status_code=500, detail="Generation failed safety check.")
5454

5555
return PaperSummaryResponse.model_validate(summary_payload)
@@ -80,7 +80,7 @@ async def get_chat_answer(
8080
Generates an AI response based on paper content and chat history.
8181
"""
8282
if not await SafetyService.check_moderation(user_query):
83-
logger.warning(f"Blocked toxic user query: {user_query}")
83+
logger.warning("Blocked toxic user query: %s", user_query)
8484
return "I cannot answer this query as it violates our safety policies."
8585

8686
external_id = "unknown"

backend/app/services/search_service.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ async def search_papers(query: str, db: AsyncSession) -> SearchResponse:
3232
openai_provider = get_openai_provider()
3333

3434
if not await SafetyService.check_moderation(query):
35-
logger.warning(f"Blocked toxic search query: {query}")
35+
logger.warning("Blocked toxic search query: %s", query)
3636
raise HTTPException(status_code=400, detail="Search query violates safety policies.")
3737

3838
# Extract + normalize keywords with retry
@@ -64,7 +64,7 @@ async def search_papers_from_pdf(
6464
"""
6565
if query and query.strip():
6666
if not await SafetyService.check_moderation(query):
67-
logger.warning(f"Blocked toxic PDF context query: {query}")
67+
logger.warning("Blocked toxic PDF context query: %s", query)
6868
raise HTTPException(
6969
status_code=400, detail="Context query violates safety policies."
7070
)

0 commit comments

Comments
 (0)