tek Atrust
chore(deploy): build monolithic server for Hugging Face
d5ef46f
Raw
History Blame Contribute Delete
902 Bytes
from typing import Any, Literal
from pydantic import BaseModel, Field
# --- 1. Shared State ---
class SharedState(BaseModel):
messages: list[dict[str, Any]] = Field(default_factory=list)
current_assignee: str | None = None
artifacts: dict[str, Any] = Field(default_factory=dict)
step_count: int = 0
max_steps: int = 10 # Phase 5.4: Sufficient buffer for retries
final_result: str | None = None
input_tokens: int = 0
output_tokens: int = 0
model_used: str | None = None
task_type: str = "General" # Phase 5.0.2: Dynamic Prompt Governance
class SupervisorDecision(BaseModel):
next_node: Literal["marketbot", "librarian", "summary", "devbot", "david", "end", "human"] = Field(
description="The next agent to route to, or 'end' if task is completed, or 'human' if stuck."
)
reasoning: str = Field(description="Why this node was selected")