hermes-agent/ui-opentui/src
alt-glitch 25686feebf opentui(v6): bump @opentui 0.4.0 -> 0.4.1 + openConsoleOnError:false (W5)
Bump the three @opentui pins (core/keymap/solid) 0.4.0 -> 0.4.1 + lockfile.
The headline upstream change is native-yoga (#1126); per the locked spec
decision D11 this is NOT a memory-floor lever at typical sizes, and a fresh
bench on this branch confirms it — OpenTUI capped VmHWM is within run-to-run
noise across mem50/100/300 (0.4.0: 193/200/220 vs 0.4.1: 192/218/217 MB).
The value is tail-session layout wins + upstream alignment, not the floor.

D14 (ffiSafe re-verify): the FFI signatures ffiSafe.ts clamps (OptimizedBuffer
fillRect/drawText/setCell/setCellWithAlphaBlending/drawChar + TextBufferView
setViewport) are byte-identical across 0.4.0->0.4.1 (still u32, still crash on
negatives under node:ffi), so the shim stays as-is and remains load-bearing.
Verified live: scrolled a 300-msg transcript with syntax-highlighted code +
tool cards past the viewport top (the negative-y fillRect trigger) on 0.4.1 —
no ERR_INVALID_ARG_VALUE loop, clean render.

Also pick up openConsoleOnError:false (public createCliRenderer option): stops
core's uncaught-error handler from calling the ALLOCATING console.show(), which
exit-7-masks the original error under native-handle exhaustion (the bench
mem3000 postmortem). guardRendererErrorHandlers stays as belt-and-suspenders.

Gate: npm run check OK (768 tests). Determinism gate green both engines.
2026-06-14 13:53:11 +05:30
..
boundary opentui(v6): bump @opentui 0.4.0 -> 0.4.1 + openConsoleOnError:false (W5) 2026-06-14 13:53:11 +05:30
entry opentui(v6): clarify markdown + cold slash-highlight + @-mention race fix 2026-06-14 12:56:21 +05:30
logic opentui(v6): credits/usage notice chrome banner (Ink parity) 2026-06-14 12:56:21 +05:30
test opentui(v6): credits/usage notice chrome banner (Ink parity) 2026-06-14 12:56:21 +05:30
view opentui(v6): credits/usage notice chrome banner (Ink parity) 2026-06-14 12:56:21 +05:30