Appearance
Optional entity-backed UI: M2
Tested on UE5.8.3 CL58210709, Win64, MassForge0.2 API. The optional bridge and Watchpost project are original sources outside InterfaceForge's core/default sample. This is scoped player-interface proof, not whole-product release acceptance.
Eight final strict reports cover source and the exact Development archive, each using Mass and standalone providers at1280×720/default and800×600/150%UI+150%text. Every run checks19 distinct results: saved Blueprint/provider/entry binding, live initial focus, usable reading geometry, fitted command labels, visible initial/selected health, real health changes, selection, stale-view disabling, rejected actions, explicit replacement, retained command focus and controller→pointer→keyboard intent/cursor changes. Commands are activated through actual Slate Enter on saved Blueprint buttons, rather than calling the provider for successful mutations. The negative unavailable request calls the backend explicitly to prove rejection.
Controller input is simulated. Physical controls/disconnection, touch hardware, mobile/consoles and multiplayer are not certified. The human explicitly deferred controller availability. -IFMassStandalone compares ordinary presentation models inside the optional host; the independent default project, with unchanged166files and prior core absence evidence, proves use without MassForge.
The current native lifecycle test also passes with normal world teardown, process0, no error/formatter markers. It covers stable models, real entity generation/actor representation, busy reads/retry, attribute coalescing, safe stale/explicit rebinding, reentrant release, action opt-in, bounded512sources and world teardown. Only the bridge's named text formatting changed from M1. Both saved Widget Blueprints compile with0errors/warnings/failedloads; their final layouts/graphs are exercised in all eight runs.
Commands and exact artifacts
- Editor build: UE5.8
Build.bat ForgeMassExamplesEditor Win64 Development -Project=<private M2 project> -WaitMutex -NoHotReloadFromIDE; finalBuild-IFMass-M2-NamedFormat-UE58.log. - Saved Blueprint compile:
-run=CompileAllBlueprints -AllowListFile=Saved/BlueprintChecks/WatchpostAllowList.txt -unattended -NullRHI -nowrite;Compile-IFMass-M2-SavedBlueprints-UE58.logexplicitly names both assets. - Source matrix:
Tools/run_mass_example_reviews.ps1 -Project Evidence/AdapterChecks/M2/Project/ForgeMassExamples.uproject -Prefix IFMass-M2-NamedSource. - Package: UE5.8
RunUAT.bat BuildCookRun -project=<private M2 project> -noP4 -platform=Win64 -clientconfig=Development -build -cook -stage -pak -archive -archivedirectory=<IFMassM2FixedUE58> -map=/Game/Maps/Watchpost -ubtargs=-NoHotReloadFromIDE -ddc=InstalledNoZenLocalFallback -utf8output.52.34s total,13.26s build/32.50s cook; no native compiler diagnostics in the recorded log. - Exact archive runtime: same matrix helper, prefix
IFMass-M2-FixedCooked, executableEvidence/Packages/IFMassM2FixedUE58/Windows/ForgeMassExamples.exe. - Native: owned hidden Editor-Cmd,
-ExecCmds="Automation RunTests InterfaceForge.MassAdapter.Lifecycle" -TestExit="Automation Test Queue Empty" -unattended -NullRHI -culture=en -nowrite;Runtime-IFMass-M2-NativeNamed-UE58.log.
IFMass-M2-VerificationSummary.json hashes all eight current runtime logs/reports and native log. IFMass-M2-SourceReceipt.json records29original optional files/fivepackages, exact private source copies,275private/reference SDKsource hashes, and unchanged166default files. The private host's automatically generated AndroidFileServer editor section is explicitly excluded from canonical source; the authored engine settings match. Its project removes external plugin discovery to use owned SDK copies only.
IFMass-M2-FixedPackageBoundary.json checks2331exact staging targets and seven required original/plugin assets. No reference/deferred inventory packages or SDKContent are staged. The validation archive still includes built separately licensed SDK modules and must never be shipped as an InterfaceForge deliverable. The SDKsource copies and all validation archives stay under excluded Evidence.
Reference preservation rechecks5546UI packages, discovery changed-file hashes and HEADs unchanged. GameMaster/MassForge have additional external Git changes; Sakura's status is unchanged. No reference resets or saves were performed.
Visual review and failures retained
Actual source/package captures were inspected. Fixed heading and fixed two-column commands preserve navigation while status rows scroll. Enlarged layout widens through ordinary Blueprint preference events. Selecting a scout uses public Scroll Widget Into View; compact readouts expose complete health values/bars. The world uses original tinted engine primitives and one original material. No Game Master design or reference assets are copied, and Sakura's existing independent center tint is unchanged.
Initial build/author errors (target compatibility, compiler types/link dependencies/map save), missing EnhancedInput config, template focus error, stale removed-widget GUID, incorrect ScrollWidgetIntoView pin, first package's omitted dynamically loaded material/theme and formatter warnings are retained in Logs/AssetSnapshots. The first archive's functional MassPASS is rejected by the current strict warning/material boundary verifier. Its standalone fraction comparison also failed at the default very tight numeric tolerance despite correct80/100 rendering; current tests use explicit1e-4 normalized precision. The exact optimizer explanation was not independently proven. No error/warning suppression was added.
A first staging audit used the default sample's RemappedPlugins namespace incorrectly; the private host actually stages its owned Plugins below ForgeMassExamples/Plugins. That failed audit is retained separately. Corrected expectations check exact observed targets, including selected theme/controller data, rather than accepting suffix matches.
Remaining gates: final buyer candidate assembly, broader progress/entry examples, complete Shipping sample checks and the rest of RELEASE_ACCEPTANCE.md. Optional adapter5.6/5.7 compatibility and multiplayer are not advertised by this milestone.