github-actions[bot]
deploy prod from 06dbd16a01ddcfe02b2d936c681e3e4eaa9b141f
8e756fd
Raw
History Blame Contribute Delete
542 Bytes
"""Classical evaluation backend protocol (L3 FEN cache / prefill)."""
from __future__ import annotations
from typing import Protocol, runtime_checkable
from chess_tutor.classical_eval import PositionAnalysis
DEFAULT_BACKEND_ID = "python"
@runtime_checkable
class ClassicalEvalBackend(Protocol):
"""Analyze a FEN with the classical component model."""
@property
def backend_id(self) -> str:
"""Stable id included in FEN cache version strings."""
def analyze_fen(self, fen: str) -> PositionAnalysis:
...