25 KiB
2026-08-28 每日训练笔记
来源:旭东与 OpenClaw 每日训练,2026-08-28 类型:训练记录
2026-08-28 每日训练笔记
来源:旭东与 OpenClaw 每日训练,2026-08-28 类型:训练记录
今日概览
共 22+ 次直接交流,围绕蝶雅供应链数据平台(8.186 测试 / 云端 / 11.79 生产)展开:钉盘数据同步、跨进程缓存失效优化、物料清单/下单/导出/筛选/详情弹窗等多项异常修复、品牌信息管理新功能、确认下单按品牌分流、成品提货表海外品牌数据剔除、以及收尾的两阶段部署(8.186→云端→11.79,执行中)。当日共产生 18 个 Git 提交。
1. 钉盘 8-28 库存出库数据同步到 8.186 与云端
旭东 → OpenClaw:
现在钉盘里面8-28的库存数据和出库数据已更新,你去读取并更新到8.186系统和云端系统中
OpenClaw 响应: 完成钉盘数据同步:库存读取 2026-08-28 共 20 个仓库、导入 8.186 与云端各 20,835 条;汇总可用库存 47,378,203、生产在途 1,542,584、采购在途 12,370,231;货品编号空值 0。出库最新文件为 20260827-wdt-cksj.csv(钉盘暂无 8-28 出库文件),导入 2,040 条、数量 69,748。两端服务重启并验收(8.186 HTTP 200、云端 active、公网 HTTPS 200),更新前备份 /opt/dy-dashboard-backups/data_update_20260828_093611/。历史差异保留:库存云端多 2,652 条,出库 8.186 多 16,048 条。
2. 计划预测库存列数值异常排查(POZ-FSS-6691-TM)
旭东 → OpenClaw:
发现一个异常,我刚让你导入了新的8-28的库存数据,比如POZ-FSS-6691-TM这个品的库存数据,13号仓是4718,1号仓是2847,29号仓是1,那么加起来应该是7566,但是在计划预测里面库存列字段显示的是7642,查一下这个异常的原因
OpenClaw 响应: 导入数据本身无错:7642 是 8 月 27 日的旧库存值(1号仓 2923+13号仓 4718+29号仓 1);8 月 28 日 1 号仓降至 2847,合计 7566。差额 76 正是 1 号仓变化量。根因是页面拿到更新前生成的旧缓存结果(刷新时点问题)。核对计算规则:库存表取最新日期、排除 15 号加工厂仓;数据库与共享缓存当前均已是 7566(云仓库存 2848、外仓 4718、加工厂 48015 单独展示)。
3. 优化数据导入后页面旧缓存刷新问题
旭东 → OpenClaw:
每一次的页面结果刷新时点问题能不能优化一下,不然每次导完数据发现保留的还是前一天的数据,强制刷新也没有变化,很会影响工作
OpenClaw 响应:
已从根源优化,双重保障:1)导入成功后自动清除计划预测、库存、销量、在途等共享计算缓存;2)新增跨进程数据版本校验,每次导入发布新数据版本,所有 Gunicorn Worker 收到请求时校验版本、拒绝旧缓存并重算。专项及回归测试 26 项全部通过;8.186 服务 active、HTTP 200;POZ-FSS-6691-TM 核验 7566。Git 提交 6fd3516 fix: 数据导入后自动失效跨进程缓存。
4. 缓存优化同步到云端并重启
旭东 → OpenClaw:
将刚刚的优化升级同步到云端系统里面并重启云端系统,保证数据准确
OpenClaw 响应: 4 个缓存优化相关文件同步云端,哈希与 8.186 一致;云端服务 active、本机 HTTP 200、公网 HTTPS 200;云端专项测试 2 项通过;库存最新日期 2026-08-28、20,835 条;POZ-FSS-6691-TM 库存 7566。更新前备份 /opt/dy-dashboard-backups/cache_fix_20260828_100226。
5. 物料清单管理供应商无法修改
旭东 → OpenClaw:
发现一个异常,物料清单管理子菜单里面,发现有部分物料编号点击编辑编辑后,供应商无法修改,检查并解决以下
OpenClaw 响应:
根因:编辑弹窗提交了供应商名称,但后端保存 BOM 时漏写 bom.supplier 字段,且部分物料存在 supplier_code 时产品表供应商关联会覆盖新值。修复:编辑/新增 BOM 时同步持久化供应商到 bom.supplier,刷新后修改保留。语法检查通过、测试服务重启 active、HTTP 200。Git 提交 47b5080 fix: 修复物料清单供应商编辑保存。
6. 下单备份包材下单数量与备注未同步
旭东 → OpenClaw:
发现一个异常,从待下单管理点击确认下单之后,订单同步到下单备份管理后,下单备份管理里面的包材下单数量和包材下单备注没有同步成功,检查并修复一下这个异常
OpenClaw 响应:
根因:确认下单接口在前端未携带 BOM 数据时错误跳过待下单记录中已保存的 bom_items,直接回读基础 BOM,导致数量/备注丢失。调整为按「本次请求数据 > 待下单已保存数据 > 基础 BOM」优先级取值。专项测试通过、服务重启 active、HTTP 200。Git 提交 bff452e fix: 修复下单备份包材数据同步。
7. 确认下单后包材订单数量错误(全显示成品数量)
旭东 → OpenClaw:
现在的下单逻辑是这样的,从计划预测的下单信息弹窗中填写成品包材下单数量后,点击下单,同步到待下单管理中,核对2个下单数量之后,再次点击确认下单,根据不同计划人员跳转到国内/海外订单管理,包材则跳转到包材订单管理中,但是现在出现一个异常,比如我成品下3000,包材分别是2000 4000 5000,但是点击确认下单,跳转同步到包材订单管理之后,全部显示的是成品的3000数量,另外当我只下成品不下包材,意思包材下单数量是0时,包材是不跳转的,但是目前还跳转,并且数量也是成品的下单数量。 检查一下这个异常,并修复一下、
OpenClaw 响应:
根因:确认下单对「未携带前端缓存」场景存在回退重算(按用量×成品数量),且「明确填 0」与「未填写」混淆导致 0 值未保存而回退。修复:包材实际下单数量按填写值分别同步(2000/4000/5000 原样保留);明确 0 保留为 0 不回退;仅数量大于 0 才创建包材订单;全部为 0 不跳转包材订单管理;包材备注优先同步「包材备注」字段。专项测试通过(含字符串 "4000" 解析)。Git 提交 7700455 fix: 修正包材实际下单数量与跳转。
8. 包材订单联动筛选「加载中」卡死
旭东 → OpenClaw:
发现一个异常,在包材订单管理下边,我先筛选采购小组为跟单二组之后,再次筛选货品名称时,显示加载中,无法筛选,检查一下这个异常并修复
OpenClaw 响应:
根因:联动筛选接口函数内部重复导入 json 造成 Python 局部变量遮蔽,接口返回 500,前端停留在「加载中」。修复:移除函数内重复导入,统一使用模块级 json。「跟单二组 → 货品名称」联动筛选专项测试通过。Git 提交 badb49e fix: 修复包材订单联动筛选加载异常。
9. 订单管理三个子菜单导出功能异常
旭东 → OpenClaw:
发现一个异常,国内订单管理、海外订单管理、包材订单管理三个子菜单中,导出功能异常 1、导出出来的表格数据列错乱了,单价列显示的是日期,供应商列显示的是单价 2、我进行筛选数据之后,再点击导出之后,导出的数据还是全部数据,并不是我筛选之后的数据
OpenClaw 响应:
根因:导出函数直接抓取当前表格 DOM,但表头使用固定旧字段数组,勾选框/序号/操作列等被当成数据列;且导出只取当前页/全部页,未携带当前筛选条件。修复:改为按当前字段设置顺序逐列生成数据,并携带当前搜索、状态、供应商、下单人及表头筛选条件导出全部匹配结果。验证:JS 语法检查通过、服务重启 active、HTTP 200。Git 提交 077b3e0 fix: 修复订单管理筛选导出和列错乱。
10. 订单详情弹窗修改单价保存卡顿
旭东 → OpenClaw:
发现一个异常,国内订单管理、海外订单管理、包材订单管理详情弹窗中修改单价后,保存失败,会一直卡顿在提示保存弹窗界面,只能强制刷新之后才可以退出卡顿。检查异常并修复一下
OpenClaw 响应:
修复:详情弹窗只修改单价等单个字段时改为调用对应订单的单字段更新接口,避免批量保存链路导致弹窗一直等待;多字段同时修改仍走批量逻辑;增加接口异常响应处理,异常时按钮不再永久停留在「保存中」。包材单价同步逻辑不变。JS/Python 语法检查通过、服务重启 active、HTTP 200。Git 提交 7a16c5d fix: 修复订单详情单价保存卡顿。
11. 今日优化内容以升级包更新到云端
旭东 → OpenClaw:
将8.186系统里面今天有优化到的内容,作为升级包升级更新到云端里面,其他不动
OpenClaw 响应: 以增量升级包方式更新云端 82.156.135.91,仅更新今天涉及的 6 个运行时代码文件:routes/purchase.py、routes/products.py、services/cache.py、static/js/app.js、batch_import_cksj.py、import_new_inventory.py。数据库、知识库、配置、上传文件及其他代码均未改动。6 个文件与 8.186 SHA256 全部一致,云端服务 active、HTTP 200。云端备份 /opt/dy-dashboard-backups/upgrade-20260828_1340_retry。
12. 新增品牌信息管理子菜单
旭东 → OpenClaw:
我现在需要在基础数据菜单下边做一个品牌信息管理子菜单,帮我提取一下现在所有的品牌,我来分类哪些是海外,哪些是国内
OpenClaw 响应:
在「基础数据」下新增「品牌信息管理」子菜单:自动提取当前有效产品中的全部品牌(共 29 个:Aromat Herbs、AVAA、BIGLY、CIKITI、FOCOOL、MOONOTE、MUTO、Nianezan、PUNOMO、Qsimelr、sedate、SEDATE-WOPUKA、UOUONE、WOPUKA、京东、京东现货、多平台现货、天猫现货、拼多多现货、新媒体现货、无、泊紫汀兰、洁维塔、洁维塔博士、美瑞图、英贝达、适美家、阿里、阿里现货);支持搜索、按「未分类/国内/海外」筛选、下拉选择分类;分类单独保存,不修改产品原始品牌字段。数据库分类表已创建,品牌接口返回 29 个品牌。Git 提交 f6af6a3 feat: 新增品牌信息管理与国内海外分类。
13. 品牌信息管理表格展示优化
旭东 → OpenClaw:
刚刚新加的品牌信息管理里面帮我优化以下几点 1、序号、品牌、产品数量、分类、更新时间5列的列宽等宽显示 2、所有内容居中显示 3、分类里面的海外、国内分颜色区分一下
OpenClaw 响应:
完成 3 项优化:五列等宽显示;表头、表格内容、分类下拉框全部居中;分类颜色区分(国内蓝色、海外橙色、未分类默认)。测试环境服务热加载。Git 提交 8e4e36f style: 优化品牌管理表格展示。
14. 品牌信息管理分页/新增/编辑
旭东 → OpenClaw:
品牌信息管理这里继续优化以下几点 1、分页显示,一页显示10条信息 2、删除产品数量列 3、添加新增按钮,可以手动添加新的品牌 4、增加一列操作列,可以点击编辑进行更改品牌名称
OpenClaw 响应:
完成 4 项优化:每页 10 条分页;删除「产品数量」列;新增「新增品牌」按钮(可手动添加品牌及分类);「操作」列支持编辑品牌名称及分类。编辑已有产品中的品牌名称时同步更新有效产品表对应品牌;手动新增品牌单独保存不影响产品数据。分页/新增/编辑流程验证通过,测试数据已清理。Git 提交 f5187f8 feat: 完善品牌管理分页新增与编辑。
15. 确认下单同步逻辑说明(咨询)
旭东 → OpenClaw:
现在从待下单管理里面,点击确认下单同步到国内或者海外订单管理里面的逻辑是什么?
OpenClaw 响应: 说明完整逻辑:1) 查询 pending_orders 中 status='pending' 记录;2) 先抢占记录(status→ordered)防重复下单;3) 当前按「采购计划」分流:包含「张莹纯」→海外订单管理,否则→国内订单管理;4) 正式下单数量>0 才生成产品订单,金额=数量×审核价格,写入 overseas_orders / domestic_orders(字段名差异:货品编号/供货商),初始状态「未完结」;5) 按 BOM 同步生成包材订单,优先级「本次传入 BOM > 待下单已保存 BOM > 产品基础 BOM」,填写了实际下单数量优先使用,否则按用量×成品数量,数量为 0 不生成,内料(-NL)不生成,写入 packaging_orders。
16. 确认下单改按品牌分类分流(第3步规则更新)
旭东 → OpenClaw:
现在需要更新一下第3步里面的判断规则,后续点击确认下单后,不再根据采购计划来判断国内还是海外,变更为根据品牌来判断,用品牌来匹配品牌信息管理里面,分类是国内,则同步到国内订单管理、分类是海外,则同步到海外订单管理
OpenClaw 响应:
完成第 3 步判断规则更新:确认下单后不再根据采购计划判断,改为读取商品品牌匹配「品牌信息管理」分类——国内→国内订单管理、海外→海外订单管理;品牌为空、未维护或未分类时阻止确认下单并提示先完善品牌分类;批量确认时每个商品按各自品牌分别同步。Python 语法检查通过、测试服务正常、HTTP 200,未操作生产环境。Git 提交 6b9952a feat: 按品牌分类分流确认下单。
17. 成品提货表剔除海外品牌数据
旭东 → OpenClaw:
现在需要根据成品提货表里面的品牌来更新一下数据,将品牌为海外的品的数据全部从成品提货表里面剔除掉
OpenClaw 响应:
核对:品牌信息管理中分类为「海外」的成品品牌共 11 个,成品提货表匹配到海外品牌的已保存数据 560 条(Aromat Herbs、SEDATE、Qsimelr、PUNOMO、MUTO、SEDATE-WOPUKA、UOUONE、WOPUKA、AVAA、CIKITI、MOONOTE)。经用户确认后删除:finished_products 从 2838 条降至 2278 条;同步修改成品提货数据源按品牌分类过滤,海外品不会再动态重新显示;删除前完整备份 backups/finished_products_overseas_delete_20260828/records.json(首次批量删除超时,改分批锁定 ID 删除成功)。Git 提交 ffe3780 fix: 成品提货表剔除海外品牌。
旭东 → OpenClaw:
确认删除
OpenClaw 响应: 执行删除并回报结果(见上)。
18. 国内/海外订单详情弹窗字段优化
旭东 → OpenClaw:
现在优化一下国内订单管理、海外订单管理详情弹窗里面的一个内容 1、删除生产货期、待提数量两个字段 2、剩下字段顺序排列
OpenClaw 响应:
国内、海外订单管理详情弹窗均删除「生产货期」「待提数量」字段并重新整理剩余字段顺序;包材订单、成品提货弹窗未改动。前端语法检查通过、服务重启正常、HTTP 200。Git 提交 43c66a0 优化: 国内海外订单详情字段顺序。
19. 详情弹窗预计到货日期挪到右侧
旭东 → OpenClaw:
国内订单管理、海外订单管理详情弹窗中,把预计到货日期字段列挪到右侧,保持对齐关系
OpenClaw 响应:
国内、海外订单管理详情弹窗的预计到货日期均移至右侧,左右列保持对齐关系。前端语法检查通过、服务重启正常、HTTP 200。Git 提交 802c014 优化: 订单详情预计到货日期右侧对齐。
20. 成品提货管理详情弹窗优化(进度字段)
旭东 → OpenClaw:
成品提货管理中帮我优化以下几点 1、详情弹窗中的待提数量字段更改为进度字段 2、进度字段跟昨日销量字段换一下位置 3、进度字段整行显示 4、进度字段关联国内订单管理中相同货品编号,且状态为未完结的订单的进度 5、当存在多个状态为未完结订单时,取最早下单日期的进度
OpenClaw 响应:
完成 5 点优化:「待提数量」改为「进度」字段;「进度」与「昨日销量」换位;「进度」整行展示并支持自动换行;进度关联国内订单管理中相同货品编号且状态「未完结」的订单;多个未完结订单时按最早下单日期取进度(同日期按订单 ID 稳定排序);无关联订单显示「-」。Python/JS 语法检查及 diff 通过,服务已重载,HTTP 200。Git 提交 0cafdeb 优化: 成品提货详情关联国内订单进度。
21. 下单备份管理增加成品下单人/包材下单人
旭东 → OpenClaw:
下单备份管理里面增加成品下单人、包材下单人两列,放在下单人列的右侧,同时详情弹窗中的成品信息列表下也要有对应的这两个字段
OpenClaw 响应: 后端从国内/海外成品订单和包材订单按同一下单批次读取对应下单人(成品下单人来自成品订单、包材下单人来自包材订单,非备份创建人);列表在「下单人」右侧新增两列;详情弹窗「成品信息」区域加入对应字段;空值显示「-」,历史备份实际订单下单人为空时回退显示备份下单人;同步更新字段设置与空状态列数。经多次会话(08:47/08:56/09:00 提交,期间用户 /reset 后重发)完成主体改动。
旭东 → OpenClaw:
字段加好了吗?
OpenClaw 响应: 已加好:列表两列与详情弹窗字段均完成,后端已从对应订单读取下单人,Python/JS 语法检查通过;当时尚未提交 Git、测试服务未重启(后随下一轮优化一并完成)。
22. 下单备份管理详情弹窗优化(审核价格/供应商/包材下单人)
旭东 → OpenClaw:
下单备份管理优化以下几点 1、详情弹窗中包材信息列表里面,审核价格挪到最右侧,最后边一列 2、供应商(简称)改名为供应商 3、增加一列放在下单数量的右侧,叫包材下单人 4、删除成品信息列表里面的包材下单人字段
OpenClaw 响应:
完成 4 点优化:包材信息列表「审核价格」移到最右侧最后一列;「供应商(简称)」改名「供应商」;「下单数量」右侧新增「包材下单人」列并按对应包材订单信息展示;删除成品信息列表中的「包材下单人」字段。Python/JS 语法检查、diff 检查通过,服务重载、HTTP 200,压缩版静态资源同步更新。Git 提交 6a01178(优化下单备份详情包材字段)。
23. 下单备份列表 500 错误(字符集排序规则冲突)
旭东 → OpenClaw:
app.js?v=1787912577:16405 GET http://192.168.8.186:18888/api/purchase/pending_list?status=backup 500 (INTERNAL SERVER ERROR) loadBackupList @ app.js?v=1787912577:16405 loadPurchaseReadyPage @ app.js?v=1787912577:16379 loadPage @ app.js?v=1787912577:3692 (anonymous) @ ready:634 VM488:1 Uncaught (in promise) SyntaxError: Unexpected token '<', "<!doctype "... is not valid JSON
OpenClaw 响应:
非前端 JSON 解析问题:后端新增订单关联查询触发 MySQL 字符集排序规则冲突(utf8mb4_unicode_ci 与 utf8mb4_0900_ai_ci 的 Illegal mix of collations)。将相关货品编码关联条件统一改为 BINARY 比较,未修改数据库结构或业务数据。数据库关联查询验证通过、语法检查通过、服务重载、HTTP 200。Git 提交 09994f1(修复下单备份列表字符集查询错误)。
24. 下单备份详情点击报错(空字段安全)
旭东 → OpenClaw:
下单备份管理里面,点击详情报错 2 app.js?v=1787912577:17016 Uncaught TypeError: Cannot read properties of undefined (reading '1') at window.viewBackupDetail (app.js?v=1787912577:17016:150) at HTMLButtonElement.onclick (ready:1:1) window.viewBackupDetail @ app.js?v=1787912577:17016 onclick @ ready:1
OpenClaw 响应:
根因:新增「成品下单人」后成品信息左右两列字段数量不一致,详情弹窗最后一行读取不存在的字段。增加空字段安全判断,字段数量不一致时也能正常渲染。JS 语法检查通过、服务重载、HTTP 200。Git 提交 bfa33d2(修复下单备份详情空字段报错)。
25. 两阶段部署:8.186 → 云端 → 11.79 生产
旭东 → OpenClaw:
1、需要打包8.186测试环境下所有的功能代码、数据库结构、数据库字段、训练记录,更新部署到云端环境下,不要覆盖云端环境的数据 2、等待第一步完成之后,打包云端环境下的全部内容包含所有数据,升级到11.79生产环境中 云端服务器 IP:82.156.135.91 SSH登录用户名:ubuntu SSH登录密码:dieya123,.
OpenClaw 响应:
按两段式执行:第一阶段仅将 8.186 代码、数据库结构/字段和知识库训练记录同步到云端(保留云端业务数据)。核对:8.186 本地测试库 50 张表,云端与 11.79 各 49 张;云端服务运行于 /opt/dy-dashboard。执行中遇到两个问题:1) 停止旧 Gunicorn 的命令匹配到远程执行命令导致 SSH 会话被提前杀掉(已改为按端口精确清理);2) /opt/dy-dashboard 由 root 管理,ubuntu 账号直接替换目录被拒(Permission denied),云端原服务仍正常运行、数据未被覆盖,备份已生成(/home/ubuntu/dy-dashboard-backups/pre-stage1-*.tar.gz 与数据库 dump)。截至会话结束,第一阶段仍在处理权限方案,第二阶段(云端→11.79)尚未开始。此任务待跟进确认。
关键决策汇总
| 时间 | 决策/变更 | 影响范围 | Git 提交 |
|---|---|---|---|
| 01:31 | 钉盘 8-28 库存(20 仓 20,835 条)+ 最新出库(8-27,2,040 条)同步 8.186 与云端 | 数据同步 | — |
| 01:53 | 数据导入后自动清缓存 + 跨进程数据版本校验 | 计划预测/库存显示 | 6fd3516 |
| 02:01 | 缓存优化同步云端并验收 | 云端系统 | — |
| 02:06 | 修复物料清单供应商编辑保存(bom.supplier 持久化) | 物料清单管理 | 47b5080 |
| 02:51 | 确认下单数据优先级:请求 > 待下单已保存 > 基础 BOM | 下单备份 | bff452e |
| 03:00 | 包材数量原样传递、0 值不回退、>0 才生成包材订单 | 确认下单/包材订单 | 7700455 |
| 03:27 | 修复包材订单联动筛选 500(json 局部遮蔽) | 包材订单筛选 | badb49e |
| 03:43 | 导出按当前字段顺序 + 携带完整筛选条件 | 三个订单子菜单导出 | 077b3e0 |
| 03:57 | 详情弹窗单字段更新走单字段接口 + 异常收尾 | 订单详情保存 | 7a16c5d |
| 05:39 | 今日优化以增量升级包更新云端(6 文件,其他不动) | 云端 | — |
| 06:13 | 新增品牌信息管理子菜单(29 品牌,国内/海外分类) | 基础数据 | f6af6a3 |
| 06:35 | 品牌管理表格等宽/居中/分类配色 | 品牌信息管理 | 8e4e36f |
| 06:39 | 品牌管理分页 10 条/新增/编辑(同步产品品牌) | 品牌信息管理 | f5187f8 |
| 06:57 | 确认下单改按品牌分类分流(不再按采购计划) | 确认下单 | 6b9952a |
| 07:11 | 成品提货表删除 560 条海外品牌数据 + 页面过滤 | 成品提货管理 | ffe3780 |
| 07:49 | 国内/海外订单详情删除生产货期、待提数量 | 订单详情 | 43c66a0 |
| 07:56 | 详情弹窗预计到货日期移至右侧对齐 | 订单详情 | 802c014 |
| 08:02 | 成品提货详情「待提数量」改「进度」并关联国内订单 | 成品提货管理 | 0cafdeb |
| 08:47 | 下单备份增加成品下单人/包材下单人(列表+详情) | 下单备份管理 | (随 6a01178 系列) |
| 10:19 | 下单备份详情:审核价格移最右、供应商改名、新增包材下单人列 | 下单备份管理 | 6a01178 |
| 10:28 | 关联查询统一 BINARY 比较修复字符集冲突 | 下单备份列表 | 09994f1 |
| 10:31 | 详情弹窗空字段安全判断 | 下单备份详情 | bfa33d2 |
| 10:34 | 两阶段部署:8.186→云端(保数据)→11.79(含数据) | 云端/生产 | 进行中 |
待办
- 两阶段部署第一阶段(8.186→云端):云端 /opt/dy-dashboard 目录 root 权限问题未解决,需改用 sudo/授权方式完成代码、数据库结构、训练记录更新(保留云端数据),并验证云端服务与数据
- 两阶段部署第二阶段(云端→11.79 生产):待第一阶段确认成功后,打包云端完整内容(含数据)升级到 11.79,升级前做完整备份
- 确认云端
pending_list?status=backup相关订单关联查询在云端(旧表结构 49 张)部署后无字符集/字段兼容问题 - 关注品牌信息管理中 29 个品牌的国内/海外分类维护进度(旭东需逐个分类,未分类品牌会阻止确认下单)
由 OpenClaw 每日训练任务自动生成
由 OpenClaw 每日训练任务自动生成