OMO 5.0.0-beta.46 — engine update: senpi 2026.9.7
The engine moves from senpi 2026.9.6 to 2026.9.7 (#7886). This one carries the three fixes for the defects that were silently killing long sessions.
Fixed (via senpi 2026.9.7)
- Context overflow is recoverable again, even with auto-compaction off.
compaction.enabled=falsenow switches off only proactive threshold compaction; a turn the provider rejects as a context overflow still gets its one-shot compact-and-retry recovery instead of leaving the session with no way forward. A goal no longer re-prompts a context the provider just rejected; the next user message resumes it (code-yeongyu/senpi#1425, #1422). - The RPC
set_auto_compactionis session-scoped: it no longer rewrites the persisted globalcompaction.enabled, so one OmO Desktop thread toggling auto-compaction cannot disable it for every other session on the machine. The desktop toggle keeps working (it reads the followingget_state); the interactive/settingstoggle still persists (#1425). - Context windows in the catalog now show the real prompt budget. OpenAI rejects a request with
context_too_largeonce the prompt alone exceeds window minus max output, so the old 1,050,000 / 400,000 totals let sessions run past the point where compaction could still help — that is why sessions were dying around 916k. 128 catalog rows across OpenAI, OpenAI Codex, Azure, Bedrock, Copilot, OpenRouter, Vercel, OpenGateway, Cloudflare and OpenCode now carry the provider input caps (922,000 / 272,000); your UI footer shows a smaller denominator by design, and usermodelOverridesstill win (#1427, #1422). - No more whole-session freeze on a path token. The permission system's external-directory check resolved paths with
realpathSync, which under Bun opens every directory it walks and blocks forever on an autofs trigger such as macOS/home; it now resolves per component withlstat/readlink(#1419). - Codemode: a missing sidecar now surfaces a clear error instead of a hang (#1426); skill packages are de-duplicated (#1424); fallback decision logs and the teardown test harness were hardened (#1416, #1417).
Also since beta.45 (omo)
- test(background-agent): stop the unreachable-server stale sweep from expiring on the wall clock (#7891, @LilMGenius)
- fix(omo-senpi): make DAG owner-scope snapshot keys posix on Windows (#7893)
- #7869 fix(senpi-task): scope DAG recovery to the session and immediate fork source
- #7882 fix(postinstall): bound the opencode version probe
- #7881 fix(omo-senpi): keep one omo-senpi package entry and isolate the local launcher
- #7877 ci: fail the build job when committed schema artifacts are stale
- #7873 fix(schema): regenerate omo.schema.json after memory.tool_exposure was removed
- #7854 test(background-agent): pin the stale sweep against an unreachable server end to end
- #7851 fix(background-agent): finalize a stale task whose session is gone and cannot be aborted
- #7850 fix(background-agent): stop reading an unreachable server as a live session
npm i -g omo-ai@beta
bunx oh-my-openagent@5.0.0-beta.46 install
bunx lazycodex-ai@5.0.0-beta.46 install
Verified on a clean Linux box right after publish: both Codex install paths exit 0 with 26 skills, and published omo-ai reports omo 5.0.0-0.beta.46 (engine: senpi 2026.9.7).