Remove retired Flutter Web test assets - #28
Conversation
There was a problem hiding this comment.
🟡 Changes recommended
The 404 redirect page does not perform the same SW/cache cleanup as index.html, which can break the “cache-clearing tombstone” behavior for deep links that land on 404.html.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR removes a large set of retired Flutter Web / static site artifacts and trims the repository down to a minimal GitHub Pages “test-entry” redirect + service-worker tombstone that forwards traffic into the isolated V2 test realm.
Changes:
- Deleted retired Flutter Web build outputs, TG mini-app pages, landing pages, manifests, and related assets/tools.
- Removed stale release metadata from redirect pages.
- Simplified
_headersto reflect the new redirect-only caching intent (kept as documentation for non-GitHub-Pages hosts).
File summaries
| File | Description |
|---|---|
| web_vitals.js | Removed retired monitoring script asset. |
| wallet_api.js | Removed retired API helper script asset. |
| version.json | Removed stale release metadata file. |
| usdt_landing.css | Removed retired landing page stylesheet. |
| tg/store/tg_store_routing.js | Removed retired TG routing script asset. |
| tg/store/tg_store_routing.3c1c9eb7cd7e.js | Removed retired built TG routing script asset. |
| tg/slot/index.html | Removed retired TG slot entry page. |
| tg/group/admin/index.html | Removed retired TG admin entry page. |
| tg/error.html | Removed retired TG error page. |
| telegram-shop-with-usdt.html | Removed retired marketing/landing page. |
| sw_custom.template.js | Removed retired custom SW template (replaced by tombstone approach). |
| storefront_readiness.js | Removed retired storefront readiness telemetry helper. |
| spend-usdt-costco-taiwan.html | Removed retired marketing/landing page. |
| sitemap.xml | Removed retired sitemap artifact. |
| rpg/akina_launch_gate.js | Removed retired game launch-gating script. |
| robots.txt | Removed retired robots policy file. |
| pwa_viewport_fix.js | Removed retired viewport-fix stub. |
| passkey_helper.js | Removed retired passkey helper script. |
| offline.html | Removed retired offline fallback page. |
| offline_handler.js | Removed retired offline handler script. |
| marketplace-th.html | Removed retired localized landing page. |
| marketplace-en.html | Removed retired localized landing page. |
| manifest.json | Removed retired PWA manifest. |
| main.dart.1.0.1917.js_82.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_81.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_80.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_79.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_78.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_77.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_76.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_75.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_74.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_73.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_72.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_71.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_70.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_69.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_67.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_66.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_65.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_64.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_62.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_61.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_57.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_55.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_54.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_52.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_50.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_47.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_45.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_43.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_41.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_39.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_38.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_37.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_36.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_35.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_34.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_33.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_30.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_3.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_29.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_27.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_26.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_25.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_22.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_20.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_2.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_19.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_11.part.js | Removed retired Flutter deferred chunk artifact. |
| main.dart.1.0.1917.js_10.part.js | Removed retired Flutter deferred chunk artifact. |
| index.html | Removed stale release metadata meta tags; keeps redirect + cache/SW cleanup behavior. |
| icons/new_favicon/site.webmanifest | Removed retired manifest artifact. |
| icons/manifest.json | Removed retired manifest artifact. |
| icons/browserconfig.xml | Removed retired browserconfig artifact. |
| games/slot_runtime_manifest.json | Removed retired runtime manifest artifact. |
| games/dragon_hero/assets/hero/hero.atlas | Removed retired game asset artifact. |
| games/dragon_hero/_tools/gen_assets.mjs | Removed retired internal tooling script artifact. |
| games/_template/manifest.json | Removed retired template artifact. |
| games/_template/game.js | Removed retired template artifact. |
| games/_runtime/menu_manager.js | Removed retired runtime JS module. |
| games/_runtime/log_manager.js | Removed retired runtime JS module. |
| games/_runtime/flutter_bridge.js | Removed retired runtime JS module. |
| games/_runtime/animation_loop_manager.js | Removed retired runtime JS module. |
| flutter.js | Removed retired Flutter loader artifact. |
| flutter_bootstrap.js | Removed retired Flutter bootstrap artifact. |
| flutter_bootstrap.1.0.1917.js | Removed retired versioned bootstrap artifact. |
| categories-en.html | Removed retired localized landing page. |
| audio_analyzer.js | Removed retired helper script. |
| assets/web/icons/manifest.json | Removed retired copied manifest asset. |
| assets/web/icons/browserconfig.xml | Removed retired copied browserconfig asset. |
| assets/shaders/stretch_effect.frag | Removed retired shader asset. |
| assets/packages/flutter_js/assets/js/fetch.js | Removed retired vendored asset. |
| assets/packages/flutter_inappwebview/assets/t_rex_runner/t-rex.css | Removed retired vendored asset. |
| assets/FontManifest.json | Removed retired Flutter asset manifest. |
| assets/config/windows_download.json | Removed retired config metadata. |
| assets/assets/templates/costco_template.js | Removed retired template metadata asset. |
| assets/AssetManifest.bin.json | Removed retired Flutter asset manifest. |
| assets/AssetManifest.bin | Removed retired Flutter asset manifest. |
| assets/.env | Removed retired example env file. |
| 4dea46f7753c459eb97e38888a2efa39.txt | Removed retired build marker artifact. |
| 404.html | Removed stale release metadata meta tag; keeps redirect behavior. |
| .last_build_id | Removed retired build id artifact. |
| _headers | Simplified cache policy intent to redirect + SW tombstone only. |
Review details
- Files reviewed: 57/218 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| @@ -5,7 +5,6 @@ | |||
| <meta name="viewport" content="width=device-width, initial-scale=1"> | |||
| <meta name="robots" content="noindex, nofollow, noarchive"> | |||
| <meta name="agora-pages-role" content="test-entry"> | |||
There was a problem hiding this comment.
🟢 Approval recommended
The repo now cleanly reduces to a minimal redirect/tombstone surface (no remaining references to removed assets found), with only small, well-scoped updates to redirect pages and cache-intent headers.
Review details
- Files reviewed: 57/218 changed files
- Comments generated: 0 new
- Review effort level: Lite
b175e3b to
1a69c43
Compare
|
Addressed on 1a69c43: deep-link 404.html now unregisters all service workers, clears Cache Storage, waits at most 1.2 seconds, and only then redirects to the isolated V2 test realm. The redirect and tombstone checks pass, and the resulting tree still contains exactly six files. |
There was a problem hiding this comment.
🟡 Changes recommended
404.html’s new cleanup-before-redirect logic can trigger unhandled promise rejections if the cleanup operations fail, and should swallow errors for best-effort behavior.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Review details
- Files reviewed: 57/218 changed files
- Comments generated: 1
- Review effort level: Lite
| Promise.race([ | ||
| cleanup(), | ||
| new Promise((resolve) => setTimeout(resolve, 1200)), | ||
| ]).finally(() => location.replace(destination.href)); |
There was a problem hiding this comment.
🔵 Needs a closer look
The updated 404 redirect currently preserves /404.html when visited directly, which can redirect users to a likely-nonexistent /404.html path on the target realm.
Review details
Suppressed comments (1)
Previously missed (1) — in code that hasn't changed since the last review.
404.html:16
- The redirect URL construction preserves
/404.htmlwhen this page is visited directly (or when a client path gets normalized to/404.html), which would redirect users to.../404.htmlon the target realm (likely a 404). Consider normalizing/404.html(and/index.html) to/the same wayindex.htmldoes.
- Files reviewed: 57/218 changed files
- Comments generated: 0 new
- Review effort level: Lite
There was a problem hiding this comment.
🟢 Approval recommended
The repository contents are coherently reduced to redirect/tombstone assets, and the remaining redirect pages include best-effort service worker and cache cleanup before forwarding to the isolated V2 test realm.
Review details
- Files reviewed: 57/218 changed files
- Comments generated: 0 new
- Review effort level: Lite
Summary
Verification