Call sites still invoked undefined Shop::get_user_address_book() after
address logic moved to AddressService; route through the existing
get_address_book() facade instead.
Put hero main title/subtitle in search before_html (document flow),
move the search overlay outside the swiper as a sibling, and reset
search/slide-text positioning to zibll tops so title and search no
longer overlap.
SchemaProvider still mapped domains to pre-PSR-4 Schema\* strings, so REST
schema loads fatalled with Class Schema\GlobalSchema not found. Point the
builder map at AKSRT\Admin\Schema\* via ::class.
Admin::register_rest_routes used bare class strings like
'GlobalController', so class_exists() failed after the namespace move
and no aksrt/v1 settings/banner/schema routes registered (SPA 404).
Compose UI and board search already send aksrt_forum_plate post IDs as
board_id, but create_topic still validated aksrt_forum_board term IDs and
never wrote _aksrt_plate_id — so real plates failed with 版块不存在.
Validate/store under the plate model (and fix move_board the same way).
Bare class_exists('Balance') looks up global Balance, always false
under AKSRT\* namespaces → REST 403 on balance exchange and friends.
Rewrite string checks to AKSRT\{Domain}\{Class}.
PSR-4 split left GatewayInterface/Gateway duplicated across files;
loading BalanceGateway redeclared the interface. Strip sibling types
from polluted files (payment + widgets) so each path owns one type.
Move 288 types from global AKSRT_* + inc/classes manual requires into
namespace AKSRT\{Domain} under src/AKSRT/, wire composer.json psr-4,
and slim bootstrap to helpers/modules/hooks only. Split multi-class
widget/gateway files, update admin contract audit paths, and document
the layout in ADR/README.