십사 영업일은 열흘을 약속한 제4.2조와 충돌합니다. 하나로 정해야 합니다 — 저는 열흘을 유지하고 부속서 B를 조정하는 쪽입니다.
Qualified Notes on Papers
모든 댓글이 닿습니다.
모든 리뷰가 끝납니다.
줄 단위로 정확한 문서 리뷰 — 아무것도 미해결로 남지 않았을 때 비로소 끝납니다.
제목을 둘러싼 워크플로 장면: 하이라이트된 구절과 고정된 주석이 있는 렌더링된 문서, 리뷰어의 댓글 말풍선, 주석이 다시 고정되는 버전 전환, 수락된 결정, 그리고 미해결 주석 0의 최종 확정 카드 — 하나의 흐르는 선으로 이어지고, 그 길에 리뷰어들의 아바타가 함께합니다.
여러분을 붙잡는 그 워크플로, 이미 잘 알고 계실 겁니다.
문서 리뷰는 대개 도구와 도구 사이의 틈에서 일어납니다 — 그리고 그 틈마다 댓글 하나, 버전 하나, 혹은 오후 하나를 잃습니다.
-
qnop 없이: 문서가 메일 첨부파일로 나갑니다.
리뷰어 다섯, 사본 다섯, 누군가 손으로 합쳐야 하는 댓글 다섯 벌.
qnop 과 함께: 문서 하나, 리뷰 하나, 모든 리뷰어가 같은 곳에.
-
qnop 없이: 피드백이 “4쪽 둘째 문단 셋째 줄” 형태로 도착합니다.
고치는 사람은 고치는 것보다 그 구절을 찾는 데 더 오래 걸립니다.
qnop 과 함께: 주석은 의도한 바로 그 줄과 영역에 고정됩니다.
-
qnop 없이: 새 버전이 나오면 이전 버전의 댓글이 모두 갈 곳을 잃습니다.
그래서 안전한 선택은 리뷰가 끝날 때까지 문서를 업데이트하지 않는 것이 됩니다.
qnop 과 함께: 새 버전은 기존 주석을 버리는 대신 다시 고정합니다.
-
qnop 없이: 리뷰가 정말 끝났는지 아무도 말할 수 없습니다.
“끝났다”는 건 누군가 스레드에 답을 멈췄다는 뜻이지, 일이 마무리됐다는 뜻이 아닙니다.
qnop 과 함께: 미해결 주석이 0일 때에만 리뷰를 최종 확정할 수 있습니다.
중요한 곳엔 정밀함을, 아픈 곳엔 구조를.
세 가지가 무거운 일을 해냅니다: 정확한 고정, 자리를 지키는 논의, 그리고 대화를 살려 두는 버전 관리.
페이지가 아니라 줄을 표시하세요.
렌더링된 PDF의 정확한 줄과 영역을 선택하고 Markdown 스레드로 댓글을 남기세요. 다층 앵커가 인용문·위치·레이아웃을 저장하므로, 주석은 오늘 우연히 거기 있는 좌표가 아니라 의도한 내용을 계속 가리킵니다.
- 줄·영역 단위의 정확한 선택
- 리액션이 있는 Markdown 댓글
- 문서와 논의 사이 바로 이동
논의는 자리를 지킵니다.
모든 주석은 자기만의 스레드를 가집니다: 답글, 리액션, 그리고 의미 있는 상태. 미해결, 논의됨, 그다음 수락 또는 거절 — 결정은 누군가의 받은편지함이 아니라 그 결정이 내려진 구절 위에 남습니다.
- 주석마다 독립된 답글 스레드
- 명시적 결정으로서의 수락/거절
- 선택적 리뷰어 익명화
새 버전이 대화를 이어받습니다.
내용 변경은 불변의 새 버전을 만듭니다 — 이전 버전은 결코 수정되지 않습니다. 기존 주석은 퍼지 매칭으로 새 버전에 다시 고정되고, 버전 간 diff 가 무엇이 어떻게 움직였는지 정확히 보여줍니다.
- 불변으로 완전히 보존되는 버전 이력
- 버전을 넘나드는 퍼지 재고정
- 비교 화면을 위한 버전 간 diff
끝났다고 스스로 말해 줄 수 있는 리뷰.
qnop 은 리뷰를 지켜 달라고 부탁하는 관례가 아니라 명시적 상태 기계로 모델링합니다. 남은 일이 있는 한 최종 상태에는 도달할 수 없습니다.
-
미해결
주석이 구절 위에 놓이고, 답해야 할 사람에게 귀속됩니다.
-
논의됨
스레드가 진행됩니다: 답글, 리액션, 결정에 필요한 맥락.
-
수락 / 거절
결정은 주석 자체에 기록되고 감사 로그에 남습니다.
-
최종 확정
미해결 주석 0일 때에만 도달할 수 있습니다. 무엇도 조용히 목록에서 사라지지 않습니다.
리뷰를 스포츠처럼
리뷰 처리량이 드디어 보입니다.
리뷰는 아무도 일정에 넣지 않는 일입니다. qnop 은 그 노력을 읽을 수 있게 만듭니다: 스트릭, 스코어보드, 업적, 플레이어 카드 프로필이 리뷰를 끝내는 일을 부담이 아닌 습관으로 바꿉니다.
-
플레이어 카드
누군가 리뷰에 실제로 무엇을 기여했는지 보여주는 프로필.
-
스트릭과 미션
일이 이미 있는 대시보드 위에서 눈에 보이는 추진력.
-
팀 티어
팀별 진행도와 리더십 랭크. 실제 리뷰 활동으로 얻습니다.
문서는 여러분의 통제 아래 머뭅니다.
qnop 은 셀프 호스팅을 최우선으로 설계되었습니다: REST API 와 내장 웹 UI 를 실행하는 컨테이너 하나, PostgreSQL, 그리고 임의의 S3 호환 오브젝트 스토리지 — 전부 여러분 자신의 인프라 위에서.
- qnop API + 웹 UI
- PostgreSQL 관계형 데이터
- S3 호환 오브젝트 스토리지 문서
여러분의 인프라
안전하지 않은 기본값 없음
필수 시크릿이 없거나 자리표시자 그대로면 서버는 즉시 기동을 거부합니다. 잊혀질 “일단 되니까” 설정은 존재하지 않습니다.
엔터프라이즈 로그인
이메일 인증이 있는 로컬 계정 또는 OIDC 싱글 사인온. 순환 리프레시 토큰의 JWT 세션과 속도 제한이 걸린 인증 엔드포인트.
기본으로 책임 추적
모든 관련 동작이 감사 로그에 남고, 바로 이를 위해 존재하는 전용 감사자 역할이 열람할 수 있습니다.
현실에 맞는 역할
전역 관리자·구성원·감사자 역할에 팀별 리드까지 — 프로세스가 요구하면 리뷰어를 익명화한 리뷰도 가능합니다.