Finish ToolboxUiState migration by removing compatibility references and
updating all call sites to g_ui. Expand host tests for route matrix and
session flag/cheat-map helpers.
Break daemon/commands.cpp into playtime, jailbreak, and utils TUs. Introduce
ToolboxUiState with compatibility aliases, extract pure toolbox resource
routing for host unit tests, and fix superuser empty-XML pass-through.
Introduce ps5ui::Page so cheats, plugins, remote play, and plapps UIs are
built via explicit widget calls instead of hand-written XML strings, and
cover the builder with host unit tests.
Delete DirectPKGInstaller and the toolbox DPI toggle. Remove the custom
background package installer (custompkginstaller XML generation and
id_pkg_ handlers). Package install remains the stock PkgInstaller link
in OrionHEN_toolbox.xml. Leave BREW_UTIL_UNUSED_DPI ordinal for IPC
compatibility.
Wire daemon/util/shellui/bootstrapper to liborion_platform and
liborion_proc (orion_notify, OrionHEN_log configure, find_pid, if_exists).
Split MonoUtils into mono_runtime/toolbox_xml/settings_ui/shellui_* and
replace the OnPress id bus with table-driven domain handlers.
Replace per-module Detour, hde64, proc, and ucred copies in shellui/fps_elf
with shims over liborion_detour and liborion_proc so injectee low-level fixes
land once.
Wire daemon/util/shellui Load/Save through liborion_settings. Daemon and util
use g_settings directly; util keeps atomic legacy CMD flags for the hot path.
Slim daemon globalconf.hpp to StartOpts + g_settings and move UserService ABI
locals into commands.cpp.
Point shellui/fps clients at liborion_ipc dual-singleton client. Move daemon
and util Unix listen/accept loops onto shared ipc_server. Extract handleIPC
into ipc_handle.cpp so transport stays in msg.cpp and command tables can
evolve independently.
Move util cheats orchestration to C++ (CheatService, Repository, Applier,
IMemoryBackend, ICheatParser factory for json/shn/mc4 with ShnExt C adapter).
Drop the obsolete RELOAD_CHEATS UI/IPC path; reloads use file-signature hot
reload only. Document util cheats architecture under docs/util_arch.
Drop the Toolbox TestKit menu and kit Mono hooks, sceKernelIsTestKit
probes in util/daemon/bootstrapper, and client IsTestKit helpers.
BREW_TESTKIT_CHECK remains an unused IPC ordinal for compatibility.
Drop the util FTP (1337) and Klog (9081) servers, Toolbox UI toggles, and
config keys. Keep former IPC command ordinals as UNUSED_* for compatibility.
Add docs/arch.md covering modules, IPC, features, and dependencies.
Rename remaining etaHEN symbols, log prefixes, on-disk paths, plugin
magic, process names, and copyright headers across bootstrapper, daemons,
shellui, and util without keeping legacy aliases.
Serialize kstuff before daemon toolbox inject, wait for mprotect, avoid
ForceKill on ShellUI timeout, and disable Allow_data_in_sandbox ShellCore patch.
Drop in-process spawn for HEN components. Write ELFs under
/data/etaHEN/daemons and hand off file: URIs to the host elfldr service.
Add elfldr_remote helpers and wire bootstrapper/daemon/util CMake and call sites.