Plataforma em constante evolução

Changelog

Histórico de versões, novas funcionalidades, melhorias e correções da plataforma Aura.

Novo
Melhoria
Correção
0.6.0Manutenção em ProduçãoMódulo novo13 de julho de 2026
Novo

Módulo de Manutenção em produção: console de gestão do coordenador (/maintenance-ops) para atribuir técnicos, acompanhar o quadro e aprovar/reprovar ordens de serviço, e app do técnico (/maintenance) para executar com checklist e foto de conclusão.

Novo

Reportar Manutenção de qualquer lugar: camareira, garçom, houseman e recepção agora abrem chamados com foto direto dos seus apps — a demanda cai no pool do coordenador na hora.

Novo

Manutenções preventivas automáticas: as regras periódicas cadastradas no kanban geram tarefas sozinhas todos os dias às 17:20, sem depender de ninguém lembrar.

Novo

Coordenador de manutenção cai direto no console de gestão ao entrar no sistema; quem acumula cargos alterna de área pelo seletor no topo do app.

Melhoria

Todas as ações de manutenção e da conferência de checkout (incluindo o frigobar) passaram a ser processadas no servidor: acabou o spinner infinito quando o celular bloqueia logo após o toque.

Melhoria

Permissões por ação na manutenção: técnico executa; atribuir, aprovar, reprovar e apagar são exclusivos da coordenação e governança.

Melhoria

Mensagens de erro reais nos apps de campo: em vez de um aviso genérico, a tela informa o motivo (ex.: conflito com uma estadia ativa na cabana).

Melhoria

Chamado novo sem técnico definido agora notifica todo o time de manutenção por push.

Correção

Ficha de estadias de "uso da casa" não abria em Estadias nem no Mapa de Reservas, o que também impedia o check-out — corrigido.

Correção

Conferência da governança travava ao lançar o frigobar (botão girando sem concluir) — corrigido.

Correção

Marcação de checklist do técnico não se perde mais em silêncio se a conexão ou a sessão falhar: a tela desfaz o ✓ e permite tentar de novo.

Correção

Rotina de preventivas não gera mais tarefas duplicadas quando executada mais de uma vez no mesmo dia.

0.5.2.10.5.2.1 — Ajustes de Governança & Estadias22 de junho de 2026
Melhoria

Painel mais rápido: a tela da governanta abre com os dados já prontos do servidor, carregando mais rápido.

Melhoria

Conferência de cabana estável: a conferência de cabana passou a usar rota de servidor, mais confiável na rede móvel.

Correção

Fim do congelamento no F5: acabou o travamento ao atualizar a página no painel da governanta.

Correção

Tela de erro recuperável: quando algo falha, o painel mostra uma tela que se recupera sozinha, em vez de ficar preso na abertura.

Melhoria

Horário de check-in/out padrão: cada propriedade define o horário padrão de entrada e saída, e ele pode ser ajustado por estadia direto no modal da reserva.

0.5.20.5.2 — Operação & Performance21 de junho de 2026
Novo

Hub operacional: a aba "Ops" do painel da Direção virou um hub com sub-abas Estoque · Governança · Manutenção — uma visão executiva consolidada (somente leitura) com KPIs de estoque, alertas e itens em falta.

Melhoria

Faxinas mais rápidas: iniciar e finalizar faxina respondem na hora (atualização otimista) e passam por rota de servidor, mais confiável na rede móvel.

Melhoria

Fim do congelamento no F5: a agenda de estruturas carrega por rota de servidor, eliminando o travamento ao recarregar a página.

Melhoria

Quadros sem telas vazias: o quadro de cabanas das equipes é lido por rota de servidor, evitando telas em branco por expiração momentânea do token.

0.5.10.5.1 — Avaliações & Pesquisa 2.019 de junho de 2026
Novo

Pesquisa curada: novo fluxo de avaliação do hóspede — impressão geral por carinhas, avaliação por categorias, chips de destaque e recomendação (Não / Talvez / Com certeza) com comentário.

Novo

Final inteligente: hóspede satisfeito é convidado a publicar no Google ou Booking com o comentário pronto; insatisfeito vai para um canal de recuperação privado; neutro recebe um agradecimento.

Novo

Tema camaleão: a pesquisa se molda à identidade visual da propriedade.

Novo

Moderação de avaliações: uma avaliação por estadia em cada área; editar reabre como pendente e a equipe é alertada automaticamente em notas baixas (≤ 2).

Novo

Publicação opt-in: as notas de área no mapa só aparecem quando a propriedade aprova e ativa o modo público.

Novo

Painel unificado: pesquisa e avaliações de área no mesmo lugar, com percentual de recomendação, satisfação, impressão geral, detratores e um Score de Satisfação Aura ponderado.

Novo

Mural e IA: mural cronológico com todos os comentários (pesquisa e área), análise por IA e ranking de áreas e destaques.

Novo

Excluir resposta: super admin pode remover uma avaliação direto no painel.

Correção

Links de avaliação robustos: trata Booking sem https e diferencia Place ID e CID do Google.

Correção

Detrator correto: nota ≤ 2 (geral ou em qualquer categoria) marca o hóspede como detrator, mesmo que ele tenha recomendado.

0.5.00.5.0 — Portal do Hóspede 2.0Revamp guest UX18 de junho de 2026
Novo

Redesign completo: Portal do Hóspede repensado em abas (Início · Explorar · Pedidos · Estadia), com visual "camaleão" que se molda à identidade da propriedade — mais limpo e rápido.

Novo

Sua jornada hoje: a tela inicial monta a agenda real do dia — café, reservas, eventos, pedidos, check-out e Não Perturbe — em ordem.

Novo

Café numa tela só: montar e editar o café da manhã (entrega) acontece na própria aba Pedidos, sem abrir outra página.

Novo

Status do café ao vivo: acompanha o pedido de amanhã e respeita a modalidade da propriedade (entrega ou buffet).

Novo

Concierge integrado: pedidos com confirmação de Não Perturbe e acompanhamento de status (pendente, entregue, devolvido), com busca e filtro por categoria.

Novo

Mapa interativo: mapa ilustrado e satélite com GPS "Você está aqui", pin da sua cabana e áreas com avaliação e ocupação ao vivo.

Novo

Pontos de interesse: POIs posicionados por calibração no mapa, com link para o Instagram.

Novo

QR Code real: para Wi-Fi e acessos.

Novo

Eventos reais: agenda de eventos com tela de detalhe.

Novo

Salão do café por estrutura: o horário e a localização do café passam a vir de uma estrutura marcada — o portal mostra o horário do buffet, o limite do delivery, a "cesta padrão para N pessoas" fora da janela e um botão "Como chegar" que abre o mapa na estrutura.

Correção

Navegação e mapa: barra de navegação fixa, carregamento do mapa sem flash e fontes pré-carregadas.

Correção

Cabeçalho do hóspede: nome do titular em formato correto, saudação e clima no topo.

0.4.00.4.0 — Compras, Estoque & PatrimônioNovo módulo16 de junho de 2026
Novo

Produto mestre: cada insumo passa a ter um cadastro central único que abastece Estoque, Concierge, frigobar e cozinha — base para um CMV preciso.

Novo

Saldo por local: controle de quantidade por almoxarifado, cozinha, bar, lavanderia e cabana, com transferências entre locais.

Novo

Custo médio ponderado: toda entrada recalcula o custo médio do produto automaticamente; um tooltip mostra o histórico de entradas que formou aquele custo.

Novo

Ficha do produto: um clique abre saldo por local, lotes e validades e o histórico completo de movimentações.

Novo

Guarda de estoque negativo: saídas, perdas, transferências e ajustes que zerariam o saldo exigem confirmação explícita.

Novo

Lotes com validade (FIFO): produtos perecíveis saem sempre por ordem de vencimento — primeiro a vencer, primeiro a sair.

Novo

Alertas de validade: rotina diária avisa os itens a vencer e, opcionalmente, lança a perda automaticamente no vencimento.

Novo

Página de Perdas: registro e resumo de perdas por tipo e por validade.

Novo

Inventário físico: contagem guiada (snapshot, conferência e fechamento) que gera os ajustes e calcula a acurácia do inventário, ponderada por quantidade.

Novo

Fornecedores: cadastro com ficha completa do parceiro.

Novo

Fluxo de compras: criar pedido, receber e dar entrada no estoque, alimentando o custo médio.

Novo

Validade no recebimento: a validade é informada item a item no recebimento, não na criação da compra.

Novo

Nota fiscal na compra: anexo de NF (PDF ou imagem) e nota digital da compra.

Novo

Cadastro de ativos: patrimônio com depreciação linear calculada e controle de garantia.

Novo

Depreciação mensal automática: rotina que registra a depreciação de cada ativo.

Novo

Fotos e NF do ativo: imagem do produto, da etiqueta e nota fiscal por upload.

Novo

Painel Visão Geral: KPIs de valor em estoque, CMV, estoque mínimo, perdas, acurácia, itens sem giro, compras e validade, com gráficos por categoria, entradas vs saídas e perdas por tipo.

Novo

Concierge baixa estoque: itens do Concierge consomem estoque na entrega, com ficha técnica (vários insumos por item) e marcação "Esgotado" automática quando falta insumo.

Novo

Frigobar pelo Concierge: o frigobar passa a ser abastecido pelos itens do Concierge (grupo "Frigobar"), com baixa de estoque no lançamento.

Novo

F&B por ficha técnica: pratos do cardápio baixam estoque pelos ingredientes ao serem entregues.

Novo

Módulo opcional: o Estoque pode ser ligado ou desligado por propriedade.

Novo

Cargo "Compras": novo perfil com acesso dedicado ao módulo e navegação do estoque reorganizada.

0.3.1Correções de bugs críticosMais recente11 de junho de 2026
Melhoria

Camareira recebe alerta ao ser atribuída a uma nova faxina.

Melhoria

Governanta/admin recebe alerta quando uma faxina entra em conferência de qualidade.

Correção

As telas de camareiras e governantas às vezes abriam completamente vazias mesmo com tarefas pendentes ou em execução no banco. A causa era uma janela de tempo em que o token do browser ficava brevemente expirado no refresh mobile — o Supabase retornava uma lista vazia (sem erro) via RLS, limpando o quadro. Corrigido: as tarefas agora são lidas por rotas de servidor (`/api/field/housekeeping-tasks`, `/api/field/maintenance-tasks`) que usam a sessão já validada pelo middleware e acessam o banco com privilégio de serviço, retornando sempre o estado real. Em caso de erro de rede, o quadro é preservado em vez de apagado.

Correção

Ao arrastar a tela para baixo no celular, o spinner de carregamento travava por ~15 segundos até aparecer o botão "SAIR" — obrigando logout e re-login para recuperar. A causa era o gate de carregamento depender de `tokenReady`, um sinal que só dispara via evento `INITIAL_SESSION`/`TOKEN_REFRESHED` do Supabase — que passa por um lock do navegador não-determinístico no mobile. Corrigido nas telas de camareiras, governantas e manutenção: o gate agora usa `authConfirmed`, sinal garantido em ~1,5s por timeout de segurança independente do lock. Combinado com a leitura server-side acima, a tela carrega em < 2 s em todas as condições de rede.

0.3.0Mapa Interativo do ResortAura 2.505 de junho de 2026
Novo

Mapa do Resort — nova tela no portal do hóspede com mapa ilustrado do resort e pins das áreas de lazer, restaurantes e pontos de interesse.

Novo

Localização GPS em tempo real — hóspede pode ativar "Me localizar" e ver o ponto azul "Você está aqui" no mapa ilustrado com precisão GPS.

Novo

Modo Satélite — alternância entre mapa ilustrado e satélite (Esri World Imagery, sem custo adicional) mantendo o mesmo GPS ativo.

Novo

Sua Cabana no Mapa — pin da cabana do hóspede em destaque; outras cabanas ficam ocultas por padrão com opção "Ver outras cabanas".

Novo

Agendamento direto pelo mapa — tocar em um pin abre um card com Info, Agendar e Avaliar. A aba Agendar reusa o fluxo de reservas existente, incluindo automação de WhatsApp.

Novo

Avaliações por área — hóspedes podem avaliar de 1 a 5 estrelas e deixar comentários por área; média visível no card e no pin do mapa.

Novo

CMS do Mapa (admin) — nova página em Gerência → Mapa do Resort para configurar a imagem ilustrada, posicionar pins de estruturas e cabanas, e calibrar o GPS.

Novo

Coordenadas do Google Maps — campo único no CMS aceita colar coordenadas diretamente do Google Maps no formato -28.131983, -48.643969.

Novo

Calibração GPS automática — pins de estruturas com lat/lng preenchidos são usados como pontos de controle para a transformação GPS→pixel, sem configuração manual.

Novo

Cabanas fora da ocupação — novo toggle "Ignorar na ocupação" no cadastro de cabanas. Cabanas extras ou de uso da casa ficam fora dos cálculos de taxa de ocupação (numerador e denominador), sem deixar de aparecer no mapa, na agenda e nas rotinas operacionais.

Novo

Reservas de uso da casa — novo tipo de reserva interna para manutenção, família ou bloqueio. Hóspede é opcional; basta um rótulo livre (ex: "Manutenção cabana 5"). Identificada com selo "Uso da Casa" em todas as telas da equipe.

Novo

Interruptor mestre de comunicação automática — o toggle de WhatsApp no cadastro de reserva agora controla todas as automações (pré-check-in, pré-checkout, NPS, estruturas e outros). Reservas de uso da casa nascem com ele desligado; pode ser religado manualmente a qualquer momento.

Melhoria

Pins filtráveis por categoria — barra de filtros por tipo de área (lazer, alimentação, esporte, bem-estar) disponível tanto no mapa do hóspede quanto na lista lateral do CMS.

Melhoria

Upload de imagem em alta resolução — imagem do mapa aceita até 20 MB via upload direto ao Supabase Storage, sem passar pela Vercel, preservando a resolução total.

Melhoria

Sidebar com scroll independente — lista de estruturas e cabanas no CMS do mapa rola sem mover o mapa, facilitando o posicionamento de pins.

Melhoria

Mapa de reservas — cabanas fora da ocupação exibem borda tracejada e selo âmbar. Reservas de uso da casa aparecem em cor distinta (âmbar) na linha do tempo.

Melhoria

Recepção, Calendário e Dashboard — taxa de ocupação, numerador e denominador passam a refletir apenas as cabanas vendáveis, evitando que cabanas extras deturpem os números.

Melhoria

Governança, mapa de propriedade e lista de estadias — reservas internas exibem o rótulo "Uso da Casa" no lugar do nome do hóspede, deixando claro para toda a equipe que não se trata de um cliente.

Correção

Permissão de localização — GPS não era solicitado por bloqueio no header Permissions-Policy; corrigido para geolocation=(self).

Correção

Precisão de posicionamento GPS — normalização de coordenadas antes da transformação affine eliminou erro de escala de ~60 m no mapa ilustrado.

Correção

Persistência do pin das cabanas — substituído upsert por UPDATE direto, evitando erro de constraint NOT NULL ao salvar apenas as coordenadas do mapa.

0.2.00.2.102 de junho de 2026
Novo

Operação na palma da mão: Visualize toda a operação do seu empreendimento de forma rápida e estratégica.

Novo

Escalas do dia: Acesso imediato à equipe escalada.

Novo

Agenda: Controle completo de eventos e casamentos.

Novo

Métricas em tempo real: Dados diários, semanais e mensais de Satisfação, Ocupação, Entradas/Saídas e Manutenções.

Novo

Organização centralizada: Gerencie toda a operação dos casamentos em um só local.

Novo

Pagamentos: Controle financeiro e fluxos integrados.

Novo

Fornecedores: Cadastro e acompanhamento de parceiros.

Novo

Modalidade: Definição personalizada de contratos e formatos.

Correção

Painel da Gerência: Resolvido o erro que impedia as folgas de popularem no painel.

Correção

Equipe diária: Diretores foram removidos da escala do dia para limpar a visualização.

Correção

Melhorias gerais: Pequenas correções menores de estabilidade.

0.1.20.1.201 de junho de 2026
Novo

Pré-Faxina de Checkout: Novo trigger on_checkout_day que cria tarefas com status "Aguardando Checkout" quando há saídas no dia seguinte, permitindo à governanta planejar e delegar faxinas de troca com antecedência.

Novo

Seção Dedicada no Kanban: Nova seção "Pré-Faxinas — Aguardando Checkout" no kanban da governanta com botão Atribuir disponível antes mesmo do checkout.

Novo

Badge de Status: Novo badge "Ag. Checkout" e seção dedicada para pré-faxinas no app mobile da governanta.

Novo

Card Bloqueado: Pré-faxinas aparecem com cadeado visual no app da camareira, impedindo início antes do hóspede fazer checkout.

Correção

Transição Inteligente: applyOnCheckout() detecta pré-faxinas existentes e as transiciona para pending em vez de criar duplicatas no momento do checkout.

Correção

Proteção contra Cliques Duplos: Botões críticos migrados para onPointerDown com preventDefault; refs síncronos (pausingRef, finishingRef, upgradingRef) bloqueiam re-execução antes do re-render.

Correção

Delay de Toque Eliminado: touch-action: manipulation em todos os botões elimina o delay de 300ms e double-tap zoom em iOS e Android.

Correção

Deduplicação Server-Side: AuditService ignora logs idênticos nos últimos 10s, protegendo contra múltiplas abas e toque rápido no mobile.

Correção

Bloqueio Total durante Loading: Botões Iniciar e Pular ficam desabilitados enquanto qualquer tarefa está sendo processada.

Correção

Spinner do Loading Corrigido: @keyframes gov-spin agora é injetado inline no loading screen, resolvendo o congelamento do spinner que ocorria antes do componente principal montar.

0.1.10.1.124 de maio de 2026
Novo

Suporte PWA Completo: Lançamento do suporte a Progressive Web App para as equipes de campo, incluindo manifesto, service worker e ícones otimizados para instalação direta no Android.

Novo

Gerenciador de Notificações: Implementação do PushNotificationManager para registro de SW, solicitação de permissões e inscrição em notificações push.

Novo

Infraestrutura Server-Side: Adicionada a dependência web-push (VAPID no servidor) e criadas rotas de API para subscribe/unsubscribe, além de webhooks integrados para Housekeeping, Concierge e Manutenção.

Novo

Direcionamento de Mensagens: Novo seletor de destinatários ("Para:"), permitindo enviar recados para colegas específicos em todos os apps mobile.

Novo

Respostas em Thread: Implementado o ReplyButton com caixa de composição inline e renderização de respostas aninhadas.

Novo

Perfis Públicos Mobile: Nova rota /equipe/[staffId] acessível para todas as funções de campo, permitindo navegar até o perfil dos colegas clicando em seus nomes ou avatares.

Novo

Registro de DND (Não Perturbe): Novo botão "Pular" que permite registrar a sinalização de "Não Perturbe" diretamente na tarefa sem a necessidade de concluí-la.

Novo

Escala Semanal no Perfil: Aba Perfil agora exibe a grade de escala dos próximos 7 dias (com o dia atual destacado) e uma lista com os avatares dos colegas da propriedade coloridos por cargo.

Novo

Grade de Acomodações: A aba "Todas" foi substituída por um grid numérico de cabanas. Cada card exibe o status atual via indicador colorido e, ao ser tocado, abre o histórico das últimas 40 tarefas.

Novo

Ocupação em Tempo Real: Cards exibem o estado do hóspede (Hospedado, Saindo hoje, Check-in hoje, Chegando), nome e datas, com bordas dinâmicas (âmbar/verde) para movimentações do dia.

Novo

Badge de Atraso: Alerta visual vermelho substitui o badge de "Check-in hoje" se o horário previsto de chegada do hóspede já tiver expirado.

Novo

Novos Tipos de Tarefa: Inclusão de linen_change, inspection_checkin e inspection_checkout no modal de criação, agora repaginado para um layout em 3 colunas.

Novo

Conferência Obrigatória: Adicionada a flag needsConference para tarefas customizadas criadas manualmente.

Novo

Novo Horário do Cron: O script daily-housekeeping foi movido para as 17h BRT (20h UTC) para gerar as tarefas do dia seguinte, contando com mecanismo de deduplication baseado em runDay.

Novo

Expansão de Acesso (Manager & HR): Abas de Recepção, Governança, Marketing e Kanbans agora estão visíveis na sidebar para os perfis de Gerente e RH.

Novo

Upload de Avatar: Gestores (Manager/Admin) agora possuem permissão para alterar e fazer upload da foto de perfil dos colaboradores.

Correção

Hydration Mismatch (React #418/#423): Corrigido o erro crônico de renderização onde o sessionStorage era lido durante o SSR. Os estados de useState/useRef agora iniciam com valores seguros para o servidor, e o cache é tratado estritamente em useEffect.

Correção

Fim da Tela Presa em "Carregando": Resolvida a race condition no AuthContext ao atualizar a página (F5) em estado ocioso. Adicionado AbortController de 3s no fast-path e um safety timeout de 2.5s para garantir que o estado de carregamento seja sempre encerrado.

Correção

Otimização de Sessão: userData agora é cacheado no sessionStorage, tornando o reload instantâneo. O cache é completamente expurgado no SIGNED_OUT para evitar vazamento de dados entre usuários.

Correção

Nova Flag tokenReady: Garante que as aplicações de campo aguardem a confirmação e renovação do token antes de disparar queries para o Supabase, eliminando o bug de telas que retornavam vazias devido às regras de RLS.

Correção

Timeouts de Contexto: Correção no timeout do PropertyContext adicionando Promise.race de 5s com fallback para o cache do localStorage em conexões instáveis.

Correção

Botão "Sair" de Emergência: Caso o carregamento trave por mais de 15 segundos, um botão de escape é exibido para forçar a limpeza de cookies no servidor (/api/auth/signout) e redirecionar o usuário, contornando travamentos do cliente Supabase.

Correção

Proteção contra Duplo Clique (Double-click Guard): Botões críticos protegidos com referências de execução para evitar disparos duplicados. Todos os botões ganharam feedback visual ao toque (opacidade e escala) e animações ativas nos ícones de carregamento.

Correção

Sincronização de Inicialização: O método init() passa a aguardar estritamente a confirmação do token (authConfirmed), eliminando problemas de dados desalinhados em tempo real (como tarefas sumindo ou exibição de IDs no lugar de nomes).

Correção

Posicionamento de Alertas: O Toast de checagem do checklist no app da camareira foi movido para o topo da tela, liberando o acesso aos botões inferiores de ação.

Correção

Garantia de Check-ins Tarde da Noite: Ajustada a query do Cron para incluir estadias confirmadas com check-in agendado para o próprio dia até as 17h, impedindo que chegadas tardias ficassem sem tarefas.

Correção

Tratamento de No-Shows: Filtro adicionado para ignorar reservas antigas que não realizaram check-in, impedindo a geração de "tarefas fantasma".

Correção

Correção de Tipagem no Cron: Mapeamento corrigido de confirmed para os estados reais do modelo Stay (pending e pre_checkin_done).

Correção

Query Sequencial de Estadias: Substituído o join relacional direto por duas queries sequenciais na busca de nomes de hóspedes, contornando a ausência temporária de uma Foreign Key (FK) física no banco de dados.

Correção

Ordenação do Mapa de Reservas: Cabanas agora são ordenadas numericamente direto na API via Postgres (.order(name)) combinada com useMemo local para blindar o layout contra desalinhamentos gerados por atualizações em tempo real.

Correção

Supressão de Erros de WebSocket: Desenvolvida a estratégia safeRemoveChannel para fechar conexões de forma segura de acordo com o status atual do canal, eliminando o aviso genérico de conexão encerrada no painel administrativo.

Correção

Ajuste de Escopo de API: Liberado o acesso de leitura para rotas de escala (schedules, overrides, checkpoints) para todas as roles de campo para suportar a nova tela de perfis da equipe.