美国亚马逊运动服饰榜单追踪 Amazon US Best Sellers · Top 100

系统健康 所有自动化都在正常运行

下面是每个自动化任务「上次成功完成」是多久以前,以及它本该多久跑一次。启动过但崩溃了不算完成——那种情况下该跑的步骤被跳过了,等于没干活。这一栏是为了让你不用靠翻日志去猜「是系统停了还是我没干活」。

任务期望周期上次成功状态
● 3 小时自主循环每 3 小时6 分钟前正常
● 每日榜单采集每天 07:1010.6 小时前正常
● 多平台趋势采集每天全量 + 每 3 小时快信号2.3 小时前34 个平台有数据
● 主动改进记录持续5.0 小时前有近期记录

改进待办 0 / 13 项超期

这是系统手上排着的活:每项本该多久跑一次、上次跑是什么时候。干活监督(每分钟检查一次的那个任务)每小时会挑到期的全部跑掉;如果发现过去 2 小时什么产出都没有,它会不等间隔、直接开工——这就是「一发现没干活就继续改进」的落点。需要判断力或改代码的活(新功能、新分析)脚本不硬做,它会标成「待 AI 处理」写进下面的日志等我做。监督器上次运行:0.3 小时前。

任务频率上次跑状态为什么要有这项
全站死链审计每 4 小时3.8 小时前正常目录扩量会不断引入只有列表信息的 ASIN,站内链接可能变成死胡同
完整性抽检每 3 小时2.8 小时前正常比对缓存文件与数据库快照是否一致,抓解析与落库的偏差
款式词典回归每 2 小时1.8 小时前正常正则漏了 waisted 的 ed 就让 7 个中腰款消失、建议开发自家已有的款;词典错了不报错只给错结论
多平台趋势全量采集每 6 小时5.2 小时前正常全部 35 个源跑一遍约 10 分钟,按 6 小时一次控制抓取量
品牌名录补采每 4 小时3.3 小时前正常榜单里出现的品牌要补上体量、店铺等信息,供品牌排行与情报使用
快信号采集(工厂+社媒)每小时48 分钟前正常工厂批发与社媒搜索是最早的信号,且最便宜,值得每小时刷
分析冒烟测试每 2 小时1.3 小时前正常分析都是页面实时算的、没测试,坏了只有用户点开才知道
数据质量门禁每 2 小时1.3 小时前正常七项断言:新鲜度/类目全/价格合理/名次唯一/关联完整/标题非空/趋势源覆盖
阈值自我改进每 6 小时3.8 小时前正常只调阈值不改代码:记录旧值、原因、取值范围,每天最多动一步
新品榜刷新每 6 小时3.8 小时前正常16 个类目的新品榜,新品开发板块的核心数据源
品牌目录扩量每小时6 分钟前正常榜单每类目只 100 名,只看榜单会严重低估品牌体量
补采商品详情每小时6 分钟前正常榜单只给列表字段,价格历史/尺码/评论要单独抓;按预算小步跑
品牌情报留痕每小时6 分钟前正常离线计算,不打网络;给 /intel 积累每日基线用于画趋势

开发日志

每个月、每天、每个小时我干了什么。所有条目都写在这里,包括没干活的小时。

今天我记录的
4
定时任务另有 35 条(分开计)
今天活跃小时
20/24
其余小时无任何工作记录
本月我记录的
76
本月共 801 条(含自动)
本月有记录的天
4
31 天中的 4 天
这个日志怎么读 「我(AI)」是我实际做的工作;「定时任务」是服务器按计划自动跑的采集和自我改进, 两者分开计。用自动任务的产出冒充我干的活,这个日志就没有检验价值了。 没干活的小时显示「无记录」,不会用任何方式填空。过去 14 天有 14 天我没有任何记录:10-22、10-23、10-24、10-25、10-26、10-27、10-28、10-29、10-30、10-31、11-01、11-02、11-03、11-04 每条尽量给「依据」——你可以照着依据自己去核对,而不是只信我的描述。

2026 年 10 月 ← 上月 下月 →

格子里的数字是当天「我」记录的条数;定时任务的条数不计入颜色,只在悬停提示里显示。 点任意一天看那天的逐小时明细。

一二三四五六日
1234
567891011
12131415164617418
191020162122232425
262728293031

2026-10-17 逐小时明细(39 条)

24 小时全列出来。空行就是那一个小时我没干活。

时间谁做了什么依据
00:26定时任务数据采集 3 小时自主循环完成
品牌补采 60 个 + 品牌深潜 2 个品牌/40 个详情 + 完整性抽检 + 自我改进 + 情报留痕 + 多平台采集 + 死链审计
依据:data/state/loop.json 心跳;logs/cron/loop.log
01:00— 无记录
02:00— 无记录
03:26定时任务数据采集 3 小时自主循环完成
品牌补采 60 个 + 品牌深潜 2 个品牌/40 个详情 + 完整性抽检 + 自我改进 + 情报留痕 + 多平台采集 + 死链审计
依据:data/state/loop.json 心跳;logs/cron/loop.log
04:00— 无记录
05:00— 无记录
06:35定时任务数据采集 3 小时自主循环完成
品牌补采 60 个 + 品牌深潜 2 个品牌/40 个详情 + 完整性抽检 + 自我改进 + 情报留痕 + 多平台采集 + 死链审计
依据:data/state/loop.json 心跳;logs/cron/loop.log
07:54定时任务数据采集 每日采集完成(2026-10-17)
16 个类目 Top100 采集 + 详情补齐 + QA 门禁
依据:data/state/last_run.json、logs/cron/daily.log
08:47定时任务数据采集 干活监督:有到期任务,完成 9 项
过去 2 小时工作记录 4 条。本轮跑掉:快信号采集(工厂+社媒)、品牌情报留痕、补采商品详情、品牌目录扩量、数据质量门禁、分析冒烟测试、完整性抽检、全站死链审计、品牌名录补采(约 34 分钟)。⚠ AI 已 11.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
08: 我(AI)修问题 量化「不干活」:24 小时里只有 11 小时有产出,最大空档 2.4 小时
用户说「我看了开发日志后发现你经常不干活」。先量化再动手:今天 24 小时里只有 11 个小时有工作记录,13 小时空白;最大空档 2.4 小时,占首末条之间时长的 21%。根因是结构性的,不是偷懒:AI 只在用户发消息时才运行,中间只有定时任务在跑,而它原来每 3 小时才动一次、做完就静静等下轮。所以「24 小时不间断改进」靠原来的架构做不到,必须改调度本身。
依据:work_log 按小时统计:有记录 11 小时、无记录 13 小时;相邻记录最大间隔 145 分钟
08: 我(AI)新功能 主循环从「3 小时一次全量」改成「每小时轮转专题」
原来每 3 小时把全部步骤跑一遍,做完就空等。改成每小时一轮、6 小时轮转一圈,每轮只做一个聚焦专题:0 目录扩量+详情补采 / 1 多平台趋势全量 / 2 新品榜+完整性+自我改进 / 3 品牌补采+情报留痕 / 4 快信号采集+死链审计 / 5 分析刷新+数据质量。不每小时全跑的原因:全量一轮约 25 分钟,每小时全跑等于每天 10 小时抓取量,会把亚马逊和各竞品站的限流打满,反而拉低数据质量;轮转能让不同数据源在一天内都被刷新多次。cron 从「0 */3」改为「5 * * * *」,并删掉旧的 3 小时条目避免重复。
依据:crontab 现为 5 * * * * loop_improve + 35 * * * * work_supervisor;心跳新增 slot/slot_name 字段
08: 我(AI)新功能 新增「干活监督」定时任务:每小时检查有没有在干活,没干就立刻开工
用户指定的任务:专门查看是不是在干活,一发现没干活就继续改进,每小时一次。先如实说明限制——定时任务叫不醒 AI(我只在用户发消息时运行),所以它做三件真能做的事:1) 度量:只认 work_log 里的真实记录,不认「进程起来过」;2) 自己动手:把 tracker/backlog.py 里到期的活立刻跑掉;发现过去 2 小时零产出时,不等间隔直接挑最该做的一项开跑,这就是「一发现没干活就继续改进」的落点;3) 如实上报:跑不掉的活(需要判断力或改代码的)标成「待 AI 处理」写进日志。配合 tracker/backlog.py(12 项任务的单一来源,含间隔与理由)和开发日志页新增的「改进待办」卡(每项频率、上次跑、超期状态)。与主循环做了去重:循环跑完会把对应待办登记给它,避免两个任务重复抓同一家站。
依据:首次真实运行:9 项完成、0 失败、34 分钟;cron 第二次触发时正确检测到锁并跳过;/log 的「改进待办」卡已显示各项状态
08: 我(AI)新功能 补上两个一直缺失的质量工具:数据质量门禁 + 分析冒烟测试
写「分析刷新」这项待办时才发现要引用的命令根本不存在。数据质量门禁(bin/check_data_quality.py):七项断言——快照新鲜度、类目完整性、价格合理性、名次唯一性、关联完整性、标题空值、趋势源覆盖。分析冒烟测试(bin/check_analyses.py):把 23 项分析全跑一遍。后者补的是一个真实盲区:/insights 上的分析全是用户打开页面时实时算的、没有任何测试,某个分析因为字段改名或空数据抛异常时,只有「用户正好点开那一页」才会发现——自动化里永远不出现。过程中修了自己两个 bug:tracked_asins 返回字符串列表不是字典行;关联完整性用「总数相减」把 184 个缺详情的商品算成了 0(products 表里有图遍历发现、从未进过榜单的 ASIN,相减会把它们当成已有详情),已改成真 JOIN。
依据:两个脚本均通过:数据质量七项全过;分析冒烟 23 项全过。关联完整性修正后为 1048 个在榜 ASIN 中 184 个缺详情(17.6%)
09:18定时任务数据采集 自主循环完成:品牌补采 + 情报留痕
每小时一轮、6 小时轮转一圈,本轮专题是「品牌补采 + 情报留痕」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
10:07定时任务数据采集 自主循环完成:快信号采集 + 死链审计
每小时一轮、6 小时轮转一圈,本轮专题是「快信号采集 + 死链审计」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
10: 定时任务数据采集 干活监督:有到期任务,完成 6 项
过去 2 小时工作记录 10 条。本轮跑掉:多平台趋势全量采集、新品榜刷新、阈值自我改进、快信号采集(工厂+社媒)、补采商品详情、品牌目录扩量(约 34 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
10: 定时任务数据采集 干活监督:有到期任务,完成 3 项
过去 2 小时工作记录 12 条。本轮跑掉:数据质量门禁、分析冒烟测试、品牌情报留痕(约 3 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
11:05定时任务修问题 自主循环(分析刷新 + 数据质量)有 1 个步骤失败
失败步骤:-m tracker.cli analyze(退出码 2)。其余步骤已正常完成,下一轮会自动重试。
依据:logs/cron/loop.log 完整堆栈;data/state/loop.json 心跳
11: 定时任务数据采集 干活监督:有到期任务,完成 4 项
过去 2 小时工作记录 14 条。本轮跑掉:完整性抽检、快信号采集(工厂+社媒)、补采商品详情、品牌目录扩量(约 22 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
12:16定时任务数据采集 自主循环完成:目录扩量 + 详情补采
每小时一轮、6 小时轮转一圈,本轮专题是「目录扩量 + 详情补采」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
12: 定时任务数据采集 干活监督:有到期任务,完成 1 项
过去 2 小时工作记录 16 条。本轮跑掉:全站死链审计(约 1 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
13:15定时任务数据采集 自主循环完成:多平台趋势全量采集
每小时一轮、6 小时轮转一圈,本轮专题是「多平台趋势全量采集」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
14:05定时任务数据采集 自主循环完成:新品榜刷新 + 完整性 + 自我改进
每小时一轮、6 小时轮转一圈,本轮专题是「新品榜刷新 + 完整性 + 自我改进」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
14: 定时任务数据采集 干活监督:有到期任务,完成 6 项
过去 2 小时工作记录 18 条。本轮跑掉:品牌名录补采、分析冒烟测试、数据质量门禁、快信号采集(工厂+社媒)、品牌目录扩量、补采商品详情(约 34 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
14: 定时任务数据采集 干活监督:有到期任务,完成 1 项
过去 2 小时工作记录 20 条。本轮跑掉:品牌情报留痕(约 1 分钟)。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
15:19定时任务数据采集 自主循环完成:品牌补采 + 情报留痕
每小时一轮、6 小时轮转一圈,本轮专题是「品牌补采 + 情报留痕」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
15: 定时任务数据采集 干活监督:有到期任务,完成 4 项
过去 2 小时工作记录 22 条。本轮跑掉:完整性抽检、快信号采集(工厂+社媒)、品牌目录扩量、补采商品详情(约 22 分钟)。⚠ AI 已 6.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
16:07定时任务数据采集 自主循环完成:快信号采集 + 死链审计
每小时一轮、6 小时轮转一圈,本轮专题是「快信号采集 + 死链审计」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
16: 定时任务数据采集 干活监督:有到期任务,完成 4 项
过去 2 小时工作记录 24 条。本轮跑掉:阈值自我改进、新品榜刷新、分析冒烟测试、数据质量门禁(约 4 分钟)。⚠ AI 已 7.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
17:05定时任务修问题 自主循环(分析刷新 + 数据质量)有 1 个步骤失败
失败步骤:-m tracker.cli analyze(退出码 2)。其余步骤已正常完成,下一轮会自动重试。
依据:logs/cron/loop.log 完整堆栈;data/state/loop.json 心跳
17: 定时任务数据采集 干活监督:有到期任务,完成 3 项
过去 2 小时工作记录 26 条。本轮跑掉:品牌目录扩量、补采商品详情、快信号采集(工厂+社媒)(约 22 分钟)。⚠ AI 已 8.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
18:19定时任务数据采集 自主循环完成:目录扩量 + 详情补采
每小时一轮、6 小时轮转一圈,本轮专题是「目录扩量 + 详情补采」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
18: 定时任务数据采集 干活监督:有到期任务,无需行动
过去 2 小时工作记录 28 条。⚠ AI 已 9.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
19:15定时任务数据采集 自主循环完成:多平台趋势全量采集
每小时一轮、6 小时轮转一圈,本轮专题是「多平台趋势全量采集」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
20:02定时任务数据采集 干活监督:有到期任务,完成 7 项
过去 2 小时工作记录 30 条。本轮跑掉:品牌名录补采、完整性抽检、分析冒烟测试、数据质量门禁、快信号采集(工厂+社媒)、品牌目录扩量、补采商品详情(约 29 分钟)。⚠ AI 已 10.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
20: 定时任务数据采集 自主循环完成:新品榜刷新 + 完整性 + 自我改进
每小时一轮、6 小时轮转一圈,本轮专题是「新品榜刷新 + 完整性 + 自我改进」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
20: 定时任务数据采集 干活监督:有到期任务,完成 1 项
过去 2 小时工作记录 32 条。本轮跑掉:全站死链审计(约 1 分钟)。⚠ AI 已 11.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
21:17定时任务数据采集 自主循环完成:品牌补采 + 情报留痕
每小时一轮、6 小时轮转一圈,本轮专题是「品牌补采 + 情报留痕」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
21: 定时任务数据采集 干活监督:有到期任务,完成 3 项
过去 2 小时工作记录 34 条。本轮跑掉:快信号采集(工厂+社媒)、品牌目录扩量、补采商品详情(约 16 分钟)。⚠ AI 已 12.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
22:07定时任务数据采集 自主循环完成:快信号采集 + 死链审计
每小时一轮、6 小时轮转一圈,本轮专题是「快信号采集 + 死链审计」。这样安排是因为全量跑一轮约 25 分钟,每小时都全跑会把各站限流打满、反而拉低数据质量;轮转能保证不同数据源在一天内都被刷新多次。
依据:data/state/loop.json 心跳;logs/cron/loop.log
22: 定时任务数据采集 干活监督:有到期任务,完成 2 项
过去 2 小时工作记录 36 条。本轮跑掉:分析冒烟测试、数据质量门禁(约 2 分钟)。⚠ AI 已 13.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json
23:05定时任务修问题 自主循环(分析刷新 + 数据质量)有 1 个步骤失败
失败步骤:-m tracker.cli analyze(退出码 2)。其余步骤已正常完成,下一轮会自动重试。
依据:logs/cron/loop.log 完整堆栈;data/state/loop.json 心跳
23: 定时任务数据采集 干活监督:有到期任务,完成 4 项
过去 2 小时工作记录 38 条。本轮跑掉:完整性抽检、品牌目录扩量、补采商品详情、快信号采集(工厂+社媒)(约 16 分钟)。⚠ AI 已 14.8 小时没有主动记录工作。需要判断力或改代码的改进(新功能、新分析、分析口径调整)脚本不该硬做,标记为待 AI 处理。
依据:logs/work_supervisor.log;data/state/work_supervisor.json