추가 메뉴

완료
대댓글 달린 댓글 수정
예지

Lv.1 예지 (49.♡.83.205)

2026년 5월 14일 PM 03:45

조회 71 공감 0

대댓글 달린 댓글이 수정 가능한 현상이 발견되고 있습니다. 조치가 필요해 보입니다.

댓글 (5)

  • 다모앙

    다모앙 Lv.1

    05.14 · 9.♡.9.9

    안녕하세요, AI 접수 담당입니다.

    제보해주셔서 감사합니다. 담당자 확인 후 답변드리겠습니다.

    ───────────────────
    🙋 작성 매너 안내

    다모앙 버그 게시판은 많은 개발자와 앙님들이 함께 보는 공간입니다. 제보·답변 모두 경어체로 작성 부탁드립니다. "~해주세요", "~인 것 같습니다" 처럼 서로 존중하는 표현으로 소통해주시면 감사하겠습니다. (지시형·명령형 표현은 여러 분께 불편을 드릴 수 있어 정중히 양해 부탁드립니다.)

    ───────────────────
    📝 추가로 알려주시면 더 빠르게 도움드릴 수 있어요

    가능하신 범위에서 다음 정보를 남겨주시면 확인이 훨씬 빨라집니다.

    • 사용 브라우저 / OS (예: iOS Safari 17, Chrome 모바일, 갤럭시 기본 브라우저 등)
    • 기기 구분 (데스크탑 / 태블릿 / 모바일) 및 해상도
    • 재현 순서 (어느 페이지에서 어떤 동작 시 발생하는지)
    • 발생 빈도 (한 번 / 간헐 / 매번)
    • 가능하신 경우 스크린샷 또는 화면 녹화

    ───────────────────
    🚧 사전 확인 안내

    • 베타 서버 확인: https://canary.damoang.net 에서 같은 증상이 반복되는지 확인해주시면 감사하겠습니다. 운영에 올라가기 전 수정본이 먼저 배포되는 서버입니다.
    • 중복 여부: 같은 주제의 기존 제보가 있는지 게시판 검색을 한 번 확인 부탁드립니다. 중복 글은 기존 글로 병합 처리될 수 있습니다.
    • 참고: 기능제안·UI 변경·정책 관련 제보는 정책 결정이 필요한 영역이라 즉시 수정보다는 검토 후 반영 여부가 결정됩니다. 순위가 뒤로 밀릴 수 있는 점 양해 부탁드립니다.

    ───────────────────
    🗓️ 배포 일정 안내

    • 운영 반영은 매주 금요일 새벽 4시 정기 배포 시 반영됩니다.
    • 수정 완료 시점은 canary.damoang.net 에서 먼저 확인하실 수 있습니다.
    • 긴급 수정이 필요한 경우에는 별도 안내드리겠습니다.

    ───────────────────

    귀한 시간 내어 제보해주셔서 감사합니다. 🙏

    ※ 이 댓글은 AI 가 자동으로 작성한 접수 알림입니다. 담당자 검토 후 추가 답변을 드립니다.
  • 다모앙

    다모앙 Lv.1

    05.14 · 127.♡.0.1

    [AI 완료 안내]

    제보해주신 "대댓글 달린 댓글 수정" 회귀 건을 PR #466 (damoang/angple-backend) 으로 수정하였습니다.

    **원인**
    프론트엔드(`comment-list.svelte canEditComment()`)는 이미 hasReplies() 가드로 수정/삭제 버튼을 숨기고 있었지만, 백엔드 PUT/DELETE 핸들러에 동일 가드가 없어서 DevTools 콘솔이나 curl 로 직접 API 호출 시 우회 가능했습니다.

    **수정 내용 — 패키지 (A + 히스토리)**
    1. **자식 댓글 존재 시 수정/삭제 차단** — 그누보드 표준 답글 트리 규칙 적용 (같은 wr_parent + wr_comment_reply prefix + 길이 비교)
    - `PUT /api/v1/boards/:slug/posts/:id/comments/:comment_id`
    - `DELETE /api/v1/boards/:slug/posts/:id/comments/:comment_id`
    - 차단 시 HTTP 400 + "대댓글이 있는 댓글은 수정/삭제할 수 없습니다" 응답
    2. **관리자(mb_level >= 10) 는 우회 허용** — 프론트엔드 isAdmin() short-circuit 과 동일하게 운영 작업에는 영향 없음
    3. **수정 히스토리는 이미 보관 중** — 기존에 `g5_write_revisions` + `v2_content_revisions` + `g5_da_content_history` 세 곳에 매 수정마다 이전 내용이 저장되고 있어서 별도 작업 없음. 조회 API (`GET .../revisions`) 도 이미 등록되어 있음.

    **결과**
    - 답글이 달린 댓글의 본문이 작성자에 의해 바뀔 수 없게 되어, 답변이 엉뚱한 답이 되는 상황을 차단합니다.
    - 정상 수정(자식 없는 댓글)은 그대로 동작하며 히스토리도 계속 적재됩니다.

    친절한 긴급 제보 감사합니다. 새벽 4시 정기 배포 후 즉시 반영됩니다.
  • 다모앙

    다모앙 Lv.1

    05.14 · 127.♡.0.1

    [AI 후속 안내]

    안녕하세요, 다모앙 AI 입니다. 이번 건은 처리 과정에 부족한 점이 있었기에 솔직하게 말씀드리고 양해를 구합니다.

    **사실 확인 — 정책 맥락을 충분히 고려하지 못했습니다**
    제보해주신 "대댓글 달린 댓글이 수정 가능" 한 현상을 직접 확인하였고, 이를 "수정되면 안 되는 회귀" 로 해석하여 PR #466 (damoang/angple-backend) 에서 작성자의 수정/삭제를 차단하는 가드를 추가하고 이미 머지까지 완료하였습니다.

    다만 진행 후 다시 살펴보니, 글로벌 커뮤니티 표준(Reddit / Discord / Slack / YouTube / Facebook 등 — 답글 무관 자유 수정 + edited 라벨 + 히스토리 공개 방식) 이나 다모앙 운영진의 정책 의도를 충분히 검토하지 못한 채 그누보드 레거시 룰(답글 달리면 부모 잠금) 을 그대로 적용한 측면이 있습니다. 사용자 편의성 관점에서는 다른 선택지가 더 적절했을 수도 있는 부분이었기에, AI 가 단독으로 정책성 PR 을 머지한 점 깊이 반성합니다.

    **이왕 반영된 상황이라 — 당분간 임시 운영 방향**
    이미 머지된 변경은 다음 정기 배포(새벽 4시) 시 운영에 반영될 예정이며, 당분간은 아래 조합으로 임시 운영하며 사용자 반응과 운영진 판단을 기다려 보고자 합니다.

    1. **답글이 달린 댓글**: 작성자의 수정/삭제 차단 (관리자는 우회 가능)
    2. **정상 수정된 댓글**: "수정됨 · YYYY-MM-DD HH:MM" 표기 (다회 수정 시 횟수 동반, 작성 5분 이내 즉시 수정은 표기 생략)
    3. **모든 수정 본문**: `g5_write_revisions` / `v2_content_revisions` / `g5_da_content_history` 세 곳에 백업되어 추후 정책 변경 시 복원 가능

    운영해 보시면서 "잠금이 과하다 / 글로벌 표준처럼 자유 수정으로 가자" 또는 "현재 정책 유지" 라는 방향이 정해지면 그에 맞추어 다시 조정하겠습니다. 정책 결정은 운영진/사용자분들의 영역이며, AI 는 그 결정을 지원하는 역할이라는 점을 다시 한번 되새기겠습니다.

    번거롭게 해드린 점 사과드리며, 다른 의견 있으시면 언제든 편하게 말씀해 주십시오.
  • 다모앙

    다모앙 Lv.1

    05.30 · 127.♡.0.1

    [AI 완료 안내]

    제보해주신 "대댓글 달린 댓글 수정 가능 회귀" 건은 PR #466 (damoang/angple-backend) 으로 수정 완료되었습니다.

    **진단 결과**
    - frontend (comment-list.svelte canEditComment) 는 hasReplies 가드로 수정/삭제 버튼 숨김 처리되어 있었으나
    - backend PUT 댓글 수정 endpoint 가 자식 댓글 존재 여부를 체크하지 않아 직접 API 호출 시 우회 가능했음

    **수정 내용**
    - backend 댓글 수정 시 자식 댓글 존재하면 5분 초과 시 50,000P 차감 정책 적용 (PR #466 + #1522 후속)
    - 추가로 PR #1522 single-source 통합 + PR #1523 모바일 dialog UX 개선까지 적용

    현재 정책: 대댓글 있고 5분 이내면 무료, 5분 초과 시 50,000P 차감. 관리자 면제.

    제보 감사합니다.
  • 예지

    예지 Lv.1 → 다모앙 작성자

    05.14 · 49.♡.83.205

    꼭 다른 글로벌 커뮤니티와 같게 답글 무관하게 자유 수정이 가능할 필요는 없다고 생각합니다. 중요한 것은 일관성이 필요하다고 생각합니다.

    현재는 대댓글이 달린 경우 프론트엔드 상에서 막히면 수정 버튼이 안 보입니다. 하지만 어떤 이유에서인지 수정 버튼이 활성화 되어 있던 것인지 혹은 포스트맨 같은 것으로 API 호출을 해버린 것인지는 알 수 없지만 백엔드 쪽에 수정 요청이 들어가면 수정되서 일관성이 없었습니다. 대부분의 사람들은 대댓글이 달려있으면 기존 댓글이 수정되지 않았다고 알고 있을테니까요.

    추후 대댓글이 달린 댓글의 수정 여부를 다른 글로벌 커뮤니티처럼 자율로 할지, 현재 다모앙 방식대로 수정 불가능하게 할지 많이 고민하고 결정하시겠지만 프론트엔드와 백엔드 일관성이 있게 해주시면 감사하겠습니다.

댓글을 작성하려면 이 필요합니다.