with one click
testing-danilo-offline-gateway
// Test Project DANILO generated gateway validation and offline Inter font service-worker behavior end-to-end.
// Test Project DANILO generated gateway validation and offline Inter font service-worker behavior end-to-end.
| name | testing-danilo-offline-gateway |
| description | Test Project DANILO generated gateway validation and offline Inter font service-worker behavior end-to-end. |
Use this skill when validating changes to the Project DANILO installer, generated Nginx gateway config, bundled Inter fonts, or service worker offline behavior.
sudo apt-get update >/dev/null 2>&1 && sudo apt-get install -y wmctrl
wmctrl -r :ACTIVE: -b add,maximized_vert,maximized_horz
websocket-client is useful:
python3 -m pip install --user websocket-client
Render installer-generated files into a disposable directory under /home/ubuntu, not /tmp, so evidence survives restarts. Source the installer modules, set PROJECT_ROOT, APP_ROOT, CONTENT_ROOT, BACKUP_ROOT, PORTAL_DOMAIN, LAN_IP, DB/JWT/admin defaults, then run:
write_backend_files
write_frontend_files
write_gateway_files
write_project_docs
write_env_file
npm --prefix "$APP_ROOT/frontend" install --no-audit --no-fund
npm --prefix "$APP_ROOT/frontend" run build
When running this as a non-root test harness, override root-only permission helpers or write .env with test permissions only; do not change production installer behavior.
infra/nginx/default.conf must not contain top-level sendfile, tcp_nopush, tcp_nodelay, or keepalive_timeout directives.location /fonts/ so bundled fonts are served locally.docker first on PATH where:
docker info exits 0.docker image inspect nginx:1.27-alpine exits nonzero.docker run exits loudly if called.validate_gateway_files should exit 0, warn that nginx:1.27-alpine is not cached locally, and not call docker run.nginx:1.27-alpine are available locally, run:
docker run --rm --add-host backend:127.0.0.1 \
-v "$APP_ROOT/infra/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro" \
nginx:1.27-alpine nginx -t
Expected output includes syntax is ok and test is successful.python3 -m http.server 4173 --directory "$APP_ROOT/frontend/dist"
http://127.0.0.1:4173/ in Chrome and wait for navigator.serviceWorker.ready.danilo-static-v5 and all five fonts:
/fonts/Inter-Regular.woff2/fonts/Inter-Medium.woff2/fonts/Inter-SemiBold.woff2/fonts/Inter-Bold.woff2/fonts/Inter-ExtraBold.woff2/offline-proof.DANILO is offlineThe local portal could not be reached. Refresh after the gateway is back online.document.fonts.check("400 16px Inter") returns true.FontFaceSet entry for family Inter has status loaded./fonts/Inter-Regular.woff2 returns HTTP 200 with nonzero bytes.test-report.md.[HINT] Download the complete skill directory including SKILL.md and all related files