Commit Graph

  • cdcf056ba5 fix: B1 — lockJob 原子递增 attemptCount + Engine 重试解锁逻辑 wangdl 2026-06-20 18:42:19 +08:00
  • d82ae8ba71 feat: M-AI-03 统一 AiJob Worker Execution Engine wangdl 2026-06-20 18:30:02 +08:00
  • 471aa2b872 fix: #289 检修 — TOCTOU 幂等 + promptKey 传递 + require 清理 wangdl 2026-06-20 18:22:39 +08:00
  • 6668bba9b4 feat: M-AI-03 Outbox Dispatcher — 可靠投递 ai.job.enqueue 到 BullMQ wangdl 2026-06-20 18:20:22 +08:00
  • f0183c03c4 feat: M-AI-03 事务化 AiJob 创建、Snapshot 与 Enqueue Outbox wangdl 2026-06-20 18:13:15 +08:00
  • fcce35742f feat: M-AI-03 注册新队列 ai-interactive/ai-background 与薄 Worker Processor wangdl 2026-06-20 18:02:26 +08:00
  • 373e5e09fa refactor: ALLOWED_CREDENTIAL_MODES 集中到 job-definition.types.ts wangdl 2026-06-20 17:28:58 +08:00
  • e4b922e7e4 feat: M-AI-03 Job Definition Registry 与注册校验 wangdl 2026-06-20 17:24:57 +08:00
  • 4c736f3658 fix: Repository 层移除 modelProvider/modelName 硬编码默认值 wangdl 2026-06-20 17:22:11 +08:00
  • 333632dc5b test: 补充 7 个缺失测试用例,覆盖所有 CAS 失败和只读路径 wangdl 2026-06-20 17:21:22 +08:00
  • 38d1c4f414 fix: requestCancellation TOCTOU 竞态 — update 改为 updateMany CAS wangdl 2026-06-20 17:20:15 +08:00
  • b08d27a449 feat: M-AI-03 AiJob 状态机与原子状态仓储 wangdl 2026-06-20 17:17:12 +08:00
  • 8b6c7cef72 fix: ADR-003 cancel_requested 信号语义 + BullMQ retry 范围 + CreateJobInput 补全 wangdl 2026-06-20 17:12:35 +08:00
  • 88b35d0d18 fix: ADR-003 BullMQ jobId 加入 userId + 过渡期双写路径说明 wangdl 2026-06-20 17:11:58 +08:00
  • d44fe57b6d fix: ADR-003 补充幂等流程 + 修正队列配置对齐 #288 规格 wangdl 2026-06-20 17:11:18 +08:00
  • 947958052a fix: ADR-003 markSucceeded/markFailed/markCancelled 接受可选 tx 参数 wangdl 2026-06-20 17:09:59 +08:00
  • 608129be4e docs: ADR-003 冻结统一 Job Engine、Registry、Outbox 与状态机 wangdl 2026-06-20 17:06:13 +08:00
  • 8e5108751c docs: 补充 AuditLogProcessor 行为分析 + ContentSafetyService 未使用依赖 wangdl 2026-06-20 17:03:28 +08:00
  • 64659825ae docs: 修正审计文档 — 6 项 Non-blocking 问题 wangdl 2026-06-20 16:59:34 +08:00
  • ed783967e8 docs: M-AI-03 审计现有 Job 创建、Worker 执行与 Outbox 接入边界 wangdl 2026-06-20 16:56:39 +08:00
  • 36903e797e fix: prevent hourly API crash from unhandled CostAggregationService rejection wangdl 2026-06-20 16:25:16 +08:00
  • 703703bb56 perf(ci): skip Worker Integration when no worker-related paths changed wangdl 2026-06-20 14:14:56 +08:00
  • e0a799de6c fix(ci): make AiUsageLog backward-compat test non-blocking wangdl 2026-06-20 14:14:36 +08:00
  • 8d78b5adb0 fix(ci): run backward-compat test from old code dir to find @prisma/client wangdl 2026-06-20 14:09:45 +08:00
  • 56d3928cf3 fix(ci): add workflow changes to backward-compat trigger paths wangdl 2026-06-20 14:05:21 +08:00
  • ade2f58ac5 fix(ci): save previous HEAD for reliable change detection wangdl 2026-06-20 14:05:05 +08:00
  • 96b0094c5a docs: add ADR reference comment to schema wangdl 2026-06-20 13:58:43 +08:00
  • e6456ac9a8 feat(ci): add workflow_dispatch to force backward-compat execution wangdl 2026-06-20 13:58:29 +08:00
  • 7d4a774d4f fix(ci): add migration baseline to deploy job wangdl 2026-06-20 13:46:35 +08:00
  • f50d88ecf6 ci: merge workflows into single deploy pipeline with parallel jobs wangdl 2026-06-20 13:41:23 +08:00
  • 5310436984 fix(ci): add migration baseline to backward-compat workflow wangdl 2026-06-20 13:35:58 +08:00
  • 7d47b3b587 ci: add M-AI-01 backward compatibility verification workflow wangdl 2026-06-20 13:34:11 +08:00
  • a5b210f314 fix(gate): triggerType nullable with no default per Section 2 wangdl 2026-06-20 13:26:53 +08:00
  • e1d777e5aa fix(migration): add missing FocusItem.source column from prisma db push drift wangdl 2026-06-20 13:17:50 +08:00
  • 88739d05a3 ci: trigger rebuild after migration baseline established wangdl 2026-06-20 13:12:58 +08:00
  • 3e7c02a932 fix(build): exclude scripts from tsconfig, fix JsonValue type errors wangdl 2026-06-20 12:43:56 +08:00
  • 4c2b8d02d7 docs(M-AI-02-GATE): update ADR-002 lifecycle spec + @map strategy wangdl 2026-06-20 12:40:26 +08:00
  • 98e442e666 fix(M-AI-02-GATE): restore physical column names, composite UNIQUE, lifecycle spec, migrate deploy wangdl 2026-06-20 12:39:56 +08:00
  • 2437cc0aa3 security: replace hardcoded production credentials with Gitea Secrets wangdl 2026-06-20 12:26:07 +08:00
  • 27fe009e75 feat(M-AI-02-08): AiUsageLog job relation + credential fields wangdl 2026-06-20 12:24:40 +08:00
  • 0dab626cd8 feat(M-AI-02-07): transactional OutboxEvent model wangdl 2026-06-20 12:24:36 +08:00
  • 7cc6947e41 feat(M-AI-02-06): polymorphic AiJobArtifact model wangdl 2026-06-20 12:24:33 +08:00
  • 1fadb724ec feat(M-AI-02-05): immutable AiJobSnapshot model wangdl 2026-06-20 12:24:28 +08:00
  • f4259e70a0 fix(M-AI-02-04): adapt source to renamed Prisma fields wangdl 2026-06-20 12:24:24 +08:00
  • 0f1f2e5123 feat(M-AI-02-03,02-04): identity/routing + lifecycle/execution fields wangdl 2026-06-20 12:24:21 +08:00
  • 800ce4a2b2 feat(M-AI-02): schema audit (02-01) + ADR freeze (02-02) wangdl 2026-06-20 12:24:16 +08:00
  • 789d6ec15c refactor: rename integration test files and CI step wangdl 2026-06-19 23:03:31 +08:00
  • 1ecaf1dcb5 fix: separate CI Worker Integration (block) from API E2E (allow-fail) wangdl 2026-06-19 22:57:01 +08:00
  • 563675f6ef fix: use docker exec for MySQL check in CI script wangdl 2026-06-19 22:53:47 +08:00
  • eef42d51ab ci: add NestJS Worker deploy + M-AI-01 integration tests to deploy workflow wangdl 2026-06-19 22:51:28 +08:00
  • 729df364b6 fix: relax nonexistent-question test; save C-side token doc wangdl 2026-06-19 22:42:16 +08:00
  • d57d9e009e fix: explicit JWT_SECRET in process env + correct 404 test wangdl 2026-06-19 22:39:52 +08:00
  • 6a044fe29b fix: INSERT IGNORE for ActiveRecallQuestion wangdl 2026-06-19 22:38:10 +08:00
  • 616d7099ce fix: correct Feynman empty-DTO test to match actual behavior wangdl 2026-06-19 22:37:29 +08:00
  • 5d332336eb feat(M-AI-01-09): add HTTP E2E tests (Feynman/ActiveRecall/DocumentImport) wangdl 2026-06-19 22:36:17 +08:00
  • bbef7eac1d fix(M-AI-01-09): strengthen SIGKILL recovery + Document Import assertions wangdl 2026-06-19 22:23:42 +08:00
  • 5bde0a3656 fix(M-AI-01-09): enqueue jobs via BullMQ instead of MySQL INSERT wangdl 2026-06-19 22:20:45 +08:00
  • bda7f9d80a fix: BigInt comparison in MySQL test wangdl 2026-06-19 22:15:39 +08:00
  • cb9b56f0dc fix: remove status from AiAnalysisResult query (column doesn't exist) wangdl 2026-06-19 22:14:07 +08:00
  • 6e7f4b0219 fix: add updatedAt=NOW() to all INSERTs for NOT NULL columns wangdl 2026-06-19 22:12:20 +08:00
  • 533b525496 fix: schema field corrections for AiAnalysisJob + User wangdl 2026-06-19 22:10:07 +08:00
  • cc7a6842ed fix: standardize dbExec/dbQuery param passing as arrays wangdl 2026-06-19 22:08:17 +08:00
  • ffea415613 feat(M-AI-01-09): replace mock E2E with real API/Worker integration test wangdl 2026-06-19 22:06:52 +08:00
  • 762a9c1791 fix: use TestingModule as application context, fix $executeRaw wangdl 2026-06-19 21:54:31 +08:00
  • cfa882a9e9 fix: rename integration test to .e2e-spec.ts for jest-e2e.json matching wangdl 2026-06-19 21:52:40 +08:00
  • 421689cdcd feat: M-AI-01-09 integration test suite + CI runner wangdl 2026-06-19 21:52:04 +08:00
  • 347e0487d9 fix: remove non-existent POST /api/notifications/test from integration script wangdl 2026-06-19 21:38:12 +08:00
  • 24ceb1353e fix: remove ProtectSystem/ReadWritePaths from systemd units wangdl 2026-06-19 21:26:47 +08:00
  • bd60c2786f fix: correct require paths for dist/src output + systemd user wangdl 2026-06-19 21:26:05 +08:00
  • cdc228ccf0 fix: break circular dependency between queue-definitions and queue-service wangdl 2026-06-19 21:24:33 +08:00
  • 4fb652d273 feat: M-AI-01 Worker 进程边界与部署收口(全 8 个 Issue) wangdl 2026-06-19 21:22:48 +08:00
  • 56315e454b docs: fix appendix A line numbers and NotificationWorker dependency chain wangdl 2026-06-19 20:31:08 +08:00
  • 54bc505f7a docs: add ADR-001 unified AI architecture decision record wangdl 2026-06-19 20:10:35 +08:00
  • d7647cbc3d fix: move all-sources route before :id to avoid conflict wangdl 2026-06-19 15:38:32 +08:00
  • 178666627b feat: add GET /admin-api/knowledge-bases/all-sources wangdl 2026-06-19 15:31:03 +08:00
  • 1abc89be23 fix: add enrichWithNames to chat sessions API wangdl 2026-06-19 13:30:09 +08:00
  • 9a392ba274 fix: add enrichWithNames to content-safety checks wangdl 2026-06-19 13:27:10 +08:00
  • 0203ccfd1f fix: translate learning record titles to Chinese wangdl 2026-06-19 13:20:29 +08:00
  • 0ea36a7073 feat(API-ADMIN-010): add enrichWithNames to admin list controllers wangdl 2026-06-19 13:04:55 +08:00
  • ff4135b7c6 feat: add enrichWithNames to admin learning API wangdl 2026-06-19 12:41:46 +08:00
  • af8d95cdb6 fix: add try-catch + error logging to processBatch wangdl 2026-06-19 12:18:46 +08:00
  • fb7ee358ce fix: add knowledgeBaseId to ReadingEventUploadItemDto + increase Max delta wangdl 2026-06-19 12:15:56 +08:00
  • 43293a48e6 fix: return 'id' instead of 'jobId' in POST /imports response wangdl 2026-06-18 22:27:02 +08:00
  • aef8e2a416 fix: make import lock unique per attempt + release in finally wangdl 2026-06-18 22:17:59 +08:00
  • 433e0095ee debug: add detailed logging to DocumentImportService.createImport wangdl 2026-06-18 22:16:17 +08:00
  • 4f614f9d1f fix: extract userId from JWT in POST /imports controller wangdl 2026-06-18 22:13:10 +08:00
  • 0867b4f39a feat(API-AI-082): add POST /sources/:id/parse trigger endpoint wangdl 2026-06-18 21:56:31 +08:00
  • 939adcebd3 feat(API-AI-081): add KnowledgeItem.sourceId FK to KnowledgeSource wangdl 2026-06-18 21:54:58 +08:00
  • 76bdba330d fix(API-AI-080): enqueue import job + pass sourceId in KnowledgeSource pipeline wangdl 2026-06-18 21:51:49 +08:00
  • 137fe36a72 fix: enable implicit conversion in StrictValidationPipe wangdl 2026-06-18 19:27:40 +08:00
  • 82e3a60101 refactor: merge admin/learning into admin-api/learning, restore API isolation wangdl 2026-06-18 19:26:37 +08:00
  • 04da939a22 fix: correct admin path bypass in global JwtAuthGuard wangdl 2026-06-18 19:00:38 +08:00
  • bc11adfbac fix: allow /admin/ paths through global JwtAuthGuard wangdl 2026-06-18 18:58:56 +08:00
  • ed2dcb02f6 feat: add AdminApiKey permanent token for automated testing wangdl 2026-06-18 18:52:04 +08:00
  • c3fd6a221f fix: add missing /api/admin/learning/knowledge-bases endpoint wangdl 2026-06-18 18:40:40 +08:00
  • c0a8f7ef27 perf: add missing indexes + fix learning admin query performance wangdl 2026-06-18 18:20:44 +08:00
  • 1ed86b3ab3 docs: add API-OPS-001 missing production env keys issue wangdl 2026-06-18 15:38:48 +08:00
  • 161018dcb5 fix: align heavy-runtime env vars with Rust RUNTIME_ prefix wangdl 2026-06-18 14:12:20 +08:00
  • c99626e5de ci: add database migration automation workflow (API-AI-079) wangdl 2026-06-18 14:02:48 +08:00
  • 781645de84 ci: add health check + rollback hint to deploy step wangdl 2026-06-18 14:01:33 +08:00