#!/usr/bin/env bash
# Ajusta permissões do projeto (no snapshot, os arquivos estavam rwxrwxrwx = qualquer usuário do servidor lê/escreve).
# Uso:  sudo bash deploy/endurecer_permissoes.sh /opt/atm atm       (pasta do app, usuário que roda o Node)
set -euo pipefail
APP="${1:?informe a pasta do app}"; USUARIO="${2:?informe o usuário que roda o Node}"
cd "$APP"

chown -R "$USUARIO":"$USUARIO" .
find . -path ./node_modules -prune -o -type d -exec chmod 750 {} +
find . -path ./node_modules -prune -o -type f -exec chmod 640 {} +
find . -path ./node_modules -prune -o -type f \( -name '*.sh' \) -exec chmod 750 {} +

# segredos e dados sensíveis: só o dono
[ -f .env ] && chmod 600 .env
for d in auth_info_baileys data storage; do [ -d "$d" ] && chmod -R u=rwX,go= "$d"; done

echo "Arquivos graváveis por 'outros' (deve estar vazio):"
find . -path ./node_modules -prune -o -perm -o+w -print | head
echo "Conferência do .env:"; ls -l .env 2>/dev/null || echo "(sem .env aqui)"
