Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #1267 +/- ##
===========================================
- Coverage 94.54% 86.24% -8.31%
===========================================
Files 417 456 +39
Lines 22026 4137 -17889
Branches 1502 454 -1048
===========================================
- Hits 20825 3568 -17257
+ Misses 1201 520 -681
- Partials 0 49 +49
🚀 New features to boost your workflow:
|
9506501 to
9114b5e
Compare
… LCP Re-encode the three slideshow assets to AVIF and WebP (the tubulin PNG drops from 397 KiB to 40 KiB AVIF) and serve them via <picture> with the original JPEG/PNG as fallback. Add explicit width/height to lock each image's aspect ratio, eagerly load the first slide with fetchpriority="high" (it is the page LCP element), and lazy-load the rest. Declare the .webp/.avif asset modules so the new imports type-check. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The status row swaps from the "unavailable" placeholder to the loaded popover once the async uptime fetch resolves, shifting everything below it. Wrap the swap in a fixed-height flex container so the transition no longer contributes to cumulative layout shift. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add a build.rollupOptions.output.manualChunks config that breaks the single 1.6 MB entry chunk into separately cacheable vendor chunks (mui, apollo, editor, fp, fontawesome). Enable build.sourcemap so production stack traces map back to source and Lighthouse can attribute code (fixes valid-source-maps). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add preconnect hints for graphql.dictybase.dev and storage.dictybase.dev so the browser opens those connections before the first GraphQL request and logo fetch on the critical path. Add a real public/robots.txt; without one the SPA fallback served index.html for /robots.txt, which Lighthouse parsed as 28 invalid directives. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Read the uptime summary URL from VITE_APP_STATUS_JSON, defaulting to the existing GitHub raw URL. This lets deployments point the request at a dictybase-served proxy so it stays on a trusted, cacheable origin and off the page's critical path, instead of hitting raw.githubusercontent.com directly. Document the override (commented) in the production and staging env files. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pass alt="dictyBase" to the header logo image so it has an accessible name (fixes the image-alt accessibility and SEO audits). Map the DCR News item date headings from h3 to a rendered h2 so the homepage news section no longer skips a heading level under its h1 title, matching the existing NewsItem behavior (fixes heading-order). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Navbar: make each dropdown a list item containing its sub-menu <ul> (instead of a <ul> nested directly in a <ul>), turn the dropdown toggle into a keyboard-operable role=button with aria-haspopup/aria-expanded, change the mobile-menu wrapper from a stray <li> to a <div>, and give the hamburger MenuIcon an aria-label and aria-expanded. Fixes the list, listitem and aria-command-name audits. Touch targets: enlarge footer links to a >=24px tap target and give the header search field a min-width so it cannot collapse to an untappable sliver. Fixes target-size. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Added a workflow section to describe the steps to take before committing code, including linting, unit tests, build, and E2E tests. Also added a section to encourage writing unit tests for code changes.
…tests Replace the `??` fallback for the uptime summary URL with a pipe of fromNullable + getOrElse, matching the project's functional style. Add tests for useDictyStatus covering the fetch-success (some), fetch-failure (none), and JSON-parse-failure (none) paths. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…d height Verify the container shows the unavailable placeholder when there is no status data, swaps to the live-status popover when data is present, and reserves a fixed min-height so the swap does not shift the page layout. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Add Enter and Space keydown tests for the dropdown toggle so the new keyboard handler (added alongside the role="button" accessibility change) is exercised, restoring patch coverage on Dropdown.tsx. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Note on the
|
The lockfile had floated @playwright/test up to 1.56.1, which hits a known browser-install regression (microsoft/playwright#40998) where `playwright install` stalls after downloading Chrome. This stalled the "Install Playwright" step of the integration-testing workflow indefinitely across all four apps. Bump the spec from ^1.44.0 to ^1.60.0 and refresh the lockfile so CI installs a known-good version. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
No description provided.