{"record":{"id":"376ac9b97fdca5de","repo":"HKUDS/DeepTutor","slug":"manifest-filename-has-no-stored-original-to-rend","errorCode":null,"errorMessage":"{manifest.filename} has no stored original to render.","messagePattern":"(.+?) has no stored original to render\\.","errorType":"http","errorClass":"HTTPException","httpStatus":404,"severity":"error","filePath":"deeptutor/api/routers/reading.py","lineNumber":261,"sourceCode":"            locator=locator,\n            unit=manifest.unit,\n            text=store.unit_text(material_id, locator),\n        )\n    except Exception as exc:\n        raise _http_error(exc) from exc\n\n\n@router.get(\"/materials/{material_id}/raw\")\nasync def get_raw(material_id: str) -> FileResponse:\n    \"\"\"The original bytes, for the faithful viewer. Serves Range requests.\"\"\"\n    store = _store()\n    try:\n        manifest = store.manifest(material_id)\n        path = store.raw_path(material_id)\n    except Exception as exc:\n        raise _http_error(exc) from exc\n    if path is None or not path.is_file():\n        raise HTTPException(\n            status_code=404,\n            detail=f\"{manifest.filename} has no stored original to render.\",\n        )\n    return FileResponse(\n        path,\n        media_type=manifest.mime or \"application/octet-stream\",\n        filename=manifest.filename,\n        content_disposition_type=\"inline\",\n    )\n\n\n@router.get(\"/materials/{material_id}/annotations\", response_model=list[AnnotationInfo])\nasync def list_annotations(material_id: str) -> list[AnnotationInfo]:\n    store = _store()\n    try:\n        return [_annotation_info(row) for row in store.annotations(material_id)]\n    except Exception as exc:\n        raise _http_error(exc) from exc","sourceCodeStart":243,"sourceCodeEnd":279,"githubUrl":"https://github.com/HKUDS/DeepTutor/blob/3e82f130422a813cdd73c10b21a44e9325f5821a/deeptutor/api/routers/reading.py#L243-L279","documentation":"Error \"{manifest.filename} has no stored original to render.\" thrown in HKUDS/DeepTutor.","triggerScenarios":"Thrown at deeptutor/api/routers/reading.py:261 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":"3e82f130422a813cdd73c10b21a44e9325f5821a","analyzedAt":"2026-08-27T06:57:25.364Z","schemaVersion":2},"datasetVersion":"2026-08-27T08:17:20.692Z"}