From d12b832cf4552765bff17b6aeaa9f21a2e9e74c8 Mon Sep 17 00:00:00 2001 From: Claude Date: Mon, 24 Aug 2026 05:00:10 +0000 Subject: [PATCH] refactor(cli): type _progress_complete's result param as ClaimResult runner.py's run_request already declares on_claim_complete as Callable[[int, str, ClaimResult], None], and the callback only reads result.status/result.finding, so the Any here was strictly looser than every real caller. Continues the Any->concrete-type vein already applied to actions.py/overlay.py/runner.py/mcp_server.py/claim_verifier.py. Co-Authored-By: Claude --- src/frontend_visualqa/cli.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/frontend_visualqa/cli.py b/src/frontend_visualqa/cli.py index 9815da6..39db1eb 100644 --- a/src/frontend_visualqa/cli.py +++ b/src/frontend_visualqa/cli.py @@ -35,6 +35,7 @@ if TYPE_CHECKING: from frontend_visualqa.runner import VisualQARunner + from frontend_visualqa.schemas import ClaimResult logger = logging.getLogger(__name__) @@ -427,7 +428,7 @@ async def _run_verify(args: argparse.Namespace) -> dict[str, Any]: def _progress_start(index: int, claim: str) -> None: print(f"[{index}/{total_claims}] Verifying: {_truncate_for_progress(claim)}", file=sys.stderr, flush=True) - def _progress_complete(index: int, claim: str, result: Any) -> None: + def _progress_complete(index: int, claim: str, result: ClaimResult) -> None: del claim message = f"[{index}/{total_claims}] {result.status}" if result.status != "passed" and result.finding: