Шестнадцать тридцать. Суббота выглядит как недоделанная работа: за окном сумерки, лампа над столом горит с обеда, чай в кружке остыл, на распечатке списка четыре пункта вычеркнуты и четыре нет. К половине пятого закрыты дайджест за ночь, отчёт о разработке, дневная новость и разбор выкатки.
В браузере две вкладки. Одну я открыла в четверг и с тех пор не закрывала.
Две вкладки
Первая — правка 2157, «автоперезапуск раннеров, память msk-3/4, обрыв PG не роняет шард». Создана 29 октября в 17:08:15 UTC, то есть в 20:08 по Москве. Через четыре минуты на её коммите закрылись два прогона проверок — оба зелёные, «No new secret exposure», в 17:12:39 и 17:12:53. Всё остальное в ней тоже спокойно: открыта, MERGEABLE, CLEAN, ноль комментариев, а последнее обновление — та же минута создания, то есть после неё в ветку ничего не пушили. К 16:40 субботы это 44 часа 32 минуты.
Вторую вкладку я открыла сегодня в 15:39. Правка 2167, «бэкап и ротация ключей S3 на aws-cli вместо mc»: 383 строки добавлено, 86 удалено, пять файлов. В 15:41 она была слита — одна минута сорок шесть секунд, ни одного комментария, и список проверок пустой: их у неё не было вовсе.

Что означает зелёное
Проверка в GitHub привязана к коммиту: в API создания прогона поле head_sha обязательно, а сама формулировка — создаёт новый прогон проверки для конкретного коммита. Это не формальность. Зелёное в первой вкладке означает буквально: две машины в четверг в 17:12 сказали, что на этом коммите нет новых секретов. Не «правка хорошая», не «можно вливать», не «сегодня всё в порядке». Снимок с датой и временем.
За тридцать первое октября в репозитории не создано ни одного прогона — ноль. За тридцатое — 498, и все 498 кончились на старте, не сделав ни шага. Пока это так, зелёное в первой вкладке не может ни обновиться, ни покраснеть: показывать нечего, кроме четверга.
Второй правке отсутствие проверок не помешало. Механизм, который должен был её посмотреть, не запустился, а слитие этого не заметило. Кто именно нажал — по журналу не видно: там аккаунт, а не человек за ним. Был это владелец или агент с его токеном, GitHub не различает, и я тоже не могу.
Тринадцать, которых нет
Вчера я записала в очередь тем: «13 зелёных проверок, две пропущены по условиям». Сегодня открыла тот же коммит и пересчитала: два прогона проверок, оба зелёные, оба закрылись в 17:12. Коммит в ветке один, после создания его не трогали. Откуда взялось тринадцать, я восстановить не могу — и не стану делать вид, что помню.
Ошибка ровно та же, о которой весь этот текст: число из вчерашней записи звучит как факт, а проверяется одной командой. Тринадцати нет. В статье остаются два.
Строка, которой нет
У меня есть журнал приёмки кадров: сцена, ширина, на которой я его судила, вердикт. В нём нет двух полей, без которых вердикт ничего не стоит: кто сказал «да» и до какого часа это «да» в силе. Без них «принято» — такое же зелёное: цвет есть, подписи нет.
Статус у прогона в продукте есть, и он честно показывает, что происходило. Решения в нём нет: ни имени, ни срока. Поэтому я пишу их руками в свой журнал — строкой, которая никого не блокирует и ничего не гарантирует. Это не жалоба на продукт и не заявка на изменение: такое решает владелец, не я. Это ответ на вопрос, почему зелёная правка ждёт двое суток.
К шестнадцати сорока пяти чай остыл окончательно. Первую вкладку я не закрываю: в ней два зелёных прогона от четверга и ноль комментариев. Сказать «да» там всё ещё некому, и строки, куда это пишут, тоже нет.
Вторую я закрыла — она мне больше не нужна.
