You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Status: a decidir no futuro — NÃO implementar agora. Registrado após a auditoria 2026-06 (#730–#746) para não perder o racional da discussão.
Contexto
Surgiu a pergunta: vale uma aba de configuração do server: no admin, para não depender do terminal? A conclusão da discussão foi não editar infra pela web, mas que uma aba read-only de diagnóstico resolveria a maior parte da necessidade real (conferir é muito mais frequente que mudar).
Por que NÃO editar server: pela web (racional registrado)
Boot-time, não runtime — port, bind-address, context-path, hosts são consumidos na subida; state.config é um Arc<Config> imutável. Edição ao vivo exigiria hot-reload (ArcSwap) ou um "salvar e reiniciar" pior que o terminal.
Risco de lockout — errar base-path/bind/useForwardHeaders de dentro do admin derruba o próprio admin. O padrão "apply + rollback se não confirmar" é complexidade demais para o ganho.
Superfície de segurança — o modelo é deliberado: secrets só via ${ENV}, volumes Admin-only, DB nunca vê infra. Um editor web do YAML inverteria isso (admin comprometido → controla bind/hosts/volumes). ShinyProxy também não faz.
Frequência ≈ zero — server: muda no deploy inicial (que já exige terminal) e raramente depois; o que muda toda semana (catálogo/aparência/usuários) já está no admin.
Escopo proposto (se aprovado): aba "Sistema", Admin-only, read-only
Boa parte já existe espalhada (startup banner na aba Logs, banner de backend no dashboard) — seria consolidação, custo baixo.
Fora do escopo (decidido contra, manter assim salvo nova discussão)
Edição de qualquer campo de server:/proxy: de infra pela web.
Editor do YAML pelo admin.
Caso apareça dor real com um knob específico (ex.: heartbeat-timeout global, metrics-interval), promover esse knob individualmente a setting runtime no DB — caso a caso, como foi feito com a aparência — em vez de abrir o server: inteiro.
Status: a decidir no futuro — NÃO implementar agora. Registrado após a auditoria 2026-06 (#730–#746) para não perder o racional da discussão.
Contexto
Surgiu a pergunta: vale uma aba de configuração do
server:no admin, para não depender do terminal? A conclusão da discussão foi não editar infra pela web, mas que uma aba read-only de diagnóstico resolveria a maior parte da necessidade real (conferir é muito mais frequente que mudar).Por que NÃO editar
server:pela web (racional registrado)port,bind-address,context-path,hostssão consumidos na subida;state.configé umArc<Config>imutável. Edição ao vivo exigiria hot-reload (ArcSwap) ou um "salvar e reiniciar" pior que o terminal.base-path/bind/useForwardHeadersde dentro do admin derruba o próprio admin. O padrão "apply + rollback se não confirmar" é complexidade demais para o ganho.${ENV}, volumes Admin-only, DB nunca vê infra. Um editor web do YAML inverteria isso (admin comprometido → controla bind/hosts/volumes). ShinyProxy também não faz.server:muda no deploy inicial (que já exige terminal) e raramente depois; o que muda toda semana (catálogo/aparência/usuários) já está no admin.Escopo proposto (se aprovado): aba "Sistema", Admin-only, read-only
useForwardHeaders, heartbeat global,max-body-size, modo do DB (sqlite/pg), backend Docker, e oshostsmulti-host com estado de conexão de cada um (o fan-out do MultiHostDockerBackend silently inherits no-op trait defaults — liveness reconcile, disk panel and stop_spec reap are all dead on multi-host #734 degrada silenciosamente — merece superfície).IgnoredCompatField,ReplicaCeilingZero, etc.).RUSCKER_ADMIN_TOKEN,RUSCKER_MASTER_KEY,RUSCKER_COOKIE_KEY) — nunca valores.X-Forwarded-Proto+useForwardHeadersoff → aviso "cookies sairão semSecure" (follow-up natural do fix(proxy,sessions): XFF/XFP trust, at_capacity, hot-path write, sweep race, latent footguns (#744) #762).Boa parte já existe espalhada (startup banner na aba Logs, banner de backend no dashboard) — seria consolidação, custo baixo.
Fora do escopo (decidido contra, manter assim salvo nova discussão)
server:/proxy:de infra pela web.heartbeat-timeoutglobal,metrics-interval), promover esse knob individualmente a setting runtime no DB — caso a caso, como foi feito com a aparência — em vez de abrir oserver:inteiro.