Repository navigation
Update Aspire to 13.6.1 (packages and AppHost SDK) #44
Copy link
Copy link
Closed
Labels
dependenciesPull requests that update a dependency filePull requests that update a dependency file
Milestone
Description
Contexto
O Dependabot abriu o PR #41, que leva Aspire.Hosting.PostgreSQL e Aspire.Npgsql.EntityFrameworkCore.PostgreSQL de 13.5.4 para 13.6.1. Ele não alterou o Aspire.AppHost.Sdk, que continua em 13.5.4 no ControlService.AppHost.csproj, nem a linha da stack no AGENTS.md. O CI verde do #41 não prova que o sistema sobe, porque o CI compila e testa, mas não inicia o AppHost.
Escopo
backend/ControlService/Directory.Packages.props:Aspire.Hosting.PostgreSQLeAspire.Npgsql.EntityFrameworkCore.PostgreSQLem 13.6.1. Esta issue autoriza a mudança de versão desses dois pacotes; nenhum pacote novo.backend/ControlService/src/ControlService.AppHost/ControlService.AppHost.csproj, linha 1:Aspire.AppHost.Sdk/13.6.1.AGENTS.md, linha da stack: ".NET Aspire 13.5" passa a ".NET Aspire 13.6".- Verificação manual do sistema rodando (T02 a T04), com a evidência no relatório final e no pull request.
- Entrega pela opção A: branch
chore/update-aspire-13-6a partir damain, pull request próprio comCloses #44.
Fora do escopo
- Fechar, juntar ou alterar o PR Bump Aspire.Hosting.PostgreSQL and Aspire.Npgsql.EntityFrameworkCore.PostgreSQL #41 — o dono decide depois do merge.
- Usar recursos novos do 13.6 (
WithRepl, terminais, variáveis de volume) — recomendação futura, se houver necessidade. - Configurar ou desligar o histórico do painel — recomendação futura; aqui só se registra onde ele grava.
- Mudar
.github/dependabot.ymlou o CI — recomendação futura. - Corrigir código por causa de mudança incompatível — nenhuma é esperada; se o build ou a subida falharem por isso, parar e avisar o dono.
Dependências
- PR Bump Aspire.Hosting.PostgreSQL and Aspire.Npgsql.EntityFrameworkCore.PostgreSQL #41 (origem da atualização; não é alterado).
- Decisão 31 (Aspire no ambiente local) e decisão 32 (telemetria e health checks): não mudam.
- Docker Desktop ligado, e os segredos
Auth:SigningKeyeAdmin:InitialPasswordjá definidos nos user secrets da API. - Notas de versão: https://aspire.dev/whats-new/aspire-13-6/
Riscos
- O SDK 13.6.1 pode trazer um aviso novo, e aviso quebra o build — aparece no
check.ps1. Corrigir a causa; não suprimir sem falar com o dono. - A supressão de
ASPIRE010pode ter mudado de efeito — aparece se o AppHost tentar confiar no certificado ao subir. Nesse caso, parar e avisar o dono. - O contêiner persistente
controlservice-postgres, criado pelo 13.5.4, pode ser recriado pelo 13.6.1 — os dados ficam no volume, que não pode ser apagado. Conferir o volume antes e depois (T04). - O painel passa a gravar logs e traces num banco SQLite sem criptografia, e a documentação não diz a pasta — localizar a pasta e registrar no relatório; ela não pode estar dentro do repositório.
- A API recusa subir se faltar um segredo — a mensagem cita a chave. O dono define o valor; o agente não escolhe segredos.
- A
mainpode andar durante a execução — atualizar o branch comgh pr update-branch.
Decisões do levantamento
- Entrega pela opção A (pull request próprio a partir da
main) — o squash de um PR do Dependabot sai com autordependabot[bot]eCo-authored-by, o que oAGENTS.mdproíbe. - Versão 13.6.1 nos três componentes — é a mais nova publicada do
Aspire.AppHost.Sdke a mesma do PR Bump Aspire.Hosting.PostgreSQL and Aspire.Npgsql.EntityFrameworkCore.PostgreSQL #41. - A mistura 13.5.4 + 13.6.1 não é testada — ela não será entregue.
Notas de versão do 13.6 que afetam o projeto
- Nenhuma das cinco mudanças incompatíveis nos atinge (MongoDB, Cosmos DB, Azure Front Door, tipos de terminal, apelido de connection string para nomes com hífen; o nosso nome é
controlservice). - O painel iniciado pelo AppHost passa a guardar em SQLite o histórico de até dez execuções, sem criptografia e sem ajuste de permissões no Windows.
- O 13.6.1 corrige contêineres de sessão que ficavam ligados no Windows depois de parar o AppHost; contêineres persistentes não mudam.
- O .NET SDK 11 só é exigido pelo recurso de builds coordenados, que o projeto não usa.
Testes
Esta issue não muda comportamento do produto, então não há teste automatizado novo nem Red. As verificações abaixo são manuais, e a saída de cada uma entra no relatório final.
| ID | Teste | Camada | Regra | Resultado esperado |
|---|---|---|---|---|
| T01 | Deve compilar e passar em toda a suíte com os três componentes do Aspire em 13.6.1 | Verificação (check.ps1) |
— | Código de saída 0, zero avisos, todos os testes verdes, formatação limpa |
| T02 | Deve subir o AppHost com o PostgreSQL e a API | Verificação manual (dotnet run --project src/ControlService.AppHost, em segundo plano) |
— | O console mostra o link do painel, sem erro; o contêiner controlservice-postgres está em execução |
| T03 | Deve responder no endpoint de saúde da API | Verificação manual (curl.exe -k https://localhost:7243/health) |
— | Status 200, corpo Healthy |
| T04 | Deve manter o volume do banco | Verificação manual (docker volume inspect controlservice-postgres-data, antes e depois) |
— | O volume existe nas duas vezes, com a mesma data de criação |
Sem teste próprio: as versões no Directory.Packages.props e no .csproj — cobertas por T01 e T02. A linha do AGENTS.md — conferida na revisão.
Depois de T04, parar toda a árvore de processos do AppHost.
Critérios de aceite
- As verificações T01 a T04 passam, com o comando e a saída no relatório final.
-
check.ps1termina sem avisos, com todos os testes do projeto verdes. - Uma busca por
13.5no repositório (fora debin/eobj/) não encontra mais nenhuma menção ao Aspire. - O volume
controlservice-postgres-datanão foi apagado. - O relatório final diz em que pasta o painel grava o histórico.
- Pull request aberto a partir da
main, comCloses #44, CI verde, semCo-authored-by. - O PR Bump Aspire.Hosting.PostgreSQL and Aspire.Npgsql.EntityFrameworkCore.PostgreSQL #41 continua aberto e intocado.
-
docs/não muda;AGENTS.mdatualizado no mesmo pull request.
Recomendações futuras
- Fazer o Dependabot atualizar também o
Aspire.AppHost.Sdk, para o próximo PR vir completo — exige mudar.github/e precisa ser pesquisado antes. - Decidir se o histórico do painel fica ligado, depois de saber onde ele grava.
- Acrescentar ao guia de atualização de dependências que um PR do grupo
aspireprecisa do SDK alinhado e da subida do AppHost.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
dependenciesPull requests that update a dependency filePull requests that update a dependency file
Activity