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
|
c9eaee7309
|
build(next): enforce Turbopack for build; docs: note Turbopack usage in ops guide
|
2025-10-09 22:56:30 -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
|
e682c6773a
|
fix(convex): use ctx.runMutation(api.tickets.create) instead of importing handler to satisfy types and build
|
2025-10-09 22:23:35 -03:00 |
|
Esdras Renan
|
335accb596
|
feat(desktop): tabs UI (Resumo/Inventário/Diagnóstico/Configurações) + enviar inventário agora; docs: admin inventory UI + release CI notes + roadmap
|
2025-10-09 22:22:24 -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
|
c3249e523d
|
ci: adicionar job manual de diagnostico do Convex (env set/list + teste de registro)
|
2025-10-09 19:48:04 -03:00 |
|
Esdras Renan
|
24e6d7eb38
|
ci(convex): executar 'env set' e 'deploy' sempre (sem if baseado em env)
|
2025-10-09 19:42:13 -03:00 |
|
Esdras Renan
|
78aaab7f70
|
ci(convex): definir envs via 'convex env set' lendo /srv/apps/sistema/.env antes do deploy
|
2025-10-09 19:41:39 -03:00 |
|
Esdras Renan
|
754aa039c5
|
ci(web): garantir envs do Convex via docker service update (MACHINE_PROVISIONING_SECRET/TTL/FLEET) e restart
|
2025-10-09 19:33:26 -03:00 |
|
Esdras Renan
|
ae529bd3a2
|
ci(web/convex): usar diretório de build único por run (sistema.build.1760048648) para evitar EACCES em node_modules
|
2025-10-09 19:24:08 -03:00 |
|
Esdras Renan
|
fa695de653
|
ci(web): workspace server-only no runner (remover apps/desktop e reduzir pnpm-workspace.yaml)\n\n- Evita EACCES em apps/desktop/node_modules no passo de install.\n- Mantém repo intacto; altera apenas o diretório efetivo usado pelo deploy.
|
2025-10-09 19:19:43 -03:00 |
|
Esdras Renan
|
6700bd9f15
|
ci(web): instalar apenas o pacote 'web' e apontar Convex via overlay (NEXT_PUBLIC_CONVEX_URL=http://sistema_convex_backend:3210)\n\n- Evita EACCES em apps/desktop/node_modules no runner.\n- Bypassa DNS/Traefik para chamadas servidor->Convex dentro da stack.
|
2025-10-09 19:16:10 -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
|
833adcd8fa
|
ci(convex): garantir que .env nao esteja presente e unset CONVEX_DEPLOYMENT no deploy\n\n- Sempre exclui .env* no rsync do job do Convex e renomeia .env se restar.\n- Exporta CI=true e faz unset de CONVEX_DEPLOYMENT dentro do container.\n- Evita conflito entre self-hosted (URL+ADMIN_KEY) e CONVEX_DEPLOYMENT.
|
2025-10-09 18:49:50 -03:00 |
|
Esdras Renan
|
2db7360c8b
|
ci(convex): corrigir 'secrets' em if de job e usar step-if com env\n\n- Job roda em push main / workflow_dispatch / mudanças em convex/**.\n- Step de deploy só executa se os secrets estiverem definidos.
|
2025-10-09 18:47:13 -03:00 |
|
Esdras Renan
|
0459637429
|
ci(convex): relaxar condicao de execucao\n\n- Roda em workflow_dispatch (sem input), em push na main se secrets presentes, ou quando convex/** mudar.\n- Evita 'job skipped' quando for necessario publicar as functions.
|
2025-10-09 18:42:55 -03:00 |
|
Esdras Renan
|
8e1575e2a5
|
ci: evitar rsync delete de .next.old* e forcar fallback no convex_deploy
|
2025-10-09 18:33:00 -03:00 |
|
Esdras Renan
|
d34fad394f
|
chore(convex): trigger functions deploy
|
2025-10-09 18:29:08 -03:00 |
|
Esdras Renan
|
51908ac14f
|
ci(web): limpar .next antes do build para evitar EACCES de builds anteriores
|
2025-10-09 18:02:26 -03:00 |
|
Esdras Renan
|
8efa574b76
|
ci(stack): carregar .env antes do docker stack deploy (envsubst)\n\n- Usa set -o allexport && source .env para popular MACHINE_PROVISIONING_SECRET e afins.\n- Garante substituicao de variaveis no stack.yml em producao.
|
2025-10-09 17:57:18 -03:00 |
|
Esdras Renan
|
82a71ea092
|
fix(stack): remover envs duplicadas em convex_backend (itens unicos no array)
|
2025-10-09 17:50:13 -03:00 |
|
Esdras Renan
|
54687ddb0f
|
chore(ci): trigger deploy apos rotacao do MACHINE_PROVISIONING_SECRET na VPS
|
2025-10-09 17:45:06 -03:00 |
|
Esdras Renan
|
0d2474b95e
|
stack(convex): injetar MACHINE_PROVISIONING_SECRET/TTL/FLEET no container convex_backend via .env\n\n- As functions do Convex leem estes envs em runtime.\n- O deploy usa docker stack + substituicao de variaveis via .env do diretório.
|
2025-10-09 17:40:19 -03:00 |
|
Esdras Renan
|
c672a0d2e4
|
ci: adicionar diagnostico de permissoes e usar EFFECTIVE_APP_DIR no build\n\n- Passo 'Permissions diagnostic' lista donos/permissoes e test de escrita.\n- Build roda em para evitar /srv bloqueado.
|
2025-10-09 17:10:34 -03:00 |
|
Esdras Renan
|
2e92b427a6
|
ci: forcar uso de APP_DIR no /home/renan e copiar .env de /srv se existir\n\n- Determina EFFECTIVE_APP_DIR sempre como /home/renan/apps/sistema (evita quaisquer pastas com perms quebradas).\n- Copia .env de /srv/apps/sistema quando presente para manter segredos corretos.
|
2025-10-09 17:02:51 -03:00 |
|
Esdras Renan
|
5ff93a354f
|
ci: copiar .env ao usar fallback de APP_DIR (HOME)\n\n- Evita excluir .env* quando copiando para o diretório alternativo.\n- Garante que o container tenha envs ao subir fora do /srv.
|
2025-10-09 16:59:18 -03:00 |
|
Esdras Renan
|
82c16533da
|
ci(stack): usar APP_DIR efetivo e fallback para pasta no /home/renan\n\n- Determina diretório gravável (fallback /home/renan/apps/sistema) e usa em rsync e stack deploy.\n- stack.yml aceita com default para /srv/apps/sistema.\n- Evita necessidade de sudo e problemas de permissão no /srv.
|
2025-10-09 16:58:17 -03:00 |
|
Esdras Renan
|
c99c9bfe78
|
ci: rsync resiliente a perms (no-times + inplace + sudo fallback)\n\n- Adiciona --no-times e --inplace para evitar settime/mkstemp.\n- Tenta rsync normal; se falhar por permissão, repete com sudo -n.\n- Mantém filtros e delete como antes.
|
2025-10-09 16:51:29 -03:00 |
|
Esdras Renan
|
de746890e7
|
ci: rodar deploy sempre em push na main (sem depender do filtro)\n\n- Mantém workflow_dispatch, mas simplifica condicional do job web.\n- Evita ficar preso apenas no job de 'Detect changes'.
|
2025-10-09 16:41:06 -03:00 |
|
Esdras Renan
|
44779f54a5
|
docs: documentar seed automatico e variavel SEED_ENSURE_ONLY\n\n- .env.example: adiciona SEED_ENSURE_ONLY=true.\n- Runbook: explica que o container executa
> web@0.1.0 auth:seed /home/renan/sistema-de-chamados
> node scripts/seed-auth.mjs
✅ Usuario garantido (sem reset de senha): admin@sistema.dev
✅ Usuario garantido (sem reset de senha): cliente.demo@sistema.dev
✅ Usuario garantido (sem reset de senha): mariana.andrade@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): fernanda.lima@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): joao.ramos@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): aline.rezende@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): ricardo.matos@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): luciana.prado@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): gabriel.oliveira@rever.com.br
✅ Usuario garantido (sem reset de senha): george.araujo@rever.com.br
✅ Usuario garantido (sem reset de senha): hugo.soares@rever.com.br
✅ Usuario garantido (sem reset de senha): julio@rever.com.br
✅ Usuario garantido (sem reset de senha): lorena@rever.com.br
✅ Usuario garantido (sem reset de senha): renan.pac@paulicon.com.br
✅ Usuario garantido (sem reset de senha): thiago.medeiros@rever.com.br
✅ Usuario garantido (sem reset de senha): weslei@rever.com.br apos migracoes.
|
2025-10-09 16:35:23 -03:00 |
|
Esdras Renan
|
4e87911269
|
feat(auth): garantir usuarios padrao no start do container\n\n- Torna o seed idempotente por padrao (SEED_ENSURE_ONLY=true) sem resetar senhas existentes.\n- Executa
> web@0.1.0 auth:seed /home/renan/sistema-de-chamados
> node scripts/seed-auth.mjs
✅ Usuario garantido (sem reset de senha): admin@sistema.dev
✅ Usuario garantido (sem reset de senha): cliente.demo@sistema.dev
✅ Usuario garantido (sem reset de senha): mariana.andrade@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): fernanda.lima@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): joao.ramos@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): aline.rezende@atlasengenharia.com.br
✅ Usuario garantido (sem reset de senha): ricardo.matos@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): luciana.prado@omnisaude.com.br
✅ Usuario garantido (sem reset de senha): gabriel.oliveira@rever.com.br
✅ Usuario garantido (sem reset de senha): george.araujo@rever.com.br
✅ Usuario garantido (sem reset de senha): hugo.soares@rever.com.br
✅ Usuario garantido (sem reset de senha): julio@rever.com.br
✅ Usuario garantido (sem reset de senha): lorena@rever.com.br
✅ Usuario garantido (sem reset de senha): renan.pac@paulicon.com.br
✅ Usuario garantido (sem reset de senha): thiago.medeiros@rever.com.br
✅ Usuario garantido (sem reset de senha): weslei@rever.com.br apos no stack.yml.\n- Garante admin e demais usuarios definidos sem acao manual, mesmo após reset do app.
|
2025-10-09 16:34:59 -03:00 |
|
Esdras Renan
|
43ef2bc239
|
ci: permitir workflow_dispatch com force deploy (web/convex)\n\n- Adiciona gatilho manual e inputs para forçar deploy sem depender do paths-filter.\n- Mantém filtros por push como antes.\n- Útil para reexecutar deploy após ajustes no próprio workflow.
|
2025-10-09 16:30:41 -03:00 |
|
Esdras Renan
|
d9b1a80513
|
ci: evitar chgrp/perms no rsync do runner\n\n- Adiciona --no-perms --no-owner --no-group ao rsync nos passos de sync.\n- Evita erros de chgrp/mkstemp quando o runner não tem permissão para alterar grupo/perms.\n- Mantém filtros e --delete como antes.
|
2025-10-09 16:26:29 -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
|
06c4efd173
|
fix(convex): evitar inline de segredo no build
|
2025-10-09 01:27:45 -03:00 |
|
Esdras Renan
|
c4e42ab49c
|
fix(convex): normalizar campos opcionais ao criar sessão
|
2025-10-09 00:53:29 -03:00 |
|
Esdras Renan
|
474cd45b65
|
fix(stack): expor segredos de provisionamento ao convex
|
2025-10-09 00:14:00 -03:00 |
|
Esdras Renan
|
30928fd938
|
fix(desktop): ajustar store do agente para build
|
2025-10-08 23:28:08 -03:00 |
|
Esdras Renan
|
152550a9a0
|
feat: habilitar provisionamento desktop e rotas CORS
|
2025-10-08 23:07:59 -03:00 |
|
Esdras Renan
|
7569986ffc
|
docs(agents): add local dev guide, env examples, CI/deploy notes
|
2025-10-08 21:42:40 -03:00 |
|
Esdras Renan
|
e11d19a128
|
fix(prisma): include binaryTargets for debian-openssl-1.1.x and 3.0.x to match runtime
|
2025-10-08 20:49:56 -03:00 |
|
Esdras Renan
|
f8c89c935c
|
chore(deploy): trigger web redeploy (no-op change in stack.yml)
|
2025-10-08 20:31:44 -03:00 |
|
Esdras Renan
|
69dd060e79
|
chore(deploy): nudge stack to force redeploy (no-op comment)
|
2025-10-08 20:25:57 -03:00 |
|
Esdras Renan
|
969dbcf46d
|
ci: use --no-frozen-lockfile for host build to tolerate minor devDep changes
|
2025-10-08 20:04:02 -03:00 |
|