Commit graph

76 commits

Author SHA1 Message Date
codex-bot
e6c841383e fix(mentions): search numeric references directly in DB and avoid Tiptap duplicate 'link' extension by configuring link via StarterKit 2025-10-23 10:17:24 -03:00
Esdras Renan
b0f57009ac feat: link tickets in comments and align admin sidebars 2025-10-23 00:46:50 -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
67df0d4308 Rename menus: 'Acessos', 'Filas', 'Produtividade'; add agent productivity section with bar chart; adjust CSV label; update channels page title 2025-10-21 13:17:41 -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
codex-bot
5535ba81e6 feat: status + queue updates, filters e UI
- Status renomeados e cores (Em andamento azul, Pausado amarelo)
- Transições automáticas: iniciar=Em andamento, pausar=Pausado
- Fila padrão: Chamados ao criar ticket
- Admin/Empresas: renomeia ‘Slug’ → ‘Apelido’ + mensagens
- Dashboard: últimos tickets priorizam sem responsável (mais antigos)
- Tickets: filtro por responsável + salvar filtro por usuário
- Encerrar ticket: adiciona botão ‘Cancelar’
- Strings atualizadas (PDF, relatórios, badges)
2025-10-20 14:57:22 -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
422cba2b83 fix: reuse sync helper on machines fallback 2025-10-18 21:26:53 -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
e5085962e9 Impede acesso ao portal para máquinas desativadas 2025-10-18 00:01:35 -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
1ce402cdd7 ajustes nos teste, adições e remoções 2025-10-16 19:29:52 -03:00
Esdras Renan
68ace0a858 refactor: quality workflow, docs, tests 2025-10-16 19:14:46 -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
91d53ba10a api: /api/machines/session em runtime nodejs para leitura estável de cookies 2025-10-16 16:10:23 -03:00
Esdras Renan
70fdd8deb8 fix: ajustes de provisioning e layout nas empresas 2025-10-15 23:49:19 -03:00
Esdras Renan
ce6c8fdb3a fix: layout de empresas e ajustes no fluxo de provisioning 2025-10-15 23:44:00 -03:00
Esdras Renan
444b910429 fix: refina layout das colunas de empresas e corrige leitura de cookies e provisioning 2025-10-15 23:39:46 -03:00
Esdras Renan
7668c478f1 fix: refina layout das colunas de empresas e corrige leitura de cookies e provisioning 2025-10-15 23:34:36 -03:00
Esdras Renan
2cba553efa Implement company provisioning codes and session tweaks 2025-10-15 20:45:25 -03:00
Esdras Renan
da339a767b Fix type: use third param type for cookies.set options 2025-10-14 21:37:09 -03:00
Esdras Renan
b703561a7e Set session cookies via NextResponse.cookies.set for reliability (handshake + sessions) 2025-10-14 21:33:11 -03:00
Esdras Renan
6754af769b Fix session cookie propagation; desktop creates session via POST before opening portal 2025-10-14 20:33:40 -03:00
Esdras Renan
32488d48ca Ajusta sessão de máquina para vincular colaborador do metadata 2025-10-13 22:01:33 -03:00
Esdras Renan
92ec006c09 Garante vínculo do colaborador mesmo sem persona inicial 2025-10-13 20:36:58 -03:00
Esdras Renan
974f8954e9 Refresca contexto após vincular colaborador 2025-10-13 20:10:25 -03:00
Esdras Renan
6a9759e12f Tipa chamada ao ensureUser na sessão de máquina 2025-10-13 19:43:23 -03:00
Esdras Renan
2f47c40894 Garante typing ao associar usuário de máquina 2025-10-13 19:32:10 -03:00
Esdras Renan
ba0dcddefb Ajusta portal e desktop para máquina vinculada 2025-10-13 19:20:16 -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
11efad0312 Fix company search filters and build regressions 2025-10-13 14:18:57 -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