Skip to content

feat(ui): add OrganizationProfileDomainsSection mosaic component#9078

Merged
alexcarpenter merged 2 commits into
mainfrom
feat/mosaic-org-profile-domains-section
Jul 10, 2026
Merged

feat(ui): add OrganizationProfileDomainsSection mosaic component#9078
alexcarpenter merged 2 commits into
mainfrom
feat/mosaic-org-profile-domains-section

Conversation

@alexcarpenter

@alexcarpenter alexcarpenter commented Jul 2, 2026

Copy link
Copy Markdown
Member

Summary

Mosaic OrganizationProfileDomainsSection: list, add + verify, edit enrollment mode, remove — matches classic OrganizationProfile domains. Wired into general panel + OrganizationProfile compound (.DomainsSection).

On main, standalone. Mosaic is internal (no public export), so no changeset surface.

Preview: https://swingset-git-feat-mosaic-org-profile-domains-section.clerkstage.dev/organization/organization-profile-domains-section

Machines (3)

  • add-verify — create + verify wizard. enteringName → creating → enteringEmail → preparing → enteringCode → attempting → selectingEnrollment → savingEnrollment, plus already-verified branches.
  • enrollment — verified-domain enrollment mode (radios from instance settings, deletePending on manual_invitation, pending-count callout).
  • remove — confirm → delete.

Machines pure; controller injects createDomain / prepareVerification / attemptVerification / updateEnrollmentMode / deleteDomain (resolve via getDomain, revalidate list) and gates on org:sys_domains:read/manage + domains.enabled.

Tests

New machine/controller/view suites (add-verify / enrollment / remove) — 65 cases green. @clerk/ui build + typecheck clean. No any / ! / casts.

Not classic-equivalent yet

  • English-only (no localizationKeys); plain code input (not segmented OTP).
  • TODOs: reverification on remove (calls delete() directly); field-level errors (single error string per machine).
  • Presentation: inline row buttons vs 3-dot menu, "Load more" vs infinite scroll, native radio/checkbox not yet appearance.elements-themeable.

Summary by CodeRabbit

  • New Features
    • Added an “Organization Profile: Domains” section, enabling users to add/verify domains, manage enrollment settings, and remove domains.
    • Extended the profile settings UI to include the Domains section in the general panel.
    • Introduced new Storybook pages and interactive demos for the Domains section.
  • Bug Fixes
    • Improved loading/permission visibility behavior for the Domains section, including disabled states and user-facing error display during domain actions.
  • Tests
    • Added comprehensive unit and view tests covering add/verify, enrollment, removal, controller behavior, and UI interactions.

@changeset-bot

changeset-bot Bot commented Jul 2, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 9512631

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@vercel

vercel Bot commented Jul 2, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated (UTC)
clerk-js-sandbox Ready Ready Preview, Comment Jul 9, 2026 8:28pm
swingset Ready Ready Preview, Comment Jul 9, 2026 8:28pm

Request Review

@coderabbitai

coderabbitai Bot commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Repository UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 2b965855-c3ef-4eec-a386-1efa4e0e6a41

📥 Commits

Reviewing files that changed from the base of the PR and between 5a66208 and 9512631.

📒 Files selected for processing (4)
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-add-verify.machine.test.ts
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.machine.test.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.machine.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.machine.ts
🚧 Files skipped from review as they are similar to previous changes (3)
  • packages/ui/src/mosaic/organization/tests/organization-profile-domains-section-enrollment.machine.test.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.machine.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.machine.ts

📝 Walkthrough

Walkthrough

This PR adds an organization profile domains section with add/verify, enrollment, and remove dialogs, plus controller wiring, panel/profile integration, Storybook/docs, and tests.

Changes

Domains Section Feature

Layer / File(s) Summary
Add/verify domain machine and view
packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.machine.ts, packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.view.tsx, packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-add-verify.*
Adds the add/verify XState machine, its dialog view, and unit tests for the add and verification flow.
Enrollment mode machine and view
packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.machine.ts, packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.view.tsx, packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.*
Adds the enrollment XState machine, its dialog view, and unit tests for editing, save eligibility, delete-pending, and error handling.
Remove domain machine and view
packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.machine.ts, packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.view.tsx, packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-remove.*
Adds the remove domain XState machine, its dialog view, and unit tests for confirming, deleting, canceling, and error recovery.
Domains section controller
packages/ui/src/mosaic/organization/organization-profile-domains-section.controller.tsx, packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section.controller.test.tsx
Adds the controller hook, its data contracts, authorization gating, machine wiring, and controller tests.
Domains section view and container
packages/ui/src/mosaic/organization/organization-profile-domains-section.view.tsx, packages/ui/src/mosaic/organization/organization-profile-domains-section.tsx, packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section.view.test.tsx
Adds the domains section container and view, including domain rows, badges, actions, pagination, nested dialogs, and view tests.
General panel and profile wiring
packages/ui/src/mosaic/organization/organization-profile-general-panel-view.tsx, packages/ui/src/mosaic/organization/organization-profile-general-panel.tsx, packages/ui/src/mosaic/organization/organization-profile.tsx, .changeset/mosaic-domains-section.md
Wires the domains section into the general panel, updates the panel layout, and exposes the section on the OrganizationProfile compound export.
Storybook stories and docs registration
packages/swingset/src/stories/organization-profile-domains-section.*, packages/swingset/src/lib/registry.ts, packages/swingset/src/components/DocsViewer.tsx, packages/swingset/src/stories/organization-profile-general-panel.stories.tsx
Adds the domains section Storybook story, MDX doc page, registry entry, and story wiring into the general panel demo.

Estimated code review effort: 4 (Complex) | ~60 minutes

Suggested reviewers: wobsoriano

Poem

I hopped through the domain rows, bright and keen,
With dialogs for verify, enroll, and clean.
Thump! The section now lands in its home,
A tidy little burrow where stories can roam.
🐇

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 3.70% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main change: adding the OrganizationProfileDomainsSection Mosaic component.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added the ui label Jul 2, 2026
@alexcarpenter alexcarpenter force-pushed the feat/mosaic-org-profile-profile-section branch from 76c5710 to 97961dc Compare July 9, 2026 19:02
Base automatically changed from feat/mosaic-org-profile-profile-section to main July 9, 2026 19:19
Rebuilds the OrganizationProfile domains subsystem as a Mosaic component
(list, add + verify, edit enrollment mode, remove) wired into the general
panel and the OrganizationProfile compound namespace (.DomainsSection).
@pkg-pr-new

pkg-pr-new Bot commented Jul 9, 2026

Copy link
Copy Markdown

Open in StackBlitz

@clerk/astro

npm i https://pkg.pr.new/@clerk/astro@9078

@clerk/backend

npm i https://pkg.pr.new/@clerk/backend@9078

@clerk/chrome-extension

npm i https://pkg.pr.new/@clerk/chrome-extension@9078

@clerk/clerk-js

npm i https://pkg.pr.new/@clerk/clerk-js@9078

@clerk/electron

npm i https://pkg.pr.new/@clerk/electron@9078

@clerk/electron-passkeys

npm i https://pkg.pr.new/@clerk/electron-passkeys@9078

@clerk/eslint-plugin

npm i https://pkg.pr.new/@clerk/eslint-plugin@9078

@clerk/expo

npm i https://pkg.pr.new/@clerk/expo@9078

@clerk/expo-passkeys

npm i https://pkg.pr.new/@clerk/expo-passkeys@9078

@clerk/express

npm i https://pkg.pr.new/@clerk/express@9078

@clerk/fastify

npm i https://pkg.pr.new/@clerk/fastify@9078

@clerk/hono

npm i https://pkg.pr.new/@clerk/hono@9078

@clerk/localizations

npm i https://pkg.pr.new/@clerk/localizations@9078

@clerk/nextjs

npm i https://pkg.pr.new/@clerk/nextjs@9078

@clerk/nuxt

npm i https://pkg.pr.new/@clerk/nuxt@9078

@clerk/react

npm i https://pkg.pr.new/@clerk/react@9078

@clerk/react-router

npm i https://pkg.pr.new/@clerk/react-router@9078

@clerk/shared

npm i https://pkg.pr.new/@clerk/shared@9078

@clerk/tanstack-react-start

npm i https://pkg.pr.new/@clerk/tanstack-react-start@9078

@clerk/testing

npm i https://pkg.pr.new/@clerk/testing@9078

@clerk/ui

npm i https://pkg.pr.new/@clerk/ui@9078

@clerk/upgrade

npm i https://pkg.pr.new/@clerk/upgrade@9078

@clerk/vue

npm i https://pkg.pr.new/@clerk/vue@9078

commit: 9512631

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

API Changes Report

Generated by Break Check on 2026-07-09T20:29:13.289Z

Summary

Metric Count
Packages analyzed 19
Packages with changes 0
🔴 Breaking changes 0
🟡 Non-breaking changes 0
🟢 Additions 0

No API Changes Detected

All packages have stable APIs with no detected changes.


Report generated by Break Check

Last ran on 9512631.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (4)
packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.view.tsx (1)

63-78: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Consider surfacing an in-progress label while deleting.

Buttons are correctly disabled during isDeleting, but the "Remove domain" label never changes to indicate work is in progress. A small text swap (e.g. "Removing…") would improve clarity without changing behavior.

♻️ Optional tweak
               <Button
                 intent='destructive'
                 type='button'
                 disabled={isDeleting}
                 onClick={() => send({ type: 'CONFIRM' })}
               >
-                Remove domain
+                {isDeleting ? 'Removing…' : 'Remove domain'}
               </Button>
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.view.tsx`
around lines 63 - 78, The deletion confirmation UI in
organization-profile-domains-section-remove.view.tsx keeps the Remove domain
button enabled state correct via isDeleting, but the label never reflects that
the action is underway. Update the Button rendered for the confirm action inside
the delete flow to swap its text based on isDeleting (for example, show an
in-progress label like “Removing…” while the machine is deleting, and “Remove
domain” otherwise), using the existing send and isDeleting state in this
component.
packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.view.tsx (1)

70-252: 📐 Maintainability & Code Quality | 🔵 Trivial | 💤 Low value

Repeated form/Actions structure across the four steps.

Each step (name/email/code/enrollment) duplicates the same <form onSubmit=...><Actions .../></form> shape with slightly different guards. This isn't a functional problem, but extracting a small StepForm wrapper that takes onSubmit, canSubmit, and children could reduce duplication and make future steps easier to add.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.view.tsx`
around lines 70 - 252, The four step blocks in the add/verify dialog repeat the
same form submission pattern around onSubmit and Actions, so extract a shared
StepForm wrapper in organization-profile-domains-section-add-verify.view.tsx to
centralize the form shell. Have the wrapper accept the submit handler, a
canSubmit flag, and children, then use it for the isNameStep, isEmailStep,
isCodeStep, and isEnrollmentStep sections while keeping each step’s specific
fields and guards intact.
packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.machine.test.ts (1)

1-117: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Missing coverage for the stale deletePending edge case.

Consider adding a test that: checks deletePending, switches to a non-manual_invitation mode, switches back to the committed mode, and asserts SUBMIT is not enabled (or that deletePending is reset). This would have caught the issue flagged in organization-profile-domains-section-enrollment.machine.ts.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.machine.test.ts`
around lines 1 - 117, There is no test covering the stale deletePending state
when the draft mode is changed away from and then back to the committed mode,
which can leave SUBMIT incorrectly enabled. Add a case in
organizationProfileDomainsSectionEnrollmentMachine tests that opens the machine,
toggles deletePending, selects a non-manual_invitation mode, switches back to
the committed mode, and then verifies either actor.can({ type: 'SUBMIT' }) is
false or the draft deletePending state is reset. Use the existing open helper
and the SELECT_MODE, TOGGLE_DELETE_PENDING, and SUBMIT events to keep the test
aligned with the machine behavior.
packages/ui/src/mosaic/organization/organization-profile-domains-section.view.tsx (1)

117-148: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Add accessible names to per-row action buttons.

Manage/Verify/Remove render identically across every row; a screen-reader user tabbing through the list only hears the generic label with no domain context. Consider aria-label={Remove ${domain.name}} (and similarly for Manage/Verify).

♿ Proposed fix
           <Button
             variant='ghost'
             size='sm'
             intent='destructive'
             type='button'
+            aria-label={`Remove ${domain.name}`}
             onClick={() => onRemove(domain)}
           >
             Remove
           </Button>
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section.view.tsx`
around lines 117 - 148, The per-row action buttons in the organization profile
domains section use identical visible labels, so add accessible names that
include the domain context. Update the buttons rendered in the
`organization-profile-domains-section` row actions so `Manage`, `Verify`, and
`Remove` each get an `aria-label` that includes `domain.name` (for example,
through the existing `onManage`, `onVerify`, and `onRemove` button handlers),
while keeping the visible button text unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.changeset/mosaic-domains-section.md:
- Around line 1-2: Add a changeset for the new public OrganizationProfile export
in packages/ui. The current changeset file is empty, so update it to include a
release note and versioning entry for the public surface change introduced by
OrganizationProfile. Keep the changeset aligned with the published ui package so
the export change is captured for release.

In
`@packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-add-verify.machine.test.ts`:
- Around line 102-114: Update the failing-verification test in
organization-profile-domains-section-add-verify.machine by removing the
expectation that the machine transitions to closed after SUBMIT_CODE when
attemptVerification returns verified: false. Instead, align it with the intended
UX fix in the machine state logic by asserting the actor remains in enteringCode
and that an error is set after the failed verification attempt, using the
existing start, attemptVerification, and actor.getSnapshot() flow.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.machine.ts`:
- Around line 39-45: `deletePending` is left stale when the enrollment mode
changes, so update the state transition logic in
`OrganizationProfileDomainsSectionEnrollmentMachine` to clear it whenever
`SELECT_MODE` changes `draftEnrollmentMode` (and any related mode-reset path
around `effectiveMode`/`canSave`). Make sure the action that handles mode
selection resets `deletePending` to false before the checkbox can be hidden, so
`SUBMIT` cannot pass an unintended `deletePending: true` to
`updateEnrollmentMode`.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section.controller.tsx`:
- Around line 146-158: The delete flow in
organizationProfileDomainsSectionRemoveMachine currently calls
organization?.getDomain() and domain?.delete() directly, bypassing the step-up
reverification used by the classic RemoveDomainForm. Update deleteDomain to
route the deletion through useReverification(deleteResource) (or the equivalent
reverification wrapper used elsewhere) so step-up auth is enforced when
required, and keep the domains?.revalidate() fire-and-forget behavior after a
successful delete.

---

Nitpick comments:
In
`@packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.machine.test.ts`:
- Around line 1-117: There is no test covering the stale deletePending state
when the draft mode is changed away from and then back to the committed mode,
which can leave SUBMIT incorrectly enabled. Add a case in
organizationProfileDomainsSectionEnrollmentMachine tests that opens the machine,
toggles deletePending, selects a non-manual_invitation mode, switches back to
the committed mode, and then verifies either actor.can({ type: 'SUBMIT' }) is
false or the draft deletePending state is reset. Use the existing open helper
and the SELECT_MODE, TOGGLE_DELETE_PENDING, and SUBMIT events to keep the test
aligned with the machine behavior.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.view.tsx`:
- Around line 70-252: The four step blocks in the add/verify dialog repeat the
same form submission pattern around onSubmit and Actions, so extract a shared
StepForm wrapper in organization-profile-domains-section-add-verify.view.tsx to
centralize the form shell. Have the wrapper accept the submit handler, a
canSubmit flag, and children, then use it for the isNameStep, isEmailStep,
isCodeStep, and isEnrollmentStep sections while keeping each step’s specific
fields and guards intact.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.view.tsx`:
- Around line 63-78: The deletion confirmation UI in
organization-profile-domains-section-remove.view.tsx keeps the Remove domain
button enabled state correct via isDeleting, but the label never reflects that
the action is underway. Update the Button rendered for the confirm action inside
the delete flow to swap its text based on isDeleting (for example, show an
in-progress label like “Removing…” while the machine is deleting, and “Remove
domain” otherwise), using the existing send and isDeleting state in this
component.

In
`@packages/ui/src/mosaic/organization/organization-profile-domains-section.view.tsx`:
- Around line 117-148: The per-row action buttons in the organization profile
domains section use identical visible labels, so add accessible names that
include the domain context. Update the buttons rendered in the
`organization-profile-domains-section` row actions so `Manage`, `Verify`, and
`Remove` each get an `aria-label` that includes `domain.name` (for example,
through the existing `onManage`, `onVerify`, and `onRemove` button handlers),
while keeping the visible button text unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository YAML (base), Repository UI (inherited)

Review profile: CHILL

Plan: Pro Plus

Run ID: 3b8ac0d6-59d8-4924-9fa6-704e8e990d6b

📥 Commits

Reviewing files that changed from the base of the PR and between 85df1cc and 5a66208.

📒 Files selected for processing (25)
  • .changeset/mosaic-domains-section.md
  • packages/swingset/src/components/DocsViewer.tsx
  • packages/swingset/src/lib/registry.ts
  • packages/swingset/src/stories/organization-profile-domains-section.mdx
  • packages/swingset/src/stories/organization-profile-domains-section.stories.tsx
  • packages/swingset/src/stories/organization-profile-general-panel.stories.tsx
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-add-verify.machine.test.ts
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-add-verify.view.test.tsx
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.machine.test.ts
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-enrollment.view.test.tsx
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section-remove.machine.test.ts
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section.controller.test.tsx
  • packages/ui/src/mosaic/organization/__tests__/organization-profile-domains-section.view.test.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.machine.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-add-verify.view.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.machine.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-enrollment.view.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.machine.ts
  • packages/ui/src/mosaic/organization/organization-profile-domains-section-remove.view.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section.controller.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section.tsx
  • packages/ui/src/mosaic/organization/organization-profile-domains-section.view.tsx
  • packages/ui/src/mosaic/organization/organization-profile-general-panel-view.tsx
  • packages/ui/src/mosaic/organization/organization-profile-general-panel.tsx
  • packages/ui/src/mosaic/organization/organization-profile.tsx

Comment thread .changeset/mosaic-domains-section.md
- enrollment: reset deletePending on mode change so a hidden checkbox can't
  silently delete pending invitations/suggestions on an unchanged mode.
- add-verify: keep the user on the code step with an error when a verification
  attempt returns verified:false instead of silently closing the dialog.
@alexcarpenter alexcarpenter merged commit 02c4489 into main Jul 10, 2026
53 checks passed
@alexcarpenter alexcarpenter deleted the feat/mosaic-org-profile-domains-section branch July 10, 2026 01:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants