Merge remote-tracking branch 'origin' into feat-pedidos

This commit is contained in:
2025-12-11 10:08:12 -03:00
194 changed files with 30374 additions and 10247 deletions

View File

@@ -164,6 +164,7 @@ export const systemTables = {
severidadeMin: severidadeSeguranca,
tiposAtaque: v.optional(v.array(ataqueCiberneticoTipo)),
reenvioMin: v.number(),
templateCodigo: v.optional(v.string()), // Template a ser usado para email/chat
criadoPor: v.id('usuarios'),
criadoEm: v.number(),
atualizadoEm: v.number()
@@ -222,5 +223,24 @@ export const systemTables = {
sshUsername: v.optional(v.string()), // Usuário SSH para acesso ao servidor
sshPasswordHash: v.optional(v.string()), // Hash da senha SSH (criptografada)
sshPort: v.optional(v.number()) // Porta SSH (padrão: 22)
}).index('by_ativo', ['ativo'])
}).index('by_ativo', ['ativo']),
// Logs de Erros do Servidor (500, etc)
errosServidor: defineTable({
statusCode: v.number(), // Código HTTP do erro (500, 502, etc)
mensagem: v.string(), // Mensagem do erro
stack: v.optional(v.string()), // Stack trace do erro
url: v.optional(v.string()), // URL onde ocorreu o erro
method: v.optional(v.string()), // Método HTTP (GET, POST, etc)
ipAddress: v.optional(v.string()), // IP do cliente
userAgent: v.optional(v.string()), // User agent do navegador
usuarioId: v.optional(v.id('usuarios')), // Usuário autenticado (se houver)
notificado: v.boolean(), // Se a equipe técnica já foi notificada
notificadoEm: v.optional(v.number()), // Timestamp da notificação
criadoEm: v.number() // Timestamp do erro
})
.index('by_status_code', ['statusCode'])
.index('by_notificado', ['notificado'])
.index('by_criado_em', ['criadoEm'])
.index('by_usuario', ['usuarioId'])
};