M-AI-04-01: 审计并冻结迁移契约 (文档) M-AI-04-02: 注册 JobDefinition + SnapshotBuilder (28 tests) M-AI-04-03: Executor + BusinessValidator + ReferenceValidator (31 tests) M-AI-04-04: Projector + Artifact + 幂等写入 (19 tests) M-AI-04-05: 入口集成 (Router + CreationService + Engine + Executor) M-AI-04-06: 状态兼容 + 结构化日志 + 指标计数器 (255 tests) M-AI-04-07: 真实业务 E2E + CI 触发 + FeatureFlag 受控切换 (11 tests) P0 修复: - 跨用户 question 所有权校验 (active-recall.service.ts) - E2E infra 不可用时 HARD FAIL (fail() 替代静默 skip) 添加文件: - docs/architecture/m-ai-04-active-recall-migration-contract.md - 12 个 ai-job 模块文件 (Definition/Snapshot/Executor/Validator/Projector/Router/Observability) - test/m-ai-04-active-recall.e2e-spec.ts + setup 修改文件: - active-recall.service.ts, active-recall.module.ts - ai-job-creation.service.ts, ai-job-execution-engine.ts, ai-job.module.ts - .gitea/workflows/deploy.yml (CI 变更检测) - test/jest-e2e.json (setupFiles + globals) Co-Authored-By: Claude <noreply@anthropic.com>
24 lines
872 B
JSON
24 lines
872 B
JSON
{
|
|
"moduleFileExtensions": ["js", "json", "ts"],
|
|
"rootDir": "..",
|
|
"testEnvironment": "node",
|
|
"testRegex": ".e2e-spec.ts$",
|
|
"transform": {
|
|
"^.+\\.(t|j)sx?$": ["ts-jest", { "useESM": false, "tsconfig": "tsconfig.json" }]
|
|
},
|
|
"transformIgnorePatterns": ["/node_modules/"],
|
|
"moduleNameMapper": {
|
|
"^jose$": "<rootDir>/test/mocks/jose.mock.ts",
|
|
"^ioredis$": "<rootDir>/test/mocks/ioredis.mock.ts",
|
|
"^@prisma/client$": "<rootDir>/test/mocks/prisma.mock.ts",
|
|
"^@nestjs/bullmq$": "<rootDir>/test/mocks/bullmq.mock.ts",
|
|
"^@qdrant/js-client-rest$": "<rootDir>/test/mocks/qdrant.mock.ts"
|
|
},
|
|
"globals": {
|
|
"DATABASE_URL": "mysql://test:test@localhost:3306/test_db",
|
|
"CREDENTIAL_ENCRYPTION_KEY": "m-ai-04-e2e-test-key-32-bytes!!",
|
|
"JWT_SECRET": "m-ai-04-e2e-jwt-secret"
|
|
},
|
|
"setupFiles": ["<rootDir>/test/m-ai-04-e2e-setup.ts"]
|
|
}
|