Refocus classifier on rich extraction and local dedupe only

This commit is contained in:
Steve W
2026-04-09 18:18:35 +00:00
parent a1dcaf9a74
commit 1b2c7db924
7 changed files with 130 additions and 267 deletions

View File

@@ -17,8 +17,6 @@ class ClassifyRequest(BaseModel):
base_url: str | None = None
api_key: str | None = Field(default=None, exclude=True)
temperature: float | None = None
message_id: str | None = None
thread_id: str | None = None
from_address: str | None = None
received_at: str | None = None
@@ -37,12 +35,12 @@ class ClassificationDetails(BaseModel):
dedupe_key: str | None = None
class TodoistSyncResult(BaseModel):
status: Literal["created", "updated", "unchanged", "disabled", "skipped", "error"]
task_id: str | None = None
comment_added: bool = False
dedupe_match: Literal["message_id", "thread_id", "fingerprint", "none"] = "none"
message: str | None = None
class DedupeResult(BaseModel):
status: Literal["new", "duplicate", "updated"]
seen_count: int = 1
matched_on: Literal["none", "subject", "fingerprint"] = "none"
subject_key: str
fingerprint: str
class ClassificationResult(BaseModel):
@@ -53,4 +51,4 @@ class ClassificationResult(BaseModel):
reasoning: str
confidence: float
details: ClassificationDetails | None = None
todoist: TodoistSyncResult | None = None
dedupe: DedupeResult | None = None