Валидатор путей плана
Проверка существования файлов/скриптов/путей, упомянутых в выводе /dr-plan — выявляет отсутствующие или устаревшие инструменты и файловые ссылки до того, как они дойдут до /dr-do.
Обзор
План реализации часто называет конкретные пути к файлам, скрипты, инструменты и директории как цели правок, механизмы отката или подтверждающие доказательства. Если план составлен по памяти или из устаревшей рефлексии, часть ссылок может указывать на пути, переименованные, перенесённые или удалённые с момента формирования этой памяти. План, построенный на фантомном пути, обнаруживает дефект только на этапе реализации /dr-do — после того как потрачен целый этап пайплайна — и вынуждает делать повторное планирование в середине сборки. Этот Reference-скилл даёт детерминированный контракт проверки существования для путевых ссылок, которые несёт вывод /dr-plan. Это путевой аналог уже предписанной в dr-plan § 6.5 проверки существования символов: символьная проверка ищет в коде названные функции/флаги/переменные окружения; путевая проверка проверяет файловую систему (и git-индекс) на названный файл/скрипт/директорию, дополнительно помечая пути, которые существуют, но устарели.
Когда использовать
Загружайте этот скилл, когда вывод /dr-plan (или план-подобный раздел PRD) называет путь к файлу как цель правки/чтения/отката, скрипт или инструмент, вызываемый шагом реализации или строкой валидации, директорию как назначение или корень сканирования, или путь-доказательство в стратегии отката, стратегии тестирования или чеклисте валидации. НЕ применяется к чисто концептуальным планам без конкретных файловых ссылок или к символьным ссылкам, уже покрытым dr-plan § 6.5.
Контракт
Для каждой путевой ссылки в плане применяется детерминированная лестница — без суждений LLM, без фабрикации:
- Сбор путевых ссылок. Извлекаются токены со слэшем в бэктиках, кодовых блоках или командах строк валидации. Дедупликация. Всегда квотировать и завершать разбор опций через
--перед передачей в shell-инструмент (гигиена недоверенного ввода). - Проверка существования. Различаем git-отслеживаемые и не-git пути. Внутри рабочего дерева предпочтителен
git cat-file -e HEAD:$p(отслеживаемый) илиgit ls-files --error-unmatch(застейдженный, но не закоммиченный), с fallback наtest -e(неотслеживаемый, но существующий). Вне рабочего дерева — напрямуюtest -e. Токен, не прошедший ни одну проверку, — фантомный путь. - Проверка устаревания. Существование пути не равно его актуальности. Помечайте разрешённый путь как устаревший, если путь или ближайший README/индекс несёт маркер deprecated/retired/obsolete/superseded, совпадает с известной устаревшей поверхностью экосистемы (со ссылкой на источник истины), либо существует живая замена по соседнему пути.
- Отчёт. Формируется компактный блок: количество проверенных, количество существующих, MISSING-пути, DEPRECATED-пути с заменами — встраивается в чеклист валидации плана или QA-отчёт ревьюера.
Вердикты
- MISSING-путь — дефект планирования: перенаправить ссылку на реальную поверхность или пометить
[to-be-created]с обоснованием в одно предложение. - DEPRECATED-путь — дефект устаревания: заменить на живую замену до выполнения плана.
- Результат «всё существует, ничего не устарело» — чистый проход, изменений плана не требуется.
Связь с существующими гейтами
Дополняет проверку существования символов из dr-plan § 6.5 (символы исходного кода) и проверку git-топологии (различение gitignored и не-git путей, переиспользуется здесь). Отличается от check-doc-refs.sh — CI-линтера, разрешающего markdown-ссылки постфактум на закоммиченных доках — этот скилл работает на этапе черновика плана над любым путь-подобным токеном, до /dr-do.
Антипаттерны
- Утверждение об устаревании пути по памяти без ссылки на источник истины.
- Трактовка совпадения по символьной проверке как прохождения путевой проверки.
- Запуск
test -eбез кавычек или без--на пути, сгенерированном планировщиком.