Files
huncode 195477c0e4
Build and deploy / deploy (push) Successful in 20s
revise September 2025 engineering interview articles
2026-07-31 18:24:57 +03:00

8.2 KiB
Raw Permalink Blame History

P91 · Сентябрь 2025 · Инженерное интервью

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

  • Прочитан web/scripts/upgrade-2025-09.mjs. Все role cards, work samples, observations, interpretations и review records — frozen fixed synthetic JavaScript literals. Модуль не читает и не пишет файлы, не использует сеть, PII, аудио, clock, telemetry, Git, CI или production side effect. Положительная ветка выдаёт только request-missing-evidence-only; она не создаёт score, ranking, запись о человеке или hiring outcome.
  • Проверены negative paths fixture: исключение памяти на термин из rubric, interpretation без observation, personal outcome и реальный evidence останавливают hand-off. node scripts/upgrade-2025-09.mjs --verify-fixture проходит 11/11 assertions.
  • Источники исследованы как ограниченный контекст метода, а не как подтверждение результата. Датированный PDF OPM Structured Interviews — A Practical Guide выпущен в September 2008 и описывает связь задач, компетенций, вопросов, общих шкал и индивидуального review. Публичный OPM Structured Interview Example показывает связь вопроса с benchmark-признаками. OPM Writing Samples Summary описывает типичность рабочей пробы и одинаковые условия review. Для выпуска все три PDF закреплены immutable Internet Archive captures 2013–2014 годов; у каждого источника в статье видны version/date и boundary.
  • Фактический вывод пакета уже, чем у источников: OPM не используется как обещание качества, fairness, legal/HR policy или результата другой организации. Схема observation → interpretation → hand-off — авторская synthetic инженерная модель; она не доказывает валидность процесса вне fixed fixture.

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

  • Прочитаны все три тела без списка источников. Первые два абзаца каждого называют symptom и цену ошибки. Практика отвечает на вопрос о role rubric и рабочей пробе; механизм — о разделении слоёв записи; полевой текст — о калибровке reviewer-ов и журнале расхождений. У каждого свой пример, таблица, figure, ordered sequence, ограничение и следующий шаг.
  • Уровень автора — M8: спокойная прагматичная техническая речь строится как «симптом → причина → проверка → действие». Термины раскрыты в месте использования: role rubric, work sample, observation, interpretation, evidence boundary, hand-off и calibration. Убраны маркетинговые формулы, вымышленные вакансии, результаты найма, цифры без метода и личностные характеристики.
  • Body counts после удаления источников и HTML: practice — 8 250, mechanism — 8 435, field — 8 161 знак. Все значения лежат в целевом диапазоне 8–10 тыс. и в обязательном диапазоне 5–15 тыс.
  • Техническая cross-article проверка исключила source lists, HTML и кодовые элементы. Во всех трёх попарных сравнениях: 0 одинаковых предложений длиной от 160 знаков и 0 общих последовательностей из 12 слов. Общий запрет на реальную оценку не растянут общим блоком: граница описана разными самостоятельными абзацами с разными техническими последствиями.

Проход 3 — визуал, fixture и выпускной контроль

  • Пройдены node --check scripts/upgrade-2025-09.mjs, fixture 11/11 и npm run audit:draft -- scripts/upgrade-2025-09.mjs. Аудит подтверждает body counts, figures с осмысленным alt и caption, таблицы, code examples, ordered sequences и внешние HTTPS sources для всех трёх slugs.
  • Три SVG прошли xmllint --noout и SVG safety scan: нет script, foreignObject, javascript:, data:image или inline event handlers. Sharp-рендеры на ширине 375 px открыты вручную: rubric/work-sample сохраняет читаемую последовательность трёх блоков; calibration matrix отделяет допустимое от stop-сигнала; evidence loop показывает возврат неизвестного в следующий запрос и явное отсутствие personal outcome.
  • Пакет намеренно не подключён к registry, README, очереди, articles.json, app-страницам, docs/ или Git. Для публикации требуется отдельная независимая приёмка главным редактором.

Независимый выпускной проход — 31.07.2026

При приёмке текущие OPM URL ответили HTTP 403 вместо PDF. Это не позволило считать live URL проверенным источником, поэтому source list заменён на три точных immutable Internet Archive PDF captures: guide 2013-06-25T14:25:25Z, structured-interview example 2013-02-27T00:54:26Z, writing-samples summary 2014-03-27T03:42:49Z. Сами captures прочитаны через PDF text extraction: guide подтверждает издание September 2008, job analysis, questions, common rating scales и individual ratings; example — question и rating scale; summary — типичную work sample задачу и standardized conditions. Ни один claim не расширен до HR/legal/hiring policy.

Также при буквальном запуске mechanism example найден лишний stop reason: fixture сохранял unrelated review с отсутствующей второй interpretation. Negative case сужен до одного review, после чего snippet из статьи вернул ровно ['interpretation-not-traceable']. Practice возвращает только synthetic request-missing-evidence-only; field возвращает stop-and-repair-boundary для personal outcome.

Три статьи прочитаны целиком, а попарная проверка основного текста дала 0 одинаковых абзацев от 160 знаков и 0 общих 12-словных фрагментов. SVG повторно отрендерены Sharp на 375 px: rubric/work sample, calibration matrix и evidence loop остаются читаемыми.

node --check scripts/upgrade-2025-09.mjs
PASS

node scripts/upgrade-2025-09.mjs --verify-fixture
PASS fixture: 11/11 assertions

npm run audit:draft -- scripts/upgrade-2025-09.mjs
PASS: 8284 / 8507 / 8218 body chars

npm run audit:articles -- <3 September slugs>
PASS: each article has 1 table, 1 code example and 1 figure

После приёмки overlay подключён в editorial-revisions.mjs после August 2025. Fixed synthetic boundary и запрет на score, ranking, real-person record или hiring outcome сохраняются без исключений.