Draft
As a 开发者,
I want 将现有的独立模块(user-module、auth-module、file-module)改为适配器模式,重新导出 @d8d/core-module 中的代码,
so that 我们可以简化依赖关系,统一代码管理到 core-module 中,提高代码维护性。
core-module@d8d/core-modulepackages/user-module/src 目录packages/auth-module/src 目录packages/file-module/src 目录[ ] 将 user-module 改为适配器模式 (AC: 1, 2, 3)
packages/user-module/src 目录中的完整代码packages/user-module/src/index.ts,重新导出 @d8d/core-module/user-modulepackages/user-module-mt/src/index.mt.ts代码示例:
// User Module Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module/user-module'
[ ] 创建 packages/user-module/src/schemas/index.ts,重新导出 @d8d/core-module/user-module/schemas
参考多租户模块写法:packages/user-module-mt/src/schemas/index.mt.ts
代码示例:
// User Module Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module/user-module/schemas'
[ ] 更新 packages/user-module/package.json:简化依赖关系,只依赖 @d8d/core-module
[ ] 将 auth-module 改为适配器模式 (AC: 1, 2, 3)
packages/auth-module/src 目录中的完整代码packages/auth-module/src/index.ts,重新导出 @d8d/core-module/auth-modulepackages/auth-module-mt/src/index.mt.ts代码示例:
// Auth Module Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module/auth-module'
[ ] 创建 packages/auth-module/src/schemas/index.ts,重新导出 @d8d/core-module/auth-module/schemas
参考多租户模块写法:packages/auth-module-mt/src/schemas/index.mt.ts
代码示例:
// Auth Module Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module/auth-module/schemas'
[ ] 更新 packages/auth-module/package.json:简化依赖关系,只依赖 @d8d/core-module
[ ] 将 file-module 改为适配器模式 (AC: 1, 2, 3)
packages/file-module/src 目录中的完整代码packages/file-module/src/index.ts,重新导出 @d8d/core-module/file-modulepackages/file-module-mt/src/index.ts代码示例:
// File Module Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module/file-module'
[ ] 创建 packages/file-module/src/schemas/index.ts,重新导出 @d8d/core-module/file-module/schemas
参考多租户模块写法:packages/file-module-mt/src/schemas/index.ts
代码示例:
// File Module Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module/file-module/schemas'
[ ] 更新 packages/file-module/package.json:简化依赖关系,只依赖 @d8d/core-module
[ ] 验证适配器模式功能正常 (AC: 4, 5)
core-modulecd packages/user-module && pnpm testcd packages/auth-module && pnpm testcd packages/file-module && pnpm testcd packages/user-module && pnpm typecheckcd packages/auth-module && pnpm typecheckcd packages/file-module && pnpm typecheck[ ] 更新文档 (AC: 6)
packages/core-module/ - 核心模块聚合包 (@d8d/core-module)user-module/, auth-module/, file-module/, system-config-module/tests/ 目录在包根目录下 [Source: architecture/testing-strategy.md#单元测试]packages/*-module/tests/unit/**/*.test.ts [Source: architecture/testing-strategy.md#单元测试]packages/*-module/tests/integration/**/*.test.ts [Source: architecture/testing-strategy.md#集成测试]cd packages/user-module && pnpm testcd packages/user-module && pnpm test:unitcd packages/auth-module && pnpm test:integrationcd packages/user-module && pnpm test:coverage当前架构:
多租户版本:
core-module-mt 中user-module-mt、auth-module-mt、file-module-mt 只是适配器,重新导出 @d8d/core-module-mt 中的代码非多租户版本(当前):
user-module、auth-module、file-module 包含完整代码目标架构:
core-module 中(通过 Story 1 创建)@d8d/core-module 中的代码packages/core-module/user-module/src/index.ts - core-module 中的用户模块入口packages/core-module/auth-module/src/index.ts - core-module 中的认证模块入口packages/core-module/file-module/src/index.ts - core-module 中的文件模块入口packages/core-module/user-module/src/schemas/index.ts - core-module 中的用户模式packages/core-module/auth-module/src/schemas/index.ts - core-module 中的认证模式packages/core-module/file-module/src/schemas/index.ts - core-module 中的文件模式packages/user-module-mt/src/index.mt.ts - 用户模块适配器入口(参考写法)
// User Module MT Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module-mt/user-module-mt'
packages/user-module-mt/src/schemas/index.mt.ts - 用户模式适配器(参考写法)
// User Module MT Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module-mt/user-module-mt/schemas'
packages/auth-module-mt/src/index.mt.ts - 认证模块适配器入口(参考写法)
// Auth Module MT Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module-mt/auth-module-mt'
packages/auth-module-mt/src/schemas/index.mt.ts - 认证模式适配器(参考写法)
// Auth Module MT Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module-mt/auth-module-mt/schemas'
packages/file-module-mt/src/index.ts - 文件模块适配器入口(参考写法)
// File Module MT Adapter Package
// 适配器包,从核心包重新导出所有接口
export * from '@d8d/core-module-mt/file-module-mt'
packages/file-module-mt/src/schemas/index.ts - 文件模式适配器(参考写法)
// File Module MT Schemas Adapter
// 适配器包,从核心包重新导出schemas接口
export * from '@d8d/core-module-mt/file-module-mt/schemas'
当前独立模块依赖多个包:
@d8d/shared-types@d8d/shared-utils@d8d/shared-crud改为适配器模式后,只需依赖:
@d8d/core-moduleimport { UserService } from '@d8d/user-module';tests/ 目录在包根目录下 [Source: architecture/testing-strategy.md#单元测试]cd packages/user-module && pnpm test:unitcd packages/auth-module && pnpm test:integrationcd packages/file-module && pnpm testcd packages/user-module && pnpm typecheck| Date | Version | Description | Author |
|---|---|---|---|
| 2025-12-02 | 1.0 | 初始故事创建 | Bob (Scrum Master) |
This section is populated by the development agent during implementation
Record the specific AI agent model and version used for development
Reference any debug logs or traces generated during development
Notes about the completion of tasks and any issues encountered
List all files created, modified, or affected during story implementation
Results from QA Agent QA review of the completed story implementation