Prasham.Jain
feat(phase-0): foundation — uv project, schemas, mocks, manifest, CI
19e2683
from abc import ABC, abstractmethod
from ci_triage_env.schemas.episode import StepRecord
from ci_triage_env.schemas.scenario import Scenario, ToolOutput
class ToolHandler(ABC):
name: str
cost_unit: float
@abstractmethod
def call(
self,
args: dict,
scenario: Scenario,
history: list[StepRecord],
) -> ToolOutput: ...
@abstractmethod
def validate_args(self, args: dict) -> None:
"""Raise ValueError if args don't match this tool's schema."""