{"record":{"id":"dde878563acb00db","repo":"bevyengine/bevy","slug":"diagnosticsoverlay-has-been-tempered-with-node-mu","errorCode":null,"errorMessage":"DiagnosticsOverlay has been tempered with. Node must have `top` using `Val::Px`.","messagePattern":"DiagnosticsOverlay has been tempered with\\. Node must have `top` using `Val::Px`\\.","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/bevy_dev_tools/src/diagnostics_overlay.rs","lineNumber":443,"sourceCode":"            )\n        ],\n    ));\n}\n\nfn drag_by_header(\n    mut event: On<PointerDrag>,\n    mut diagnostics_overlays: Query<&mut Node, With<DiagnosticsOverlay>>,\n    diagnostics_overlay_headers: Query<&ChildOf, With<DiagnosticsOverlayHeader>>,\n) {\n    let entity = event.entity;\n    if let Ok(child_of) = diagnostics_overlay_headers.get(entity) {\n        event.propagate(false);\n        let Ok(mut node) = diagnostics_overlays.get_mut(child_of.get()) else {\n            panic!(\"DiagnosticsOverlayHeader has been tempered with. Parent was not a DiagnosticsOverlay.\");\n        };\n        let delta = event.delta;\n        let Val::Px(top) = &mut node.top else {\n            panic!(\n                \"DiagnosticsOverlay has been tempered with. Node must have `top` using `Val::Px`.\"\n            );\n        };\n        *top += delta.y;\n        let Val::Px(left) = &mut node.left else {\n            panic!(\n                \"DiagnosticsOverlay has been tempered with. Node must have `left` using `Val::Px`.\"\n            );\n        };\n        *left += delta.x;\n    }\n}\n\nfn collapse_on_click_to_header(\n    mut event: On<PointerClick>,\n    mut diagnostics_overlays: Query<&Children, With<DiagnosticsOverlay>>,\n    mut diagnostics_overlay_contents: Query<&mut Node, With<DiagnosticsOverlayContents>>,\n    diagnostics_overlay_header: Query<&ChildOf, With<DiagnosticsOverlayHeader>>,","sourceCodeStart":425,"sourceCodeEnd":461,"githubUrl":"https://github.com/bevyengine/bevy/blob/396ca727080776bd313bb892423b7d94e03b81b4/crates/bevy_dev_tools/src/diagnostics_overlay.rs#L425-L461","documentation":"Panic in drag_by_header: the dragged overlay's Node.top style is not Val::Px, so the header-drag system cannot apply the pixel delta to reposition the overlay. Fires only if the overlay node's style was changed after the plugin created it.","triggerScenarios":"Thrown at crates/bevy_dev_tools/src/diagnostics_overlay.rs:443 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Keep the overlay Node positioned with Val::Px top/left","Restore default styling or rebuild the overlay via the plugin"],"exampleFix":null,"handlingStrategy":"type-guard","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"396ca727080776bd313bb892423b7d94e03b81b4","analyzedAt":"2026-08-20T16:12:39.808Z","contentChangedAt":"2026-08-20T16:12:39.808Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}