{"record":{"id":"6c5c03ea3df5d8ff","repo":"ZhuLinsen/daily_stock_analysis","slug":"failed-to-rebuild-analysisresult-str-e","errorCode":null,"errorMessage":"Failed to rebuild AnalysisResult: {str(e)}","messagePattern":"Failed to rebuild AnalysisResult: (.+?)","errorType":"exception","errorClass":"MarkdownReportGenerationError","httpStatus":500,"severity":"error","filePath":"src/services/history_service.py","lineNumber":830,"sourceCode":"                f\"raw_result is empty or invalid for record {record_id}\",\n                record_id=record_id\n            )\n\n        if getattr(record, \"report_type\", None) == \"market_review\":\n            markdown_report = self._extract_market_review_content(record, raw_result)\n            if markdown_report:\n                return markdown_report\n            logger.error(f\"get_markdown_report: market review report is empty for {record_id}\")\n            raise MarkdownReportGenerationError(\n                f\"market review report is empty for record {record_id}\",\n                record_id=record_id,\n            )\n\n        try:\n            result = self._rebuild_analysis_result(raw_result, record)\n        except Exception as e:\n            logger.error(f\"get_markdown_report: failed to rebuild AnalysisResult for {record_id}: {e}\", exc_info=True)\n            raise MarkdownReportGenerationError(\n                f\"Failed to rebuild AnalysisResult: {str(e)}\",\n                record_id=record_id\n            ) from e\n\n        if not result:\n            logger.error(f\"get_markdown_report: _rebuild_analysis_result returned None for {record_id}\")\n            raise MarkdownReportGenerationError(\n                \"Failed to rebuild AnalysisResult from raw_result\",\n                record_id=record_id\n            )\n\n        # Generate Markdown report\n        try:\n            return self._generate_single_stock_markdown(result, record)\n        except Exception as e:\n            logger.error(f\"get_markdown_report: failed to generate markdown for {record_id}: {e}\", exc_info=True)\n            raise MarkdownReportGenerationError(\n                f\"Failed to generate markdown report: {str(e)}\",","sourceCodeStart":812,"sourceCodeEnd":848,"githubUrl":"https://github.com/ZhuLinsen/daily_stock_analysis/blob/5159bd72e8373d215492dff122acc9d389e219c9/src/services/history_service.py#L812-L848","documentation":"Error \"Failed to rebuild AnalysisResult: {str(e)}\" thrown in ZhuLinsen/daily_stock_analysis.","triggerScenarios":"Thrown at src/services/history_service.py:830 when the library encounters an invalid state.","commonSituations":"Raised when rebuilding an AnalysisResult from stored raw_result throws; occurs when the stored schema no longer matches the current AnalysisResult model after upgrades.","solutions":["Inspect the stored raw_result for the record; it likely has missing or renamed fields.","Migrate or repair the stored payload to match the current AnalysisResult schema.","Re-run the analysis if the stored data cannot be repaired."],"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"}