SIGN IN SIGN UP

chore: Collapse `CallModelRequest`, remove `Context` (#341)

Big progress towards refactor in https://github.com/NVIDIA-NeMo/Switchyard/issues/310

- Replace `CallModelRequest` with passing the fields directly to `call_model`. The extra type wasn't necessary.
- Remove `Context`, moving the only field it contained (`algorithm`) into `Driver`. This fixes a TODO in `llm_class.rs` where the Context was missing that value.
- Drop the `Arc` on `CallModel`'s `Decision`. Now that `Decision` is a struct, cloning it is cheap (two short strings).
- Adds `into_parts` to allow caller to handle the final call. This calls `respond` with an `Abandoned` error to let the algorithm know.

Most of the diff is `Arc<Decision>` -> `Decision` and removing param `ctx` from everywhere.

Assisted-by: Claude:Opus 5 medium

Signed-off-by: Graham King <grahamk@nvidia.com>
G
Graham King committed
fb3fc308ff130248bd5e534d657cebbcdda777d8
Parent: bced06f
Committed by GitHub <noreply@github.com> on 8/10/2026, 10:23:41 PM