# Trae 配置 > 📚 **详细文档请查阅**: `docs/` 目录 > - 业务蓝图: `docs/ARCHIVE/00_Business/` 或 `docs/LOOPS/` > - 架构设计: `docs/ARCHIVE/01_Architecture/` > - AI规范: `docs/ARCHIVE/05_AI/` > - 治理规范: `docs/ARCHIVE/00_Business/Governance_Standards.md` ## 🚀 快速索引 ### 项目特定规则 (rules/project-specific-rules.md) 本文件包含 **Crawlful Hub** 项目的硬性约束和配置,所有代码必须遵守: | 章节 | 关键约束 | |------|---------| | **1. 数据与存储约束** | 表前缀 `cf_`, 金额 `decimal(10,2)`, 物理单位 | | **2. 核心业务规则** | 决策门禁 `PENDING_REVIEW`, 利润红线 B2B<15%/B2C<20% | | **3. 插件技术规范** | 消息类型统一入口 `messaging.ts` | | **4. 安全与权限** | RBAC模型, `authorize()` 中间件, 数据隔离 | | **5. 架构与性能边界** | 单机 Worker≤10, 内存≤4GB, BullMQ队列 | | **6. TOB与套利专项** | 净利公式, No-API Bridge + PENDING_REVIEW | | **7. AI协作协议** | 任务包领取(最小2个), 防撞车机制, 文件占用锁 | | **8. 逻辑集中化原则** | 所有业务逻辑必须在Service层 | | **9. 追踪与日志** | 五元组必填 (tenantId/shopId/taskId/traceId/businessType) | | **10. 代码质量门禁** | 服务类 `Service` 后缀, 单文件≤1500行 | | **11. Mock数据规范** | 禁止硬编码Mock, DataSource抽象层 | | **12. TypeScript类型安全** | 禁止any, 函数声明返回类型, Schema驱动 | | **13. 错误处理与异常** | 统一错误码, 全局异常处理, 事务回滚 | | **14. 日志管理** | 日志级别(DEBUG/INFO/WARN/ERROR), 格式, 存储策略 | ## 📁 项目结构 ``` .trae/ ├── rules/ │ └── project-specific-rules.md # 项目特定规则(硬性约束) └── README.md # 本文件 ``` ## 🔧 快速参考 | 规则类别 | 关键约束 | 违反后果 | |---------|---------|---------| | 数据存储 | 表前缀 `cf_`, 金额 `decimal(10,2)` | 数据不一致 | | 业务决策 | 必须 `PENDING_REVIEW` | 直接修改生产数据 | | 利润红线 | B2B<15%禁止, B2C<20%预警 | 财务风险 | | 安全权限 | 使用 `authorize()` 中间件 | 权限漏洞 | | 性能边界 | Worker并发≤10, 内存≤4GB | 系统崩溃 | | 追踪日志 | 五元组必填 | 无法追溯 | | **逻辑集中化** | **所有业务逻辑必须在Service层** | **AI维护困难,数据不一致** | | **任务领取** | **优先领任务包,最小2个任务** | **碎片化等待** | | **协作防撞** | **必须声明占用,先声明优先** | **重复开发** | | **Mock规范** | **Mock数据必须隔离,禁止硬编码** | **AI上下文污染** | | **TypeScript** | **禁止any,函数必须声明返回类型** | **类型安全丧失** | | **错误处理** | **统一错误码,全局异常处理** | **错误扩散,难以追踪** | | **日志管理** | **日志级别/格式/存储策略** | **日志混乱,难以分析** | ## ⚠️ AI 必读 1. **所有代码必须遵守 project-specific-rules.md 中的硬性约束** 2. **逻辑集中化是核心原则**:业务逻辑必须集中在 Service 层 3. **任务领取必须完整**:单次领取不少于 2 个相关任务 4. **协作必须声明占用**:先声明者优先 ## 🤝 贡献 欢迎贡献规则配置和提出建议!请先阅读项目文档,然后提交 Pull Request。