fix: troca except Exception genérico por exceções específicas nos scripts do Scanner
executar_scanner.py: nos dois pontos que processavam clipe-a-clipe (análise visual e transcrição), o except genérico escondia bugs de programação junto com falhas esperadas de mídia/dependência — foi assim que o bug do soundfile ausente passou despercebido até um teste manual. Agora captura só (OSError, RuntimeError, ValueError, json.JSONDecodeError) na visual e (ImportError, OSError, RuntimeError, ValueError) na transcrição; erros de programação propagam e aparecem de verdade. executar_retakes.py e gerar_relatorio_de_analises.py: o except Exception no main() é uma fronteira de processo legítima (traduz qualquer falha em JSON pra tela), mantido, mas agora imprime o traceback completo no stderr antes de reportar — hoje esse traceback se perdia, sobrando só str(erro). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
88f9af28cf
commit
1156619937
@@ -15,6 +15,7 @@ from __future__ import annotations
|
||||
import argparse
|
||||
import json
|
||||
import sys
|
||||
import traceback
|
||||
from pathlib import Path
|
||||
|
||||
# O painel chama este arquivo com cwd ``code/engine``; injetar ``code`` (pai do
|
||||
@@ -169,7 +170,8 @@ def main() -> None:
|
||||
args = parser.parse_args()
|
||||
try:
|
||||
relatorio = executar(args.banco, args.saida, args.video_id)
|
||||
except Exception as erro: # repassa a causa para a tela decidir como exibir
|
||||
except Exception as erro: # fronteira do processo: repassa a causa para a tela decidir como exibir
|
||||
traceback.print_exc() # traceback completo no stderr, para não perder um bug real por trás do "erro"
|
||||
print(json.dumps({"evento": "erro", "mensagem": str(erro)}, ensure_ascii=False), flush=True)
|
||||
sys.exit(1)
|
||||
print(json.dumps({"evento": "concluido", "arquivo": str(args.saida),
|
||||
|
||||
Reference in New Issue
Block a user