Skip to content

T3-26.25 Prod release#192

Merged
qiyundai merged 25 commits into
mainfrom
stage
Jun 18, 2026
Merged

T3-26.25 Prod release#192
qiyundai merged 25 commits into
mainfrom
stage

Conversation

@sharmeebuilds

Copy link
Copy Markdown
Collaborator

What

Production release merging all stage changes into main for the T3-26.25 sprint.

Key changes included

Bug fixes

  • Store IMS session in localStorage to prevent cookie overflow (MWPW-196650)
  • Fix speaker profile image replace and cascade to events
  • Restore title and description root fields in session payload
  • Add locale to loadSessions useCallback deps

Features

  • Clone event modal with deferred API fetch (MWPW-197252)
  • Session localization support for create and update (MWPW-198072)
  • Enforce lowercase input for locale folder field
  • Align EMC types and payload builders with ESP scope config schema (ESP PR #996)
  • Migrate to single-config upsert API
  • Support scope config locales in detail page URL prefix resolution
  • npm run local script to target local ESL/ESP backends
  • Registration data and session data download
  • Hoist mergedLocalizations for reuse in optimistic update

Why

Sprint T3-26.25 — ships session localization, clone event, scope config alignment with ESP, and speaker image fixes to production.

Test plan

  • Create/update a session with a non-default locale and verify localized fields are saved
  • Clone an event via the new clone modal and verify the cloned event is created correctly
  • Verify speaker profile image replace cascades to linked events
  • Confirm IMS session persists across page reloads without cookie overflow errors
  • Open ConfigManagement, add a new locale slice, confirm scope config locales load in language picker and detail page URL prefix
  • Check CI: stage deploy runs cleanly; prod deploy triggers on release tag

🤖 Generated with Claude Code

dol-iva and others added 25 commits May 29, 2026 16:30
Adobe imslib was configured with useLocalStorage: false, causing it to
store session data (tokens, profile, projectedProductContext) in cookies.
Enterprise users with many product entitlements accumulate enough cookie
data to exceed the 8192-byte request header limit, resulting in
RequestHeaderSectionTooLarge errors on eventsplatform.adobe.com.

Switching to useLocalStorage: true keeps cookies small and eliminates
the need for users to manually clear cookies.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-196650] fix: store IMS session in localStorage to prevent cookie overflow
Use PUT for replacing existing series speaker photos (sponsor pattern),
invalidate speaker list cache after image mutations, and cascade updates
only to events where the speaker is on the event roster to avoid
getEventSpeaker 404s. Surface partial-failure toasts instead of always
showing success.

Co-authored-by: Cursor <cursoragent@cursor.com>
Replaces the old /scopes/{id}/configs CRUD surface with the new
PUT/GET /scopes/{id}/config (singular) upsert endpoints, in
preparation for ESP removing the legacy routes.

- types/configApi.ts: replace ConfigCreateBody + ConfigUpdateBody
  with ScopeConfigUpsertBody
- services/api.ts: replace getConfigsForScope/getConfigById/
  createConfig/updateConfig/deleteConfig with getConfig + upsertConfig;
  update cachedApi wrappers accordingly
- ConfigManagement.tsx: collapse all create/update branches into
  single upsertConfig calls; deleteSlice/handleDeleteAttr no longer
  call deleteConfig (PUT with cleared slice instead)
- EventForm components: getConfigsForScope → getConfig (single
  config, check slice presence directly)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds a 'local' environment tier that routes ESL to localhost:8499 and
ESP to localhost:8500, allowing frontend development against locally
running backend services via `npm run local`.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…date

fix(speakers): profile image replace and cascade on Speakers Dashboard
feat(config): migrate to single-config upsert API
feat: Add npm run local:be to target local ESL/ESP backends
…fig schema (PR #996)

- Restructure ScopeConfig: locales wrapped in LocalesSlice, rsvp fields
  wrapped in RsvpSlice, customAttributes typed as CustomAttributeConfig[]
- Fix upsertConfig PUT payload: inject scopeId, wrap locales/rsvp correctly
- Rename CustomAttributeValue.displayOrder → ordinal (matches ESP schema);
  make valueId required
- Restore full CRUD handlers for custom attributes and RSVP ready for when
  tabs are re-enabled
- Update all read/write sites across ConfigManagement, EventInfoComponent,
  RegistrationFieldsComponent, CustomAttributesComponent, eventFormMappers

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…resolution

- getDetailPageLocalePrefixFromIetf now accepts an optional ietfToSiteKeys map
  so the caller controls the locale source; defaults to the static milo map
- EventFormContext stores scopeLocales fetched by EventInfoComponent, making
  them available across form steps without an extra API call
- useCustomDetailPagePath builds the ietfToSiteKeys map from scopeLocales when
  present, falling back to the static map via the default param

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-197388] feat(config): align scope config payload with ESP schema
Mirrors the event localization pattern for sessions — reads name/description
from localizations[locale] (with fallback to root enTitle/description for
legacy sessions), and sends localizations + localizationOverrides in
create/update payloads to align with ESP PR #1011.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ayload

Keeps existing enTitle, title, and description fields in the create/update
request body alongside the new localizations object.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-197252]:- Export Session Registration Data to CSV
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…update

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
[MWPW-198072] feat(sessions): add localization support for session create and update
@qiyundai qiyundai merged commit 59b6792 into main Jun 18, 2026
4 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.

4 participants