Skip to content

Sessions frequently lock up and get stuck in_progress until timeout #142

@Cform

Description

@Cform

What’s happening

Happier Dev has been locking up regularly for me. A session will work for a while, then the UI/runtime appears to get stuck. At that point the active operation never resolves, and the session either times out after 120s or I have to abort/kill it.

Environment

  • Happier CLI: 0.1.0-preview.1771774953.99369
  • npm package version: 0.1.0
  • Node: v25.8.2
  • macOS: 26.3.1

Expected behavior

Tool calls should either complete normally or fail cleanly without leaving the whole session effectively hung.

Actual behavior

A session works briefly, then some tool call gets stuck in in_progress, the session becomes unresponsive, and eventually it times out or has to be aborted/killed.

Relevant log evidence

1. Repeated in_progress / timeout-bump loop

Source: ~/.happier/logs/2026-03-25-20-45-35-pid-35827.log

[08:12:54.696] [AcpBackend] Received tool_call: toolCallId=call_wT5FYBOMxITAndhMfojDyQFY, status=pending, kind=execute
[08:12:54.697] [AcpBackend] Tool call call_wT5FYBOMxITAndhMfojDyQFY is pending permission; skipping execution timeout setup
[08:12:54.853] [AcpBackend] Permission request: tool=bash, toolCallId=call_wT5FYBOMxITAndhMfojDyQFY, inputKeys=command
...
[08:13:02.003] [AcpBackend] Set timeout for call_wT5FYBOMxITAndhMfojDyQFY: 120s (bumped)
[08:13:02.004] [AcpBackend] Received session update: tool_call_update {
  "toolCallId": "call_wT5FYBOMxITAndhMfojDyQFY",
  "status": "in_progress",
  "kind": "execute",
  "hasContent": true,
  "hasLocations": true
}
[08:13:02.004] [AcpBackend] Set timeout for call_wT5FYBOMxITAndhMfojDyQFY: 120s (bumped)
[08:13:02.005] [AcpBackend] Received session update: tool_call_update {
  "toolCallId": "call_wT5FYBOMxITAndhMfojDyQFY",
  "status": "in_progress",
  "kind": "execute",
  "hasContent": true,
  "hasLocations": true
}
[08:13:02.005] [AcpBackend] Set timeout for call_wT5FYBOMxITAndhMfojDyQFY: 120s (bumped)

2. Permission request effectively hangs, then times out

Source: ~/.happier/logs/2026-03-16-15-55-06-pid-40469.log

[15:57:52.698] [OpenCode] Permission request sent for tool: bash (call_function_txjiyum05x38_1)
[15:57:52.984] Agent state updated {"requests":{"call_function_txjiyum05x38_1":{"tool":"bash","arguments":{"command":"once"},"createdAt":1773694672698}}}
[15:59:52.688] [AcpBackend] Tool call TIMEOUT (armed on in_progress) (from tool_call_update): call_function_txjiyum05x38_1 (execute) after 120s - Duration: 120.03s, emitting terminal error and removing from active set
...
[16:01:46.975] [OpenCode] Permission approved for bash
[16:01:46.978] [AcpBackend] Permission response event (UI only): call_function_txjiyum05x38_1 = true

3. Stuck session followed by manual abort/kill

Source: ~/.happier/logs/2026-03-25-19-50-31-pid-32825.log

[20:14:47.940] [AcpBackend] Tool call TIMEOUT (armed on in_progress) (from tool_call_update): call_iCWCKnQhqM9EWg37729RVPcY (other) after 120s - Duration: 120.06s, emitting terminal error and removing from active set
[20:14:47.946] [AcpBackend] No more active tool calls after timeout, emitting idle status
...
[20:44:41.702] [OpenCode] Abort requested
...
[20:45:22.730] Kill session request received
[20:45:22.730] [OpenCode] Kill session requested
[20:45:22.731] [OpenCode] Abort requested

Additional note

I also saw a lot of repeated socket log lines like:

[SOCKET] [UPDATE] Decrypted new-message is not a UserMessage payload; forwarding generic event

Not sure if that is causal, but it seems correlated with the stuck periods.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions