mirror of
https://github.com/Kpa-clawbot/meshcore-analyzer.git
synced 2026-06-04 21:31:26 +00:00
7f5cc96bd9
## Summary Temporary diagnostic patch for #1396 (mobile / narrow-desktop nav priority reports). Adds a single instrumentation block at the END of `applyNavPriority()` in `public/app.js`, gated on `navdebug=1` appearing in the URL hash. No nav behavior change; reverted once root cause is known. ## What it does When the URL hash contains `navdebug=1` (e.g. `/#/channels?navdebug=1`), the function: 1. Paints a fixed-position green-on-black banner pinned to the bottom of the viewport (`z-index:99999`, `pointer-events:none` so it never blocks interaction) showing: ``` [NAV-DEBUG-1396] vw=<innerWidth> total=N visible=N overflow=N hidden-by-css=N active=<label> visible: [Home,Packets,...] overflow: [Tools,...] ua: <first 80 chars of UA> ``` 2. Emits the same payload via `console.warn('[NAV-DEBUG-1396]', ...)` for anyone who can pop devtools. The whole block is wrapped in `try/catch` — diagnostic code never breaks nav. ## Why a banner (not just console) Affected reporters are on mobile devices where popping devtools is annoying or impossible. A screenshot of the banner gives us: - Viewport width (vs the 768 / 1100 / 1101 breakpoints) - Device UA (Safari iOS quirks, narrow Android, etc.) - Actual link counts after `applyNavPriority` ran - Whether anything is hidden by CSS (`display:none`) despite not being in the overflow set - Which labels are inline vs in the More menu - Active route at time of measurement ## Operator usage On the affected device, open: ``` https://<staging-host>/#/channels?navdebug=1 ``` (or any other route; the gate is hash-wide). Screenshot the green-on-black banner at the bottom of the page and attach to #1396. ## Hard rules respected - Banner is gated — never visible without `navdebug=1` in the hash. - No new dependency. - No change to nav behavior. - Diagnostic-only; revert PR will follow once root cause is identified. ## Out of scope - Root-cause fix for #1396 (this is purely instrumentation). - E2E test for the banner — code is temporary and scheduled for revert. Co-authored-by: openclaw-bot <bot@openclaw.local>