# 📌 Visão Geral do Projeto DEJO Node — Checklist Técnico --- ## ✅ COMPLETO ### 🔁 Engine de Consenso - [x] Proposal → Prevote → Precommit - [x] Quórum por stake (PoS BFT) - [x] Persistência de blocos finalizados ### 🔐 Staking - [x] Stake/Unstake via API REST - [x] Bloqueio por tempo (duração) - [x] Validação com stake mínimo (`minStake`) - [x] Persiste em `staking.db` ### 🗳️ DAO (Governança) - [x] Propostas com peso por stake - [x] Votação e apuração com 66% stake - [x] Tipos: `GENERIC`, `PARAM_CHANGE` - [x] Execução automática de `PARAM_CHANGE` - [x] Persiste em `proposals.db` ### 💾 Blocos e Transações - [x] Estrutura básica de bloco e tx - [x] Geração de bloco no consenso ### 📊 Monitoramento - [x] Prometheus em `/metrics` --- ## 🟡 EM ANDAMENTO / PARCIAL ### 🧠 Execução de Transações - [ ] Aplicar lógica real ao bloco (ex: movimentar saldo) ### 📚 State Machine Application - [ ] Módulo separado de estado (contas, variáveis, contratos?) - [ ] ABCI ou internalização via interface ### 💸 Recompensas e Penalidades - [ ] Cálculo de rewards - [ ] Slashing por inatividade ou falha ### 🌐 API Avançada - [ ] Consultas: `/accounts`, `/state`, `/validators`, `/dao/status` ### 🧪 Testes e Simulações - [ ] Testes unitários e mocks de múltiplos nós - [ ] Scripts PoS e DAO automatizados --- ## 🔴 A FAZER ### 🔗 Rede P2P entre nós - [ ] Descoberta, broadcast e sync de blocos - [ ] Comunicação TCP ou gRPC ### 🔐 Assinaturas Criptográficas - [ ] Assinaturas reais de votos e transações - [ ] Validação de chaves públicas ### 🧬 Genesis e Bootstrapping - [ ] Arquivo genesis inicial - [ ] Preload de validadores, config e estado ### 🧰 CLI para interação - [ ] `dejo stake`, `dejo tx`, `dejo query` --- ## 💡 Extras (Futuros) - [ ] Delegação de voto (liquid democracy) - [ ] DAO `UPGRADE` de rede e parâmetros - [ ] Inflação, distribuição e queima de tokens - [ ] Snapshots e sync otimizado - [ ] Docker / Compose para simulação em rede