security: seal Campaign delivery inputs
This commit is contained in:
@@ -421,11 +421,10 @@ class CampaignResolveOutcomeRequest(BaseModel):
|
||||
note: str | None = Field(default=None, max_length=2000)
|
||||
|
||||
@model_validator(mode="after")
|
||||
def require_imap_reconciliation_evidence(self) -> "CampaignResolveOutcomeRequest":
|
||||
if self.decision.startswith("imap_"):
|
||||
self.note = (self.note or "").strip()
|
||||
if not self.note:
|
||||
raise ValueError("IMAP reconciliation requires an evidence note")
|
||||
def require_reconciliation_evidence(self) -> "CampaignResolveOutcomeRequest":
|
||||
self.note = (self.note or "").strip()
|
||||
if not self.note:
|
||||
raise ValueError("Reconciliation requires an evidence note")
|
||||
return self
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user