Skip to content

Migrate all API modules to RouteRegistry.create_subapp() pattern #9540

@HyeockJinKim

Description

@HyeockJinKim

Migrate all 39 API modules from legacy global_subapp_pkgs + create_app() + init_subapp() pattern to unified RouteRegistry.create_subapp() pattern. Each module gets its own web.Application with prefix-based isolation, deferred mounting for CORS setup, and centralized module registration via register_modules().

Key changes:

  • RouteRegistry.create_subapp() with deferred mount() for CORS compatibility
  • All 39 modules wired in server.py via _register_module() match/case dispatch
  • register_modules() public API for test fixtures
  • Fix admin_required/superadmin_required to return 403 for insufficient privileges (was 401)
  • Test fixture unified to use register_modules() instead of legacy/newstyle split

JIRA Issue: BA-4807

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions