16 lines
529 B
Python
16 lines
529 B
Python
# SPDX-FileCopyrightText: 2026 Art Sea LLC
|
|
#
|
|
# SPDX-License-Identifier: AGPL-3.0-only
|
|
|
|
from abc import ABC, abstractmethod
|
|
from dataclasses import dataclass, field
|
|
from typing import Tuple, List
|
|
|
|
|
|
@dataclass
|
|
class Check(ABC):
|
|
changes: List[Tuple['Check', bool]] # Historical log of the checks it's been checking useful if the call is dependent not just on the current state but the last few checks and results. Note must clone before pushing.
|
|
|
|
@abstractmethod
|
|
def __call__(self, *args, **kwargs) -> bool:
|
|
...
|