Skip to content

Bring develop level with main [Develop] - #249

Merged
mlaetitia merged 132 commits into
developfrom
update/t51eng-2307-sync-develop-with-main
Oct 30, 2026
Merged

mlaetitia merged 132 commits into
developfrom
update/t51eng-2307-sync-develop-with-main

Conversation

@mlaetitia

Copy link
Copy Markdown
Collaborator

Related to T51ENG-2307

Proposed changes

  • Make develop match main.
  • Merge with Create a merge commit, so the two branches share history from here on.

Why are these changes being made?

Staging has drifted from production, and this was requested on T51ENG-2081 and T51ENG-2307. Older develop commits stay in history and can be cherry-picked.

Testing instructions

  • After merging, git diff origin/main origin/develop is empty.
  • Open the home page and /ai on staging and confirm they load.

🤖 Generated with Claude Code

nickpagz and others added 30 commits September 17, 2024 11:22
Add filter to reduce the Discourse comment body to 50 words
…showing

Only limit the number of posts to account for the sticky blog on page
…-when-no-pronoun-supplied

Feature/gh144 allow role to show when no pronoun supplied
…e-pages-main

Adjust Single License Page Content Width - Main
… shortcode and general phpcs cleanup of templatefunctions
…iew-artifacts-alsp-add-supporters-shortcode

Fix/gh152 fix firefox print preview artifacts alsp add supporters shortcode
…ader-wide-main

[Main] Add/new page template noheader wide main
…es-width-all-elements

Update/wide template changes width all elements
mlaetitia and others added 29 commits August 26, 2026 19:53
…ucent panels) and move the header divider line to the open-state veil so it never flickers

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 58a3170)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit de99af5)
…u's settings, keeping Get Involved as the fallback

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 1070867)
…ack to a hardcoded link

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 21b363f)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 95e255e)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
(cherry picked from commit 21fb84a)
…nd rebuild the generated CSS

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01X94V2vAqzynRRcqP4Jji2U
…velop: chevron, panel switch, mobile logo and CTA fixes, and the hidden Get Involved item

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
…ion taps and a filter signature that could fatal

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
…st and on hover

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
…ry other menu item

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
…e the page dimmed with no menu

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit d1bc217)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 9da58ef)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 659a7a4)
…the mask mid-rotation

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit a019b7b)
…r collapses into an ellipsis

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 9204da0)
…s repository

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
Add a mega menu with per-item featured content to the primary navigation
The header shrank only after 100px of scrolling, and a single threshold meant
the 25px the page lifts on shrinking could be handed back by scroll anchoring,
re-crossing the bound and toggling the class repeatedly. The threshold to beat
now depends on which state the header is in, so no correction can reach the
other bound, and the handler runs once per animation frame on a passive
listener. Mobile and desktop share one path; the mobile header no longer grows
back mid-page on an upward scroll.

max-height had no length to animate from, so the shrink snapped rather than
eased; the base rules now set one, and the transitions name the properties that
actually change.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit a3ef8d6)
…e page

The header is sticky but sits in flow, so shrinking it moved everything below it
and left the nav drifting up on a small scroll. It now holds its height and only
the logo shrinks, which also removes the content shift that made the class
toggle in a loop, so the scroll handler needs a single threshold again.

The white background moved off the header box onto a veil that escapes the
wrapper's 5vw inset, so it reaches both edges of the page as the design asks.
The megamenu panel already did this; both now share one mixin, and the AI
template's green trim rides along with it.

Along the way: the row is centred again now that nothing overrides the
unbalanced top padding, dropdowns are no longer clipped while scrolled, and the
1200px breakpoint no longer falls in both branches at once.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 68bb1b1)
Three things still shifted when the header went small. The logo column took its
width from the logo, so shrinking the logo handed the nav that width and the
menu reflowed from two rows to one. The admin bar offset applied only to the
small state, so logged-in users saw the whole header drop 32px the moment the
class flipped. And the menu links were re-padded, left over from when the header
itself got shorter.

The column now holds its width, the offset applies in both states, and the link
padding is gone. Only the logo changes, which is the point.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 3c36769)
The header shrank on scroll until #241 removed it. Shrinking a `position:
sticky` header reflows the page, Chrome corrects scrollY to hold its scroll
anchor still, and that correction re-crosses the shrink threshold in a loop.
That was the flicker, and it was Chrome-only because Safari has no scroll
anchoring.

Fixing the header to the viewport and leaving a constant-height spacer in its
place means the shrink costs the document nothing, so nothing corrects and
nothing loops. The header then spans the viewport, so it carries the wrapper's
inset itself and the megamenu panel no longer needs to escape one.

125px to 90px is as far as the bar can go: the logo column is pinned at 300px
so the menu never reflows, which leaves the menu two rows below roughly
1690px, and two rows need 88px once `$navPadSmall` tightens the nav.

Desktop only. Below `$break-nav` the off-canvas menu measures itself against
`$headerInnerHeight`, so the mobile header keeps its height and only the logo
shrinks, exactly as before.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 7c137e7)
Compiled CSS is unchanged.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit df39967)
#240 merged the mobile and desktop scroll paths into one absolute threshold,
which dropped the behaviour production has below 785px: the full-size logo
returns on any upward scroll rather than only at the top of the page. The
partner asked for production's behaviour to be kept.

Three cases could leave the logo stuck small. The handler runs once per
animation frame, so a single frame can swallow a whole flick, and recording the
turning point where the frame landed rather than at the peak it turned from made
the restore unreachable after a back-to-top jump, a hard flick up from just
below the fold, or iOS overscroll reporting a negative position. It now records
the peak, clamps the position at zero, and clears the peak on the wide path so a
rotation cannot carry a stale one.

matchMedia replaces the innerWidth read, so crossing 784px re-decides instead of
waiting for the next scroll event.

No CSS changed. The bar keeps its height at every width, so the logo row and the
menu button stay where they are.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011rCHPCdbV5C5dDJjEmMDuy
(cherry picked from commit 507aa45)
…AI pages, and keep the AI trim single when a menu opens

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…on the page text

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Fix the header on scroll, in print and on AI pages
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@mlaetitia
mlaetitia merged commit 6df739e into develop Oct 30, 2026
4 of 5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.