feat: promover ag-agente a Arquiteto de Agentes + scripts de governança
- Persona reescrita: foco em design de sistemas multiagente, governança arquitetural, protocolos de colaboração e visão estratégica - Incluído mapa visual de agentes e tabela de protocolos - Princípios arquiteturais: responsabilidade única, acoplamento fraco, coesão alta, herança consciente - AGENTS e README atualizados para refletir novo papel - validar-repositorio.sh: validação local (sem GitHub Actions) - scripts/auditar-agentes.sh: auditoria de consistência entre agentes - .git/hooks/pre-commit: validação automática antes de cada commit
This commit is contained in:
parent
bf9be375e2
commit
d32a08d811
5 changed files with 257 additions and 145 deletions
47
validar-repositorio.sh
Executable file
47
validar-repositorio.sh
Executable file
|
|
@ -0,0 +1,47 @@
|
|||
#!/usr/bin/env bash
|
||||
# --------------------------------------------------------------
|
||||
# validar-repositorio.sh – validações rápidas para o projeto AGENT-IA
|
||||
# --------------------------------------------------------------
|
||||
# 1) Verifica se ainda existem artefatos .md proibidos
|
||||
# 2) Checa se a versão no manifesto.json está no formato semver (X.Y.Z)
|
||||
# 3) Executa verificar-linhas.sh (se disponível)
|
||||
# --------------------------------------------------------------
|
||||
set -euo pipefail
|
||||
|
||||
REPO_ROOT="$(cd "$(dirname "$0")" && pwd)"
|
||||
cd "$REPO_ROOT"
|
||||
|
||||
msg_ok() { echo -e "\e[32m✅ $1\e[0m"; }
|
||||
msg_err() { echo -e "\e[31m❌ $1\e[0m"; }
|
||||
|
||||
# ---- 1) Busca por arquivos .md proibidos ---------------------
|
||||
forbidden=$(git ls-files "*.md" | grep -vE "(COMERCIAL/|\.ajuda|regras-negocio\.md|dominio-.*\.md|\.docs/adrs|\.git)" || true)
|
||||
if [[ -n "$forbidden" ]]; then
|
||||
msg_err "Arquivos .md proibidos encontrados:"
|
||||
echo "$forbidden"
|
||||
exit 1
|
||||
else
|
||||
msg_ok "Nenhum arquivo .md proibido encontrado."
|
||||
fi
|
||||
|
||||
# ---- 2) Validação da versão no manifesto.json ---------------
|
||||
if [[ -f manifesto.json ]]; then
|
||||
version=$(jq -r '.versao // empty' manifesto.json)
|
||||
if [[ "$version" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
msg_ok "Versão do manifesto válida: $version"
|
||||
else
|
||||
msg_err "Versão do manifesto inválida ou ausente em manifesto.json"
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
msg_err "manifesto.json não encontrado!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# ---- 3) Verificar limite de linhas (opcional) ----------------
|
||||
if [[ -x "$REPO_ROOT/verificar-linhas.sh" ]]; then
|
||||
"$REPO_ROOT/verificar-linhas.sh"
|
||||
msg_ok "Limite de linhas verificado."
|
||||
fi
|
||||
|
||||
exit 0
|
||||
Loading…
Add table
Add a link
Reference in a new issue