Fix auth and config validation regressions

This commit is contained in:
Abhishek Kumar 2026-07-09 18:18:44 +05:30
parent e4b53f78e9
commit 8ac6f1aa06
9 changed files with 346 additions and 49 deletions

View file

@ -1,3 +1,4 @@
from datetime import UTC, datetime
from typing import Any, Dict, List, Optional
from sqlalchemy.future import select
@ -66,6 +67,30 @@ class OrganizationConfigurationClient(BaseDBClient):
await session.refresh(config)
return config
async def touch_configuration(
self, organization_id: int, key: str
) -> Optional[OrganizationConfigurationModel]:
"""Update the timestamp for an existing organization configuration."""
async with self.async_session() as session:
result = await session.execute(
select(OrganizationConfigurationModel).where(
OrganizationConfigurationModel.organization_id == organization_id,
OrganizationConfigurationModel.key == key,
)
)
config = result.scalars().first()
if not config:
return None
config.updated_at = datetime.now(UTC)
try:
await session.commit()
except Exception as e:
await session.rollback()
raise e
await session.refresh(config)
return config
async def delete_configuration(self, organization_id: int, key: str) -> bool:
"""Delete a configuration for an organization."""
async with self.async_session() as session: