You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maka.apache.org by "Dante-dan (via GitHub)" <gi...@apache.org> on 2026/10/23 08:06:25 UTC
[PR] fix(runtime): avoid compaction without safe-prefix progress [maka]
Dante-dan opened a new pull request, #6262:
URL: https://github.com/apache/maka/pull/6262
## Summary
Manual compaction can keep selecting an already summarized prefix when later conversation sits beyond a tool call without a durable response. Detect unchanged coverage after selecting the safe prefix and checking effective-content currency, then return `unchanged / already_compacted` without another checkpoint or successful compaction note.
Effective-content changes still invalidate the old checkpoint and trigger a fresh summary. This leaves the interrupted call and its uncertainty intact; it does not synthesize a result or retry the tool.
Fixes #6254
## Verification
- 406 tests passed across the backend, compaction planner, checkpoint and summarizer suites.
- Another 146 tests passed in the shared mid-turn capacity and reactive overflow suites.
- Both added backend regressions fail when the planner's new no-progress guard is removed: redundant summarization/persistence is attempted and the repeat is reported as `compacted`.
- `npm run lint`, `npm run format:check`, `npm run build`, `npm run typecheck`, and both required `npx knip --workspace` checks (`apps/desktop`, `packages/ui`) passed using Node 24.15.0 and npm 11.19.0.
- Normal commit hooks and `git diff --check` passed.
The real Host crash/restart scenario and the complete repository test suite were not rerun locally. The added regressions exercise the existing backend fixtures with an unresolved call followed by newer conversation, including a projection transition inside the unchanged safe boundary.
## AI use
- [ ] No generative tool made a substantive contribution
- [x] Generative tooling made a substantive contribution
Tool(s) and scope: OpenAI Codex investigated the source, implemented the change and regression tests, and ran the checks above. The commit carries `Generated-by: OpenAI Codex`; preserve it when squashing.
## Checklist
- [x] Tests cover the change and fail without it
- [x] Lint, format, typecheck and the affected suites pass locally
Does this PR entail a change in behavior?
- [x] Yes — described under Summary above
- [ ] No
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org
Re: [PR] fix(runtime): avoid compaction without safe-prefix progress [maka]
Posted by "sunrioa (via GitHub)" <gi...@apache.org>.
sunrioa commented on PR #6262:
URL: https://github.com/apache/maka/pull/6262#issuecomment-6363842343
@Dante-dan Thanks for the no-progress reporting fix. I've added [a clarification of the remaining recovery-boundary issue](https://github.com/apache/maka/issues/6254#issuecomment-6363829951) in #6254.
Could you also evaluate allowing compaction to advance past the durably sealed `failed / outcome_unknown` invocation in the reproduced case, while preserving the unknown outcome and protecting live calls? Returning `unchanged` fixes the reporting defect, but the history after that boundary still cannot be compacted.
This could be addressed here or in a linked follow-up PR. The Issue comment includes the safety constraints and the requested ordinary-Session crash/recovery validation. If handled separately, please link the follow-up so the remaining problem stays tracked when #6254 is closed.
<details>
<summary>中文</summary>
@Dante-dan 感谢这次无进展误报修复。我已在 #6254 的[补充评论](https://github.com/apache/maka/issues/6254#issuecomment-6363829951)中说明剩余的恢复边界问题。
能否评估让压缩越过本次复现中已被可靠封存为 `failed / outcome_unknown` 的历史执行,同时保留结果未知的事实,并继续保护真正执行中的调用?返回 `unchanged` 解决了误报,但边界之后的历史仍无法压缩。
可以在当前 PR 追加修复,也可以通过关联的后续 PR 处理。Issue 补充中列出了安全约束和普通 Session 异常退出/恢复的验证要求。如果拆分处理,请关联后续事项,避免 #6254 关闭后剩余问题失去跟踪。
</details>
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org
Re: [PR] fix(runtime): handle recovered unknown calls in compaction [maka]
Posted by "Dante-dan (via GitHub)" <gi...@apache.org>.
Dante-dan commented on PR #6262:
URL: https://github.com/apache/maka/pull/6262#issuecomment-6366489768
Implemented in f5688661cec71c1bae55af05e0a28626ed156206. Compaction can now cross an unmatched call only with matching Host recovery evidence for `failed / outcome_unknown`, including that specific unresolved call. Live calls and insufficient or mismatched seals stay protected, including reused tool-call IDs across invocations. The summarizer receives explicit unknown-effect text; the raw ledger is unchanged, with no invented tool result or retry.
The ordinary Session regression now creates a new Host manager over the interrupted invocation, runs recovery, appends a normal user conversation, and compacts through the real backend/planner and Host checkpoint persistence. Repeating compaction produces no second summary/checkpoint. The new regressions pass. This uses retained fixture stores and a mock provider; a real desktop Host process crash/restart was not run.
The PR description records all checks and the two existing Plan settlement tests that fail locally because the sandbox denies the default macOS owner-registry path. Build, typecheck, lint, format and both required Knip checks pass.
Automated update from OpenAI Codex.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@maka.apache.org
For additional commands, e-mail: commits-help@maka.apache.org