Sistema web para validar se a documentação entregue por um desenvolvedor está alinhada com uma issue do GitHub, com análise automática de IA, percentual de aderência, resposta sugerida para correção e estimativa de custo por requisição.
Este projeto foi feito para contexto institucional/acadêmico, onde existe necessidade de:
- comparar rapidamente o que foi documentado com o que foi solicitado;
- reduzir subjetividade na avaliação técnica;
- padronizar feedback com um texto de correção copiável;
- acompanhar custo de uso de IA por análise.
Ele funciona com armazenamento local/temporário no navegador para os pontos de atenção, sem banco de dados.
Use este app quando você precisa revisar entregas de documentação técnica baseadas em issues, por exemplo:
- avaliação de atividades em disciplinas de desenvolvimento;
- revisão de entregas em squads acadêmicas;
- validação rápida de conformidade entre escopo e documentação;
- apoio a QA técnico com checklist customizável.
- O repositório é definido no
front/env.js(GITHUB_REPO_URL). - O front lista issues desse repo com filtros (abertas/fechadas/todas) e busca.
- Você seleciona uma issue e envia um arquivo
.txtou.pdf. - O backend extrai texto (inclusive de PDF), reduz custo com chunk+sumário quando necessário e chama IA.
- O app retorna:
- percentual de aderência;
- classificação da documentação;
- análise textual;
- resposta sugerida para copiar e colar;
- tokens usados e custo estimado em reais.
verificadorDeTask/
app.js # Ponto único de execução
package.json
.env.example # Variáveis do backend
front/
index.html
style.css
script.js
env.example.js # Exemplo de config do front
env.js # Config real do front (gitignored)
back/
server.js # API + servidor estático
- Node.js 18+ (recomendado 20+)
- chave de API (OpenAI e/ou Gemini)
Copie .env.example para .env e preencha:
OPENAI_API_KEY(obrigatório para OpenAI)OPENAI_MODEL(padrão econômico:gpt-4.1-nano)OPENAI_FALLBACK_MODEL(ex.:gpt-4.1-mini)USD_TO_BRL(câmbio para estimativa de custo)OPENAI_ENABLE_BATCH(true/falsepara análises não urgentes)
Copie front/env.example.js para front/env.js e ajuste:
GITHUB_REPO_URL(endpoint da API de issues do repo)GITHUB_TOKEN(opcional, mas recomendado para evitar limite)TRAINED_PROMPT(prompt institucional)OPENAI_NON_URGENT(trueativa envio para Batch API)
npm install
npm startAbra no navegador:
http://localhost:3000
- modelo padrão barato (
gpt-4.1-nano); - fallback para
gpt-4.1-miniquando resposta incerta; - extração de texto de PDF no backend (evita mandar base64 bruto para IA);
- redução de tokens por chunk + resumo;
- limite de tamanho de documento processado;
- limite de
max_tokensde saída; - resposta JSON estrita e curta;
- cache de prompts no backend;
- suporte a Batch API para análises não urgentes.
POST /api/analyze- realiza análise e retorna conteúdo + métricas
GET /api/batch-status?batchId=...- consulta status/resultado de batch
- O custo em reais é estimado, não é faturamento oficial.
- A precisão do preço depende do câmbio (
USD_TO_BRL) e da tabela de preços usada. - Pontos de atenção são temporários (sessionStorage do navegador).
- Não há persistência em banco por design (projeto simples de verificação).