Skip to content

bug(agent): repeatedly acknowledges required gateway restart but does not execute the restart action #1094

@atuida

Description

@atuida

Bug Description

In a live Telegram/gateway workflow, the agent can correctly diagnose that a code fix requires a Hermes/gateway restart, repeatedly state that a restart is needed, and even say it is "ready" for the restart — but then fail to actually execute the restart when the user clearly directs it to do so.

This creates a bad failure mode:

  • the agent appears operational and is already running terminal commands
  • the user gives explicit restart intent multiple times
  • the agent keeps narrating the need for restart instead of performing it
  • the conversation stalls in a fake-progress loop

Reproduction Pattern

  1. User asks the agent to fix a runtime/code issue.
  2. Agent patches code successfully and verifies with tests.
  3. Agent states that the running gateway must be restarted for the fix to take effect.
  4. User repeatedly indicates that the restart should happen / that now is the time.
  5. Agent continues discussing the restart instead of executing it.

Expected Behavior

Once the restart is clearly requested and no approval blocker remains, the agent should either:

  • execute the restart immediately, or
  • explicitly explain the exact blocker preventing execution.

It should not keep acknowledging the need for restart without acting.

Actual Behavior

The agent repeatedly confirms the restart requirement and implies readiness, but does not perform the restart action.

Why This Matters

This feels like a severe follow-through bug rather than a reasoning bug. It breaks trust because the agent appears capable, understands the needed action, and still fails to do the obvious next step.

Suggested Direction

  • Add stronger action-follow-through logic when the user gives explicit operational intent.
  • Detect loops where the assistant has acknowledged the same pending action multiple times without executing it.
  • Surface a hard internal check: if the agent says a restart is needed and the user agrees, the next step should be execute-or-block, not more narration.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    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