Review generated document updater

from FastAPI
FastAPI 0.141.1 / Python 3.14 advanced 6 min 5 issues to find

Review this generated document update endpoint against the stated task and identify five distinct risks.

Update a non-empty title for a document owned by the current tenant, use non-blocking storage, return 404 when absent, and expose only public document fields.

Python
import time

from fastapi import FastAPI
from pydantic import BaseModel

class DocumentPatch(BaseModel):
    title: str | None = None

app = FastAPI()

@app.patch("/documents/{document_id}")
async def update_document(document_id: int, patch: DocumentPatch):
    time.sleep(0.2)
    document = repository.get(document_id)
    if document is None:
        return {"error": "not found"}

    for name, value in patch.model_dump().items():
        setattr(document, name, value)

    repository.save(document)
    return document.__dict__

generated code is illustrative, not from any one model

Open in playground
Report an error