Skip to content

[Bug] Admin-removed membership cannot be restored — invite blocked, Cloud UI has no restore #2028

Description

@cnlizhen

Summary

After an org admin removes a human member, inviting that same user back fails with "must be restored by an admin", but Cloud Team UI has no removed-members list or Restore action — so the membership cannot be recovered through the product.

Surface Area

web (Team / memberships / invites)

Environment

  • version: 0.5.17
  • runtime: cursor
  • operating system: Darwin 24.6.0 arm64 (macOS 15.7.4)

Reproduction

  1. As org admin, open Team (/team) and Remove from org a human member (and optionally delete their agent).
  2. Create an Invite link and have that same user accept it (same First Tree account / user id).
  3. Observe the accept/join response error.
  4. As admin, look for a removed/inactive members list or Restore control on Team / Settings.

Expected Behavior

An admin can restore an admin-removed membership (or the product allows re-invite to succeed), so the user can rejoin without creating a new account.

Actual Behavior

Invite/join returns:

{"error":"Membership for user \"019f923f-8faf-7c1f-bd17-fd9d70bba5a1\" was removed by an admin and must be restored by an admin.","traceId":"019fa699f4ae7ab2be2f1d37985491bd"}

Cloud Team page only lists current members; admin actions are Invite link, Remove from org, and agent Suspend/Reactivate/Delete. There is no removed-members view and no membership Restore API/UI in the shipped web client (GET /members returns active members only).

First Tree Context

  • Chat ID: f4473b73-2235-43f5-b68b-63e439503780
  • Reported by (user): cnlizhen
  • Agent: lizhen_cursor (019f7d8a-e4b8-705d-81d3-2cae9c5fafcd)

Additional Context

  • Org id (from chat context): 019f45fd-2615-7198-9db2-0bfa4d4784c1
  • Self-leave copy says “need an invite to join again”; admin-remove appears to use a harder path that invite cannot clear.
  • Suggested fix direction: admin Restore on Team (or equivalent API + UI), or allow invite to re-activate admin-removed memberships with an explicit admin-created invite.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions