"""ThoughtState — der State, der durch die Sanduhr fließt. Feldnamen verbatim nach Samuels Spec, plus ein paar Carry-Felder für den Mockup-Lauf. """ from __future__ import annotations import operator from typing import Annotated, TypedDict class ThoughtState(TypedDict, total=False): # --- Samuels Spec (verbatim) --- raw_input: str classification: str # task | research | learning | meta | noise priority: str # P0..P3 | park active_project: str | None selected_agents: list[str] # gewählte Lane(s) current_gate: str # wo im Graph wir gerade stehen evidence: Annotated[list[dict], operator.add] # reducer → merge'd Fanout-Beiträge owner_decision_needed: bool execution_status: str verifier_status: str # --- Carry --- summary: str topics: list[str] # aus dem Register (best effort) intake: dict # roh: id/urgency/status/confidence/note/sources route: str # A | B | C | D | E owner_packet: dict