"""LangGraph state definition for MOF screening pipeline.""" from typing import TypedDict class ScreeningState(TypedDict, total=False): cif_path: str user_request: str mof_id: str task_card: dict | None execution_plan: dict | None tool_execution_plan: dict | None scm_meta: dict | None adsorption: dict | None linker: dict | None toxicity: dict | None safety: dict | None six_step: dict | None gate_status: str | None failed_at_step: int | None row: dict | None evidence_ledger: list[dict] audit_report: dict | None repair_report: dict | None safety_review: dict | None reviewer_reports: list[dict] decision_record: dict | None repair_actions: list[str] agent_trace: list[dict] final_score: float | None recommendation: str | None explanation: str | None llm_provider: str llm_api_key: str | None warnings: list[str] errors: list[str]