Skip to content

[Bug]: Desktop lobster loses failed run outcome in session panel #103489

Description

@steipete

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

The desktop Control UI session-panel lobster always receives the default successful run outcome, so failed and aborted runs can produce the wrong terminal reaction.

Steps to reproduce

  1. Render openclaw-app-sidebar from current main with the desktop panel variant and a completed session whose status is failed or killed.
  2. Inspect the rendered openclaw-lobster-pet runOutcome property.
  3. Repeat with the narrow drawer variant.

Expected behavior

Both sidebar variants pass the latest terminal session outcome to the lobster: failed/timeout becomes error, killed becomes aborted, and successful runs remain ok. This was the shared-render behavior immediately before PR #103426.

Actual behavior

The drawer passes the resolved outcome, but the new desktop panel omits the property. The pet therefore keeps its default ok outcome on desktop and can cheer after a failed or aborted run.

OpenClaw version

Current main at 9e74dabad24c; introduced by 4a72a6cb2f9b / PR #103426.

Operating system

Browser-independent Control UI behavior; reproduced from the current source contract on macOS and targeted for Chromium proof.

Install method

Source checkout

Model

Not applicable

Provider / routing chain

Not applicable

Logs

Pre-#103426 shared render: panel/drawer both bind resolveLobsterRunOutcome(...).
Current main: drawer binds runOutcome; desktop panel omits it and retains the component default "ok".

Screenshots, recordings, and evidence

  • Regression commit: 4a72a6cb2f9b (feat(ui): move app chrome into a topbar and dock the session workspace rail)
  • Affected owner: ui/src/components/app-sidebar.ts
  • Outcome resolver and reaction contract: ui/src/components/lobster-pet.ts
  • No matching existing issue or PR was found in the maintainer archive search.

Impact and severity

  • Affected: desktop Control UI users with the lobster pet enabled.
  • Severity: low-to-moderate user-visible status error; no data loss.
  • Frequency: deterministic after every failed, timed-out, or killed run whose terminal reaction is shown.
  • Consequence: the UI can celebrate a failed or aborted run, contradicting the actual run state.

Additional information

The focused fix is to keep the new desktop panel and existing drawer bindings symmetric. This is separate from the in-flight vigil-presence fix, which changes the pet's internal reaction lifetime rather than the sidebar's input wiring.

Metadata

Metadata

Assignees

Labels

maintainerMaintainer-authored PR

Type

No type

Fields

Priority

None yet

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions