배경
프로젝트 판매 정책을 단순화한다. 판매자가 일부 자산과 일부 권리를 골라 판매하는 모델을 사용하지 않는다.
SELL 프로젝트가 구매되면 프로젝트에 등록된 양도 가능한 전체 자산과 프로젝트 운영·수정·상업적 이용에 필요한 권리가 구매자에게 일괄 이전된다. 프론트에서 판매 대상 자산, 판매에 포함하는 권리, 판매에서 제외하는 권리를 선택하거나 서술하게 하면 실제 정책과 어긋나고 구매자가 일부만 이전되는 거래로 오해할 수 있다.
관련 Backend 기존 이슈 #12, #17은 선택 자산·권리 범위를 전제로 작성되어 있으므로 새 전체 이전 계약으로 교체해야 한다.
제품 문구와 정책 문서 변경
docs/product-context.md, docs/business-model.md, 등록·마켓 화면 문구를 다음 원칙으로 통일한다.
- 프로젝트 판매는 프로젝트 전체 양도다.
- 등록된 양도 가능 자산을 일부만 제외하거나 별도로 선택하지 않는다.
- 구매 완료 후 구매자가 프로젝트와 전체 자산의 새 소유자가 된다.
- 판매자는 법적 기록과 거래 내역을 제외한 프로젝트 수정·재판매·원본 자산 접근 권한을 잃는다.
- 제3자 자료, 팀 공동 자산 등 판매자가 전체 이전 권한을 확보하지 못한 자산이 있으면
SELL로 등록할 수 없다.
- 상세 리포트 열람권 구매와 프로젝트 전체 양도는 계속 별개의 거래다.
모든 권리처럼 법적으로 무제한인 표현은 피하고, 화면에는 플랫폼에 등록된 양도 가능한 프로젝트 전체 자산과 관련 권리가 이전된다고 정확히 설명한다.
프로젝트 등록 화면 변경
대상 파일:
features/project-registration/model/types.ts
features/project-registration/model/default-draft.ts
features/project-registration/model/validation.ts
features/project-registration/components/steps/purpose-step.tsx
features/project-registration/components/steps/review-step.tsx
features/project-registration/api/register-project.ts
변경 사항:
saleAssetIds, saleRightsScope 입력과 검증을 제거한다.
- 판매 목적에서 개별
판매 대상 자산 선택 UI를 제거한다.
- 가격 방식과 희망 판매가는 유지한다.
- 판매자가 모든 등록 자산에 대한 전체 양도 권한을 확보했음을 확인하는 필수 체크를 제공한다.
THIRD_PARTY_INCLUDED, UNCONFIRMED, 동의가 확인되지 않은 TEAM_OWNED 자산이 있으면 판매 등록을 막고 수정 방법을 안내한다.
- 검토 단계에는 이전되는 프로젝트명, 전체 자산 개수·종류와 전체 양도 효과를 요약한다.
- Backend 요청에서 선택 자산 ID와 자유서술 권리 범위를 보내지 않는다.
마켓 목록·구매 흐름 변경
대상 파일:
features/project-market/types.ts
features/project-market/components/project-market-card.tsx
features/project-market/components/project-market-controls.tsx
features/project-market/components/project-purchase-button.tsx
- 관련 API mapper/schema
변경 사항:
판매 권리 범위, 포함/제외 권리 표시와 필터를 제거한다.
- 모든 판매 카드에 정책 값
프로젝트 전체 양도를 일관되게 표시한다.
- 공개 카드에는 전체 자산 개수와 유형만 표시하며 원본 URL은 노출하지 않는다.
- 구매 확인창에서 가격, 전체 양도, 구매 후 판매자 권한 종료를 명시한다.
- 구매 성공 후 동일 프로젝트를 다시 구매할 수 있는 UI를 노출하지 않는다.
- 이미 판매됨, 자기 프로젝트, 잔액 부족, 중복 요청과 세션 만료 오류를 실제 Backend 응답으로 구분한다.
이전 로컬 초안 처리
브라우저에 저장된 기존 등록 초안에는 saleAssetIds, saleRightsScope가 남아 있을 수 있다.
- draft version을 올리거나 명시적 migration을 추가한다.
- 제거된 필드를 다시 UI에 복원하지 않는다.
- 기존 입력을 새 전체 양도 동의로 임의 변환하지 않는다.
완료 조건
연관 이슈
배경
프로젝트 판매 정책을 단순화한다. 판매자가 일부 자산과 일부 권리를 골라 판매하는 모델을 사용하지 않는다.
SELL프로젝트가 구매되면 프로젝트에 등록된 양도 가능한 전체 자산과 프로젝트 운영·수정·상업적 이용에 필요한 권리가 구매자에게 일괄 이전된다. 프론트에서판매 대상 자산,판매에 포함하는 권리,판매에서 제외하는 권리를 선택하거나 서술하게 하면 실제 정책과 어긋나고 구매자가 일부만 이전되는 거래로 오해할 수 있다.관련 Backend 기존 이슈 #12, #17은 선택 자산·권리 범위를 전제로 작성되어 있으므로 새 전체 이전 계약으로 교체해야 한다.
제품 문구와 정책 문서 변경
docs/product-context.md,docs/business-model.md, 등록·마켓 화면 문구를 다음 원칙으로 통일한다.SELL로 등록할 수 없다.모든 권리처럼 법적으로 무제한인 표현은 피하고, 화면에는플랫폼에 등록된 양도 가능한 프로젝트 전체 자산과 관련 권리가 이전된다고 정확히 설명한다.프로젝트 등록 화면 변경
대상 파일:
features/project-registration/model/types.tsfeatures/project-registration/model/default-draft.tsfeatures/project-registration/model/validation.tsfeatures/project-registration/components/steps/purpose-step.tsxfeatures/project-registration/components/steps/review-step.tsxfeatures/project-registration/api/register-project.ts변경 사항:
saleAssetIds,saleRightsScope입력과 검증을 제거한다.판매 대상 자산선택 UI를 제거한다.THIRD_PARTY_INCLUDED,UNCONFIRMED, 동의가 확인되지 않은TEAM_OWNED자산이 있으면 판매 등록을 막고 수정 방법을 안내한다.마켓 목록·구매 흐름 변경
대상 파일:
features/project-market/types.tsfeatures/project-market/components/project-market-card.tsxfeatures/project-market/components/project-market-controls.tsxfeatures/project-market/components/project-purchase-button.tsx변경 사항:
판매 권리 범위,포함/제외 권리표시와 필터를 제거한다.프로젝트 전체 양도를 일관되게 표시한다.이전 로컬 초안 처리
브라우저에 저장된 기존 등록 초안에는
saleAssetIds,saleRightsScope가 남아 있을 수 있다.완료 조건
saleAssetIds,saleRightsScope를 입력하거나 전송하지 않는다.프로젝트 전체 양도와 전체 자산 요약이 표시된다.LoadingSpinner를 사용하고 중복 제출을 막는다.연관 이슈