Files
2026-07-31 22:26:56 +03:00

7.8 KiB

Январь 2027 — редакторское ревью после переписывания

Объём партии

Переписаны три самостоятельные технические статьи с сохранением stable slug:

  • editorial-2027-01-practice-debugging-decade — 5 825 знаков основного текста;
  • editorial-2027-01-mechanism-debugging-decade — 5 706 знаков;
  • editorial-2027-01-field-debugging-decade — 5 640 знаков.

Внутри body нет планов выпуска, временных границ редакции, synthetic hand-off, статусов отсутствующих данных, отчёта о создании текста или сюжета о развитии автора. Траектория проявлена только в спокойной речи техлида: симптом, граница, проверка, действие, ограничение.

Проход 1 — факты, техника, пример и источники

Проверялись смысл HTTP/trace/log, соответствие примеров заявленному предмету, версии и границы официальных источников.

  • Practice. До: статья вела от абстрактной карты диагностики к передаче вопроса. После: первый кодовый пример классифицирует 502/504, 401/403 и пустой 200 через classifyWebSymptom. Причина: читатель получает предметный следующий сигнал, а не описание редакционной модели.
  • Mechanism. До: связь trace и log описывалась как фиксированный набор полей. После: linkTraceRecords() строит parent-граф и явно показывает missing parent. Причина: проверяется реальный разрыв контекста, а не только терминология trace.
  • Field. До: полевой текст заканчивался передачей неполной карточки. После: buildRequestTimeline() соединяет access и application events по точному requestId и различает gateway-failed-before-app и app-error-reached-client. Причина: пример отвечает на вопрос разбора 502.

Источники сверены точечными запросами и применены с границами:

  • W3C Trace Context — Recommendation, 23 November 2021; формат traceparent и передача контекста; не доказывает полноту цепочки или причинность.
  • RFC 5424 — Standards Track, March 2009; structured data и границы syslog-сообщения; не гарантирует доставку журнала приложения.
  • RFC 9110 — Internet Standard, June 2022; семантика HTTP 502/504/401/403; не описывает конкретную топологию сервиса.
  • NIST SP 800-92 — September 2006; управление источником, временем и содержимым журналов; не является evidence конкретной системы.

Проход 2 — структура, голос, плотность и мета-лексика

  • Practice. До: вступление начиналось с общего разговора о диагностике. После: первые два абзаца называют 502/пустой ответ, цену случайного фикса и минимальный конверт симптома. Причина: читатель сразу понимает, что именно проверять.
  • Mechanism. До: лог, span и metric смешивались в одном объяснении. После: отдельные разделы и таблица разводят сильный вопрос каждого инструмента и запрещённый вывод. Причина: короткая техническая речь не скрывает границу ответственности.
  • Field. До: один общий совет «посмотреть логи» повторялся в нескольких местах. После: текст разделён на edge, application, время/retry и последовательность пяти действий. Причина: каждый абзац добавляет наблюдение или решение.

Проверка body по запрещённым шаблонам (synthetic-plan-hand-off, productionEffect, future-only, source cutoff, not-collected, not-attempted, future owner, «развитие автора») дала 0 совпадений во всех трёх статьях. Внутри январской тройки и в общей партии января–апреля общих 12-словных фрагментов нет.

Проход 3 — визуал, мобильная читаемость, доступность и повторы

  • Practice. До: временная шкала содержала редакционные статусы. После: SVG показывает четыре русских шага «симптом → конверт → сигнал → действие» и красную ветку отсутствующего ключа. Причина: рисунок объясняет маршрут диагностики.
  • Mechanism. До: схема показывала hand-off. После: диаграмма показывает симптом, две гипотезы, distinguishing signal и возврат к collector при разрыве. Причина: visual соответствует коду parent/request-id.
  • Field. До: таблица и рисунок утверждали передачу несуществующего отчёта. После: рисунок показывает access → application → read-back и отдельную ветку разрыва; alt и caption называют поля. Причина: убрана мета-сюжетность и сохранена доступность.

Все три SVG имеют русские <title>/<desc>, содержательный alt, подпись, только локальные формы и проходят XML/safety scan. Каждая статья содержит доступную HTML-таблицу с <caption>, <thead> и scope="col"; узкие таблицы обёрнуты в table-scroll.

Проверки

node --check scripts/upgrade-2027-01.mjs — PASS
node scripts/upgrade-2027-01.mjs --verify-fixture — PASS, 4/4
npm run audit:draft -- scripts/upgrade-2027-01.mjs — PASS, 3/3
локальные примеры module exports — PASS, 12/12 для всей партии
xmllint --noout для 3 SVG — PASS
SVG safety scan (script, foreignObject, javascript, data:image, event handlers) — PASS
Sharp resize width=375 для 3 SVG — PASS; визуально проверены заголовки, стрелки, таблица и красные ветки
strict cross-article scan января–апреля: 12 статей, 66 сравнений, sources excluded, code included — collisions: []

Git, registry, README, articles.json, приложение и файлы других месяцев не изменялись.