diff --git a/.github/workflows/app-discovery-qa.yml b/.github/workflows/app-discovery-qa.yml index 6a707f8d..8f390854 100644 --- a/.github/workflows/app-discovery-qa.yml +++ b/.github/workflows/app-discovery-qa.yml @@ -14,6 +14,8 @@ on: - tests/blur-support-growth.test.mjs - support/instant-judge/index.html - tests/instant-judge-support-growth.test.mjs + - support/roast-me/index.html + - tests/roastme-support-growth.test.mjs - tests/idea-market-support-growth.test.mjs - tests/debate-me-support-growth.test.mjs - tests/dotchi-support-growth.test.mjs @@ -44,6 +46,8 @@ on: - tests/blur-support-growth.test.mjs - support/instant-judge/index.html - tests/instant-judge-support-growth.test.mjs + - support/roast-me/index.html + - tests/roastme-support-growth.test.mjs - tests/idea-market-support-growth.test.mjs - tests/debate-me-support-growth.test.mjs - tests/dotchi-support-growth.test.mjs @@ -79,4 +83,4 @@ jobs: - name: Verify non-destructive release scripts have valid shell syntax run: bash -n scripts/publish_app_discovery.sh scripts/check_app_discovery_live.sh - name: Verify search, referral links and guide listings - run: node --test tests/catalog-growth.test.mjs tests/search-landing-growth.test.mjs tests/dotchi-support-growth.test.mjs tests/debate-me-support-growth.test.mjs tests/idea-market-support-growth.test.mjs tests/blur-support-growth.test.mjs tests/instant-judge-support-growth.test.mjs + run: node --test tests/catalog-growth.test.mjs tests/search-landing-growth.test.mjs tests/dotchi-support-growth.test.mjs tests/debate-me-support-growth.test.mjs tests/idea-market-support-growth.test.mjs tests/blur-support-growth.test.mjs tests/instant-judge-support-growth.test.mjs tests/roastme-support-growth.test.mjs diff --git a/scripts/check_app_discovery_live.sh b/scripts/check_app_discovery_live.sh index 59d3d8c2..1cc0a225 100644 --- a/scripts/check_app_discovery_live.sh +++ b/scripts/check_app_discovery_live.sh @@ -77,6 +77,14 @@ grep -Fq 'Results appear at their reveal time' "$tmp/instant-judge.html" || { ec if grep -Eiq 'Thousands of scenarios|Real-time results|Many features work offline' "$tmp/instant-judge.html"; then echo 'FAIL Instant Judge advertises unsupported immediate results or scale' >&2; exit 1 fi +# RoastMe offers community-written roasts, not a guaranteed AI roast service. +fetch '/support/roast-me/' 'roastme.html' +grep -Fq 'Post a topic, invite community feedback' "$tmp/roastme.html" || { echo 'FAIL RoastMe public hero copy is stale' >&2; exit 1; } +grep -Fq 'data-position="hero"' "$tmp/roastme.html" || { echo 'FAIL RoastMe first-screen Play CTA missing' >&2; exit 1; } +grep -Fq 'support_roast_me_hero' "$tmp/roastme.html" || { echo 'FAIL RoastMe campaign tagging missing' >&2; exit 1; } +if grep -Eiq 'AI-generated roasts|Get roasted by AI and friends|100% anonymous' "$tmp/roastme.html"; then + echo 'FAIL RoastMe promises unverified AI roasts or absolute anonymity' >&2; exit 1 +fi fetch '/robots.txt' 'robots.txt' grep -Fq 'Allow: /icons/apps/' "$tmp/robots.txt" || { echo 'FAIL Google image crawl allow not live' >&2; exit 1; } echo 'PASS: catalog, guides, priority search landings, store CTAs, icon crawl policy and sitemap current (HTTP 200)' diff --git a/scripts/publish_app_discovery.sh b/scripts/publish_app_discovery.sh index 66be7702..b4964ae0 100644 --- a/scripts/publish_app_discovery.sh +++ b/scripts/publish_app_discovery.sh @@ -15,7 +15,7 @@ root="${APP_SITE_DEPLOY_ROOT:-/var/www/html}" if [[ ! "$host" =~ ^[a-zA-Z0-9_.@-]+$ || ! "$root" =~ ^/var/www/[a-zA-Z0-9_./-]+$ ]]; then echo 'Invalid APP_SITE_DEPLOY_HOST or APP_SITE_DEPLOY_ROOT' >&2; exit 2 fi -files=(index.html apps.html sitemap.xml robots.txt guides/quick-games/index.html guides/daily-habits/index.html guides/decision-helpers/index.html guides/ai-tools/index.html support/brain-burst/index.html support/snaplingo/index.html support/face-reaction-battle/index.html support/twotaku/index.html support/debate-me/index.html support/idea-market/index.html support/blur/index.html support/instant-judge/index.html) +files=(index.html apps.html sitemap.xml robots.txt guides/quick-games/index.html guides/daily-habits/index.html guides/decision-helpers/index.html guides/ai-tools/index.html support/brain-burst/index.html support/snaplingo/index.html support/face-reaction-battle/index.html support/twotaku/index.html support/debate-me/index.html support/idea-market/index.html support/blur/index.html support/instant-judge/index.html support/roast-me/index.html) for file in "${files[@]}"; do [[ -s "$file" ]] || { echo "Missing source file: $file" >&2; exit 2; } done diff --git a/support/roast-me/index.html b/support/roast-me/index.html index c4c0ff7f..7885ea54 100644 --- a/support/roast-me/index.html +++ b/support/roast-me/index.html @@ -4,8 +4,8 @@ -