You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
3.4 KiB
Markdown

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# CHANGELOG — rastreabilidade
Registo de decisões e ficheiros alterados, por incremento. Referenciar a secção
da SDD que justifica cada alteração.
## v0.3 — Containerização Docker (2026-06-12) — SDD
- Novo requisito: encapsular o site em **Docker** para funcionamento independente
e isolado. Criado [06-deployment.md](./06-deployment.md) (build multi-stage
node→nginx, SPA fallback, compose, healthcheck).
- Novos requisitos funcionais **RF-D1..RF-D6** em [05-acceptance.md](./05-acceptance.md).
- Atualizados [00-overview.md](./00-overview.md), [02-architecture.md](./02-architecture.md)
(stack + estrutura: `Dockerfile`, `.dockerignore`, `nginx.conf`,
`docker-compose.yml`) e índice [README.md](./README.md).
- Benefício direto: o build de TypeScript passa a ser verificável via
`docker build` mesmo sem Node instalado no host (ver [[node-not-installed]]).
- **Estado:** SDD de deployment **aprovada**. Ficheiros Docker criados:
`Dockerfile` (multi-stage node:22-alpine → nginx:1.27-alpine; `npm ci || npm
install`; healthcheck), `.dockerignore`, `nginx.conf` (SPA fallback + gzip +
cache de assets), `docker-compose.yml` (porta `8080:80`, restart, healthcheck).
- **Verificação pendente:** Docker **não está instalado** nesta máquina (`docker`
não está no PATH). Não foi possível correr `docker build` para validar
RF-D1..RF-D6 nem o gate de TS via imagem. Executar assim que houver Docker.
## v0.1 — SDD inicial (2026-06-11)
- Criada estrutura `specs/` (0005 + README + CHANGELOG) a partir de `boot.md`,
`prompt.md` e `input_files/` (`Notas Site.docx`, `cronograma.png`).
- Conteúdo canónico extraído para [03-content.md](./03-content.md).
- **Estado:** SDD **aprovada** (2026-06-11). Início da implementação.
### Decisões (aprovadas pelo PM)
1. Logos dos parceiros → **placeholders** (cartões com sigla/nome) até receber ficheiros.
2. Paleta → usar a **proposta** (primary `#0B2A4A`, accent `#1E6FD9`); afinar depois.
3. Posições de milestones/reports no cronograma — estimadas da imagem; refinar no `Gantt`.
## v0.2 — Implementação (2026-06-11)
Scaffold + implementação completa (SDD §02/§04). Ficheiros criados:
**Config / raiz**
- `package.json`, `vite.config.ts`, `tsconfig.json`, `tsconfig.app.json`,
`tsconfig.node.json`, `components.json`, `index.html`, `.gitignore`,
`README.md`, `public/favicon.svg`
**Core**
- `src/main.tsx`, `src/router.tsx` (tanstack-router, rota `/`), `src/index.css`
(tokens do design system §01), `src/vite-env.d.ts`, `src/App.tsx`
- `src/lib/utils.ts` (cn), `src/lib/scroll.ts` (scroll suave + navItems)
- `src/data/project.ts` (conteúdo canónico §03, tipado)
**UI (shadcn)**`src/components/ui/`: `button`, `card`, `badge`, `dialog`, `sheet`
**Layout**`src/components/layout/`: `Header` (nav + sheet mobile), `Footer`
(parceiros placeholder + financiamento), `Section` (wrapper âncora + in-view)
**Sections**`src/components/sections/`: `Hero`, `Goal`, `WorkPlan`,
`WorkPlanCard`, `Gantt` (cronograma inspirado em `cronograma.png`), `Indicators`,
`IndicatorCard`
### Verificação
- **Pendente:** Node.js/npm não estão instalados nesta máquina (não há `node.exe`
em C:). Não foi possível correr `npm install` / `npm run build` para validar o
gate de TypeScript. Código revisto manualmente. Executar a verificação assim
que o Node estiver disponível (ver `specs/05-acceptance.md`).