Files
amare/openspec/config.yaml
Manoel Freitas 236a7d3ea9 feat: Fase 0 — Fundação (setup-foundation) (#1)
* docs(openspec): propose setup-foundation change

Add OpenSpec change for SPEC Phase 0 — Foundation with proposal,
design, capability specs, and implementation tasks. Populate
openspec/config.yaml with project context and artifact rules.

Co-authored-by: Cursor <cursoragent@cursor.com>

* feat: bootstrap Laravel 13 foundation (Fase 0)

Implement OpenSpec change setup-foundation: Laravel 13 + Filament 5
admin panel, Livewire 4 public site shell, PostgreSQL via Compose,
design tokens, role-based auth, quality gates (Pint/Larastan/Pest),
FrankenPHP Dockerfile, and GitHub Actions CI with five blocking jobs.

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix(ci): use valid APP_KEY for encryption in tests

Co-authored-by: Cursor <cursoragent@cursor.com>

---------

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-27 22:05:25 -03:00

23 lines
1.3 KiB
YAML

schema: spec-driven
context: |
Fonte de verdade: SPEC.md na raiz. Precedência: instrução do dono do produto > SPEC.md > ADRs > testes > convenções.
Produto: plataforma de assessoria de eventos, single-tenant, MVP. UI em pt-BR, timezone America/Fortaleza, BRL.
Stack: Laravel 13, Filament 5 (/admin), Livewire 4 + Blade + Alpine + Tailwind (site público),
PostgreSQL, FrankenPHP regular mode (sem worker mode), Vite, Pest 4 + Pest Browser, database queue.
Arquitetura: monólito modular. Interface -> Application (Actions/Queries) -> Domain (Enums/VOs) -> Infrastructure.
Domain não depende de Filament/Livewire. strict_types em todo PHP próprio.
Princípio: YAGNI. Nada da seção 4.2 "Fora do MVP". Sem repositórios genéricos, sem BaseService/BaseAction.
Dinheiro sempre em centavos BIGINT, nunca float. Status derivável não é persistido.
rules:
proposal:
- Referenciar os IDs de requisito do SPEC.md (WEB-xx, CRM-xx, ADM-xx, etc.)
- Incluir seção de não objetivos apontando para SPEC.md 4.2
specs:
- Cenários em WHEN/THEN derivados dos blocos gherkin do SPEC.md quando existirem
- Requisitos normativos em SHALL/MUST
tasks:
- Cada task é fatia vertical verificável (migration + regra + UI + teste quando aplicável)
- Nenhuma task marcada concluída sem gate de qualidade correspondente