Como tenant admin eu devo ser capaz de propagar a eliminação de dados na tenant unificada ao desinstalar um Carol App
Description
Texto padrão para issuetype Story conforme DoR (Definition of Ready)
01 - STAKEHOLDER (Pessoa que pode validar e responder questões): OKR / Produto.
02 - PROBLEMA (Qual o cenário ou dor a ser resolvida):
O processo de remover um Carol App de uma tenant cliente deve simbolizar a eliminação de dados da tenant unificada, indicando que essa tenant cliente não utiliza mais o Carol App especificado.
O problema a ser resolvido é que o ato de uma tenant cliente deixar de ter um Carol App instalado deve executar o processo de limpeza dos dados do cliente da tenant unificada relacionado ao Carol App.
03 - OBJETIVO (Descreva a solução proposta):
Devemos cobrir os seguintes cenários de propagação da eliminação de dados na tenant unificada:
- Na desinstalação de um Carol App (com uma tenant unificada vinculada) na tenant cliente
- Descrito no Item 1. a) do documento → https://docs.google.com/document/d/18PfGCLizmK19eFlMKy5yJkE2cF6QgE4-Ic8Q8HqwEtA/edit?usp=sharing
04 - QUEM PODE USAR (Quais perfis de usuários):
Tenant Admin e Org Admin
05 - ASSETS (Links do Figma, documentos relevantes, Json, etc):
- Na desinstalação de um Carol App na tenant cliente
06 - DETALHES REGRA DE NEGÓCIO
Cenário: Desinstalação de um Carol App na tenant cliente
Dado que o administrador da tenant desinstala um aplicativo da tenant cliente (tenant com Carol App Instalado)
Quando o tenant admin confirmar a ação
CONSIDERAR A IMPLEMENTAÇÃO JÁ REALIZADA ATRAVÉS DO CARD CAPL-5684
- Então um processo para detectar e remover dados relacionados deste cliente deve ser iniciado na tenant unificada. Esta deve ser uma tarefa que pode levar algum tempo, portanto devemos considerar que esta tarefa será executada de forma assíncrona. (revisar pois no desenho está síncrona)
- Carol deve detectar na Tenant Unificada todas as staging tables relacionadas a este aplicativo.
- Nota: Estamos usando a Tenant Unificada como base e não o manifesto de pipelines para considerar que as tabelas staging não são mais utilizadas por este manifesto.
- Uma tarefa específica (assíncrona) para excluir registros (eliminação lógica) da staging com
mdmTenantId
= "customer tenant" deve ser criada para cada tabela staging a que o manifesto dos pipelines se refere.
- Carol deve detectar na Tenant Unificada todos os data models relacionados a este aplicativo.
- Nota: Estamos usando a Tenant Unificada como base e não o manifesto de pipelines para considerar que as tabelas staging não são mais utilizadas por este manifesto.
- Uma tarefa específica (assíncrona) para excluir registros (eliminação lógica) dos modelos de dados com
mdmTenantId
= "customer tenant" deve ser criada para cada data model a que o manifesto dos pipelines se refere.
- A task de desinstalação poderá ser concluída somente depois que a task de remoção de tabelas staging e data models for concluída.
- O app será bloqueado para instalação, ou seja, não será exibido na lista de apps disponíveis enquanto o processo de desinstalação não for concluído.
- A task de eliminação de dados com falha não deve permitir a reinstalação do App, e o seu reprocessamento é de responsabilidade do usuário.
- Haverá um botão para permitir o reprocessamento da task de desinstalação de app e de eliminação de dados.
- O reprocessamento de uma task de desinstalação com falha também implica no reprocessamento da task de eliminação de dados da unificada para fins de sincronismo de status
- Carol deve detectar na Tenant Unificada todas as staging tables relacionadas a este aplicativo.
Quando a task de desinstalação de Apps e eliminação de dados estiver em fila ou em execução
- Então o cancelamento delas não serão possíveis (irreversível).
- E o cliente não pode instalar o Carol App novamente, porque se iniciarmos a tarefa de cópia de dados, isso poderá causar inconsistência nos dados, pois os dados serão removidos.
Quando a task de desinstalação de Apps e eliminação de dados forem concluídas com sucesso
- Então não deve ser permitido o seu reprocessamento.
07 - CRITÉRIOS DE ACEITE:
Propagar eliminação de dados de tenants clientes para a tenant unificada nos seguintes fluxos:
Cenário: Desinstalação de um Carol App na tenant cliente
@MARCOS STUMPF , vinculado essa issue de DE que iremos tratar a habilitação:
@Robson Thanael Poffo Com este deploy agora temos um flag de controle para irmos ativando o recurso na medida em que validamos nos clientes. Como este card tem um Jira Prod vinculado, portanto questiono, a priori este seria o primeiro cliente (TECHFIN_ANTECIPA) que iremos validar?
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore ,
Você acabou de enviar seu comentário anterior como informativo para o cliente no Jira Produção issue https://jiraproducao.totvs.com.br/browse/IDEIA-16.
#inform
Informamos que houve uma movimentação interna e que esta ação pode ter solucionado total ou parcialmente o item reportado nesta issue. Pedimos que valide novamente e que, em caso de dúvidas, alinhe com o seu ponto focal aqui em nossa área TOTVS Inteligência de Dados e IA (Epic Owner: Eduardo Jacometti De Souza).
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore ,
Comentário enviado para o Jira Produção - https://jiraproducao.totvs.com.br/browse/IDEIA-16:
Iniciamos a trabalhar em sua issue e manteremos você informado!
Atenciosamente,
Equipe TOTVS Inteligência de Dados e IA.
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore ,
Atenção!
Alterações no(s) campo(s) URL Documento Técnico, Classe de Serviço, Informações Acompanhamento da issue Jira Produção.
@MARCOS STUMPF ,
@Renan Fernando Schroeder , @Cindy de Araujo Soares Moore ,
Este issue foi planejada para ser entregue até 2024-09-13. Você pode confirmar consultando o campo Due Date desta issue.
Data já planejadas para esta issue: 2024-09-13, 2024-08-23
Se o campo External Issue Link estiver preenchido com o link de uma issue válida no Jira Produção o cliente também será notificado no Jira Produção.
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore ,
Este issue foi movimentada de volta para o status TO DO e o campo Due Date foi limpo.
Se o campo External Issue Link estiver preenchido com o link de uma issue válida no Jira Produção o cliente também receberá esta informação no Jira Produção.
@MARCOS STUMPF ,
@Renan Fernando Schroeder , @Cindy de Araujo Soares Moore ,
Este issue foi planejada para ser entregue até 2024-09-27. Você pode confirmar consultando o campo Due Date desta issue.
Data já planejadas para esta issue: 2024-09-27
Se o campo External Issue Link estiver preenchido com o link de uma issue válida no Jira Produção o cliente também será notificado no Jira Produção.
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore , @Cindy de Araujo Soares Moore , @Lucas Noetzold
Esta issue acabou de ser vinculada na(s) issue(s) , conforme menções feitas no campo description.
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore , @Cindy de Araujo Soares Moore , @Lucas Noetzold
Esta issue acabou de ser vinculada na(s) issue(s) , conforme menções feitas no campo description.
@MARCOS STUMPF ,
@Cindy de Araujo Soares Moore , @Geny Isam Hamud Herrera , @Cindy de Araujo Soares Moore , @Lucas Noetzold
Esta issue acabou de ser vinculada na(s) issue(s) , conforme menções feitas no campo description.
Como tivemos o canal backend por hora arquivo, traremos um topico que precisamos da confirmacao do time de produto voltado ao cc
• Ponto de duvida: Uma vez que ja tem um customer tenant com task de remove data em execucao na unified, caso o tenantAdmin da tenant unified execute uma chamada de copy data para esse customer em questao, como a plataforma deve atuar?
• A: Criar a task cm mensagem de warning, informando que eh uma task de eliminaca de dados em andamento
• B: Nao criar a task, gerando apenas uma mensagem ao usuario.
Mensagem editada no Slack - suporte - Douglas Coimbra Lopes
Como tivemos o canal backend por hora arquivo, traremos um topico que precisamos da confirmacao do time de produto voltado ao cc
• Ponto de duvida: Uma vez que ja tem um customer tenant com task de remove data em execucao na unified, caso o tenantAdmin da tenant unified execute uma chamada de copy data para esse customer em questao, como a plataforma deve atuar?
• A: Criar a task cm mensagem de warning, informando que eh uma task de eliminaca de dados em andamento
• B: Na criar a task, gerando apenas uma mensagem ao usuario.
Mensagem editada no Slack - suporte - Douglas Coimbra Lopes
Como tivemos o canal backend por hora arquivo, traremos um topico que precisamos da confirmacao do time de produto voltado ao cc
• Ponto de duvida: Uma vez que ja tem um customer tenant com task de remove data em execucao na unified, caso o tenantAdmin da tenant unified execute uma chamada de copy data para esse customer em questao, como. plataforma deve atuar?
• A: Criar a task cm mensagem de warning, informando que eh uma task de eliminaca de dados em andamento
• B: Na criar a task, gerando apenas uma mensagem ao usuario.
Mensagem editada no Slack - suporte - Douglas Coimbra Lopes
Como tivemos o canal backend por hora arquivo, traremos um topico que precisamos da confirmacao do time de produto voltado ao cc
• Ponto de duvida: Uma vez que ja tems um customer tenant com task de remove data em execucao na unified, caso o tenantAdmin da tenant unified execute uma chamada de copy data para esse customer em questao, como. plataforma deve atuar?
• A: Criar a task cm mensagem de warning, informando que eh uma task de eliminaca de dados em andamento
• B: Na criar a task, gerando apenas uma mensagem ao usuario.
Mensagem enviada pelo Slack - suporte - Douglas Coimbra Lopes
@MARCOS STUMPF ,
@Geny Isam Hamud Herrera ,
Esta issue acabou de ser vinculada na(s) issue(s) , conforme menções feitas no campo description.