@@ -51,17 +51,13 @@ def _default_resource_usage_payload() -> dict[str, Any]:
5151 }
5252
5353
54+ def _utcnow () -> datetime :
55+ return datetime .now (UTC )
56+
57+
5458class Branch (AsyncAttrs , Model , table = True ):
5559 DEFAULT_SLUG : ClassVar [Name ] = "main"
5660
57- def __init__ (self , ** data : Any ):
58- status_value = data .get ("status" )
59- status_timestamp = data .get ("status_updated_at" )
60- super ().__init__ (** data )
61- if isinstance (status_value , BranchServiceStatus ) and status_timestamp is None :
62- # Seed initial timestamp on construction when a status is present.
63- self .set_status (status_value )
64-
6561 name : Name
6662 env_type : str | None = Field (default = None , sa_column = Column (String (255 ), nullable = True ))
6763 project_id : Identifier = Model .foreign_key_field ("project" )
@@ -102,7 +98,10 @@ def __init__(self, **data: Any):
10298 default = "UNKNOWN" ,
10399 sa_column = Column (String (length = 64 ), nullable = False , server_default = "UNKNOWN" ),
104100 )
105- status_updated_at : datetime | None = Field (default = None , sa_column = Column (DateTimeTZ (), nullable = True ))
101+ status_updated_at : datetime | None = Field (
102+ default_factory = _utcnow ,
103+ sa_column = Column (DateTimeTZ (), nullable = True ),
104+ )
106105 jwt_secret : Annotated [str , Field (default = None , sa_column = Column (Text , nullable = True ))]
107106 anon_key : Annotated [str , Field (default = None , sa_column = Column (Text , nullable = True ))]
108107 service_key : Annotated [str , Field (default = None , sa_column = Column (Text , nullable = True ))]
0 commit comments