Verification gaps
Evidence basis: source-verified at the pinned commit. Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed.
An implementation exists, but the evidence that it behaves correctly is insufficient. Every entry below exists at CNA 009d40f5; open an entry for its expected and actual behaviour, source locations, evidence and blast radius.
56 entries
| ID | Title | Subsystem | Status | Severity | Evidence basis |
|---|---|---|---|---|---|
CNA-VGAP-001 | Matrix camera builders have no XNA oracle and no full-matrix value test | Math & geometry | open | n/a | source-verified |
CNA-VGAP-002 | BoundingSphere::CreateFromBoundingBox and the SmoothStep/Hermite/CatmullRom helpers use different arithmetic from XNA 4.0, and no oracle measures last-bit agreement | Math & geometry | open | n/a | source-verified |
CNA-VGAP-003 | No test pins EffectParameter's divergences for CNA-constructed parameters, including a SetValue(Texture*) that GetValueTexture2D() does not read back | Graphics & renderers | open | n/a | source-verified |
CNA-VGAP-004 | The Linux evdev controller-mapping reader is tested only on hand-written entries in CI; the real-database test always skips | Input | open | n/a | source-verified |
CNA-VGAP-005 | The XNA audio facade on CNA's own ALSA mixer is covered by seven facade tests plus the XACT category suite; the SoundEffect, instance, dynamic-instance, Cue, SoundBank and WaveBank suites run only on SDL3 | Audio & media | open | n/a | source-verified |
CNA-VGAP-006 | Media paths without tests: the natural song end on SDL3_mixer, the failed visualization install, MediaLibrary accessors after Dispose and SavePicture's IOException | Audio & media | open | n/a | source-verified |
CNA-VGAP-007 | The SDL3 camera provider, system-tray icon and file-dialog result path have no test that drives them | Platforms | open | n/a | source-verified |
CNA-VGAP-008 | Android and iOS have no device evidence at this snapshot: no Android workflow, one iOS simulator frame, and lifecycle and packaged-content loading untested on a device | Platforms | open | n/a | source-verified |
CNA-VGAP-009 | GraphicsDeviceManager's iOS/Android back-buffer orientation branch has no test | Platforms | open | n/a | source-verified |
CNA-VGAP-010 | No CI workflow builds or tests the OPENGL4 renderer | Build & CI | open | n/a | source-verified |
CNA-VGAP-011 | No test exercises PlatformSelection.cmake's reserved-identifier and unknown-name refusal paths | Build & CI | open | n/a | source-verified |
CNA-VGAP-012 | No CI workflow selects CNA_PLATFORM=WAYLAND, so the native Wayland backend's suites run only on a developer's machine | Build & CI | open | n/a | source-verified |
CNA-VGAP-013 | No gate checks include reachability or compiles each public C++ header alone; the two scripts that did are stale campaign tools wired to nothing | Build & CI | open | n/a | source-verified |
CNA-VGAP-014 | The physical source-partition validator checks only *.cpp/*.mm path prefixes, so headers, C sources and a TU in a renderer's src/ subdirectory (never compiled) all pass it | Build & CI | open | n/a | source-verified |
CNA-VGAP-015 | CNA records and checks no easy-gl or meta-gl revision, although the snapshot needs meta-gl 20c8b2dc or later and easy-gl deda7a42 or later | Build & CI | open | n/a | source-verified |
CNA-VGAP-016 | A plain ctest run of the tests preset is not a trustworthy result | Testing & evidence | open | n/a | recorded by CNA |
CNA-VGAP-017 | graphics-ext shader-package drift guards have holes: no reproducibility check for shadow_caster, none run in CI, desktop clustered-forward fragment unpinned | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-018 | No test asserts RenderPipeline's fixed post-process order; the order-named tests only count passes | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-019 | ModuleLinkClosure_* link-closure gates report CTest SKIP in every Ninja tree, so no Ninja-preset run and no CI job ever evaluates them | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-020 | The hand-written CnaPlatformTests filter misses TerminalPresenterThroughPlatformTest and eight other platform suites, so the platform CI cells never select them | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-021 | No SpriteFont/DrawString pixel test exists for DIRECTX9, DIRECT2D, GDI, METAL, CANVAS, SVG_DOM, PORTABLEGL or FNA3D | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-022 | No test measures presentation cadence: PresentInterval::Two against ordinary vsync, or Vulkan's FIFO_RELAXED late-frame behaviour | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-023 | Most browser renderer paths are never executed automatically: WEBGL1/WEBGL2 have no test registrations, CANVAS has no registered browser run, and SVG_DOM runs only through a manual script | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-024 | METAL's CI lane proves construction, clear/present and capability reporting but no representative 3D pixels | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-025 | No CI workflow selects WEBGPU or SDL_GPU; WebGPU evidence is local Linux and scripted headless Chrome, and SDL_GPU's Direct3D 12 and Metal driver routes have no native execution evidence | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-026 | The Windows renderer families have no automatic native Windows execution: DIRECTX9 has no CI job, the DIRECTX11/12, DIRECT2D and GDI lanes are manual, and Direct2D's release gate is blocked | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-027 | No workflow runs the roughly eighty SDL_Renderer_* renderer CTests, and they are not registered on Windows or Emscripten | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-028 | Several XNB runtime readers are never exercised with externally produced files, although genuine XNA 4.0 outputs for some of them are already in the tree | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-029 | No fuzz target covers .cnj documents or the JSON parser, and .cnj files are read whole with no size bound | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-030 | Model drawing on VULKAN, SOFTWARE and the Direct3D renderers is checked in CI only at the stride draw boundary; the shared Model programs and the whole-corpus L7 rung run in CI for OPENGLES3 only | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-031 | The real-world Khronos comparison matrix passes on three renderers; the planned fourth (GLTF ROBUST row 12) is open | Testing & evidence | open | n/a | recorded by CNA |
CNA-VGAP-032 | Input behaviour on real hardware is unverified: the 15-task manual hardware checklist is blocked, and the focus-loss keyboard test checks only the bridge's accumulator | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-033 | The three user-reported audio release blockers (high pitch, missing files, distortion) have never been compared against the original game | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-034 | CNA's audio plan carries two undiagnosed test-suite crashes (AUD-15-021, AUD-15-022) that have not been re-run at this snapshot | Testing & evidence | open | n/a | recorded by CNA |
CNA-VGAP-035 | DynamicSoundEffectInstance's PendingBufferCount accounting is untested when the stream resamples | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-036 | Android sensor conventions are unverified on hardware, and the default landscape remap is a reflection, not a rotation | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-037 | CNA::Devices extension tests use canned platforms or check only that the host call does not fail, and exist only in a CNA_DEVICES=ON build | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-038 | No C++ storage test writes bytes through a StorageContainer stream and reads them back | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-039 | The process-spawning networking tests are compiled out on Windows, Emscripten, Android and iOS, and multi-machine behaviour has no test evidence | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-040 | Avatar rendering evidence uses a synthetic one-bone quad; no renderer test draws the bundled 19-bone avatar content | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-041 | The CNA_STRICT_XNA_API purity check compiles only the Microsoft::Devices sensor surface | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-042 | FREEDIRECT is built and tested by no workflow, has been verified on Linux only, and its free-direct and free-api siblings are unpinned | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-044 | Wine test routes and the DIRECTX12 Proton route do not prove which Direct3D or Direct2D implementation served a run | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-046 | No workflow runs the XNA reference-image corpus comparisons or the FNA value-differential harness, and the one reachable image check runs in a workflow that installs no Pillow | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-047 | Test strength is never measured automatically: no coverage build, no scheduled fuzzing campaign, and the Direct2D mutation checker only dry-runs | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-049 | The XNA API census (331/331 types, 3,627/3,627 members) measures representation only and is a manually run script | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-051 | No CI configuration builds diagnostics at STATS or FULL or enables CNA_BUILD_INSPECTOR, so most Diagnostics tests and every Inspector test are never compiled in CI | Diagnostics & Inspector | open | n/a | source-verified |
CNA-VGAP-052 | The Inspector's WebBridge security checks and Agent::Stop paths have no automated test | Diagnostics & Inspector | open | n/a | source-verified |
CNA-VGAP-053 | No CI workflow builds the C API library or runs its tests | C API & bindings | open | n/a | source-verified |
CNA-VGAP-054 | Destroying a caller-created GraphicsDevice while resources on it are still live is allowed by cna_graphics_device_destroy but untested | C API & bindings | open | n/a | source-verified |
CNA-VGAP-055 | Process exit with live EasyGL-family resources whose creating thread has already ended is untested; a binding recorded SIGABRT on an earlier CNA revision | C API & bindings | open | n/a | inferred (probable) |
CNA-VGAP-056 | The checked-in shader bytecode headers of VULKAN, SDL_GPU and the Direct3D renderers come from generators that no CTest or workflow runs and that have no --check mode | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-057 | EasyGL: a full-backbuffer SpriteBatch draw before a frame's first 3D draw is listed as open (Task 933) but has never been reproduced, and the reported scene is untested | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-058 | No dedicated test drives the production audio shutdown path (static destruction of the SDL3 device at exit with callbacks in flight): the teardown tests call DestroyMixer, and plan item AUD-15-016 is unchecked | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-059 | The VibrateController shutdown-ordering tests never open a haptic device or destroy a Game-owned SDL3 platform after SDL_Quit, and CNA's own plan keeps SDLCORE-011 open for that reason | Testing & evidence | open | n/a | source-verified |
CNA-VGAP-060 | HeadlessPlatform::InjectEvent, the display-free event seam, has no caller and no test | Platforms | open | n/a | source-verified |