sistema-de-chamados/docs/archive/status-2025-10-16.md
2025-11-05 20:49:19 -03:00

4.7 KiB

Status do Projeto — 16/10/2025 (Arquivo)

Documento de referência sobre o estado atual do sistema (web + desktop), melhorias recentes e pontos de atenção.

1. Panorama

  • Web (Next.js 15 + Convex): build limpo (bun run build:bun), lint sem avisos e testes estáveis (Vitest em modo não interativo).
  • Desktop (Tauri): fluxo de provisionamento e heartbeat operacional; inventário consolidado com coleta multi-plataforma; atualizações OTA suportadas.
  • CI: workflow Quality Checks roda lint/test/build em todo push/PR na main; pipeline de deploy (ci-cd-web-desktop.yml) permanece responsável por sincronizar com a VPS.
  • Infra: deploy documentado no runbook (Swarm com symlink sistema.current). Migrações Prisma e variáveis críticas mapeadas.

2. Melhorias concluídas em 16/10/2025

Item Descrição Impacto
Centralização Convex Helpers createConvexClient e normalização do cookie da dispositivo (src/server/convex-client.ts, src/server/machines/context.ts). Código das rotas /api/machines/* ficou mais enxuto e resiliente a erros de configuração.
Auth/Login redirect Redirecionamento baseado em role/persona sem uso de any, com dependências explícitas (src/app/login/login-page-client.tsx). Evita warnings de hooks e garante rota correta para dispositivos/colaboradores.
Ticket header Sincronização do responsável com dependências completas (ticket-summary-header.tsx). Removeu warning do lint e previne estados inconsistentes.
Upgrade para Next.js 16 beta Dependências atualizadas (next@16.0.0-beta.0, eslint-config-next@16.0.0-beta.0), cache de filesystem do Turbopack habilitado, scripts de lint/test/build ajustados ao novo fluxo. Projeto pronto para validar as novidades do Next 16 (React Compiler opcional, prefetch incremental, etc.); builds e testes já rodando com sucesso.
Posture / inventário Type guards e normalização de métricas SMART/serviços (convex/machines.ts). Reduziu any, melhorou detecção de alertas e consistência do metadata.
Docs Revisão completa de docs/DEV.md, novo STATUS-2025-10-16.md, estrutura uniforme e casos de erro registrados. Documentação enxuta e atualizada, com trilhas claras para DEV/CI/Deploy.
Testes no CI Novo workflow .github/workflows/quality-checks.yml e script bun test em modo não-interativo. Previne “travamentos” e garante checagens de qualidade automáticas.

3. Pontos de atenção (curto prazo)

  • Migrações Prisma em produção: qualquer mudança requer executar no volume sistema_sistema_db (ver docs/DEPLOY-RUNBOOK.md). Atenção para evitar regressões P3009.
  • Atualização dos artefatos Tauri: releases exigem latest.json atualizado e assinatura (*.sig). Automação via GitHub Actions já preparada, mas depende de manter as chaves seguras.
  • Seeds Better Auth: se novos perfis/roles forem adicionados, atualizar scripts/seed-auth.mjs e o seed do Convex.
  • Variáveis críticas: NEXT_PUBLIC_APP_URL, BETTER_AUTH_URL, MACHINE_PROVISIONING_SECRET e NEXT_PUBLIC_CONVEX_URL devem ser válidas no stack — qualquer alteração de domínio implica revisar .env e stack.yml.

4. Backlog recomendado

  1. Testes end-to-end: cobrir fluxo de provisionamento (desktop ↔ API) com smoke automatizado (pode rodar condicional no CI).
  2. Autenticação agnóstica: avaliar suporte para Clerk/Auth0 conforme docs do Convex (custom JWTs).
  3. Observabilidade: adicionar métricas/alertas para heartbeats em atraso (Convex + dashboards).
  4. Documentação do Desktop Installer: guias por SO sobre instalação/assinatura e troubleshooting do updater.

5. Casos de erro conhecidos

Cenário Sintoma Como resolver
Token de dispositivo revogado POST /api/machines/sessions retorna 401 e desktop volta ao onboarding Reprovisionar pela UI do agente; garantir que machineToken foi atualizado.
Falha de heartbeat Logs com Falha ao registrar heartbeat + status 500 Verificar NEXT_PUBLIC_CONVEX_URL e conectividade. Rode bun run convex:dev:bun em DEV para confirmar schema.
Updater sem atualização Desktop fica em “Procurando atualização” indefinidamente Confirmar release publicado com latest.json apontando para URLs públicas do bundle e assinaturas válidas.

6. Próximos passos imediatos

  • Monitorar execução do novo workflow de qualidade em PRs.
  • Garantir que a equipe esteja ciente do procedimento atualizado de deploy (symlink + service update).
  • Revisar backlog acima e priorizar smoke tests para o fluxo da dispositivo.

Última atualização: 16/10/2025 (UTC-3).