5.0 KiB
5.0 KiB
Редакторское ревью: октябрь 2027
Пакет переписан как три технические статьи о границах HTTP-соединения: deadline, TLS-сертификат и Trace Context. Исторические slug сохранены; внутренние редакционные статусы из body удалены.
Три содержательных прохода
editorial-2027-10-practice-long-form-interview
- Факты и пример: до — synthetic assertion без HTTP-предмета; после —
allocateTimeoutBudgetс фазами DNS, TLS и чтения, а также граничнымdeadline-exceeded. Причина: runnable-код должен показывать абсолютный бюджет, не изображать интервью или процесс. - Структура и голос: до — рассуждение о сборе evidence; после — symptom и цена retry в начале, таблица фаз, объяснение идемпотентности, ordered diagnostic route и ограничения. Причина: общий timeout нужно разложить до выбора действия.
- Визуал и доступность: до — claim/evidence map; после — схема deadline и фаз с русскими title/desc, alt/caption. Причина: на 375 px видно, что новая фаза получает только остаток.
editorial-2027-10-mechanism-long-form-interview
- Факты и пример: до — контракт утверждения без сертификата; после —
validateCertificateWindowс ISO-временем и SAN, включая mismatch. Причина: «curl работает» нужно разбирать через предметные проверки TLS. - Структура и голос: до — boundary matrix для скрытого источника; после — цепочка trust, срок, hostname и алгоритм, затем безопасный маршрут диагностики без
insecure. Причина: причина ошибки должна быть отделена от обхода проверки. - Визуал и доступность: до — evidence matrix; после — таблица слоёв срока, SAN, цепочки и policy с ясной красной границей. Причина: рисунок объясняет, что шифрование не равно доверию.
editorial-2027-10-field-long-form-interview
- Факты и пример: до — fabricated-record hand-off; после —
parseTraceparentпроверяет четыре поля, длину, lowercase hex и ненулевые id. Причина: пример должен валидировать Trace Context на HTTP-входе. - Структура и голос: до — заметка о speaker/transcript; после — symptom потерянного запроса, proxy boundary, structured logs, ordered diagnostic route и ограничение доверия. Причина: читатель получает способ найти потерянный контекст.
- Визуал и доступность: до — editorial hand-off loop; после —
Клиент → Gateway → Serviceи controlled fallback для плохого header. Причина: связь через proxy стала предметно проверяемой и читаемой на мобильной ширине.
Источники и границы применения
- RFC 9110, июнь 2022 года: HTTP-обмен; не измеряет фазы конкретной библиотеки.
- RFC 8446, август 2018 года: TLS 1.3 handshake; не задаёт local timeout policy.
- RFC 5280, май 2008 года: X.509/PKIX path validation; не заменяет trust store ОС.
- W3C Trace Context Level 1, 23 ноября 2021 года: формат traceparent; не задаёт storage и sampling.
Проверки
node --check scripts/upgrade-2027-10.mjs— PASS.node scripts/upgrade-2027-10.mjs --verify-fixture— PASS, 9/9.npm run audit:draft -- scripts/upgrade-2027-10.mjs— PASS, 5804 / 5532 / 5645 body chars.npm run audit:articles -- editorial-2027-10-practice-long-form-interview editorial-2027-10-mechanism-long-form-interview editorial-2027-10-field-long-form-interview— PASS.xmllint --nooutи SVG safety scan — PASS для трёх существующих assets.- Ручная проверка Sharp 375 px выполнена после общего рендера; текстовые блоки не обрезаны.