Перейти к содержимому

Сравнение

Чем проверяется обещание

Каждый способ здесь что-нибудь обещает. Эта ось спрашивает о другом: что можно открыть, запустить или прочитать, чтобы узнать, держится ли обещание сегодня, и по чему будет видно, что оно перестало держаться.
3807
автоматических проверок за продуктом
29
замеров отпечатка в самопроверке программы
12
значений читает бесплатная проверка в браузере

Обещание это ещё не доказательство

Написать утверждение дёшево, а проверить его дорого. Способы различает то, что покупатель может открыть, запустить или прочитать, не принимая слов на веру.

Четыре вида доказательства

У доказательств есть степени, и различить их легко, как только они названы. Четыре ниже идут от того, что напечатает любой, к тому, что нельзя сломать тихо.

Степень решает, кому доказательство пригодится. Стенд, роняющий сборку, защищает и того читателя, который никогда не откроет ни одного файла.

  • Предложение

    Написано продавцом, не проверено никем, меняется молча.

  • Открытый исходник

    Прочтёт любой, кто готов читать, а таких немного.

  • Повторяемый замер

    Страница показывает, что отвечает ваш браузер на вашей машине.

  • Стенд, роняющий сборку

    Поведение уехало, и прогон краснеет до всякой отгрузки.

Чем проверяется каждый способ

Пустая клетка значит, что у способа такой строки нет, а не что способ плох. Средство, ничего не обещавшее, ничего и не должно доказывать.

Пропускают обычно четвёртую колонку. Обещание, поломку которого некому увидеть, тихо перестаёт быть правдой.

СпособГде живёт обещаниеЧто можно открытьПо чему видно поломкуПроверяется до оплаты
Обычный браузер как естьСобственный открытый исходникОкно разработчика на любой страницеПлатить нечего
Режим инкогнитоСправка самого браузераДва окна рядомОба окна отвечают как одна машинаПлатить нечего
Отдельные профили самого браузераСправка самого браузераДва профиля рядомТе же шрифты, та же видеокарта, тот же адресПлатить нечего
Расширение, подменяющее значенияЗапись в магазине расширенийСтраница проверки в том же браузереСчитыватель называет одну видеокарту, рисует другаяСтавится и пробуется
VPNСтраница поставщикаЛюбая страница, показывающая адресАдрес уехал, а часы осталисьВидно при подключении
Виртуальная машина на аккаунтДокументация системыВесь гость сверху донизуГость и хозяин отвечают одинаковоСобирается своими руками
Отдельное железо на аккаунтСамо устройствоПодменять нечего, значит нечему и съехатьТолько покупкой
Браузер с правкой самого движкаСтрока реестра на обещание, с файлом и стендомПроверка здесь и самопроверка в программеСтенд краснеет, приёмка выходит ненулевым кодомДва профиля на бесплатном тарифе

Что можно открыть прямо сейчас

Три из четырёх ниже не требуют ни установки, ни учётной записи.

Ни одна из них не отправляет ваши показания наружу. Проверка на этом сайте читает значения в вашем браузере и там же их оставляет.

  • Проверка отпечатка

    12 значений, прочитанных в вашем браузере, и ни одного запроса наружу.

  • Проверка утечек

    Что уходит мимо прокси, прочитанное на вашей связи.

  • Самопроверка в программе

    29 замеров внутри профиля, без обращений за пределы страницы.

  • Реестр обещаний

    Строка на обещание: что обещано, какой файл, какой стенд.

Состояний у приёмки три

«Прошло или не прошло» выглядит как вся история, но ею не является. Третье состояние нужно для прогона, где ничего не провалилось, а решающую сверку пропустили.

Выходит оно тем же ненулевым кодом, что и провал. Приёмка, зовущая доказанным то, чего не измерила, не стоит ничего.

  • Принято

    Всё прошло, и два профиля сверены друг с другом.

  • Провал

    Что-то отработало и вернулось неверным.

  • Не доказано

    Ничего не упало, а сверку, показывающую живость правок, пропустили.

Опись умений снимается с дерева

Движок приезжает со списком того, что умеет, и по этому списку программа выбирает доводы запуска. Объявить умение, которого в сборке нет, хуже, чем не объявить ничего: поля тогда ответят хозяйскими значениями.

Поэтому опись снимается с дерева исходников, а не копируется из кода. На каждое умение читается один файл и ищется один признак, и умение без признака в опись не попадает.

Чего это сравнение не утверждает

  • Оно не утверждает, что чужие способы нечем проверить. У них доказательство другого вида, а чужих исходников мы не читали и большего сказать не можем.
  • Открытый файл не делает утверждение верным. Он делает его проверяемым, а проверить всё равно должен кто-то живой.
  • Самопроверка идёт внутри профиля этой программы, а не на площадке. Площадка читает больше и своего списка нигде не публикует.

Где это можно увидеть самому

Каждая строка ниже это файл, который можно открыть, и стенд, который можно запустить.

У приговора приёмки три состояния, и третье выходит ненулевым кодом
engine/scripts/приговор-приёмки.js · apps/desktop/test/приговор-приёмки.js
Замеренные числа пересчёт пишет в один файл, а стенд проверяет, что страница читает их оттуда
apps/web/scripts/сосчитать-проверки.js · apps/web/measured.json · apps/web/test/числа-не-вписаны-рукой.js
Опись умений снимается с дерева исходников по одному признаку на умение
engine/scripts/опись-умений.js · apps/desktop/test/опись-умений-снимается.js
Самопроверка отказывается мерить, если защиту для пробы не удалось собрать
apps/desktop/src/main/main.js · apps/desktop/test/fp-audit.js

Вопросы

Чем реестр отличается от списка возможностей?
Список возможностей говорит, что есть. Строка реестра говорит, что обещано, какой файл это делает и какой стенд краснеет, когда делать перестал.
Почему пройденных проверок бывает мало?
Проверка, которую точно так же пройдёт движок без единой правки, о правках не доказывает ничего. Доказательство это сверка двух профилей, показания которых обязаны разойтись.
Отправляет ли бесплатная проверка мои показания?
Нет. Она читает значения в вашем браузере и показывает их вам, и со страницы ничего не уходит.
Можно ли проверить всё это до оплаты?
Да. Проверки на сайте не требуют учётной записи, а бесплатный тариф несёт два профиля на том же движке, на котором идут платные.

Проверьте утверждение раньше продукта

Проверка читает 12 значений в вашем браузере и никуда их не отправляет.