Pite-Backend
v0.10.0
v0.10.0 — AI Engine, Integrações Externas e Segurança
2026-09-02
## O que há de novo
### [AI-ENGINE] Serviço de Inteligência Artificial (#64)
Módulo completo de análise automática do histórico do atleta com fluxo de aprovação humana pelo treinador.
- **#65** Estrutura do AI Service e contrato de entrada/saída (`AthleteTrainingSnapshot`, `TrainingSuggestion`, `TrainingAnalysisEngine`)
- **#66** Coleta de features do histórico do atleta (`FeatureCollectionService` — volume, ritmo, sono, RPE dos últimos 28 dias)
- **#67** Análise de fadiga/overtraining baseada em regras (`RuleBasedTrainingAnalysisEngine`)
- **#68** Geração e persistência de sugestões (`AiSuggestion` com status PENDING/APPROVED/REJECTED)
- **#69** `GET /coach/ai-suggestions` — lista sugestões pendentes dos atletas vinculados ao treinador
- **#70** `PATCH /coach/ai-suggestions/{id}/decide` — treinador aprova ou rejeita com justificativa; decisão definitiva via `CoachAccessGuard`
### [INTEGRATION] Integrações Externas (#57)
- **#58** Módulo integration-service e interface ActivityImportConnector
- **#59** GarminConnector — OAuth + importação de atividades
- **#60** StravaConnector — OAuth + importação de atividades
- **#61** TrainingPeaksConnector (esqueleto)
- **#62** AppleHealthConnector (esqueleto)
- **#63** Importação de atividade externa para Activity
### [SECURITY] Auditoria e correções de segurança
- **#93** @OwnershipRequired — verificação de ownership declarativa
- **#94** IDOR corrigido em endpoints de coach
- **#95** JWT secret fraco removido — guard em produção
- **#96** Redis exige autenticação em produção
---
🤖 Generated with [Claude Code](https://claude.com/claude-code)
ver release completa →
Pite-Backend
v0.1.0
v0.1.0 — Fundação do projeto Spring Boot
2026-08-12
## Checkpoint: fim do módulo `[INFRA] Fundação do projeto Spring Boot` (#1)
Versão **pré-1.0**, sem garantia de estabilidade de API — marca apenas que o módulo de fundação (issues #2 a #11) está concluído. Nenhum domínio de negócio (Identity, Athlete, Workout etc.) existe ainda.
### O que entra nessa versão
- **Estrutura do projeto**: Maven, Java 21, Spring Boot 4.1.0, empacotamento por domínio (#2).
- **Docker Compose**: Postgres + Redis + MinIO + app, com healthchecks e portas configuráveis via `.env` (#3).
- **PostgreSQL + Flyway**: `ddl-auto=validate` em todos os profiles, migrations versionadas (#4).
- **Cache Redis**: `RedisCacheManager` + `@EnableCaching`, convenção de nome/TTL documentada (#5).
- **MinIO**: `StorageService` genérico (upload/download/delete/presignedUrl), buckets iniciais criados automaticamente (#6).
- **Tratamento de erro global**: `ApiError` padronizado, `GlobalExceptionHandler` cobrindo 404/400/403/500 (#7).
- **Profiles `dev`/`prod`**: variáveis de ambiente, sem credencial hardcoded, CORS por ambiente (#8).
- **OpenAPI/Swagger**: documentação automática em `/swagger-ui/index.html`, versionamento `/api/v1` (#9).
- **CI/CD**: build + testes + Testcontainers + lint como gates obrigatórios em todo push/PR (#10).
- **Healthcheck + logging estruturado**: `/actuator/health` (Postgres/Redis/MinIO), logging via [trilha-log](https://github.com/trilha-log/trilha-log) com `traceId` de correlação por requisição (#11).
### Limitações conhecidas
- **Endpoints exigem HTTP Basic Auth por padrão** (senha aleatória gerada no boot), inclusive `/swagger-ui`, `/v3/api-docs` e rotas inexistentes (que deveriam devolver 404, hoje devolvem 401). Isso é o comportamento padrão do Spring Security sem um `SecurityFilterChain` customizado — só `/actuator/health` é liberado publicamente pela autoconfiguração do Actuator. Fica resolvido quando o épico `[IDENTITY]` (autenticação real) for implementado.
- **Proteção de branch em `main`** não pôde ser configurada — GitHub bloqueia essa feature (branch protection/rulesets) para repositórios privados em contas Free (exige upgrade para Pro/Team, ou tornar o repositório público).
### Como rodar
Ver `README.md` — `docker compose up -d --build` (com `.env` configurado, incluindo `GITHUB_ACTOR`/`GITHUB_TOKEN` para resolver o `trilha-log` do GitHub Packages).
ver release completa →