Skip to content

[P0][Release] Substituir a beta.5 não comprovada por release nova baseada em SHA validado #320

Description

@wesleysimplicio

Parent: #315
Follow-up de: #8, #100 e release v0.3.0-beta.5.

Problema comprovado

A tag e a página da beta.5 existem, mas o workflow de release falhou antes de iniciar os builds e o gate binário. A main também avançou após a tag com o merge da integração AgentHost. Retaggear ou preencher retroativamente a mesma versão apagaria a distinção entre fonte publicada e artefato realmente validado.

Objetivo

Publicar uma nova prerelease imutável a partir de um SHA validado, contendo todos os artefatos declarados, metadados verificáveis e smoke instalado, sem reescrever v0.3.0-beta.5.

Caminho mais rápido

  1. Tratar beta.5 como histórica e explicitamente não comprovada.
  2. Validar a main pelo entrypoint local da [P0][CI] Recuperar validação local sem Actions pago e provar a main pós-beta.5 #316.
  3. Corrigir somente blockers reais encontrados.
  4. Criar versão seguinte; nunca mover tag existente.
  5. Produzir artefatos local/self-hosted se Actions permanecer bloqueado, mantendo a mesma receita reproduzível.

Passo a passo

  1. Selecionar SHA candidato e congelar SHAs/versões de Agent, Runtime, Loop, Mapper, Dev CLI e Fast.
  2. Verificar versionamento consistente em Cargo, --version, pacote Python, release notes, manifest e instaladores.
  3. Rodar perfil release da validação local.
  4. Construir targets suportados em ambientes nativos.
  5. Fazer smoke do binário staged antes de empacotar.
  6. Gerar checksums, SBOM CycloneDX, manifest versionado e proveniência.
  7. Assinar com o mecanismo definido pela issue de trust root; se ainda temporário, não declarar release produtiva.
  8. Instalar em ambiente limpo sem toolchain Rust.
  9. Executar --version, doctor, workspace open e E2E mínimo instalado.
  10. Testar download truncado, checksum inválido e manifest adulterado.
  11. Testar update da última release realmente instalável e downgrade/rollback.
  12. Publicar prerelease apenas após todos os gates obrigatórios passarem.
  13. Verificar assets remotamente: nome, tamanho, SHA256, assinatura e SBOM.
  14. Atualizar README/release notes para versão exata.
  15. Anexar matriz AC → evidência e riscos residuais.

Evidência para fechar

Tag/SHA, lista de assets, tamanhos/hashes, SBOM, assinatura/verificação, logs de build e instalação, receipts E2E, update/rollback e links dos runs ou receipts locais.

Execução

  • Implementar o objetivo descrito.
  • Fazer a implantação aplicável.
  • Executar e registrar os testes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status
    Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions