Программная инженерия
Найдите удаляемые зависимости и абстракции
Аудит удаления на основе доказательств находит зависимости или абстракции, чья стоимость превышает пользу, и предлагает проверенное упрощение без изменения необходимого поведения.
Процесс
Делай в этом порядке.
- Определите поведение, которое должно сохраниться, ревизию репозитория, поддерживаемые среды и сигналы стоимости, из-за которых зависимость или абстракция стоит проверить.
- Составьте инвентарь прямых и транзитивных пакетов, обёрток, интерфейсов, адаптеров, сгенерированного кода и конфигурации, затем проследите вызывающий код и точки входа выполнения.
- Установите базовую линию по существующим тестам, сборке, проверкам типов, производительности или эксплуатации, данным безопасности и известным ограничениям поддержки.
- После проверки динамического использования, транзитивного влияния, совместимости и стоимости миграции классифицируйте каждый кандидат как удаляемый, заменяемый, сохраняемый или неизвестный.
- Создайте прототип наименьшего безопасного удаления в изолированной ветке или worktree, выполните целевые и соседние проверки и сравните поведение и расход ресурсов с базовой линией.
- Выберите удаление, замену, отложить или сохранить, документируя примечания по миграции, откату, обновлениям зависимостей и намеренно потерянным возможностям.
- Опубликуйте реестр удаления с доказательствами кандидатов, результатами тестов, владельцами решений, последующими работами и нерешёнными рисками, не объявляя мёртвый код только по результату поиска.
Принеси это
Входы, которые кот спросит.
- репозиторий и поддерживаемые среды
- требования к поведению и совместимости
- инвентарь зависимостей и абстракций
- базовая линия тестов, сборки и производительности
Роутер + один playbook
Сначала маршрут. Выбери один.
Cat Paw открывает один playbook на задачу, не смешивает несколько. Начни с этого роутера; остальные пути — кандидаты именно этого workflow.
- Роутер:
minimal-code-pack skills/minimal-code-pack/dependency-abstraction-removal-audit/SKILL.md
Границы
Границы едут вместе с промптом.
- Перед началом проверьте реальные инструменты, учётные записи, разрешения и рабочую область; никогда не утверждайте, что недоступный инструмент, учётная запись, источник или возможность существует.
- Используйте Latch/target-workspace для приватного кода, артефактов, живых проверок или непубличных данных; если доступ недоступен, остановитесь на границе и сообщите о блокировке, не подменяя её догадкой.
- Приостановите работу для явного одобрения перед внешними действиями с последствиями; верните доказательства, нерешённые риски, допущения и любое действие, ожидающее одобрения.
Готово значит
Проверяемый финиш.
Проверенный аудит удаления выявляет безопасные упрощения, сохраняет необходимое поведение, фиксирует базовую линию и решение по каждому кандидату и раскрывает нерешённые риски.
Источники
Откуда взялся этот процесс.
- github.com/DietrichGebert/ponytail/tree/e3ba2aa6f1e6f0bc4d69eb09c9f0d0a93af56156/
- docs.github.com/en/code-security/supply-chain-security/understanding-your-software-supply-chain/about-dependency-review
- docs.npmjs.com/cli/v11/commands/npm-uninstall
Источники задают рисунок workflow. Посты Reddit и сообщества, если они есть, — байки практиков, не универсальные факты.