Skip to content

[Bug]: TUI /new stopped emitting hook-visible new-session behavior after 46008178d #49918

@LonExplorer-coder

Description

@LonExplorer-coder

Bug type

Regression (worked before, now fails)

Summary

After upgrading to 2026.3.7+, TUI /new no longer emits hook-visible new-session behavior because it switched from
resetSession(...) to local setSession(uniqueKey).

Steps to reproduce

  1. Enable a hook that depends on TUI new-session observability (for example command:new, session-memory, or
    command-logger).
  2. Restart OpenClaw and confirm the hook is registered.
  3. Start openclaw tui.
  4. Run /new.
  5. Observe that a new tui- session is created, but no hook-visible new-session event is emitted.

Expected behavior

TUI /new should still emit a hook-visible new-session event, even if it keeps the isolated per-client tui- session
behavior.

Actual behavior

TUI /new only switches to a new local session key via setSession(uniqueKey), so hook-based automation does not run.

OpenClaw version

2026.3.13

Operating system

macOS 15.3+ (Darwin 25.3.0 arm64)

Install method

npm global

Model

openai-codex/gpt-5.4

Provider / routing chain

openclaw -> configured default provider route

Config file / key location

~/.openclaw/openclaw.json

Additional provider/model setup details

This bug does not appear to depend on provider routing. It reproduces in TUI command handling before model/provider
choice matters.

Logs, screenshots, and evidence

- Exact regression commit:                                                                                                
 - 46008178d1bab4a9cbb8ea270468b0f370cec370                                                                                
 - fix: isolate TUI /new sessions per client                                                                               
 - Version boundary verified by unpacking published npm releases:                                                          
 - 2026.3.2 → TUI /new still uses resetSession(...)                                                                        
 - 2026.3.7 → TUI /new uses setSession(uniqueKey)                                                                          
 - Current TUI code path:                                                                                                  
 - /new → const uniqueKey = \tui-${randomUUID()}`; await setSession(uniqueKey)`                                            
 - /reset → await client.resetSession(state.curren tSessionKey, name)

Impact and severity

Affected: TUI users relying on hook-based new-session automation
Severity: Medium to High
Frequency: 100% repro
Consequence: command:new hooks, session-memory, command-logger, and custom workspace automation no longer run from TUI
/new

Additional information

This is a regression caused by commit 4600817.

Last known good: 2026.3.2
First known bad: 2026.3.7

The isolation change makes sense, but it removed the gateway-visible path that hooks relied on. A fix could keep isolated
tui- sessions while still emitting a standard internal event for TUI /new.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingregressionBehavior that previously worked and now fails

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions