항목 내용
일정 사내 전체 배포 11월 말
데모 ssot-uxui-demo.miridih.app
관련 문서 화면과 함께 보는 정책 슬라이드, 화면 규칙 PR, DB 변경 PR

1. 서비스 흐름

1.1 문서가 독자에게 나가는 순서

단계 하는 사람 하는 일 결과
1 제안자 에이전트로 새 문서를 등록하거나, 에이전트나 편집기로 새 버전을 등록함 SSOT가 리뷰 중인 제안을 만들고, 독자에게는 이 제안을 표시하지 않음
2 제안자 리뷰어를 지정함 SSOT가 리뷰어의 할 일에 리뷰 필요를 추가함
3 리뷰어 본문을 읽고 승인하거나 수정 요청 코멘트를 남김 필요한 승인 수를 채우고 미해결 수정 요청이 없으면 SSOT가 발행을 허용함
4 제안자 수정 요청이 있으면 코멘트를 해결하고 고친 버전을 다시 등록한 뒤, 다시 봐 줄 리뷰어에게 「다시 리뷰 요청」을 누름 SSOT가 그 리뷰어의 할 일에 다시 리뷰 필요를 만들고 슬랙 메시지를 보냄
5 제안자, 담당자 제안을 발행함 독자, 검색, 에이전트가 이 버전을 읽음
6 담당자 유효 기간이 끝나 문서가 오래된 문서가 되면 최신 정보인지 확인함 SSOT가 문서를 리뷰 완료로 되돌림

1.2 기본 원칙

2. 사람과 역할

2.1 역할과 기록 이름 정의

역할 누구인가 바뀌는 때
담당자 문서를 책임지는 사람. 새 문서를 등록한 사람이 담당자가 되고, 등록할 때 다른 사람을 담당자로 정할 수도 있음. 담당자 변경이나 퇴사 인계로 이어받은 사람도 담당자임 담당자 변경
제안자 아직 발행되지 않은 버전인 제안을 등록한 사람. 새 문서를 등록한 구성원, 발행본에 새 제안을 등록한 담당자, 제안자를 이어받은 담당자가 제안자가 됨. 리뷰 중인 제안이 있는 동안에만 있고, 제안이 발행되거나 닫히면 사라짐 제안마다 다름. 제안자가 퇴사하거나 휴직하면 제안자 없음 상태가 되고, 담당자가 제안자를 이어받을 수 있음
발행자 지금 독자가 읽는 발행본을 발행한 사람. 발행 기록에 남는 이름이고 권한이 없음 발행할 때마다 다름. 담당자가 남이 제안한 버전을 발행하면 담당자가 기록됨
리뷰어 리뷰 중인 제안에 지정되어 승인이나 수정 요청을 하는 사람 제안마다 지정함. 같은 제안의 새 버전에서도 유지됨

2.2 화면에서 쓰는 말

2.3 한 사람이 둘 이상의 역할을 겸하는 규칙

조합 가능 여부 이유
제안자이면서 같은 버전의 리뷰어 불가 자기 제안을 스스로 승인할 수 없음
같은 제안에 버전을 등록한 사람이면서 그 제안의 리뷰어 불가 자기가 쓴 버전을 스스로 승인할 수 없음
담당자이면서 남이 제안한 버전의 리뷰어 가능 담당자도 내용을 검토할 수 있음
담당자이면서 제안자 가능 담당자가 직접 등록한 경우임
담당자가 자기가 승인한 제안을 발행 가능 담당자는 발행을 결정하는 사람임

2.4 조직과 리드

3. 문서 상태

3.1 문서 상태 네 가지

구분 값 정해지는 기준 표시하는 화면
발행 상태 발행 전, 발행본만 있음, 발행본과 제안이 함께 있음, 닫힘 발행, 제안 닫기 본문 위의 발행 안내
리뷰 상태 리뷰 중, 리뷰 완료, 오래된 문서 버전마다 정함. 제안은 리뷰 중, 발행본은 리뷰 완료이고 최신성 유효 기간이 지나면 오래된 문서 문서 정보 영역, 목록 카드, 검색 결과
진행 상태 승인 a/b, 수정 요청 있음, 수정 필요, 발행 대기, 발행 필요 리뷰어의 승인과 수정 요청, 코멘트 해결 여부 문서 정보 영역, 홈의 리뷰 중인 내 문서
신뢰도 100점 만점의 점수와 좋음, 보통, 낮음 등급 평가 문서 상태 영역

3.2 발행 상태별 접근

발행 상태 독자 담당자, 제안자, 리뷰어 비고
발행 전 아직 발행되지 않아 볼 수 없다는 안내 화면 제안을 읽음 새 문서의 제안만 있는 상태임. 독자가 주소로 열면 안내 화면이 열림. 권한을 받아도 발행 전에는 읽을 수 없으므로 권한 요청 버튼이 없음
발행본만 있음 발행본을 읽음 발행본을 읽음 편집은 담당자만 함
발행본과 제안이 함께 있음 발행본만 읽음 제안과 발행본을 오가며 읽음 제안과 발행본이 다르다는 안내는 제안을 읽을 수 있는 사람에게만 본문 위에 표시함
닫힘 없는 문서와 같음 없는 문서와 같음 발행본이 없는 문서의 제안을 닫으면 문서가 닫힘. 어드민이 삭제해도 닫힘

3.3 리뷰 상태와 최신성

3.4 진행 표시

보는 사람 승인 진행 중 미해결 수정 요청이 있음 발행 조건을 모두 채움
제안자 승인 a/b 수정 필요 발행 필요
담당자 승인 a/b 수정 요청 있음 발행 필요
그 밖의 구성원 승인 a/b 수정 요청 있음 발행 대기

3.5 신뢰도

상황 결과
새 버전을 등록함 SSOT가 자동으로 평가함
발행되어 리뷰 상태가 리뷰 중에서 리뷰 완료로 바뀜 SSOT가 그 버전을 자동으로 다시 평가함
최신성 유효 기간이 끝나 오래된 문서가 됨 SSOT가 발행본을 한 번 자동으로 다시 평가함
담당자가 최신 정보임을 확인함 SSOT가 발행본을 한 번 자동으로 다시 평가함
직접 요청 리뷰 중인 제안은 담당자와 그 제안의 제안자만 요청함. 발행본은 담당자만 요청함. 평가 중이거나, 마지막 평가 뒤 10초 안이거나, 오래된 문서이면 SSOT가 새 평가를 만들지 않음

3.6 공개범위

3.7 문서 유형

3.8 폴더와 문서 이름

4. 권한

4.1 리뷰 중인 제안이 있는 문서

행동 담당자 제안자 그 제안의 리뷰어 독자
읽기 가능 가능 가능 발행본만
코멘트 달기 가능 가능 가능 발행본에만
승인, 승인 취소 리뷰어를 겸할 때 불가 가능 불가
수정 요청 코멘트 달기 리뷰어를 겸할 때 불가 가능 불가
이어서 고치기 불가. 제안을 닫고 새로 등록하거나 제안자를 이어받은 뒤에 가능 가능 불가 불가
제안자 이어받기 제안자 없음 상태일 때만 가능 불가 불가 불가
리뷰어 지정 불가 가능 불가 불가
리뷰어 해제 가능 가능 불가 불가
발행 가능 가능 불가 불가
코멘트 해결 가능 가능 불가 불가
제안 닫기 가능 가능 불가 불가
신뢰도 다시 평가 가능 가능 불가 불가
최신 정보 확인 가능 불가 불가 불가
되돌리기 가능 불가 불가 불가

4.2 발행본만 있는 문서

행동 담당자 비공개 문서의 공유받은 사람 독자
새 제안 등록 가능 불가 불가
이전 버전으로 되돌리기 가능 불가 불가
공개범위와 공유 대상 변경 가능 불가 불가
최신 정보 확인 가능 불가 불가
신뢰도 다시 평가 가능 불가 불가

4.3 코멘트 권한

행동 할 수 있는 사람 조건
코멘트 달기, 답글 달기 로그인한 구성원 읽을 수 있는 버전에만 가능함
코멘트 해결, 코멘트 다시 열기 담당자, 제안자 수정 요청을 남긴 리뷰어가 아니어도 해결할 수 있음. 수정 요청을 남긴 리뷰어가 아닌 사람이 해결하면 SSOT가 그 리뷰어의 알림에 표시함
코멘트 취소 코멘트를 단 사람 해결하지 않았고 다른 사람의 답글이 없을 때만 가능함
답글 삭제 답글을 단 사람 답글이 아닌 처음 코멘트는 삭제할 수 없고 취소만 할 수 있음

4.4 관리 기능 권한

기능 할 수 있는 사람
운영 관리: 사용자 관리와 변경 기록 어드민
퇴사나 휴직한 담당자 문서의 담당자 변경 SSOT의 자동 변경, 그 담당자의 가까운 리드, 그 바로 위 리드, 어드민
재직자의 담당자 변경 그 구성원의 가까운 리드, 그 바로 위 리드, 어드민. 재직자의 비공개 문서는 어드민만
담당자 지정 필요 카드 보기 최고 책임자. 최고 책임자는 CEO로 표시된 재직 중인 구성원이고 항상 어드민임. 재직 중인 CEO가 없으면 어드민 전원
문서 삭제와 삭제한 문서 복구 어드민

5. 화면 공통

5.1 상단 메뉴

5.2 본문과 접근

5.3 화면 폭에 따른 동작

폭 달라지는 내용
폭 1280px 이상 문서 상태 영역이 본문 옆에 항상 표시됨
폭 1280px 미만 문서 상태 영역이 본문 옆에서 빠지고, 화면 아래 「문서 상태」 버튼을 누르면 오른쪽에서 열리는 패널로 표시됨
폭 768px 미만 검색창이 아이콘으로 바뀌고, 아이콘을 누르면 상단 메뉴 아래에 검색 행이 열림
폭 400px 미만 홈 메뉴가 숨겨지고 로고가 홈 이동을 대신함

5.4 화면 테마

6. 할 일과 알림

6.1 할 일 종류

할 일 받는 사람 있는 동안
리뷰 필요 리뷰어 리뷰어로 지정되었고 아직 승인도 수정 요청도 하지 않았을 때
다시 리뷰 필요 리뷰어 제안자가 「다시 리뷰 요청」을 눌렀고, 그 리뷰어가 아직 승인도 수정 요청도 하지 않았을 때
수정 필요 제안자. 제안자 없음 상태이면 담당자 리뷰 중인 제안에 미해결 수정 요청 코멘트가 있을 때
발행 필요 제안자와 담당자 리뷰 중인 제안이 발행 조건을 모두 채웠을 때
최신 정보인지 확인 필요 담당자 문서가 오래된 문서이고 담당자가 아직 확인하지 않았을 때. 담당자 지정 필요 상태였다가 새 담당자가 정해지면 새 담당자가 받음
담당자 지정 필요 최고 책임자 매일 자동 변경이 새 담당자를 찾지 못한 퇴사자나 휴직자의 문서가 있을 때

6.2 알림

상황 받는 사람 슬랙 메시지
리뷰어로 지정됨 그 리뷰어 보냄
수정 요청 코멘트가 달림 제안자. 제안자 없음 상태이면 담당자 보냄
내가 남긴 수정 요청이 해결됨 그 수정 요청을 남긴 리뷰어 알림만
리뷰어에서 해제됨 해제된 리뷰어 알림만
승인이 도착함 제안자, 담당자. 승인 한 건마다 한 줄이고 지금 승인 수를 함께 알림 제안자에게 보냄
승인한 뒤 같은 제안에 새 버전이 등록됨 승인한 리뷰어 알림만
다시 리뷰를 요청받음 그 리뷰어 보냄
발행할 수 있게 됨 제안자, 담당자 알림만
코멘트나 답글이 달림 담당자, 제안자, 그 코멘트를 처음 단 사람. 수정 요청이 아닌 코멘트와 답글은 할 일을 만들지 않음 알림만
제안이 발행됨 제안자, 담당자, 리뷰어 담당자와 리뷰어에게 보냄
제안이 닫힘 제안자 보냄
새로 담당자가 됨 새 담당자 알림만
재직 중에 담당자에서 빠짐 이전 담당자 알림만
권한 요청 담당자 알림만
권한이 생김 권한을 요청한 사람 알림만
퇴사나 휴직으로 리뷰어가 해제되어 한 명도 남지 않음 제안자 알림만
리뷰 중인 제안의 제안자가 퇴사하거나 휴직함 담당자. 제안자를 이어받을 수 있다고 알림 알림만
진행 중인 제안이 있는 문서를 삭제하거나 복구함 담당자, 제안자, 리뷰어 알림만
이전 버전으로 되돌림 담당자. 리뷰 중인 제안이 있으면 그 제안의 제안자와 리뷰어 알림만
유효 기간이 끝나 오래된 문서가 됨 담당자 알림만
리뷰 기한 지남 그 리뷰어, 제안자. 제안자 없음 상태이면 담당자 알림만

6.3 슬랙 다이렉트 메시지

상황 받는 사람 보내는 시점 같은 상황이 다시 생기면
리뷰어로 지정됨 그 리뷰어 지정한 시점 해제한 뒤 다시 지정하면 다시 보냄
리뷰어가 승인하거나 수정 요청을 남김 제안자 답한 시점 답할 때마다 보냄
다시 리뷰를 요청받음 그 리뷰어 제안자가 요청한 시점 다시 요청하면 다시 보냄
제안이 발행됨 담당자와 리뷰어 발행한 시점 제안마다 한 번 보냄
제안이 닫힘 제안자 닫은 시점 제안마다 한 번 보냄

7. 화면별 동작

7.1 홈

7.2 할 일

순서 할 일 종류 또는 상태
1 리뷰 기한 지남
2 리뷰 필요, 다시 리뷰 필요, 수정 필요
3 발행 필요
4 최신 정보인지 확인 필요

7.3 문서 목록

항목 선택지
문서 유형 정책, 가이드, 명세, 기록
상태 리뷰 완료, 오래된 문서, 리뷰 중인 제안 있음, 삭제됨. 리뷰 중인 제안 있음은 다른 상태와 겹쳐 셈. 삭제됨은 어드민에게만 표시됨
기간 마지막 발행일 기준 7일, 30일, 90일
담당자 구성원 이름
정렬 최근 변경순, 이름순, 최신성 유효 기간이 끝나는 날이 이른 순. 기본은 최근 변경순이고, 유효 기간순에서 기록 유형 문서는 맨 뒤임

7.4 검색

7.5 문서 화면

구성

- 문서 화면은 문서 정보 영역, 콘텐츠 영역, 문서 상태 영역 세 영역으로 나뉨. 문서 정보 영역은 위쪽, 콘텐츠 영역은 그 아래 왼쪽, 문서 상태 영역은 오른쪽에 있음. 콘텐츠 영역에는 위에서 아래로 발행 안내, 문서 본문, 본문 아래 코멘트가 있음.
- 문서 상태 영역은 발행본과 리뷰 중인 제안 모두 신뢰도, 참조 문서, 관련 문서, 상세 정보, 리뷰어, 코멘트 순서로 표시함. 리뷰어 항목은 그 문서의 담당자, 제안자, 리뷰어에게만 표시하고 독자에게는 표시하지 않음.
- 문서 정보 영역은 상태, 제목, 폴더 경로, 담당자, 날짜, 버튼을 표시함. 날짜는 문서가 아니라 지금 화면에 보이는 버전의 상태로 정함.
    - 발행본을 보고 있으면 「마지막 발행」이며 가장 최근에 발행한 날임.
    - 기록 유형 문서의 발행본을 보고 있으면 「기록일」이며 처음 발행한 날로 고정함. 다시 발행해도 바뀌지 않음.
    - 리뷰 중인 제안을 보고 있으면 문서 유형과 상관없이 「새 버전 제안일」이며 지금 보고 있는 제안 버전을 등록한 날임. 새 버전을 등록하면 그 날로 바뀜. 발행본이 없는 새 문서도 같음.
    - 「발행본 보기」로 발행본과 제안을 오가면 날짜도 함께 바뀜.
- 보는 버전
    - 담당자, 제안자, 리뷰어는 기본으로 최신 제안을 보고, 발행본 보기 버튼으로 발행본과 제안을 오감.
    - 독자는 발행본만 봄.
    - 제안과 발행본이 다르면 SSOT가 발행 안내를 본문 위에 표시함. 발행본 화면에서는 제안을 읽을 수 있는 사람에게만 리뷰 중인 제안이 있다고 알리고 제안 보기로 이동하게 함.
- 리뷰 중인 제안이 있는 문서에서 발행본을 보는 동안에는 SSOT가 편집과 AI로 수정 버튼을 표시하지 않음. 발행본만 있는 문서에서는 담당자에게 두 버튼을 표시함. 편집은 언제나 최신 제안의 다음 버전으로 새 버전을 등록함.
- SSOT는 리뷰어가 본문을 어디까지 읽었는지 기록하지 않고, 승인 버튼을 읽은 위치와 상관없이 표시함. 새 버전이 등록되면 리뷰어는 바뀐 본문을 읽고 승인함.
- 상세 정보는 접힌 채 시작하고, 펼치면 버전 이력, 리뷰 기록, 발행 진행을 표시함. 상세 정보에는 문서 정보 영역에 이미 있는 위치, 담당자, 날짜를 되풀이하지 않음. 발행된 버전의 이력은 그 문서를 읽을 수 있는 모든 구성원에게 표시함. 제안한 버전의 이력과 리뷰 기록은 담당자, 제안자, 리뷰어에게만 표시함.

코멘트

- 남기기
    - 구성원이 본문에서 글을 선택해 코멘트를 달면 SSOT가 그 글에 코멘트를 연결하고 본문에 강조를 표시하며, 코멘트 목록에 그 글을 인용 문장으로 표시함.
    - 코멘트는 문서 상태 영역 맨 아래와 본문 아래 두 곳에 있고, 두 곳 모두 코멘트 목록과 입력창을 표시함. 두 입력창은 같은 초안을 공유함.
    - 답글은 한 단계만 달 수 있음.
    - 리뷰어가 코멘트 입력창에서 「수정 요청」 탭을 고르면 탭 오른쪽에 「수정 요청이 해결될 때까지 발행할 수 없어요」를 표시함. 본문 글을 선택해 여는 입력창은 안내 줄 없이 입력칸 안 안내 문구로 같은 내용을 알림.
- 보기
    - 구성원이 코멘트를 미해결과 해결됨으로 필터링함.
    - SSOT는 해결된 코멘트를 본문에 강조하지 않고, 목록의 인용 문장도 눌리지 않게 함.
- 새 버전이 등록될 때
    - 같은 제안 안에서 새 버전이 등록되면 SSOT가 앞 버전의 미해결 코멘트를 이어서 표시하고, 몇 번째 버전의 코멘트인지와 인용 문장이 바뀌었는지를 알림.
    - 제안이 닫히고 새 제안이 시작되면 SSOT가 닫힌 제안의 코멘트를 이어서 표시하지 않음. 발행본의 미해결 코멘트는 새 제안 화면에 「발행본 코멘트」로 함께 표시함.
    - 제안을 발행하면 그 제안의 미해결 코멘트를 새 발행본에 이어서 표시함.
- SSOT는 제안자에게 미해결 코멘트를 에이전트에게 붙여 넣을 글로 복사하는 버튼을 표시함.

리뷰어와 승인

- 리뷰어 지정과 해제
    - 그 제안의 제안자와 어드민만 리뷰어를 지정하고, 리뷰어는 사람 단위로 들어감. 리뷰어 추가 검색에서 파트를 고르면 SSOT가 그 파트의 파트원을 한 명씩 리뷰어로 지정하고, 지정할 수 없는 사람과 이미 리뷰어인 사람은 건너뜀. 팀과 그룹은 검색에 나오지 않음.
    - 지정할 수 없는 사람은 그 제안의 제안자, 그 제안에 버전을 등록한 사람, 퇴사자, 휴직자임. 후보 목록에서 휴직자는 이름 뒤에 (휴)가 붙고 선택할 수 없음.
    - 담당자, 제안자, 어드민이 리뷰어를 해제함. 해제 버튼은 항상 표시되고, 누르면 확인 창이 열림. SSOT는 해제한 사람과 해제된 리뷰어를 리뷰 기록에 남기고, 해제된 리뷰어의 알림에 표시함.
    - SSOT는 퇴사하거나 휴직한 리뷰어를 자동으로 해제하고, 복귀해도 다시 지정하지 않음.
    - 리뷰어 영역의 + 버튼을 누르면 리뷰어 카드 가운데에 검색칸이 달린 드롭다운이 열림. 구성원이 이름, 이메일, 파트 이름을 입력하면 입력을 멈추고 0.25초 뒤 결과를 표시하고, 결과를 고르면 리뷰어로 지정하고 드롭다운을 닫음. 드롭다운 밖을 누르거나 Esc를 누르면 지정하지 않고 닫힘.
- 필요한 승인 수
    - SSOT는 남은 리뷰어 수로 필요한 승인 수를 정함. 리뷰어가 두 명 이상이면 필요한 승인은 두 개이고, 한 명이면 그 한 명의 승인임.
    - 제안자가 해제하거나 퇴사와 휴직으로 자동 해제돼도 SSOT가 남은 리뷰어 수로 필요한 승인 수를 다시 계산함. 해제된 리뷰어의 승인은 승인 수에 넣지 않음. 리뷰어가 한 명도 없으면 발행할 수 없음.
- 리뷰어가 할 수 있는 행동
    - 리뷰어는 승인하거나 수정 요청 코멘트를 달 수 있음. 승인할 때는 그 리뷰어가 남긴 수정 요청이 남아 있을 수 없음. 수정 요청은 발행에만 영향을 주고 승인 수에는 영향을 주지 않음.
    - 리뷰어는 본문을 어디까지 읽었는지와 상관없이 승인 버튼을 누를 수 있음. 끝까지 읽어야 승인 버튼이 켜지는 제한을 다시 넣을지는 개발 쪽과 합의해야 함. 리뷰어가 승인하면 SSOT가 「승인함」 상태와 회색 보조 버튼 「승인 취소」를 표시하고, 이 버튼을 누르면 승인이 취소됨.
    - 수정 요청은 코멘트의 한 종류임. 리뷰어가 코멘트 입력창에서 수정 요청을 선택하고 이유를 적어 남김. SSOT는 수정 요청 코멘트를 해결하기 전까지 발행할 수 없게 함.
    - 리뷰어가 승인 버튼을 누르면 확인 창이 열림.
        - 그 리뷰어가 남긴 미해결 수정 요청이 있으면 확인 창이 「내 수정 요청 N건을 해결하고 승인할까요?」로 묻고, 승인하면 SSOT가 그 수정 요청을 모두 해결함.
        - 확인 창에는 승인하면서 남길 코멘트 입력칸이 있음. 입력하면 SSOT가 일반 코멘트로 남김. 오타처럼 작은 고칠 점은 수정 요청 대신 이 코멘트로 남김.
        - 다른 리뷰어가 남긴 수정 요청은 승인해도 바뀌지 않음.
    - 승인한 뒤에는 하단 버튼 줄에 테두리가 있는 「승인 취소」 버튼만 남고, 수정 요청 버튼은 표시하지 않음. 승인 취소는 이미 해결된 수정 요청을 다시 열지 않음.
- 새 버전이 등록될 때
    - 같은 제안에 새 버전이 등록돼도 리뷰어의 승인과 수정 요청은 그대로 남음. SSOT가 승인한 리뷰어의 알림에 버전이 바뀌었다고 표시함. 수정 요청 코멘트는 코멘트이므로 해결할 때까지 남음.
    - 발행이나 제안 닫기 뒤에 새 제안이 시작되면 SSOT가 이전 리뷰어 목록에서 새 제안의 제안자, 퇴사자, 휴직자를 빼고 이어받음. 이어받은 리뷰어의 지정 시각은 새 제안이 시작된 시각으로 기록하고, 모든 리뷰어를 승인도 수정 요청도 하지 않은 상태로 시작함. SSOT는 이어받은 리뷰어에게 리뷰어로 지정됐다는 슬랙 메시지를 보냄.
- 해결하지 않은 수정 요청 코멘트가 있으면 SSOT가 문서 상태 영역의 리뷰어 항목 아래에 그 코멘트를 남긴 사람의 이름을 표시함.
- 다시 리뷰 요청
    - 제안자는 고친 내용을 등록한 뒤 리뷰어 줄의 「다시 리뷰 요청」을 눌러 그 리뷰어에게 다시 리뷰를 요청함. 「다시 리뷰 요청」은 그 제안의 제안자만 누를 수 있음.
    - 「다시 리뷰 요청」 버튼은 리뷰어가 승인하거나 수정 요청을 남긴 버전 뒤에 새 버전이 등록됐을 때만 그 리뷰어 줄 아래에 나타남. 새 버전이 없으면 나타나지 않음. 승인한 리뷰어와 수정 요청을 남긴 리뷰어 모두 대상이고, 제안자가 다시 볼 리뷰어를 고름.
    - 요청받은 리뷰어는 「리뷰 전」으로 돌아가고, 그 리뷰어의 승인은 승인 수에서 빠짐. SSOT가 그 리뷰어의 할 일에 다시 리뷰 필요를 만들고 슬랙 메시지를 보냄.
    - 수정 요청 코멘트를 해결해도 SSOT가 자동으로 다시 리뷰를 요청하지 않음. 코멘트 해결과 다시 리뷰 요청은 다른 행동임.

- 리뷰어 줄은 리뷰어마다 「승인함」, 「리뷰 전」, 「수정 요청」, 「리뷰 기한 지남」 중 하나를 글자로 표시함. 「리뷰 기한 지남」에 마우스를 올리면 SSOT가 2주 동안 리뷰가 없어서 그 리뷰어와 제안자에게 알림을 보냈다고 툴팁으로 알림. 한 리뷰어가 승인하고 수정 요청도 남겼으면 「수정 요청」을 표시하고, 승인은 승인 a/b에 반영함. 답한 뒤 새 버전이 등록된 리뷰어에게는 상태 옆에 답한 버전과 「이후 변경 있음」을 함께 표시함.

- 리뷰어 줄은 이름 오른쪽에 작은 해제 버튼을 두고, 승인함이나 리뷰 기한 지남 같은 상태는 줄 오른쪽 끝에 표시함. 해제 버튼을 누르면 확인 창이 열리고, 확인 창은 해제하면 승인 수와 수정 요청이 어떻게 되는지 알림.

발행

- 발행 조건은 아래 여섯 가지이며 모두 채울 때 발행할 수 있음. 어드민을 포함해 조건을 건너뛰는 예외는 없음. 제안자와 담당자에게는 하나라도 채우지 못하면 SSOT가 발행 버튼을 비활성으로 표시하고 이유를 안내함. 그 밖의 사람에게는 발행 버튼을 표시하지 않음. 서버도 같은 기준으로 발행을 거절함.
    - 발행하는 사람이 그 제안의 제안자이거나 담당자임.
    - 지금 보는 버전이 최신 제안이고 아직 발행되지 않았음.
    - 리뷰어가 한 명 이상이고, 제안자와 그 제안에 버전을 등록한 사람은 리뷰어가 아님.
    - 승인이 필요한 수를 채웠음.
    - 해결하지 않은 수정 요청 코멘트가 없음. 다른 코멘트가 남아 있어도 발행할 수 있고, 승인한 뒤에도 수정 요청 코멘트는 해결해야 함.
    - 제안을 등록할 때 기준이던 발행본이 지금의 발행본과 같음.
- 발행 버튼은 확인 창을 한 번 거침. 이번 제안에서 해제된 리뷰어와, 수정 요청을 남긴 리뷰어가 아닌 사람이 해결한 수정 요청이 있으면 SSOT가 확인 창에 함께 표시함. 승인한 뒤 버전이 바뀐 리뷰어가 있으면 그 이름도 함께 표시함.
- 구성원이 비활성 발행 버튼을 누르면 해결할 수정 요청 코멘트가 있을 때 SSOT가 첫 수정 요청 코멘트로 이동함. 수정 요청 코멘트가 없으면 이동하지 않고 첫 이유 하나를 안내 문구로 표시함. 발행할 수 없는 이유가 둘이면 버튼에는 해결해야 할 수정 요청 코멘트의 개수만 표시하고, 승인 수는 안내 문구에 표시함.
- 담당자는 남이 등록한 제안도 발행할 수 있고, 제안자 없음 상태에서도 발행할 수 있음. SSOT는 담당자가 발행하면 담당자를 발행자로 기록함.
- 발행하면 SSOT가 발행 완료 화면으로 이동함. 구성원은 발행 진행에서 검색 반영을 단계별로 확인하고, SSOT는 5초마다 최대 15분 동안 상태를 다시 읽음.
    - SSOT는 문서를 검색에 올리는 작업인 검색 반영의 전송 실패, 반영 실패, 늦어짐을 구분해 알리고 완료로 추정하지 않음.
    - 문서 화면의 발행 진행도 검색 반영이 끝나지 않은 동안 5초마다 최대 15분 동안 상태를 다시 읽음. 15분이 지나도 반영되지 않으면 늦어짐으로 표시함.
- 발행 취소는 없음. 이전 내용으로 돌리려면 상세 정보의 버전 이력에서 되돌리기를 하며, SSOT가 리뷰 없이 되돌린 버전을 바로 발행함. 담당자만 되돌리기를 함. 되돌릴 수 있는 버전은 발행된 적이 있는 버전뿐임.
    - 실수로 누르지 않도록 SSOT가 되돌릴 버전을 보여 주고 이유를 요구하는 확인 창을 한 번 표시함.
    - SSOT가 되돌린 사람, 이유, 되돌린 버전을 이력에 남기고 담당자에게 알리며, 리뷰 중인 제안이 있으면 그 제안의 제안자와 리뷰어에게도 알림.
    - SSOT는 리뷰 중인 제안이 있어도 되돌리기를 허용함. 제안을 등록할 때 기준이던 발행본이 지금의 발행본과 달라진 제안은 발행할 수 없고 제안자가 다시 등록해야 함. 제안자가 새 버전을 등록하면 SSOT가 기준 발행본을 지금의 발행본으로 바꾸고, 고칠 곳이 없어도 다시 등록할 수 있음.

편집과 등록

- 편집
    - 편집은 문서 본문 전체를 한 번에 고치는 편집기에서 함. AI로 수정은 SSOT가 에이전트에게 붙여 넣을 수정 지시문을 만들어 줌.
    - 구성원이 저장하면 SSOT가 최신 제안의 다음 버전으로 새 버전을 등록하고, 제안이 없으면 새 제안을 만듦.
    - 편집 권한은 담당자와 현재 제안자에게만 있음.
- 다른 사람의 제안이 리뷰 중일 때
    - 담당자를 포함한 모든 사람은 새 버전을 등록할 수 없음. SSOT는 원래 편집 권한이 있는 담당자에게만 편집과 AI로 수정 버튼을 비활성으로 표시하고, 리뷰어와 독자에게는 버튼을 표시하지 않음. 안내 문구가 누가 등록한 제안인지 알림.
    - 담당자는 그 제안을 닫고 새로 등록하거나, 제안자 없음 상태이면 제안자를 이어받아 고침.
- 에이전트가 등록할 때
    - 새 문서와 갱신은 에이전트가 등록하는 경로가 기본임. 제안자는 로그인한 사람임.
    - 필수 항목이 비어 있으면 SSOT가 등록을 반려하고 사람에게 확인할 질문 문구를 함께 응답함.
    - 갱신하는 에이전트는 어느 버전을 고쳤는지 함께 보내야 함. 그 사이 다른 버전이 등록됐으면 SSOT가 충돌로 반려하고, 에이전트는 최신 원문과 자기 수정본을 비교해 구성원에게 확인한 뒤 수정본을 다시 등록함.
    - 다른 사람의 제안이 리뷰 중이면 SSOT가 누구의 제안인지 이유를 알리며 반려함.
    - 새 문서의 담당자는 제안자임. 에이전트가 다른 사람을 담당자로 적으면 그 사람이 SSOT에 한 번 로그인한 사람이어야 하고, 로그인한 적이 없으면 SSOT가 반려함.

    - 닫히거나 삭제된 문서에 온 갱신은 SSOT가 이유를 알리며 반려함.

신뢰도 카드

- 카드는 점수, 등급, 막대를 표시하고, 구성원이 물음표 아이콘에 마우스를 올리면 SSOT가 평가 기준을 안내 문구로 알림.
    - 점수가 리뷰 상태별 최대 점수에 도달했으면 SSOT가 막대 아래에 이유를 한 줄로 표시함. 리뷰 중인 문서이면 리뷰 중이라 최대 79점이라고, 오래된 문서이면 오래된 문서라 최대 59점이라고 알림.
- 구성원이 신뢰도 상세를 펼치면 SSOT가 감점 사유와 항목별 점수를 표시함.
- 다시 평가 버튼은 누를 수 있는 사람에게만 표시되고, 누를 수 있는 사람은 리뷰 중인 제안에서는 담당자와 그 제안의 제안자이고, 발행본에서는 담당자임. 버튼을 누르면 서버가 요청을 접수하거나 거절하고, 응답에 최신 상태를 포함함.
    - 버튼이 비활성인 이유는 평가 진행 중, 오래된 문서, 마지막 평가 뒤 10초 안이며, 이 순서가 안내 우선순위임. 이유가 둘 이상이면 SSOT가 우선순위가 앞선 이유 하나만 안내함.
    - 안내는 버튼에 마우스를 올리거나, 키보드로 버튼을 선택하거나, 태블릿에서 탭하면 표시됨. 비활성 버튼도 키보드로 선택할 수 있음.
    - 마지막 평가 뒤 10초 안에는 남은 초가 1초마다 줄어들고, 0초가 되면 버튼이 활성화됨.
- 마지막 평가 뒤 시간이 지났거나 리뷰 상태가 바뀌어 점수가 현재 상태와 맞지 않으면 SSOT가 카드 첫 줄에 그 이유를 표시함.
- 신뢰도 카드는 서버에서 상태를 주기적으로 불러오지 않음. 신뢰도 카드가 서버에서 상태를 불러오는 때는 문서를 열 때, 다시 평가를 눌렀을 때, 브라우저 탭이 다시 화면에 나타날 때임. 다시 평가를 누른 사람의 화면은 그 평가가 끝날 때까지도 서버에서 상태를 불러옴. 이 외에는 불러오지 않으므로 가만히 두면 점수가 바뀌지 않고, 다른 사람이 바꾼 점수는 문서 화면이 다음에 서버에서 상태를 불러올 때 반영됨.

문서 삭제

- 어드민만 문서를 삭제함. 문서 정보 영역의 더 보기 메뉴와 담당자 변경 화면의 문서 행 삭제 아이콘에 삭제가 있고, 두 경로 모두 확인 창을 한 번 거침.
- 삭제하면 문서가 닫힘 상태가 됨. SSOT가 목록, 검색, 할 일에서 문서를 제외하고, 어드민이 아닌 사람이 주소로 열면 없음 화면을 표시함. SSOT는 데이터를 지우지 않고 누가 언제 삭제했는지 기록함.
- 어드민은 삭제된 문서를 목록에서 제목으로 보고 복구함. 본문은 원래 읽을 권한이 있는 사람만 읽음. 복구하면 문서가 삭제 직전 상태로 돌아오고, 진행 중이던 제안과 코멘트도 함께 돌아옴. SSOT는 삭제한 기간을 리뷰 기한 2주와 최신성 유효 기간 계산에서 뺌.
    - 같은 폴더에 같은 이름의 새 문서가 이미 있으면 SSOT가 복구를 막고 이유를 안내함. 어드민이 새 문서를 정리한 뒤 다시 복구함.
    - SSOT가 복구한 사람과 시각을 변경 기록에 남김.
    - 복구한 문서의 담당자가 퇴사하거나 휴직한 사람이면 SSOT가 복구 직후 자동 변경을 한 번 실행하고, 새 담당자를 찾지 못하면 문서가 담당자 지정 필요 상태가 됨.
- 진행 중인 제안이 있는 문서를 삭제하거나 복구하면 SSOT가 담당자, 제안자, 리뷰어의 알림에 한 번 표시함.

문서 폴더 이동

- 화면에는 문서를 이미 있는 폴더로 이동하는 기능만 있고, 폴더를 새로 만드는 기능은 없음. 이동 기능은 문서 정보 영역의 더 보기 메뉴에 있음.
- 담당자만 문서를 이동함.
- 이동할 폴더에 같은 이름의 문서가 있으면 SSOT가 이동을 막고 이유를 안내함.
- 이동하면 SSOT가 새 버전을 만들지 않고 바로 반영하며, 이동한 사람과 시각을 버전 이력에 남김.

- 문서 정보 영역의 더 보기 메뉴에는 마크다운 복사, 원본 문서 열기, 위치 옮기기, 문서 삭제가 있음. 마크다운 복사와 원본 문서 열기는 문서를 읽을 수 있는 구성원에게, 위치 옮기기는 담당자에게, 문서 삭제는 어드민에게만 보임.

7.6 참조 문서와 관련 문서

구분 참조 문서 관련 문서
만드는 주체 사람이 근거로 직접 넣음 SSOT가 내용이 겹치는 문서를 자동으로 찾음
대상 발행된 SSOT 문서, 위키, 슬랙, 코드 저장소, 다른 사이트의 링크 읽을 수 있는 발행 문서
넣고 빼는 사람 담당자, 제안자. 리뷰 중인 제안에서는 리뷰어도 없음
저장 제안 단위로 저장되고 발행할 때 발행본에 고정됨. 리뷰어가 넣고 빼도 새 버전을 만들지 않고 리뷰 기록에 남김. 새 제안은 발행본의 목록을 이어받아 시작함 저장하지 않고 문서를 열 때마다 계산함
눌렀을 때 SSOT 문서는 같은 탭, 외부 주소는 새 탭에서 열림 지금 문서와 그 관련 문서를 나란히 비교하는 창이 열림
읽을 수 없는 문서 한 줄로 자물쇠, 비공개 문서, 볼 권한이 없음만 표시함. 누르면 권한 없음 화면이 열림. 삭제되거나 닫힌 문서는 「삭제된 문서」로 표시하고 누를 수 없음 목록에서 제외됨

7.7 운영 관리

7.8 담당자 변경

7.9 에이전트 연결

7.10 로그인과 오류

7.11 변경 기록

7.12 화면 움직임

8. 퇴사와 인계

8.1 퇴사나 휴직한 사람의 역할이 없어지는 경우

퇴사나 휴직한 사람의 역할 이후 상태
리뷰 중인 제안의 제안자 제안자 없음 상태가 됨. 담당자가 자동으로 이어받지 않고 문서 화면에서 직접 이어받음
문서의 담당자 담당자 지정 필요 상태가 됨. (퇴) 또는 (휴)가 붙은 담당자 이름이 남고 새 담당자를 정해야 함
리뷰 중인 제안의 리뷰어 SSOT가 그 리뷰어를 자동으로 해제하고 필요한 승인 수를 남은 리뷰어 수로 다시 계산함. 한 명도 남지 않으면 제안자의 알림에 리뷰어 지정이 필요하다고 표시함
발행자 인계 대상이 아님. 발행 기록에 남는 이름이고 권한이 없음
할 수 있음 할 수 없음
리뷰어의 승인, 수정 요청, 코멘트. 담당자의 발행, 제안 닫기, 코멘트 해결, 리뷰어 해제, 제안자 이어받기 리뷰어 지정, 새 버전 등록. 담당자가 제안자를 이어받으면 가능해짐

8.2 인계하는 사람

8.3 인계 방식

8.4 비공개 문서의 인계

8.5 매일 자동 변경

9. 엣지 케이스

9.1 리뷰와 승인

상황 결과
리뷰어가 한 명뿐인데 퇴사하거나 휴직함 리뷰어가 0명이 되어 SSOT가 발행을 막고 제안자에게 리뷰어 지정을 안내함. 새 리뷰어를 지정하면 SSOT가 필요한 승인 수를 다시 계산함
리뷰어 두 명 중 한 명이 퇴사하거나 휴직함 SSOT가 남은 리뷰어 한 명으로 필요한 승인 수를 다시 계산함. 새 리뷰어를 지정하면 다시 두 명 기준이 됨
퇴사한 리뷰어가 수정 요청 코멘트를 남겨 둠 코멘트를 해결하기 전까지 SSOT가 발행을 막고, 담당자나 제안자가 그 코멘트를 해결함
승인한 뒤 같은 제안에 새 버전이 등록됨 승인은 그대로이고 SSOT가 승인한 리뷰어의 알림에 버전이 바뀌었다고 표시함. 제안자가 「다시 리뷰 요청」을 누른 리뷰어만 다시 리뷰함
앞 버전에서 남긴 수정 요청 코멘트가 있음 같은 제안 안에서는 SSOT가 코멘트를 이어서 표시하고 해결하기 전까지 발행을 막음. 제안이 새로 시작되면 이어서 표시하지 않음
리뷰어 셋 중 둘이 승인하고 한 명이 수정 요청 코멘트를 남김 그 코멘트를 해결하기 전까지 SSOT가 발행을 막음. 승인 수는 그대로 둘임
승인한 리뷰어가 승인을 취소함 승인 수가 줄어서 발행 조건을 다시 채워야 함
담당자가 그 제안의 리뷰어이고 제안자 없음 상태임 담당자가 제안자를 이어받으면 SSOT가 담당자를 리뷰어에서 빼고 필요한 승인 수를 남은 리뷰어 수로 다시 계산함

9.2 발행과 제안

상황 결과
담당자가 남이 등록한 제안을 발행함 SSOT가 제안자의 알림에 제안한 버전이 발행됨을 표시하고, 발행 기록에 발행자로 담당자를 남김
제안이 만들어진 뒤 다른 버전이 발행됨 그 제안은 발행할 수 없고, SSOT가 다시 등록하라고 안내함
최신 버전이 등록된 상태에서 이전 버전의 발행 버튼을 누름 SSOT가 발행하지 않고 새로 고침을 안내함
제안을 닫음 SSOT가 닫은 이유를 버전 이력에 남기고, 발행본이 있으면 문서가 발행본만 있음 상태로 돌아감. 닫힌 제안의 코멘트는 새 제안에 이어서 표시되지 않음
발행본이 없는 새 문서의 제안을 닫음 문서가 닫히고, 주소로 열면 없음 화면이 열림. 같은 폴더에 새 문서는 등록할 수 있음
같은 문서에 에이전트와 사람이 동시에 고침 먼저 저장한 요청이 반영되고, SSOT는 늦게 저장한 요청을 충돌로 반려함. 늦게 저장한 에이전트나 사람은 최신 버전을 읽고 조정해 다시 등록함
다른 사람의 제안이 리뷰 중인데 에이전트가 새 버전을 등록함 SSOT가 누구의 제안인지 이유를 알리며 반려함. 어드민의 에이전트도 같음
담당자를 바꾼 문서에 이전 담당자가 등록한 제안이 리뷰 중임 제안자가 재직 중이면 제안자를 그대로 두고, 새 담당자는 발행과 제안 닫기를 할 수 있음

9.3 공개범위와 인계

상황 결과
발행본이 있는 문서를 읽을 수 없는데 주소를 받음 권한 없음 화면이 열리고 담당자에게 권한을 요청할 수 있음
발행 전 문서를 읽을 수 없는데 주소를 받음 아직 발행되지 않아 볼 수 없다는 안내 화면이 열림. 권한 요청 버튼은 없음
문서를 비공개로 바꿈 SSOT가 읽을 수 없게 된 사람의 홈, 목록, 검색, 관련 문서에서 문서를 제외하고, 참조 문서에는 자물쇠 아이콘을 표시함
새 담당자가 퇴사자나 휴직자임 새 담당자 선택에서 고를 수 없고, SSOT가 요청도 거절함
리드가 인계할 권한이 없는 구성원의 문서임 리드의 목록에 나오지 않고, 어드민만 담당자를 바꿈
인계한 뒤 실행 취소를 누르지 않고 10초가 지남 취소할 수 없고, 필요하면 담당자 변경 화면에서 다시 바꿈
담당자와 제안자가 모두 퇴사했고 리뷰 중인 제안이 있음 새 담당자가 정해질 때까지 발행, 제안 닫기, 코멘트 해결을 할 수 있는 사람이 없음. 어드민이 담당자 변경 화면에서 새 담당자를 정함. 리뷰어는 승인과 코멘트를 할 수 있고, 새 담당자를 정한 뒤에 제안자 이어받기와 발행을 함

9.4 화면과 연결

상황 결과
다른 브라우저나 기기에서 같은 문서를 엶 알림 읽음 표시는 서버에 저장되므로 브라우저나 기기와 상관없이 같음
코멘트를 남기는 중에 로그인이 만료됨 SSOT가 오류 화면 없이 로그인이 만료됐다고 안내함
인터넷이 끊기거나 로그인이 만료된 채 저장함 SSOT가 실패를 안내하고 편집기 본문, 코멘트, 이유 입력의 쓰던 글을 남김. 다시 연결하면 같은 내용으로 저장할 수 있음
검색 반영이 늦어짐 발행은 완료되고 검색 결과에는 아직 없을 수 있음. SSOT가 발행 진행에서 늦어짐을 알리고 완료로 추정하지 않음
최신성 유효 기간이 지난 문서를 담당자가 확인함 SSOT가 확인한 날짜부터 유효 기간을 새로 계산하고 새 버전과 리뷰를 만들지 않음

10. 기존 정책과 달라진 점

기존 정책은 2026년 11월 12일 모노레포 develop에 개발된 SSOT의 동작임.

10.1 역할과 권한

항목 기존 바뀐 정책 바뀐 이유
구성원 역할
  • 구성원 역할 구분이 없음
    • 모든 구성원이 같은 권한을 받음
  • 구성원 역할은 어드민과 멤버 두 가지임
    • 어드민은 역할, 담당자, 문서 삭제와 복구 같은 시스템 관리만 함
    • 어드민도 권한 없는 문서의 내용은 읽거나 고칠 수 없음
  • 담당자 변경, 문서 삭제와 복구, 변경 기록 확인은 한 문서의 담당자가 할 수 없는 관리 작업임
    • 이 작업을 맡을 사람이 필요함
편집 권한
  • 담당자, 제안자, 현재 리뷰어, 공유받은 사람이 본문을 고칠 수 있었음
  • 담당자와 현재 제안자만 본문을 고칠 수 있음
    • 리뷰어는 본문을 고칠 수 없고 참조 문서만 넣고 뺄 수 있음
  • 리뷰어가 본문을 고치면 리뷰어가 자기가 쓴 내용을 승인하게 됨
  • 또 발행 뒤에도 그 버전의 리뷰어가 새 제안을 등록할 수 있었음
공개범위 변경
  • 담당자와 제안자가 공개범위를 바꿀 수 있었음
  • 담당자만 공개범위를 바꿀 수 있음
    • 제안자는 바꿀 수 없음
  • 공개범위는 이미 발행된 버전을 누가 읽을 수 있는지도 정하는 문서 전체 설정임
    • 이 때문에 문서를 책임지는 담당자가 정함
  • 담당자가 퇴사하면 새 담당자가 정해진 뒤 바꿈
권한이 생기는 기준
  • 문서를 발행한 사람과 지난 제안의 제안자도 계속 문서를 고칠 수 있었음
  • 지금 담당자, 지금 리뷰 중인 제안의 제안자와 리뷰어만 그 역할의 권한을 받음
    • 발행자는 누가 발행했는지 이력에 남기는 이름이고 권한은 없음
  • 예전 역할에 권한이 남으면 지금 문서를 책임지지 않는 사람이 문서를 고칠 수 있음
대분류와 폴더
  • 로그인한 구성원 누구나 대분류를 만들고 이름을 바꿀 수 있었음
  • 문서를 옮기면서 새 폴더도 만들 수 있었음
  • 구성원은 화면에서 폴더를 만들거나 이름을 바꿀 수 없음
  • 대분류 15개는 고정임
  • 폴더는 에이전트가 문서를 등록할 때만 만듦
  • 대분류를 만들고 이름을 바꾸는 기능에 권한 확인이 없었음
    • 이 때문에 아무 구성원이나 대분류를 바꿀 수 있었음
  • 폴더는 에이전트가 문서를 등록할 때 정함

10.2 리뷰와 발행

항목 기존 바뀐 정책 바뀐 이유
리뷰 중인 제안 수
  • 구성원마다 리뷰 중인 제안을 하나씩 열 수 있었음
    • 이 때문에 한 문서에 제안이 둘 이상 생길 수 있었음
  • 한 문서에는 리뷰 중인 제안이 하나만 있을 수 있음
    • 다른 구성원은 그 제안이 발행되거나 닫힐 때까지 코멘트로 의견을 남김
  • 같은 발행본을 바탕으로 두 구성원 이상이 따로 고친 제안이 생길 수 있었음
    • 이 때문에 어느 제안을 발행할지 정하고 두 수정 내용을 합쳐야 했음
발행할 수 있는 사람
  • 그 버전을 등록한 제안자만 발행할 수 있었음
  • 제안자와 담당자가 발행할 수 있음
  • 제안자가 퇴사하거나 휴직하면 승인을 다 받은 제안도 발행할 사람이 없었음
수정 요청
  • 리뷰어는 승인과 수정 요청 중 하나만 고를 수 있었음
  • 수정 요청은 리뷰어만 남길 수 있는 코멘트 종류임
    • 수정 요청 코멘트가 해결되기 전까지 발행할 수 없음
    • 수정 요청은 승인 수를 바꾸지 않음
  • 승인과 수정 요청 중 하나만 고를 수 있었음
    • 이 때문에 승인하면서 고칠 점을 함께 남길 수 없었음
승인 취소
  • 서버는 승인 취소를 받았지만 화면에 버튼이 없어 리뷰어가 승인을 취소할 수 없었음
  • 승인한 리뷰어는 직접 승인을 취소할 수 있음
  • 승인을 잘못 눌렀거나 생각이 바뀐 리뷰어가 승인을 되돌릴 방법이 없었음
리뷰어 지정
  • 팀이나 파트를 골라 그 구성원 전원을 리뷰어로 지정할 수 있었음
  • 리뷰어는 사람 단위로 들어감. 리뷰어 추가 검색에서 파트를 고르면 파트원이 한 명씩 리뷰어로 들어감. 팀과 그룹은 고를 수 없음
  • 팀이나 그룹 전원이 리뷰어가 되면 리뷰어가 너무 많아짐
    • 이 때문에 누가 승인해야 하는지 흐려짐
리뷰 기한
  • 리뷰 기한이 없었음
  • 리뷰어로 지정된 지 2주가 지나도 승인도 수정 요청도 하지 않으면 「리뷰 기한 지남」으로 표시함
    • 그 리뷰어와 제안자에게 알림을 한 번 보냄
  • 승인도 수정 요청도 하지 않는 리뷰어 때문에 멈춘 제안을 찾을 방법이 없었음
되돌리기
  • 옛 버전으로 되돌리려면 그 버전을 새 제안으로 등록하고 리뷰를 다시 거쳐야 했음
  • 담당자는 이유를 적고 예전에 발행했던 버전으로 바로 되돌릴 수 있음
    • 되돌린 버전은 리뷰 없이 바로 발행됨
  • 되돌리는 버전은 이미 리뷰를 거쳐 발행했던 버전임
    • 이 때문에 다시 리뷰할 필요가 없음
본문 끝까지 읽어야 승인
  • 리뷰어가 본문을 끝까지 스크롤해야 승인 버튼이 켜졌음
    • 2026년 11월 4일 개발 저장소에서 이 제한을 뺌
  • 지금은 리뷰어가 스크롤과 상관없이 승인함
  • 이 제한을 다시 넣자고 제안함
  • 리뷰어가 본문을 읽지 않고 승인하는 일을 막을 수 있음

10.3 퇴사, 휴직, 담당자 변경

항목 기존 바뀐 정책 바뀐 이유
퇴사나 휴직한 리뷰어
  • 리뷰어로 지정된 사람이 퇴사하거나 휴직해도 리뷰어로 남았음
  • 리뷰어가 퇴사하거나 휴직하면 SSOT가 자동으로 리뷰어에서 해제함
    • 필요한 승인 수는 남은 리뷰어 수에 맞춰 다시 계산함
  • 휴직자는 리뷰어로 새로 지정할 수 없음
  • 퇴사한 리뷰어는 승인할 수 없음
    • 이 때문에 그 리뷰어가 남아 있으면 필요한 승인 수를 끝내 채우지 못하는 제안이 남았음
퇴사나 휴직한 제안자
  • 제안자가 퇴사하거나 휴직해도 그 제안의 권한이 그 사람에게 남았음
  • 제안자가 퇴사하거나 휴직하면 그 제안은 「제안자 없음」 상태가 됨
    • 담당자가 제안자를 이어받아 계속 고칠 수 있음
  • 제안의 권한이 퇴사자에게 남아 있었음
    • 이 때문에 그 제안을 이어서 고칠 사람이 없었음
담당자 변경
  • 담당자를 바꾸는 기능이 없었음
  • 리드와 어드민이 담당자를 바꿀 수 있음
    • 새 담당자의 수락은 필요 없음
  • SSOT는 매일 퇴사자와 휴직자의 문서를 자동으로 넘김
    • 넘겨받을 사람은 그 사람의 파트리드, 팀리드, 그룹리드 순으로 찾음
  • 담당자를 바꾸는 기능이 없었음
    • 이 때문에 퇴사자의 문서를 책임질 사람을 정할 수 없었음
최고 책임자
  • 최고 책임자가 정해져 있지 않았음
  • 인사 정보에서 CEO로 표시된 재직 중인 구성원 전원이 최고 책임자임
  • 자동 변경이 넘겨받을 리드를 찾지 못한 문서는 최고 책임자가 담당자 지정 필요 카드로 받음
  • 파트리드, 팀리드, 그룹리드가 모두 없으면 문서를 넘겨받을 사람이 정해지지 않았음

10.4 문서 관리

항목 기존 바뀐 정책 바뀐 이유
문서 삭제
  • 문서를 삭제하는 기능이 없었음
  • 어드민이 문서를 삭제하고 복구할 수 있음
    • 삭제해도 데이터를 지우지 않아 복구할 수 있음
  • 잘못 등록한 문서를 지울 방법이 없었음
읽을 수 없는 문서
  • 권한이 없는 문서를 열면 없는 문서와 같은 404 화면이 나왔음
  • 발행본이 있는 문서는 「권한 없음」 화면과 권한 요청 버튼을 보여 줌
  • 아직 발행되지 않은 문서는 발행 전이라 읽을 수 없다는 안내 화면을 보여 줌
  • 권한이 없는 문서가 없는 문서와 구분되지 않았음
    • 이 때문에 구성원이 권한을 요청할 수 없었음
같은 이름의 문서
  • 주소가 같은 문서만 막았음
    • 이 때문에 같은 폴더에 이름이 같은 문서를 등록할 수 있었음
  • 같은 폴더에 이름이 같은 문서를 등록할 수 없음
  • 같은 폴더에 이름이 같은 문서가 있을 수 있었음
    • 이 때문에 검색과 에이전트가 어느 문서가 기준인지 구분하지 못함
폴더 이동
  • 편집 권한이 있는 구성원이 문서를 옮길 수 있었음
  • 옮기면서 새 폴더도 만들 수 있었음
  • 담당자만 문서를 이미 있는 폴더로 옮길 수 있음
    • 옮겨도 새 버전이 생기지 않음
  • 옮기면서 새 폴더를 만들 수 있었음
    • 이 방식은 대분류 15개를 고정한 정책과 맞지 않음
참조 문서
  • 참조 문서를 본문 머리글에 저장했음
    • 이 때문에 참조 문서만 바꿔도 새 버전이 생겼음
  • 참조 문서는 제안마다 저장함
    • 발행할 때 발행본에 고정함
    • 새 제안은 발행본의 참조 문서 목록을 이어받음
    • SSOT 밖의 주소도 넣을 수 있음
  • 참조 문서만 바꿔도 새 버전이 생겼음
    • 이 때문에 리뷰를 다시 받아야 했음
변경 기록
  • 관리 작업의 기록이 없었음
  • 역할 변경, 담당자 변경, 문서 삭제와 복구 같은 관리 작업을 변경 기록에 영구 보관함
  • 누가 언제 역할과 담당자를 바꿨는지 알 수 없었음

10.5 최신성, 신뢰도, 알림

항목 기존 바뀐 정책 바뀐 이유
최신성 유효 기간의 시작
  • 마지막으로 승인한 날부터 유효 기간을 계산함
  • 발행한 날이나 담당자가 최신 정보임을 확인한 날부터 유효 기간을 계산함
  • 독자는 발행된 날부터 그 내용을 읽음
    • 이 때문에 유효 기간은 발행한 날부터 세야 함
최신 정보 확인
  • 「문서 갱신하기」 버튼을 누르면 편집이 열렸음
    • 이 때문에 내용이 그대로 맞아도 새 버전을 만들고 리뷰를 다시 받아야 했음
  • 담당자가 「최신 정보임을 확인했어요」 버튼으로 확인만 하면 유효 기간이 다시 시작됨
    • 새 버전과 리뷰는 만들지 않음
  • 내용이 그대로 맞는 문서도 편집과 리뷰를 다시 거쳐야 했음
최신 정보인지 확인 필요 할 일
  • 만료 30일 전부터 「최신 정보인지 확인 필요」 할 일이 생겼음
  • 문서가 만료되어 오래된 문서가 될 때 할 일이 한 번 생김
  • 만료 30일 전부터 할 일이 생겼음
    • 이 때문에 아직 유효한 문서까지 할 일이 쌓였음
기록 유형 문서
  • 기록 유형 문서도 다른 유형과 같은 유효 기간이 있었음
    • 이 때문에 기록 유형 문서도 오래된 문서가 됐음
  • 기록 유형 문서에는 유효 기간이 없음
    • 이 때문에 오래된 문서가 되지 않음
  • 기록 유형은 그 시점에 정한 내용을 남긴 문서임
    • 이 때문에 최신 내용으로 고칠 대상이 아님
신뢰도 직접 다시 평가
  • 신뢰도 카드를 읽을 수 있는 구성원 누구나 다시 평가를 요청할 수 있었음
  • 담당자와 제안자만 다시 평가를 요청할 수 있음
    • 평가 중이거나, 마지막 평가 뒤 10초가 지나지 않았거나, 오래된 문서이면 새 평가를 하지 않음
  • 구성원 누구나 반복해서 요청할 수 있었음
    • 이 때문에 평가 비용이 늘어남
알림
  • 알림을 저장하지 않고 화면을 열 때마다 할 일과 승인 상태로 계산했음
  • 알림을 서버에 30일 동안 저장함
    • 읽음 표시도 저장함
  • 알림이 가는 상황은 알림 절의 표와 같음
  • 읽음 상태를 저장하지 않았음
    • 이 때문에 기기를 바꾸면 읽은 알림이 다시 안 읽음으로 보였음
문서 목록
  • 문서 목록이 한 번에 500건까지만 읽었음
    • 이 때문에 500건이 넘으면 나머지 문서가 목록에 보이지 않았음
  • 문서 목록이 쪽마다 그 쪽에 보일 문서만 읽음
  • 500건이 넘는 문서는 목록에 보이지 않았음

11. 개발자가 집중해서 볼 내용

11.1 테이블 변경

대상 바뀌는 칸 쓰는 정책
person role, is_ceo 구성원 역할, 최고 책임자
doc author_needed_since 담당자 지정 필요와 대기 일수
doc deleted_at, deleted_by_id 문서 삭제와 복구
doc freshness_confirmed_at, freshness_confirmed_by_id 최신 정보 확인
doc_proposal taken_over_from_id, taken_over_at 제안자 이어받기
doc_reviewer assigned_at 리뷰 기한 지남
doc_merge bypassed_review, reverted_from_version_id, revert_reason 되돌리기
doc_move 새 테이블 폴더 이동 기록 폴더 이동
doc_access_request 새 테이블 권한 요청 권한 없음 화면
notification 새 테이블 저장되는 알림, 30일 보관 알림
audit_log 새 테이블 변경 기록, 추가만 하고 영구 보관 변경 기록

11.2 서버 규칙과 기능

묶음 바꾸거나 새로 만드는 일
권한 확인
  • canReadSql, canEditSql, mergeBlock에 어드민 예외를 두지 않음
  • canEditSql에서 리뷰어와 공유받은 사람을 뺌
  • 공개범위 변경 권한을 담당자로 바꿈
발행 조건
  • 담당자도 발행함
  • 해결하지 않은 수정 요청 코멘트가 있으면 서버가 발행을 거절함
새 명령
  • 역할 변경, 담당자 변경, 제안자 이어받기, 문서 삭제와 복구
  • 권한 요청, 최신 정보 확인, 되돌리기, 승인 취소
  • 담당자 변경 실행 취소, 알림 읽음 표시 저장
새 조회
  • 운영 관리 구성원 목록, 변경 기록, 알림, 담당자 지정 필요 카드
  • 읽을 수 없는 문서의 존재 여부, 발행본 유무
  • 담당자 변경 화면 목록: 리드 범위, 담당자 지정 필요 필터, 대기 일수
매일 배치
  • 인사 정보 동기화 직후 퇴사자와 휴직자의 리뷰어 해제, 제안자 없음 판단(제안자 칸은 지우지 않고 재직 상태로 판단), 담당자 자동 변경
  • 30일 지난 알림 정리
에이전트
  • 다른 구성원의 제안이 리뷰 중이면 등록을 거절하고 누구의 제안인지 알림
  • 같은 폴더에 같은 이름이 있으면 거절하고 사람에게 물을 말을 함께 돌려줌

11.3 인사 정보에서 받아야 할 값

값 쓰는 정책 확인할 내용
CEO 표시 최고 책임자 인사 정보 API가 CEO 표시를 내려주는지
휴직 상태 휴직자 자동 인계, 리뷰어 해제, 이름 뒤 (휴) 인사 정보 API가 휴직 값을 내려주는지
퇴사 날짜 매일 자동 변경 퇴사가 동기화에 당일 들어오는지
퇴사나 휴직 직전 소속 매일 자동 변경, 담당자 변경 화면 동기화에서 퇴사 처리 전 소속을 SSOT가 저장할 수 있는지
리드 표시 가까운 리드 찾기 조직별 리드를 하나로 정할 수 있는지

11.4 기존 데이터 정리

11.5 반영 순서

순서 내용 먼저 끝나야 하는 일
1 서버와 무관한 화면 변경. 화면 규칙 PR 없음
2 권한과 발행 규칙 열린 제안이 둘 이상인 문서와 같은 이름 문서 정리, 구성원 역할 칸과 변경 기록 테이블
3 구성원 역할, 퇴사와 휴직 자동 해제, 리드 찾기, 최고 책임자 변경 기록 테이블
4 담당자 변경과 매일 자동 변경 3단계
5 알림 저장과 슬랙 다섯 가지 3단계, 4단계
6 삭제와 복구, 권한 요청, 같은 이름 금지, 폴더 이동 3단계, 기존 닫힌 문서 구분
7 최신 정보 확인, 신뢰도 규칙, 되돌리기, 참조 문서 변경 기록, 알림
8 데모 화면을 서버에 연결 2단계부터 7단계
맨 위로