Skip to content

[Bug]: SLIM request() default timeout (6s) is too short for LLM-backed farm agent responses #519

Description

@atripathy86

Bug Description

SLIM transport times out before farm agent LLM call completes

The agntcy-app-sdk SLIMTransport.request() has a hardcoded default timeout of 6 seconds. The factory's
_send_request closure calls transport.request() without passing an explicit timeout, so the default is always
used. The farm agent's LLM call regularly takes 10–15 seconds, causing the SLIM session to expire before the
response arrives.

When this happens, the SDK catches the SlimError.SessionError internally, sets the response to None, and then
crashes with AttributeError: 'NoneType' object has no attribute 'payload' when trying to decode it. This
AttributeError has no exception chain link back to the original SessionError, so _is_timeout_error in errors.py
returns False — the retry loop never fires and the request immediately fails as a 502.

Expected Behavior

SLIM transport should not time out before farm agent LLM call completes

Affected Version

v1.0.0

Steps to Reproduce

Make any valid coffee flavor query. Consistently fails when the LLM response takes longer
than 6 seconds.

Possible Fix: Wrap transport.request after creation to change the default timeout to 60s. Longer-term, the SDK should expose a configurable request timeout via create_transport kwargs.

Checklist

Metadata

Metadata

Assignees

No one assigned

    Type

    Fields

    No fields configured for Bug.

    Projects

    Status
    Pending review

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions