From f91200ed529e0fd382daaa431305f6b9f16a28e5 Mon Sep 17 00:00:00 2001 From: Luiz Silva Date: Tue, 11 Aug 2026 11:04:35 -0300 Subject: [PATCH] query-ia --- rules/consultar-banco-query-ia.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/rules/consultar-banco-query-ia.md b/rules/consultar-banco-query-ia.md index fa9b840..5d02396 100644 --- a/rules/consultar-banco-query-ia.md +++ b/rules/consultar-banco-query-ia.md @@ -19,13 +19,14 @@ Essa rota é exclusiva para desenvolvimento e **nunca deve ser usada em produç ## Rota ``` -GET http://127.0.0.1:/query-ia → retorna documentação da rota (texto plano) -POST http://127.0.0.1:/query-ia → executa consulta SQL e retorna JSON +GET http://127.0.0.1://query-ia → retorna documentação da rota (texto plano) +POST http://127.0.0.1://query-ia → executa consulta SQL e retorna JSON ``` -> **`` é subjetiva** — cada módulo do ecossistema usa uma porta diferente. Antes de usar a rota, descobrir a porta correta do projeto atual: -> - Verificar `package.json` do `*-back` (campo `scripts.dev` ou `scripts.start`) -> - Ou verificar a variável `PORT` no `.env` do módulo +> **`` e `` são definidos por módulo** — cada módulo do ecossistema usa uma porta e prefixo de rota específicos (ex: `http://127.0.0.1:5260/qualifica/query-ia`). Antes de usar a rota: +> - O acesso **GET** retorna a documentação do endpoint. +> - O acesso **POST** executa a consulta SQL e retorna os dados em JSON. +> - Verificar `package.json` do `*-back` (campo `scripts.dev` ou `scripts.start`) ou o arquivo `.env` do módulo. ## Como usar @@ -36,13 +37,13 @@ POST http://127.0.0.1:/query-ia → executa consulta SQL e retorna cat package.json | jq '.scripts.dev' # Consultar a documentação da rota (substitua pela porta real) -curl http://127.0.0.1:/query-ia +curl http://127.0.0.1://query-ia ``` ### Executar uma consulta SQL ```bash -curl -s -X POST http://127.0.0.1:/query-ia \ +curl -s -X POST http://127.0.0.1://query-ia \ -H 'Content-Type: application/json' \ -d '{ "sql": "SELECT * FROM empresas LIMIT 10", @@ -53,7 +54,7 @@ curl -s -X POST http://127.0.0.1:/query-ia \ ### Consulta com parâmetros (binding seguro) ```bash -curl -s -X POST http://127.0.0.1:/query-ia \ +curl -s -X POST http://127.0.0.1://query-ia \ -H 'Content-Type: application/json' \ -d '{ "sql": "SELECT * FROM avaliacoes WHERE empresa_id = ? AND status = ?", @@ -107,7 +108,7 @@ O agente **NUNCA** deve: ### ✅ Correto — inspecionar registros via query-ia ```bash -curl -s -X POST http://127.0.0.1:/query-ia \ +curl -s -X POST http://127.0.0.1://query-ia \ -d '{"sql": "SELECT codigo, nome, status FROM empresas ORDER BY criado_em DESC LIMIT 20"}' \ -H 'Content-Type: application/json' | jq '.rows' ``` @@ -115,7 +116,7 @@ curl -s -X POST http://127.0.0.1:/query-ia \ ### ✅ Correto — verificar schemas PostgreSQL disponíveis ```bash -curl -s -X POST http://127.0.0.1:/query-ia \ +curl -s -X POST http://127.0.0.1://query-ia \ -d '{"sql": "SELECT schema_name FROM information_schema.schemata ORDER BY schema_name"}' \ -H 'Content-Type: application/json' | jq '.rows' ``` @@ -123,7 +124,7 @@ curl -s -X POST http://127.0.0.1:/query-ia \ ### ✅ Correto — contar registros por inquilino ```bash -curl -s -X POST http://127.0.0.1:/query-ia \ +curl -s -X POST http://127.0.0.1://query-ia \ -d '{"sql": "SELECT inquilino, COUNT(*) as total FROM empresas GROUP BY inquilino"}' \ -H 'Content-Type: application/json' | jq '.rows' ``` @@ -132,7 +133,7 @@ curl -s -X POST http://127.0.0.1:/query-ia \ ```bash # Será bloqueado com status 400 -curl -X POST http://127.0.0.1:/query-ia \ +curl -X POST http://127.0.0.1://query-ia \ -d '{"sql": "UPDATE empresas SET status = ?", "parametros": ["ativo"]}'` ```