fix: verify subprocess stdin hang fix (v2.1.79) resolves Hikari Desktop session start #227

Closed
opened 2026-03-20 08:26:04 -07:00 by hikari · 0 comments
Owner

Background

CLI v2.1.79 fixed a bug where claude -p (print mode) hung when spawned as a subprocess without explicit stdin — specifically when called from a subprocess without stdin wired up.

Why It Matters for Hikari Desktop

Hikari Desktop spawns Claude Code as a subprocess with --output-format stream-json --input-format stream-json. Although Hikari Desktop does pipe stdin explicitly (Stdio::piped()), the underlying condition that triggered the hang (Claude Code blocking on stdin availability before emitting system:init) may have affected our watchdog-based startup flow too.

The existing watchdog in wsl_bridge.rs was added to guard against exactly this kind of silent hang. With the CLI fix in place, we should:

  1. Validate that session startup is now reliably fast on CLI ≥ 2.1.79
  2. Consider whether the watchdog timeout can be reduced now that the underlying hang is fixed
  3. Update the supported CLI version constant in CliVersion.svelte to reflect v2.1.79 or later

Acceptance Criteria

  • Manual smoke-test: session starts without triggering the watchdog on CLI ≥ 2.1.79
  • If startup is reliably faster, reduce the watchdog timeout to a tighter value
  • Supported CLI version bumped to at least 2.1.79

This issue was created with help from Hikari~ 🌸

## Background CLI v2.1.79 fixed a bug where `claude -p` (print mode) hung when spawned as a subprocess without explicit stdin — specifically when called from a subprocess without stdin wired up. ## Why It Matters for Hikari Desktop Hikari Desktop spawns Claude Code as a subprocess with `--output-format stream-json --input-format stream-json`. Although Hikari Desktop does pipe stdin explicitly (`Stdio::piped()`), the underlying condition that triggered the hang (Claude Code blocking on stdin availability before emitting `system:init`) may have affected our watchdog-based startup flow too. The existing watchdog in `wsl_bridge.rs` was added to guard against exactly this kind of silent hang. With the CLI fix in place, we should: 1. Validate that session startup is now reliably fast on CLI ≥ 2.1.79 2. Consider whether the watchdog timeout can be reduced now that the underlying hang is fixed 3. Update the supported CLI version constant in `CliVersion.svelte` to reflect v2.1.79 or later ## Acceptance Criteria - [ ] Manual smoke-test: session starts without triggering the watchdog on CLI ≥ 2.1.79 - [ ] If startup is reliably faster, reduce the watchdog timeout to a tighter value - [ ] Supported CLI version bumped to at least 2.1.79 ✨ This issue was created with help from Hikari~ 🌸
naomi closed this issue 2026-03-23 14:28:09 -07:00
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: nhcarrigan/hikari-desktop#227