2024-08-25 21:39:40 +00:00
|
|
|
import dataclasses
|
|
|
|
import datetime
|
2024-08-25 21:41:42 +00:00
|
|
|
from collections.abc import Sequence
|
2024-08-25 21:39:40 +00:00
|
|
|
|
|
|
|
HIDDEN_LABEL_PREFIX = '__'
|
|
|
|
HIDDEN_LABEL_TOTAL = HIDDEN_LABEL_PREFIX + 'TOTAL'
|
|
|
|
|
2024-08-25 21:41:42 +00:00
|
|
|
|
2024-08-25 21:39:40 +00:00
|
|
|
@dataclasses.dataclass(frozen=True, order=True)
|
|
|
|
class WorkSample:
|
|
|
|
labels: Sequence[str]
|
2024-08-25 22:14:12 +00:00
|
|
|
start_at: datetime.datetime | None
|
|
|
|
end_at: datetime.datetime | None
|
|
|
|
|
2024-08-25 22:57:51 +00:00
|
|
|
|
2024-08-25 22:14:12 +00:00
|
|
|
@dataclasses.dataclass(frozen=True, order=True)
|
|
|
|
class RealizedWorkSample(WorkSample):
|
|
|
|
start_at: datetime.datetime
|
|
|
|
end_at: datetime.datetime
|