ligbox-ops-platform/projects/ops-desk/frontend/assets/infra-stack-meta.js
Ligbox Spec Hub b03bb2c37c feat(desk): UI/API Spec 039-041 + deploy atómico e smoke GREEN
Commita governance, user-wizard, operational-feed e catálogo RBAC;
adiciona deploy-desk-full.sh, smoke-desk.sh e regra anti-deploy parcial;
documenta credencial VM112 @betinplace.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-02 13:32:15 +00:00

198 lines
8.3 KiB
JavaScript

/** Metadados INFRA CODE — API, VM, código-fonte e pasta Spec por serviço (Spec 033). */
window.STACK_SERVICE_META = {
'vm112-onboard-api': {
specFolder: 'specs/001-onboarding-webhooks/',
apiPath: 'GET /api/onboarding/health',
codePaths: ['deploy/vm112-wizard/', 'VM112 onboard API :8090'],
probeCode: 'api/app/stack_health.py → vm112-onboard-api',
validation: 'HTTP 200 no health do portal onboard',
},
'vm112-onboard-ui': {
specFolder: 'specs/025-wizard-ui/',
apiPath: 'GET https://onboard.ligbox.com.br/',
codePaths: ['deploy/vm112-wizard/frontend/', 'CT114 Traefik router onboard'],
probeCode: 'api/app/stack_health.py → vm112-onboard-ui',
validation: 'Wizard público responde 200/301/302/403',
},
'vm112-carbonio': {
specFolder: 'specs/022-carbonio-mail/',
apiPath: 'GET https://10.10.10.112/',
codePaths: ['VM112 Carbonio CE', 'deploy/carbonio/'],
probeCode: 'api/app/stack_health.py → vm112-carbonio',
validation: 'HTTPS Carbonio (TLS interno, verify=false)',
},
'vm112-domain-api': {
specFolder: 'specs/017-vm112-domain-orchestration/',
apiPath: 'GET /api/onboarding/health (proxy admin)',
codePaths: ['deploy/vm112-wizard/', 'api/admin/domains'],
probeCode: 'api/app/stack_health.py → vm112-domain-api',
validation: 'API VM112 acessível — domínios via Spec 017',
},
'vm114-traefik': {
specFolder: 'specs/026-traefik-edge/',
apiPath: 'GET :8080/api/overview',
codePaths: ['CT114 docker/traefik/', 'dynamic routers YAML'],
probeCode: 'api/app/stack_health.py → vm114-traefik',
validation: 'Traefik API responde (200/401/403)',
},
'vm114-desk-route': {
specFolder: 'specs/026-traefik-edge/',
apiPath: 'GET https://desk.ligbox.com.br/',
codePaths: ['CT114 router desk.ligbox.com.br', 'VM122 frontend :8091'],
probeCode: 'api/app/stack_health.py → vm114-desk-route',
validation: 'Rota WAN Desk via Traefik',
},
'vm114-api-route': {
specFolder: 'specs/027-desk-api-public/',
apiPath: 'GET https://api.ops.ligbox.com.br/health',
codePaths: ['CT114 router api.ops', 'VM122 api :8080'],
probeCode: 'api/app/stack_health.py → vm114-api-route',
validation: 'API pública Ops responde /health',
},
'vm122-desk-api': {
specFolder: 'specs/003-desk-auth-rbac/',
apiPath: 'GET /health · /api/v1/*',
codePaths: ['projects/ops-desk/api/app/', 'docker ligbox-ops-platform_api'],
probeCode: 'api/app/stack_health.py → vm122-desk-api',
validation: 'FastAPI local :8080/health',
},
'vm122-desk-ui': {
specFolder: 'specs/040-desk-design-system-v013/',
apiPath: 'GET http://10.10.10.122:8091/',
codePaths: ['projects/ops-desk/frontend/', 'assets/ligbox-ds.css', 'assets/user-wizard.js', 'assets/access-control-hub.js'],
probeCode: 'api/app/stack_health.py → vm122-desk-ui',
validation: 'Nginx frontend · footer v0.13.0 · Spec 040',
},
'vm122-governance-api': {
specFolder: 'specs/040-desk-design-system-v013/',
apiPath: 'POST /api/v1/governance/users/wizard · GET /governance/audit',
codePaths: ['api/app/governance_routes.py', 'api/app/desk_governance_store.py'],
probeCode: 'DS-API-002 governance_routes',
validation: 'Wizard create user + audit log · Spec 040',
},
'vm122-ops-inbox-api': {
specFolder: 'specs/041-desk-operational-feed/',
apiPath: 'GET /api/v1/ops-inbox/stats · GET /events · POST /events/{id}/messages',
codePaths: ['api/app/ops_inbox_routes.py', 'api/app/ops_inbox_store.py', 'assets/operational-feed.js'],
probeCode: 'OF-API-002 ops_inbox_routes',
validation: 'Central Operacional mock · Spec 041',
},
'vm122-redis': {
specFolder: '—',
apiPath: 'redis://redis:6379/0 PING',
codePaths: ['docker-compose redis', 'api/app assist_store / cache'],
probeCode: 'api/app/stack_health.py → _probe_redis',
validation: 'PING OK no Redis do stack',
},
'vm122-webhook-soc': {
specFolder: 'specs/001-onboarding-webhooks/',
apiPath: 'GET /api/v1/integrations/health',
codePaths: ['api/app/integration_health.py', 'api/app/assist_routes.py'],
probeCode: 'infra_stack_routes.py enrich + integration_health',
validation: 'Gap webhook VM112 + status integração',
},
'vm122-purge-auth': {
specFolder: 'specs/032-purge-domain-extra-auth/',
apiPath: 'GET/POST /api/v1/infra/purge-auth-*',
codePaths: ['api/app/infra_stack_routes.py', 'api/app/purge_auth*'],
probeCode: 'Módulo local Desk — sem probe HTTP externo',
validation: 'Códigos purge Spec 032 · super_admin',
},
'vm122-email-relay': {
specFolder: 'docs/postfix-vm122.md',
apiPath: 'GET /api/v1/infra/email-relay/status · POST /test',
codePaths: [
'/etc/postfix/main.cf (VM122 host)',
'/etc/postfix/transport',
'api/app/email_relay.py',
'api/app/mail_notify.py',
'VM112 mail.ligbox.com.br (Carbonio relay)',
],
probeCode: 'api/app/stack_health.py → vm122-email-relay',
validation: 'Postfix VM122 · relayhost VM112 · ligbox-ops@ ligbox.com.br · convites Desk',
},
'vm123-foss': {
specFolder: 'specs/024-fossbilling-odoo/',
apiPath: 'GET http://10.10.10.123:8092/',
codePaths: ['VM123 FOSSBilling container'],
probeCode: 'api/app/stack_health.py → vm123-foss',
validation: 'FOSSBilling UI responde',
},
'vm123-odoo': {
specFolder: 'specs/024-fossbilling-odoo/',
apiPath: 'GET :8069/web/login',
codePaths: ['VM123 Odoo 16'],
probeCode: 'api/app/stack_health.py → vm123-odoo',
validation: 'Odoo login page responde',
},
'vm123-openpanel-ui': {
specFolder: 'specs/028-openpanel-reengineering/',
apiPath: 'GET https://openpanel.ligbox.com.br/',
codePaths: ['VM123 OpenPanel CE', 'CT114 router'],
probeCode: 'api/app/stack_health.py → vm123-openpanel-ui',
validation: 'OpenPanel WAN via Traefik',
},
'vm123-openadmin': {
specFolder: 'specs/024-fossbilling-odoo/',
apiPath: 'GET https://admin.openpanel.ligbox.com.br/',
codePaths: ['VM123 OpenAdmin'],
probeCode: 'api/app/stack_health.py → vm123-openadmin',
validation: 'OpenAdmin UI responde',
},
'vm123-openpanel-bridge': {
specFolder: 'specs/028-openpanel-reengineering/',
apiPath: 'GET :18087/api (Bearer bridge token)',
codePaths: ['VM123 bridge service', 'api/app/vm123_routes.py'],
probeCode: 'api/app/stack_health.py → _probe_openpanel_bridge',
validation: 'Bridge API com OPENPANEL_BRIDGE_TOKEN',
},
'vm123-ops-console': {
specFolder: 'specs/019-ops-console/',
apiPath: 'GET :8100/health',
codePaths: ['VM123 ops console service'],
probeCode: 'api/app/stack_health.py → vm123-ops-console',
validation: 'Health endpoint Ops Console',
},
'vm123-phpmyadmin': {
specFolder: '—',
apiPath: 'GET :8888/',
codePaths: ['VM123 phpMyAdmin stack'],
probeCode: 'api/app/stack_health.py → vm123-phpmyadmin',
validation: 'phpMyAdmin HTTP responde',
},
'vm123-ollama': {
specFolder: 'specs/029-agentic-ops/',
apiPath: 'GET :11434/api/tags',
codePaths: ['VM123 Ollama', 'api/app/agents*'],
probeCode: 'api/app/stack_health.py → vm123-ollama',
validation: 'Ollama API lista modelos',
},
'vm130-forgejo': {
specFolder: 'specs/031-spec-hub-forgejo/',
apiPath: 'GET :3000/',
codePaths: ['CT130 Forgejo', '/opt/ligbox-spec-hub repos'],
probeCode: 'api/app/stack_health.py → vm130-forgejo',
validation: 'Forgejo Git UI responde',
},
'vm130-spec-portal': {
specFolder: 'specs/031-spec-hub-forgejo/',
apiPath: 'GET :8080/',
codePaths: ['CT130 spec portal', 'obsidian-vault/'],
probeCode: 'api/app/stack_health.py → vm130-spec-portal',
validation: 'Spec portal LAN responde',
},
'vm130-spec-public': {
specFolder: 'specs/031-spec-hub-forgejo/',
apiPath: 'GET https://spec.ligbox.com.br/',
codePaths: ['CT130 + Traefik WAN', 'spec.ligbox.com.br'],
probeCode: 'api/app/stack_health.py → vm130-spec-public',
validation: 'Spec Hub público via WAN',
},
'integrations-json': {
specFolder: 'specs/001-onboarding-webhooks/',
apiPath: 'GET /api/v1/integrations',
codePaths: ['api/app/integration_health.py', 'webhook registry DB'],
probeCode: 'renderInfra · integrations snapshot',
validation: 'Registry onboard + Wazuh activo',
},
};