Repository navigation
v0.10.0 - Permissões
Permissões: papéis padrão, permissões por pessoa, escopo por cliente, uso da CLI, visibilidade de pagamentos, convite por e-mail, histórico e tela de gestão de usuários. Também busca global e backup .sql.
Adicionado
Permissões
- Permissões: permissões padrão do Django (view/add/change/delete) + use_cli e view_own_payments, papéis padrão (Administrador, Gerente, Desenvolvedor, Financeiro, Cliente, Leitura) e vínculo usuário↔cliente. #118
- API de usuários, papéis e permissões (só quem gerencia usuários): listar, papéis, permissões por pessoa, clientes, ativar/desativar; /api/auth/me devolve papéis e permissões efetivas. #119
- Permissões em clientes e projetos: sem clients.view_client só vê os clientes de que é membro; criar/editar/excluir exige as permissões padrão (403 com a permissão nomeada). #120
- Permissões em cards e comentários: add_card para criar; sem change_card/delete_card só edita, move, exclui e arquiva os próprios (criado por ou responsável); delete_comment para apagar comentários de outros. #121
- Permissões em sprints, milestones, etiquetas e anexos: add/change/delete de sprint, milestone e etiqueta exigem as permissões padrão; sprint/etiqueta de cliente de fora dá 404; anexar e excluir anexo seguem a regra do card (quem enviou ou quem pode editar o card). #122
- Permissão de uso da CLI: a CLI se identifica com X-HubFlow-Client: cli; o login pela CLI exige permissions.use_cli (403 com o motivo) e marca o token (is_cli), que deixa de valer se a permissão for retirada. #123
- Permissões de pagamentos: billing.view_payment vê todos, view_own_payments só os dos clientes de que é membro (lista, detalhe, resumo e faturamento do dashboard), sem nenhuma 403; criar, editar/pagar/copiar e excluir exigem add/change/delete_payment. #124
- Convite por e-mail: POST /api/users/invite (accounts.add_user) cria a pessoa sem senha, com papéis e clientes, e envia o link para definir a senha (mesmo fluxo da redefinição). #125
- Registro de alterações de permissões: convite, papéis, permissões por pessoa, clientes vinculados e situação guardam quem fez, quando, o antes e o depois; GET /api/users/changes (filtro ?user=) e admin. #126
- Frontend respeita as permissões de /api/auth/me: menu, rotas, botões de criar/editar/excluir (clientes, projetos, cards, sprints, etiquetas, pagamentos), arrastar só os cards que a pessoa pode mover, painel do card só leitura para quem não pode editar. #127
- Tela de usuários e permissões (/settings/users): lista com papéis, clientes e situação; painel com papéis, clientes vinculados, CLI sim/não, pagamentos (todos / só os seus / nenhum), permissões por pessoa (travadas as que vêm do papel), ativar/desativar, histórico e convite por e-mail. #128
- CLI: hubflow user list, invite, role e grant (--revoke). #129
- CHANGELOG 0.10.0 e documentação de papéis e permissões (README e regras RN-90 a RN-97). #130
Polimento
- Backup .sql do banco (comando backup_db, POST/GET /api/backups para superusuários, hubflow backup). #103
- API de busca global: GET /api/search?q= em cards, projetos, clientes, usuários e etiquetas. #110
- CLI: hubflow search. #112
- Busca global na barra superior (Ctrl+K ou /), resultados agrupados com navegação por teclado; abre o card pela busca. #111
Alterado
- Regra RN-80 atualizada: pagamento por projeto, sprint opcional (#131).