Skip to content

agent: put the action bounds in the system prompt and give a stall/at-bound flag in move results #408

Description

@jeqcho

Today the only place the model learns the Cartesian bounds is the move_to tool description ("Per-dimension bounds: left_x: [0.15, 0.48], ..."), and a clamped or unreachable target comes back as the same "executing move_to over N steps" as a normal move. Agents then infer contact or reach limits from stalls and get it wrong (2026-08-26, rig-2: 18 calls attributing a left_y bounds wall to arm reach; rig-3: a correct dead-band computation, but only after 17 calls).

Proposal:

  1. Repeat the bounds (and which axes are pinned) in the system prompt's embodiment section, next to the frame conventions, so they are part of the model's initial world model rather than a tool footnote.
  2. Have the move result carry a short status: clipped: left_y 0.30 -> 0.25, stalled after 12 steps (reached x=0.148), or ok, computed from the approver record and the readback vs. target, so the model does not have to diff eef_state itself.
  3. Make the give_up hint say that operators can change limits between trials (the rig-3 operator offered exactly that mid-run and the model did not know it was an option).

Related: robocurve/inspect-robots-yam#135 and the yam issues on default bounds and bounds_clamped reporting filed today.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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