You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Draft — do not merge. This is the single release PR for the meeting details V2 redesign (epic #1765). Every piece of the epic lands in feat/meeting-details-v2 through its own reviewed PR. Nothing reaches main, and so production, until this PR merges, once the whole project is built. It stays a draft labelled do-not-merge until then.
Why it's open now
It's the only place the full check suite runs on the combined code.quality-check.yml (lint, types, unit tests, build) only triggers on PRs into main, so every merge into feat/meeting-details-v2 re-runs it here.
It's the running index of what the release contains.
Phase 1: the rest of E1, then E2 to E5 and N-01 to N-03. E2-01 (feat(meetings): build the v2 action slot on an explicit resolver #1775) also picks up criteria moved out of E1: the organizer (FR-014), the "Anyone with this link" explainer, and the early-join rule under Join. E2-04 loads the viewer's RSVP into meetingStatus.
Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.
⚙️ Run configuration
Configuration used: Repository UI
Review profile: CHILL
Plan: Essentials
Run ID: bfd5b090-1ddb-40c1-be3f-6990bb2e5955
You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.
Use the checkbox below for a quick retry:
🔍 Trigger review
Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts
Comment @coderabbitai help to get the list of available commands.
* docs(meetings): add the v2 rollout and retirement plan
Adds specs/011-meeting-details-redesign/rollout.md for V2-03. It
separates the two controls: the integration branch decides whether the
code is in production at all (nothing reaches main until release PR
#3249), and MEETING_V2_ENABLED_FLAG decides who sees V2 once it is.
Defines eight stages (build, release, internal testers, extended
testers, signed-in percentage, anonymous, soak, retire), each with who
decides and exit criteria. States that the code default never changes
and targeting is the switch. Gives the anonymous plan: a code change
that needs #2920's server-side evaluation, then an anonymous
LaunchDarkly context ramped by percentage. Adds what is measured, a
rollback table, and flag retirement: this page drops its read of the
shared flag, and the flag itself retires only with the composer.
The V1-deletion checklist is filed as #3266. The README's contents
table now lists the files that actually exist.
Refs #2875
Signed-off-by: Nuno Eufrasio <nmeufrasio@gmail.com>
* docs(meetings): reconcile v2 spec cross-references after the merge
The foundation PRs (#2909, #2910, #2911, #2913, #2914, #2935) now sit
together on feat/meeting-details-v2, so the "pending sibling, not on
main yet" notes they carried are stale. They become plain
cross-references in spec.md, state-matrix.md, data-model.md,
requirements.md, testid-contract.md, v2-scaffold.md and the
meeting-view-model resolver comments.
Also records the newly filed Phase 1 issues (#3250-#3265) in spec.md's
work order and requirements.md's traceability table, and the V1
retirement issue #3266.
Refs #1766
Signed-off-by: Nuno Eufrasio <nmeufrasio@gmail.com>
* docs(meetings): fix rollout plan gating and rollback guidance
Make #2920 the stage 4 entry gate rather than a release blocker,
scope R05 and FR-001 to the stages before the anonymous stage, give
the V1 rollback a targeted-revert path, and stop reusing the D-2 label.
Refs #2875
Signed-off-by: Nuno Eufrasio <nmeufrasio@gmail.com>
* docs(meetings): address review feedback on the rollout plan
Make FR-001 platform-neutral with the signed-in and post-hydration
rules scoped to their stages, limit stage 2 to signed-in states, define
the baseline once a V1 cohort is gone, and re-wrap a spec paragraph.
Refs #2875
Signed-off-by: Nuno Eufrasio <nmeufrasio@gmail.com>
---------
Signed-off-by: Nuno Eufrasio <nmeufrasio@gmail.com>
This ownership description is stale: MeetingDetailsStateService now derives viewer role, privacy, meeting status, action slot, early-join eligibility, and the shared sign-in URL. Saying the sections derive those states independently misdocuments the centralization that prevents sections from disagreeing.
Preserve MeetingDetailsSeedService ownership during direct routing
Directly routing to the page removes the only MeetingDetailsSeedService provider, while the page state service injects it optionally. The browser would then ignore the server's ready/error TransferState seed, refetch, and initially render a different branch. Include relocating seed ownership in this checklist rather than asserting that the page needs no change.
The reason will be displayed to describe this comment to others. Learn more.
Copilot review overview
🟡 Changes recommended
Guest joins can use a stale email-specific URL, uninvited organizers are offered unusable RSVP controls, and the release remains an explicitly incomplete draft.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
do-not-mergeIndicates that the pull request should NOT be merged.meetingsAn epic, feature, story, task, or bug related to meetings.
2 participants
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why it's open now
quality-check.yml(lint, types, unit tests, build) only triggers on PRs intomain, so every merge intofeat/meeting-details-v2re-runs it here.Merged into the integration branch so far
specs/011-meeting-details-redesign/spec.md)AGENTS.md: needs code-owner review)@lfx-one/shared)/meetings/:id+ V2 scaffold; V1 moved tomeeting-join-v1/byte-identicalspecs/011-meeting-details-redesign/rollout.md)docs/architecture/frontend/meeting-surface-boundary.md)MeetingDetailsStateService) and the gate's TransferState seed handofflfx-headeron V2): date tile, status subtitle, sign-in / account menuresolvePrivacy)meetingStatus(adds "Starting soon" before the scheduled start)rollout.md)data-my-rsvp,setMyRsvp; BFF/rsvp/menow surfaces lookup failuresrsvp-unavailablestate, off-state pinnedStill to build before this merges
See
specs/011-meeting-details-redesign/spec.md§ Work order:rollout.md). E0-03 awaits the Permissions owner's confirmation of the organizers-only Manage role (asked on docs(meetings): record the public and admin meeting surface boundary #3268).meetingStatus.Before marking ready
feat/meeting-details-v2mainmerged into the integration branch, with CI green hereCloseslines added for every issue the epic resolves (sub-PRs targeted a non-default branch, so their closing keywords didn't fire)AGENTS.mdline (feat(meetings): add scoped design tokens for meeting details v2 #2911)🤖 Generated with Claude Code