61 lines
3.4 KiB
Markdown
61 lines
3.4 KiB
Markdown
Instruções para o GitHub Copilot
|
|
Este arquivo fornece instruções específicas para o GitHub Copilot ao trabalhar neste projeto. O objetivo é garantir a geração de código de alta qualidade, evitar erros comuns e otimizar o processo de resolução de problemas.
|
|
|
|
Contexto do Projeto
|
|
|
|
Objetivo: criar um sistema de gestão de advocacia completo.
|
|
|
|
|
|
Instruções Específicas
|
|
Banco de Dados:
|
|
* **NÃO RESETAR O BANCO DE DADOS EM HIPÓTESE ALGUMA.**
|
|
* Ao criar ou modificar scripts que interagem com o banco de dados, priorize a segurança e a integridade dos dados.
|
|
* Sempre use prepared statements ou consultas parametrizadas para evitar injeção de SQL.
|
|
* Antes de executar qualquer operação de escrita (INSERT, UPDATE, DELETE), verifique se os dados são válidos e se o usuário tem permissão para realizar a ação.
|
|
* Ao criar novas tabelas ou colunas, defina tipos de dados apropriados e restrições de integridade (NOT NULL, UNIQUE, etc.).
|
|
* Sempre faça backup do banco de dados antes de realizar alterações estruturais significativas.
|
|
Prevenção de Erros:
|
|
* Priorize a prevenção de erros durante a geração de código.
|
|
* Implemente tratamento de erros robusto em todas as funções e rotas.
|
|
* Use validação de dados para garantir que os dados de entrada estejam no formato correto.
|
|
* Sempre verifique se as variáveis estão definidas antes de usá-las.
|
|
* Evite o uso de "magic numbers" ou strings literais diretamente no código. Em vez disso, use constantes ou variáveis com nomes significativos.
|
|
* Use linting e formatação de código para garantir a consistência e legibilidade do código.
|
|
Resolução de Problemas:
|
|
* Ao resolver problemas, foque unicamente na solução do problema em questão.
|
|
* Evite criar novos problemas ou efeitos colaterais indesejados.
|
|
* Antes de implementar uma solução, analise cuidadosamente o problema e suas possíveis causas.
|
|
* Use debuggers e logs para identificar a causa raiz do problema.
|
|
* Teste a solução em um ambiente de desenvolvimento antes de aplicá-la em produção.
|
|
* Documente a solução e as lições aprendidas para evitar que o problema ocorra novamente.
|
|
Segurança:
|
|
* Sempre sanitize os dados de entrada para evitar ataques de injeção (SQL, XSS, etc.).
|
|
* Use criptografia para proteger dados confidenciais (senhas, chaves de API, etc.).
|
|
* Implemente autenticação e autorização adequadas para proteger as rotas e recursos da API.
|
|
* Mantenha as dependências atualizadas para corrigir vulnerabilidades de segurança.
|
|
* Siga as práticas recomendadas de segurança para Node.js e PostgreSQL.
|
|
Exemplos
|
|
Exemplo de Comentário:
|
|
javascript
|
|
Copiar
|
|
|
|
// Função para criar um novo usuário no banco de dados.
|
|
// Certifique-se de validar os dados antes de inserir no banco.
|
|
async function createUser(userData) {
|
|
// ...
|
|
}
|
|
Exemplo de Tratamento de Erro:
|
|
javascript
|
|
Copiar
|
|
|
|
try {
|
|
const result = await db.query('SELECT * FROM users WHERE id = $1', [userId]);
|
|
return result.rows[0];
|
|
} catch (error) {
|
|
console.error('Erro ao buscar usuário:', error);
|
|
throw new Error('Falha ao buscar usuário.');
|
|
}
|
|
Notas Adicionais
|
|
Este arquivo será atualizado conforme necessário para refletir as necessidades e os desafios do projeto.
|
|
Por favor, consulte este arquivo regularmente para garantir que você esteja seguindo as diretrizes mais recentes.
|
|
Se você tiver alguma dúvida ou sugestão, entre em contato com [seu nome/equipe]. |