v0.31.1
v0.31.1
Patch release: the TUI sidebar no longer breaks when OpenCode changes its embedded OpenTUI version.
Fixes
TUI sidebar survives OpenCode's OpenTUI version changes
The plugin previously shipped its own copies of @opentui/core, @opentui/solid, and solid-js, pinned to match a specific OpenCode release. Every time OpenCode upgraded or reverted its embedded OpenTUI, that pin went stale and the sidebar could fail to load until we shipped a matching release.
OpenCode's TUI loader actually supplies its own OpenTUI and Solid instances to raw-TSX plugins, so the local copies were unnecessary. They are no longer installed as runtime dependencies; the host's versions are used directly. The sidebar now works across OpenCode's OpenTUI upgrades (0.3.x through 0.4.x) without a plugin update, and installs get slightly smaller.
Smart-note background checks no longer spill errors to stderr
A smart-note network check that hit the response size limit (or timed out) printed an uncaught SmartNoteNetworkError stack trace to OpenCode's stderr on every occurrence. The error is now handled on the response stream and reported through the normal check-failure path.
Smart-note state writes no longer fail with "database is locked"
Smart-note scheduling updates used a transaction shape that could not wait for a concurrent writer, producing spurious database is locked errors when several OpenCode instances shared the database. They now take the write lock up front and wait like every other writer.