Система обновлений работает от рабочего места. Она сначала собирает сведения о серверах обновлений, затем находит кандидатов, подготавливает артефакт, проверяет его и только после явного подтверждения применяет поддержанное файловое обновление.
Минимальный сценарий:
python bin/pf.py update entity-sources rebuild --workplace <workplace>
python bin/pf.py update candidates refresh --workplace <workplace>
python bin/pf.py update candidates list --workplace <workplace>
python bin/pf.py update notifications list --workplace <workplace>
python bin/pf.py update changelog show --workplace <workplace> --candidate <candidate-id>
python bin/pf.py update stage --workplace <workplace> --candidate <candidate-id>
python bin/pf.py update verify --workplace <workplace> --candidate <candidate-id>
python bin/pf.py update apply --workplace <workplace> --candidate <candidate-id> --confirm
python bin/pf.py update rollback --workplace <workplace> --candidate <candidate-id>Для воспроизводимых локальных проверок используйте manifest_url и артефакты с
URL вида file:///.... Для настоящего удалённого сервера обновлений используйте
HTTPS, sha256 и ручное подтверждение оператора перед применением.
Не распаковывайте новый релиз в проектную .pf. Обновляется установленный
дистрибутив ProcessForge, а рабочие места и проекты остаются отдельно.
Рекомендуемый ручной порядок:
-
Распакуйте
processforge.zipв новую версионную папку вне проекта, например<processforge-root-1.0.2>. -
Проверьте новый дистрибутив:
python <processforge-root-1.0.2>/bin/pf.py version python <processforge-root-1.0.2>/bin/pf.py release-test --root <processforge-root-1.0.2> --public
-
В
<workplace>/registries/distributions.yamlобновите записьprocessforge: путь должен указывать на новую папку, версия - на новую версию релиза. -
Проверьте рабочее место:
python <processforge-root-1.0.2>/bin/pf.py doctor-workplace --workplace <workplace>
-
Для каждого связанного проекта выполните проверку и обновление снимка контекста:
python <processforge-root-1.0.2>/bin/pf.py project-upgrade-check --project-root <project> python <processforge-root-1.0.2>/bin/pf.py project-context-refresh --project-root <project> python <processforge-root-1.0.2>/bin/pf.py project-context-check --project-root <project> python <processforge-root-1.0.2>/bin/pf.py doctor-project --project-root <project>
Старую папку дистрибутива держите до успешной проверки. Для отката верните путь
в registries/distributions.yaml на предыдущую версию и снова выполните
doctor-workplace и проверки проектов.
Распаковка поверх старой папки допустима только как ручной аварийный вариант после резервной копии. Она хуже контролируется: файлы, удалённые из нового релиза, могут остаться от старой версии.
Проектная .pf не обновляется наложением архива ProcessForge. Команда
project-upgrade-check создаёт отчёт оценки под .pf/artifacts/ и не изменяет
проектные файлы автоматически:
python bin/pf.py project-upgrade-check --project-root <project>После отчёта:
-
Прочитайте результат оценки и migration guide для целевой версии.
-
Если миграция не требуется, обновите снимок контекста:
python bin/pf.py project-context-refresh --project-root <project> python bin/pf.py project-context-check --project-root <project> python bin/pf.py doctor-project --project-root <project>
-
Если отчёт требует изменений в проектной
.pf, внесите их явно через соответствующий процесс или команду ProcessForge, затем снова выполнитеproject-context-refresh,project-context-checkиdoctor-project.
Для ProcessForge 1.0.2 миграция проектных .pf не требуется. Старые
assignments и capsules остаются валидными; новые shell-agent flows могут
использовать workspace_access, чтобы получать общие знания, шаблоны,
инструменты и MCP через приватный runtime-файл.