Commit Graph
88 Commits
Author SHA1 Message Date
yml a27467bfad 后端迁移后台管理写侧基础工具 2026-05-21 16:51:32 +08:00
yml 89754802d1 后端迁移后台管理读侧映射 2026-05-21 16:49:50 +08:00
yml 1ac6b849b1 后端迁移后台管理基础服务 2026-05-21 16:47:31 +08:00
yml 8913c12ff7 后端迁移快手Cloud核心履约 2026-05-21 16:42:30 +08:00
yml f130bdba78 后端迁移定时任务服务 2026-05-21 16:34:06 +08:00
yml 1c760f1dd3 后端迁移通知服务 2026-05-21 16:31:03 +08:00
yml fb95f7dc55 后端迁移云触手虚拟号服务 2026-05-21 16:26:53 +08:00
yml 89c2bd5273 后端迁移云触手调试流程 2026-05-21 16:24:39 +08:00
yml 98781f484c 后端迁移云触手请求与目录服务 2026-05-21 16:23:04 +08:00
yml ce6a6af820 后端迁移云触手平台底座 2026-05-21 16:19:41 +08:00
yml 889be72125 后端迁移云触手后台编排 2026-05-21 16:16:14 +08:00
yml a09b2d38de 后端迁移平台配置聚合服务 2026-05-21 16:14:21 +08:00
yml 104c5408d7 后端迁移平台配置服务入口 2026-05-21 16:11:44 +08:00
yml 37214d6b40 后端迁移平台配置云触手展示 2026-05-21 16:08:33 +08:00
yml 381ac44472 后端迁移平台配置读写辅助 2026-05-21 16:06:45 +08:00
yml 38b0bf8ba5 后端迁移平台配置底座 2026-05-21 16:04:09 +08:00
yml ed659ea232 后端迁移履约初始化服务 2026-05-21 15:57:52 +08:00
yml 711112790e 后端迁移91卡券平台订单服务 2026-05-21 15:55:42 +08:00
yml 5ba95b7a17 后端迁移91卡券订单入口 2026-05-21 15:53:40 +08:00
yml 9983d15bba 后端迁移91卡券共享模块 2026-05-21 15:52:36 +08:00
yml f43101c080 后端迁移基础工具层 2026-05-21 15:50:49 +08:00
yml 6f42609945 后端迁移订单履约配置 2026-05-21 15:48:39 +08:00
yml f8c59abb95 后端迁移快手云领取服务 2026-05-21 15:47:06 +08:00
yml 73982259c5 后端迁移领取会话服务 2026-05-21 15:45:21 +08:00
yml 17df03c65c 后端迁移会话主编排 2026-05-21 15:42:24 +08:00
yml e88b9d18fd 后端迁移会话活动信息模块 2026-05-21 15:37:15 +08:00
yml 150de31c74 后端迁移会话微信登录模块 2026-05-21 15:34:56 +08:00
yml 07a58343c9 后端迁移会话QQ登录模块 2026-05-21 15:33:24 +08:00
yml c7726dde32 后端迁移会话页面模块 2026-05-21 15:30:25 +08:00
yml 3176880b2e 后端迁移会话存储模块 2026-05-21 15:28:32 +08:00
yml b86d7e8974 后端迁移会话运行时模块 2026-05-21 15:26:35 +08:00
yml 4453f17678 后端迁移会话支撑模块 2026-05-21 15:24:03 +08:00
yml 73b0ee211f 后端迁移会话状态载荷模块 2026-05-21 15:22:05 +08:00
yml a77439874b 后端迁移会话凭证编排 2026-05-21 15:18:48 +08:00
yml ae31fe2797 后端迁移会话凭证渲染模块 2026-05-21 15:17:18 +08:00
yml 52c0c101a6 后端迁移会话凭证基础模块 2026-05-21 15:15:30 +08:00
yml 2360323581 后端迁移会话兑换服务 2026-05-21 15:13:22 +08:00
yml 0da7666aa0 后端迁移Agiso解析模块 2026-05-21 15:09:03 +08:00
yml a2d029c7da 后端迁移Webhook服务 2026-05-21 15:07:07 +08:00
yml 26739235e4 后端补充Webhook编排测试 2026-05-21 15:04:39 +08:00
yml 1a07431887 后端迁移Agiso店铺配置服务 2026-05-21 14:58:22 +08:00
yml b9d84679a1 后端迁移订单详情服务 2026-05-21 14:56:14 +08:00
yml 6d6e64beda 后端补充订单详情服务测试 2026-05-21 14:53:13 +08:00
yml 4740f870ba 后端迁移消息发送服务 2026-05-21 14:49:20 +08:00
yml aedc5d928e 后端迁移自动发货服务 2026-05-21 14:46:56 +08:00
yml 861b7e0034 后端补充自动发货服务测试 2026-05-21 14:42:19 +08:00
yml 0d33778d4b 后端迁移领取基础服务 2026-05-21 14:37:16 +08:00
yml 678b7bdf0c 后端迁移履约任务服务 2026-05-21 14:35:08 +08:00
yml 8bb0223d2f 后端补充履约任务服务测试 2026-05-21 14:31:56 +08:00
yml c870414ad6 后端迁移商品匹配服务 2026-05-21 14:27:45 +08:00
yml ca6e8b43c9 后端迁移订单同步服务 2026-05-21 14:25:04 +08:00
yml b6b6d2d8ca 后端迁移领取换码服务 2026-05-21 14:22:20 +08:00
yml ab3a8caa9f 后端迁移库存服务模块 2026-05-21 14:17:14 +08:00
yml 5711d38c8f 后端补充高风险链路测试 2026-05-21 14:10:41 +08:00
yml 84ca9cac09 后端拆分运行时配置模块 2026-05-21 14:06:49 +08:00
yml 5753971c92 后端迁移任务仓储模块 2026-05-21 14:01:54 +08:00
yml b803bbd007 后端迁移库存仓储模块 2026-05-21 13:58:31 +08:00
yml 173da43fdf 后端迁移订单仓储模块 2026-05-21 13:53:17 +08:00
yml 79e586387c 后端迁移更多仓储模块 2026-05-21 13:50:31 +08:00
yml 6eeb1a49df 后端迁移低风险仓储模块 2026-05-21 13:46:10 +08:00
yml 1d74b63800 后端类型定义迁移到 TypeScript 2026-05-21 13:42:18 +08:00
yml 1476522ab5 后端建立 TypeScript 构建链路 2026-05-21 13:36:38 +08:00
yml 25671078d6 修复一些的过时测试 优化readme 2026-05-21 13:16:07 +08:00
yml 5474d77799 fix(cloudtentacles): 第三轮 Bug 修复 + 体验改进 — Vue3 emit 多参数处理、SKU 刷新空缓存、新增账号改用 ElMessageBox.prompt 2026-05-20 01:36:57 +08:00
yml b4bb53f307 [Snow Team] Merge frontend-rule's work 2026-05-20 01:05:25 +08:00
yml 557516ef1d feat(快手 cloud 履约): 三项前端改造 — cloudSourceKey 下拉选择、备选账号多选、SKU 按 sourceKey 缓存
需求1: cloudSourceKey 从文本输入改为下拉选择(选项来自 cloudtentacles sources 列表)
- Type: AdminKuaishouCloudFulfillmentItem 新增 cloudSourceKeyFallbacks?: string[]
- RuleCard.vue: cloudSourceKey 从 el-input 改为 el-select,选项来自 cloudtentaclesSourceOptions prop
- RuleSection.vue: 传递 cloudtentaclesSourceOptions prop 到 RuleCard
- View: 传递 config.cloudtentaclesSourceOptions 到 RuleSection

需求2: 同一 SKU 支持多个 cloudtentacles 账号(备选退避)
- RuleCard.vue: 新增备选 cloud 账号多选 el-select(multiple),过滤掉已选主账号
- useKuaishouCloudConfig.ts: createEmptyItem/mapEditableItem/mapSaveItem 处理 cloudSourceKeyFallbacks 字段

需求3: 选择 cloudSkuId 后自动补全 + sourceKey 感知的 SKU 查询
- useKuaishouCloudSku.ts: cloudSkuCatalog 从全局单一缓存改为按 sourceKey 缓存(cloudSkuCatalogBySourceKey)
- ensureCloudSkuCatalogLoaded(item) 传入 item 取其 sourceKey,fetchAdminCloudtentaclesSkuList({ sourceKey })
- getCloudSkuOptions/handleCloudSkuSelected/handleCloudSkuDropdownVisible 均按 sourceKey 取缓存的 catalog
- refreshCloudSkuCatalog(item?) 支持按 item 的 sourceKey 刷新或全部刷新

额外: useKuaishouCloudConfig 加载时额外调用 fetchAdminCloudtentaclesSourceConfig 获取 sources 列表
2026-05-20 01:04:54 +08:00
yml 6c29726e3f feat: 增加多账号备选退避机制支持 cloudSourceKeyFallbacks
- kuaishou-cloud-fulfillment-config-service: 新增 cloudSourceKeyFallbacks 字段和 normalizeStringArray 辅助函数
- kuaishou-cloud-task-service: 新增 resolvePersistedCloudtentaclesContextWithFallback 函数实现备选账号自动切换
- 改造 5 个调用点(prepare/refresh/roleRefresh/dispatch/return)使用 fallback 机制
- binding 中新增 resolvedSourceKey 字段持久化首次选定的 sourceKey
- admin-write-inputs: 类型定义增加 cloudSourceKeyFallbacks 可选字段
- 向后兼容:旧数据无 fallbacks 字段时等同于旧行为
2026-05-20 01:04:04 +08:00
yml 1ef4db7f45 feat(cloudtentacles): 合并前端多账号支持改动 2026-05-20 00:38:20 +08:00
yml cde49d3da9 feat(cloudtentacles): 后端 Admin 层多账号支持 - admin-service/context/routes/types 改造 2026-05-20 00:38:20 +08:00
yml b35938c148 feat(cloudtentacles): 后端核心数据结构多账号支持 - source-config/session-state 改造 + resolvePersistedCloudtentaclesContext 增加 sourceKey 参数 2026-05-20 00:38:18 +08:00
yml 32cfb62aa1 feat(cloudtentacles): 前端多账号支持 - 类型/API/组件改造, el-select 账号切换 2026-05-20 00:38:17 +08:00
yml f6acc0b9de feat(cloudtentacles): 后端 Admin 层多账号支持 - admin-service/context/routes/types 改造 2026-05-20 00:35:19 +08:00
yml e812ea2cc4 refactor(ocr): remove subprocess mode — HTTP only
- ocr.js: Removed all subprocess/spawn logic (spawn, fs, path, process
  imports, resolveWorkerCommand, buildPythonPath, buildWorkerError,
  callOcrViaSubprocess, resolveOcrMode, runOcrCommand, etc.)
  HTTP is now the only mode. Added validation when OCR_BASE_URL is not
  configured. ~281 lines → ~80 lines.
- default.cjs: Removed projectRoot from ocr config (kept path import
  for data.root)
- runtime.js: Removed OCR_PROJECT_ROOT env var parsing
- runtime-config.js: Removed projectRoot from ocr type definition

All 5 exports preserved: recognizeTencentCaptcha,
recognizeImageCaptcha, batchRecognizeTencentCaptcha,
warmupLocalOcrWorker, closeLocalOcrWorker
2026-05-19 23:29:42 +08:00
yml 2ecf4691d0 [Snow Team] Merge ocr-docker's work 2026-05-19 23:10:39 +08:00
yml c03aed5d1b [Snow Team] Merge ocr-node's work 2026-05-19 23:10:39 +08:00
yml d43897c64c [Snow Team] ocr-python: auto-commit work 2026-05-19 23:10:33 +08:00
yml bc5fd4212d feat(backend): refactor OCR client to support HTTP + subprocess dual mode
- runtime-config.js: add baseUrl field to ocr type definition
- default.cjs: add ocr.baseUrl default (empty string = subprocess mode)
- runtime.js: add OCR_BASE_URL env var parsing
- ocr.js: add HTTP mode (when OCR_BASE_URL set) alongside existing subprocess mode
  - resolveOcrMode() detects mode from runtimeConfig.ocr.baseUrl
  - callOcrViaHttp() calls FastAPI endpoints directly with payload
  - warmupOcrViaHttp() calls /health endpoint for HTTP mode warmup
  - callOcrRequest() routes between HTTP and subprocess based on mode
  - All 5 original exports preserved (recognizeTencentCaptcha, etc.)
  - Subprocess mode remains backward compatible (default when no OCR_BASE_URL)
2026-05-19 23:09:30 +08:00
yml b7de22d665 feat: extract OCR worker into separate service
- Remove Python/OCR steps from backend.Dockerfile (builder + runtime)
- Remove Python/OCR steps from backend-dev.Dockerfile
- Add OCR_BASE_URL env var to both Dockerfiles (http://ocr-worker:8100)
- Add ocr-worker service to docker-compose.yml with healthcheck
- Add ocr-worker service to docker-compose.dev.yml with healthcheck + port
- Update backend depends_on in both compose files to include ocr-worker
- Replace OCR_PROJECT_ROOT with OCR_BASE_URL in compose env vars
- Remove pip install line from start-dev-container.sh
2026-05-19 23:06:15 +08:00
yml f87238b6c0 fix: use Debian official HTTP mirrors in runtime stage (Tencent mirrors redirect to HTTPS which fails without ca-certificates on slim) 2026-05-19 22:39:53 +08:00
yml 82932758b5 fix: correct Python venv path in production Dockerfile to match OCR worker lookup logic (.venv inside ocr-worker dir) 2026-05-19 22:35:02 +08:00
yml 95064466ac [Snow Team] Merge dev-docker's work 2026-05-19 22:31:38 +08:00
yml 925e2c0eaa refactor: multi-stage production Dockerfile for backend
- Split into builder (node:22-bookworm) and runtime (node:22-bookworm-slim)
- Remove VNC/X11 packages (xauth, x11vnc, novnc, websockify) from production
- Install only minimal Chromium runtime libs in slim stage
- Use python3 -m venv instead of --break-system-packages
- npm prune --omit=dev to exclude devDependencies from runtime
- Run as non-root user appuser (uid=1001)
- Use HTTP apt mirrors (OrbStack BuildKit TLS workaround)
- Copy only runtime-needed dirs: src/, config/, node_modules, venv, subservices
- Expected image size: ~800MB-1.2GB (down from ~3.5GB)
2026-05-19 22:31:05 +08:00
yml 311c5a1aa4 feat: add dev Dockerfile with VNC/X11/Xvfb and update docker-compose.dev.yml
- Create deploy/docker/backend-dev.Dockerfile: single-stage, root,
  includes xauth, x11vnc, novnc, websockify, xvfb, Playwright+chromium,
  Python3+pip+ocr-worker (--break-system-packages)
- Use HTTP (not HTTPS) for apt mirrors per BuildKit TLS note
- Update docker-compose.dev.yml backend to point to backend-dev.Dockerfile
- .dockerignore unchanged (no issues found)
2026-05-19 22:29:21 +08:00
yml f157fbc87a 优化docker相关 2026-05-19 21:41:43 +08:00
yml 4429fb20d7 删除无用 2026-05-19 20:57:02 +08:00
yml bbd0991e52 重构:提取useAdminAction/useAdminListQuerySync + 迁移列表视图到useAdminListPage + 修复formatAutoDeliveryReason缺失case + 消除重复格式化函数 + 修复CSS类冲突 2026-05-19 19:34:40 +08:00
yml 563038aa40 重构:迁移3个列表视图到useAdminListPage + 提取useAdminAction组合式函数 2026-05-19 19:29:14 +08:00
yml 671b1640aa 重构:迁移3个列表视图到useAdminListPage + 提取useAdminAction组合式函数 2026-05-19 19:27:43 +08:00