OpenCut Studio — Diretrizes de Engenharia para Agentes
-
Apenas Matemática Determinística de Frames:
- Dentro de
src/remotion-engine/, NUNCA use@keyframes,transition,requestAnimationFrameousetTimeoutdo CSS. - Sempre calcule posições, escalas, opacidades e rotações 3D a partir de
const frame = useCurrentFrame()econst { fps } = useVideoConfig()usandointerpolate()ouspring().
- Dentro de
-
Disciplina de Armazenamento Híbrido Local + Google Drive:
- Nunca armazene blobs
ArrayBufferde vídeo bruto dentro delocalStorageouIndexedDB. - A edição ativa lê diretamente de
localFsManager.ts(FileSystemDirectoryHandle). - A persistência de longo prazo e a sincronização entre dispositivos usam
googleDriveClient.ts(uploadType=resumablepara mídia, JSON multipart para StyleDNA e EditPlan).
- Nunca armazene blobs
-
Resiliência Offline Sem Custo:
- Cada funcionalidade de IA (
styleAnalyzer.ts,feedbackCompiler.ts) DEVE incluir uma implementação de fallback determinística para que o usuário possa testar e usar todos os recursos mesmo antes de inserir uma URL do Ollama ou uma chave de API do Google AI Studio.
- Cada funcionalidade de IA (