"""Comandos da ponte JSON usada pelo app, agrupados por assunto. O setup de sys.path mora aqui, e só aqui, porque o pacote é importado antes de qualquer um dos seus módulos (`from admin.api import models, voice, ...` dispara este arquivo primeiro). Cada módulo de comando importa `fcpxml.*` antes de importar `.shared` — sem o path já pronto neste ponto, o primeiro desses imports falha com `ModuleNotFoundError`. Repetir o cálculo em cada módulo (como era antes) é frágil por ordem: o app roda `admin/models_api.py` por caminho absoluto, então `__file__` está sempre correto, mas cada arquivo que refizesse essa conta um nível de diretório errado — como aconteceu quando `_shared.py` virou este pacote e `admin/code` (inexistente) saiu no lugar de `code/` — quebrava em silêncio até alguém rodar o comando de verdade. """ import sys from pathlib import Path _CODE_DIR = str(Path(__file__).resolve().parent.parent.parent / "code") if _CODE_DIR not in sys.path: sys.path.insert(0, _CODE_DIR)