{"record":{"id":"d10812fadd63c0cf","repo":"tracel-ai/burn","slug":"not-implemented-d10812","errorCode":null,"errorMessage":"not implemented","messagePattern":"not implemented","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/burn-router/src/channel/base.rs","lineNumber":58,"sourceCode":"\n    /// Change the tensor to a different client backend.\n    fn change_client_backend(\n        tensor: RouterTensor<Self::Client>,\n        device: &Self::Device, // target device\n    ) -> RouterTensor<Self::Client> {\n        // Get tensor handle from current client\n        let original_client = tensor.client.clone();\n        let desc = tensor.into_ir();\n        let mut handle = Self::get_tensor_handle(&desc, &original_client);\n\n        if desc.dtype.is_float() {\n            handle = Self::Bridge::change_backend_float(handle, desc.shape.clone(), device);\n        } else if desc.dtype.is_int() {\n            handle = Self::Bridge::change_backend_int(handle, desc.shape.clone(), device);\n        } else if desc.dtype.is_bool() {\n            handle = Self::Bridge::change_backend_bool(handle, desc.shape.clone(), device);\n        } else {\n            unimplemented!()\n        }\n\n        // Register tensor handle on target client\n        let target_client = get_client::<Self>(device);\n        Self::register_tensor(&target_client, handle, desc.shape, desc.dtype)\n    }\n}\n","sourceCodeStart":40,"sourceCodeEnd":66,"githubUrl":"https://github.com/tracel-ai/burn/blob/d16f7ba2ed0d41408189384044cc886fb4c8f957/crates/burn-router/src/channel/base.rs#L40-L66","documentation":"Unimplemented guard in `change_client_backend`: cross-backend tensor transfer for a dtype outside the handled float/int branches (e.g., bool or quantized tensors) reaches the fallback `unimplemented!()`, so moving a tensor between router client backends panics for that dtype.","triggerScenarios":"Thrown at crates/burn-router/src/channel/base.rs:58 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Only change client backends for float or int tensors","Move the tensor via CPU `TensorData` (to_data / from_data) instead","Extend the bridge to handle bool/quantized dtypes if needed"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"d16f7ba2ed0d41408189384044cc886fb4c8f957","analyzedAt":"2026-09-05T13:19:14.260Z","contentChangedAt":"2026-09-05T13:19:14.260Z","schemaVersion":2},"datasetVersion":"2026-09-12T17:17:11.597Z"}