"""Domain entity: BreakPeriod. A user-defined window the family wants to be home together (e.g. summer, winter holidays). Drives the parent-swap tip. Lengths and dates are entirely family-specific; seeded with editable defaults. """ from dataclasses import dataclass from datetime import date, datetime from uuid import UUID @dataclass class BreakPeriod: """A user-defined window for the family to be home together.""" id: UUID workspace_id: UUID name: str # 'Summer', 'Winter holidays', ... start_date: date end_date: date target_weeks: int # desired weeks home together for this break created_at: datetime | None = None updated_at: datetime | None = None