feat: add takeover fields to Authorization model

Add takeover_enabled, takeover_mode, and takeover_delay_seconds columns
to the Authorization model with a SQLite migration, and include them
in to_dict(). Test: test_takeover_model.py.
This commit is contained in:
stefanfeng
2026-08-07 16:30:29 +08:00
parent 76f0730b57
commit 7327939b4d
4 changed files with 65 additions and 0 deletions
+6
View File
@@ -51,6 +51,9 @@ class Authorization(Base):
target_name = Column(String, default="")
permissions = Column(JSON, default=list)
status = Column(String, default="active") # active | inactive
takeover_enabled = Column(Boolean, default=False) # 是否开启分身接管
takeover_mode = Column(String, default="immediate") # immediate | delayed
takeover_delay_seconds = Column(Integer, default=30) # 延迟秒数
created_at = Column(DateTime, server_default=func.now())
def to_dict(self):
@@ -62,6 +65,9 @@ class Authorization(Base):
"targetName": self.target_name,
"permissions": self.permissions or [],
"status": self.status,
"takeoverEnabled": self.takeover_enabled,
"takeoverMode": self.takeover_mode,
"takeoverDelaySeconds": self.takeover_delay_seconds,
"createdAt": _iso(self.created_at),
}