{"record":{"id":"b29a3ae4487647d8","repo":"ZhuLinsen/daily_stock_analysis","slug":"invalid-json-b29a3a","errorCode":"invalid_json","errorMessage":"invalid_json at smoke_validation for backend generation_backend","messagePattern":"invalid_json at smoke_validation for backend generation_backend","errorType":"error_code","errorClass":"GenerationError","httpStatus":null,"severity":"error","filePath":"src/services/generation_backend_status_service.py","lineNumber":409,"sourceCode":"            {\n                \"max_tokens\": 128,\n                \"temperature\": 0,\n                \"timeout\": request.timeout_seconds,\n            },\n            response_validator=self._json_smoke_validator if request.mode == \"json\" else self._text_smoke_validator,\n            audit_context={\"call_type\": \"generation_backend_smoke\", \"backend\": request.backend_id},\n        )\n        if request.mode == \"json\":\n            self._json_smoke_validator(result.text)\n        else:\n            self._text_smoke_validator(result.text)\n\n    @classmethod\n    def _json_smoke_validator(cls, text: str) -> None:\n        try:\n            payload = json.loads((text or \"\").strip())\n        except Exception as exc:\n            raise GenerationError(\n                error_code=GenerationErrorCode.INVALID_JSON,\n                stage=\"smoke_validation\",\n                retryable=False,\n                fallbackable=False,\n                backend=\"generation_backend\",\n                details={\"reason\": \"invalid_json\"},\n            ) from exc\n        if payload != {\"ok\": True, \"backend_smoke\": \"passed\"}:\n            raise GenerationError(\n                error_code=GenerationErrorCode.SCHEMA_VALIDATION_FAILED,\n                stage=\"smoke_validation\",\n                retryable=False,\n                fallbackable=False,\n                backend=\"generation_backend\",\n                details={\"reason\": \"unexpected_smoke_payload\"},\n            )\n\n    @classmethod","sourceCodeStart":391,"sourceCodeEnd":427,"githubUrl":"https://github.com/ZhuLinsen/daily_stock_analysis/blob/5159bd72e8373d215492dff122acc9d389e219c9/src/services/generation_backend_status_service.py#L391-L427","documentation":"Error \"invalid_json at smoke_validation for backend generation_backend\" thrown in ZhuLinsen/daily_stock_analysis.","triggerScenarios":"Thrown at src/services/generation_backend_status_service.py:409 when the library encounters an invalid state.","commonSituations":"Reported when the generation backend smoke validation returns a body that is not valid JSON; occurs when the configured endpoint is not an OpenAI-compatible server or is intercepted by a proxy.","solutions":["Check the generation backend's smoke-test response: it did not return valid JSON.","Verify the backend endpoint, model name, and API key so the smoke request succeeds.","Inspect backend logs for errors returned as plain text or HTML instead of JSON."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5159bd72e8373d215492dff122acc9d389e219c9","analyzedAt":"2026-08-15T01:59:36.292Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}