How to reproduce:
- Open the attached "repro-mesh.zip" project
- In the menu bar, click BugHunt > Run Oracle
- Observe the Console window
Actual result: Both buffer-target assignments on the non-readable Mesh complete silently and the built-in check fails and the Console shows: ”ORACLE summary pack=idea90-mesh-buffer-target-nonreadable-throws verdict=fail reasons=non_readable_mesh_target_throws”
Expected result: Both assignments throw InvalidOperationException and the check passes and the Console shows: ”ORACLE summary pack=idea90-mesh-buffer-target-nonreadable-throws verdict=pass checks=1”
Reproducible with: 6000.6.0a2, 6000.6.0b8, 6000.7.0a5
Could not test with: 6000.0.81f1, 6000.3.22f1, 6000.5.8f1, 6000.6.0a1 (the exception did not exist in these versions)
Reproducible on: Ubuntu 24.04 LTS, Ubuntu 26.04 LTS (by user), Windows 10 Pro
Not reproducible on: No other environment tested
Notes:
- The 6000.6 release notes state these properties "now throw an InvalidOperationException when changing the buffer target on a mesh that lacks the data required to recreate its buffers", and the Mesh.vertexBufferTarget scripting API page states "Attempting to change the target without CPU-resident mesh data throws an exception".
- On versions older than 6000.6.0a2 the exception did not exist yet, so they print the same "threw=False" / "verdict=fail" Console output - there the silent accept is the correct documented behavior, which is why those versions are listed as not reproducible.
- The exception fires correctly when the same assignments run inside Play Mode on 6000.6.0a2 and newer. The missing throw is specific to Edit Mode execution (menu items, -executeMethod, editor scripts).
- Same behavior with -batchmode -nographics -executeMethod BugHunt.OracleRunner.Run, so it is not tied to the graphics device