Skip to content

v0.2.47

Choose a tag to compare

@github-actions github-actions released this 05 Aug 09:40
· 119 commits to main since this release

v0.2.47 — Critical fix: window focus flicker storm on new terminal form

Release date: 2026-08-05
Previous version: v0.2.46

TL;DR

Fixes a critical regression introduced in v0.2.46: opening the new terminal
form could throw the desktop app into a runaway window blur→focus loop — the
window flickered between active/inactive endlessly and could freeze the
desktop. If you are on v0.2.46, update immediately.

Highlights

Fixed: self-sustaining focus flicker loop (Windows)

v0.2.46 replaced the IME recovery with an OS-level window blur→focus cycle,
but released its re-entry guard on a fixed two-frame delay. That delay could
beat the actual OS focus round-trip: the focus event Chromium re-fires on the
focused input when the window reactivates then landed after the guard was
released, while page focus still read dead — which is exactly the trigger
condition of the app-level focus rescue. The rescue started another window
cycle, each cycle re-armed the next, and the window blurred/refocused in an
infinite loop.

The guard now holds until window focus has actually returned to the renderer
(with a 1-second watchdog fallback), so everything the cycle emits is
swallowed while the guard is still in flight. A regression test locks this
in: it fails if the guard is ever released before focus returns.

Install / Update

npm i -g clitrigger@0.2.47

Desktop app — pick the right asset:

  • Windows (recommended): CLITrigger-Setup-0.2.47.exe — installer with Start Menu shortcut, uninstaller, and auto-update.
  • Windows (portable): CLITrigger-0.2.47.exe — run directly, no install; no shortcuts and no auto-update (grab new versions manually).
  • macOS: .dmg / Linux: .AppImage

Full commit list

  • 3a0aec3 fix(ime): 핸드오프 가드를 창 포커스 복귀까지 유지 — 창 blur→focus 폭주 루프 해소

Related docs

Full Changelog: v0.2.46...v0.2.47