{
  "permissions": {
    "allow": [
      "Bash(python -m py_compile main.py)",
      "Bash(git add *)",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"SIGEP: aceitar SEAIOT_LABEL sem appkey \\(modelos GSM usam MAC como serial\\)\")",
      "Bash(python -m py_compile print/print_label.py)",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"SIGEP: versao/alimentacao da etiqueta por modelo \\(SI-EMA Q = 1.0 / 5V 2A\\); QR omite appkey vazio\")",
      "Bash(python -)",
      "Bash(python -m pip install esptool --quiet)",
      "Bash(python -m esptool version)",
      "Bash(python -m pip install --user esptool --quiet)",
      "Bash(python -m esptool --chip esp32s3 merge_bin -o \"D:/Work/Dev/SIGEP/firmwares/si_ema_q.bin\" --flash_mode dio --flash_freq 80m --flash_size 4MB 0x0 bootloader/bootloader.bin 0x8000 partition_table/partition-table.bin 0xf000 ota_data_initial.bin 0x20000 gsm_qualidade.bin)",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"firmwares: merged-bin de fabrica do SI-EMA Q \\(bootloader+partitions+ota_data+app @0x0\\)\")",
      "Bash(python -c \"import sys,esptool;print\\(sys.executable\\);print\\(esptool.__file__\\)\")",
      "Bash(/c/Python311/python.exe -c \"import esptool;print\\('sim',esptool.__file__\\)\")",
      "Read(//c/Users/Braian/AppData/Roaming/Python/Python311/Scripts/**)",
      "Bash(\"/c/Users/Braian/AppData/Roaming/Python/Python311/Scripts/esptool.exe\" version *)",
      "PowerShell(cmd /c \"D:\\\\Work\\\\Dev\\\\Projeto Qualidade - GSM\\\\gerar_bin_sigep.bat\" 2>&1)",
      "Bash(taskkill //IM cmd.exe //F)",
      "Bash(taskkill //IM esptool.exe //F)",
      "Bash(cp \"D:/Work/Dev/SIGEP/firmwares/si_ema_q.bin\" /tmp/esptool_version.bin)",
      "Bash(python merge_sigep.py \"/tmp/pure_version.bin\")",
      "PowerShell($env:PYTHONNOUSERSITE=\"1\"; echo \"\" | cmd /c \"D:\\\\Work\\\\Dev\\\\Projeto Qualidade - GSM\\\\gerar_bin_sigep.bat\")",
      "Bash(PYTHONNOUSERSITE=1 python merge_sigep.py)",
      "Bash(echo \"EXIT=$?\")",
      "Bash(PYTHONNOUSERSITE=1 cmd //c \"gerar_bin_sigep.bat < nul\")",
      "Bash(PYTHONNOUSERSITE=1 cmd //c \"gerar_bin_sigep.bat\")",
      "Bash(PYTHONNOUSERSITE=1 cmd //c \"D:\\\\\\\\Work\\\\\\\\Dev\\\\\\\\Projeto Qualidade - GSM\\\\\\\\gerar_bin_sigep.bat\")",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"merge_sigep.py: merge em Python puro \\(sem esptool, identico byte a byte\\); bat chama o script + CRLF correto\")",
      "Bash(where python *)",
      "Bash(rm -f merge_log.txt)",
      "Bash(cmd //c \"D:\\\\\\\\Work\\\\\\\\Dev\\\\\\\\Projeto Qualidade - GSM\\\\\\\\gerar_bin_sigep.bat\")",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"bat: escolhe python real \\(evita stub da Store\\), grava merge_log.txt, pause robusto\")",
      "Bash(PYTHONNOUSERSITE=1 \"/c/Users/Braian/AppData/Roaming/Python/Python311/Scripts/esptool.exe\" version)",
      "WebFetch(domain:api.github.com)",
      "Bash(curl -sL -o esptool.zip \"https://github.com/espressif/esptool/releases/download/v5.3.1/esptool-v5.3.1-windows-amd64.zip\")",
      "Bash(python -c \"import zipfile;z=zipfile.ZipFile\\('esptool.zip'\\);[print\\(n\\) for n in z.namelist\\(\\)[:40]];print\\('... total',len\\(z.namelist\\(\\)\\),'itens'\\)\")",
      "Bash(python -c \"import zipfile;z=zipfile.ZipFile\\('esptool.zip'\\);open\\('D:/Work/Dev/SIGEP/esptool.exe','wb'\\).write\\(z.read\\('esptool-windows-amd64/esptool.exe'\\)\\)\")",
      "Bash(PYTHONNOUSERSITE=1 \"D:/Work/Dev/SIGEP/esptool.exe\" version)",
      "Bash(python -c \"import main; print\\('load_esptool_cmd ->', main.load_esptool_cmd\\(\\)\\)\")",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"gitignore: nao versionar esptool.exe \\(standalone 14MB, baixado a parte\\)\")",
      "Bash(git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"SIGEP: pedir LABEL ao ESP32 apos gravar \\(resolve corrida com o boot\\); marca seaiot_label_printed\")",
      "Bash(python -m PyInstaller --version)",
      "Bash(rm -rf build dist)",
      "Bash(python -m PyInstaller main.spec --noconfirm)",
      "PowerShell($p = Start-Process -FilePath \"D:\\\\Work\\\\Dev\\\\SIGEP\\\\dist\\\\main.exe\" -PassThru; Start-Sleep -Seconds 8; if \\(-not $p.HasExited\\) { Write-Output \"OK: processo vivo \\(PID $\\($p.Id\\)\\) apos 8s -> nao crashou no boot\"; Stop-Process -Id $p.Id -Force } else { Write-Output \"FALHOU: exit code $\\($p.ExitCode\\)\" })",
      "Bash(cd \"D:/Work/Dev\" && ls -d */ 2>/dev/null; echo \"=== procura outros print_label / SIGEP ===\"; find . -maxdepth 3 -iname \"print_label*.py\" 2>/dev/null; find . -maxdepth 2 -iname \"*sigep*\" 2>/dev/null | head)",
      "Bash(python -c \"import win32print; [print\\(p[2]\\) for p in win32print.EnumPrinters\\(win32print.PRINTER_ENUM_LOCAL|win32print.PRINTER_ENUM_CONNECTIONS\\)]\")",
      "Bash(cd \"D:/Work/Dev/SIGEP\" && rm -f teste_siemaq.prn min_test.prn nologo_test.prn && git add -A && git -c user.name=\"dev\" -c user.email=\"dev@local\" commit -q -m \"fix\\(print\\): restaurar geometria da etiqueta \\(SIDE=right, SHIFT_X=16, SPEED=4\\) — SIDE=left imprimia fora da etiqueta \\(em branco\\)\" && git rev-parse --short HEAD)"
    ]
  }
}
