Files
2026-07-17 12:57:18 +03:00

43 lines
1.2 KiB
Python

"""Пути, доступные до завершения фоновой инициализации (миграции Alembic)."""
from __future__ import annotations
from typing import FrozenSet, Tuple
# Префиксы: startup status, health, статика, API киоска (JSON, не редирект на /starting).
STARTUP_GATE_PREFIXES: Tuple[str, ...] = (
"/api/startup/",
"/api/health",
"/api/kiosk/",
"/static/",
)
# Точные пути: экран загрузки, весы и legacy-эндпоинты (без HTML-редиректа на /starting).
STARTUP_GATE_ALLOWED_PATHS: FrozenSet[str] = frozenset(
{
"/starting",
"/favicon.ico",
"/scales",
"/calibration",
"/db_check",
"/component_loader",
"/duplicate",
"/unloading",
"/current_weight",
"/current_raw_data",
"/stream_weight",
"/tare",
}
)
def is_path_allowed_during_startup(path: str) -> bool:
if not path:
return False
if path in STARTUP_GATE_ALLOWED_PATHS:
return True
for prefix in STARTUP_GATE_PREFIXES:
if path.startswith(prefix):
return True
return False