44 lines
2.8 KiB
Markdown
44 lines
2.8 KiB
Markdown
# Registo de alterações
|
|
|
|
Todas as alterações materiais são registadas neste ficheiro. O formato segue Keep a Changelog sem exigir versionamento formal durante o desenvolvimento inicial.
|
|
|
|
## Não publicado
|
|
|
|
### Adicionado
|
|
|
|
- Fundação Laravel 13 com React 19, Inertia 3, TypeScript, Tailwind 4 e Fortify.
|
|
- Infraestrutura Docker Compose para Nginx, PHP-FPM, PostgreSQL, Redis, Vite, filas, scheduler e Mailpit.
|
|
- Modelos e migrations de identidades, perfis, permissões, ativos, reservas, aprovações, bloqueios, entregas, sincronizações e auditoria.
|
|
- Restrição PostgreSQL para impedir reservas bloqueantes sobrepostas.
|
|
- Serviços transacionais de disponibilidade e criação de pré-reserva.
|
|
- Dashboard, catálogo filtrável, formulário de requisição multi-equipamento e histórico pessoal.
|
|
- Seeders com perfis, ativos fictícios e contas de demonstração.
|
|
- Documentação de arquitetura, requisitos, decisões, operação, estado e handoff.
|
|
- Cliente de leitura Snipe-IT com autenticação Bearer, paginação, timeout, retries seletivos, DTOs e mapper defensivo.
|
|
- Sincronização horária e manual de equipamentos, job único, lock distribuído, histórico de execuções e desativação segura de ausentes.
|
|
- Área administrativa de diagnóstico Snipe-IT com teste de conectividade, métricas do cache e histórico de sincronizações.
|
|
- Autorização administrativa através de Gate e navegação condicional por perfil.
|
|
|
|
### Alterado
|
|
|
|
- Nome, identidade visual e idioma orientados ao Portal de Reservas.
|
|
- Configuração padrão alterada para PostgreSQL, Redis, SMTP/Mailpit e Europa/Lisboa.
|
|
- Configuração de desenvolvimento Vite passa a publicar módulos e HMR em `localhost:5173` e a aceitar explicitamente a origem do portal em `localhost:8000`, corrigindo a página em branco em Docker.
|
|
- As mensagens flash globais recebem agora as propriedades diretamente de `withApp`, evitando o uso de `usePage()` fora do contexto Inertia que interrompia o arranque do React.
|
|
- SSR de desenvolvimento ligado internamente de PHP para o serviço `node`, com o hostname Docker autorizado no Vite.
|
|
|
|
### Segurança
|
|
|
|
- Registo público desativado.
|
|
- Variáveis para tokens Snipe-IT separados e credenciais Entra ID documentadas sem valores.
|
|
|
|
### Verificado
|
|
|
|
- Migrations e seeders executados em PostgreSQL 17 real.
|
|
- Suite backend: Pint, PHPStan nível 7 e 53 testes Pest (201 asserções).
|
|
- Frontend: TypeScript, ESLint, Prettier e build Vite de produção.
|
|
- Stack Docker operacional e endpoint de login acessível através do Nginx.
|
|
- Renderização SSR real do login validada, incluindo o conteúdo “Entrar no Portal de Reservas”.
|
|
- API Snipe-IT simulada em testes: paginação, headers, retry, erro em HTTP 200, falha parcial, idempotência e desativação de ausentes.
|
|
- Migration `last_seen_sync_run_id` aplicada em PostgreSQL 17.
|