Skip to content

fix: sync directory visibility for individual members#1804

Merged
bokelley merged 4 commits into
mainfrom
bokelley/fix-member-profile-save
Apr 1, 2026
Merged

fix: sync directory visibility for individual members#1804
bokelley merged 4 commits into
mainfrom
bokelley/fix-member-profile-save

Conversation

@bokelley

@bokelley bokelley commented Apr 1, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Individual member directory visibility: When a personal account toggles "Show in directories" on their community profile, is_public now syncs to member_profiles (gated on active subscription). Previously only users.is_public was set, so individual members could never appear in the Partner Directory from the profile edit page.
  • Slug collision on first save: New members get an auto-generated slug from their name, but the slug field is hidden on first save. If the slug is taken, the save failed with no way to fix it. Now auto-appends a random suffix on collision.
  • Slug length validation: Added max length (80 chars) to slug validation to prevent DB column overflow, especially with suffix appending.
  • Toggle description: Updated to clarify the toggle controls both community and member directories.

Addresses support tickets #176, #177, #178, #179 reported by Sami MOKRANI (sami@progmaticmotion.com).

Note: Slack access (#177, #178) is operational — no self-service invite flow exists. Sami needs a Slack workspace invite, then email auto-mapping will link the accounts.

Test plan

  • TypeScript compiles cleanly (tsc --noEmit)
  • All 1050 unit tests pass
  • Pre-commit hooks pass (full test suite)
  • Verify individual member with active subscription: toggling "Show in directories" on makes them visible in both People Directory and Member Directory
  • Verify individual member without subscription: toggling on only affects People Directory, Member Directory stays hidden
  • Verify new member with common name: if slug collides, profile save still succeeds with random suffix
  • Verify existing members: slug collision retry only triggers on first save, not subsequent edits

🤖 Generated with Claude Code

bokelley and others added 4 commits April 1, 2026 18:54
… collisions

Individual members toggling "Show in directories" now appear in both the
community People Directory and the Partner Member Directory (when subscribed).
Previously only users.is_public was set, leaving member_profiles.is_public
unchanged. Also handles auto-generated slug collisions on first save by
appending a random suffix, so new members aren't blocked by hidden slug
conflicts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Both sides updated the visibility toggle description. Kept our wording
(mentions both directories) with main's link target (/organization#membership).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Adds empty changeset to satisfy CI changeset check (server-only fix,
no protocol version bump needed). Increases timeout for the MCP fallback
test from 5s to 15s to prevent flaky failures in CI when the real
@adcp/client import path is slow.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@bokelley bokelley merged commit a933a56 into main Apr 1, 2026
12 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.

1 participant