Skip to content
  1. Aug 07, 2026
    • Igor Matheus's avatar
      README da raiz: o que é o projeto, e as regras que não se negocia · 938ee639
      Igor Matheus authored
      
      
      O arquivo era o template do GitLab explicando como subir arquivos. Trocado por
      uma porta de entrada real: as três partes do monorepo, as seis regras de domínio
      que quebram a competição se forem violadas (prazo pelo servidor, sigilo até o fim
      do jogo, empate sem faixa de saldo, campeão nunca congelado, saída definitiva,
      tudo adiado) e onde ler o processo.
      
      Co-Authored-By: default avatarClaude Opus 5 (1M context) <noreply@anthropic.com>
      938ee639
    • Igor Matheus's avatar
      Bolão: backend NestJS, app Flutter e o processo que os produziu · e51807ea
      Igor Matheus authored
      Produto completo de bolão de futebol, construído do PRD ao device: 35 das 38
      stories fechadas, 312 de 318 tasks, três PRDs concluídos (Identificação e
      acesso, Criação e convite, Ciclo de vida do bolão).
      
      Backend (NestJS 11 + Prisma 7 + Postgres)
      - Palpite com prazo decidido pelo relógio do servidor, sigilo até o fim do jogo,
        apuração 10/5/3 lida da configuração do bolão, ranking com desempate por
        critério configurável, extrato explicando cada ponto.
      - Ciclo de vida: encerramento normal e antecipado, campeão derivado na leitura
        (nunca congelado), arquivamento reversível, recriação de temporada herdando
        regras e galera.
      - Fonte oficial de calendário e placar via porta `FonteDeDados`: adaptador falso
        para desenvolvimento e `FootballDataAdapter` (football-data.org v4) para
        produção. O limite de 10 req/min desenhou o adaptador — uma requisição por
        temporada, cache de 5 min, cota recusada antes de ser gas...
      e51807ea
    • Igor Matheus's avatar
      Initial commit · 5a0abfed
      Igor Matheus authored
      5a0abfed