Commit graph

51 commits

Author SHA1 Message Date
Esdras Renan
1079111de2 chore: update docs and configs 2025-11-05 20:49:19 -03:00
codex-bot
e0ef66555d feat: dispositivos e ajustes de csat e relatórios 2025-11-03 19:29:50 -03:00
codex-bot
25d2a9b062 feat: add agent reset flow and document machine handover 2025-11-03 15:16:34 -03:00
codex-bot
38b46f32ce feat: improve machines inventory exports 2025-10-30 16:09:06 -03:00
Esdras Renan
192a5c2909 feat: melhorar gerenciamento de acesso remoto de máquinas 2025-10-28 11:45:16 -03:00
Esdras Renan
714b199879 feat: export reports as xlsx and add machine inventory 2025-10-27 18:00:28 -03:00
Esdras Renan
f3a7045691 feat: cadastro manual de acesso remoto e ajustes de horas 2025-10-24 23:52:58 -03:00
Esdras Renan
37c32149a6 feat: improve requester combobox and admin cleanup flows 2025-10-24 00:45:41 -03:00
Esdras Renan
55316e51c6 fix(machines): ensure machine details probe resolves 2025-10-22 20:49:43 -03:00
Esdras Renan
c640e288b1 chore(types): remove anys and harden Convex data fetch
- Strongly type company-service and API routes
- Fix Next.js searchParams (promise) in admin/machines page
- Add vitest module marker + stub for tsconfig-paths/register
- Use Convex query in client as primary fallback for machine details
- Replace any casts in admin machines components

Build + lint are clean locally; details page no longer skeleton-loops.
2025-10-22 19:19:38 -03:00
Esdras Renan
eee0f432e7 chore: document and stabilize vitest browser setup 2025-10-22 17:19:12 -03:00
codex-bot
a18536dd5f fix(api): Next.js 16 route handler types — params is Promise in context
- Update GET signature to (req: NextRequest, ctx: { params: Promise<{id:string}> })
- Await ctx.params and pass id to Convex client
- Keeps NextResponse return type
2025-10-22 09:46:50 -03:00
codex-bot
4cfbd22cf2 admin(machines): add resilient fallback for details page
- Keep Convex useQuery for machines.getById
- Add HTTP fallback via /api/admin/machines/[id]/details if query stays loading (>1.2s)
- Helps when websocket/convex-react doesn’t initialize and avoids permanent skeleton
2025-10-22 09:39:51 -03:00
codex-bot
49173cdf69 fix(machines): guard Convex getById calls with 'skip' when missing id to avoid ArgumentValidationError; add unit test for getById metadata; fix build by loosening Prisma types in company service 2025-10-22 08:47:55 -03:00
Esdras Renan
dad84d7d0e refactor: align routes with next 16 and local fonts 2025-10-22 02:08:18 -03:00
Esdras Renan
2e3b46a7b5 feat: expand admin companies and users modules 2025-10-22 01:27:43 -03:00
codex-bot
dbb8d7fa63 feat(alerts): format hours in admin alert emails using minutes when <1h; minor null-safe for contracted/month 2025-10-21 15:20:05 -03:00
codex-bot
22f0768492 Phase 2: multi-user links for machines (Convex schema + mutations + admin API); UI to add/remove links; user editor lists machines via linkedUsers 2025-10-21 11:06:21 -03:00
Esdras Renan
216feca971 feat(tickets): preserve requester/assignee/company snapshots + timeline fallbacks; chore: add requester index\n\n- Add requesterSnapshot, assigneeSnapshot, companySnapshot to tickets\n- Use snapshots as fallback in list/get/play\n- Update snapshots on assignee changes/startWork\n- Preserve snapshots before deleting users/companies\n- Add index tickets.by_tenant_requester\n- Add migrations.backfillTicketSnapshots\n\nchore(convex): upgrade to ^1.28.0 and run codegen\nchore(next): upgrade Next.js to 15.5.6 and update React/eslint-config-next\nfix: remove any and lint warnings; tighten types across API routes and components\ndocs: add docs/ticket-snapshots.md 2025-10-20 10:13:37 -03:00
Esdras Renan
515d1718a6 fix: allow removing orphaned machine agents 2025-10-19 15:36:00 -03:00
Esdras Renan
7a3eca9361 feat: sync convex companies and dashboard metrics 2025-10-18 21:14:01 -03:00
Esdras Renan
a69d37a672 feat: refine admin access management 2025-10-18 01:32:19 -03:00
Esdras Renan
630110bf3a Atualiza portal e admin com bloqueio de máquinas desativadas 2025-10-18 00:02:15 -03:00
Esdras Renan
7951bc25a3 feat: allow company deletion by detaching dependents 2025-10-16 22:28:12 -03:00
Esdras Renan
91d0608838 fix: align next config with next 15.5.5 2025-10-16 21:39:43 -03:00
Esdras Renan
a9caf36b01 admin/companies: evitar 500 ao excluir — pré-checar vínculos (users/tickets) e retornar 409 com detalhes 2025-10-16 17:40:39 -03:00
Esdras Renan
f60a48e7b3 admin/companies: melhorar criação/edição\n\n- Aceita isAvulso e contractedHoursPerMonth no POST\n- Retorna 409 para duplicidade (slug/provisioningCode)\n- Retorna 409 para duplicidade no PATCH 2025-10-16 17:29:08 -03:00
Esdras Renan
2cba553efa Implement company provisioning codes and session tweaks 2025-10-15 20:45:25 -03:00
Esdras Renan
cf31158a9e Allow staff access to admin UI with scoped permissions 2025-10-13 16:30:52 -03:00
Esdras Renan
4d8b9a0e39 Harden machine deletion via Convex API 2025-10-13 15:53:07 -03:00
Esdras Renan
17f9f00343 Add company management editing and deletion 2025-10-13 15:23:53 -03:00
Esdras Renan
b60f27b2dc Auto-expire revoked invites and allow reactivation 2025-10-13 15:17:11 -03:00
Esdras Renan
05f5af5ba6 Enable admin user removals and invitation UX polish 2025-10-13 15:08:51 -03:00
Esdras Renan
a8abb68e36 Fix domain user role typing 2025-10-13 14:03:55 -03:00
Esdras Renan
4f812a2e4c Fix GPU inventory typing and user role mapping 2025-10-13 13:59:48 -03:00
Esdras Renan
42611df0f5 fix: improve admin machine details and role gating 2025-10-13 13:32:50 -03:00
Esdras Renan
076c0df7f9 fix: adjust admin user routes and sidebar deps 2025-10-13 11:59:09 -03:00
Esdras Renan
ecad81b0ea feat: overhaul admin user management and desktop UX 2025-10-13 10:36:38 -03:00
Esdras Renan
b5fd920efd docs: registrar fluxo do updater e atualizar chaves 2025-10-12 04:06:29 -03:00
Esdras Renan
3f0702d80b feat: melhorar inventário e gestão de máquinas 2025-10-10 23:20:21 -03:00
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
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
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
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
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
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
c15f0a5b09 feat: enhance tickets portal and admin flows 2025-10-07 02:26:09 -03:00