docs: atualiza readme com diagrama de arquitetura e status
This commit is contained in:
parent
1569deb1ce
commit
1693003d9d
1 changed files with 94 additions and 0 deletions
94
README.md
94
README.md
|
|
@ -344,7 +344,101 @@ Ver [docs/ROADMAP.md](docs/ROADMAP.md) para detalhes.
|
||||||
5. Abra um Pull Request
|
5. Abra um Pull Request
|
||||||
|
|
||||||
---
|
---
|
||||||
|
## 📊 Status Atual do Sistema (GoHorse Report)
|
||||||
|
|
||||||
|
Diagrama gerado automaticamente com base nos testes de validação do MVP.
|
||||||
|
Legenda:
|
||||||
|
* 🟢 **Verde:** Funcionando/Operacional.
|
||||||
|
* 🟡 **Amarelo:** Parcial/Bugado.
|
||||||
|
* 🔴 **Vermelho:** Quebrado/Faltando Config.
|
||||||
|
* 💀 **Vermelho Escuro:** Falha Crítica de Segurança.
|
||||||
|
|
||||||
|
```mermaid
|
||||||
|
graph TD
|
||||||
|
%% Estilos
|
||||||
|
classDef working fill:#dcfce7,stroke:#16a34a,stroke-width:2px;
|
||||||
|
classDef partial fill:#fef9c3,stroke:#ca8a04,stroke-width:2px,stroke-dasharray:5 5;
|
||||||
|
classDef broken fill:#fee2e2,stroke:#dc2626,stroke-width:2px,stroke-dasharray:5 5;
|
||||||
|
classDef critical fill:#991b1b,stroke:#fca5a5,stroke-width:4px,color:#fff;
|
||||||
|
classDef success fill:#dcfce7,stroke:#16a34a,stroke-width:2px;
|
||||||
|
classDef warning fill:#fef9c3,stroke:#ca8a04,stroke-width:2px;
|
||||||
|
classDef error fill:#fee2e2,stroke:#dc2626,stroke-width:2px;
|
||||||
|
|
||||||
|
subgraph Frontend["Frontend & App"]
|
||||||
|
FE[Next.js 15]:::working
|
||||||
|
end
|
||||||
|
|
||||||
|
subgraph Backend["Core Backend"]
|
||||||
|
API[Go API]:::working
|
||||||
|
DB[(PostgreSQL)]:::working
|
||||||
|
BO[NestJS Backoffice]:::broken
|
||||||
|
end
|
||||||
|
|
||||||
|
subgraph Integracoes["Integrações (O Gargalo)"]
|
||||||
|
MQ[LavinMQ]:::broken
|
||||||
|
S3["Cloudflare R2/S3<br/>(Uploads)"]:::broken
|
||||||
|
FCM[Firebase FCM]:::broken
|
||||||
|
AW["Appwrite Realtime<br/>(Chat)"]:::broken
|
||||||
|
ST["Stripe<br/>(Pagamentos)"]:::broken
|
||||||
|
end
|
||||||
|
|
||||||
|
%% Fluxos
|
||||||
|
FE -->|✅ OK| API
|
||||||
|
API -->|✅ OK| DB
|
||||||
|
|
||||||
|
%% Falhas
|
||||||
|
API -.->|❌ Falha no Upload| S3
|
||||||
|
FE -.->|❌ Falha na Conexão| AW
|
||||||
|
API -.->|❌ Não Configurado| MQ
|
||||||
|
API -.->|❌ Mockado/Ignorado| ST
|
||||||
|
|
||||||
|
%% Alerta de Segurança
|
||||||
|
SEC["⚠️ FALHA CRÍTICA DE SEGURANÇA<br/>Usuário altera o próprio Role para SuperAdmin"]:::critical
|
||||||
|
FE -.-> SEC
|
||||||
|
|
||||||
|
%% Atores
|
||||||
|
Empresa((Empresa))
|
||||||
|
Candidato((Candidato))
|
||||||
|
|
||||||
|
%% Fluxo Empresa
|
||||||
|
subgraph JornadaEmpresa["Jornada da Empresa"]
|
||||||
|
LoginE[Login/Registro]:::success
|
||||||
|
Dash[Dashboard]:::warning
|
||||||
|
NewJob[Criar Vaga]:::warning
|
||||||
|
Payment[Pagamento]:::error
|
||||||
|
ListJobs[Listar Minhas Vagas]:::error
|
||||||
|
AdminUser[Gerenciar Usuários]:::success
|
||||||
|
end
|
||||||
|
|
||||||
|
%% Fluxo Candidato
|
||||||
|
subgraph JornadaCandidato["Jornada do Candidato"]
|
||||||
|
Search[Buscar Vagas]:::success
|
||||||
|
Details[Ver Detalhes]:::success
|
||||||
|
Apply[Candidatar-se]:::error
|
||||||
|
end
|
||||||
|
|
||||||
|
%% Conexões Empresa
|
||||||
|
Empresa --> LoginE
|
||||||
|
LoginE --> Dash
|
||||||
|
Dash -->|Botão 'Publish' não funciona| NewJob
|
||||||
|
NewJob -->|❌ Salva mas não aparece na lista da empresa| ListJobs
|
||||||
|
NewJob -.->|❌ Pula Etapa| Payment
|
||||||
|
LoginE -->|⚠️ PERIGO: Permite virar Admin| AdminUser
|
||||||
|
|
||||||
|
%% Conexões Candidato
|
||||||
|
Candidato --> Search
|
||||||
|
Search -->|Vê vaga criada pela empresa| Details
|
||||||
|
Details -->|❌ Erro: Upload Obrigatório Falha| Apply
|
||||||
|
|
||||||
|
%% Funcionalidades Isoladas
|
||||||
|
subgraph OutrosModulos["Outros Módulos"]
|
||||||
|
Tickets[Tickets/Suporte]:::success
|
||||||
|
Chat[Chat Realtime]:::error
|
||||||
|
end
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
---
|
||||||
## 📄 Licença
|
## 📄 Licença
|
||||||
|
|
||||||
Este projeto está sob a licença MIT. Veja [LICENSE](LICENSE) para detalhes.
|
Este projeto está sob a licença MIT. Veja [LICENSE](LICENSE) para detalhes.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue