Files
argon-theme/.kiro/steering/ai-refactor-next-steps.md
nanhaoluo 2c25caae23 feat: 添加统一 API 系统测试脚本和文档
- 创建 test-unified-api-system.php 测试脚本
- 测试功能包括:函数存在性、数据迁移、API配置、向后兼容等
- 添加阶段性实施计划文档
- 添加新 AI 设置界面草稿
2026-01-26 13:25:49 +08:00

4.4 KiB
Raw Blame History

AI 设置重构 - 下一步工作

已完成的工作

1. functions.php 更新

  • 添加数据迁移函数 argon_migrate_ai_apis()
  • 添加统一 API 管理函数
    • argon_get_all_apis() - 获取所有 API
    • argon_get_api_by_id($api_id) - 获取指定 API
    • argon_add_api($config) - 添加 API
    • argon_update_api($api_id, $config) - 更新 API
    • argon_delete_api($api_id) - 删除 API
    • argon_set_active_api_for_scenario($scenario, $api_id) - 设置场景使用的 API
    • argon_get_active_api_config($scenario) - 获取场景的活动 API 配置
  • 更新 argon_get_ai_provider_config() 支持新数据结构
  • 添加新的 AJAX 处理函数
    • argon_ajax_add_unified_api()
    • argon_ajax_update_unified_api()
    • argon_ajax_delete_unified_api()
    • argon_ajax_set_active_unified_api()
    • argon_ajax_get_all_unified_apis()
  • 在主题加载时自动迁移旧数据

2. 草稿文件

  • 创建新的 AI 设置界面草稿 (tmp/ai-settings-new-structure.php)
  • 设计了新的界面结构和交互逻辑

待完成的工作 📋

3. settings.php 重构

3.1 移除旧的 AI 设置部分

需要移除的内容:

  • 第 1985-2400 行:旧的文章功能 - AI 摘要部分(包含按提供商分组的 API 配置)
  • 第 4662-5100 行:评论设置中的 AI 垃圾评论识别部分

3.2 添加新的 AI 功能部分

在合适的位置(建议在第 1985 行之前)插入新的 AI 功能部分:

<!-- ========== AI 功能 ========== -->
<h1 style="color: #5e72e4; margin-top: 50px; font-size: 32px;"><?php _e('AI 功能', 'argon');?></h1>

<!-- API 管理 (h2) -->
<!-- 文章摘要 (h2) -->
<!-- 评论审核 (h2) -->

3.3 添加 JavaScript 交互代码

需要添加完整的 JavaScript 代码来处理:

  • 添加/编辑/删除 API
  • 测试 API 连通性
  • 刷新模型列表
  • 切换活动 API
  • 表单验证

3.4 更新选项保存逻辑

在 settings.php 末尾的保存函数中:

  • 移除旧的 API 配置保存逻辑
  • 添加新的统一 API 配置保存逻辑
  • 保存场景化的活动 API 设置

4. 测试

4.1 数据迁移测试

  • 测试从旧的多 API 系统迁移到新系统
  • 验证所有 API 配置都正确迁移
  • 验证活动 API 设置正确

4.2 功能测试

  • 测试添加新 API
  • 测试编辑 API
  • 测试删除 API
  • 测试切换活动 API
  • 测试 API 连通性测试功能
  • 测试模型列表刷新功能

4.3 场景测试

  • 测试文章摘要生成(使用新的 API 系统)
  • 测试垃圾评论检测(使用新的 API 系统)
  • 测试不同场景使用不同 API

4.4 向后兼容测试

  • 测试没有新数据时的回退逻辑
  • 测试旧数据的自动迁移

5. 文档更新

  • 更新用户文档,说明新的 API 管理方式
  • 更新开发文档,说明新的数据结构

实施建议

由于 settings.php 的重构涉及大量代码修改(需要移除约 500 行旧代码,添加约 800 行新代码),建议:

  1. 分步实施

    • 第一步:只添加新的 AI 功能部分,保留旧的设置(共存)
    • 第二步:测试新功能是否正常工作
    • 第三步:移除旧的设置部分
    • 第四步:全面测试
  2. 备份策略

    • 在每一步之前都创建备份
    • 使用 Git 分支进行开发
    • 保留回滚方案
  3. 用户通知

    • 在更新日志中说明重大变更
    • 提供迁移指南
    • 说明新功能的优势

风险评估

高风险项

  • settings.php 重构可能影响现有用户的配置
  • 数据迁移可能失败,导致 API 配置丢失
  • JavaScript 代码可能与现有代码冲突

缓解措施

  • 已实现自动数据迁移和向后兼容
  • 保留旧数据作为备份
  • 使用独立的 AJAX 端点,避免冲突
  • 📋 需要充分测试后再发布

时间估算

  • settings.php 重构2-3 小时
  • JavaScript 代码编写1-2 小时
  • 测试和调试2-3 小时
  • 文档更新1 小时

总计6-9 小时

下一步行动

  1. 用户确认是否继续进行 settings.php 的重构
  2. 如果继续,建议创建一个新的 Git 分支
  3. 按照上述步骤逐步实施
  4. 每完成一个步骤就进行测试和提交

备注

  • 当前已完成的 functions.php 修改已经提交commit 5254ee0
  • 新的数据结构和 API 已经可以使用
  • 只需要更新 settings.php 的界面部分即可完成整个重构