Imports — strictly ordered, separated by blank lines
# 1. Standard libraryimportloggingfromcollections.abcimportAsyncGeneratorfromdatetimeimportUTC,datetimefromtypingimportAnnotated,AnyfromuuidimportUUID# 2. Third-partyfromfastapiimportAPIRouter,Depends,Query,statusfrompydanticimportBaseModel,ConfigDict,Fieldfromsqlalchemyimportselectfromsqlalchemy.ext.asyncioimportAsyncSession# 3. Local applicationfromapp.api.depsimportCurrentUser,UserSvcfromapp.core.exceptionsimportNotFoundErrorfromapp.schemas.userimportUserCreate,UserRead
Other Conventions
datetime.now(UTC) not datetime.utcnow()
secrets.compare_digest() for constant-time comparisons
__repr__ on all DB models
Async for PostgreSQL/MongoDB I/O, sync for SQLite
Keyword-only args in repo functions after db parameter