ADR 0264 — Depois do avanço da pasta, o app reinicia só o processo, sem recriar o container
- Status: aceito
- Data: 2026-11-06
- Tema:
container - Referencia: revisa as decisões 1 e 5 do ADR 0228: o app era lançado uma vez, na criação do container, sem supervisão. Segue o ADR 0263 (a pasta acompanha a
main) e usa a segunda raiz do broker do ADR 0144. Decisão do dono de 06/11/2026 (AT-617; primeiro app na AT-758).
Contexto
O supervisor do app lançava o comando declarado uma vez, sem guardar o PID, e nada o reiniciava. Os comandos das lanes rodam no mesmo container. Parar e subir o container derrubaria esses comandos e voltaria a rodar o comando antigo. O container_recreate exige clique humano. Com a pasta avançando a cada merge (ADR 0263), o app ficaria rodando o código anterior.
Decisão
- Operação nova na porta Docker:
REINICIAR_APP/reiniciarApp. Ela reinicia SÓ o processo do app supervisionado. O supervisor grava o.piddo app para achá-lo. Contrato nobrabo-contracts(por TAG), rota no broker, porta e caso de uso na api. - O engine pede o reinício só quando a pasta andou (
{:avancou}). Merges em sequência, dentro de uns 30 segundos, viram um reinício só. - Linha do tempo:
workspace.checkout_advancede, depois,app.restarted,app.restart_failedouapp.restart_skipped. Nenhum evento leva trecho do log, porque o comando do app pode ter segredo em texto. - A falha só avisa. A pasta não volta: a
mainjá andou, e voltar contradiria o trunk.
Consequências
- As lanes continuam rodando durante o reinício do app.
- O reinício só tem efeito visível depois que o app sobe a primeira vez. Hoje o container nasce antes de a PR de infra declarar o
run.app, o que fica para a AT-758: propor ocontainer_recreate, com clique, depois desse merge. - "Subiu" é medido por uma espera curta. Um app que morre depois disso só aparece no próximo reinício ou no uso.
Alternativas consideradas
- Parar e subir o container. Recusada: derruba os comandos das lanes e reroda o comando antigo.
container_recreateautomático. Recusada: a recriação continua exigindo o clique humano.- Voltar a pasta quando o reinício falha. Recusada pelo dono.