{"record":{"id":"f870c30eeff0c716","repo":"HKUDS/nanobot","slug":"invalid-thinking-style-v-r-must-be-one-of","errorCode":null,"errorMessage":"Invalid thinking_style {v!r}. Must be one of: {', '.join(repr(s) for s in cls._VALID_THINKING_STYLES)} (or empty/omitted).","messagePattern":"Invalid thinking_style (.+?)\\. Must be one of: (.+?) \\(or empty/omitted\\)\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"nanobot/config/schema.py","lineNumber":233,"sourceCode":"    proxy: str | None = None  # Explicit HTTP proxy; image downloads trust its DNS and egress\n    thinking_style: str | None = None  # Thinking/reasoning style for custom providers\n\n    # Valid values mirror the keys of _THINKING_STYLE_MAP in\n    # nanobot/providers/openai_compat_provider.py. Kept duplicated here to\n    # avoid an import cycle (schema.py must not import from providers/).\n    _VALID_THINKING_STYLES: ClassVar[tuple[str, ...]] = (\n        \"thinking_type\",\n        \"enable_thinking\",\n        \"reasoning_split\",\n    )\n\n    @field_validator(\"thinking_style\")\n    @classmethod\n    def _validate_thinking_style(cls, v: str | None) -> str | None:\n        if not v:  # None or \"\" -> no injection, valid (backwards compatible)\n            return v\n        if v not in cls._VALID_THINKING_STYLES:\n            raise ValueError(\n                f\"Invalid thinking_style {v!r}. \"\n                f\"Must be one of: {', '.join(repr(s) for s in cls._VALID_THINKING_STYLES)} \"\n                f\"(or empty/omitted).\"\n            )\n        return v\n\n\nclass BedrockProviderConfig(ProviderConfig):\n    \"\"\"AWS Bedrock Runtime provider configuration.\"\"\"\n\n    region: str | None = None  # AWS region, falls back to AWS_REGION/AWS_DEFAULT_REGION/profile\n    profile: str | None = None  # Optional AWS shared config profile\n\n\nclass ProvidersConfig(Base):\n    \"\"\"Configuration for LLM providers.\n\n    Supports custom providers via extra fields — any additional field","sourceCodeStart":215,"sourceCodeEnd":251,"githubUrl":"https://github.com/HKUDS/nanobot/blob/42f37dc4c0e409eac7818a82d165c5f2757bc075/nanobot/config/schema.py#L215-L251","documentation":"Error \"Invalid thinking_style {v!r}. Must be one of: {', '.join(repr(s) for s in cls._VALID_THINKING_STYLES)} (or empty/omitted).\" thrown in HKUDS/nanobot.","triggerScenarios":"Thrown at nanobot/config/schema.py:233 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"42f37dc4c0e409eac7818a82d165c5f2757bc075","analyzedAt":"2026-08-26T00:18:52.276Z","schemaVersion":2},"datasetVersion":"2026-08-26T04:18:47.238Z"}