Symptom

The dashboard__populated screenshot (and the two theme variants) always rendered on a 1024×768px canvas (384dp tall at screenshotDensity 2.0), clipping the bottom node card (“Deadband”) even though captureScreen() was called with heightDp = DASHBOARD_HEIGHT_DP (700dp). DASHBOARD_HEIGHT_DP had no effect.

Root cause

captureScreen() used if (widthDp != null && heightDp != null) to decide whether to pass custom dimensions to runDesktopComposeUiTest. Because the dashboard scenarios pass only heightDp (not widthDp), the && condition evaluated false and the else branch ran, using the default 1024×768px canvas regardless of the heightDp argument. The constant DASHBOARD_HEIGHT_DP = 700 introduced in PR #543 had never taken effect since it was merged.

Fix

Changed the condition from && to ||. When only one dimension is specified, the unspecified axis uses the runDesktopComposeUiTest default pixel value (1024px wide, 768px tall). The dashboard scenarios now produce a 1024×1400px canvas (512×700dp) that fits all seven fixture node cards with bottom breathing room.

Prevention