75 lines
1.9 KiB
Markdown
75 lines
1.9 KiB
Markdown
---
|
|
type: rule
|
|
name: proibido-commit-ia
|
|
description: A IA nunca pode executar git commit, git push ou qualquer operação que altere o histórico do repositório
|
|
scope: global
|
|
trigger: always_on
|
|
updatedAt: "2026-06-19"
|
|
---
|
|
|
|
# Regra: Proibido Commit pela IA
|
|
|
|
## Contexto
|
|
|
|
O controle de versão é responsabilidade exclusiva do usuário humano. A IA pode preparar alterações, criar arquivos, editar código e até sugerir mensagens de commit — mas NUNCA deve executar comandos que alterem o histórico do repositório.
|
|
|
|
## Regra
|
|
|
|
A IA **NUNCA** deve executar os seguintes comandos (nem variações deles):
|
|
|
|
- `git commit`
|
|
- `git push`
|
|
- `git merge`
|
|
- `git rebase`
|
|
- `git tag`
|
|
- `git reset`
|
|
- `git revert`
|
|
- `git cherry-pick`
|
|
- `git stash drop`
|
|
- `git branch -d` / `git branch -D`
|
|
|
|
### Comandos permitidos (somente leitura e staging)
|
|
|
|
- `git status` ✅
|
|
- `git diff` ✅
|
|
- `git log` ✅
|
|
- `git add` ✅ (preparar alterações para o usuário revisar)
|
|
- `git stash` / `git stash pop` ✅ (preservar trabalho temporário)
|
|
- `git branch` (listar) ✅
|
|
- `git ls-files` ✅
|
|
- `git show` ✅
|
|
|
|
## Exemplos
|
|
|
|
❌ **Errado** — commitar automaticamente:
|
|
```sh
|
|
git add -A && git commit -m "fix: corrigir bug"
|
|
```
|
|
|
|
❌ **Errado** — push automático:
|
|
```sh
|
|
git push origin main
|
|
```
|
|
|
|
✅ **Correto** — preparar e informar:
|
|
```sh
|
|
git add -A
|
|
git status
|
|
# Informar ao usuário: "Alterações staged. Revise e faça o commit quando estiver pronto."
|
|
```
|
|
|
|
✅ **Correto** — sugerir mensagem de commit:
|
|
```
|
|
Sugestão de commit:
|
|
git commit -m "feat: adicionar validação de schema no endpoint /usuarios"
|
|
```
|
|
|
|
## Impacto
|
|
|
|
- **Segurança:** o usuário mantém controle total sobre o que entra no histórico
|
|
- **Revisão:** toda alteração pode ser inspecionada antes de ser commitada
|
|
- **Reversibilidade:** evita commits acidentais que poluem o histórico
|
|
|
|
## Referências
|
|
|
|
- Princípio de autonomia controlada: a IA executa, o humano decide
|