CNA-GAP-060: No renderer or subsystem registers an IDiagnosticsSource, and nothing registers ResourceKind::AudioVoice resources

CNA snapshot 009d40f5  ·  Known Issues › Functional gaps  ·  source links pinned to 009d40f5

✓

Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). 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. Nothing on this page was executed unless the Evidence section says so.

The diagnostics source seam for GPU timings and renderer statistics has no production implementation and no engine code registers audio-voice resource metadata, so those diagnostics and Inspector views stay empty at this snapshot.

Identifier
CNA-GAP-060
Category
Functional gap
Subsystem
Diagnostics & Inspector
Status
Open
Verified against
CNA 009d40f5 (009d40f5dd085c4e674d3479675fac84b12b3e0a)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
Yes: see Current tests
Affected contract
CNA::Diagnostics::IDiagnosticsSource / RegisterSource and CNA::Diagnostics::ResourceKind::AudioVoice

Expected behaviour

What the seams describe: renderer- or subsystem-specific statistics (for example asynchronous GPU timings) published at frame boundaries through FrameStatisticsSink, and audio voices exposed as resource metadata.

Actual behaviour at TARGET

A search of modules/ finds IDiagnosticsSource and RegisterSource implemented and used only in the diagnostics module and its tests. ResourceKind::AudioVoice appears only in its enum definition, the Inspector bridge's name table (ResourceKindName) and the web UI's Audio view filter; no engine code registers such a resource and no test references it. The audio module publishes the Audio/AllocatedVoices gauge and the Audio/VoiceCreations counter but registers no voice resources, so the Inspector Audio view's list of registered audio resources is always empty. diagnostics.md documents the GPU part ("GPU timings are an extension seam only; no renderer publishes them yet").

Source locations

Evidence

Checked by searching modules at 009d40f5 and reading docs/diagnostics.md. Not executed.

Focused reproduction

No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.

Current tests

DiagnosticsSourceTest exercises the seam with test sources (publishing at frame boundaries, OFF-mode suppression, re-entry refusal); no production source exists to test.

Regression test

With the first renderer source: a test that its Collect publishes already-available data without waiting for the device, as the interface contract requires.

Blast radius

Users expecting GPU timings, renderer-specific statistics or per-voice audio resources from diagnostics or the Inspector.

Workaround

An application can register its own IDiagnosticsSource or ResourceHandle (kind AudioVoice or Custom).

The same subject is explained at several altitudes. These are the neighbouring pages at each one.