- aprimorada a edição por voz com validação de frases, margens seguras e backup único antes da timeline. - adicionada consulta expansível dos detalhes de cada trilha diretamente do banco Resumo: - 23 arquivos alterados - 5 novos - 18 modificados - 0 removidos 18 files changed, 321 insertions(+), 216 deletions(-) Arquivos: - .gitignore - .jhonny/analises.db - code/cep-plugin/index.html - code/cep-plugin/main.js - code/cep-plugin/styles.css - code/engine/analisar_trilhas.py - code/engine/aplicar_plano_de_edicao.py - code/engine/editor/__init__.py - code/engine/editor/backup_de_sequencia.py - code/engine/persistencia/__init__.py - code/engine/testes/test_aplicar_plano_de_edicao.py - code/plugins/premiere-pro/skills/edit-video-by-voice/SKILL.md - code/plugins/premiere-pro/skills/editar-por-voz/SKILL.md - code/plugins/premiere-pro/skills/editar-por-voz/criterios/05-zoom.md - code/plugins/premiere-pro/skills/editar-por-voz/criterios/06-texto-corte-marcador.md - code/plugins/premiere-pro/skills/editar-por-voz/criterios/08-formato-de-saida.md - code/plugins/premiere-pro/skills/editar-por-voz/criterios/10-revisao-humana.md - code/plugins/premiere-pro/skills/transcript-to-edit-actions/SKILL.md - code/engine/consultar_detalhes_de_trilha.py - code/engine/editor/validacao_semantica.py - code/engine/persistencia/leitura_semantica_do_plano.py - code/engine/testes/test_leitura_semantica_do_plano.py - code/engine/testes/test_validador_semantico_de_plano.py
32 lines
1.2 KiB
Python
32 lines
1.2 KiB
Python
"""Backup automático da sequência antes de aplicar um plano de edição."""
|
|
|
|
from __future__ import annotations
|
|
|
|
from ..integracoes.premiere.cliente_mcp import ClienteMCP
|
|
from ..integracoes.premiere.erros_mcp import ErroDeFerramentaMCP
|
|
|
|
|
|
class BackupDaSequencia:
|
|
"""Duplica a sequência ativa do Premiere antes de uma edição destrutiva.
|
|
|
|
A engine concentra este passo de segurança para que painel e linha de
|
|
comando não criem cópias duplicadas. Sem undo por script nesta versão do
|
|
Premiere, duplicar a sequência antes de cortar é a única forma de recuperar
|
|
o estado anterior se algo sair errado.
|
|
"""
|
|
|
|
def __init__(self, cliente_mcp: ClienteMCP) -> None:
|
|
self.cliente_mcp = cliente_mcp
|
|
|
|
def criar_backup(self, identificador_da_sequencia: str) -> bool:
|
|
"""Duplica a sequência. Devolve ``True`` se conseguiu, ``False`` se o Premiere recusou.
|
|
|
|
Não levanta exceção numa recusa: a engine registra a falha e continua
|
|
a aplicação solicitada, deixando a ausência de backup visível.
|
|
"""
|
|
try:
|
|
self.cliente_mcp.chamar("duplicate_sequence", {"sequence_id": identificador_da_sequencia})
|
|
return True
|
|
except ErroDeFerramentaMCP:
|
|
return False
|