mirror of
https://bitbucket.org/siakitem/my-pi.git
synced 2026-10-26 10:45:22 +00:00
refactor(permission-system): simplify policy and autoreview flow
This commit is contained in:
@@ -144,6 +144,51 @@ migrate_tool_search_settings() {
|
||||
esac
|
||||
}
|
||||
|
||||
migrate_permission_policy() {
|
||||
policy_file=${PI_CODING_AGENT_DIR:-$HOME/.pi/agent}/extensions/pi-permission-system/policy.jsonc
|
||||
if [ ! -e "$policy_file" ]; then
|
||||
say "- Permission System policy.jsonc 尚不存在;扩展将在下次加载时部署当前种子。"
|
||||
return 0
|
||||
fi
|
||||
if [ -z "${updated_bundle_dir:-}" ] || \
|
||||
[ ! -f "$updated_bundle_dir/scripts/migrate-permission-policy.mjs" ] || \
|
||||
[ ! -f "$updated_bundle_dir/config/pi-permission-policy.jsonc" ]; then
|
||||
warn "无法定位升级后组合包中的 Permission System 策略迁移文件,已保留现有配置。"
|
||||
return 1
|
||||
fi
|
||||
if ! command -v node >/dev/null 2>&1; then
|
||||
warn "缺少 node,无法安全迁移 Permission System 策略,已保留现有配置。"
|
||||
return 1
|
||||
fi
|
||||
|
||||
permission_migration=$(node \
|
||||
"$updated_bundle_dir/scripts/migrate-permission-policy.mjs" \
|
||||
"$policy_file" \
|
||||
"$updated_bundle_dir/config/pi-permission-policy.jsonc") || {
|
||||
warn "Permission System 策略迁移失败,已保留现有配置。"
|
||||
return 1
|
||||
}
|
||||
case $permission_migration in
|
||||
migrated:*)
|
||||
permission_backup=${permission_migration#migrated:}
|
||||
say "✓ Permission System 策略已切换到当前种子;旧文件备份:$permission_backup"
|
||||
;;
|
||||
current)
|
||||
say "- Permission System 策略已是当前种子。"
|
||||
;;
|
||||
custom)
|
||||
say "- Permission System 策略包含自定义内容,已原样保留。"
|
||||
;;
|
||||
missing)
|
||||
say "- Permission System policy.jsonc 尚不存在;扩展将在下次加载时部署当前种子。"
|
||||
;;
|
||||
*)
|
||||
warn "Permission System 策略迁移返回未知状态,已停止受管同步。"
|
||||
return 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
resolve_zsh_paths() {
|
||||
oh_my_zsh_dir=${ZSH:-$HOME/.oh-my-zsh}
|
||||
zsh_custom_dir=${ZSH_CUSTOM:-$oh_my_zsh_dir/custom}
|
||||
@@ -497,6 +542,7 @@ else
|
||||
fi
|
||||
select_updated_bundle_config || exit 1
|
||||
migrate_tool_search_settings || record_update_failure "Tool Search 用户配置"
|
||||
migrate_permission_policy || record_update_failure "Permission System 用户策略"
|
||||
|
||||
say "组合包升级完成,开始升级已安装的终端环境和机器级 CLI;未安装项将直接跳过。"
|
||||
update_kitty || record_update_failure "Kitty"
|
||||
|
||||
Reference in New Issue
Block a user