Skip to content

feat: BE 10.14 연동 — 에이전트·멤버·레포 해제 · 초대 관리 · 프로젝트 중단 - #57

Merged
jeonbinggu merged 1 commit into
developfrom
feat/be-1014-removal
Oct 16, 2026
Merged

jeonbinggu merged 1 commit into
developfrom
feat/be-1014-removal

Conversation

@jeonbinggu

Copy link
Copy Markdown
Member

🔀 Pull Request Title

feat: BE 10.14 연동 — 에이전트·멤버·레포 해제 · 초대 관리 · 프로젝트 중단


🎞️ 주요 코드 설명

공통 피드백 (shared/ui/RemovalFeedback.tsx)

  • ConfirmButton — 해제·내보내기·탈퇴는 한 번 누르면 그 자리에서 확인을 묻고, 요청 중에는 잠근다
  • RemovalError — 409 ACTIVE_TASKS_HELD면 details의 태스크(상태 · 제목)를 함께 보여 준다 (heldTasks, shared/api/errors.ts)
  • RevocationNotice — githubRevocations 중 skipped·failed만 "GitHub에서 직접 정리가 필요합니다"로 안내. 빈 배열·전부 성공이면 안 그린다

새 훅

API 훅 무효화
DELETE /agents/{id} useDisconnectAgent 에이전트
DELETE /orgs/{orgId}/members/{userId} useRemoveMember 전부 (탈퇴면 /me의 orgId가 null)
GET·DELETE /orgs/{orgId}/invites useInvites · useRevokeInvite 초대 (발급도 무효화)
DELETE /repos/{id} useDisconnectRepo 레포
POST /projects/{id}/abort useAbortProject 프로젝트 상세·목록

화면

  • 조직(/org): 멤버 "내보내기"(대표, 대표 본인 제외) · 에이전트 목록(새 섹션) "연결 해제"(주인·대표) · 대기 중인 초대(링크 복사 · 만료 표시 · 취소) · 레포 "연결 해제"(대표, 진행 중 프로젝트가 쓰는 레포는 버튼 숨김)
  • 계정 설정: "조직 나가기"(팀원만)
  • 프로젝트 설정: 시작 뒤에도 해제·배정, 끝난 프로젝트(completed·aborted)만 잠금. "프로젝트 중단"(확인 + 사유)
  • 프로젝트 목록: 중단된 프로젝트는 뒤로, 흐리게

📌 PR 설명

  • 타입 다시 생성
  • 에이전트 목록에 "연결 해제" 버튼(본인 에이전트·대표)
  • 조직 멤버 "내보내기"(대표), 계정 설정 "조직 나가기"(대표 제외)
  • 프로젝트 멤버 편집을 시작 후에도 허용
  • 레포 목록 "연결 해제"(대표)
  • 초대 관리: 목록·링크 복사·취소, 미리보기 revoked(#55에서 문구 추가)
  • 프로젝트 "중단"(대표, 확인 + 사유), aborted 표시
  • ACTIVE_TASKS_HELD 오류 표시, githubRevocations skipped·failed 안내
  • 탈퇴 후 orgId: null — 전체 무효화 후 AuthGate가 /onboarding으로 보낸다(기존 동작)

실시간: 새 신호(agents · members · repos · projects · project·tasks·members·room)는 기존 토픽 매핑으로 다시 읽는다. 초대 목록 키는 orgKeys 아래라 members 신호로 같이 갱신된다.

검증: pnpm format:check · lint · typecheck 통과. 계약 모양의 목 서버로 확인 — 에이전트 해제(409 태스크 목록 / 성공 + 회수 안내), 초대 발급·취소, 레포 해제, 시작된 프로젝트의 멤버 해제(409 / 성공 + 회수 안내)·재배정 선택지, 프로젝트 중단(사유 전송 → 중단 배지 · 편집 잠금), 목록의 중단 프로젝트, 팀원 "조직 나가기" 요청.
확인하지 못한 것: 실제 BE에서의 탈퇴 후 /onboarding 이동, 4403 NOT_IN_ORG 스트림 종료 뒤 동작, 실시간 신호.

참고: 계획 요청(POST /pm/plans) 본문이 선택값이 되면서(10.15) 생성 타입이 never가 되어 useRequestPlan의 본문 타입만 직접 적었다. 10.15 화면은 다음 PR.


📷 스크린샷

조직 화면(에이전트 · 초대 관리 · 레포 연결 해제) — 코멘트로 첨부 예정


🤖 Generated with Claude Code

- schema.d.ts 재생성 (해제·초대·중단 API, githubRevocations, 계획 요청 본문 선택)
- 조직: 멤버 내보내기(대표), 에이전트 목록 + 연결 해제(주인·대표), 대기 중인 초대 목록·복사·취소, 레포 연결 해제(대표)
- 계정 설정: 조직 나가기(팀원). 탈퇴하면 전체를 다시 읽어 AuthGate가 /onboarding으로 보낸다
- 프로젝트 설정: 시작 뒤에도 멤버 해제·배정, 프로젝트 중단(확인 + 사유), 끝난 프로젝트는 잠금
- 프로젝트 목록: 중단된 프로젝트는 뒤로·흐리게
- 공통: 409 ACTIVE_TASKS_HELD 태스크 목록, githubRevocations skipped·failed 안내, 인라인 확인 버튼
- 계획 요청 본문이 선택값이 되어 생성 타입이 never — 훅에서 직접 적음

Closes #56

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@vercel

vercel Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
frontend Ready Ready Preview Oct 15, 2026 4:40am UTC

This branch was successfully deployed

1 active deployment
Preview — 996b3faa Deployed Oct 15, 2026 by vercel[bot]
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.

[FEAT] BE 10.14 연동 — 에이전트·멤버·레포 해제 · 초대 관리 · 프로젝트 중단

1 participant