From daa6013fd0b363ce3141b7e7dec8fa0ff01bc1c2 Mon Sep 17 00:00:00 2001 From: Jeff Emmett Date: Tue, 3 Mar 2026 13:17:53 -0800 Subject: [PATCH] =?UTF-8?q?fix:=20add=20migrateVisibility=20runtime=20migr?= =?UTF-8?q?ation,=20fix=20participant=E2=86=92member=20role=20label?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.6 --- server/community-store.ts | 14 ++++++++++++++ shared/components/rstack-space-switcher.ts | 2 +- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/server/community-store.ts b/server/community-store.ts index 0936187..4d59d4f 100644 --- a/server/community-store.ts +++ b/server/community-store.ts @@ -222,6 +222,20 @@ function migrateParticipantToMember( }); } +function migrateVisibility( + doc: Automerge.Doc, + slug: string, +): Automerge.Doc { + const v = doc.meta?.visibility as string; + if (!v) return doc; + const normalized = normalizeVisibility(v); + if (v === normalized) return doc; + console.log(`[Store] Migrating visibility ${v}→${normalized} in ${slug}`); + return Automerge.change(doc, `Migrate visibility ${v}→${normalized}`, (d) => { + d.meta.visibility = normalized; + }); +} + /** * Load community document from disk */ diff --git a/shared/components/rstack-space-switcher.ts b/shared/components/rstack-space-switcher.ts index ed364d3..f689d1d 100644 --- a/shared/components/rstack-space-switcher.ts +++ b/shared/components/rstack-space-switcher.ts @@ -567,7 +567,7 @@ export class RStackSpaceSwitcher extends HTMLElement { container.innerHTML = members.map((m) => { const displayName = m.displayName || m.did.slice(0, 20) + "..."; - const roleOptions = ["viewer", "participant", "moderator", "admin"] + const roleOptions = ["viewer", "member", "moderator", "admin"] .map((r) => ``) .join(""); return `