Skip to content

[Fix] 제보하기 QA 대응 (2차)#84

Merged
taipaise merged 1 commit intodevelopfrom
fix/report
Feb 17, 2026
Merged

[Fix] 제보하기 QA 대응 (2차)#84
taipaise merged 1 commit intodevelopfrom
fix/report

Conversation

@taipaise
Copy link
Collaborator

@taipaise taipaise commented Feb 16, 2026

🌁 Background

  • 제보하기 QA 대응 (2차)

👩‍💻 Contents

Summary by CodeRabbit

새로운 기능

  • 보고서 등록 시 제목 및 내용의 실시간 글자 수 표시 추가

개선 사항

  • 제목 텍스트 줄바꿈 지원 확대 (최대 2줄)
  • 제목 최대 50자, 내용 최대 150자 입력 제한 적용
  • 레이아웃 제약 조건 우선순위 최적화로 유연성 향상

- 제보하기 제목 글자 수 제한
- 제보 히스토리에서 제보하기 제목을 최대 2줄로 표시하도록 수정
@coderabbitai
Copy link

coderabbitai bot commented Feb 16, 2026

Walkthrough

이 변경 사항은 보고서 UI의 텍스트 처리를 개선합니다. 제목 라벨을 여러 줄로 지원하도록 조정하고, 문자 수 제한 기능을 추가하며, 레이아웃 제약의 우선순위를 조정합니다.

Changes

Cohort / File(s) Summary
다중 라인 텍스트 지원
Projects/Presentation/Sources/Report/View/Component/ReportHistory/ReportHistoryEmptyView.swift, Projects/Presentation/Sources/Report/View/Component/ReportHistory/ReportHistoryTableViewCell.swift, Projects/Presentation/Sources/Report/View/ReportDetailViewController.swift
제목 라벨의 다중 라인 지원 활성화 및 높이/세로 제약의 우선순위를 medium으로 조정하여 레이아웃 유연성 향상.
문자 수 제한 기능
Projects/Presentation/Sources/Report/View/ReportRegistrationViewController.swift, Projects/Presentation/Sources/Report/ViewModel/ReportRegistrationViewModel.swift
ViewModel에 maxTitleLength(50), maxContentLength(150) 추가 및 UI에 실시간 문자 수 카운트 라벨(titleCountLabel) 바인딩 구현.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

🐰 한 줄은 부족해, 두 줄로 펼쳐
문자의 수를 세어보며
제목은 길어도, 제약은 부드럽게
레이아웃이 춤을 춘다!

🚥 Pre-merge checks | ✅ 3 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PR 제목은 '제보하기 QA 대응 (2차)'로 제보하기 기능의 QA 대응 작업을 명확하게 나타내며, 실제 변경사항(제목 줄 수 증가, 글자 수 제한 기능 추가)과 일치한다.
Merge Conflict Detection ✅ Passed ✅ No merge conflicts detected when merging into develop

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix/report

Tip

Issue Planner is now in beta. Read the docs and try it out! Share your feedback on Discord.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
Projects/Presentation/Sources/Report/View/ReportRegistrationViewController.swift (1)

325-328: ⚠️ Potential issue | 🟡 Minor

locationTitleLabelcontentTextCountLabel 아래가 아닌 reportContentTextView 아래에 고정되어 있습니다.

contentTextCountLabelreportContentTextView 아래에 배치되어 있으므로, locationTitleLabel의 상단 제약은 contentTextCountLabel.snp.bottom을 기준으로 설정해야 레이아웃 체인이 올바르게 연결됩니다. 현재 상태에서는 contentTextCountLabellocationTitleLabel 사이의 간격이 4pt밖에 되지 않아 시각적으로 겹칠 수 있습니다.

🔧 수정 제안
 locationTitleLabel.snp.makeConstraints { make in
     make.top
-        .equalTo(reportContentTextView.snp.bottom)
+        .equalTo(contentTextCountLabel.snp.bottom)
         .offset(Layout.titleLabelTopSpacing)
🤖 Fix all issues with AI agents
In `@Projects/Presentation/Sources/Report/View/ReportDetailViewController.swift`:
- Line 155: Remove the incorrect numberOfLines assignment on titleLabel and
instead set the content label to allow wrapping: delete the line setting
titleLabel.numberOfLines = 2, and in the .title section use the content label
(titleContentLabel or the local descriptionLabel used for the .title case) to
set numberOfLines = 2 so long titles wrap across two lines.
🧹 Nitpick comments (2)
Projects/Presentation/Sources/Report/View/ReportRegistrationViewController.swift (1)

65-68: 쉼표 위치가 비정상적입니다.

maxLength 매개변수 앞의 쉼표가 새 줄의 시작에 위치해 있어 가독성이 떨어집니다.

♻️ 수정 제안
 private let reportTitleTextView = ReportTextView(
     type: .editable,
-    placeholder: "제보 제목을 작성해주세요."
-    ,maxLength: 50)
+    placeholder: "제보 제목을 작성해주세요.",
+    maxLength: 50
+ )
Projects/Presentation/Sources/Report/View/Component/ReportHistory/ReportHistoryTableViewCell.swift (1)

17-17: titleLabelMaxHeight가 사용되지 않고 있습니다.

Layout.titleLabelMaxHeight가 정의되어 있으나 실제 제약 조건에서 참조되지 않습니다. 사용하지 않는 상수라면 제거하거나, 필요하다면 titleLabel에 최대 높이 제약으로 적용하는 것을 고려해 주세요.

titleLabel.text = reportDetailContentType.title
titleLabel.font = BitnagilFont(style: .body2, weight: .semiBold).font
titleLabel.textColor = BitnagilColor.gray10
titleLabel.numberOfLines = 2
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟠 Major

numberOfLines = 2가 잘못된 레이블에 설정되어 있습니다.

titleLabel은 섹션 헤더("제목", "카테고리" 등)를 표시하는 로컬 변수입니다. 제보 제목 내용을 표시하는 titleContentLabelnumberOfLines = 2를 설정해야 합니다.

현재 titleContentLabel은 기본값 numberOfLines = 1이므로, 긴 제목이 잘릴 수 있습니다.

🐛 수정 제안

Line 155에서 titleLabel.numberOfLines = 2를 제거하고, .title 케이스의 descriptionLabel에 설정:

-        titleLabel.numberOfLines = 2
 
         var descriptionLabel: UILabel
         switch reportDetailContentType {
         case .title:
             descriptionLabel = titleContentLabel
+            descriptionLabel.numberOfLines = 2
         case .category:
🤖 Prompt for AI Agents
In `@Projects/Presentation/Sources/Report/View/ReportDetailViewController.swift`
at line 155, Remove the incorrect numberOfLines assignment on titleLabel and
instead set the content label to allow wrapping: delete the line setting
titleLabel.numberOfLines = 2, and in the .title section use the content label
(titleContentLabel or the local descriptionLabel used for the .title case) to
set numberOfLines = 2 so long titles wrap across two lines.

@taipaise taipaise merged commit 6f41d25 into develop Feb 17, 2026
2 checks passed
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.

1 participant