feat: Slot-basierter Auto-Refresh mit konfigurierbarer Startzeit
Auto-Refresh nutzt jetzt eine feste Anker-Uhrzeit (refresh_start_time) statt reinem Intervall-basiertem Driften. Verpasste Slots werden max. 1x aufgeholt. Bestehendes Intervall-Verhalten bleibt als Fallback erhalten (ohne Startzeit). Migration: Bestehende Auto-Lagen erhalten 07:00 als Startzeit. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Dieser Commit ist enthalten in:
@@ -49,6 +49,7 @@ class IncidentCreate(BaseModel):
|
||||
type: str = Field(default="adhoc", pattern="^(adhoc|research)$")
|
||||
refresh_mode: str = Field(default="manual", pattern="^(manual|auto)$")
|
||||
refresh_interval: int = Field(default=15, ge=10, le=10080)
|
||||
refresh_start_time: Optional[str] = Field(default=None, pattern=r"^([01]\d|2[0-3]):[0-5]\d$")
|
||||
retention_days: int = Field(default=0, ge=0, le=999)
|
||||
international_sources: bool = True
|
||||
include_telegram: bool = False
|
||||
@@ -62,6 +63,7 @@ class IncidentUpdate(BaseModel):
|
||||
status: Optional[str] = Field(default=None, pattern="^(active|archived)$")
|
||||
refresh_mode: Optional[str] = Field(default=None, pattern="^(manual|auto)$")
|
||||
refresh_interval: Optional[int] = Field(default=None, ge=10, le=10080)
|
||||
refresh_start_time: Optional[str] = Field(default=None, pattern=r"^([01]\d|2[0-3]):[0-5]\d$")
|
||||
retention_days: Optional[int] = Field(default=None, ge=0, le=999)
|
||||
international_sources: Optional[bool] = None
|
||||
include_telegram: Optional[bool] = None
|
||||
@@ -82,6 +84,7 @@ class IncidentResponse(BaseModel):
|
||||
status: str
|
||||
refresh_mode: str
|
||||
refresh_interval: int
|
||||
refresh_start_time: Optional[str] = None
|
||||
retention_days: int
|
||||
visibility: str = "public"
|
||||
summary: Optional[str]
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren