forgeplan delete
Окончательно удаляет артефакт из рабочего пространства. Это удаляет файл markdown с диска и каскадно распространяется по индексу LanceDB, удаляя все связи, где артефакт фигурирует как источник или цель.
Удаление является деструктивным и необратимым. Если вы не исправляете настоящую ошибку (например, тестовый артефакт, ID с опечаткой, дубликат), вам почти наверняка потребуется forgeplan deprecate или forgeplan supersede - оба варианта сохраняют историю решений, что является основной целью методологии.
Использование
Заголовок раздела «Использование»forgeplan delete [OPTIONS] <ID>Аргументы
Заголовок раздела «Аргументы» <ID> ID артефакта --yes Пропустить подтверждение -h, --help Вывести справку -V, --version Вывести версиюЧто делает команда
Заголовок раздела «Что делает команда»- Интерактивно подтверждает удаление (пропустить с
--yes). - Удаляет файл markdown из
.forgeplan/<kind>s/<id>.md. - Удаляет строку артефакта из таблицы
artifactsв LanceDB. - Каскадно удаляет все связи в таблице
links, где артефакт является источником или целью. - Оставляет другие артефакты нетронутыми - но они теперь могут ссылаться на удалённый ID.
Примеры
Заголовок раздела «Примеры»Удалить бесхозную Note после интерактивного подтверждения:
forgeplan delete NOTE-042Скриптовое удаление (без запроса):
forgeplan delete NOTE-042 --yesБезопасность: когда НЕ следует удалять
Заголовок раздела «Безопасность: когда НЕ следует удалять»НЕ следует удалять активный артефакт как способ его «отмены». Методология рассматривает отменённые решения как полноценную часть истории - они остаются доступными для обнаружения и объясняют, почему проект пошёл по другому пути.
| Ситуация | Вместо этого сделайте |
|---|---|
| Решение было замещено новым | forgeplan supersede <old> --by <new> |
| Решение больше не актуально | forgeplan deprecate <id> --reason "..." |
| Артефакт является сиротой (артефакт без связей) и ещё не содержит контента | Удаление допустимо |
Вы создали ID с опечаткой (PRD-0001 вместо PRD-1) | Удаление допустимо |
| Экспериментальная Note, которая никогда не была связана | Удаление допустимо |
Эмпирическое правило: если что-либо ссылается на артефакт, отмените его. Если это тупиковый заглушка без истории, удалите.
Перед удалением - сделайте резервную копию
Заголовок раздела «Перед удалением - сделайте резервную копию»Каскадное удаление связей нельзя отменить без восстановления git или более раннего экспорта. Перед массовым удалением выполните:
forgeplan export --output backup-$(date +%Y%m%d).jsonА для спокойствия:
cp -r .forgeplan .forgeplan-backup-$(date +%Y%m%d)Затем вы можете выполнить forgeplan import backup.json для восстановления, если пожалеете об операции. См. руководство AGENT-ENFORCEMENT, чтобы узнать, почему rm -rf .forgeplan является запрещённым сокращением.
Примечания
Заголовок раздела «Примечания»deleteне проверяет, ссылаются ли другие артефакты на цель. Ответственность вызывающего лежит на том, чтобы убедиться, что никакое активное решение не зависит от него.- Удалённые артефакты немедленно исчезают из
forgeplan health,forgeplan listи результатов поиска. - Если вы удалили по ошибке и ещё не сделали коммит,
git checkout .forgeplan/<kind>s/<id>.mdс последующимforgeplan scan-importвосстановит файл и переиндексирует его.
См. также
Заголовок раздела «См. также»- Обзор CLI
forgeplan deprecate- конечный статус, сохраняет историюforgeplan supersede- заменить более новым решениемforgeplan export- сделать резервную копию перед массовым удалением- Руководство по методологии