SIGN IN SIGN UP

fix: Propagate last_run status/origin filters to chained storage clients (#954)

The `status` and `origin` filters passed to `ActorClient.last_run(...)`
and `TaskClient.last_run(...)` were silently dropped by the chained
storage clients. For example,
`actor.last_run(status='SUCCEEDED').dataset().list_items()` queried the
most recent run's dataset regardless of status. This is a regression vs
1.x, where `_sub_resource_init_options` forwarded the parent's params to
every child client; the typed-client refactor (#604) lost that.

The fix passes the run client's default params to its four child-client
factories (`dataset()`, `key_value_store()`, `request_queue()`, `log()`)
in both `RunClient` and `RunClientAsync`, so the filters ride along on
the `runs/last` storage endpoints again, matching 1.x and the JS client.

Adds a parametrized regression test covering all four chained clients,
sync and async. All 8 cases fail before the fix and pass after.
V
Vlada Dusek committed
fe24058bb29ed6e2f42ae754dce3f15e5f6628e6
Parent: 553d0e2
Committed by GitHub <noreply@github.com> on 7/17/2026, 9:29:59 AM