从 Windows(Workbuddy 环境,D:\WorkbuddySpace\门店检测工具\)迁到 macOS。
迁移包 门店检测工作台_迁移包_20261030.zip 解压到本机后接续开发。
/usr/bin/python3),零第三方依赖,符合原设计门店检测工作台/store-ops/127.0.0.1:8787data/app.db 完好:1409 家门店、1 个导入批次、2026-10 周期hx_amt_base = 10000(默认 12000),面板标「自定义」badvars=0processed/store-ops/启动工作台.command(可执行)
[端口] --local --no-open--open 自动开浏览器开放局域网访问.bat 是 Windows 专用;macOS 首次运行在系统弹窗里点「允许」即可门店数据_2026-10.xlsx(无日期列、整月汇总)→ 周期被写成 2026-01,
且被当成 日粒度、日期 2026-01-00(非法日期)(20\d{2})[-_.]?(\d{1,2})[-_.]?(\d{1,2}) 三段全可选分隔符,
2026-10.xlsx 被回溯匹配成 2026 + 1 + 0ingest.guess_period_date 重写,按「完整日期 → 年月 → 仅月份」优先级,且逐级校验合法性:
2026-10-30 / 2026/10/30 / 2026.10.30 / 2026年10月30日 / 20261030 / 10.282026-10 / 2026.10 / 2026年10月 / 202610 / 10月2026-01-00granularity / period 改为按实际入库行统计
granularity 只看传入的 date 参数,带「日期」列的 CSV 会误报成 periodperiods 明细,period 取行数最多的月份(前端按它刷新视图)/tmp/storeops_test,不动真实数据)启动工作台.bat / 开放局域网访问.bat 仅 Windows 可用,保留不删(团队里可能还有 Windows 机器)预览分析结果 金色主按钮 + 导出报告 白色次按钮),Esc 先关报告再关抽屉window.print(),走系统打印)与【下载 HTML】(自包含单文件,样式内联)frontend/report.css:报告专属样式,自带全部依赖(不依赖 style.css),
这样下载出去的单文件 HTML 与工作台内看到的长相完全一致@page A4 + body.rp-on 作用域下隐藏工作台外壳,普通页面按 Cmd+P 不受影响;
-webkit-print-color-adjust:exact 保证金色/语义色打出来max-width:640px 下指标单列、数据卡两列,375px 实测无横向溢出renderFeedback 里的洞察段抽成 insightTexts(s, X, flags)feedbackText() 做稳定哈希比对,
汇总哈希 e86ee9 完全一致、逐店差异 0 —— 重构对外零变化.rphead 是 <header>,被 style.css 的全局 header{display:flex;justify-content:space-between}
命中,标题被挤到右侧;显式 display:block 并关掉 header::after 的装饰线th{background:#fdf9ee} 等表格样式会串到报告表头;report.css 里把表头样式写全,
否则「工作台内预览」和「下载的 HTML」会长得不一样h2 加 page-break-after:avoid + h2 + *{break-before:avoid},避免章节标题孤零零留在页尾fb_no_issue 模板,不再拼后缀