feat: 프로젝트(Project) 모듈 기반 추가 — 프로젝트 우선 구조 1단계

저장소=프로젝트 1:1 구조를 프로젝트 우선 + 프로젝트 1:N 저장소로 전환하는 리팩터의 기반.
기존 코드는 건드리지 않고 추가만 함(기존 저장소 기반 동작 유지).

- Project / ProjectMember 엔티티 (isSystem '미분류' 버킷, admin/member/owner)
- ProjectService: CRUD + 권한 헬퍼(assertProjectMember/Admin) + 부팅 시 '미분류' 시스템 프로젝트 보장
- ProjectMemberService: 초대/역할/제거 (활동·알림 배선은 Activity 이관 단계 TODO)
- /projects, /projects/:id/members 라우트, app.module 등록
- docs/project-refactor-plan.md (리팩터 SSOT)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-20 18:41:58 +09:00
parent 9bcbc1564f
commit 2f66cdda8a
13 changed files with 877 additions and 0 deletions
+2
View File
@@ -18,6 +18,7 @@ import { TaskModule } from './modules/task/task.module';
import { ActivityModule } from './modules/activity/activity.module';
import { NotificationModule } from './modules/notification/notification.module';
import { AiModule } from './modules/ai/ai.module';
import { ProjectModule } from './modules/project/project.module';
@Module({
imports: [
@@ -97,6 +98,7 @@ import { AiModule } from './modules/ai/ai.module';
ActivityModule,
NotificationModule,
AiModule,
ProjectModule,
],
controllers: [AppController],
providers: [