Added crossover and momentum analysis to the CrUX chart. Each metric is now read against its moving average to detect breaches, sustained moves, and sudden pivots in either direction, and the analysis text leads with what is actually happening week to week.
Health status (LCP, CLS, INP) now reflects a metric’s position relative to its moving average, not just its long-term slope. A value sitting above the trend line reads as caution and escalates to degrading if it stays there for several weeks, so a recent breach is no longer mislabelled as healthy.
Redesigned dashboard into a three-column layout: a fixed left navigation rail, a main column for the CrUX chart and PageSpeed Insights, and a context rail for analysis and notes.
Added an at-a-glance health strip (LCP, CLS, INP) to the Analysis panel, with matching status badges on the chart tabs, so you can see each metric’s standing without reading the full analysis.
Redesigned the Settings page with the API key and CrUX settings on the left and a step-by-step “How to get your Google API keys” guide on the right.
PageSpeed Insights now shows both mobile and desktop results in separate tabs, with the score badge reflecting the active tab.
Improved spacing, sizing, and typography across cards, form fields, and the trend chart for a cleaner, less cramped layout.
Enlarged the “Performance Intelligence” tagline in the logo for better legibility.
Fixed the CrUX trend chart not drawing lines when the moving-average series began with empty periods (a moving average cannot be calculated until its window fills). The chart now computes its scale safely across both the p75 and moving-average series.
Fixed Test Keys reporting failure for valid keys. The masked key placeholder can no longer be saved over a real key, and the PageSpeed Insights test now allows enough time and validates on a successful response.
Reduced the PageSpeed Insights request timeout so a cache miss no longer blocks for an extended time.
Updated bundled uPlot to v1.6.32 and added its stylesheet so chart canvases size correctly.
1.0.0
Initial release of Sciova.
Admin-only dashboard — no frontend impact.
Track up to 3 URLs (free tier).
CrUX History charts for LCP, CLS, and INP via uPlot with interactive tooltips.
Moving average overlay (MA5/MA10) to smooth week-to-week noise.
Trend classification per metric: Improving, Regressing, Stable, or Insufficient Data.
URL health dot — colour-coded indicator in the URL selector reflecting overall trend health.
Smart analysis text with actual p75 values and CWV thresholds (LCP ≤2.5s, CLS ≤0.10, INP ≤200ms).
Copy Report button — copies analysis text to clipboard.
Lab diagnostics via PageSpeed Insights (mobile and desktop) with score badge, async via WP-Cron.
Notes panel with datetime logging, pagination (5/page), and delete flash.
Settings page with CrUX and PSI API key management and built-in connection test.
Settings submenu in WP admin left nav.
Loading overlay waits for all data (URLs, CrUX, PSI, Notes) with 10-second safety timeout.
Mobile responsive layout.
Deactivation clears pending PSI cron events; data preserved for reactivation.