ff51035494b47cc08a656a92a1fe666530dda6b9
User goal: 'all quality related updates at glance, all the flagged tasks need to show right here so the manager can quickly follow up and complete the task'. Current dashboard is a tab-router (6 numeric tiles + click-to-drill) — flagged tasks aren't visible without navigation. Design (Hybrid layout, approved): - Red 'Needs Attention Today' banner on top (up to 6 items, 2x3 grid) showing items that are overdue OR from critical customers (x_fc_rush / x_fc_vip / aerospace). Green 'all caught up' when zero. - Per-type sections below in QM-urgency order: Certs / Holds / NCRs / RMAs / CAPAs / Checks. Each shows top 5 items inline + Open all link to the existing kanban. - Single 'Open ->' button per row -> opens record form via act_window. No one-click action shortcuts (cert form is where Fischerscope + sign-off prereqs are validated). - Drop the existing 'Quality Overview' header strip entirely. - 60s poll cadence preserved. - ?tab=certificates deep-link from awaiting-cert notification email preserved as scrollIntoView on the certs section. Backend: replace /fp/quality/dashboard/counts with /snapshot. New helper class FpQualityDashboardSnapshot builds banner + 6 sections in one response. Cross-module reads sudo'd per Rule 13m; missing fields gracefully degrade per Rule 13j defensive pattern. Frontend: rewrite the OWL component. BannerCard + 6 SectionCards as sub-components in the same JS file (not reused elsewhere yet). Existing per-model kanbans untouched. Self-review fixed 4 issues: - _critical_customer_domain made per-type (was contradictory) - OVERDUE_THRESHOLDS gained explicit use_due_date flag (CAPA branch) - Template requirement called out: id='section-<type>' on each card for the deep-link scrollIntoView to work - doAction call shape disambiguated for xmlid vs full dict Spec: docs/superpowers/specs/2026-05-25-quality-dashboard-redesign-design.md Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
Odoo 19 custom modules
Languages
Python
56.6%
HTML
25.2%
JavaScript
14.8%
SCSS
2.1%
CSS
0.8%
Other
0.4%