cv-buddy-backend / app /models /customization.py
Momal's picture
Deploy cv-buddy backend
366c43e
raw
history blame contribute delete
891 Bytes
from enum import Enum
from typing import List, Optional
from pydantic import BaseModel
from app.models.resume import ResumeData
from app.models.score import ATSScore
from app.models.analysis import BulletAnalysis, SafetyScan, KeywordPlacement
class Intensity(str, Enum):
CONSERVATIVE = "conservative"
MODERATE = "moderate"
AGGRESSIVE = "aggressive"
class Change(BaseModel):
type: str # "added", "modified", "reordered"
location: str # e.g., "experience[0].bullets[2]"
before: str = ""
after: str = ""
class CustomizationResult(BaseModel):
original: ResumeData
customized: ResumeData
changes: List[Change] = []
original_score: ATSScore
customized_score: ATSScore
# Enhanced analysis fields
bullet_analysis: List[BulletAnalysis] = []
safety_scan: Optional[SafetyScan] = None
keyword_quality: List[KeywordPlacement] = []