Skip to content

feat(feedback): 피드백 공유 — 공개 링크로 비인증 조회#68

Merged
i3months merged 1 commit into
devfrom
feature/feedback-share
Jun 3, 2026
Merged

feat(feedback): 피드백 공유 — 공개 링크로 비인증 조회#68
i3months merged 1 commit into
devfrom
feature/feedback-share

Conversation

@i3months

@i3months i3months commented Jun 3, 2026

Copy link
Copy Markdown
Member

피드백을 본인만 보던 것을, 공유 토큰 링크로 로그인 없이 볼 수 있게 함.

Core:

  • V11: session_feedbacks.share_token (UUID, nullable, UNIQUE)
  • SessionFeedback.enableShare(token) 멱등 발급 + repo.findByShareToken
  • SecurityConfig: /api/public/** permitAll
  • POST /api/sessions/{id}/feedback/share (소유자, 멱등) → 토큰 발급
  • GET /api/public/feedbacks/{token} (비인증, PublicFeedbackController) → FeedbackResponse
  • 공개 응답은 점수/강약점/키워드만(transcript·PII 없음). openapi 재생성.

Front:

  • useCopyToClipboard 훅
  • feedbackApi enableShare/getSharedFeedback, useShareFeedback/useSharedFeedback
  • FeedbackReport: shareable prop → '공유' 버튼(토큰 발급 후 /share/{token} 링크 복사). 공개 페이지에선 shareable=false 라 버튼 숨김
  • pages/SharedFeedback(공개) + /share/:token 라우트(RequireAuth 없이), FeedbackReport 재사용
  • generated.ts 재생성

검증: backend compile + OpenApiSpec BUILD SUCCESSFUL(엔드포인트 2개), 프론트 build 통과, lint 클린. v1은 발급+조회. 공유 해제·만료는 다음(컬럼 nullable).

변경 사항

피드백을 본인만 보던 것을, 공유 토큰 링크로 로그인 없이 볼 수 있게 함.

Core:
- V11: session_feedbacks.share_token (UUID, nullable, UNIQUE)
- SessionFeedback.enableShare(token) 멱등 발급 + repo.findByShareToken
- SecurityConfig: /api/public/** permitAll
- POST /api/sessions/{id}/feedback/share (소유자, 멱등) → 토큰 발급
- GET /api/public/feedbacks/{token} (비인증, PublicFeedbackController) → FeedbackResponse
- 공개 응답은 점수/강약점/키워드만(transcript·PII 없음). openapi 재생성.

Front:
- useCopyToClipboard 훅
- feedbackApi enableShare/getSharedFeedback, useShareFeedback/useSharedFeedback
- FeedbackReport: shareable prop → '공유' 버튼(토큰 발급 후 /share/{token} 링크 복사).
  공개 페이지에선 shareable=false 라 버튼 숨김
- pages/SharedFeedback(공개) + /share/:token 라우트(RequireAuth 없이), FeedbackReport 재사용
- generated.ts 재생성

검증: backend compile + OpenApiSpec BUILD SUCCESSFUL(엔드포인트 2개), 프론트 build 통과, lint 클린.
v1은 발급+조회. 공유 해제·만료는 다음(컬럼 nullable).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 3, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
stackup Ready Ready Preview, Comment Jun 3, 2026 1:40am

@i3months i3months merged commit 9597b96 into dev Jun 3, 2026
3 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