11 KiB
P93 — ноябрь 2025: проверка источников
Область draft-пакета
Пакет создаёт только три overlay-статьи: editorial-2025-11-practice-research-method, editorial-2025-11-mechanism-research-method, editorial-2025-11-field-research-method; исполняемый модуль — web/scripts/upgrade-2025-11.mjs. Все записи, версии, подписи, валидаторы, результаты и hand-off — fixed synthetic JavaScript literals в памяти. Модуль не читает файловую систему, сеть, часы, Git, CI, telemetry, production или user data и не производит side effect. Registry, README, Git, очередь, articles.json, app-код, docs/ и чужие незавершённые изменения не затронуты.
Исследование и временная граница
Временная граница материала — 30 ноября 2025. Все ссылки в sourceList ведут к первичным или официальным неизменяемым публикациям и существовали до этой даты.
| Источник | Pin / дата | Подтверждённый факт | Явная граница применения |
|---|---|---|---|
| W3C PROV-DM | W3C Recommendation, 30.04.2013, dated immutable publication | Различает entity и activity. | Это vocabulary происхождения, не автоматическая оценка истинности claim. |
| RFC 9110, §8.8 | RFC 9110, June 2022, immutable RFC | ETag — opaque validator selected representation; Last-Modified участвует в validation и может быть weak. | Validator не является релизной версией и не доказывает продуктовую семантику. |
| W3C VC Data Model 2.0 | W3C Recommendation, 15.05.2025, dated immutable publication | Verification credential не означает evaluation truth encoded claims. | Целостность/авторство объекта не заменяют прямой evidence для вывода. |
Источники использованы только в этих узких пределах. Никакая статья не обещает, что pin, подпись, validator или журнал автоматически делают факт истинным, совместимым либо безопасным для production.
Проход 1 — редактура проблемы, механики, таблиц и языка
Проверены первые два абзаца каждой статьи: в них есть наблюдаемая проблема, цена и действие. Практика строит карточку журнала и порядок проверки; механизм объясняет четыре уровня evidence и статусную модель; поле ведёт hand-off и обновление после нового материала. Общего развёрнутого вступления нет.
| Статья | Самостоятельный вопрос | Свой артефакт | Цена ошибки |
|---|---|---|---|
| practice | Как превратить ссылку в ограниченный claim? | лестница evidence и карточка журнала | решение привязано к изменившейся странице |
| mechanism | Почему версия, validator и подпись не равны semantic fact? | матрица статусов и переходов | неявная предпосылка в архитектурном решении |
| field | Как передать проверку дальше без пересказа? | петля research log и очередь repair | повторный поиск и исправление не той причины |
Тон М8: короткая техническая речь, symptom → cause → check → action; без рекламной риторики и универсальных обещаний. Термины раскрыты контекстом, основной текст не содержит общих оценок вместо наблюдаемых условий.
Вердикт: пройдено.
Проход 2 — факты, временная граница и воспроизводимость
createFixedResearchRecordвозвращает только named fixed literals; произвольный объект получаетstop-unknown-fixed-record.assessFixedResearchRecordотделяет запись с version pin от versionless note, marketing promise и семантического overreach поверх valid signature.createFixedResearchLogсохраняетsourcePin,sourceVersion,locator, observed artifact, scope, status и next action; положительный status означает толькоevidence-ready-for-synthetic-hand-off.compareFixedResearchRecordsостанавливает сравнение, если второй synthetic record не имеет version pin.- Все snippets статей импортируют исключительно public exports и вручную выполнены: положительный record выдаёт
rfc-9110-june-2022иETag: "fixed-v4"; signature overreach даётhold-claim; comparison даётstop-before-comparison.
Фактологический self-check подтверждён первичными источниками: RFC 9110 определяет ETag как opaque validator selected representation; W3C PROV-DM задаёт entity/activity; W3C VC Data Model прямо исключает вывод truth claim из verification. Все references имеют visible version/date в article sourceList.
Вердикт: пройдено.
Проход 3 — release-quality, уникальность, визуал и команды
| Статья | Основной текст без списка источников | Диаграмма | Ключевой visual outcome |
|---|---|---|---|
| practice | 8 128 знаков | evidence ladder | видны пять ступеней и отдельный repair-route |
| mechanism | 9 169 знаков | claim-status matrix | после корректировки нет обрезанного заголовка на 375 px |
| field | 9 150 знаков | research-log loop | читабелен полный цикл question → card → pin → status → hand-off |
Cross-article check по body без блока источников: 0 одинаковых абзацев от 160 знаков и 0 общих последовательностей из 12 слов во всех трёх парах. Проверка повторов показывает, что каждая статья раскрывает тему своим способом, а не делит общий вводный блок.
Команды и результаты:
node --check web/scripts/upgrade-2025-11.mjs— PASS.node web/scripts/upgrade-2025-11.mjs --verify-fixture— PASS, 11/11 assertions.npm run audit:draft -- scripts/upgrade-2025-11.mjs— PASS: 8 128 / 9 169 / 9 150; диапазон 5–15 тыс., table, figure, alt/caption, code, ordered sequence, минимум два source, problem/cost.xmllint --nooutдля трёх SVG — PASS.- Safety scan — PASS: отсутствуют
script,foreignObject,javascript:,data:imageи inline event handlers. - Sharp render всех трёх SVG на 375 px — PASS, визуально просмотрен; матрица была исправлена после первого mobile просмотра.
git diff --check— PASS.
Overlay намеренно не интегрирован, не добавлен в registry, README не менялся, Git-коммита и push нет. Интеграция и production build остаются за независимым редактором.
Независимый выпускной проход — 31.07.2026
Три первоисточника перепроверены на закреплённых датированных публикациях. PROV-DM подтверждает различие entity/activity; RFC 9110 — ETag как opaque validator selected representation; W3C VC Data Model 2.0 прямо отделяет verification от truth encoded claims. В статьи не добавлен ни один claim об автоматической истинности, совместимости или production effect.
При строгой независимой cross-article проверке найдено два общих 12-словных фрагмента между practice и field — они находились в повторённом code snippet. Чтобы правило не имело технических исключений, field переведён на отдельный публичный createFixedResearchLogById; после этого полная проверка HTML-body, включая code, даёт 0 одинаковых абзацев от 160 знаков и 0 общих 12-словных фрагментов. Snippet буквально выполнен, fixture остаётся 11/11. Полевая статья после правки — 9 150 знаков.
Все тексты прочитаны целиком, три SVG повторно отрендерены Sharp на 375 px и читаемы. Финальный выпускной прогон:
node --check scripts/upgrade-2025-11.mjs
PASS
node scripts/upgrade-2025-11.mjs --verify-fixture
PASS fixture: 11/11 assertions
npm run audit:draft -- scripts/upgrade-2025-11.mjs
PASS: 8128 / 9169 / 9150 body chars
npm run audit:articles -- <3 November slugs>
PASS: each article has 1 table, 1 code example and 1 figure
После независимой приёмки overlay подключён в editorial-revisions.mjs после October 2025. Журнал и все examples остаются fixed in-memory models: они не создают сетевого исследования, не проверяют настоящие подписи и не принимают production решение.