5.5 KiB
Explorer Dead-Ends, Gaps, and Orphans Audit
Date: 2026-04-11
This audit records the remaining pruning surface after the frontend trust, freshness, and deployment-path cleanup work. The goal is to distinguish high-signal cleanup targets from compatibility or historical assets that should not be deleted casually.
Canonical Live Paths
- Frontend deploy:
scripts/deploy-next-frontend-to-vmid5000.sh - Frontend runtime:
solacescanscout-frontend.service - Shared freshness/trust model:
frontend/src/utils/explorerFreshness.tsfrontend/src/components/common/FreshnessTrustNote.tsxfrontend/src/components/common/ActivityContextPanel.tsx
- Explorer-owned freshness backend:
backend/api/freshness/backend/api/rest/stats.gobackend/api/track1/bridge_status_data.go
Pruned in This Cleanup Series
- Deprecated static deploy scripts now fail fast and point to the canonical
Next deploy path:
scripts/deploy-frontend-to-vmid5000.shscripts/deploy.sh
- Removed relay-summary compatibility helpers from:
frontend/src/services/api/missionControl.ts
- Removed duplicate route action from:
frontend/src/data/explorerOperations.ts
- Hardened deploy build-lock behavior in:
scripts/deploy-next-frontend-to-vmid5000.sh
Dead-End Guidance Fixed
The following docs were updated to stop presenting deprecated static frontend deployment as a current operator path:
docs/README.mddocs/INDEX.mddocs/DEPLOYMENT.mdREADME_DEPLOYMENT.md
Remaining Historical / Compatibility Assets To Keep For Now
These are not current primary paths, but they still serve compatibility, reference, or audit roles and should not be removed without a deliberate migration decision:
frontend/public/index.htmlfrontend/public/explorer-spa.jsfrontend/public/chain138-command-center.htmldeployment/common/nginx-api-location.conf
Remaining Gaps
0. Static compatibility assets are not orphaned yet
The following assets are still part of the runtime or deployment surface and cannot be deleted safely in a pure pruning pass:
frontend/public/index.htmlfrontend/public/explorer-spa.jsfrontend/public/chain138-command-center.html
Current hard blockers:
- canonical deploy script still copies them:
scripts/deploy-next-frontend-to-vmid5000.sh
- live product still links the command center:
frontend/src/components/common/Navbar.tsxfrontend/src/components/common/Footer.tsxfrontend/src/data/explorerOperations.tsfrontend/src/pages/docs/index.tsx
- compatibility/runtime verification still expects them:
scripts/verify-explorer-api-access.sh
- several legacy remediation scripts still push the static SPA to
/var/www/html/index.html:scripts/deploy-frontend-fix.shscripts/fix-explorer-remote.shscripts/fix-explorer-complete.shscripts/complete-explorer-api-access.sh
Recommendation:
- treat retirement of these assets as an explicit migration
- first decide whether the command center remains a supported public artifact
- then remove static-SPA push logic from the remediation scripts
- only after that delete the files and clean the remaining references
1. Historical docs still describe the old static SPA as if it were primary
These are not the best operator entry points anymore, but they appear to be historical records, troubleshooting notes, or code-review artifacts rather than active runbooks:
docs/FRONTEND_DEPLOYMENT_FIX.mddocs/FRONTEND_FIXES_COMPLETE.mddocs/API_ERRORS_FIX.mddocs/EXPLORER_LOADING_TROUBLESHOOTING.mddocs/EXPLORER_API_ACCESS.mddocs/EXPLORER_CODE_REVIEW.mddocs/EXPLORER_FRONTEND_TESTING.mddocs/STRUCTURE.mddocs/TIERED_ARCHITECTURE_IMPLEMENTATION.md
Recommendation:
- keep them for now
- a first banner-stamp sweep has already been applied to the highest-signal set
- only rewrite/delete them if we decide to retire the compatibility assets
2. Compatibility assets still create pruning ambiguity
The repo still contains both:
- the live Next frontend path
- the historical static SPA assets
Recommendation:
- keep the compatibility assets until all docs and operators no longer depend on them for rollback/reference
- when retired, remove the assets and do a repo-wide
frontend/public/index.htmlreference cleanup in one explicit migration
3. Public routing ownership is still split
Freshness truth is now much cleaner, but public route ownership still spans:
- Blockscout-owned public API behavior
- explorer-owned
track1/ mission-control behavior - Next frontend presentation logic
Recommendation:
- continue consolidating around the explorer-owned freshness contract
- treat backend source-of-truth wiring as the next cleanup frontier, not more shell polish
Orphaned / Removed Compatibility Paths Confirmed Gone
These frontend compatibility abstractions were fully removed and should not be reintroduced:
getRelaySummaryinfrontend/src/services/api/missionControl.tssubscribeRelaySummaryinfrontend/src/services/api/missionControl.ts
Suggested Next Pruning Sweep
- Stamp the historical static-SPA docs above with a clear banner:
Historical static-SPA guidance; not the canonical deployment path. - Decide whether
frontend/public/index.htmlandfrontend/public/explorer-spa.jsstill have an operational rollback role. - If not, remove them in one explicit migration and clean all remaining references repo-wide.
- After that, re-run the dead-end/orphan audit and remove the remaining compatibility mentions from troubleshooting docs.