From c3d13446fc6230852c4010c271e7be81acfb4637 Mon Sep 17 00:00:00 2001 From: jtricerolph Date: Tue, 14 Jul 2026 09:09:33 +0000 Subject: [PATCH] =?UTF-8?q?Fix=20SQLAlchemy=20mapper=20init=20error=20?= =?UTF-8?q?=E2=80=94=20remove=20back=5Fpopulates=20from=20Resos=20models?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit KDS uses a minimal Kitchen stub (no resos_* relationship properties) so back_populates="resos_bookings" etc. caused mapper init to fail on every request. Changed all four Resos.kitchen relationships to viewonly=True with no back reference — KDS only reads these, not writes. Co-Authored-By: Claude Sonnet 4.6 --- backend/models/resos.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/backend/models/resos.py b/backend/models/resos.py index cce5766..e3dabad 100644 --- a/backend/models/resos.py +++ b/backend/models/resos.py @@ -48,7 +48,7 @@ class ResosBooking(Base): is_forecast: Mapped[bool] = mapped_column(Boolean, default=False) # Relationships - kitchen: Mapped["Kitchen"] = relationship("Kitchen", back_populates="resos_bookings") + kitchen: Mapped["Kitchen"] = relationship("Kitchen", viewonly=True) __table_args__ = ( UniqueConstraint('kitchen_id', 'resos_booking_id', name='uq_resos_booking'), @@ -87,7 +87,7 @@ class ResosDailyStats(Base): is_forecast: Mapped[bool] = mapped_column(Boolean, default=False) # Relationships - kitchen: Mapped["Kitchen"] = relationship("Kitchen", back_populates="resos_daily_stats") + kitchen: Mapped["Kitchen"] = relationship("Kitchen", viewonly=True) __table_args__ = ( UniqueConstraint('kitchen_id', 'date', name='uq_resos_daily_stat'), @@ -113,7 +113,7 @@ class ResosOpeningHour(Base): fetched_at: Mapped[datetime] = mapped_column(DateTime, default=datetime.utcnow) # Relationships - kitchen: Mapped["Kitchen"] = relationship("Kitchen", back_populates="resos_opening_hours") + kitchen: Mapped["Kitchen"] = relationship("Kitchen", viewonly=True) __table_args__ = ( UniqueConstraint('kitchen_id', 'resos_opening_hour_id', name='uq_resos_opening_hour'), @@ -142,4 +142,4 @@ class ResosSyncLog(Base): completed_at: Mapped[datetime | None] = mapped_column(DateTime, nullable=True) # Relationships - kitchen: Mapped["Kitchen"] = relationship("Kitchen", back_populates="resos_sync_logs") + kitchen: Mapped["Kitchen"] = relationship("Kitchen", viewonly=True)