Feat: Memory health panel — surface memory usage, truncation warnings & overflow risk in Settings #3889
cqlxyz
started this conversation in
Feature Proposals
Replies: 1 comment
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
English:
Background — a real incident: MEMORY.md is the agent's memory index, capped at 25 KB (MAX_INDEX_BYTES in aion-memory). When it exceeds the cap it gets truncated — and in #244 the truncation even panicked mid-UTF-8-char, crashing the whole team runtime (409 TEAM_RUNTIME_NOT_READY), leaving every agent unreachable with zero UI feedback. The panic is fixed in #248, but truncation itself remains silent: users still can't see how full their memory is, when it was truncated, or what was lost.
Proposal — Memory health panel in Settings:
Usage bar: current size / 25 KB cap, entry count
Truncation history: last truncation time + reason
Overflow warning: yellow at 80%, red at 95%
"Reveal in folder" button (open the memory directory)
Why it matters: memory is the agent's core asset; today users have zero visibility into it. A silent truncation can quietly drop memory entries, and (pre-#248) could even take down the whole team. This closes the loop on the #244/#248 incident.
Scope (incremental): aion-memory exposes a small memory stats API (size, line count, truncated flag, last truncation time) → AionUi reads it via bridge → new section in Settings (System/About). Pure addition, no behavior change to existing flows. i18n for all locales.
中文:
背景(真实事故): MEMORY.md 是 agent 的记忆索引,上限 25KB(aion-memory 的 MAX_INDEX_BYTES)。超过上限会被截断——#244 中截断逻辑甚至在 UTF-8 字符中间 panic,导致整个团队运行时崩溃(409 TEAM_RUNTIME_NOT_READY),所有 agent 失联且界面零提示。panic 已在 #248 修复,但"静默截断"问题依然存在:用户看不到记忆用了多少、何时被截断、丢了什么。
提案 —— 设置页新增「记忆健康面板」:
用量条:当前大小 / 25KB 上限、条目数
截断记录:最近截断时间 + 原因
超限预警:80% 黄 / 95% 红
「在文件夹中显示」按钮(打开 memory 目录)
价值: 记忆是 agent 的核心资产,目前用户零感知。静默截断会悄悄丢记忆条目,(修复前)甚至能搞垮整个团队。此提案为 #244/#248 事故画上闭环。
范围(纯增量): aion-memory 暴露一个小型 memory stats API(大小/条数/截断标志/最近截断时间)→ AionUi 经 bridge 读取 → 设置页新增区块。不改现有流程行为。全语言 i18n。
All reactions