Introduces Filament management for site settings, services, portfolio cases, and testimonials with admin-only policies, validated media uploads, and deterministic seeding. Includes comprehensive design and task documentation for the implementation. Co-authored-by: Cursor <cursoragent@cursor.com>
43 lines
2.4 KiB
Markdown
43 lines
2.4 KiB
Markdown
## Why
|
|
|
|
A Fase 0 — Fundação está concluída e arquivada; o próximo passo do MVP é permitir que a assessora gerencie conteúdo do site no Filament antes de expor rotas públicas. Sem modelos, migrations e Resources internos para configurações, serviços, portfólio e depoimentos, a Fase 1 não pode avançar e o site permanece estático.
|
|
|
|
## What Changes
|
|
|
|
- Criar tabelas e models conforme SPEC §8.2: `site_settings`, `services`, `portfolio_cases`, `portfolio_images`, `testimonials`.
|
|
- Implementar CMS Filament no grupo **Conteúdo do site** (SPEC §5.2) para WEB-02, WEB-03, WEB-04 e WEB-06.
|
|
- Introduzir regras compartilhadas de upload de mídia pública (allowlist MIME, limite de tamanho, path aleatório, alt text obrigatório).
|
|
- Policies admin-only para conteúdo do site; assistant não gerencia CMS (WEB-02).
|
|
- Factories e seed parcial de demonstração (3 serviços, 3 casos, 3 depoimentos, settings).
|
|
- Alinhar `phpunit.xml` para feature tests locais em PostgreSQL (delta de `quality-gates`).
|
|
|
|
## Non-Goals
|
|
|
|
Conforme [SPEC.md §4.2](../../SPEC.md) e a divisão da Fase 1:
|
|
|
|
- Rotas públicas, home editorial (WEB-01), páginas institucionais (WEB-07), briefing (WEB-05).
|
|
- SEO, sitemap, robots, snapshots visuais e testes de acessibilidade do site público.
|
|
- Page builder, CRUD de categorias, auditoria de publicação (`audit_logs` — Fase 5).
|
|
- Variantes responsivas de imagem (adiadas para change `build-public-site`).
|
|
|
|
## Capabilities
|
|
|
|
### New Capabilities
|
|
|
|
- `site-settings`: singleton tipado de configurações globais do site (WEB-06).
|
|
- `service-catalog`: CRUD de serviços publicáveis com slug único (WEB-02).
|
|
- `portfolio-cases`: casos de portfólio com galeria ordenada (WEB-03).
|
|
- `testimonials`: depoimentos publicáveis (WEB-04).
|
|
- `content-media`: validação e armazenamento compartilhado de imagens públicas (SPEC §6.4, §12.4).
|
|
|
|
### Modified Capabilities
|
|
|
|
- `quality-gates`: feature tests locais MUST usar PostgreSQL, alinhados ao CI (SPEC §14.2, §20).
|
|
|
|
## Impact
|
|
|
|
- **Cria**: migrations, models, factories, Policies, Filament Resources/Pages em `app/Filament/`, seeders, testes feature em `tests/Feature/Marketing/`.
|
|
- **Altera**: `phpunit.xml`, `DatabaseSeeder`, navegação do painel Filament.
|
|
- **Depende de**: specs arquivadas da fundação (`internal-authentication`, `design-tokens`, `quality-gates`).
|
|
- **Sem impacto** em rotas públicas existentes além do placeholder `/`.
|