diff --git a/src/dispatch/cost_model/models.py b/src/dispatch/cost_model/models.py index 69e15f7417f2..878aa0b9936b 100644 --- a/src/dispatch/cost_model/models.py +++ b/src/dispatch/cost_model/models.py @@ -43,7 +43,7 @@ class CostModelActivity(Base): id = Column(Integer, primary_key=True) plugin_event_id = Column(Integer, ForeignKey(PluginEvent.id, ondelete="CASCADE")) plugin_event = relationship(PluginEvent, backref="plugin_event") - response_time_seconds = Column(Integer, default=300) + response_time_seconds = Column(Integer, default=0) enabled = Column(Boolean, default=True) @@ -69,7 +69,7 @@ class CostModelActivityBase(DispatchBase): """Base class for cost model activity resources""" plugin_event: PluginEventRead - response_time_seconds: int | None = 300 + response_time_seconds: int | None = None enabled: bool | None = Field(True, nullable=True) diff --git a/src/dispatch/cost_model/service.py b/src/dispatch/cost_model/service.py index 50568f68b79e..a1c02d14b534 100644 --- a/src/dispatch/cost_model/service.py +++ b/src/dispatch/cost_model/service.py @@ -34,7 +34,7 @@ def get_default(*, db_session, project_id: int) -> CostModel: return ( db_session.query(CostModel) .filter(CostModel.project_id == project_id) - .order_by(CostModel.created_at.desc()) + .order_by(CostModel.created_at.asc()) .first() ) @@ -70,7 +70,7 @@ def update_cost_model_activity(*, db_session, cost_model_activity_in: CostModelA db_session=db_session, cost_model_activity_id=cost_model_activity_in.id ) - cost_model_activity.response_time_seconds = cost_model_activity_in.response_time_seconds + cost_model_activity.response_time_seconds = 0 cost_model_activity.enabled = cost_model_activity_in.enabled cost_model_activity.plugin_event_id = cost_model_activity_in.plugin_event.id @@ -121,6 +121,8 @@ def update(*, db_session, cost_model_in: CostModelUpdate) -> CostModel: cost_model_in.updated_at if cost_model_in.updated_at else datetime.utcnow() ) + cost_model.updated_at = cost_model.created_at + # Update all recognized activities. Delete all removed activities. update_activities = [] delete_activities = [] @@ -132,7 +134,6 @@ def update(*, db_session, cost_model_in: CostModelUpdate) -> CostModel: update_activities.append((activity, activity_in)) cost_model_in.activities.pop(idx_in) updated = True - break if updated: continue