fix(ai): normalize OpenAI stream edge cases and add inline think parsing control by wsp1911 · Pull Request #245 · GCWing/BitFun
…ing control - filter redundant trailing OpenAI tool-call chunks that repeat an existing tool id without new data - parse OpenAI-compatible `<think>...</think>` text chunks into streaming reasoning content at the handler layer - add a model-level advanced setting to explicitly enable inline think parsing, defaulting to disabled - wire the new setting through backend config, AI client, frontend model configuration, and onboarding defaults - hide the preserved thinking toggle from the advanced settings UI while keeping existing config compatibility - add tests covering inline think parsing, disabled passthrough behavior, and OpenAI stream edge cases