Spaces:
Sleeping
Sleeping
| """Task-success verifiers. One per target_category.""" | |
| from typing import Any, Callable, Dict | |
| from .exfiltration import verify_exfiltration | |
| from .forbidden_tool import verify_forbidden_tool | |
| from .prompt_leak import verify_prompt_leak | |
| _VERIFIERS: Dict[str, Callable[[str, Dict[str, Any]], bool]] = { | |
| "exfiltration": verify_exfiltration, | |
| "forbidden_tool": verify_forbidden_tool, | |
| "prompt_leak": verify_prompt_leak, | |
| } | |
| def verify(agent_output: str, scenario: Dict[str, Any]) -> bool: | |
| """Dispatch to the right verifier based on the scenario's target_category.""" | |
| cat = scenario["target_category"] | |
| if cat not in _VERIFIERS: | |
| raise ValueError(f"unknown target_category: {cat}") | |
| return _VERIFIERS[cat](agent_output, scenario) | |
| __all__ = [ | |
| "verify", | |
| "verify_exfiltration", | |
| "verify_forbidden_tool", | |
| "verify_prompt_leak", | |
| ] | |