불편·기능 신고와 답변 확인
제품 개발 기록으로 · 알림 · 운영자 처리
화면·입력 스키마·API를 대조한 사용 설명입니다. 신고 접수·파일 전송·운영자 회신은 실행 검증하지 않았습니다.
목적과 진입
사용 중인 화면과 오류 정보를 함께 신고하고 같은 위젯에서 접수 상태·공개 답변을 확인합니다. 공통 「불편·기능 신고」 버튼, 오류 안내의 신고 진입, Shift+F1로 작성창을 엽니다. 답변 알림을 누르면 해당 신고 상세가 직접 열립니다. 직원 앱은 화면 전체를 쓰는 형태이며 데스크톱은 카드 모달입니다.
로그인한 조직과 본인 정보는 서버가 확정합니다. 작성·첨부 준비는 csReport:create, 내역·상세는 csReport:read 권한이 필요합니다. 다른 직원의 신고를 내역에서 조회하는 기능은 없습니다. 운영자 조회·처리는 시스템 관리자를 따릅니다.
입력과 제공 조작
| 항목 | 방법·기본값 | 제한·결과 |
|---|---|---|
| 유형 | 오류 / 불편·개선 / 기능 요청 / 문의 선택 | 새 오류 스냅샷이 있으면 오류, 없으면 불편·개선으로 시작 |
| 제목 | 상황을 한 문장으로 입력 | 공백 제거 후 필수, 최대 80자 |
| 설명 | 재현 순서·기대 결과·실제 결과 입력 | 선택, 최대 2,000자 |
| 화면 | 자동 캡처, 「다시 찍기」, 「제외」 | 캡처 실패해도 화면 없이 접수 가능 |
| 가리기 | 미리보기에서 숨길 영역을 드래그 | 캡처 픽셀에 적용, 되돌리기는 다시 찍기 |
| 첨부 | 「파일 선택」, 각 행 제거 | 사용자 파일 최대 3개, 각각 10MiB 이하; 이미지·PDF·TXT·CSV·ZIP 선택기 |
| 자동 정보 | 안내 펼침 | 앱·화면 주소·버전·브라우저·최근 로그·오류 정보를 확인 |
| 로그 | 기본 포함, 체크 해제 가능 | 해제하면 로그 파일은 전송하지 않음 |
| 답변 알림 | 기본 켜짐, 해제 가능 | 신고 보관 여부와 별개인 회신 알림 선택 |
| 전송 | 작성창 하단 전송 버튼 | 첨부 업로드 후 접수, 성공 화면에 접수번호 표시 |
| 내역 | 「내 신고 내역」, 신고 행 클릭 | 최신 20건, 상태·공개 답변 열람 |
| 나가기 | ×·취소·Escape·완료 후 닫기 | 전송 중 닫기 제한, 일반 닫기는 임시 저장하지 않음 |
공유 위젯은 feature_request를 「기능 요청」으로 제공합니다. 내역 상태 필터·페이지 입력·본인 취소 API는 있지만 현재 위젯에 해당 조작은 없습니다. API 지원을 화면 기능으로 안내하지 않습니다.
신고 작성·가림·접수
- 문제가 발생한 화면에서 신고를 엽니다. 예: 제목
휴가 신청 저장 후 목록에 보이지 않음, 설명에는 메뉴·선택 날짜·버튼·결과를 순서대로 적습니다. 개인정보는 재현에 필요한 최소 정보만 씁니다. - 자동 화면 캡처가 끝나면 신고하려던 화면인지 확인합니다. 오류창이 뜨기 직전 미리 찍은 화면은 60초 이내일 때 사용하고, 그렇지 않으면 현재 화면을 다시 캡처합니다. 신고창 자체는 캡처에서 제외됩니다.
- 이름·급여·연락처 등 보내지 않을 부분을 미리보기에서 드래그해 가립니다. 가림은 최종 이미지에 적용됩니다. 잘못 가렸으면 「다시 찍기」 후 다시 가립니다. 「제외」는 화면만 빼며 제목·설명·별도 첨부는 유지합니다.
- 추가 파일이 필요하면 「파일 선택」을 누릅니다. 초과 개수·크기 안내를 확인하고 불필요한 파일은 행의 제거 버튼으로 뺍니다. 파일 선택 취소는 기존 첨부를 지우지 않습니다. 0바이트 파일은 업로드 입력 검증에서 거절됩니다.
- 자동 첨부 안내를 펼쳐 실제 보낼 정보를 확인합니다. 화면 주소는 쿼리 문자열을 제외한 경로·해시입니다. 로그 포함 해제가 오류 스냅샷이나 기본 환경 정보까지 없애는 것은 아닙니다.
- 전송합니다. 화면, 선택한 로그, 사용자 파일 순서로 업로드하고 그 참조를 신고와 함께 저장합니다. 사용자 파일 3개에 화면 1개·로그 1개까지 합쳐 최대 5개입니다. 전송 중 재클릭은 무시합니다.
- 완료 화면에서 접수번호를 확인하고 「접수번호 복사」를 누릅니다. 클립보드 권한이 없어 복사에 실패하면 별도 오류 안내 없이 번호가 계속 표시되므로 직접 기록합니다. 이후 「내 신고 내역」에서 해당 제목·번호가 보이는지 확인하는 것이 저장 검증입니다.
전송 실패 시 오류 문구와 입력이 남습니다. 앱 식별자 미설정, 첨부 업로드 실패, 권한·서버 오류를 구분합니다. 일부 파일 업로드 후 접수 저장이 실패할 수 있어 '모든 파일과 신고가 함께 취소된다'고 보장하지 않습니다. 서버는 짧은 시간 중복 접수를 방지하고 계정별 분당 5건·일 50건의 프로세스 메모리 제한을 적용하지만, 내용이 달라진 모든 재시도를 같은 신고로 합친다는 뜻은 아닙니다. 응답을 못 받은 경우 내역부터 확인한 뒤 재시도합니다.
내역·상태·답변
- 작성창 또는 완료창에서 「내 신고 내역」을 누릅니다. 현재 위젯은 기본 첫 페이지의 최신 20건만 가져오며 더 보기·상태 필터가 없습니다. 오래된 신고가 보이지 않는 것을 삭제로 판단하지 않습니다.
- 접수번호·제목·등록 시각·상태로 대상을 찾고 행을 누릅니다. 상세에는 설명, 처리 결과, 운영자의 공개 답변 타임라인이 표시됩니다. 내부 메모는 사용자 응답에 포함하지 않습니다.
- 상태는
접수됨 → 확인 중 → 처리 중 → 반영 대기와 최종해결됨 / 반영 보류 / 중복 신고 / 취소됨으로 표시합니다.반영 대기는 수정을 마쳤지만 아직 앱에 배포되지 않은 상태로, 처리 완료가 아닙니다 — 배포 후 운영자가해결됨으로 바꾸는 시점에 처리 완료 알림이 오고 상세 배너가 「처리가 완료됐어요」로 바뀝니다. 상태 변경은 운영자 처리 결과이며 목록을 읽는 것만으로 바뀌지 않습니다. - 「목록으로」는 내역으로 돌아갑니다. 「새 신고 작성」은 입력과 첨부를 초기화하고 새 캡처를 시작합니다. 기존 신고에 추가 답글을 쓰는 버튼은 없습니다.
- 내역 로딩 실패 안내가 보이면 닫았다가 내역을 다시 엽니다. 상세 로딩 실패는 내역으로 돌아가 오류를 표시합니다. 다른 신고를 누르거나 재진입해 확인할 수 있습니다.
- 회신 알림을 켰다면 공개 회신·처리 결과에서 알림이 생성되는 경로가 있습니다. 알림을 눌러 해당 상세를 확인합니다. 알림 권한·전달과 신고 접수 성공은 별도로 검증합니다.
연결과 유지보수
드라이브 파일 목록과 신고 첨부는 서로 다른 도메인입니다. 신고의 조직·작성자는 인증 컨텍스트, 화면 정보는 신고 시점의 앱, 답변·상태는 운영자 콘솔이 소유합니다. 신고 진입·ESC 처리·캡처 범위 변경은 공통 모달과 모든 장착 앱에 영향을 줍니다. AI 도킹과 신고 버튼의 겹침은 공통 화면 규칙도 확인합니다.
근거와 검증 경계
구현 설명에 분산돼 있던 작성·가림·접수·답변 조회를 하나의 현재 사용 문서로 연결했습니다. 새 캡처·녹화는 없으며 작성에서 접수번호 확인, 가림 드래그, 공개 회신 알림에서 상세까지는 테스트 조직의 실제 실행 증거가 필요합니다.
화면에서 위치 찾기

- 접수번호·제목이 맞는 행을 눌러 신고 상세와 공개 답변을 확인합니다.
- 새 신고 작성은 작성 상태를 초기화하고 새 화면 캡처를 시작합니다.
- 닫기는 위젯을 닫습니다. 신고 삭제나 취소가 아닙니다.
신고 작성과 전송 전 확인 영상
Codex가 직원 앱의 신고 작성을 더보기 진입부터 유형 「기능 요청」 선택, 제목·설명 입력, 「함께 전송되는 정보」 펼침, 로그 첨부 해제, 내 신고 내역 조회와 닫기까지 촬영했습니다. 예제 조직에서만 수행했고 전송 버튼은 누르지 않았으므로 실제 접수나 임시 저장이 발생했다는 증거가 아닙니다. 가림 드래그·사용자 파일 첨부·접수번호 확인·운영자 회신은 별도 실행 대상입니다.
실제 공유 화면은 「기능 요청」 유형도 제공하므로 위 표와 ‘서버만 지원’이라는 설명을 수정했습니다. 화면 캡처는 자동 첨부 준비이고 저장소 업로드는 전송 시 발생합니다. 사용자 가이드와 연결된 JSON에도 전송 전 범위를 명시합니다.
같은 날 관리자 신고는 페이지 헤더의 확성기 버튼(page-header-cs-report)에서 같은 작성·정보 검토·내역 조회를 별도로 촬영했습니다. 직원 앱은 더보기 메뉴, 관리자는 헤더라는 실제 진입점 차이를 각 영상에 반영했습니다.