{"record":{"id":"c74d61b6d5103f59","repo":"bevyengine/bevy","slug":"tried-to-wait-for-an-asset-that-is-not-being-loade","errorCode":null,"errorMessage":"tried to wait for an asset that is not being loaded","messagePattern":"tried to wait for an asset that is not being loaded","errorType":"exception","errorClass":"WaitForAssetError","httpStatus":null,"severity":"error","filePath":"crates/bevy_asset/src/server/mod.rs","lineNumber":2367,"sourceCode":"}\n\nimpl core::fmt::Debug for AssetServer {\n    fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {\n        f.debug_struct(\"AssetServer\")\n            .field(\"info\", &self.data.infos.read())\n            .finish()\n    }\n}\n\n/// This is appended to asset sources when loading a [`LoadedUntypedAsset`]. This provides a unique\n/// source for a given [`AssetPath`].\nconst UNTYPED_SOURCE_SUFFIX: &str = \"--untyped\";\n\n/// An error when attempting to wait asynchronously for an [`Asset`] to load.\n#[derive(Error, Debug, Clone)]\npub enum WaitForAssetError {\n    /// The asset is not being loaded; waiting for it is meaningless.\n    #[error(\"tried to wait for an asset that is not being loaded\")]\n    NotLoaded,\n    /// The asset failed to load.\n    #[error(transparent)]\n    Failed(Arc<AssetLoadError>),\n    /// A dependency of the asset failed to load.\n    #[error(transparent)]\n    DependencyFailed(Arc<AssetLoadError>),\n}\n\n#[derive(Error, Debug)]\npub enum WriteDefaultMetaError {\n    #[error(transparent)]\n    MissingAssetLoader(#[from] MissingAssetLoaderForExtensionError),\n    #[error(transparent)]\n    MissingAssetSource(#[from] MissingAssetSourceError),\n    #[error(transparent)]\n    MissingAssetWriter(#[from] MissingAssetWriterError),\n    #[error(\"failed to write default asset meta file: {0}\")]","sourceCodeStart":2349,"sourceCodeEnd":2385,"githubUrl":"https://github.com/bevyengine/bevy/blob/227d3a6c661b3bdf3020d3e8290b5a6ffd0226f7/crates/bevy_asset/src/server/mod.rs#L2349-L2385","documentation":"WaitForAssetError::NotLoaded — the caller tried to await an asset handle that is not actually being loaded (e.g. the handle was never enqueued for loading or already finished and was reclaimed). Only wait on handles produced by load-style requests that are still pending.","triggerScenarios":"Thrown at crates/bevy_asset/src/server/mod.rs:2352 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Start loading the asset (e.g. via AssetServer::load) before waiting","Check that the handle came from an actual load request"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"227d3a6c661b3bdf3020d3e8290b5a6ffd0226f7","analyzedAt":"2026-08-20T16:12:39.808Z","contentChangedAt":"2026-08-20T16:12:39.808Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}