CNA-BUG-223: docs/input-backend.md names a SdlInputBridge ProcessEvent overload and src/Input/... paths that do not exist at TARGET

CNA snapshot 009d40f5  ·  Known Issues › Current bugs  ·  source links pinned to 009d40f5

✓

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. Nothing on this page was executed unless the Evidence section says so.

docs/input-backend.md describes a raw SdlInputBridge::ProcessEvent overload that the SDL-shaped test-double retirement (PLAT-90) removed, and cites src/Input/Internal/ and src/Input/Xna/ paths; the input sources live under modules/input/src. (The comments naming a nonexistent Game::UpdateInput() in the SDL3 and X11 platforms are published separately as CNA-BUG-237.)

Identifier
CNA-BUG-223
Category
Bug
Subsystem
Documentation & release tooling
Status
Open
Verified against
CNA 009d40f5 (009d40f5dd085c4e674d3479675fac84b12b3e0a)
Severity
Low (a triage suggestion, not a project priority)
Evidence basis
Source-verified: read at TARGET, not executed
Tests touching this area
None
Affected contract
Maintainer documentation of the input pump: the EnsureControllerSubsystem comments in the SDL3 and X11 platforms, and docs/input-backend.md

Expected behaviour

In-repo documentation names the functions and files a maintainer has to open. At TARGET the single production event funnel is PlatformInputBridge::ProcessEvent, called from Game::PollEvents in Game.cpp; SdlInputBridge keeps only key-name helpers and test controls; and the input sources live under modules/input/src (Internal, Xna and CnaExt).

Actual behaviour at TARGET

input-backend.md section 1 says SdlInputBridge's "raw `ProcessEvent` overload is only an adapter for legacy SDL-shaped tests and delegates to the platform bridge in an SDL3 build". SdlInputBridge.hpp declares no ProcessEvent (it was removed in PLAT-90, commit a440cca08); the only one is PlatformInputBridge::ProcessEvent. The same document cites src/Input/Internal/InputManager.cpp and src/Input/Internal/GestureDetector.cpp, and its section 6 verifies thread-freedom "under src/Input/Internal/ or src/Input/Xna/"; the files are modules/input/src/Internal/ and modules/input/src/Xna/. The thread-freedom claim itself still holds there: no mutex, atomic or thread appears under modules/input/src.

Source locations

Evidence

Checked by reading at 009d40f5; a search of the TARGET tree for UpdateInput finds only these two comments, a design sketch under misc/ and a plan entry. Not executed.

Independent re-verification: Checked by reading at 009d40f5; not executed. The removal of the SdlInputBridge::ProcessEvent declaration was located in git history (a440cca08, 2026-08-13), which did not touch input-backend.md. The comments naming Game::UpdateInput() in Sdl3Platform.cpp and X11Platform.cpp, first merged into this entry, are published as CNA-BUG-237 and are not repeated here.

Focused reproduction

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

Current tests

Not applicable: documentation.

Regression test

No behavioural test: rename the references to Game::PollEvents and PlatformInputBridge::ProcessEvent, and correct the paths.

Blast radius

Maintainers following the comments or docs/input-backend.md to the pump; no runtime effect.

Workaround

No workaround is known.

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

Known issues
Bug index