Skip to content

Add TeamService with team creation, membership, confirm/reject, and u… - #18

Merged
dcl10 merged 1 commit into
mainfrom
feature/team-service
Apr 30, 2026
Merged

Add TeamService with team creation, membership, confirm/reject, and u…#18
dcl10 merged 1 commit into
mainfrom
feature/team-service

Conversation

@dcl10

@dcl10 dcl10 commented Apr 30, 2026

Copy link
Copy Markdown
Contributor

Description

Adds TeamService and the supporting endpoints to manage teams within projects and allow users to view their own memberships.

Team management endpoints (/api/projects/{projectId}/teams, require ManageProjects role):

Method Route Description
POST /{projectId}/teams Create a new proposed team (LLM-generated or manual)
POST /{projectId}/teams/{teamId}/members Add a member with a project role
DELETE /{projectId}/teams/{teamId}/members/{userId} Remove a member
PUT /{projectId}/teams/{teamId}/confirm Confirm a team — also transitions the parent project to TeamConfirmed
PUT /{projectId}/teams/{teamId}/reject Reject a proposed team

User self-view (UsersController):

Method Route Description
GET /api/users/me/teams Returns the calling user's team memberships with project context

Confirming and rejecting are only permitted on Proposed teams; attempting either on an already-settled team returns 409 Conflict.

Linked issues

(Optional) Screenshots

N/A — backend-only change.

…ser membership view

Implements issue #6: project managers can create teams (LLM-generated or manual),
add/remove members with roles, confirm a proposed team (which transitions the parent
project to TeamConfirmed), and reject teams. Any authenticated user can view their
own memberships via GET /api/users/me/teams. Team management endpoints are nested
under /api/projects/{projectId}/teams and require the ManageProjects role.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@dcl10
dcl10 merged commit 2eeb746 into main Apr 30, 2026
1 check passed
@dcl10
dcl10 deleted the feature/team-service branch April 30, 2026 14:46
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.

Team service

1 participant