NoteBugsDocs

Funcionalidades

Espaços de trabalho

A raiz da hierarquia, e a única fronteira de isolamento do NoteBugs.

Um espaço de trabalho (tenant, no código e na API) é um NoteBugs inteiro dentro do mesmo NoteBugs: colunas próprias, projetos próprios, etiquetas próprias, cards próprios. Nada atravessa a fronteira, nem um vínculo entre dois cards.

Para que existe

  • Separar contextos que não se misturam: o trabalho de um cliente, o time interno, os projetos pessoais.
  • Dar a cada contexto o próprio conjunto de colunas: um quadro de suporte não tem as mesmas etapas de um quadro de produto.
  • Ser a unidade de acesso: uma pessoa é membro de alguns espaços e simplesmente não vê os outros.

Como funciona

  1. 1Um espaço novo nasce com as 5 colunas padrão, criadas na mesma transação. Não há seed nem passo de configuração.
  2. 2Card, projeto, etiqueta e coluna carregam tenantId, e ele é imutável: nenhum schema de edição aceita esse campo.
  3. 3O epic é a exceção: ele herda o espaço do projeto, e por isso POST /api/epics não pede tenantId.
  4. 4Quem não é membro de espaço nenhum recebe um quadro vazio, e não um erro: é um estado da conta.

Pontos de atenção

  • O último espaço não é apagado. A checagem acontece dentro da transação, para que duas requisições simultâneas não passem as duas.
  • Apagar leva tudo junto (cards, projetos, epics, etiquetas, comentários e os arquivos no volume), e por isso a rota exige a frase APAGAR TENANT no corpo.
  • O número do card (`#42`) é único na instalação inteira, e não por espaço: ele serve para citar o card num commit, então dois #42 em espaços diferentes não podem existir.
  • A ordem dos espaços tem rota própria (/api/tenants/order) e recebe um subconjunto, como epics e colunas.