zhoujie 2ba87c8f6e
Some checks failed
CI / Lint (ruff) (push) Has been cancelled
CI / Import Check (push) Has been cancelled
📝 docs(project): 添加开源社区标准文档与 CI 工作流
- 新增 GitHub Issue 模板(Bug 报告、功能请求)和 Pull Request 模板
- 新增 Code of Conduct(贡献者行为准则)和 Security Policy(安全政策)
- 新增 CI 工作流(GitHub Actions),包含 ruff 代码检查和导入验证
- 新增开发依赖文件 requirements-dev.txt

📦 build(ci): 配置 GitHub Actions 持续集成

- 在 push 到 main 分支和 pull request 时自动触发 CI
- 添加 lint 任务执行 ruff 代码风格检查
- 添加 import-check 任务验证核心服务模块导入

♻️ refactor(structure): 重构项目目录结构

- 将根目录的 6 个服务模块迁移至 services/ 包
- 更新所有相关文件的导入语句(main.py、ui/、services/)
- 根目录仅保留 main.py 作为唯一 Python 入口文件

🔧 chore(config): 调整配置和资源文件路径

- 将 config.json 移至 config/ 目录,更新相关引用
- 将个人头像图片移至 assets/faces/ 目录,更新 .gitignore
- 更新 Dockerfile 和 docker-compose.yml 中的配置路径

📝 docs(readme): 完善 README 文档

- 添加项目状态徽章(Python 版本、License、CI)
- 更新项目结构图反映实际目录布局
- 修正使用指南中的 Tab 名称和操作路径
- 替换 your-username 占位符为格式提示

🗑️ chore(cleanup): 清理冗余文件

- 删除旧版备份文件、测试脚本、临时记录和运行日志
- 删除散落的个人图片文件(已归档至 assets/faces/)
2026-02-27 22:12:39 +08:00

1.9 KiB
Raw Blame History

ADDED Requirements

Requirement: README 顶部展示状态徽章

README.md 顶部标题下方SHALL 包含至少三枚徽章Python 版本要求、License 类型、CI 状态,采用 shields.io 或 GitHub Actions 徽章格式。

Scenario: 徽章在 GitHub 页面正常渲染

  • WHEN 访问项目 GitHub 主页
  • THEN README 顶部 SHALL 显示可点击的 Python、MIT License、CI 状态徽章,链接指向对应资源

Requirement: README 项目结构图反映实际代码

README.md 中的「项目结构」章节 SHALL 反映迁移后的实际目录结构,包含 services/(含所有迁移后文件)和 ui/(含 app.pytab_create.py)的正确层级。

Scenario: 项目结构与 ls 输出一致

  • WHEN 开发者对照 README 查看实际文件目录
  • THEN README 的结构图 SHALL 与实际 Get-ChildItem / ls 输出一致,无过时文件或缺失目录

Requirement: README 不包含 your-username 占位符

README.md 中所有 your-username 占位符 SHALL 替换为实际仓库路径说明或格式示例,使克隆/安装命令可直接复制使用。

Scenario: 安装命令无需手动替换占位符

  • WHEN 用户复制 README 中的 git clone 命令
  • THEN 命令 SHALL 包含实际仓库 URL 或明确的 <your-github-username> 格式提示,不出现 your-username 字符串

Requirement: README 使用指南与当前 UI 结构匹配

README.md 中的「使用指南」和「首次使用流程」章节 SHALL 引用当前正确的 Tab 名称和操作路径,与 ui/app.py 实际 Tab 顺序保持一致(⚙️ 配置 Tab 已迁移,不再是「展开全局设置折叠块」)。

Scenario: 首次使用步骤描述与 UI 一致

  • WHEN 新用户按照 README「首次使用流程」操作
  • THEN README 中描述的 Tab 名称和操作入口 SHALL 与实际 Gradio UI 一致,用户无需猜测