Add Dispatch_V0.1.1

This commit is contained in:
2026-04-29 08:18:54 +04:00
commit a7ede6ded4
404 changed files with 39167 additions and 0 deletions

View File

@@ -0,0 +1,44 @@
# -*- coding: utf-8 -*-
# hub/ticket/state/ticket_state_api.py
"""Публичный state API модуля Ticket."""
from __future__ import annotations
from typing import Any, Mapping, Protocol, Sequence
from domain import TicketTaskSnapshot
class TicketStateApi(Protocol):
"""Контракт для канонического runtime-state и persistence-контура Ticket."""
def load(self) -> None:
"""Загрузить состояние из репозитория."""
def list_tasks(self) -> Sequence[TicketTaskSnapshot]:
"""Вернуть все известные задачи."""
def list_active_tasks(self) -> Sequence[TicketTaskSnapshot]:
"""Вернуть активные задачи."""
def list_archived_tasks(self) -> Sequence[TicketTaskSnapshot]:
"""Вернуть архивные задачи."""
def get_task(self, task_id: int) -> TicketTaskSnapshot | None:
"""Вернуть задачу по идентификатору."""
def upsert_task(self, task: TicketTaskSnapshot) -> None:
"""Создать или обновить задачу в каноническом состоянии."""
def update_task(self, task_data: Mapping[str, Any]) -> TicketTaskSnapshot | None:
"""Обновить задачу по словарю совместимых полей."""
def remove_task(self, task_id: int) -> None:
"""Удалить задачу из состояния."""
def sign_report(self, task_id: int, report_type: str) -> None:
"""Зафиксировать подписание отчёта."""
def can_advance_to_confirmation(self, task_id: int) -> bool:
"""Проверить готовность задачи к подтверждению."""