Platform limitations
Evidence basis: source-verified at the pinned commit. Claims on this page were checked by reading the CNA source at commit c1c316b9; unless a sentence says otherwise, nothing here was built or executed.
A host, platform or toolchain constraint makes behaviour differ or be unavailable. Every entry below exists at CNA c1c316b9; open an entry for its expected and actual behaviour, source locations, evidence and blast radius.
13 entries
| ID | Title | Subsystem | Status | Severity | Evidence basis |
|---|---|---|---|---|---|
CNA-PLAT-001 | SDL_RENDERER throws for any Texture2D mip level above 0, so mipmapped textures (including XNB textures with mip chains) cannot be uploaded there | Graphics & renderers | open | n/a | source-verified |
CNA-PLAT-002 | SDL_GPU ignores BlendState.MultiSampleMask because SDL_gpu reserves its sample-mask fields | Graphics & renderers | open | n/a | source-verified |
CNA-PLAT-003 | EasyGL on GLES/WebGL contexts without GL_NV_polygon_mode or WEBGL_polygon_mode refuses most wireframe triangle draws | Graphics & renderers | narrowed | n/a | source-verified |
CNA-PLAT-004 | On OpenGL ES 3.0 and WebGL 2 contexts OcclusionQuery::PixelCount is boolean (0 or 1) | Graphics & renderers | open | n/a | source-verified |
CNA-PLAT-005 | SDL_GPU cannot create OcclusionQuery objects because SDL_gpu 3.5.0 has no occlusion-query commands | Graphics & renderers | open | n/a | source-verified |
CNA-PLAT-009 | Android Compass and Motion: stopping waits at most five seconds for the sensor worker, after which the bridge is abandoned for good and a handler still running can outlive its owner | Input | open | n/a | source-verified |
CNA-PLAT-011 | Threaded Emscripten builds on the default WasmFS have no persistent storage, so StorageDevice refuses rather than saving | Storage | narrowed | n/a | inferred (strong) |
CNA-PLAT-012 | Under Emscripten, SystemLink discovery is empty, hosting binds the fixed port 61191 and Join returns before the handshake | Networking & gamer services | open | n/a | source-verified |
CNA-PLAT-013 | Wayland gives no desktop pointer position, and browsers hide gamepads until a button press and gate pointer lock on a user gesture | Platforms | open | n/a | source-verified |
CNA-PLAT-014 | Compass and Motion work only on Android; desktop sensors come only through the SDL3 platform, and web targets are refused | Platforms | open | n/a | source-verified |
CNA-PLAT-016 | On Apple GPUs SamplerState.MipMapLevelOfDetailBias is refused by METAL below macOS/iOS 26, in builds against an older SDK and on devices that ignore it, and does not reach the GPU on FNA3D's Metal-backed driver | Graphics & renderers | open | n/a | recorded by CNA |
CNA-PLAT-017 | FNA3D has no occlusion queries on its SDL_GPU driver, the driver FNA3D tries first and the one it runs on Apple | Graphics & renderers | open | n/a | source-verified |
CNA-PLAT-018 | Online PlayerMatch and Ranked session traffic needs a libcurl with WebSocket support; with macOS's system libcurl the relay refuses with RELAY_SECURE_WEBSOCKET_UNAVAILABLE | Networking & gamer services | open | n/a | recorded by CNA |