Pular para o conteúdo
⬇ Baixar .md

Changelog

Changelog

Todas as alterações relevantes deste projeto são documentadas aqui, por release, na ordem em que foram implementadas (mais antiga primeiro — diferente da convenção usual de changelog, que lista a mais recente primeiro; a ordem cronológica foi uma escolha deliberada pra este documento, pra acompanhar a evolução do sistema do início até hoje).

Numeração de versão no padrão SemVer (MAJOR.MINOR.PATCH), com a primeira release em 0.1.0:

  • MAJOR: mudança grande que quebra compatibilidade com o funcionamento anterior.
  • MINOR: nova funcionalidade, compatível com o que já existia.
  • PATCH: correção de bug ou ajuste pequeno, sem funcionalidade nova.

O projeto ainda está na faixa 0.x — nenhuma mudança até agora quebrou compatibilidade de verdade (é um sistema único, sempre implantado na versão mais recente, sem clientes externos presos a uma versão antiga), por isso a coluna MAJOR nunca subiu ainda.

As categorias dentro de cada versão seguem o padrão Keep a Changelog: Adicionado (funcionalidade nova), Corrigido (bug), Alterado (mudança de comportamento existente).


[0.1.0] — 2026-08-13

Adicionado

  • Reconstrução completa do sistema do zero, conforme especificação formal, substituindo o MVP anterior (arquivado, não descartado).
  • Stack inicial: Next.js + Socket.IO (tempo real) + PostgreSQL/Prisma + Auth.js (login por usuário/senha).
  • Fluxo básico de chamado da Enfermagem: paciente aciona pelo QR Code do quarto, equipe recebe em tempo real, atende e finaliza.
  • Trilha de auditoria imutável a nível de banco (EventoAuditoria, com REVOKE UPDATE/DELETE pra role de runtime do app).

[0.1.1] — 2026-08-14

Corrigido

  • Singleton do Socket.IO entre server.ts e as rotas de API — usava uma variável de módulo comum, que não é compartilhada entre o processo do server.ts (roda via tsx, fora do bundler do Next) e as rotas (dentro do grafo do Next); corrigido guardando a instância em globalThis.

Alterado

  • Som de alerta e notificações push passam a ser ativados automaticamente ao carregar a tela (com botão manual de retaguarda se o navegador bloquear).

[0.2.0] — 2026-08-14

Adicionado

  • Botão de emergência na tela do quarto, com prioridade máxima.
  • Duas telas por setor: parede (só visualização, letras grandes) e atendimento (interativa, com os botões de ação).
  • Suporte a múltiplos postos de Enfermagem, cada um com fila própria.
  • Primeira versão do cadastro administrativo: postos, usuários e quartos.

[0.3.0] — 2026-08-14

Adicionado

  • Tela "Início" com atalhos de navegação de acordo com o papel de quem logou.
  • Escopo configurável do supervisor ("Meus setores") — cada supervisor escolhe quais postos acompanha.
  • Modo escuro como padrão do sistema (pensado pro uso noturno/hospitalar).

Corrigido

  • Uma tag <script> inválida introduzida no dia anterior, causando aviso de hidratação.

[0.4.0] — 2026-08-14

Adicionado

  • Login vira a tela inicial do sistema (raiz /).
  • Central de Ajuda — documentação navegável e disponível pra download dentro do próprio sistema.
  • Sete melhorias de produto de uma vez: acuidade do paciente por quarto, prioridade em 3 níveis (normal/urgente/emergência) com cor e som distintos, SLA configurável por posto, cadeia de escalonamento automático (supervisor → administração), relatórios por turno e carga por funcionário, checklist de rondas por posto/quarto, e chamada de áudio bidirecional (WebRTC) entre paciente e posto.

[0.5.0] — 2026-08-14

Adicionado

  • Logo oficial da Unimed Norte Fluminense no cabeçalho e na tela de login.
  • Modo "Visualizar como" para a Administração — abre qualquer tela do sistema sem precisar logar com outra conta.

Corrigido

  • Bugs de navegação (histórico do navegador não refletia corretamente as trocas de tela).

[0.6.0] — 2026-08-14

Adicionado

  • Botão "Voltar" global no cabeçalho, disponível em qualquer tela do sistema.

Alterado

  • Ajustes de layout ao redor da logo.

[0.7.0] — 2026-08-14

Adicionado

  • Cadastro de dispositivos de emergência físicos (botão/cordão IoT) em /admin/dispositivos, com geração e rotação de chave de API (revelada só uma vez na criação).

[0.8.0] — 2026-08-14

Adicionado

  • Generalização do conceito de "posto": Copa e Rouparia passam a ter postos e filas próprias, além da Enfermagem — deixa de ser um fluxo único.

[0.8.1] — 2026-08-14

Corrigido

  • Login dentro do ambiente Docker.
  • Links que deveriam abrir em nova aba e não abriam.

Alterado

  • Logo aumentada.

[0.9.0] — 2026-08-14

Adicionado

  • Cadastro de leitos em lote: um prefixo + lista de leitos cria vários quartos de uma vez, cada um com QR Code e fila de chamados próprios.
  • SLA de finalização — limite de tempo independente entre "estamos a caminho" e concluir o atendimento (diferente do SLA de atendimento, que só olha até dar ciência do chamado).

Corrigido

  • Diversos ajustes de UX identificados no uso.

[0.9.1] — 2026-08-14

Corrigido

  • Documentação técnica e manual de uso atualizados pra cobrir postos, dispositivos, leitos em lote e o SLA de finalização.

[0.10.0] — 2026-08-14

Adicionado

  • Edição de postos, usuários, quartos e dispositivos já cadastrados (antes só era possível criar, nunca editar).

Alterado

  • Botão de tema do cabeçalho vira só ícone (economiza espaço).

[0.11.0] — 2026-08-14

Adicionado

  • Papel do usuário (Enfermagem/Copa/Rouparia/Supervisão/Administração) passa a ser editável depois de criado.
  • Logo do cabeçalho vira também um atalho pra tela Início.

Corrigido

  • Erro 404 na tela pública /chamar/<número do quarto> em alguns casos.

[0.11.1] — 2026-08-14

Corrigido

  • Botões que ficavam inertes (sem resposta ao toque) ao acessar o sistema pelo IP da rede local em vez de localhost.
  • Tela do quarto ajustada pra caber sem rolar em celulares.

[0.11.2] — 2026-08-15

Corrigido

  • Detecção automática do IP da rede local em allowedDevOrigins — elimina a necessidade de configurar isso à mão a cada rede diferente.

[0.11.3] — 2026-08-15

Corrigido

  • Repasse da variável de ambiente DOMINIO pro Caddy, que não estava emitindo o certificado HTTPS automático pro domínio certo.

Adicionado

  • Documentação do uso de DDNS (No-IP) pra hospitais sem domínio próprio.

[0.12.0] — 2026-08-15

Adicionado

  • Política de senha forte obrigatória no cadastro de usuários: mínimo 12 caracteres, com maiúscula, minúscula, número e símbolo, e nunca pode conter o nome da pessoa, o setor ou o nome da empresa.

Corrigido

  • Quebra de linha indevida na tabela de usuários.

[0.12.1] — 2026-08-15

Corrigido

  • Quadro das telas de administração alargado pra a tabela de usuários não precisar rolar horizontalmente.

[0.13.0] — 2026-08-15

Adicionado

  • Chat de texto por chamado entre paciente e equipe, com contador de mensagens não lidas.
  • Rodapé com direitos autorais em todas as telas do sistema.

Alterado

  • Chamada de voz volta sozinha pro estado inicial alguns segundos depois de encerrada, sem exigir toque manual.

[0.13.1] — 2026-08-15

Corrigido

  • Erro 500 ao visualizar ou baixar documentos da Central de Ajuda quando rodando em Docker.

[0.14.0] — 2026-08-15

Adicionado

  • Categorias "Comercial" (apresentação em slides) e "Treinamento em vídeo" (seis vídeos curtos, um por papel) na Central de Ajuda.

[0.15.0] — 2026-08-15

Adicionado

  • Configuração de rondas por posto: exigir leitura de QR Code pra confirmar, e faixas de horário com intervalo esperado entre rondas (pode variar por horário do dia).
  • Primeira versão da agenda de medicação por quarto, com alerta "5 minutos antes" do horário.

[0.15.1] — 2026-08-15

Corrigido

  • Card de chamado que ficava travado no estado antigo (ex.: botão "Finalizar atendimento" não sumia depois de clicado) quando a conexão em tempo real caía — a tela não aplicava mais a atualização na hora, só esperava o evento de socket.

[0.15.2] — 2026-08-15

Corrigido

  • Conexão em tempo real que ficava presa em "Reconectando…" sem se recuperar sozinha — causa identificada na época: várias conexões de socket da mesma página compartilhando uma única conexão em segundo plano sem o cliente perceber (mais tarde, na v0.18.0, foi encontrada a causa raiz real e completa desse mesmo sintoma).

[0.16.0] — 2026-08-15

Adicionado

  • Recorrência por intervalo de horas na agenda de medicação (ex.: de 6 em 6h), além do horário fixo diário original.
  • Menu de administração da Agenda de Medicação por posto (liga/desliga a feature e o campo de medicamento).
  • Status de ocupação do quarto (Ocupado / Alta hospitalar / Liberado), alterado pela Enfermagem — marcar como Liberado limpa a agenda de medicação daquele quarto automaticamente.

[0.17.0] — 2026-08-15

Adicionado

  • Opção "administrar somente uma vez" na agenda de medicação (além de horário fixo e recorrência por intervalo).

Corrigido

  • Semântica do campo "medicamento" na agenda: era tratado como obrigatório/opcional, corrigido pra controlar se o campo aparece ou não no formulário — quando aparece, é sempre opcional.
  • Reforço de resiliência na reconexão de socket (reconecta ao voltar a aba/rede).
  • Ajustes de interface pendentes de revisão anterior.

[0.17.1] — 2026-08-15

Corrigido

  • Texto do material comercial em PDF: "Cadastro de leitos em lote" (estava como "quartos", terminologia divergente da usada no próprio sistema).

[0.18.0] — 2026-08-16

Corrigido

  • Causa raiz real do "Reconectando…" preso: o cookie de sessão usado pra autenticar a conexão de tempo real da equipe não batia com o protocolo configurado (AUTH_URL), fazendo a autenticação do socket falhar silenciosamente pra sempre, independente de qualquer lógica de reconexão.
  • Aviso mais claro quando notificações push estão bloqueadas pelo navegador (antes, o botão "Ativar notificações push" clicava e parecia não fazer nada).

Adicionado

  • Chat da equipe abre sozinho quando chega a primeira mensagem do paciente, sem precisar clicar em "Chat".
  • Tela do paciente volta sozinha pro início alguns segundos depois do chamado ser concluído, sem precisar clicar em "Fazer outro chamado".

[0.18.1] — 2026-08-16

Alterado

  • Cores dos botões de status de ocupação do quarto invertidas — Ocupado passa a vermelho, Liberado passa a verde, pra bater com o significado de cada estado.

[0.19.0] — 2026-08-16

Adicionado

  • Relatório de taxa de ocupação de quartos: números (% Ocupado/Alta hospitalar/Liberado) e gráfico com curva de variação + linha de tendência ao longo do tempo, além de % de ocupação por quarto individual.
  • Filtro de período compartilhado (24h, 48h, 72h, esta semana, semana passada, 15 dias, mês atual, mês anterior, último trimestre, este ano, ano anterior, ou personalizado), reaproveitado também na tela "Relatórios e SLA" (que antes não tinha filtro de data nenhum).
  • Menu "Relatórios" na Administração, com a mesma visão de "Relatórios e SLA" da Supervisão, sem restrição de escopo — antes só alcançável de forma indireta via "Visualizar como".

[0.20.0] — 2026-08-16

Alterado

  • Tela "Relatórios" (Supervisão e Administração) deixa de ser uma página só com as duas seções empilhadas e vira um hub com um botão pra cada relatório — "Relatórios e SLA" e "Taxa de ocupação de quartos" — cada um com seu próprio filtro de período, independente um do outro.
  • Filtro de período reformulado no estilo do seletor de período do Zabbix 7: um botão colapsado mostrando o período atual, que abre um painel com "De"/"Até" personalizados de um lado e atalhos rápidos agrupados em colunas do outro — no lugar da fileira fixa de 12 botões sempre visível.

[0.21.0] — 2026-08-16

Adicionado

  • Cadastro de quartos em lote por faixa numérica: informa o número inicial e o final (ex.: 101 a 110), em vez de digitar cada leito separado por vírgula — prefixo continua opcional, pra enfermarias com vários leitos por quarto físico.
  • Campo "andar" (opcional) em Quarto e em Posto, pra facilitar localização e filtro no cadastro.
  • Filtro na tabela de quartos (busca por número, ala, andar, status) — a lista cresce rápido e dificultava achar um quarto específico.
  • Atalho "Relatórios" na tela Início da Administração, apontando direto pro hub de relatórios (já existia no menu fixo do topo das telas /admin/*, mas não no lançador inicial por papel).

[0.21.1] — 2026-08-16

Alterado

  • Quarto novo passa a nascer com status de ocupação Liberado em vez de Ocupado — o admin acabou de cadastrar, ainda não tem paciente ali. Quartos já existentes não são afetados (o padrão só vale pra cadastros novos).
  • Checklist de rondas só lista quartos com status Ocupado — sem paciente, não tem o que rondar. Quarto marcado Liberado/Alta hospitalar some do checklist automaticamente até voltar a Ocupado.

[0.22.0] — 2026-08-16

Adicionado

  • Visão consolidada por quarto na tela de atendimento da Enfermagem — um botão só com o número do quarto que, ao clicar, abre acuidade, status de ocupação, rondas (se estiver Ocupado) e a medicação agendada daquele quarto num único lugar. A medicação aparece ordenada com a próxima dose no topo, e reordena sozinha ao agendar uma nova medicação ou marcar alguma como administrada. Os painéis por tipo (Acuidade, Status, Rondas, Medicação) continuam existindo.
  • Campo opcional "nº de registro do enfermeiro" (ex.: COREN) ao marcar uma medicação como administrada — habilitável/desabilitável por posto em Administração → Medicação (desligado por padrão).

Alterado

  • Botão/rótulo "Medicação efetuada" passa a se chamar "Medicação administrada" em toda a tela de atendimento.

[0.22.1] — 2026-08-16

Alterado

  • Visão por quarto: clicar no botão do quarto agora abre uma tela própria (/atendimento/enfermaria/quarto/[id]) só com as informações daquele quarto, em vez de expandir dentro da mesma página. Os botões deixam de ter o prefixo "Quarto" — mostram só o número (que já inclui o leito quando for o caso, ex.: "E101 Leito 01").