"""The repository's read-model for a property's uploaded document (ADR-0060). A small domain type the uploaded-file repository hands back, so the orchestrator never names ``infrastructure.postgres.*``. Carries the property's ``landlord_property_id`` (resolved through the ``hubspot_deal_data`` bridge — see the repository) alongside just the fields the Download Package needs. """ from __future__ import annotations from dataclasses import dataclass from datetime import datetime from typing import Optional @dataclass(frozen=True) class PropertyDocument: """One uploaded file matched to a property, ready to resolve into the plan.""" landlord_property_id: str document_type: Optional[str] s3_bucket: str s3_key: str uploaded_at: datetime