# Isolated stock inventory runtime control This diagnostic addon depends only on installed vanilla Reforger (`58D0FB3206B6F859`). It must run without successor Core, AI, Intel, Map or Chat loaded. It has its own project, world and prefab identities. It is not a player mission or a multiplayer/admission test. Copy this directory alone as the hidden runner's `addons/core`; select `Worlds/ERRIC_Inventory.ent` and command-line Workbench plugin `ERRIC_InventoryControlPlugin`, with `-erricInventoryControl 1 -errPlay 1`. Keep the separate private profile, muted hidden Gamescope containment, prefix lock and source-bound archive. The fixture emits `ERR SMOKE PASS/FAIL/COMPLETE` with explicit vanilla-control scope. No automatic reload; required completion count is one. Native compilation/runtime execution is pending. The fixture waits at most 30 seconds in actual local `RplMode.None` for `SCR_PlayerController`. It creates one stock `{2F912ED6E399FF47}Prefabs/Characters/Factions/BLUFOR/US_Army/Character_US_Unarmed.et`, assigns that body once through native `SetControlledEntity`, waits for settling, then calls the controller's actual `ActionOpenInventory`. It verifies the exact body, native menu/top menu, root, native `GridLayoutWidget` named `StoragesListSlot` and its direct `Frame0` child. The open screenshot is requested after 500 ms. Public native `SCR_InventoryStorageManagerComponent.CloseInventory` closes it; another 500 ms later the fixture verifies closure and requests a closed screenshot. World teardown disposes the fixture actor; the diagnostic does not delete a possessed actor or modify its inventory, health, or controls. `Action_OpenInventory` is not a toggle: the installed implementation always invokes `OpenInventory`. The menu's `Action_CloseInventory` is protected. Therefore this control deliberately uses the public native close method instead of incorrectly invoking the open method twice. No keyboard input or user-input usability is claimed. Retain all raw GUI errors. The suspected vanilla source path is: * `scripts/Game/Player/SCR_PlayerController.c:965`: `ActionOpenInventory` delegates to the body's native inventory manager. * `scripts/Game/Inventory/SCR_InventoryStorageManagerComponent.c:1756,1824`: normal inventory-open path uses `ChimeraMenuPreset.Inventory20Menu`. * `scripts/Game/UI/Inventory/SCR_InventoryMenuUI.c:1694`: `ShowStoragesList` creates `{FC579324F5E4B3A4}UI/layouts/Menus/Inventory/InventoryCharacterGrid.layout` beneath `StoragesListSlot`, then attaches `SCR_InventoryStoragesListUI`. * The installed `InventoryMain.layout` defines `StoragesListSlot` as a `GridLayoutWidget`; `InventoryCharacterGrid.layout` defines its root as `OverlayWidget Frame0`. * `scripts/Game/UI/Inventory/SCR_InventoryStoragesListUI.c:301–302` unconditionally calls two `LayoutSlot` operations on that root, which now has a native grid slot. Successor ordinary runs 16:55:12 and 16:58:32 recorded exactly two `OverlayWidget Frame0 has invalid slot GridWidgetSlot ... expected LayoutSlot` errors when opening inventory. This source chain is a concrete hypothesis; this control must reproduce it without successor addons before attributing runtime errors to vanilla. A completed fixture alongside retained GUI errors is a failed clean-runtime report, not an error-free qualification. Workbench control evidence does not establish ordinary-game module parity.