AbstractConfig accessors — get() (with default), set() (fluent), has(), getConfig(), and setConfig(). Magic property access via __get()/__set(). ConfigFactory::build(). ConfigException and interfaces (ConfigInterface, BaseInterface, FactoryInterface). PHPUnit 13 test suite, GitHub Actions CI, AGENTS.md.Request/AbstractRequest with five Parameter bags (cookie, file, post, query, server). Request helpers: isAjax(), isSecure(), baseUrl(). Parameter value object implementing Countable and IteratorAggregate. File/UploadFile markers. Http/AbstractHttp container. HttpFactory::build() and RequestFactory::build(). HttpException and interfaces. Reflection-based magic getters/setters via AbstractBase::__call(). PHPUnit 13 test suite, CI workflow, AGENTS.md.Route/AbstractRoute with name-keyed route table. getMatchRoute() URI resolution, getRouteUri() name-to-URI resolution, getUri() deriving the request URI from $_SERVER. Redirect/AbstractRedirect sending Location headers for named routes. Three protected seams (headersSent(), sendHeader(), terminate()) for testable redirects. RouteFactory::build() and RedirectFactory::build(). RouteException and interfaces. 52 PHPUnit 13 tests at 100% coverage, CI workflow, AGENTS.md.ModuleManager/AbstractModuleManager registry with getModules(), setModules(), addModule(), and getConfig(). Convention-based module resolution (appends \Module to namespace). addModule() deduplication returning bool. AbstractModule/ModuleInterface base contract. ModuleManagerFactory::build(). ModuleManagerException. 30 PHPUnit 13 tests, CI workflow, AGENTS.md.Application/AbstractApplication orchestrating the MVC pipeline with PHP 8.5 property hooks. Controller/AbstractController providing view, HTTP, request, and redirect access. View/AbstractView variable bag with PHTML rendering via render(). ViewModel value object. ApplicationFactory::build() wiring Whoops, module config, route matching, and HTTP. ControllerFactory::build() resolving controllers from route namespaces. ViewFactory::build(). MvcException. 404 response path with termination. 58 PHPUnit 13 tests at 100% coverage, AGENTS.md.declare(strict_types=1). Application\Module extending AbstractModule. IndexController with default indexAction(). Application route (application.home). View templates (layout, index, error pages). PHPUnit 13 tests covering Module and IndexController at 100% coverage. composer serve script, AGENTS.md.^8.5 and use PHP 8.5 property hooks where applicable.Exception to RouteException. AbstractRedirect::toRoute() now delegates to headersSent(), sendHeader(), and terminate() seams.Exception to ModuleManagerException. Added parameter and return type declarations across the public API. Changed autoload-dev PSR-4 prefix to separate test namespace. All sources now declare strict_types=1.exit() into a terminate() method for testable 404 handling.branch-alias to dev-main: 1.1.x-dev. Test location moved from module/Application/test/ to test/Application/.Config instance with setConfig() or set() instead.JiNexus\ModuleManager\Exception — replaced by ModuleManagerException with no alias provided.getMatchRoute() now honors its $routes argument (previously silently ignored it). getRouteUri() now falls back to registered routes when no $routes argument is supplied (previously always threw). Autoload-dev PSR-4 map collision fixed.Error — getConfig() now wraps it in a ModuleManagerException.Application\Module::getConfig() return type corrected from mixed to array to match the parent signature.