[Bug] 首页终末地活动数据下载完整词表,触发 Large HTTP payload
Maintainers usually reply within 1 day
@HarcoChen is already working on this.
Since Oct 19, 2026.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 48/100
- Issue type
- Bug
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- json, python, typescript
Research direction
Read frontend/src/views/home/useEndfieldActivitySource.ts, especially the snapshot version check and six-table download path; trace which activity, banner, pool, and operator names the home view uses. Compare an empty-snapshot run with a cached same-version run, and define the summary contents and update fallback before implementing the proposed data cache. Done means the uncached home flow no longer downloads the full Chinese text table while retaining future activity filtering.
Written by the indexing model from the issue text.
Description
提交所用的 AI 工具
Codex(按用户要求整理原始 Sentry 告警和分析)。
问题描述
首页加载终末地活动数据时,会下载整份中文词表;原始 Sentry 事件记录单次响应为 5.4 MiB(5,668,864 B),触发 Large HTTP payload 性能告警。
期望首页只获取展示活动、卡池和相关名称所需的数据,降低首次加载和数据版本更新时的下载量与解析成本。目前没有用户提供的卡顿时长或加载失败证据,不将本告警等同于已发生功能失败。
原始告警与 Trace
Sentry:https://auto-mas.sentry.io/issues/7793208425/
以下为用户提供的原始事件片段;状态和次数是当时的通知值,不代表当前 Sentry 状态:
项目:auto-mas-desktop
标题:Large HTTP payload
级别:info
状态:unresolved
位置:Home
次数:1
Large HTTP Payload Span
http.client - GET https://data.akedata.wiki/public/1.6.3/11010254-4/TableCfg/I18nTextTable_CN.json
Payload Size
5.4 MiB (5668864 B)
事件中的 AKEData 数据版本为 1.6.3@11010254-4;AUTO-MAS 版本、操作系统和本体日志压缩包未提供。
已确认的分析
- 触发路径是词表下载。 核对 2026-10-17 上游
dev(c871aa1149f0411446f7af8edf22e9ccfb3b8f4a),首页会先检查源站版本;已有同版本数据时直接复用,否则并行下载六张完整表,其中包含I18nTextTable_CN.json和CharacterTable.json。参见快照恢复与版本判断、六表下载入口。现有缓存减少了重复下载,未消除首次或源站版本变化时的大响应。 - #1306 不覆盖此问题。 该 PR 已合并,但调整的是横幅图片选择、预热和超时,未修改上述词表下载逻辑。本告警对应 JSON 请求,与横幅原图加载问题不同。
- 首页实际使用的文本远少于完整词表。 2026-10-15 对上述 AKEData 数据版本进行取数和引用关系分析:完整中文词表有 164,802 条记录,Brotli 压缩后仍约 5.4 MiB;按当前首页活动、标签、卡池和 UP 角色名称的引用提取,只需 172 条文本,均能匹配,紧凑 JSON 为 6,861 B,gzip 后为 3,686 B。后两个大小只包含文本子集,不包含活动时间、图片地址等,也不是已完成修复后的整份响应大小。
触发条件与验证范围
- 没有可用的本地终末地快照,或 AKEData 的最新数据版本与快照不同,且终末地首页模块开始取数时,会进入整表下载路径。
- 可在测试环境中用无快照的独立客户端打开首页,查看网络请求是否包含上述完整词表;已有同版本快照的场景应一并对照。
- 原始告警来自用户提供的 Sentry 记录;本次完成了代码核对及前述数据大小分析,尚未进行应用内实机复现或修复验证。
候选改进方向:通过 data 缓存并分发精简摘要
可评估由同步任务检查 AKEData 版本、提取首页需要的活动和卡池信息,再通过 data.auto-mas.top 发布摘要,客户端继续利用本地快照和条件请求更新。同步失败时保留上一份可用内容;摘要应保留未来活动,让客户端继续按时间筛选。
这里只是待实施方向,尚未修改客户端、部署同步任务或发布数据文件。若 data 仅镜像完整词表,客户端首次下载量仍约为 5.4 MiB,不能解决单次响应过大的问题。
确认
- 我确认这是 AI 生成的内容,并已核对上面的代码位置和原始事件片段。
- 我理解 AI 反馈分区不承诺处理时间,也不保证有人认领。
- Dominant language
- Python
- Stars
- 707
- Forks
- 56
- Avg merge
- 11h 45m
- Merged PRs (30d)
- 429
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from AUTO-MAS-Project/AUTO-MAS
-
AI bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
AUTO-MAS-Project/AUTO-MAS#1960 · 1 comment ·
Maintainers usually reply within 1 day
-
AI bug
Difficulty 4/5 3-5 days Newbie friendliness 48/100
AUTO-MAS-Project/AUTO-MAS#1959 · 1 comment ·
Maintainers usually reply within 1 day
-
AI bug
Difficulty 3/5 1-2 days Newbie friendliness 66/100
AUTO-MAS-Project/AUTO-MAS#1956 · 1 comment ·
Maintainers usually reply within 1 day
-
AI bug
Difficulty 4/5 3-5 days Newbie friendliness 55/100
AUTO-MAS-Project/AUTO-MAS#1953 · 1 comment ·
Maintainers usually reply within 1 day
-
Difficulty 3/5 1-2 days Newbie friendliness 67/100
AUTO-MAS-Project/AUTO-MAS#1947 ·
Maintainers usually reply within 1 day
All issues in AUTO-MAS-Project/AUTO-MAS
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
btclib-org/btclib-wallet#872 ·
Maintainers usually reply within 1 day
-
[Bug]: Scheduled returns scan all accepted minion keys causing extreme loadPossibly taken A pull request linked to this issue is open or already merged. Openbug needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
saltstack/salt#70789 · 1 comment ·
Maintainers usually reply within 3 days
-
Difficulty 2/5 1-3 hours Newbie friendliness 87/100
btclib-org/btclib#3093 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day
-
good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
patrickballard/wheelgap#269 ·