Skip to content

feat: 블록 수정 구현 및 문서(블록) 수정/이동 정책 변경 문서화#24

Merged
oneplast merged 3 commits intodevfrom
feat/#21_블록_수정
Mar 19, 2026

Hidden character warning

The head ref may contain hidden characters: "feat/#21_\ube14\ub85d_\uc218\uc815"
Merged

feat: 블록 수정 구현 및 문서(블록) 수정/이동 정책 변경 문서화#24
oneplast merged 3 commits intodevfrom
feat/#21_블록_수정

Conversation

@oneplast
Copy link
Copy Markdown
Collaborator

@oneplast oneplast commented Mar 19, 2026

📝 Part (해당되는 것만 체크)

  • BE
  • FE
  • Infra
  • Docs
  • Test

#️⃣ 연관된 이슈

closes #21


🔎 작업 내용

1. 주요 변경 사항 요약

  • 블록 수정 API 추가 (PATCH /v1/blocks/{blockId})
  • 문서(블록) 수정/이동 관련 정책 변경 및 문서화
  • 각 테스트코드 작성

2. 상세 내용 (선택)

  • 블록 수정 기능을 추가하였습니다.
    • 해당 기능은 비에디터 전용 기능으로 생각하고 구현하였습니다.
    • 블록 수정 관련 요청은 다음과 같은 형식으로 전달됩니다.

    {
      "text": "수정된 내용",
      "version": 3
    }
    • 여러 사용자가 같은 화면을 보고 수정할 때의 동시성 처리를 위해, Request에 version 을 추가하였습니다.
    • 관련 설명은 해당 문서설계 시 주의할 점 2-1에서 확인하실 수 있습니다.

  • 문서(블록) 수정/이동 관련 정책을 변경하고, 관련 내용을 문서화하였습니다.
    • 현재 개발한 수정 API의 경우, 비에디터에서 실행될 것으로 예상됩니다.
    • 이는 사용자가 에디터를 통해 문서(블록)의 순서를 조정하는 작업과는 완전히 별개의 작업입니다.

    • 추가적으로, 현재는 여러 블록을 드래그하여 동시에 이동시키는 작업은 추가하지 않을 예정입니다.
    • 이는 이후 개발할 블록 저장 관련 로직과 연관되어 있기 때문에, 그 이후에 고려하는 게 맞다고 판단되었습니다.
    • 따라서, 현재 고려 중인 문서(블록) 이동 API단일 대상으로만 작동합니다.

3. 프롬프트 경로

4. ADR 경로 (선택)

discussions

decisions


💬 집중 리뷰 요청

  • REQUIREMENTS.md 파일 및 /docs 폴더의 변경 사항들 확인 부탁드립니다.

🧪 테스트 방법

1. 로컬 실행 방법

  • documents-api 테스트: Controller slice 테스트, 요청/응답 직렬화, @Valid 검증, 공통 예외 응답 검증을 위한 빠른 테스트
    • ./gradlew :documents-api:test
  • documents-infrastructure 테스트: JPA 저장소, 커스텀 쿼리, 영속 구현 검증 테스트와 서비스 구현의 빠른 단위 테스트
    • ./gradlew :documents-infrastructure:test
  • documents-boot 테스트: API 통합 테스트(Controller + Spring MVC + Service + Repository + DB)
    • ./gradlew :documents-boot:test

2. 테스트 시나리오

No response


✅ PR 체크리스트

  • 불필요한 디버그 로그 / 주석 제거
  • breaking change 여부 확인 및 문서화
  • 신규/변경된 기능에 대한 테스트 코드 추가 또는 기존 테스트 통과
  • 로컬에서 주요 시나리오 수동 테스트 완료
  • 관련 문서(노션, README, API 문서 등) 업데이트

📈 이미지 / 캡처 (필요 시)

No response

- 문서 수정 API와 문서 이동 API는 분리하여 개발하는 게 맞다고 판단했습니다.
- 문서 수정 API의 경우 비에디터에서 사용될 것으로 예상됩니다.
  - 여러 사용자가 같은 화면을 보고 있을 때, 다른 사용자가 수정한 내용을 보기 전에 수정 요청을 하는 경우를 방지하기 위해 request에 version을 담아서 보내기로 결정했습니다.
@oneplast oneplast requested a review from hellonaeunkim March 19, 2026 04:24
@oneplast oneplast self-assigned this Mar 19, 2026
@oneplast oneplast added the enhancement New feature or request label Mar 19, 2026
Copy link
Copy Markdown
Collaborator

@hellonaeunkim hellonaeunkim left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

확인했습니다! 고생하셨어요!!

@oneplast oneplast merged commit a7ab498 into dev Mar 19, 2026
1 check failed
@oneplast oneplast deleted the feat/#21_블록_수정 branch March 19, 2026 04:57
@github-project-automation github-project-automation bot moved this from Todo to Done in Block-server Mar 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

[FEATURE] 블록 수정 API 추가

2 participants