feat: bootstrap project

This commit is contained in:
Duarte
2026-05-31 20:22:50 +01:00
commit 66581ef584
65 changed files with 7915 additions and 0 deletions
@@ -0,0 +1,19 @@
# US00 - Inicialização do Utilizador Administrador (Seed/Bootstrap)
**Como** Sistema RefoodOne
**Quero** garantir que existe pelo menos um utilizador Administrador inicial na base de dados aquando do primeiro arranque
**Para** permitir que a equipa possa fazer login e começar a gerir o sistema.
## Descrição do Fluxo
Durante a inicialização da base de dados (ou execução das migrações/seed), o sistema deve verificar se já existe algum utilizador registado. Se a base de dados estiver vazia, deve criar automaticamente o utilizador administrador inicial com credenciais pré-definidas.
## Critérios de Aceitação
### 1. Utilizador Administrador Inicial
- **E-mail / Username**: `refoodpdn`
- **Palavra-passe**: `rpdn!2512` (deve ser guardada de forma segura na base de dados usando hash argon2 ou bcrypt)
- **Perfil (Role)**: `admin`
### 2. Comportamento e Regras de Negócio
- O bootstrap deve ocorrer apenas uma vez. Se o utilizador `refoodpdn` já existir, a rotina não deve duplicar o registo nem reescrever a palavra-passe caso esta tenha sido alterada pelo utilizador.
- O processo deve ser automático ao correr as migrações/inicialização do servidor ou através de um script de sementeira (seed) dedicado.