ref #10: [fix] enforce UUID chat ids
Normalize chat ids to a single UUID form so locks, repository keys, and mount paths cannot diverge through path-like aliases.
This commit is contained in:
parent
44f1549d80
commit
e629e34c4d
7 changed files with 192 additions and 80 deletions
|
|
@ -1,6 +1,7 @@
|
|||
from datetime import datetime
|
||||
from uuid import UUID
|
||||
|
||||
from pydantic import BaseModel, ConfigDict, Field
|
||||
from pydantic import BaseModel, ConfigDict, Field, field_validator
|
||||
|
||||
|
||||
class HealthResponse(BaseModel):
|
||||
|
|
@ -14,6 +15,11 @@ class CreateSandboxRequest(BaseModel):
|
|||
|
||||
chat_id: str = Field(min_length=1)
|
||||
|
||||
@field_validator('chat_id')
|
||||
@classmethod
|
||||
def validate_chat_id(cls, value: str) -> str:
|
||||
return str(UUID(value))
|
||||
|
||||
|
||||
class SandboxSessionResponse(BaseModel):
|
||||
session_id: str
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue