Merge branch 'dev' into ai-grid

This commit is contained in:
tinkle-community
2026-01-13 13:10:57 +08:00
7 changed files with 457 additions and 519 deletions

View File

@@ -1,16 +1,16 @@
# PR 标题指南 # PR Title Guide
## 📋 概述 ## 📋 Overview
我们使用 **Conventional Commits** 格式来保持 PR 标题的一致性,但这是**建议性的**,不会阻止你的 PR 被合并。 We use the **Conventional Commits** format to maintain consistency in PR titles, but this is **recommended**, not mandatory. It will not prevent your PR from being merged.
## ✅ 推荐格式 ## ✅ Recommended Format
``` ```
type(scope): description type(scope): description
``` ```
### 示例 ### Examples
``` ```
feat(trader): add new trading strategy feat(trader): add new trading strategy
@@ -22,63 +22,63 @@ ci(workflow): improve GitHub Actions
--- ---
## 📖 详细说明 ## 📖 Detailed Guide
### Type(类型)- 必需 ### Type - Required
描述这次变更的类型: Describes the type of change:
| Type | 说明 | 示例 | | Type | Description | Example |
|------|------|------| |------|-------------|---------|
| `feat` | 新功能 | `feat(trader): add stop-loss feature` | | `feat` | New feature | `feat(trader): add stop-loss feature` |
| `fix` | Bug 修复 | `fix(api): handle null response` | | `fix` | Bug fix | `fix(api): handle null response` |
| `docs` | 文档变更 | `docs: update installation guide` | | `docs` | Documentation change | `docs: update installation guide` |
| `style` | 代码格式(不影响代码运行) | `style: format code with prettier` | | `style` | Code formatting (no functional change) | `style: format code with prettier` |
| `refactor` | 重构(既不是新功能也不是修复) | `refactor(exchange): simplify connection logic` | | `refactor` | Code refactoring (neither feature nor fix) | `refactor(exchange): simplify connection logic` |
| `perf` | 性能优化 | `perf(ai): optimize prompt processing` | | `perf` | Performance optimization | `perf(ai): optimize prompt processing` |
| `test` | 添加或修改测试 | `test(trader): add unit tests` | | `test` | Add or modify tests | `test(trader): add unit tests` |
| `chore` | 构建过程或辅助工具的变动 | `chore: update dependencies` | | `chore` | Build process or auxiliary tool changes | `chore: update dependencies` |
| `ci` | CI/CD 相关变更 | `ci: add test coverage report` | | `ci` | CI/CD related changes | `ci: add test coverage report` |
| `security` | 安全相关修复 | `security: update vulnerable dependencies` | | `security` | Security fixes | `security: update vulnerable dependencies` |
| `build` | 构建系统或外部依赖项变更 | `build: upgrade webpack to v5` | | `build` | Build system or external dependency changes | `build: upgrade webpack to v5` |
### Scope(范围)- 可选 ### Scope - Optional
描述这次变更影响的范围: Describes the area affected by the change:
| Scope | 说明 | | Scope | Description |
|-------|------| |-------|-------------|
| `exchange` | 交易所相关 | | `exchange` | Exchange-related |
| `trader` | 交易员/交易策略 | | `trader` | Trader/trading strategy |
| `ai` | AI 模型相关 | | `ai` | AI model related |
| `api` | API 接口 | | `api` | API interface |
| `ui` | 用户界面 | | `ui` | User interface |
| `frontend` | 前端代码 | | `frontend` | Frontend code |
| `backend` | 后端代码 | | `backend` | Backend code |
| `security` | 安全相关 | | `security` | Security related |
| `deps` | 依赖项 | | `deps` | Dependencies |
| `workflow` | GitHub Actions workflows | | `workflow` | GitHub Actions workflows |
| `github` | GitHub 配置 | | `github` | GitHub configuration |
| `actions` | GitHub Actions | | `actions` | GitHub Actions |
| `config` | 配置文件 | | `config` | Configuration files |
| `docker` | Docker 相关 | | `docker` | Docker related |
| `build` | 构建相关 | | `build` | Build related |
| `release` | 发布相关 | | `release` | Release related |
**注意:** 如果变更影响多个范围,可以省略 scope 或选择最主要的。 **Note:** If the change affects multiple scopes, you can omit the scope or choose the most relevant one.
### Description(描述)- 必需 ### Description - Required
- 使用现在时态("add" 而不是 "added" - Use present tense ("add" not "added")
- 首字母小写 - Start with lowercase
- 结尾不加句号 - No period at the end
- 简洁明了地描述变更内容 - Concisely describe what changed
--- ---
## 🎯 完整示例 ## 🎯 Complete Examples
### ✅ 好的 PR 标题 ### ✅ Good PR Titles
``` ```
feat(trader): add risk management system feat(trader): add risk management system
@@ -94,38 +94,38 @@ security(api): fix SQL injection vulnerability
build(docker): optimize Docker image size build(docker): optimize Docker image size
``` ```
### ⚠️ 需要改进的标题 ### ⚠️ Titles That Need Improvement
| 不好的标题 | 问题 | 改进后 | | Poor Title | Issue | Improved |
|-----------|------|--------| |-----------|-------|----------|
| `update code` | 太模糊 | `refactor(trader): simplify order execution logic` | | `update code` | Too vague | `refactor(trader): simplify order execution logic` |
| `Fixed bug` | 首字母大写,不够具体 | `fix(api): handle edge case in login` | | `Fixed bug` | Capitalized, not specific | `fix(api): handle edge case in login` |
| `Add new feature.` | 有句号,不够具体 | `feat(ui): add dark mode toggle` | | `Add new feature.` | Has period, not specific | `feat(ui): add dark mode toggle` |
| `changes` | 完全不符合格式 | `chore: update dependencies` | | `changes` | Doesn't follow format | `chore: update dependencies` |
| `feat: Added new trading algo` | 时态错误 | `feat(trader): add new trading algorithm` | | `feat: Added new trading algo` | Wrong tense | `feat(trader): add new trading algorithm` |
--- ---
## 🤖 自动检查行为 ## 🤖 Automated Check Behavior
### 当 PR 标题不符合格式时 ### When PR Title Doesn't Follow Format
1. **不会阻止合并** 1. **Won't block merging**
- 检查会标记为"建议" - Check is marked as "advisory"
- PR 仍然可以被审查和合并 - PR can still be reviewed and merged
2. **会收到友好提示** 💬 2. **Provides friendly reminder** 💬
- 机器人会在 PR 中留言 - Bot will comment on the PR
- 提供格式说明和示例 - Provides format guidance and examples
- 建议如何改进标题 - Suggests how to improve the title
3. **可以随时更新** 🔄 3. **Can be updated anytime** 🔄
- 更新 PR 标题后会重新检查 - Re-checks after updating PR title
- 无需关闭和重新打开 PR - No need to close and reopen PR
### 示例评论 ### Example Comment
如果你的 PR 标题是 `update workflow`,你会收到这样的评论: If your PR title is `update workflow`, you'll receive a comment like this:
```markdown ```markdown
## ⚠️ PR Title Format Suggestion ## ⚠️ PR Title Format Suggestion
@@ -157,11 +157,11 @@ Your PR can still be reviewed and merged.
--- ---
## 🔧 配置详情 ## 🔧 Configuration Details
### 支持的 Types ### Supported Types
`.github/workflows/pr-checks.yml` 中配置: Configured in `.github/workflows/pr-checks.yml`:
```yaml ```yaml
types: | types: |
@@ -178,7 +178,7 @@ types: |
build build
``` ```
### 支持的 Scopes ### Supported Scopes
```yaml ```yaml
scopes: | scopes: |
@@ -200,38 +200,38 @@ scopes: |
release release
``` ```
### 添加新的 Scope ### Adding New Scopes
如果你需要添加新的 scope,请: If you need to add a new scope:
1. `.github/workflows/pr-checks.yml``scopes` 部分添加 1. Add it to the `scopes` section in `.github/workflows/pr-checks.yml`
2. `.github/workflows/pr-checks-run.yml` 更新正则表达式(可选) 2. Update the regex in `.github/workflows/pr-checks-run.yml` (optional)
3. 更新本文档 3. Update this documentation
--- ---
## 📚 为什么使用 Conventional Commits ## 📚 Why Use Conventional Commits?
### 优点 ### Benefits
1. **自动化 Changelog** 📝 1. **Automated Changelog** 📝
- 可以自动生成版本更新日志 - Automatically generate version changelogs
- 清晰地分类各种变更 - Clearly categorize different types of changes
2. **语义化版本** 🔢 2. **Semantic Versioning** 🔢
- `feat` → MINOR 版本(1.1.0 - `feat` → MINOR version (1.1.0)
- `fix` → PATCH 版本(1.0.1 - `fix` → PATCH version (1.0.1)
- `BREAKING CHANGE` → MAJOR 版本(2.0.0 - `BREAKING CHANGE` → MAJOR version (2.0.0)
3. **更好的可读性** 👀 3. **Better Readability** 👀
- 一眼看出 PR 的目的 - Understand PR purpose at a glance
- 更容易浏览 Git 历史 - Easier to browse Git history
4. **团队协作** 🤝 4. **Team Collaboration** 🤝
- 统一的提交风格 - Unified commit style
- 降低沟通成本 - Reduces communication overhead
### 示例:自动生成的 Changelog ### Example: Auto-generated Changelog
```markdown ```markdown
## v1.2.0 (2025-11-02) ## v1.2.0 (2025-11-02)
@@ -250,9 +250,9 @@ scopes: |
--- ---
## 🎓 学习资源 ## 🎓 Learning Resources
- **Conventional Commits 官网:** https://www.conventionalcommits.org/ - **Conventional Commits:** https://www.conventionalcommits.org/
- **Angular Commit Guidelines:** https://github.com/angular/angular/blob/main/CONTRIBUTING.md#commit - **Angular Commit Guidelines:** https://github.com/angular/angular/blob/main/CONTRIBUTING.md#commit
- **Semantic Versioning:** https://semver.org/ - **Semantic Versioning:** https://semver.org/
@@ -260,33 +260,33 @@ scopes: |
## ❓ FAQ ## ❓ FAQ
### Q: 我必须遵循这个格式吗? ### Q: Must I follow this format?
**A:** 不必须。这是建议性的,不会阻止你的 PR 被合并。但遵循格式可以提高项目的可维护性。 **A:** No. This is recommended but not mandatory. It won't block your PR from being merged. However, following the format improves project maintainability.
### Q: 如果我忘记了怎么办? ### Q: What if I forget?
**A:** 机器人会在 PR 中提醒你,你可以随时更新标题。 **A:** The bot will remind you in the PR comments. You can update the title anytime.
### Q: 我可以在一个 PR 中做多种类型的变更吗? ### Q: Can I make multiple types of changes in one PR?
**A:** 可以,但建议: **A:** Yes, but it's recommended to:
- 选择最主要的类型 - Choose the most significant type
- 或者考虑拆分成多个 PR更易于审查 - Or consider splitting into multiple PRs (easier to review)
### Q: Scope 可以省略吗? ### Q: Can I omit the scope?
**A:** 可以。`requireScope: false` 表示 scope 是可选的。 **A:** Yes. `requireScope: false` means scope is optional.
示例:`docs: update README` (没有 scope 也可以) Example: `docs: update README` (no scope is fine)
### Q: 我想添加新的 type scope,怎么做? ### Q: How do I add a new type or scope?
**A:** 提一个 PR 修改 `.github/workflows/pr-checks.yml`,并在本文档中说明新增项的用途。 **A:** Submit a PR to modify `.github/workflows/pr-checks.yml` and document the purpose of the new item in this guide.
### Q: Breaking Changes 怎么表示? ### Q: How do I indicate Breaking Changes?
**A:** 在描述中添加 `BREAKING CHANGE:` 或在 type 后加 `!` **A:** Add `BREAKING CHANGE:` in the description or add `!` after the type:
``` ```
feat!: remove deprecated API feat!: remove deprecated API
@@ -297,9 +297,9 @@ BREAKING CHANGE: The old /auth endpoint is removed
--- ---
## 📊 统计 ## 📊 Statistics
想看项目的 commit 类型分布?运行: Want to see the commit type distribution in your project? Run:
```bash ```bash
git log --oneline --no-merges | \ git log --oneline --no-merges | \
@@ -309,14 +309,14 @@ git log --oneline --no-merges | \
--- ---
## ✅ 快速检查清单 ## ✅ Quick Checklist
在提交 PR 前,检查你的标题是否: Before submitting a PR, check if your title:
- [ ] 包含有效的 typefeat, fix, docs 等) - [ ] Contains a valid type (feat, fix, docs, etc.)
- [ ] 使用小写字母开头 - [ ] Starts with lowercase
- [ ] 使用现在时态("add" 而不是 "added" - [ ] Uses present tense ("add" not "added")
- [ ] 简洁明了(最好在 50 字符内) - [ ] Is concise (preferably under 50 characters)
- [ ] 准确描述了变更内容 - [ ] Accurately describes the change
**记住:** 这些都是建议,不是强制要求! **Remember:** These are recommendations, not requirements!

View File

@@ -1,104 +1,100 @@
# Pull Request | PR 提交 # Pull Request
> **📋 选择专用模板 | Choose Specialized Template** > **📋 Choose Specialized Template**
> >
> 我们现在提供了针对不同类型PR的专用模板帮助你更快速地填写PR信息
> We now offer specialized templates for different types of PRs to help you fill out the information faster: > We now offer specialized templates for different types of PRs to help you fill out the information faster:
> >
> - 🔧 **[Backend PR Template](./PULL_REQUEST_TEMPLATE/backend.md)** | 后端PR模板 - For Go/API/Trading changes > - 🔧 **[Backend PR Template](./PULL_REQUEST_TEMPLATE/backend.md)** - For Go/API/Trading changes
> - 🎨 **[Frontend PR Template](./PULL_REQUEST_TEMPLATE/frontend.md)** | 前端PR模板 - For UI/UX changes > - 🎨 **[Frontend PR Template](./PULL_REQUEST_TEMPLATE/frontend.md)** - For UI/UX changes
> - 📝 **[Documentation PR Template](./PULL_REQUEST_TEMPLATE/docs.md)** | 文档PR模板 - For documentation updates > - 📝 **[Documentation PR Template](./PULL_REQUEST_TEMPLATE/docs.md)** - For documentation updates
> - 📦 **[General PR Template](./PULL_REQUEST_TEMPLATE/general.md)** | 通用PR模板 - For mixed or other changes > - 📦 **[General PR Template](./PULL_REQUEST_TEMPLATE/general.md)** - For mixed or other changes
> >
> **如何使用?| How to use?** > **How to use?**
> - 创建PR时在URL中添加 `?template=backend.md` 或其他模板名称
> - When creating a PR, add `?template=backend.md` or other template name to the URL > - When creating a PR, add `?template=backend.md` or other template name to the URL
> - 或者直接复制粘贴对应模板的内容
> - Or simply copy and paste the content from the corresponding template > - Or simply copy and paste the content from the corresponding template
--- ---
> **💡 提示 Tip:** 推荐 PR 标题格式 `type(scope): description` > **💡 Tip:** Recommended PR title format `type(scope): description`
> 例如: `feat(trader): add new strategy` | `fix(api): resolve auth issue` > Example: `feat(trader): add new strategy` | `fix(api): resolve auth issue`
--- ---
## 📝 Description | 描述 ## 📝 Description
**English:** **中文:**
<!-- Describe your changes in detail -->
--- ---
## 🎯 Type of Change | 变更类型 ## 🎯 Type of Change
- [ ] 🐛 Bug fix | 修复 Bug - [ ] 🐛 Bug fix
- [ ] ✨ New feature | 新功能 - [ ] ✨ New feature
- [ ] 💥 Breaking change | 破坏性变更 - [ ] 💥 Breaking change
- [ ] 📝 Documentation update | 文档更新 - [ ] 📝 Documentation update
- [ ] 🎨 Code style update | 代码样式更新 - [ ] 🎨 Code style update
- [ ] ♻️ Refactoring | 重构 - [ ] ♻️ Refactoring
- [ ] ⚡ Performance improvement | 性能优化 - [ ] ⚡ Performance improvement
- [ ] ✅ Test update | 测试更新 - [ ] ✅ Test update
- [ ] 🔧 Build/config change | 构建/配置变更 - [ ] 🔧 Build/config change
- [ ] 🔒 Security fix | 安全修复 - [ ] 🔒 Security fix
--- ---
## 🔗 Related Issues | 相关 Issue ## 🔗 Related Issues
- Closes # | 关闭 # - Closes #
- Related to # | 相关 # - Related to #
--- ---
## 📋 Changes Made | 具体变更 ## 📋 Changes Made
**English:** **中文:** <!-- List the specific changes made -->
- -
- -
--- ---
## 🧪 Testing | 测试 ## 🧪 Testing
- [ ] Tested locally | 本地测试通过 - [ ] Tested locally
- [ ] Tests pass | 测试通过 - [ ] Tests pass
- [ ] Verified no existing functionality broke | 确认没有破坏现有功能 - [ ] Verified no existing functionality broke
--- ---
## ✅ Checklist | 检查清单 ## ✅ Checklist
### Code Quality | 代码质量 ### Code Quality
- [ ] Code follows project style | 代码遵循项目风格 - [ ] Code follows project style
- [ ] Self-review completed | 已完成代码自查 - [ ] Self-review completed
- [ ] Comments added for complex logic | 已添加必要注释 - [ ] Comments added for complex logic
### Documentation | 文档 ### Documentation
- [ ] Updated relevant documentation | 已更新相关文档 - [ ] Updated relevant documentation
### Git ### Git
- [ ] Commits follow conventional format | 提交遵循 Conventional Commits 格式 - [ ] Commits follow conventional format
- [ ] Rebased on latest `dev` branch | 已 rebase 到最新 `dev` 分支 - [ ] Rebased on latest `dev` branch
- [ ] No merge conflicts | 无合并冲突 - [ ] No merge conflicts
--- ---
## 📚 Additional Notes | 补充说明 ## 📚 Additional Notes
**English:** **中文:** <!-- Any additional information or context -->
--- ---
**By submitting this PR, I confirm | 提交此 PR我确认** **By submitting this PR, I confirm:**
- [ ] I have read the [Contributing Guidelines](../CONTRIBUTING.md) | 已阅读贡献指南 - [ ] I have read the [Contributing Guidelines](../CONTRIBUTING.md)
- [ ] I agree to the [Code of Conduct](../CODE_OF_CONDUCT.md) | 同意行为准则 - [ ] I agree to the [Code of Conduct](../CODE_OF_CONDUCT.md)
- [ ] My contribution is licensed under AGPL-3.0 | 贡献遵循 AGPL-3.0 许可证 - [ ] My contribution is licensed under AGPL-3.0
--- ---
🌟 **Thank you for your contribution! | 感谢你的贡献!** 🌟 **Thank you for your contribution!**

View File

@@ -1,213 +1,177 @@
# PR Templates | PR 模板 # PR Templates
## 📋 模板概述 | Template Overview ## 📋 Template Overview
我们提供了4种针对不同类型PR的专用模板帮助贡献者快速填写PR信息
We offer 4 specialized templates for different types of PRs to help contributors quickly fill out PR information: We offer 4 specialized templates for different types of PRs to help contributors quickly fill out PR information:
### 1. 🔧 Backend Template | 后端模板 ### 1. 🔧 Backend Template
**文件:** `backend.md` **File:** `backend.md`
**适用于 | Use for:** **Use for:**
- Go代码变更 | Go code changes - Go code changes
- API端点开发 | API endpoint development - API endpoint development
- 交易逻辑实现 | Trading logic implementation - Trading logic implementation
- 后端性能优化 | Backend performance optimization - Backend performance optimization
- 数据库相关改动 | Database-related changes - Database-related changes
**包含 | Includes:** **Includes:**
- Go测试环境配置 | Go test environment - Go test environment
- 安全考虑检查 | Security considerations - Security considerations
- 性能影响评估 | Performance impact assessment - Performance impact assessment
- `go fmt``go build` 检查 | `go fmt` and `go build` checks - `go fmt` and `go build` checks
### 2. 🎨 Frontend Template | 前端模板 ### 2. 🎨 Frontend Template
**文件:** `frontend.md` **File:** `frontend.md`
**适用于 | Use for:** **Use for:**
- UI/UX变更 | UI/UX changes - UI/UX changes
- React/Vue组件开发 | React/Vue component development - React/Vue component development
- 前端样式更新 | Frontend styling updates - Frontend styling updates
- 浏览器兼容性修复 | Browser compatibility fixes - Browser compatibility fixes
- 前端性能优化 | Frontend performance optimization - Frontend performance optimization
**包含 | Includes:** **Includes:**
- 截图/演示要求 | Screenshots/demo requirements - Screenshots/demo requirements
- 浏览器测试清单 | Browser testing checklist - Browser testing checklist
- 国际化检查 | Internationalization checks - Internationalization checks
- 响应式设计验证 | Responsive design verification - Responsive design verification
- `npm run lint` `npm run build` 检查 | Linting and build checks - `npm run lint` and `npm run build` checks
### 3. 📝 Documentation Template | 文档模板 ### 3. 📝 Documentation Template
**文件:** `docs.md` **File:** `docs.md`
**适用于 | Use for:** **Use for:**
- README更新 | README updates - README updates
- API文档编写 | API documentation - API documentation
- 教程和指南 | Tutorials and guides - Tutorials and guides
- 代码注释改进 | Code comment improvements - Code comment improvements
- 翻译工作 | Translation work - Translation work
**包含 | Includes:** **Includes:**
- 文档类型分类 | Documentation type classification - Documentation type classification
- 内容质量检查 | Content quality checks - Content quality checks
- 双语要求(中英文)| Bilingual requirements (EN/CN) - Bilingual requirements (EN/CN)
- 链接有效性验证 | Link validity verification - Link validity verification
### 4. 📦 General Template | 通用模板 ### 4. 📦 General Template
**文件:** `general.md` **File:** `general.md`
**适用于 | Use for:** **Use for:**
- 混合类型变更 | Mixed-type changes - Mixed-type changes
- 跨多个领域的PR | Cross-domain PRs - Cross-domain PRs
- 构建配置变更 | Build configuration changes - Build configuration changes
- 依赖更新 | Dependency updates - Dependency updates
- 不确定使用哪个模板时 | When unsure which template to use - When unsure which template to use
## 🤖 自动模板建议 | Automatic Template Suggestion ## 🤖 Automatic Template Suggestion
我们的GitHub Action会自动分析你的PR并建议最合适的模板
Our GitHub Action automatically analyzes your PR and suggests the most suitable template: Our GitHub Action automatically analyzes your PR and suggests the most suitable template:
### 工作原理 | How it works: ### How it works:
1. **文件分析 | File Analysis** 1. **File Analysis**
- 检测PR中所有变更的文件类型
- Detects all changed file types in the PR - Detects all changed file types in the PR
2. **智能判断 | Smart Detection** 2. **Smart Detection**
- 如果 >50% 是 `.go` 文件 → 建议**后端模板**
- If >50% are `.go` files → Suggests **Backend template** - If >50% are `.go` files → Suggests **Backend template**
- 如果 >50% 是 `.js/.ts/.tsx/.vue` 文件 → 建议**前端模板**
- If >50% are `.js/.ts/.tsx/.vue` files → Suggests **Frontend template** - If >50% are `.js/.ts/.tsx/.vue` files → Suggests **Frontend template**
- 如果 >70% 是 `.md` 文件 → 建议**文档模板**
- If >70% are `.md` files → Suggests **Documentation template** - If >70% are `.md` files → Suggests **Documentation template**
3. **自动评论 | Auto-comment** 3. **Auto-comment**
- 如果检测到你使用了默认模板,但应该用专用模板
- If it detects you're using the default template but should use a specialized one - If it detects you're using the default template but should use a specialized one
- 会自动添加友好的评论建议
- It will automatically add a friendly comment suggestion - It will automatically add a friendly comment suggestion
4. **自动标签 | Auto-labeling** 4. **Auto-labeling**
- 自动添加对应的标签:`backend``frontend``documentation`
- Automatically adds corresponding labels: `backend`, `frontend`, `documentation` - Automatically adds corresponding labels: `backend`, `frontend`, `documentation`
## 📖 使用方法 | How to Use ## 📖 How to Use
### 方法1: URL参数推荐 | Method 1: URL Parameter (Recommended) ### Method 1: URL Parameter (Recommended)
创建PR时在URL末尾添加模板参数
When creating a PR, add the template parameter to the URL: When creating a PR, add the template parameter to the URL:
``` ```
https://github.com/YOUR_ORG/nofx/compare/dev...YOUR_BRANCH?template=backend.md https://github.com/YOUR_ORG/nofx/compare/dev...YOUR_BRANCH?template=backend.md
``` ```
替换 `backend.md` 为:
Replace `backend.md` with: Replace `backend.md` with:
- `backend.md` - 后端模板 | Backend template - `backend.md` - Backend template
- `frontend.md` - 前端模板 | Frontend template - `frontend.md` - Frontend template
- `docs.md` - 文档模板 | Documentation template - `docs.md` - Documentation template
- `general.md` - 通用模板 | General template - `general.md` - General template
### 方法2: 手动选择 | Method 2: Manual Selection ### Method 2: Manual Selection
1. 创建PR时默认模板会显示 1. When creating a PR, the default template will be shown
When creating a PR, the default template will be shown
2. 根据顶部的指引链接,点击查看对应的模板 2. Follow the guidance links at the top to view the corresponding template
Follow the guidance links at the top to view the corresponding template
3. 复制模板内容到PR描述中 3. Copy the template content into the PR description
Copy the template content into the PR description
### 方法3: 跟随自动建议 | Method 3: Follow Auto-suggestion ### Method 3: Follow Auto-suggestion
1. 使用任何模板创建PR 1. Create a PR with any template
Create a PR with any template
2. GitHub Action会自动分析并评论建议 2. GitHub Action will automatically analyze and comment with a suggestion
GitHub Action will automatically analyze and comment with a suggestion
3. 根据建议更新PR描述 3. Update the PR description based on the suggestion
Update the PR description based on the suggestion
## 🎯 最佳实践 | Best Practices ## 🎯 Best Practices
1. **提前选择 | Choose in Advance** 1. **Choose in Advance**
- 在创建PR前确定变更类型
- Determine the change type before creating the PR - Determine the change type before creating the PR
2. **完整填写 | Complete Filling** 2. **Complete Filling**
- 不要跳过必填项(标记为 required
- Don't skip required items - Don't skip required items
3. **保持简洁 | Keep it Concise** 3. **Keep it Concise**
- 描述清晰但简洁
- Keep descriptions clear but concise - Keep descriptions clear but concise
4. **添加截图 | Add Screenshots** 4. **Add Screenshots**
- 对于UI变更务必添加截图
- For UI changes, always add screenshots - For UI changes, always add screenshots
5. **测试证明 | Test Evidence** 5. **Test Evidence**
- 提供测试通过的证据
- Provide evidence that tests pass - Provide evidence that tests pass
## 🔧 自定义 | Customization ## 🔧 Customization
如果需要修改模板或自动检测逻辑:
If you need to modify templates or auto-detection logic: If you need to modify templates or auto-detection logic:
1. **修改模板** | **Modify Templates** 1. **Modify Templates**
- 编辑 `.github/PULL_REQUEST_TEMPLATE/*.md` 文件
- Edit `.github/PULL_REQUEST_TEMPLATE/*.md` files - Edit `.github/PULL_REQUEST_TEMPLATE/*.md` files
2. **调整检测阈值** | **Adjust Detection Threshold** 2. **Adjust Detection Threshold**
- 编辑 `.github/workflows/pr-template-suggester.yml`
- Edit `.github/workflows/pr-template-suggester.yml` - Edit `.github/workflows/pr-template-suggester.yml`
- 修改文件类型占比阈值当前50%后端50%前端70%文档)
- Modify file type percentage thresholds (current: 50% backend, 50% frontend, 70% docs) - Modify file type percentage thresholds (current: 50% backend, 50% frontend, 70% docs)
3. **添加新模板** | **Add New Template** 3. **Add New Template**
-`PULL_REQUEST_TEMPLATE/` 目录创建新的 `.md` 文件
- Create a new `.md` file in the `PULL_REQUEST_TEMPLATE/` directory - Create a new `.md` file in the `PULL_REQUEST_TEMPLATE/` directory
- 更新工作流以支持新的文件类型检测
- Update the workflow to support new file type detection - Update the workflow to support new file type detection
## ❓ FAQ ## ❓ FAQ
**Q: 我的PR既有前端又有后端代码用哪个模板**
**Q: My PR has both frontend and backend code, which template should I use?** **Q: My PR has both frontend and backend code, which template should I use?**
A: 使用**通用模板**`general.md`),或选择主要变更类型的模板。
A: Use the **General template** (`general.md`), or choose the template for the primary change type. A: Use the **General template** (`general.md`), or choose the template for the primary change type.
--- ---
**Q: 自动建议的模板不合适怎么办?**
**Q: What if the automatically suggested template is not suitable?** **Q: What if the automatically suggested template is not suitable?**
A: 你可以忽略建议,继续使用当前模板。自动建议仅供参考。
A: You can ignore the suggestion and continue using the current template. Auto-suggestions are for reference only. A: You can ignore the suggestion and continue using the current template. Auto-suggestions are for reference only.
--- ---
**Q: 可以不使用任何模板吗?**
**Q: Can I not use any template?** **Q: Can I not use any template?**
A: 不推荐。模板帮助确保PR包含必要信息加快审查速度。
A: Not recommended. Templates help ensure PRs contain necessary information and speed up reviews. A: Not recommended. Templates help ensure PRs contain necessary information and speed up reviews.
--- ---
**Q: 如何禁用自动模板建议?**
**Q: How to disable automatic template suggestions?** **Q: How to disable automatic template suggestions?**
A: 删除或禁用 `.github/workflows/pr-template-suggester.yml` 文件。
A: Delete or disable the `.github/workflows/pr-template-suggester.yml` file. A: Delete or disable the `.github/workflows/pr-template-suggester.yml` file.
--- ---
🌟 **感谢使用我们的PR模板系统| Thank you for using our PR template system!** 🌟 **Thank you for using our PR template system!**

View File

@@ -1,121 +1,116 @@
# Pull Request - Backend | 后端 PR # Pull Request - Backend
> **💡 提示 Tip:** 推荐 PR 标题格式 `type(scope): description` > **💡 Tip:** Recommended PR title format `type(scope): description`
> 例如: `feat(trader): add new strategy` | `fix(api): resolve auth issue` > Example: `feat(trader): add new strategy` | `fix(api): resolve auth issue`
--- ---
## 📝 Description | 描述 ## 📝 Description
**English:** **中文:**
--- ---
## 🎯 Type of Change | 变更类型 ## 🎯 Type of Change
- [ ] 🐛 Bug fix | 修复 Bug - [ ] 🐛 Bug fix
- [ ] ✨ New feature | 新功能 - [ ] ✨ New feature
- [ ] 💥 Breaking change | 破坏性变更 - [ ] 💥 Breaking change
- [ ] ♻️ Refactoring | 重构 - [ ] ♻️ Refactoring
- [ ] ⚡ Performance improvement | 性能优化 - [ ] ⚡ Performance improvement
- [ ] 🔒 Security fix | 安全修复 - [ ] 🔒 Security fix
- [ ] 🔧 Build/config change | 构建/配置变更 - [ ] 🔧 Build/config change
--- ---
## 🔗 Related Issues | 相关 Issue ## 🔗 Related Issues
- Closes # | 关闭 # - Closes #
- Related to # | 相关 # - Related to #
--- ---
## 📋 Changes Made | 具体变更 ## 📋 Changes Made
**English:** **中文:**
- -
- -
--- ---
## 🧪 Testing | 测试 ## 🧪 Testing
### Test Environment | 测试环境 ### Test Environment
- **OS | 操作系统:** - **OS:**
- **Go Version | Go 版本:** - **Go Version:**
- **Exchange | 交易所:** [if applicable | 如适用] - **Exchange:** [if applicable]
### Manual Testing | 手动测试 ### Manual Testing
- [ ] Tested locally | 本地测试通过 - [ ] Tested locally
- [ ] Tested on testnet | 测试网测试通过(交易所集成相关) - [ ] Tested on testnet (for exchange integration)
- [ ] Unit tests pass | 单元测试通过 - [ ] Unit tests pass
- [ ] Verified no existing functionality broke | 确认没有破坏现有功能 - [ ] Verified no existing functionality broke
### Test Results | 测试结果 ### Test Results
``` ```
Test output here | 测试输出 Test output here
``` ```
--- ---
## 🔒 Security Considerations | 安全考虑 ## 🔒 Security Considerations
- [ ] No API keys or secrets hardcoded | 没有硬编码 API 密钥 - [ ] No API keys or secrets hardcoded
- [ ] User inputs properly validated | 用户输入已正确验证 - [ ] User inputs properly validated
- [ ] No SQL injection vulnerabilities | 无 SQL 注入漏洞 - [ ] No SQL injection vulnerabilities
- [ ] Authentication/authorization properly handled | 认证/授权正确处理 - [ ] Authentication/authorization properly handled
- [ ] Sensitive data is encrypted | 敏感数据已加密 - [ ] Sensitive data is encrypted
- [ ] N/A (not security-related) | 不适用 - [ ] N/A (not security-related)
--- ---
## ⚡ Performance Impact | 性能影响 ## ⚡ Performance Impact
- [ ] No significant performance impact | 无显著性能影响 - [ ] No significant performance impact
- [ ] Performance improved | 性能提升 - [ ] Performance improved
- [ ] Performance may be impacted (explain below) | 性能可能受影响 - [ ] Performance may be impacted (explain below)
**If impacted, explain | 如果受影响,请说明:** **If impacted, explain:**
--- ---
## ✅ Checklist | 检查清单 ## ✅ Checklist
### Code Quality | 代码质量 ### Code Quality
- [ ] Code follows project style | 代码遵循项目风格 - [ ] Code follows project style
- [ ] Self-review completed | 已完成代码自查 - [ ] Self-review completed
- [ ] Comments added for complex logic | 已添加必要注释 - [ ] Comments added for complex logic
- [ ] Code compiles successfully | 代码编译成功 (`go build`) - [ ] Code compiles successfully (`go build`)
- [ ] Ran `go fmt` | 已运行 `go fmt` - [ ] Ran `go fmt`
### Documentation | 文档 ### Documentation
- [ ] Updated relevant documentation | 已更新相关文档 - [ ] Updated relevant documentation
- [ ] Added inline comments where necessary | 已添加必要的代码注释 - [ ] Added inline comments where necessary
- [ ] Updated API documentation (if applicable) | 已更新 API 文档 - [ ] Updated API documentation (if applicable)
### Git ### Git
- [ ] Commits follow conventional format | 提交遵循 Conventional Commits 格式 - [ ] Commits follow conventional format
- [ ] Rebased on latest `dev` branch | 已 rebase 到最新 `dev` 分支 - [ ] Rebased on latest `dev` branch
- [ ] No merge conflicts | 无合并冲突 - [ ] No merge conflicts
--- ---
## 📚 Additional Notes | 补充说明 ## 📚 Additional Notes
**English:** **中文:**
--- ---
**By submitting this PR, I confirm | 提交此 PR我确认** **By submitting this PR, I confirm:**
- [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md) | 已阅读贡献指南 - [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md)
- [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md) | 同意行为准则 - [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md)
- [ ] My contribution is licensed under AGPL-3.0 | 贡献遵循 AGPL-3.0 许可证 - [ ] My contribution is licensed under AGPL-3.0
--- ---
🌟 **Thank you for your contribution! | 感谢你的贡献!** 🌟 **Thank you for your contribution!**

View File

@@ -1,97 +1,91 @@
# Pull Request - Documentation | 文档 PR # Pull Request - Documentation
> **💡 提示 Tip:** 推荐 PR 标题格式 `docs(scope): description` > **💡 Tip:** Recommended PR title format `docs(scope): description`
> 例如: `docs(api): update trading endpoints` | `docs(readme): add setup guide` > Example: `docs(api): update trading endpoints` | `docs(readme): add setup guide`
--- ---
## 📝 Description | 描述 ## 📝 Description
**English:** **中文:**
--- ---
## 📚 Type of Documentation | 文档类型 ## 📚 Type of Documentation
- [ ] 📖 README update | README 更新 - [ ] 📖 README update
- [ ] 📋 API documentation | API 文档 - [ ] 📋 API documentation
- [ ] 🎓 Tutorial/Guide | 教程/指南 - [ ] 🎓 Tutorial/Guide
- [ ] 📝 Code comments | 代码注释 - [ ] 📝 Code comments
- [ ] 🔧 Configuration docs | 配置文档 - [ ] 🔧 Configuration docs
- [ ] 🐛 Fix typo/error | 修复拼写/错误 - [ ] 🐛 Fix typo/error
- [ ] 🌍 Translation | 翻译 - [ ] 🌍 Translation
--- ---
## 🔗 Related Issues | 相关 Issue ## 🔗 Related Issues
- Closes # | 关闭 # - Closes #
- Related to # | 相关 # - Related to #
--- ---
## 📋 Changes Made | 具体变更 ## 📋 Changes Made
**English:** **中文:**
- -
- -
--- ---
## 📸 Screenshots (if applicable) | 截图(如适用) ## 📸 Screenshots (if applicable)
<!-- For documentation with images, diagrams, or UI examples --> <!-- For documentation with images, diagrams, or UI examples -->
<!-- 用于包含图片、图表或 UI 示例的文档 -->
--- ---
## 🌐 Internationalization | 国际化 ## 🌐 Internationalization
- [ ] English version complete | 英文版本完整 - [ ] English version complete
- [ ] Chinese version complete | 中文版本完整 - [ ] Chinese version complete
- [ ] Both versions are consistent | 两个版本内容一致 - [ ] Both versions are consistent
- [ ] N/A (only one language needed) | 不适用(只需要一种语言) - [ ] N/A (only one language needed)
--- ---
## ✅ Checklist | 检查清单 ## ✅ Checklist
### Content Quality | 内容质量 ### Content Quality
- [ ] Information is accurate and up-to-date | 信息准确且最新 - [ ] Information is accurate and up-to-date
- [ ] Language is clear and concise | 语言清晰简洁 - [ ] Language is clear and concise
- [ ] No spelling or grammar errors | 无拼写或语法错误 - [ ] No spelling or grammar errors
- [ ] Links are valid and working | 链接有效且可用 - [ ] Links are valid and working
- [ ] Code examples are tested and working | 代码示例已测试且可用 - [ ] Code examples are tested and working
- [ ] Formatting is consistent | 格式一致 - [ ] Formatting is consistent
### Documentation Standards | 文档标准 ### Documentation Standards
- [ ] Follows project documentation style | 遵循项目文档风格 - [ ] Follows project documentation style
- [ ] Includes necessary examples | 包含必要的示例 - [ ] Includes necessary examples
- [ ] Technical terms are explained | 技术术语已解释 - [ ] Technical terms are explained
- [ ] Self-review completed | 已完成自查 - [ ] Self-review completed
### Git ### Git
- [ ] Commits follow conventional format | 提交遵循 Conventional Commits 格式 - [ ] Commits follow conventional format
- [ ] Rebased on latest `dev` branch | 已 rebase 到最新 `dev` 分支 - [ ] Rebased on latest `dev` branch
- [ ] No merge conflicts | 无合并冲突 - [ ] No merge conflicts
--- ---
## 📚 Additional Notes | 补充说明 ## 📚 Additional Notes
**English:** **中文:**
--- ---
**By submitting this PR, I confirm | 提交此 PR我确认** **By submitting this PR, I confirm:**
- [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md) | 已阅读贡献指南 - [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md)
- [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md) | 同意行为准则 - [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md)
- [ ] My contribution is licensed under AGPL-3.0 | 贡献遵循 AGPL-3.0 许可证 - [ ] My contribution is licensed under AGPL-3.0
--- ---
🌟 **Thank you for your contribution! | 感谢你的贡献!** 🌟 **Thank you for your contribution!**

View File

@@ -1,119 +1,113 @@
# Pull Request - Frontend | 前端 PR # Pull Request - Frontend
> **💡 提示 Tip:** 推荐 PR 标题格式 `type(scope): description` > **💡 Tip:** Recommended PR title format `type(scope): description`
> 例如: `feat(ui): add dark mode toggle` | `fix(form): resolve validation bug` > Example: `feat(ui): add dark mode toggle` | `fix(form): resolve validation bug`
--- ---
## 📝 Description | 描述 ## 📝 Description
**English:** **中文:**
--- ---
## 🎯 Type of Change | 变更类型 ## 🎯 Type of Change
- [ ] 🐛 Bug fix | 修复 Bug - [ ] 🐛 Bug fix
- [ ] ✨ New feature | 新功能 - [ ] ✨ New feature
- [ ] 💥 Breaking change | 破坏性变更 - [ ] 💥 Breaking change
- [ ] 🎨 Code style update | 代码样式更新 - [ ] 🎨 Code style update
- [ ] ♻️ Refactoring | 重构 - [ ] ♻️ Refactoring
- [ ] ⚡ Performance improvement | 性能优化 - [ ] ⚡ Performance improvement
--- ---
## 🔗 Related Issues | 相关 Issue ## 🔗 Related Issues
- Closes # | 关闭 # - Closes #
- Related to # | 相关 # - Related to #
--- ---
## 📋 Changes Made | 具体变更 ## 📋 Changes Made
**English:** **中文:**
- -
- -
--- ---
## 📸 Screenshots / Demo | 截图/演示 ## 📸 Screenshots / Demo
<!-- For UI changes, include before/after screenshots or video demo --> <!-- For UI changes, include before/after screenshots or video demo -->
<!-- 对于 UI 变更,请包含变更前后的截图或视频演示 -->
**Before | 变更前:** **Before:**
**After | 变更后:** **After:**
--- ---
## 🧪 Testing | 测试 ## 🧪 Testing
### Test Environment | 测试环境 ### Test Environment
- **OS | 操作系统:** - **OS:**
- **Node Version | Node 版本:** - **Node Version:**
- **Browser(s) | 浏览器:** - **Browser(s):**
### Manual Testing | 手动测试 ### Manual Testing
- [ ] Tested in development mode | 开发模式测试通过 - [ ] Tested in development mode
- [ ] Tested production build | 生产构建测试通过 - [ ] Tested production build
- [ ] Tested on multiple browsers | 多浏览器测试通过 - [ ] Tested on multiple browsers
- [ ] Tested responsive design | 响应式设计测试通过 - [ ] Tested responsive design
- [ ] Verified no existing functionality broke | 确认没有破坏现有功能 - [ ] Verified no existing functionality broke
--- ---
## 🌐 Internationalization | 国际化 ## 🌐 Internationalization
- [ ] All user-facing text supports i18n | 所有面向用户的文本支持国际化 - [ ] All user-facing text supports i18n
- [ ] Both English and Chinese versions provided | 提供了中英文版本 - [ ] Both English and Chinese versions provided
- [ ] N/A | 不适用 - [ ] N/A
--- ---
## ✅ Checklist | 检查清单 ## ✅ Checklist
### Code Quality | 代码质量 ### Code Quality
- [ ] Code follows project style | 代码遵循项目风格 - [ ] Code follows project style
- [ ] Self-review completed | 已完成代码自查 - [ ] Self-review completed
- [ ] Comments added for complex logic | 已添加必要注释 - [ ] Comments added for complex logic
- [ ] Code builds successfully | 代码构建成功 (`npm run build`) - [ ] Code builds successfully (`npm run build`)
- [ ] Ran `npm run lint` | 已运行 `npm run lint` - [ ] Ran `npm run lint`
- [ ] No console errors or warnings | 无控制台错误或警告 - [ ] No console errors or warnings
### Testing | 测试 ### Testing
- [ ] Component tests added/updated | 已添加/更新组件测试 - [ ] Component tests added/updated
- [ ] Tests pass locally | 测试在本地通过 - [ ] Tests pass locally
### Documentation | 文档 ### Documentation
- [ ] Updated relevant documentation | 已更新相关文档 - [ ] Updated relevant documentation
- [ ] Updated type definitions (TypeScript) | 已更新类型定义 - [ ] Updated type definitions (TypeScript)
- [ ] Added JSDoc comments where necessary | 已添加 JSDoc 注释 - [ ] Added JSDoc comments where necessary
### Git ### Git
- [ ] Commits follow conventional format | 提交遵循 Conventional Commits 格式 - [ ] Commits follow conventional format
- [ ] Rebased on latest `dev` branch | 已 rebase 到最新 `dev` 分支 - [ ] Rebased on latest `dev` branch
- [ ] No merge conflicts | 无合并冲突 - [ ] No merge conflicts
--- ---
## 📚 Additional Notes | 补充说明 ## 📚 Additional Notes
**English:** **中文:**
--- ---
**By submitting this PR, I confirm | 提交此 PR我确认** **By submitting this PR, I confirm:**
- [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md) | 已阅读贡献指南 - [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md)
- [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md) | 同意行为准则 - [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md)
- [ ] My contribution is licensed under AGPL-3.0 | 贡献遵循 AGPL-3.0 许可证 - [ ] My contribution is licensed under AGPL-3.0
--- ---
🌟 **Thank you for your contribution! | 感谢你的贡献!** 🌟 **Thank you for your contribution!**

View File

@@ -1,98 +1,93 @@
# Pull Request - General | 通用 PR # Pull Request - General
> **💡 提示 Tip:** 推荐 PR 标题格式 `type(scope): description` > **💡 Tip:** Recommended PR title format `type(scope): description`
> 例如: `feat(trader): add new strategy` | `fix(api): resolve auth issue` | `docs(readme): update` > Example: `feat(trader): add new strategy` | `fix(api): resolve auth issue` | `docs(readme): update`
--- ---
## 📝 Description | 描述 ## 📝 Description
**English:** **中文:**
--- ---
## 🎯 Type of Change | 变更类型 ## 🎯 Type of Change
- [ ] 🐛 Bug fix | 修复 Bug - [ ] 🐛 Bug fix
- [ ] ✨ New feature | 新功能 - [ ] ✨ New feature
- [ ] 💥 Breaking change | 破坏性变更 - [ ] 💥 Breaking change
- [ ] 📝 Documentation update | 文档更新 - [ ] 📝 Documentation update
- [ ] 🎨 Code style update | 代码样式更新 - [ ] 🎨 Code style update
- [ ] ♻️ Refactoring | 重构 - [ ] ♻️ Refactoring
- [ ] ⚡ Performance improvement | 性能优化 - [ ] ⚡ Performance improvement
- [ ] ✅ Test update | 测试更新 - [ ] ✅ Test update
- [ ] 🔧 Build/config change | 构建/配置变更 - [ ] 🔧 Build/config change
- [ ] 🔒 Security fix | 安全修复 - [ ] 🔒 Security fix
--- ---
## 🔗 Related Issues | 相关 Issue ## 🔗 Related Issues
- Closes # | 关闭 # - Closes #
- Related to # | 相关 # - Related to #
--- ---
## 📋 Changes Made | 具体变更 ## 📋 Changes Made
**English:** **中文:**
- -
- -
--- ---
## 🧪 Testing | 测试 ## 🧪 Testing
- [ ] Tested locally | 本地测试通过 - [ ] Tested locally
- [ ] Tests pass | 测试通过 - [ ] Tests pass
- [ ] Verified no existing functionality broke | 确认没有破坏现有功能 - [ ] Verified no existing functionality broke
**Test details | 测试详情:** **Test details:**
--- ---
## ✅ Checklist | 检查清单 ## ✅ Checklist
### Code Quality | 代码质量 ### Code Quality
- [ ] Code follows project style | 代码遵循项目风格 - [ ] Code follows project style
- [ ] Self-review completed | 已完成代码自查 - [ ] Self-review completed
- [ ] Comments added for complex logic | 已添加必要注释 - [ ] Comments added for complex logic
- [ ] No new warnings or errors | 无新的警告或错误 - [ ] No new warnings or errors
### Documentation | 文档 ### Documentation
- [ ] Updated relevant documentation | 已更新相关文档 - [ ] Updated relevant documentation
- [ ] Added inline comments where necessary | 已添加必要的代码注释 - [ ] Added inline comments where necessary
### Git ### Git
- [ ] Commits follow conventional format | 提交遵循 Conventional Commits 格式 - [ ] Commits follow conventional format
- [ ] Rebased on latest `dev` branch | 已 rebase 到最新 `dev` 分支 - [ ] Rebased on latest `dev` branch
- [ ] No merge conflicts | 无合并冲突 - [ ] No merge conflicts
--- ---
## 🔒 Security (if applicable) | 安全(如适用) ## 🔒 Security (if applicable)
- [ ] No API keys or secrets hardcoded | 没有硬编码 API 密钥 - [ ] No API keys or secrets hardcoded
- [ ] User inputs properly validated | 用户输入已正确验证 - [ ] User inputs properly validated
- [ ] N/A | 不适用 - [ ] N/A
--- ---
## 📚 Additional Notes | 补充说明 ## 📚 Additional Notes
**English:** **中文:**
--- ---
**By submitting this PR, I confirm | 提交此 PR我确认** **By submitting this PR, I confirm:**
- [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md) | 已阅读贡献指南 - [ ] I have read the [Contributing Guidelines](../../CONTRIBUTING.md)
- [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md) | 同意行为准则 - [ ] I agree to the [Code of Conduct](../../CODE_OF_CONDUCT.md)
- [ ] My contribution is licensed under AGPL-3.0 | 贡献遵循 AGPL-3.0 许可证 - [ ] My contribution is licensed under AGPL-3.0
--- ---
🌟 **Thank you for your contribution! | 感谢你的贡献!** 🌟 **Thank you for your contribution!**