# Platform stubs reached by the 40250 port route 2026-09-24, macOS arm64, offline `port.login_flow` (login → select → game → movement, combat, shop, quest, safebox and audio module calls): ```sh MT_PLATFORM_STUB_TRACE=1 ctest --test-dir build-port-gate/macos \ -R '^port.login_flow$' --output-on-failure -V ``` The first-call trace reported **93 distinct stub signatures**. `PlatformStub.h` now prints qualified signatures, so overloaded `Render`/`Update` calls can be routed to their owning class. This is a reachability sample, not a claim that the other platform TODOs are unreachable. The live server, other maps and optional UI have separate call paths. | Runtime group | Reached stubs to address first | Observable gap | | --- | --- | --- | | World and sky | `CSkyBox::Update/Render/RenderCloud`, `CScreenFilter::Set*`, `CLensFlare::Draw*`, `CSpeedTreeForest::CreateInstance/UpdateSystem/Render` | Sky, weather, foliage and postprocessing do not follow the original path. | | Culling and drawing | `CCullingManager::Register/Update`, `Frustum::ViewVolumeTest`, `CScreen::BuildViewFrustum`, `CGraphicImageInstance::OnSetImagePointer` | Visibility and remaining UI/render primitives still depend on default-return stubs. | | Audio internals | `NSound::LoadSoundInformationPiece`, `CSoundBase`, `CSoundManager2D/3D/Stream` constructors | The new Godot command bridge plays common sounds, but the original Miles object model is not implemented. | | Platform services | `CFileLoaderThread::Fetch`, `CInputKeyboard::IsPressed`, `BuildProcessCRC`, `GetProcessCRCMagicCubePiece`, `CMSWindow::GetWindowHandle` | Resource scheduling, input polling and the CRC path need focused verification. | `CPythonApplication::SetGlobalCenterPosition` appeared in the first trace and was implemented from the 40250 `GlobalPositionToLocalPosition → GetHeight → SetCenterPosition` sequence in this round. The other groups remain open in the platform queue; do not mark them verified from this smoke test. 2026-09-24 follow-up: `CScreen::RenderBox2d` and `RenderGradationBar2d` now emit Godot canvas commands with the source's edge and colour semantics. `CSoundManager` now forwards named music fade speed/limit, 3D loop counts and indexed volume; its SaveVolume/RestoreVolume sequence preserves the backup. These changes passed the macOS port gate, audio driver test and game render test. The sky, foliage, water, shadows, sphere-pack culling and IME gaps remain open.