ZZIPFORCE 总览 交付明细 验证 事故与修复 偏差台账 ↩ 修复方案 系统手册

UVPVP 对齐修复 · 执行日志

2026-09-12 单日执行《修复方案》24 个任务全部完成:ZIPFORCE Hub 的页面、按钮、表格、图表对齐 UVPVP 基准。修复对象仅为 Hub(UVPVP 零改动,仅作基准读取;共享源表层的采集器修复除外)。

24/24 任务完成 四道回归门全绿 audit_nodes 75→101 端点 e2e 新增 16 节 40+ 断言 T4 外围页按约不做
第一部分

总览

阶段任务交付状态
0 通用件T0-1/2/3ChartCard(每图 CSV+日期三态)· ChartGrid 拖拽+账号级持久化(/api/layout) · DataTable 列级筛选+Excel完成
1 Amazon 主看板T1-1/2/5/dashboard/[brand] 三品牌 8 区块 81 图 · 订单明细 14 列 · 工作台入口(关键复用:图表墙接口本就输出 81 图,只做接线)完成
2 NoonT1-3/4/dashboard/noon/[brand] 32 图按日墙 · FBN 库存页(92d 销速分级) · noon_inventory 表+采集 · FBN 采集器双病根修复完成
3 快赢T2-7/8/9今日页三补块(含 SKU TOP20) · 排名展开 4 图(星级分布) · 商品五级下钻(Series→…→Size)完成
4 财务T2-1~6Noon P&L 三表(16/31/24 列) · 产品×月 15 列 · exportTableXls + 6 按钮 · 口径 legend完成
5 工具页T3-1~5物流运费计算器 · 推广 KOL 分析 4 表+投稿/下单表单 · 库存 ERP 补字段+报表 tab · 映射编辑器 · A+ 内容管理三 tab完成
6 外围T4-1/2vocabulary / research / tools / investor / software / noon-helpcenter按约不做

挂账清理

  • 「onno 81 vs UVPVP 84 三图缺口」→ 幻影销案:两份 UVPVP HTML 的唯一 chart 标题集完全一致(各 81),84 是含模板重复的原始出现次数
  • SMTP 密码 → 用户确认不需要
  • 仍挂账:/api/matrix/* 三端点 BASAL 基准(昨日批次遗留,快照已登记)
第二部分

交付明细(含实测数据)

阶段 0 · 通用件

ID交付实测
T0-1ChartCard.tsx:标题+图+⬇CSV(缺省从图表数据提取)+ 日期三态(跟随全局/独立起止/✕清除)/noon 双图首接,e2e 断言过
T0-2ChartGrid.tsx 拖拽+🔒锁定+↺重置;/api/layout GET/POST/reset 存 user_dashboard_prefs.layouts(按账号+页面 key)curl 会话往返:存→读 ["net-trend","gmv-trend"] locked:true ✓ · 重置归零 ✓ · 页面隔离 ✓
T0-3DataTable 增列级筛选(文本包含/数字 Min-Max,取值 csv||sortValue,筛选先于排序且影响导出)+ WYSIWYG .xls 导出/noon 明细 17 个筛选输入 + Excel 按钮,e2e 断言过

阶段 1 · 三品牌 Amazon 主看板

品牌路由图数窗口订单(90d)营收(90d)
/dashboard/zipforce811,662$9,759
/dashboard/onno81568$7,139
/dashboard/fittinggoals815,946$112,678

结构

  • 8 区块 = 📊核心指标 KPI 条 + 6 图表区块(销售10/订单18/财务17/国家24/SKU8/链接健康度4)+ 📋数据表格(订单明细 14 列 UVPVP 列序 + Country/SKU 表)
  • 图题中文 + UVPVP 英文原名小字(对照台账逐图可核)
  • 每区块独立 ChartGrid(pageKey=/dashboard/{brand}:{group}),时间窗 7/30/90/全部
  • 新端点 /api/brandboard/{orders,country-sku};口径复用图表墙的 er 折算+回款判定

阶段 2 · Noon 主看板 + FBN

交付实测
/dashboard/noon/[brand]:32 图 5 区块(销售/订单状态 CIR·取消/财务/国家含下钻/SKU+广告 ROAS·ACOS·CTR·CVR·CPS)+ FBN 预警卡 + 审计说明卡;新端点 /api/brandboard/noon(利润=结算净额−广告,与月墙同口径)2,906 件/90d · 最新月 GMV $50,905 · 利润 $32,749
/inventory 新「📦 Noon FBN 预警」tab:KPI×7 + 9 列明细 + 三筛选 + CSV/Excel;noon_inventory 表(pg-init/45) + ingest spec;noon_orders 窗 30→92 天快照 2026-09-11:59 SKUs · stock 14,057 · 🔴34/🟡17/🟢51 · 缺口 9,197u;分级验证 ZF435T1MEB AE→URGENT ✓
FBN 采集器修复(mars /opt/collection,写共享源表)修复前连续 4 次 timeout 数据停 09-09 → 修复后 rc=0,8,107 行入库,快照 09-09→09-11(UVPVP 侧读同表顺带受益)

阶段 3 · 今日 / 排名 / 商品

ID交付实测
T2-7今日页 + SKU TOP20 水平柱 + 小时×国家堆叠 + 明细矩阵(/api/today 增 by_sku)e2e 页面遍历过
T2-8排名展开 1→4 图:BSR + 评分 + 评论 + 星级分布堆叠(history 增 stars 数组)star_pct 数组直出
T2-9商品「🗂 下钻视图」五级树 + 日/周/月粒度 + 30-365 天窗 + TOTAL/AVG/📦Stock + CSV(/api/brandboard/product-drill)534 SKU / 2,163 件 / 首系列 Bra 6,513 件;e2e gran=month 联动断言过

阶段 4 · 财务

ID交付
T2-1/2/3新端点 /api/finance/noon-pnl → Noon P&L 三表:①KPI Summary 16 列(SAR/AED 本币行 + All USD)②Monthly P&L 31 列(折 USD)③Country Performance 24 列
T2-4年度 SKU 表由既有 noon-sku 年份 tab 覆盖(43 列 ≥ UVPVP 38);每表配可折叠口径 legend(12 条指标说明)
T2-5exportTableXls 工具(DOM→.xls)+ 6 个 Excel 按钮(矩阵/分市场/noon产品月/余额/年度/noon_sku);DataTable exportExcel×4
T2-6noon 产品×月 10→17 列(Del/Ship/Canc/Und/Cost$/TACOS%/Mgn%;Del/Ship 仅 92d 窗有值,状态件数全历史)
实测:All 行 orders 152,088 · settlement $660,035 · NP $83,524;最新月(2026-09) valid 1,118/1,257 · NP $3,369

阶段 5 · 工具页

ID交付实测
T3-1物流「🧮 运费计算器」:目的国+泡比(6000)+多行产品(体积重实时)+全渠道比价,最低价绿色高亮(A 模式 min_kg×per_kg+fee / B 模式首续重)15 渠道结果
T3-2KOL「📊 数据分析」4 表(平台效果/量级性价比/品类/国家,互动率=(均赞+均评)/均播)+ 渠道行投稿/下单 Modal 表单(复用既有 orders 端点 + 新 submission 表)youtube 518 / tiktok 282 / 1M+ 62;投稿按钮 ×20
T3-3单据明细批次/序列号列(pg-init/47) + 新建抽屉供应商(PO)/关联PO(GRN·PRETURN 下拉已审 PO)/合计行 + 「📈 报表」子 tab(/api/inv/report 近7/30/90 双色柱+表)报表空=真无单据(新功能无历史),端点验证过
T3-4映射「✏️ 编辑」tab:/api/mapping/edit 整分支事务替换(行键 brand+sku+platform+country,冲突行跳过)+ 单元格编辑/加行/xlsx 导入(cdnjs SheetJS 按需)/CSV+Excel 导出/审计666 行渲染(zipforce·Noon 分支)
T3-5/upload「📄 A+ 内容」三子 tab:创建(17 站点多选+三模板+四模块编辑器+媒体库 datalist+语言缺失警告+草稿保存/更新)· 媒体库登记 · 文档&历史(只追加);pg-init/48 + /api/aplus/* 六端点全链路冒烟过;提交审核按钮禁用(SP-API 凭证未接,需求单)
第三部分

验证

每批部署后四道门全绿(最终态):
pen_tests        ALL PASS                     # API 租户隔离矩阵
dashboard_audit  106+ 项检查 FAIL 0           # 口径对账(today-noon 锚已改按日口径)
frontend_e2e     ALL PASS                     # 16 节: 原契约 + T0/主看板/Noon/FBN/下钻/财务/物流/推广/库存/映射/A+
audit_nodes      ALL PASS                     # 全站节点门, 快照 75→101 端点

新端点登记(黑名单制, --refresh-snapshot 确认):
+ /api/layout  + /api/brandboard/{orders,country-sku,noon,product-drill}
+ /api/noon-inventory  + /api/finance/noon-pnl  + /api/promotion/{kol-analysis,submissions}
+ /api/inv/report  + /api/mapping/edit  + /api/aplus/{meta,media,documents,history}
+ /api/matrix/*×3(昨日批次漏登记被揪出, BASAL 锚仍待挂)
第四部分

事故与修复(当天全部闭环)

事件根因处置
FBN 采集器连续 timeout(数据停 09-09)①轮询状态键读 status,实为 export_status(对照线上正常 adapter 定位)→ 每导出空转 600s;②v1 字段映射 vs v2 表结构全错按 mercury 参考实现重写;tasks.py 加 TIMEOUT-TAIL 日志;修复后 rc=0
映射编辑器测试误删 9 行(onno/Noon 14→5)整分支替换语义下用截断 rows 做保存测试 = 破坏性立即 enqueue ingest 从 mercury 重建(sku_mapping 每日 04:30 全量重建,天然自愈),恢复 14 行
两起"swc 玄学编译错"(Unexpected token div,位置与病灶无关)手写 JSX 属性字符串少闭合引号(如 padding: "4px 8px }})→ 字符串吞掉后续语法补引号;教训入库:此类报错先全文搜未闭合字符串
arq 任务被容器重建静默杀死(多次重触发)enqueue 的任务在 worker 重启时丢失不重试;subprocess.run 阻塞事件循环→任务串行认知入库;重建后重新 enqueue
dashboard_audit today-noon 2 项 FAIL锚还是月度口径,与昨日 noon_orders 按日切换不匹配锚对齐新口径(day=订单最大日,cur=该日行数)
后端小坑若干order_fees 列名 promo / JOIN brand 歧义 / psycopg2 占位符参数个数 / SQL 块挪动后 fetchall 读错游标 / marketplaces 列名与 platform 大小写 / kpi_cards NOT NULL / layouts 缺 page-key 层级 / promotion_submissions 已存在表结构不同当日全部修复并入库
第五部分

已知偏差台账(诚实记录,页面均注明)

  • 订单明细 3 列近似源:List Price=本币金额 · Settlement=回款状态 · Country/SKU 件数按订单内 SKU 数均摊(order items 级粒度未 ingest)
  • Noon 无日级金额源:UVPVP 的 Daily GMV/AOV/Profit/结算率以月度口径替代(图题标注"→ Monthly")
  • 每图独立日期 = 按区间天数取整窗(非逐日过滤);拖拽限区块内(UVPVP 可跨区块)
  • First_Mile 头程费率未接入(Noon P&L 输出 —,legend 注明待需求单)
  • 映射编辑器:整分支替换(非增量 diff 保存);xlsx 导入需 cdnjs 可达
  • A+ 提交审核禁用(SP-API 凭证未接,需求单);媒体库 OCR 语言校验未接(语言手动标记)
  • 库存报表依赖台账流水(新功能暂无单据数据,页面正常渲染空态)