Skip to content

fix(workplace): home shortcuts keep the colleague or room on the meeting form - #567

Merged
MrYuion merged 2 commits into
developfrom
fix/home-shortcut-prefill
Oct 13, 2026
Merged

MrYuion merged 2 commits into
developfrom
fix/home-shortcut-prefill

Conversation

@MrYuion

@MrYuion MrYuion commented Oct 13, 2026

Copy link
Copy Markdown
Collaborator

Problem

Two home page shortcuts can open an empty meeting form: "meeting with a colleague" and "book a favourite room".

Each shortcut filled the form on a 300 ms timer. The form service stores the form 300 ms after a change, and the form page calls loadForm when it loads. When the page loaded between 300 and 600 ms after the click, loadForm replaced the model with the stored form, which did not have the value yet. The colleague or room was lost.

The e2e specs home-meeting-with and home-favourites failed on this in CI (4 failed attempts in the last nine runs).

The locker specs LOCK-03 and LOCK-04 were also flaky (12 failed attempts in the same runs), for a different reason. Adding a locker closes the modal, but the page object then clicked "confirm selection" if the modal was still visible. When the modal detached first, the click waited its full 20 s.

Fix

  • New EventFormService.newFormWith() starts a new form with the given values and saves them with the form at once. loadForm then restores them at any load time. Both shortcuts use it, and the timers are gone.
  • The locker page object waits for the modal to close after the selection. The unused returnSelectionButton locator is removed.

Checks

  • Repro in mock mode with the page chunks delayed into the 300 to 600 ms window: before the fix the colleague was lost in 9 of 12 runs. After the fix the colleague was kept in 24 of 24 runs. I ran this repro for the colleague shortcut only. The favourite room shortcut uses the same method.
  • On the local e2e stack, the locker and home specs pass 8 times each. They also pass without the changes on a fast machine, so this shows no regression. The locker fix is based on the CI call log ("element is not stable", then "element was detached from the DOM").
  • Unit tests and lint pass for events and workplace. The workplace app builds.

Not included

Three other shortcuts use the same timer pattern with the booking form: landing-upcoming, newBooking in landing-favourites, and schedule. No spec has failed on them.


Changes made by Claude Opus 5.5 in the Claude Code harness.

🤖 Generated with Claude Code

…he meeting form

"Meeting with a colleague" and "book a favourite room" filled the meeting
form on a 300 ms timer. When the form page loaded between 300 and 600 ms
after the click, `loadForm` replaced the model with the stored form, and
the colleague or room was lost.

`EventFormService.newFormWith()` sets the values and saves them with the
form at once, so `loadForm` restores them at any load time.
Adding a locker closes the modal. The page object then clicked "confirm
selection" if the modal was still visible. When the modal detached first,
the click waited its full 20 s, and LOCK-03 and LOCK-04 failed.
@vercel

vercel Bot commented Oct 13, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated
frontend-templates Ignored Ignored Oct 13, 2026 5:50am UTC

@MrYuion
MrYuion merged commit 36970fa into develop Oct 13, 2026
5 checks passed
@MrYuion
MrYuion deleted the fix/home-shortcut-prefill branch October 13, 2026 06:07
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.

1 participant