Files
UmbraTrans/umbratrans_web/translation/schemas.py
umbra audio dda079f605 commit audio ingest: apply 0008+0009 migrations, wire Postgres adapter to commit path
- Apply migration 0008_audio_source_import (additive schema for source import)
- Apply migration 0009_translation_import_runs (ledger table for import runs)
- Wire PostgresAudioImportStore into HTTP commit path with org from node credential
- Commit path uses PG store with org from node, no payload org
- Bundle hash 21ce5687… remains frozen until v2; no authority transferred
2026-10-19 04:35:07 -07:00

50 lines
1.3 KiB
Python

"""Pydantic schemas for translation pipeline outputs."""
from pydantic import BaseModel, Field
from typing import List, Optional, Dict, Any
from enum import Enum
class UnitStatus(str, Enum):
PENDING = "PENDING"
IN_PROGRESS = "IN_PROGRESS"
PASSED = "PASSED"
REVISING = "REVISING"
BLOCKED = "BLOCKED"
HUMAN_APPROVED = "HUMAN_APPROVED"
FINAL = "FINAL"
class FigurativeClass(str, Enum):
IDIOM = "IDIOM"
PROVERB = "PROVERB"
METAPHOR = "METAPHOR"
SIMILE = "SIMILE"
PHRASAL_VERB = "PHRASAL_VERB"
SLANG = "SLANG"
DIALECT = "DIALECT"
HONORIFIC_REGISTER = "HONORIFIC_REGISTER"
HUMOR = "HUMOR"
PUN = "PUN"
ONOMATOPOEIA = "ONOMATOPOEIA"
CULTURAL_REFERENCE = "CULTURAL_REFERENCE"
ALLUSION = "ALLUSION"
UNIT_OR_CURRENCY = "UNIT_OR_CURRENCY"
PROPER_NOUN = "PROPER_NOUN"
INVENTED_TERM = "INVENTED_TERM"
PROFANITY = "PROFANITY"
SARCASM_IRONY = "SARCASM_IRONY"
IMPLICIT_SUBJECT = "IMPLICIT_SUBJECT"
GENDER_NUMBER_AGREEMENT = "GENDER_NUMBER_AGREEMENT"
class Strategy(str, Enum):
LITERAL = "LITERAL"
IDIOM_SUBSTITUTE = "IDIOM_SUBSTITUTE"
PARAPHRASE = "PARAPHRASE"
ADAPT = "ADAPT"
TRANSCREATE = "TRANSCREATE"
KEEP_WITH_GLOSS = "KEEP_WITH_GLOSS"
KEEP_SOURCE = "KEEP_SOURCE"
COMPENSATE = "COMPENSATE"
OMIT_FLAGGED = "OMIT_FLAGGED"