File size: 499 Bytes
48c9fc6
 
 
 
 
12b2673
 
48c9fc6
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
from pydantic import BaseModel, field_validator
from typing import Optional

class EmailObservation(BaseModel):
    email: Optional[str]
    subject: Optional[str]
    sender: Optional[str]

class EmailAction(BaseModel):
    action: str

    @field_validator("action")
    @classmethod
    def validate_action(cls, v: str) -> str:
        allowed = ["mark_important", "delete", "ignore"]
        if v not in allowed:
            raise ValueError(f"Action must be one of {allowed}")
        return v