Safari Technology Preview 251: подчёркивание текста Urdu. People-first диагностика: карта «cluster → glyph bounds → underline segment → skip-ink mode»; синтетический fixture, независимый контроль, одно обратимое воздействие, stop-line и обезличенный handoff.
Проблема и соседняя ловушка
Прямой ответ на запрос «как проверить геометрию text underline для Urdu в Safari Technology Preview 251» начинается с границы: проверяется только боль «подчёркивание в строке Urdu проходит на неверной высоте или разрывается относительно сформированных глифов» на локальном fixture. Успех заранее определяется так: underline сохраняет согласованную позицию относительно сформированных Urdu glyphs в обоих режимах skip-ink. Нельзя подменять его похожей картинкой, общей скоростью браузера или выводом о стабильном Safari. Отдельная ловушка — font fallback или особенности shaping, ошибочно сведённые к одной CSS-линии. Исход получает один из статусов reproduced, not reproduced, unsupported, environment-blocked, invalid или unknown. Первое наблюдение не считается доказательством, пока контроль и возврат к baseline не подтвердили, что изменилась ровно одна причина.
Официальная запись и её ограничения
Официальная страница WebKit от 26 августа 2026 года относит к Safari Technology Preview 251 следующий change item: исправлен неверный рендеринг text underline для Urdu. Техническая ссылка — 319220@main. Release note и commit подтверждают наличие конкретного изменения в ветке, но не частоту жалоб, спрос, причинность для чужой страницы, результат на данном компьютере или перенос в стабильный выпуск. Публичная ветка MacRumors перепроверена только как community lead. Её текст, реакции и поисковые snippets не используются как фактологическое evidence и не дают права писать о массовости.
Минимизированный набор наблюдений
Fixture: локальная строка с тестовыми Unicode-последовательностями Urdu, фиксированным шрифтом и контрольной baseline-линейкой. До действия без интерпретации записываются кодовые точки, font file/version, direction, underline position/thickness, glyph bounds и screenshot crop. Рабочий артефакт — карта «cluster → glyph bounds → underline segment → skip-ink mode». У каждой строки есть expected, observed, время, версия TP 251 и флаг валидности. Используются только синтетические данные. Запрещено сохранять cookie, IP, Authorization, токены, реальные URLs с query, имена профилей, пользовательские файлы и полные логи. Если нужное поле нельзя получить без персональных или секретных данных, тест останавливается: пробел не заполняют догадкой и не расширяют сбор.
Отрицательный контроль
Контрольная ветка готовится до canary: та же строка без decoration и латинская строка с теми же CSS-параметрами как геометрический контроль. Она проверяет, не объясняется ли симптом общей средой или тестовой обвязкой. Риск «font fallback или особенности shaping, ошибочно сведённые к одной CSS-линии» получает собственную колонку, потому что совпадение внешнего вида не означает совпадение причины. Если control отклоняется вместе с основной веткой, результат invalid и публикационная формулировка не утверждает воспроизведение. Такой контроль не обещает универсальной корректности; он лишь делает конкретный вывод опровержимым и не позволяет замаскировать соседний сбой вторым изменением.
Обратимый тест
Основной шаг: переключить только text-decoration-skip-ink между auto и none, затем вернуть baseline. Сначала фиксируется baseline, затем выполняется только указанное воздействие, после заранее выбранного settle-события повторно снимаются кодовые точки, font file/version, direction, underline position/thickness, glyph bounds и screenshot crop. Далее состояние полностью возвращается и baseline измеряется ещё раз. PASS возможен, когда underline сохраняет согласованную позицию относительно сформированных Urdu glyphs в обоих режимах skip-ink. Production, реальные аккаунты, чужие сайты, VPN-конфиги, маршрутизация и пользовательские данные в процедуру не входят. Если rollback не возвращает исходные признаки, весь прогон помечается invalid независимо от привлекательности результата.
Вердикт без расширения вывода
Финальное решение хранится как карта «cluster → glyph bounds → underline segment → skip-ink mode». Reproduced означает только выполнение условия «underline сохраняет согласованную позицию относительно сформированных Urdu glyphs в обоих режимах skip-ink» на этом стенде; not reproduced не опровергает проблему в других средах. Стоп-линия: остановиться, если шрифт подменён fallback, текст нормализован иначе, масштаб или rendering backend различаются. Для передачи разработчику достаточно минимального fixture, версии, обезличенных значений «кодовые точки, font file/version, direction, underline position/thickness, glyph bounds и screenshot crop», результата контрольной ветки, отметки rollback и ссылки на 319220@main. Статья не обещает индексацию, позиции, спрос, стабильную поддержку или автоматическое исправление; сомнительный либо неполный прогон не должен становиться новым URL.
Материал подготовлен редакцией VOne с помощью ИИ; дата, WebKit Release 251, primary commit 319220@main, техническая граница, контроль, rollback, privacy-stop и роль community lead постатейно проверены 29 августа 2026 года.
Источники и проверка
- WebKit — Release Notes for Safari Technology Preview 251 проверено 2026-08-29
- WebKit commit 319220@main проверено 2026-08-29
Информация актуальна на дату публикации. Правила сервисов, приложений и сетей могут меняться.