PALCO3
Voltar ao Hub
Arquitetura8 min de leitura

HubID no PALCO3: identidade canonica para eliminar duplicação de usuário

No PALCO3, identidade não pode variar por tela. HubID padroniza resolução e garante o mesmo usuário em iOS, Web e backend.

Resumo executivo

HubID resolve email, uid e userId para um doc canônico em users/{hubID}, reduzindo leitura divergente e erros em certificados, conexoes e perfil.

Fluxo operacional recomendado

  • Resolver identificador de entrada para canonicalID usando users como fonte de verdade.
  • Ler e gravar subcoleções sempre em users/{hubID}.
  • Usar fallback legado apenas durante transição, com convergência para regra canonica.

Boas práticas técnicas

  • Normalizar email/docId em lowercase com caracteres não alfanumericos virando underscore.
  • Evitar coleções paralelas de identidade fora de users.
  • Manter cache curto de resolução para reduzir latencia sem quebrar consistência.

Erros comuns para evitar

  • Ler usuário direto por uid sem resolver canonicalID.
  • Criar regra diferente de normalização entre iOS, Web e backend.
  • Persistir dados em caminho de usuário não canônico.

Métricas para acompanhar

  • Taxa de registros duplicados detectados por ciclo.
  • Falhas de resolução de usuário por fluxo critico.
  • Tempo medio de resolução de identidade.

Resultados esperados

  • Menos duplicação de usuário em telas e relatórios.
  • Certificados e conexoes apontando para o mesmo perfil canônico.
  • Maior confiabilidade para analytics e automações.

Perguntas frequentes

Qual a regra canonica do HubID no PALCO3?

Toda identidade deve resolver para users/{hubID} e essa referência vira a base de leitura e escrita em todo o ecossistema.

HubID depende de coleção identidades separada?

No Web atual, não. A resolução canônica usa a própria coleção users como fonte de verdade.

Por que HubID impacta certificado e conexão viva?

Porque ambos dependem de identificar corretamente o usuário para gravar e ler subcoleções sem fragmentação.

Implementar HubID no próximo evento

Execute este fluxo no Web e mantenha operação sincronizada com o app iOS.