update demo script for new dashboard layout and LAN badges
Reorder scenes to show services first (matching panel order), scroll to blocking panel for domain check scene. LAN badge now visible after adding a service. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2
Cargo.lock
generated
2
Cargo.lock
generated
@@ -932,7 +932,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "numa"
|
name = "numa"
|
||||||
version = "0.1.0"
|
version = "0.3.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"axum",
|
"axum",
|
||||||
"env_logger",
|
"env_logger",
|
||||||
|
|||||||
@@ -8,8 +8,10 @@
|
|||||||
# 1. Opens the dashboard in Chrome --app mode (clean, no address bar)
|
# 1. Opens the dashboard in Chrome --app mode (clean, no address bar)
|
||||||
# 2. Generates DNS traffic (forward, cache hit, blocked)
|
# 2. Generates DNS traffic (forward, cache hit, blocked)
|
||||||
# 3. Types "peekm" / "6419" into the Local Services form on camera
|
# 3. Types "peekm" / "6419" into the Local Services form on camera
|
||||||
# 4. Opens peekm.numa to show the proxy working
|
# 4. Shows LAN accessibility badge ("local only" / "LAN")
|
||||||
# 5. Records via ffmpeg and converts to optimized GIF
|
# 5. Checks a blocked domain
|
||||||
|
# 6. Opens peekm.numa to show the proxy working
|
||||||
|
# 7. Records via ffmpeg and converts to optimized GIF
|
||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
@@ -228,18 +230,10 @@ dig @127.0.0.1 github.com +short > /dev/null 2>&1
|
|||||||
dig @127.0.0.1 ad.doubleclick.net +short > /dev/null 2>&1
|
dig @127.0.0.1 ad.doubleclick.net +short > /dev/null 2>&1
|
||||||
sleep 3
|
sleep 3
|
||||||
|
|
||||||
# --------------- Scene 2: Check Domain blocker (3-6s) ---------------
|
# --------------- Scene 2: Add peekm service via UI (3-7s) ---------------
|
||||||
log "Scene 2: Check Domain — blocked tracker..."
|
log "Scene 2: Adding peekm.numa service..."
|
||||||
type_into "#checkDomainInput" "ads.doubleclick.net" 0.04
|
|
||||||
sleep 0.3
|
|
||||||
# Click Check button
|
|
||||||
run_js "document.querySelector('#checkDomainInput').closest('form').querySelector('.btn').click();"
|
|
||||||
sleep 2
|
|
||||||
|
|
||||||
# --------------- Scene 3: Add peekm service via UI (6-10s) ---------------
|
# Services panel is now first — scroll to it
|
||||||
log "Scene 3: Adding peekm.numa service..."
|
|
||||||
|
|
||||||
# Scroll to Local Services form
|
|
||||||
run_js "
|
run_js "
|
||||||
var svcPanel = document.getElementById('serviceForm');
|
var svcPanel = document.getElementById('serviceForm');
|
||||||
if (svcPanel) svcPanel.scrollIntoView({behavior: 'smooth', block: 'center'});
|
if (svcPanel) svcPanel.scrollIntoView({behavior: 'smooth', block: 'center'});
|
||||||
@@ -251,20 +245,34 @@ sleep 0.2
|
|||||||
type_into "#svcPort" "6419" 0.1
|
type_into "#svcPort" "6419" 0.1
|
||||||
sleep 0.3
|
sleep 0.3
|
||||||
|
|
||||||
# Click "Add Service"
|
# Click "Add Service" — LAN badge ("local only" or "LAN") will appear
|
||||||
run_js "document.querySelector('#serviceForm .btn-add').click();"
|
run_js "document.querySelector('#serviceForm .btn-add').click();"
|
||||||
sleep 1.5
|
sleep 2
|
||||||
|
|
||||||
# --------------- Scene 4: Open peekm.numa (10-14s) ---------------
|
# --------------- Scene 3: Open peekm.numa (7-11s) ---------------
|
||||||
log "Scene 4: Opening peekm.numa in browser..."
|
log "Scene 3: Opening peekm.numa in browser..."
|
||||||
open "http://peekm.numa/view/peekm/README.md" 2>/dev/null || true
|
open "http://peekm.numa/view/peekm/README.md" 2>/dev/null || true
|
||||||
sleep 4
|
sleep 4
|
||||||
|
|
||||||
# --------------- Scene 5: Back to dashboard (14-17s) ---------------
|
# --------------- Scene 4: Back to dashboard (11-14s) ---------------
|
||||||
log "Scene 5: Back to dashboard — LOCAL queries visible..."
|
log "Scene 4: Back to dashboard — LAN badges + LOCAL queries visible..."
|
||||||
osascript -e "tell application \"System Events\" to set frontmost of (first process whose unix id is $CHROME_PID) to true" 2>/dev/null || true
|
osascript -e "tell application \"System Events\" to set frontmost of (first process whose unix id is $CHROME_PID) to true" 2>/dev/null || true
|
||||||
sleep 3
|
sleep 3
|
||||||
|
|
||||||
|
# --------------- Scene 5: Check Domain blocker (14-17s) ---------------
|
||||||
|
log "Scene 5: Check Domain — blocked tracker..."
|
||||||
|
# Scroll down to blocking panel
|
||||||
|
run_js "
|
||||||
|
var blockPanel = document.getElementById('blockingPanel');
|
||||||
|
if (blockPanel) blockPanel.scrollIntoView({behavior: 'smooth', block: 'center'});
|
||||||
|
"
|
||||||
|
sleep 0.5
|
||||||
|
type_into "#checkDomainInput" "ads.doubleclick.net" 0.04
|
||||||
|
sleep 0.3
|
||||||
|
# Click Check button
|
||||||
|
run_js "document.querySelector('#checkDomainInput').closest('form').querySelector('.btn').click();"
|
||||||
|
sleep 2
|
||||||
|
|
||||||
# --------------- Scene 6: Terminal-style dig overlay (17-20s) ---------------
|
# --------------- Scene 6: Terminal-style dig overlay (17-20s) ---------------
|
||||||
log "Scene 6: dig proof overlay..."
|
log "Scene 6: dig proof overlay..."
|
||||||
DIG_RESULT=$(dig @127.0.0.1 peekm.numa +short 2>/dev/null | head -1)
|
DIG_RESULT=$(dig @127.0.0.1 peekm.numa +short 2>/dev/null | head -1)
|
||||||
|
|||||||
Reference in New Issue
Block a user