macOS: Pet still falls back to the busy animation at drag start and release

Open 💬 0 comments Opened Aug 20, 2026 by Carleo10032

What version of the Codex App are you using (From “About Codex” dialog)?

Codex Desktop 26.814.41407 (build 6720)

What subscription do you have?

ChatGPT Plus

What platform is your computer?

macOS 27.0 (build 26A5416b), Apple Silicon (arm64)

What issue are you seeing?

When the floating Pet is displaying its running/busy animation because a task is active, dragging the Pet does not transition cleanly into or out of the directional movement animations.

At both boundaries of the interaction, the Pet briefly shows the busy animation:

  • immediately after the drag starts, before running-left or running-right takes over;
  • at pointer release, before the directional drag state has fully finished and the Pet returns to the task's running state.

The directional movement animation itself plays after the movement direction has been detected, but the boundary fallbacks create a visible animation flicker or restart.

What steps can reproduce the bug?

  1. Show a floating Pet in Codex Desktop on macOS.
  2. Start a task and wait until the Pet displays its running/busy animation.
  3. Press the Pet and begin dragging it horizontally.
  4. Observe a brief busy-animation frame before the directional movement animation appears.
  5. Release the pointer while the directional movement animation is active.
  6. Observe another brief busy-animation frame during the release transition.

The problem is visible in animation timing and is easier to observe in motion than in a still screenshot.

What is the expected behavior?

Once an actual drag begins, the Pet should transition directly to running-left or running-right and preserve the last directional movement state through the release handoff.

It should return to the task's busy animation only after the drag has fully ended.

A smooth sequence would be:

busy -> directional movement -> drag release completes -> busy

There should be no intermediate busy fallback or animation restart while drag-start or drag-end events are still being processed.

Actual behavior

The effective sequence is closer to:

busy -> busy fallback -> directional movement -> busy fallback -> drag state finishes

Additional information

The directional movement state is selected only after horizontal movement crosses a small threshold. The drag interaction should be tracked separately from the detected direction so that the transient drag state is not cleared while direction is still being established.

Likewise, the last directional state should be preserved through pointer release and cleared only after the drag-end transition has completed.

This problem is still reproducible in Codex Desktop 26.814.41407 and supersedes the older report #36331 with current Codex and macOS version information.

View original on GitHub ↗