К обсуждениям

Safari Technology Preview 251: поиск Resources без дублей

Редакция VOne Технологии

Safari Technology Preview 251: поиск Web Inspector возвращает один resource несколько раз и искажает список совпадений. People-first проверка: реестр дедупликации «resource id → URL → line → result occurrences»; синтетический стенд, опровержимый контроль, один обратимый шаг, stop-line и минимизированный handoff.

Ответ и граница: Web Inspector

Надёжный ответ появляется только после явного baseline и способного опровергнуть гипотезу контроля. Запрос «как проверить дубли результатов searchInResources в Safari Technology Preview 251» относится только к ситуации: поиск Web Inspector возвращает один resource несколько раз и искажает список совпадений. Условие успеха записывается до запуска: каждый resource id появляется один раз, а два реально разных resources не склеиваются. Внешне похожая ошибка сама по себе ничего не доказывает; отдельно проверяется ловушка «два легитимных совпадения в разных строках, ошибочно объявленные дублем одного resource». До опыта определите, что будет считаться invalid и unknown. Это защищает от вывода по отсутствующему API, случайному exception или одновременной смене нескольких условий. Производственный сайт, реальный аккаунт и пользовательские данные исключены.

Что подтверждают Release 251 и 319061@main

Официальные WebKit Release Notes датированы 26 августа 2026 года и для Safari Technology Preview 251 сообщают: исправлена выдача повторных результатов одного resource при searching resources. Строка релиза ведёт к первичной записи 319061@main; её commit title и доступность перепроверены 29 августа. Документы WebKit отвечают на вопрос «что изменено в ветке», но не на вопросы «как часто» и «у кого проявится». Публичные обсуждения используются лишь для обнаружения темы. Технический предел статьи совпадает с формулировкой 319061@main и не расширяется поисковым заголовком.

Стенд и рабочий артефакт 319061

Стенд: локальная страница с двумя разными scripts, одним source map и уникальными синтетическими маркерами. До воздействия без интерпретации запишите: query, resource URL class, resource id, frame id, match line, result index и unique tuple count. Рабочий артефакт — реестр дедупликации «resource id → URL → line → result occurrences». Собирайте только allowlist полей стенда и отметку валидности. Любая потребность в реальном аккаунте, полном логе, адресе, секрете или содержимом пользователя немедленно останавливает эксперимент. Наблюдение не интерпретируется до прохождения control и финального cleanup.

Контроль, который может опровергнуть гипотезу

Control не доказывает универсальность; он проверяет, что стенд способен различить соседнюю причину. Для этой боли используется: два разных resources с одинаковым текстом, которые обязаны остаться двумя результатами. Он проходит тот же порядок запуска, settle-событие и набор полей, что основная ветка. Риск «два легитимных совпадения в разных строках, ошибочно объявленные дублем одного resource» получает отдельный признак. Обе ветки получают одинаковый порядок запуска и сбор. Если отклоняется control, итог invalid; если control недоступен, environment-blocked — выбирать удобную интерпретацию нельзя. Такой дизайн делает тезис опровержимым и не требует доступа к исходным данным пользователя.

Одно обратимое воздействие

Разрешён один шаг: выполнить один поиск уникального маркера в Resources и закрыть инспекторскую сессию. Сначала снимите baseline, затем выполните только указанную операцию, дождитесь заранее выбранного события завершения и повторите поля «query, resource URL class, resource id, frame id, match line, result index и unique tuple count». Один шаг отделён от полного cleanup. Если cleanup не подтверждён или settle не определён, результат нельзя повышать выше unknown/invalid. PASS допустим, когда каждый resource id появляется один раз, а два реально разных resources не склеиваются. Результат не усиливают словами о массовости; production, VPN, маршрутизация, чужие сайты и реальные media остаются вне опыта.

Stop-line, решение и минимальный handoff

Результат может быть reproduced, not reproduced, unsupported, environment-blocked, invalid или unknown. Остановитесь, если страница перезагрузилась между поиском, source map создаёт другой resource, query пустой или frame id изменился. Финальная запись хранит реестр дедупликации «resource id → URL → line → result occurrences», результат контроля, отметку rollback и ссылку на 319061@main. Допустимые итоги: reproduced, not reproduced, unsupported, environment-blocked, invalid и unknown; каждый относится только к этому fixture. Пакет поддержки сокращается до версии, шагов, allowlist наблюдений, результата опровержения и stop-line. Никаких дампов аккаунта, cookie либо секретов. PASS означает только условие «каждый resource id появляется один раз, а два реально разных resources не склеиваются». Материал не обещает индексацию, позиции, поисковый спрос, stable-поддержку или автоматическое исправление.

Материал подготовлен редакцией VOne с помощью ИИ; дата, WebKit Release 251, primary commit 319061@main, техническая граница, независимый контроль, обратимость, privacy-stop и роль community lead постатейно проверены 29 августа 2026 года.

Источники и проверка

Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.

Ответы

0 опубликовано
Ответов пока нет. Вы можете начать обсуждение.

Ваш ответ

Добавьте свой опыт или уточнение по теме.

Вы публикуете как Аноним Аватар отличает разговоры, но не раскрывает личные данные.

Ответ появится сразу. Не публикуйте личные данные, ключи и приватные ссылки.