Draft
As a 系统架构师, I want 将 CRUD 核心基础设施从 packages/server/src 拆分为独立的 crud-core package 并重构 server 依赖关系, so that 为业务模块提供标准化的 CRUD 操作支持,并建立清晰的依赖层次结构
GenericCrudService 类ConcreteCrudService 类createCrudRoutes 函数GenericCrudService 完整实现ConcreteCrudService 完整实现createCrudRoutes 完整实现CrudOptions 类型定义generic-crud.service.ts - 通用CRUD服务基类concrete-crud.service.ts - 具体CRUD服务实现generic-crud.routes.ts - 通用CRUD路由生成器// crud-core package.json
{
"name": "@d8d/crud-core",
"dependencies": {
"@d8d/shared-types": "workspace:*",
"@d8d/user-core": "workspace:*",
"typeorm": "^0.3.20",
"@hono/zod-openapi": "1.0.2",
"zod": "^4.1.12"
}
}
// 重构后的 server package.json
{
"name": "@d8d/server",
"dependencies": {
"@d8d/shared-types": "workspace:*",
"@d8d/crud-core": "workspace:*",
"@d8d/user-core": "workspace:*",
"@d8d/auth-core": "workspace:*",
"@d8d/utils-core": "workspace:*"
}
}
GenericCrudService - 通用CRUD服务基类ConcreteCrudService - 具体CRUD服务实现createCrudRoutes - 通用CRUD路由生成器CrudOptions - CRUD配置选项类型"composite": true"main"、"types" 和 "exports" 必须指向 src 目录(pnpm workspace 直接引用源码)tests/ 目录(遵循现有测试策略)[Source: architecture/testing-strategy.md#测试金字塔策略]
tests/unit/ - 单元测试tests/integration/ - 集成测试pnpm test 在每个 package 中运行必须与 packages/server 完全一致的依赖版本:
typeorm: ^0.3.20hono: ^4.8.5zod: ^4.1.12@hono/zod-openapi: 1.0.2jsonwebtoken: ^9.0.2bcrypt: ^6.0.0pg: ^8.16.3axios: ^1.12.2开发依赖版本对齐:
typescript: ^5.8.3vitest: ^3.2.4@types/* 相关依赖版本保持一致| Date | Version | Description | Author |
|---|---|---|---|
| 2025-11-10 | 1.0 | 初始创建故事文档 | Bob (Scrum Master) |
| 2025-11-10 | 1.1 | 更新依赖关系,移除 database-core 引用 | Bob (Scrum Master) |
| 2025-11-10 | 1.2 | 添加依赖版本对齐要求和测试覆盖率目标 | Bob (Scrum Master) |
| 2025-11-10 | 1.3 | 基于实际代码分析更新需要迁移的CRUD模式 | Bob (Scrum Master) |
此部分由开发代理在实现过程中填写
{{agent_model_name_version}}