fix(role): 修正 SLEEP_BATCH 與輸出上限矛盾導致整批整理失敗 #19

Merged
admin merged 1 commits from develop into master 2026-07-29 04:25:38 +00:00
Member

問題

以真實資料整理 25 則 inbox 時失敗(「整理結果無法套用」)。查證後為參數設計矛盾:

參數 原值 說明
ROLE_SLEEP_BATCH 60 宣稱一次可處理 60 則
每則整理結果所需 ~650 字元 summary/content/各欄位
ROLE_SLEEP_OUTPUT_LIMIT 8000 → 實際只能容納約 12 則

實測 25 則的素材達 25798 位元組COLLECT_LIMIT 為 12000),輸出 JSON 被截斷成不合法格式,apply 解析失敗,整批無法套用。

所幸「失敗時 inbox 保留不動」的設計生效,沒有遺失任何記憶

改動

  • SLEEP_BATCH 預設 6012,並在程式碼註明推算依據與本次實測數據
  • collect 超出單批上限時於素材標頭標示「本批 N 則,另有 M 則留待下批」,避免誤以為已全部整理完
  • SKILL.md 註明此參數不可任意調高,需與輸出上限相容

驗證

  • 以 20 則 inbox 確認正確切為 12 + 8 並標示留待下批
  • 25 則真實記憶以每批 10 則分三次整理完成(新增 9 則、合併 6 則、捨棄 2 則),inbox 清空
  • DIGESTS.md 在真實資料上正確累積 3 筆整理歷史

備註

本修正原本要進 PR #18,但該 PR 於 04:05 UTC 合併,而此 commit 於 04:20 UTC 推送,時間差 15 分鐘而未納入。

版號沿用 0.0.5(master 現為 0.0.5,本次為同版修正;若需嚴格遞增可改為 0.0.6,請告知)。

🤖 Generated with Claude Code

## 問題 以真實資料整理 25 則 inbox 時失敗(「整理結果無法套用」)。查證後為參數設計矛盾: | 參數 | 原值 | 說明 | | --- | --- | --- | | `ROLE_SLEEP_BATCH` | **60** | 宣稱一次可處理 60 則 | | 每則整理結果所需 | ~650 字元 | summary/content/各欄位 | | `ROLE_SLEEP_OUTPUT_LIMIT` | 8000 | → 實際只能容納約 **12 則** | 實測 25 則的素材達 **25798 位元組**(`COLLECT_LIMIT` 為 12000),輸出 JSON 被截斷成不合法格式,`apply` 解析失敗,整批無法套用。 所幸「失敗時 inbox 保留不動」的設計生效,**沒有遺失任何記憶**。 ## 改動 - `SLEEP_BATCH` 預設 `60` → `12`,並在程式碼註明推算依據與本次實測數據 - `collect` 超出單批上限時於素材標頭標示「本批 N 則,另有 M 則留待下批」,避免誤以為已全部整理完 - `SKILL.md` 註明此參數**不可任意調高**,需與輸出上限相容 ## 驗證 - 以 20 則 inbox 確認正確切為 12 + 8 並標示留待下批 - 25 則真實記憶以每批 10 則分三次整理完成(新增 9 則、合併 6 則、捨棄 2 則),inbox 清空 - `DIGESTS.md` 在真實資料上正確累積 3 筆整理歷史 ## 備註 本修正原本要進 PR #18,但該 PR 於 04:05 UTC 合併,而此 commit 於 04:20 UTC 推送,時間差 15 分鐘而未納入。 版號沿用 `0.0.5`(master 現為 `0.0.5`,本次為同版修正;若需嚴格遞增可改為 `0.0.6`,請告知)。 🤖 Generated with [Claude Code](https://claude.com/claude-code)
jiantw83 added 1 commit 2026-07-29 04:22:50 +00:00
以真實資料整理 25 則 inbox 時失敗(「整理結果無法套用」)。查證後為參數設計矛盾:

- ROLE_SLEEP_BATCH 預設 60,宣稱一次可處理 60 則
- 但每則整理結果約需 650 字元(summary/content/各欄位),
  而 ROLE_SLEEP_OUTPUT_LIMIT 為 8000 → 實際只能容納約 12 則
- 實測 25 則的素材達 25798 位元組(COLLECT_LIMIT 為 12000),
  輸出 JSON 被截斷成不合法格式,apply 解析失敗,整批無法套用

所幸失敗時 inbox 保留不動的設計生效,沒有遺失任何記憶。

- SLEEP_BATCH 預設 60 → 12,並在程式碼註明推算依據與這次的實測數據
- collect 在超出單批上限時於素材標頭標示「本批 N 則,另有 M 則留待下批」,
  避免誤以為已全部整理完
- SKILL.md 註明此參數不可任意調高,需與輸出上限相容

驗證:以 20 則 inbox 確認正確切為 12 + 8 並標示留待下批;
爸爸的 25 則實際記憶以每批 10 則分三次整理完成(新增 9 則、合併 6 則、捨棄 2 則),
inbox 清空,且 DIGESTS.md 在真實資料上正確累積 3 筆整理歷史。

版號沿用 0.0.5(master 為 0.0.4,同一 PR 不再累加)

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
admin approved these changes 2026-07-29 04:25:35 +00:00
admin merged commit c24f6deaed into master 2026-07-29 04:25:38 +00:00
Sign in to join this conversation.
No Reviewers
No labels
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: plugins/shared#19