1d33a4fee6
Backend half of the per-task effort control, on today's layout: POST /api/model/set distinguishes omitted (leave the task's override alone) from explicit null (clear → inherit) via model_fields_set, canonicalises a level through parse_reasoning_effort (400 on an unknown one), and "Reset all to main" also drops every override. GET /api/model/auxiliary returns reasoning_effort per task and the row summary shows it. The inherit row reads "inherit · main model effort" (own i18n key in all six locales) rather than reusing the provider's "auto · use main model" copy — the two mean different things and the reused string read as "use the main model" for the effort. Runtime already consumes auxiliary.<task>.reasoning_effort (agent/auxiliary_client.py) and hermes model writes the same key (#110346), so Desktop and CLI now edit one value. Closes #89259. Salvages #90649 by @higgs1729.