Includes atomic migrations, per-rule reminder semantics, first-run helper script and the note on the undecided UI chat idea. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
13 lines
350 B
Python
13 lines
350 B
Python
from typing import Protocol, Sequence
|
|
|
|
from ..models import StateRow
|
|
from .outage import OutageNotice, RestoredNotice
|
|
|
|
|
|
class SystemNotifier(Protocol):
|
|
async def outage(self, notice: OutageNotice) -> None: ...
|
|
|
|
async def restored(self, notice: RestoredNotice) -> None: ...
|
|
|
|
async def baseline(self, rows: Sequence[StateRow]) -> None: ...
|