Четырнадцать рабочих дней противоречат п. 4.2, где обещаны десять. Нужно выбрать что-то одно — я бы оставила десять и поправила Приложение B.
Qualified Notes on Papers
Комментарий точно в цель.
Ревью точно до конца.
Проверка документов с точностью до строки — она завершена только тогда, когда не осталось ничего открытого.
Сцена рабочего процесса вокруг заголовка: отрисованный документ с выделенным фрагментом и закреплённой аннотацией, пузырёк комментария рецензента, переход версии с повторной привязкой аннотаций, принятое решение и карточка завершения с нулём открытых аннотаций — соединённые одной плавной линией, вдоль которой идут аватары рецензентов.
Этот процесс, в котором вы застряли, вам хорошо знаком.
Проверка документов обычно происходит в зазорах между инструментами — и каждый зазор стоит комментария, версии или целого вечера.
-
Без qnop: Документ уходит вложением в письме.
Пять рецензентов, пять копий, пять наборов комментариев, которые кому-то придётся сводить вручную.
С qnop: Один документ, одно ревью, все рецензенты в одном месте.
-
Без qnop: Отзыв приходит в виде «страница 4, второй абзац, третья строка».
Тот, кто вносит правку, дольше ищет фрагмент, чем меняет его.
С qnop: Аннотации привязаны ровно к тем строкам и областям, которые имеются в виду.
-
Без qnop: Новая версия оставляет все комментарии к старой без привязки.
Поэтому надёжнее всего не обновлять документ, пока ревью не закончится.
С qnop: Новые версии заново привязывают существующие аннотации, а не отбрасывают их.
-
Без qnop: Никто не может сказать, закончено ли ревью на самом деле.
«Закончено» означает, что кто-то перестал отвечать в ветке, а не что работа завершена.
С qnop: Ревью можно завершить только при нуле открытых аннотаций.
Точность там, где важно. Структура там, где больно.
Основную работу делают три вещи: точная привязка, обсуждение, которое остаётся на месте, и версии, сохраняющие разговор живым.
Отмечайте строку, а не страницу.
Выделяйте точные строки и области отрисованного PDF и комментируйте в ветках на Markdown. Многослойная привязка хранит цитату, позицию и вёрстку — поэтому аннотация продолжает указывать на то, что имелось в виду, а не на координату, которая сегодня случайно там оказалась.
- Точное выделение строк и областей
- Комментарии на Markdown с реакциями
- Мгновенный переход между документом и обсуждением
Обсуждение остаётся на месте.
У каждой аннотации своя ветка: ответы, реакции и статус, который что-то значит. Открыта, обсуждена, затем принята или отклонена — решение живёт на том фрагменте, о котором шла речь, а не в чьей-то почте.
- Ветки ответов у каждой аннотации
- Принять или отклонить — явное решение
- Опциональная анонимизация рецензентов
Новая версия сохраняет разговор.
Изменения содержимого создают новую неизменяемую версию — старые никогда не переписываются. Существующие аннотации заново привязываются к новой версии нечётким сопоставлением, а диф между версиями точно показывает, что сдвинулось.
- Неизменяемая, полностью сохраняемая история версий
- Нечёткая повторная привязка между версиями
- Диф между версиями для режима сравнения
Ревью, которое само скажет, что оно закончено.
qnop моделирует ревью как явный конечный автомат, а не как договорённость, которую просят соблюдать. Финальное состояние недостижимо, пока остаётся незакрытая работа.
-
Открыта
Аннотация ставится на фрагмент и принадлежит тому, кто должен на неё ответить.
-
Обсуждена
Ветка движется: ответы, реакции и контекст, необходимый для решения.
-
Принята / Отклонена
Решение фиксируется на самой аннотации и попадает в журнал аудита.
-
Завершено
Достижимо только при нуле открытых аннотаций. Ничто тихо не выпадает из списка.
Ревью как спорт
Темп ревью наконец-то видно.
Ревью — это работа, которую никто не ставит в календарь. qnop делает усилия читаемыми: серии, таблицы результатов, достижения и карточки игроков превращают завершение ревью в привычку, а не в повинность.
-
Карточки игроков
Профиль, который показывает, что человек действительно внёс в ревью.
-
Серии и миссии
Видимый разгон — на той же панели, где уже идёт работа.
-
Командные уровни
Прогресс по командам и ранги лидеров, заработанные реальной активностью в ревью.
Ваши документы остаются под вашим контролем.
qnop спроектирован в первую очередь для self-hosted: один контейнер с REST API и встроенным веб-интерфейсом, PostgreSQL и любое S3-совместимое объектное хранилище — на вашей собственной инфраструктуре.
- qnop API + веб-интерфейс
- PostgreSQL реляционные данные
- S3-совместимое объектное хранилище документы
ваша инфраструктура
Никаких небезопасных значений по умолчанию
Сервер сразу отказывается стартовать, если обязательный секрет отсутствует или остался заглушкой. Конфигурации «пока и так сойдёт», о которой забудут, не существует.
Корпоративный вход
Локальные учётные записи с подтверждением по почте или единый вход OIDC. JWT-сессии с ротацией refresh-токенов и ограничение частоты запросов на эндпоинтах аутентификации.
Подотчётность по умолчанию
Каждое значимое действие попадает в журнал аудита, доступный выделенной роли аудитора, которая существует ровно для этого.
Роли, отражающие реальность
Глобальные роли администратора, участника и аудитора плюс лиды команд — а ревью при необходимости может идти с анонимизированными рецензентами.
Закройте ревью. На этот раз по-настоящему.
Self-hosted, точность до строки — и завершено тогда, когда оно само это говорит.