makeplane / makeplane/plane

[feature]: Block self-rejoin after admin removes a project or workspace member

Open
#9,662 1 comment 0 reactions 2 assignees View on GitHub

@vihar is already working on this.

Since Aug 21, 2026.

✨feature plane
Dominant language
TypeScript
Stars
59.6k
Forks
5.8k
Avg merge
1d 22h
Merged PRs (30d)
49

Description

Is there an existing issue for this?
  • I have searched the existing issues
Summary

After an admin removes someone from a project (or workspace), that user should not be able to get access back by clicking Join on a public project. Access should return only when an admin explicitly adds or invites them again. Today, remove only sets is_active=false, and the self-join API can reactivate the same membership without an invite.

Why should this be worked on?

Admins expect “Remove member” to revoke access until they allow it again. On public projects, removed members can rejoin immediately via POST /api/users/me/workspaces/<slug>/projects/invitations/, which reactivates the inactive row. That makes member removal ineffective for common public-project setups and creates a security/UX gap: remove looks permanent in the UI, but access can be restored without admin action. Distinguishing admin-revoked membership from voluntary leave (e.g. an access_revoked flag) fixes this while still allowing public rejoin after someone leaves on their own, and invite/add flows remain the path to restore access.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.