Skip to content

Releases

v1.1.0 · a sessão e o link deixam de ser credenciais soltas

Choose a tag to compare

@danielgorgonha danielgorgonha released this 15 Sep 18:29
2a436ef

Segurança e privacidade

  • A sessão saiu do armazenamento do navegador e virou cookie inacessível a script. Para isso o navegador
    deixou de falar direto com o serviço: agora ele fala com a aplicação, e a aplicação fala com o serviço.
    Quem estava com sessão aberta no pacote antigo foi deslogado uma vez.
  • O link do documento deixou de ser credencial de quem o tivesse. Ele pode vencer, pode ser cancelado e pode
    ser endereçado a uma pessoa. Ler e perguntar seguem sem exigir conta, de propósito; o que exige identidade é
    guardar o comprovante, porque ele afirma que uma pessoa entendeu o documento.

Infraestrutura

  • A configuração de deploy do serviço virou código em .railway/railway.ts, antes do corte do formato antigo
    em 2026-12-01. O deploy passou a esperar a verificação contínua e só reconstrói quando o serviço muda.
  • O sinal de vida do serviço apontava para uma rota que não existia mais, então a verificação de saúde nunca
    rodava. Agora aponta para GET /health, e um teste amarra o caminho declarado à rota servida.
  • main protegida: pull request obrigatório, uma aprovação, verificação verde, sem reescrita de histórico.

Por dentro

  • O serviço passou a nomear funções, classes e módulos em inglês. Nenhuma rota, campo ou coluna mudou.
  • A raiz do repositório usa pnpm, como o resto, em vez de npm.
  • Saíram do versionamento arquivos que o build gera: o service worker e o estado de execução do chat de bastidores.

v1.0.0 · primeira versão pública

Choose a tag to compare

@danielgorgonha danielgorgonha released this 15 Sep 14:03

Primeira versão pública do LeIA, com o repositório aberto sob licença MIT.
Em produção em https://leia-snowy.vercel.app.

Produto

  • Jornada do cidadão: explicação em linguagem simples com o trecho original ao lado, um tópico por vez, dúvidas respondidas só com o que está no documento, conferência de compreensão com rubrica e ponto a rever quando erra.
  • Painel do advogado: envio do documento, revisão do resumo estruturado e aprovação, que é o que libera o link para o cidadão.
  • Comprovante com QR e página pública de verificação, conferível por terceiro sem depender do serviço.
  • Documentação navegável em /docs, gerada do markdown do repositório, com diagramas em tela cheia.
  • Aplicação instalável, responsiva do celular ao computador.

Segurança e privacidade

  • O registro público deixou de carregar o link do documento do cidadão. Passou a identificá-lo por um hash, sem o salt decorativo que não protegia nada.
  • O hash da tentativa virou reprodutível a partir do que fica gravado, sem endereço de rede nem navegador.
  • Teto de tentativas na conferência, para o registro não sair por tentativa e erro.
  • O comprovante em PDF deixou de afirmar o que não prova e de imprimir endereço de rede e navegador.
  • A casca HTML antiga do serviço saiu inteira: dez rotas e sete templates, e com eles o gabarito visível no HTML e o PDF acessível sem autenticação.
  • Rotas de bastidor restritas ao papel de fornecedor.
  • Abrir o link deixou de vincular o documento a quem abriu. O vínculo virou um ato explícito.
  • O markdown da documentação deixou de renderizar HTML bruto, fechando a injeção por pull request de documentação.
  • Prova de carimbo que não corresponde ao registro é refeita em vez de bloquear o carimbo.

Infraestrutura

  • Integração contínua nos dois lados a cada pull request, com main protegida: pull request obrigatório, uma aprovação e verificação verde.
  • Sinal de vida em GET /health no serviço, que é o que autoriza uma versão nova a assumir.

Origem

Nasceu no Hackathon da Cidadania OAB-PR, 6ª edição, Curitiba, 12 e 13 de setembro de 2026, equipe Token Economy, categoria Inovação Aberta e Cidadania. A tag token-economy/v0.1.0 marca a primeira entrega do evento e fica como registro.