* 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>
25 lines
910 B
Markdown
25 lines
910 B
Markdown
## ADDED Requirements
|
|
|
|
### Requirement: Public health endpoint responds without authentication
|
|
|
|
The system SHALL expose `GET /up` as a public healthcheck endpoint that does not require authentication.
|
|
|
|
#### Scenario: Application is healthy
|
|
|
|
- **WHEN** a client sends `GET /up` while the application is running normally
|
|
- **THEN** the system responds with HTTP 200 in a timely manner
|
|
|
|
#### Scenario: Health endpoint exposes no secrets
|
|
|
|
- **WHEN** a client sends `GET /up`
|
|
- **THEN** the response MUST NOT include credentials, tokens, stack traces, or environment secrets
|
|
|
|
### Requirement: Health endpoint reflects application failure
|
|
|
|
The system SHALL return a failure status when the application cannot initialize properly.
|
|
|
|
#### Scenario: Application cannot boot
|
|
|
|
- **WHEN** the application fails to boot due to misconfiguration or missing dependencies
|
|
- **THEN** the health endpoint MUST NOT return HTTP 200
|