Repository navigation
v0.49.19
·
275 commits
to master
since this release
v0.49.19
This patch release fixes Pi and Oh My Pi on Bun 1.3.x, ctx_expand by tag in Rust transform mode, dreamer runs stuck on a model that never answers, four edge cases of the signed-thinking hold, and a migration risk on Bun 1.4.4.
Upgrading
- No migration.
context.dbstays at schema 95 andstore.dbat schema 63. Restart OpenCode 1, OpenCode 2, Pi or Oh My Pi after updating.
Fixed
- Pi and Oh My Pi running on Bun 1.3.x (Oh My Pi's documented minimum is Bun 1.3.14) no longer refuse every turn on long sessions after 10 seconds. Bun releases before 1.4 hold back every message to a background worker until the worker's startup code has finished, and the worker that loads a session's tags waited for such a message during startup, so it never finished. Semantic auto-search hints had the same problem on that Bun and always came back empty; they now return matches again. Bun 1.4 and Node were not affected (issue 754, thanks @ChenYCL for the report and the investigation).
- In Rust transform mode,
ctx_expandwith a tag number now refuses and points to expanding by message or range, instead of returning an unrelated old item. Tag numbers in Rust mode come from the module's own store and can repeat numbers left over from before the session switched modes. TypeScript mode, Pi and Oh My Pi are unchanged. - On OpenCode 1, a dreamer task whose primary model never produces any output (for example a free model that has stopped answering) now moves to the configured fallback model after 90 seconds of silence, instead of holding the run for up to 20 minutes and then failing. This applies to classification, memory mapping and verification, and only when a fallback model is configured. A model that is answering, however slowly, keeps its full time.
- Four edge cases of the hold on Claude models whose thinking is bound to the prompt prefix:
- With compaction turned off, the first request after a restart could put a new prompt head in front of the open turn's signed thinking. That thinking is now removed from the request when the head may have changed, on OpenCode 1, OpenCode 2, Pi and Oh My Pi.
- After a restart, messages that a recovered request had sent untagged stay untagged until a pass that may rewrite the prompt anyway, so a deferred pass after the restart sends the same bytes.
- When a session has been idle past its cache lifetime while the open turn's signed thinking is held, the date in the system prompt is no longer advanced on that request; it advances on the first request that doesn't keep the held thinking.
- The refusal that keeps an oversized request from going out with held signed thinking now applies only to requests that actually hold it. Other requests are sized and refused the same way as for any other model.
- Upgrading on Bun 1.4.4 no longer risks memory and note writes failing if an upgrade stops partway through the database migrations.