4.9 KiB
4.9 KiB
Task: Adapt leadership dashboard for mobile sharing
Identity
- Task ID: 20260902-dashboard-mobile-share-4e91c7
- Mode: Feature
- Branch: codex/20260902-dashboard-mobile-share-4e91c7-dashboard-mobile-share-4e91c7
- Worktree: /Users/inmanx/Documents/lwltAPI-dashboard-mobile-share-4e91c7
- Base commit:
63b387f679 - Owner: codex
- Status: Ready for integration
Scope
- Carry the accepted dashboard card correction into this isolated task: unify the first operation-count card with the remaining metrics, keep the selected state clear, and fold the former follow-up state into in-progress.
- Adapt
/operations-dashboardfor phone and portrait-tablet use without changing its leadership-only authorization boundary. - Make the route visually self-contained for direct sharing with leaders by removing unrelated operator navigation and technical status controls from the dashboard shell.
- Replace the desktop-only task table interaction with a responsive mobile card presentation while preserving the same data, filters, pagination, and task-detail drill-through.
- Add focused regression coverage and verify the real layout at phone, tablet, and desktop viewports.
Intent And Constraints
- “Standalone sharing” means an authenticated, focused dashboard URL for administrators and team leads; it does not authorize an anonymous or public share link.
- Preserve the existing dashboard API, business-facing terminology, ranking semantics, filter behavior, and dynamic nice-scale bars.
- Keep every mobile control touch-friendly, avoid page-level horizontal overflow, respect device safe areas, and prevent the background dashboard from scrolling while the task-detail overlay is open.
- Preserve all task, account, ERP, deployment, and runtime-data boundaries. Do not access ERP, restart services, mutate runtime data, or deploy this feature.
- Do not alter business adaptation routes, schemas, mappings, extension sources, release artifacts, or canonical project memory from this Feature task.
Outcome
- Brought the prior dashboard card correction into the feature: all five metrics now share one treatment, the active filter uses a light-green selected state with
aria-pressed, and no visible follow-up card or filter remains. Waiting-for-input work is counted and queried under in-progress. - Added a dedicated leadership header and return link, enabled
viewport-fit=cover, and hid the main operator navigation, automation control, AI status, plugin status, and their popover on the dashboard route. Password and logout controls remain available. - Added a responsive layout through 920 px: a horizontally swipeable metric strip, one-column fixed-height rankings with larger touch targets, two-column filters, and compact safe-area-aware chrome that fits down to a 320 px viewport.
- Converted task rows into labeled mobile cards without duplicating data or changing the desktop table. Each cell receives a semantic
data-label; input and output remain visually distinct, and status stays visible at the card edge. - Made task details a safe-area-aware near-full-screen mobile dialog, froze background scrolling while it is open, and restored scrolling on close.
- Preserved the desktop two-ranking layout, dynamic count scales, filters, pagination, detail drill-through, and leadership authorization. Updated static cache keys and their regression expectation.
Verification
node --check LianSyn-platform/app.js: passed.- Focused dashboard regression
LianSyn-platform/app-operations-dashboard.test.mjs: 4/4 passed. node --test tools/repository-hygiene.test.mjs: 10/10 passed.- TypeScript no-emit check: passed.
- Control-plane suite: 153/153 passed.
- Legacy and platform suite: 264/264 passed.
- TypeScript build: passed.
git diff --check: passed.- Isolated non-persistent browser preview at
http://127.0.0.1:8893/operations-dashboard?mobile-preview=1used the actual feature HTML, CSS, and JavaScript with business-safe mock data. - Visual checks passed at 320×740, 390×844, 768×1024, and 1440×900. Document, body, shell, dashboard page, and filter widths matched the viewport at 320, 390, and 768 px; only the intended metric strip had horizontal overflow.
- Browser interaction verified metric selection rendering, filter layout, mobile task cards, task-detail open/close, background scroll locking, and desktop two-column rankings. Browser console error count was zero.
check_project_docs.py: passed.check_doc_drift.py --task-id 20260902-dashboard-mobile-share-4e91c7: passed with only the owned task record under.project-docs.
Follow-ups
- Integrate this isolated feature commit before validating the normal authenticated
/operations-dashboardroute against live control-plane data. No deployment or public-link behavior is included in this task.
Promotion Candidates
- None. This is a bounded responsive and presentation change within the accepted leadership-dashboard behavior.