feat(workbench): add runtime GIS and sample integrations
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
"""Idempotent alert events emitted by scheduled and other backend tasks."""
|
||||
from __future__ import annotations
|
||||
|
||||
from typing import Literal
|
||||
from uuid import UUID
|
||||
|
||||
from app.domain.schemas.shared import NonEmptyStr, PositiveInt, StrictModel
|
||||
from app.domain.schemas.workbench_runtime import WorkbenchAlertSource, WorkbenchDateTime
|
||||
|
||||
|
||||
class TaskAlertCommand(StrictModel):
|
||||
event_id: UUID
|
||||
alert_id: NonEmptyStr
|
||||
event_type: Literal["raised", "acknowledged", "resolved"]
|
||||
occurred_at: WorkbenchDateTime
|
||||
condition_id: NonEmptyStr | None
|
||||
source: WorkbenchAlertSource
|
||||
title: NonEmptyStr
|
||||
description: NonEmptyStr
|
||||
severity: Literal["warning", "critical"]
|
||||
|
||||
|
||||
class TaskAlertEvent(TaskAlertCommand):
|
||||
producer_id: NonEmptyStr
|
||||
|
||||
|
||||
class TaskAlertState(StrictModel):
|
||||
alert_id: NonEmptyStr
|
||||
revision: PositiveInt
|
||||
producer_id: NonEmptyStr
|
||||
condition_id: NonEmptyStr | None
|
||||
source: WorkbenchAlertSource
|
||||
title: NonEmptyStr
|
||||
description: NonEmptyStr
|
||||
occurred_at: WorkbenchDateTime
|
||||
severity: Literal["warning", "critical"]
|
||||
status: Literal["active", "acknowledged", "resolved"]
|
||||
updated_at: WorkbenchDateTime
|
||||
Reference in New Issue
Block a user