Методика
Заявление
Выбранные вами файлы обрабатываются локально в этом браузере и не выгружаются FileSlimmer. Это одно конкретное, проверяемое утверждение. На этой странице объясняется, как оно остаётся верным и как вы можете убедиться в этом, не полагаясь на само это предложение.
Как проверить это самостоятельно
- Откройте инструменты разработчика в браузере и перейдите на вкладку «Сеть».
- Загрузите страницу инструмента и дождитесь окончания загрузки. Вы увидите запросы к HTML, CSS, JavaScript и — для некоторых инструментов — к модулю WebAssembly или модели ИИ. Все они приходят с этого домена.
- Очистите журнал сети.
- Выберите файл и запустите инструмент.
- Следите за журналом. Пока файл обрабатывается, ни один запрос не отправляется.
Отключение сетевого соединения после загрузки страницы — более грубый вариант той же проверки: инструменты продолжают работать.
Как это обеспечивается при сборке
Четыре независимых механизма, каждый из которых не выдаёт предупреждение, а обрушивает сборку:
- Сканирование исходного кода. Каждый файл, который может соприкасаться с вашими байтами, проверяется на
fetch,XMLHttpRequest,WebSocket,EventSource,WebTransport,sendBeaconиFormData. Одно-единственное непрокомментированное вхождение останавливает сборку. Единственное допустимое исключение — загрузка движка или модели с того же источника, происходящая до начала обработки; каждая такая загрузка сопровождается письменным обоснованием в исходном коде. - Аудит самостоятельного размещения. Всё дерево исходного кода и собранный результат проверяются на наличие сторонних хостов. Ни библиотека, ни шрифт, ни модель, ни двоичный файл WebAssembly не загружаются с CDN, поэтому сторонних участников в пути запроса нет изначально.
- Политика безопасности контента. Развёрнутый заголовок
Content-Security-Policyустанавливаетconnect-src 'self'. Даже если бы код попытался выполнить исходящий запрос, браузер бы его отклонил. - Блокировка во время выполнения. Пока задача обработки активна, собственные сетевые примитивы страницы перехватываются и отклоняют вызовы. Именно это поведение проверяет автоматический браузерный тест.
Чего мы сознательно не обещаем
- Мы не обещаем, что файл достигнет точного размера. Сжатие зависит от содержимого. Когда целевой размер недостижим без выхода за нижнюю границу качества, FileSlimmer сообщает об этом и возвращает лучший достигнутый результат.
- Мы не обещаем, что каждый файл обработается на каждом устройстве. Память браузера конечна, и большой файл на телефоне может быть отклонён, прежде чем он успеет уронить вкладку. Ограничения устройства применяются до того, как ваш файл будет прочитан, а не после.
- Мы не обещаем определённых показателей производительности. Lighthouse и Core Web Vitals зависят от устройства и сети.
- Мы ничего не обещаем относительно ваших расширений, вашей операционной системы и вашей сети. Смотрите заявление о конфиденциальности.
Разрушающие операции помечаются
Некоторые операции по своей природе теряют информацию. Сжатие PDF с растеризацией удаляет доступный для поиска текст, ссылки, формы, аннотации, слои, структуру доступности и цифровые подписи. Редактирование подписанного PDF делает его подпись недействительной. Удаление метаданных не удаляет информацию, видимую на самом изображении. FileSlimmer предупреждает перед каждой из этих операций, а не после.
Открытый исходный код
FileSlimmer построен на компонентах с открытым исходным кодом. Их лицензии и репозитории исходного кода перечислены на странице уведомлений об открытом ПО, включая предложение о перекомпоновке для компонентов под LGPL.
Этот документ опубликован компанией ZENIT GROUP S.A.S., Кали, Валье-дель-Каука, Колумбия.