Commit graph

449 commits

Author SHA1 Message Date
Esdras Renan
b5fbf69cc1 refactor(admin/machines): remove all any casts; add typed helpers for metrics/Windows WMI; implement server route for rename to avoid client any; keep strict types 2025-10-10 10:30:57 -03:00
Esdras Renan
129407dbce feat(admin/machines): company search input with suggestions; rename machine dialog using Convex mutation; improve CPU name rendering and Defender booleans; add pulsating online indicator on cards and detail 2025-10-10 10:26:35 -03:00
Esdras Renan
124bb2a26f feat(admin/machines): redesign overview as cards grid with status dot and metrics; add machine detail page (/admin/machines/[id]) reusing existing detail panel 2025-10-10 10:17:59 -03:00
Esdras Renan
5851bfe366 fix(dev): add missing convexUserId from useAuth in AppSidebar debug panel 2025-10-10 10:08:47 -03:00
Esdras Renan
7b768735ea chore(dev): show session role, convexUserId and Convex URL in sidebar footer to debug empty data in local dev 2025-10-10 10:06:46 -03:00
Esdras Renan
4f03433afe chore(admin): in dev require only authenticated session for /admin to simplify local testing; prod still requires admin 2025-10-10 10:02:50 -03:00
Esdras Renan
2877f22dfb chore(auth): add trustedOrigins to allow localhost in dev without impacting production 2025-10-10 09:46:45 -03:00
Esdras Renan
ab820ddeca fix(web): gate staff-only Convex queries to avoid RBAC errors on dashboard and tickets; docs: add desktop agent history and troubleshooting 2025-10-10 01:11:03 -03:00
Esdras Renan
c70691bce8 feat(admin): Windows hardware cards (CPU/RAM/GPU/Disks) with Lucide icons; feat(desktop): inventory summary cards; feat(agent/windows): extended hardware collectors (CPU/board/BIOS/memory/video/disks); fix(agent): memory units in bytes 2025-10-10 00:01:23 -03:00
Esdras Renan
c0228c0dad docs(todo): add TODOs for Prisma client/type sync and desktop TS notes; remove unused vars in companies create route 2025-10-09 23:05:11 -03:00
Esdras Renan
b801ebd44f fix(build): adjust create company payload to known Prisma fields; locally suppress single any cast for update due to out-of-sync Prisma types 2025-10-09 23:02:56 -03:00
Esdras Renan
2272c2a10e fix(types): avoid Prisma CompanyUpdateInput strict typing due to out-of-sync generated types; use generic updates map and cast at call site 2025-10-09 23:00:51 -03:00
Esdras Renan
b4bc01bc7e fix(types): guard prisma Company fields (isAvulso, contractedHoursPerMonth) with optional casting to accommodate outdated generated types; keep TS strict without any 2025-10-09 22:58:24 -03:00
Esdras Renan
6d69fcfa3c chore(types): fix tsconfig to exclude desktop from Next TS check; remove unused vars and fix hook deps; clean up remaining lint warnings 2025-10-09 22:52:02 -03:00
Esdras Renan
6ffd6c6392 chore(types): remove explicit any, fix hook deps, and unused vars across admin/api/tickets; tighten zod server schemas; adjust UI types; fix pdf export expression; minor cleanup 2025-10-09 22:43:39 -03:00
Esdras Renan
0556502685 feat(admin/ui): filters + badges + full inventory dialog with search; CSV export; types tightened; feat(desktop): charts in diagnostics and heartbeat interval settings; feat(agent): normalized software/services; linux lspci/lsusb parsed 2025-10-09 22:29:59 -03:00
Esdras Renan
479c66d52c feat(desktop-agent,admin/inventory): secure token storage via keyring; extended inventory collectors per OS; new /api/machines/inventory endpoint; posture rules + tickets; Admin UI inventory with filters, search and export; docs + CI desktop release 2025-10-09 22:08:20 -03:00
Esdras Renan
c2050f311a chore: sincroniza alterações locais 2025-10-09 20:38:53 -03:00
Esdras Renan
d9ab863e76 feat(api): incluir detalhes de erro em /api/machines/register e /api/machines/heartbeat (facilita diagnostico em PROD) 2025-10-09 19:04:09 -03:00
Esdras Renan
d031acf7b8 fix(prisma): garantir DATABASE_URL efetivo no runtime\n\n- Força resolução do DATABASE_URL ao instanciar PrismaClient com fallback seguro em produção para file:/app/data/db.sqlite.\n- Evita falha "Error code 14: Unable to open the database file" quando o runtime cai em path relativo do .env dentro do container.\n- Compatível com stack.yml (volume sistema_db montado em /app/data). 2025-10-09 16:23:04 -03:00
Esdras Renan
c4e42ab49c fix(convex): normalizar campos opcionais ao criar sessão 2025-10-09 00:53:29 -03:00
Esdras Renan
152550a9a0 feat: habilitar provisionamento desktop e rotas CORS 2025-10-08 23:07:59 -03:00
Esdras Renan
22848b0708 Increase spacing for tickets table columns 2025-10-08 00:15:36 -03:00
Esdras Renan
8d515d118c Adjust tickets table spacing and company truncation 2025-10-08 00:14:22 -03:00
Esdras Renan
51b38eb608 Fix header actions layout on mobile 2025-10-08 00:10:52 -03:00
Esdras Renan
b880aa3ea6 Refina métricas de tempo e filtros de alertas 2025-10-07 23:10:16 -03:00
Esdras Renan
ef25cbe799 Ajusta timeline, comentários internos e contadores de trabalho 2025-10-07 22:12:18 -03:00
Esdras Renan
ee18619519 feat: adicionar painel de máquinas e autenticação por agente 2025-10-07 21:37:41 -03:00
Esdras Renan
e2a5b560b1 views: substituir CSAT pizza por pizza de prioridade do backlog (com LabelList, tooltip, filtros de empresa e período) 2025-10-07 17:51:12 -03:00
Esdras Renan
88b65c3e15 views: criar página /views com gráficos (Canais movido do dashboard, CSAT distribuição, Filas abertas); dashboard: trocar por gráfico Abertos x Resolvidos (últimos 7/30/90 dias); reports: nova query openedResolvedByDay 2025-10-07 17:28:01 -03:00
Esdras Renan
3814203de3 fix(dashboard): remover next/dynamic com ssr:false em Server Component; usar NewTicketDialogDeferred (client) como ação primária 2025-10-07 16:57:59 -03:00
Esdras Renan
9a65d935ce sidebar: remover item 'Configurações' do menu (redundante). Acesso a /settings fica apenas via menu do usuário ('Meu perfil'); docs atualizados no agents.md 2025-10-07 16:56:50 -03:00
Esdras Renan
d2c1913221 dashboard: substituir 'Abrir ticket' por botão 'Novo ticket' com modal (mesmo layout e funcionalidade da tela de tickets) 2025-10-07 16:53:24 -03:00
Esdras Renan
384d4411b6 reports(SLA): aplica filtro de período (7d/30d/90d) no Convex e inclui período no filename do CSV; admin(alerts): filtros no servidor; alerts: batch de últimos alertas por slugs; filtros persistentes de empresa (localStorage) em relatórios; prisma: Company.contractedHoursPerMonth; smtp: suporte a múltiplos destinatários e timeout opcional 2025-10-07 16:46:52 -03:00
Esdras Renan
a23b429e4d ui(reports): padroniza headers de CSAT e SLA com wrapper flex e adiciona seletor de período (7d/30d/90d); links de CSV passam range e companyId 2025-10-07 16:33:22 -03:00
Esdras Renan
13eb53c3cf ui(admin/alerts): envolver página com AppShell + SiteHeader e mover lógica para AdminAlertsManager (client); docs: agents.md reforça uso do wrapper em páginas administrativas 2025-10-07 16:25:37 -03:00
Esdras Renan
3ab0d24ab2 ui(backlog): melhor espaçamento no header (empresa, período, exportar CSV) com wrapper flex responsivo 2025-10-07 16:21:29 -03:00
Esdras Renan
037970d52b chore: update SMTP module and tests; remove unused assets 2025-10-07 16:15:46 -03:00
Esdras Renan
81fd572e48 SMTP: extend env parsing (domain/auth/starttls); add unit test with mocked TLS for sendSmtpMail; extend SmtpConfig; docs to set .env locally 2025-10-07 16:01:56 -03:00
Esdras Renan
9c8a43a6b1 Hours report: add company filter (select) and CSV support via companyId; include filter metadata in file name 2025-10-07 15:42:35 -03:00
Esdras Renan
08cc8037d5 Hours by client: add search and CSV filtering; add alerts cron (BRT 08:00 guard) + alerts panel filters; admin companies shows last alert; PDF Inter font from public/fonts; fix Select empty value; type cleanups; tests for CSV/TZ; remove Knowledge Base nav 2025-10-07 15:39:55 -03:00
Esdras Renan
2cf399dcb1 feat(filters): ticket company filter + column; reports: company filter in CSVs; dashboard: queue summary; docs: agents.md and roadmap updates 2025-10-07 14:18:59 -03:00
Esdras Renan
70f91f5bbd feat(reports): hours by client (CSV + UI), company contracted hours, UI to manage companies; adjust ticket list spacing 2025-10-07 14:04:36 -03:00
Esdras Renan
3bafcc5a0a feat: CSV exports, PDF improvements, play internal/external with hour split, roles cleanup, admin companies with 'Cliente avulso', ticket list spacing/alignment fixes, status translations and mappings 2025-10-07 13:42:45 -03:00
Esdras Renan
addd4ce6e8 fix(build): ajustar tipagem de params (Next 15) e corrigir default de TicketStatus no Prisma\n\n- invite/[token]: usar params como Promise e aguardar token\n- portal/tickets/[id]: usar params como Promise e aguardar id\n- prisma: alterar @default(NEW) -> @default(PENDING) para gerar client\n\nValidações:\n- pnpm build ok\n- pnpm lint ok\n- vitest ok (2 arquivos)\n\nDiretrizes: manter tipagens compatíveis com App Router e schemas do projeto conforme agents.md 2025-10-07 09:48:15 -03:00
Esdras Renan
c15f0a5b09 feat: enhance tickets portal and admin flows 2025-10-07 02:26:09 -03:00
Esdras Renan
9cdd8763b4 Await dynamic APIs in auth server helpers 2025-10-07 00:03:42 -03:00
Esdras Renan
e491becbc4 Fix attachment previews and comment permissions 2025-10-06 23:41:03 -03:00
Esdras Renan
1cccb852a5 chore: reorganize project structure and ensure default queues 2025-10-06 22:59:35 -03:00