Cache VM112/VM122 para lista e detalhe domínio, modal purge com loading animado, cards Escopo OPS clicáveis (camada + Spec + navegação), blocklist visível na UI, e documentação nas specs e anais de referência 20260625. Co-authored-by: Cursor <cursoragent@cursor.com>
4 KiB
4 KiB
Anais de Referência — Serviços IaaS: Performance, UX Escopo OPS, Blocklist
Data: 2026-06-25
Utilizador: Roger
Sistema: Desk VM122 (10.10.10.122) · Wizard VM112 (10.10.10.112)
Specs: 017 · 018 · 026 · 028 · 032 · 037
1. Resumo executivo
Sessão de melhorias na página Serviços IaaS (Desk):
- Performance — cache VM112 lista + detalhe domínio; cache proxy VM122; SWR frontend.
- Modal purge — skeleton imediato + loading animado (barra, etapas, spinner).
- Escopo OPS — cards clicáveis com camada (tenant/app/infra), Spec e navegação.
- Blocklist UI —
ligbox.com.breitecnologys.comvisíveis na lista e painel Escopo. - Alinhamento lista clientes — badges agrupados (fix desalinhamento
itecnologys.com).
2. Performance — resultados
| Pedido | Antes | Depois (cache quente) |
|---|---|---|
VM112 GET /api/admin/domains |
~5–11s | ~0,03s |
VM112 GET /api/admin/domains/{domain} |
~15–20s | ~0,04s |
Desk GET /api/v1/vm112/domains |
~16s | ~0,08s |
| Desk detalhe domínio (2.º hit) | ~15s+ | ~0,1s |
| Modal purge 1.º hit (cold) | ecrã branco | skeleton + ~10–15s |
Patch VM112: deploy/vm112-wizard/perf-domains-list-20260625/
Desk API: VM112_DOMAINS_CACHE_TTL=60, VM112_DOMAIN_DETAIL_TTL=45
Poll Serviços: 90s (app.js)
3. UX Escopo OPS — mapa cards
| Card | Camada | Spec | Destino |
|---|---|---|---|
| Carbonio | Aplicação MOSP | 017 | Modal Serviços |
| ligbox-sites | Tenant utilizador | 017 | Modal Serviços |
| Portal users | Tenant utilizador | 028 | Console /admin/dominio |
| Cloudflare | Infraestrutura | 037 | Console DNS Viewer |
| Traefik / SNI | Infraestrutura | 026 | Desk Infra CODE |
| Desk OPS | Aplicação MOSP | 017 | Eventos › Histórico purges |
Helper navegação: window.DeskNavigate.go(view, { eventsTab }) — app.js
4. Blocklist purge
| Domínio | Purge API | UI |
|---|---|---|
ligbox.com.br |
HTTP 400 | 🔒 badge + banner Escopo + modal desactivado |
itecnologys.com |
HTTP 400 | idem |
Constante: PURGE_BLOCKLIST — vm112_domains.py + espelho servicos.js.
5. Ficheiros principais
| Ficheiro | Função |
|---|---|
frontend/assets/servicos.js |
Escopo OPS, loading modal, blocklist, cache SWR |
frontend/assets/styles.css |
.vm112-load-*, .servicos-scope-*, client row grid |
frontend/assets/app.js |
DeskNavigate, poll 90s |
frontend/assets/auth.js |
sessão resiliente rede |
frontend/index.html |
cache bust 20260625align1 |
api/app/vm112_domains.py |
cache proxy, purge_blocked |
6. Deploy VM122 (referência)
sshpass -p '805353' scp servicos.js styles.css app.js index.html root@10.10.10.122:/tmp/
ssh root@10.10.10.122 '
C=ligbox-ops-platform_frontend_1
docker cp /tmp/servicos.js $C:/usr/share/nginx/html/assets/servicos.js
docker cp /tmp/styles.css $C:/usr/share/nginx/html/assets/styles.css
docker cp /tmp/app.js $C:/usr/share/nginx/html/assets/app.js
docker cp /tmp/index.html $C:/usr/share/nginx/html/index.html
'
Hard refresh: Ctrl+Shift+R em https://desk.ligbox.com.br
7. Versão frontend (cache bust)
| Asset | Query string |
|---|---|
styles.css |
?v=20260625align1 |
servicos.js |
?v=20260625align1 |
app.js |
?v=20260625align1 |
8. Specs actualizadas
| Spec | Secção |
|---|---|
| 017 | Performance cache, UI loading/blocklist/Escopo |
| 018 | Performance, Escopo OPS cards, critérios aceite |
| 032 | UI blocklist |
| 026 | Destino card Traefik |
| 028 | Destino card Portal |
| 037 | Destino card Cloudflare |
9. Canais de arquivo
| Canal | Path |
|---|---|
| Anais | docs/anais-referencia/20260625_SERVICOS_IAAS_PERF_UX_ESCOPO.md |
| Spec 017 | specs/017-vm112-domain-orchestration/spec.md |
| Spec 018 | specs/018-service-orchestration/spec.md |
| Patch VM112 | deploy/vm112-wizard/perf-domains-list-20260625/ |