fix(code): update rubric grader model without restart (#5885)
Closes #4366 Rubric grading now resolves its model dynamically per request from thread state rather than remaining pinned to the startup graph configuration. ### How it works for users - **Follows `/model` by default**: Switching the agent model with `/model <model>` now immediately updates rubric grading to use that same model for subsequent turns. - **Dedicated grader override**: Setting a specific grader with `/rubric model <model>` (or `/goal model <model>`) applies to the thread immediately without restarting the local server or dropping context, and works seamlessly with external graph sessions. - **Clearing overrides**: `/rubric model clear` (or `/goal model clear`) returns grading to following the active main model. - **Inspection**: `/rubric show` and `/goal show` display the active model name directly instead of reporting a static startup label. Under the hood, selections are persisted via thread state (`_rubric_model_spec`), request-local context isolates concurrent runs, and resolution errors fail cleanly rather than falling back to stale cached graders. --------- Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
M
Mason Daugherty committed
428e760668d8fdfbb920966e2969c76040e30745
Parent: d8686f7
Committed by GitHub <noreply@github.com>
on 8/28/2026, 1:31:24 AM