Coverage report: 2%

Files Functions Classes

coverage.py v7.12.0, created at 2025-12-02 00:58 +0900

      Statements   Branches   Total
File function   coverage statements missing excluded   coverage branches partial   coverage
src / mysingle / __init__.py __getattr__   0% 11 11 0   0% 2 0   0%
src / mysingle / __init__.py __dir__   100% 0 0 1   100% 0 0   100%
src / mysingle / __init__.py (no function)   100% 7 0 26   100% 0 0   100%
src / mysingle / auth / __init__.py (no function)   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / authenticate.py Authentication.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / authenticate.py Authentication.login   0% 23 23 0   0% 12 0   0%
src / mysingle / auth / authenticate.py Authentication.login._cache_set   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / authenticate.py Authentication.refresh_token   0% 32 32 0   0% 10 0   0%
src / mysingle / auth / authenticate.py Authentication.refresh_token._refresh_cache   0% 6 6 0   0% 2 0   0%
src / mysingle / auth / authenticate.py Authentication.validate_token   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / authenticate.py Authentication.logout   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / authenticate.py (no function)   0% 22 22 0   100% 0 0   0%
src / mysingle / auth / cache.py BaseUserCache.get_user   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py BaseUserCache.set_user   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py BaseUserCache.invalidate_user   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py BaseUserCache.clear_all   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py BaseUserCache.health_check   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py RedisUserCache.__init__   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / cache.py RedisUserCache._ensure_initialized   0% 19 19 0   0% 6 0   0%
src / mysingle / auth / cache.py RedisUserCache._user_cache_key   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py RedisUserCache._serialize_user   0% 6 6 0   0% 4 0   0%
src / mysingle / auth / cache.py RedisUserCache._deserialize_user   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / cache.py RedisUserCache.get_user   0% 15 15 0   0% 6 0   0%
src / mysingle / auth / cache.py RedisUserCache.set_user   0% 12 12 0   0% 4 0   0%
src / mysingle / auth / cache.py RedisUserCache.invalidate_user   0% 10 10 0   0% 4 0   0%
src / mysingle / auth / cache.py RedisUserCache.clear_all   0% 15 15 0   0% 8 0   0%
src / mysingle / auth / cache.py RedisUserCache.health_check   0% 9 9 0   0% 4 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.__init__   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / cache.py InMemoryUserCache._is_expired   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py InMemoryUserCache._cleanup_expired   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.get_user   0% 11 11 0   0% 4 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.set_user   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.invalidate_user   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.clear_all   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / cache.py InMemoryUserCache.health_check   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / cache.py HybridUserCache.__init__   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / cache.py HybridUserCache._check_redis_available   0% 7 7 0   0% 4 0   0%
src / mysingle / auth / cache.py HybridUserCache.get_user   0% 5 5 0   0% 4 0   0%
src / mysingle / auth / cache.py HybridUserCache.set_user   0% 3 3 0   0% 2 0   0%
src / mysingle / auth / cache.py HybridUserCache.invalidate_user   0% 3 3 0   0% 2 0   0%
src / mysingle / auth / cache.py HybridUserCache.clear_all   0% 3 3 0   0% 2 0   0%
src / mysingle / auth / cache.py HybridUserCache.health_check   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / cache.py get_user_cache   0% 15 15 0   0% 4 0   0%
src / mysingle / auth / cache.py reset_user_cache   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / cache.py (no function)   0% 55 55 0   100% 0 0   0%
src / mysingle / auth / deps / __init__.py (no function)   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / deps / core.py get_current_user   0% 17 17 0   0% 10 0   0%
src / mysingle / auth / deps / core.py get_current_active_user   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / core.py get_current_active_verified_user   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / core.py get_current_active_superuser   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / core.py get_current_user_optional   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / core.py is_user_authenticated   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / core.py get_user_id   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / core.py get_user_email   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / core.py get_user_display_name   0% 8 8 0   0% 6 0   0%
src / mysingle / auth / deps / core.py get_request_security_context   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / core.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py _extract_request   0% 7 7 0   0% 8 0   0%
src / mysingle / auth / deps / decorators.py _ensure_async   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / decorators.py _ensure_async.wrapper   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py authenticated   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py authenticated.inner   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py verified_only   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py verified_only.inner   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py admin_only   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py admin_only.inner   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py roles_required   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py roles_required.decorator   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py roles_required.decorator.inner   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py resource_owner_required   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py resource_owner_required.decorator   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / deps / decorators.py resource_owner_required.decorator.inner   0% 24 24 0   0% 14 0   0%
src / mysingle / auth / deps / decorators.py (no function)   0% 17 17 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py _get_header   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / kong.py get_kong_user_id   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / deps / kong.py is_kong_authenticated   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py get_kong_correlation_id   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py get_kong_request_id   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py get_kong_upstream_latency   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py get_kong_proxy_latency   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / kong.py (no function)   0% 10 10 0   100% 0 0   0%
src / mysingle / auth / deps / permissions.py require_user_role   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / deps / permissions.py require_admin_access   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / deps / permissions.py (no function)   0% 9 9 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py create_error_response   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / exception_handlers.py auth_exception_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py invalid_id_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py user_already_exists_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py user_not_exists_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py user_inactive_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py user_already_verified_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py invalid_verify_token_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py invalid_reset_password_token_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py invalid_password_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py authentication_failed_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py authorization_failed_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py token_expired_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py jwt_destroy_not_supported_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exception_handlers.py register_auth_exception_handlers   0% 2 2 0   0% 2 0   0%
src / mysingle / auth / exception_handlers.py (no function)   0% 20 20 0   100% 0 0   0%
src / mysingle / auth / exceptions.py AuthException.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / exceptions.py InvalidID.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py UserAlreadyExists.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py UserNotExists.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py UserInactive.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py UserAlreadyVerified.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py InvalidVerifyToken.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py InvalidResetPasswordToken.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py InvalidPasswordException.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / exceptions.py AuthenticationFailed.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exceptions.py AuthorizationFailed.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py TokenExpired.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py InvalidToken.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / exceptions.py JWTStrategyDestroyNotSupportedError.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exceptions.py OAuth2Error.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / exceptions.py (no function)   0% 31 31 0   100% 0 0   0%
src / mysingle / auth / init_data.py _try_create_with_retry   0% 24 24 0   0% 10 0   0%
src / mysingle / auth / init_data.py create_first_super_admin   0% 16 16 0   0% 4 0   0%
src / mysingle / auth / init_data.py create_first_super_admin.create_user   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / init_data.py create_first_super_admin.check_existing   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / init_data.py create_test_users   0% 20 20 0   0% 6 0   0%
src / mysingle / auth / init_data.py (no function)   0% 10 10 0   100% 0 0   0%
src / mysingle / auth / middleware.py AuthMiddleware.__init__   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._check_auth_bypass   0% 8 8 0   0% 4 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._prepare_public_paths   0% 6 6 0   0% 2 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._is_public_path   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._authenticate_iam_service   0% 45 45 0   0% 14 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._authenticate_non_iam_service   0% 39 39 0   0% 8 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._authenticate_user   0% 13 13 0   0% 6 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._get_user_with_cache   0% 19 19 0   0% 4 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._create_test_user   0% 14 14 0   0% 2 0   0%
src / mysingle / auth / middleware.py AuthMiddleware._create_error_response   0% 10 10 0   0% 8 0   0%
src / mysingle / auth / middleware.py AuthMiddleware.dispatch   0% 37 37 0   0% 12 0   0%
src / mysingle / auth / middleware.py (no function)   0% 24 24 0   100% 0 0   0%
src / mysingle / auth / models.py (no function)   0% 33 33 0   100% 0 0   0%
src / mysingle / auth / oauth_manager.py OAuthManager.get_provider_client   0% 3 3 0   0% 2 0   0%
src / mysingle / auth / oauth_manager.py OAuthManager.get_redirect_uri   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / oauth_manager.py OAuthManager.generate_auth_url   0% 13 13 0   0% 4 0   0%
src / mysingle / auth / oauth_manager.py OAuthManager.get_access_token_and_profile   0% 27 27 0   0% 6 0   0%
src / mysingle / auth / oauth_manager.py (no function)   0% 24 24 0   100% 0 0   0%
src / mysingle / auth / router / __init__.py (no function)   0% 19 19 0   100% 0 0   0%
src / mysingle / auth / router / auth.py create_auth_router   0% 11 11 0   100% 0 0   0%
src / mysingle / auth / router / auth.py create_auth_router.login   0% 7 7 0   0% 4 0   0%
src / mysingle / auth / router / auth.py create_auth_router.logout   0% 10 10 0   0% 4 0   0%
src / mysingle / auth / router / auth.py create_auth_router.refresh_token   0% 28 28 0   0% 14 0   0%
src / mysingle / auth / router / auth.py create_auth_router.verify_token   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / auth.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / auth / router / common.py (no function)   0% 20 20 0   100% 0 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router.authorize   0% 10 10 0   0% 2 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router.callback   0% 18 18 0   0% 4 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router.callback.parse_google_profile   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router.callback.parse_kakao_profile   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / router / oauth2.py get_oauth2_router.callback.parse_naver_profile   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / router / oauth2.py (no function)   0% 13 13 0   100% 0 0   0%
src / mysingle / auth / router / oauth_management.py get_oauth_management_router   0% 11 11 0   100% 0 0   0%
src / mysingle / auth / router / oauth_management.py get_oauth_management_router.get_my_oauth_accounts   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / router / oauth_management.py get_oauth_management_router.remove_oauth_account   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / router / oauth_management.py get_oauth_management_router.get_user_oauth_accounts   0% 7 7 0   0% 4 0   0%
src / mysingle / auth / router / oauth_management.py (no function)   0% 7 7 0   100% 0 0   0%
src / mysingle / auth / router / register.py get_register_router   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / router / register.py get_register_router.register   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / register.py (no function)   0% 5 5 0   100% 0 0   0%
src / mysingle / auth / router / reset.py get_reset_password_router   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / router / reset.py get_reset_password_router.forgot_password   0% 9 9 0   100% 0 0   0%
src / mysingle / auth / router / reset.py get_reset_password_router.reset_password   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / reset.py (no function)   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / router / users.py get_users_router   0% 20 20 0   100% 0 0   0%
src / mysingle / auth / router / users.py get_users_router.get_user_me   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / users.py get_users_router.get_user_activity   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / users.py get_users_router.update_user_me   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / router / users.py get_users_router.get_user   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / router / users.py get_users_router.get_user_activity_by_id   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / router / users.py get_users_router.update_user   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / router / users.py get_users_router.delete_user   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / router / users.py (no function)   0% 8 8 0   100% 0 0   0%
src / mysingle / auth / router / verify.py get_verify_router   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / router / verify.py get_verify_router.request_verify_token   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / router / verify.py get_verify_router.verify   0% 2 2 0   100% 0 0   0%
src / mysingle / auth / router / verify.py (no function)   0% 7 7 0   100% 0 0   0%
src / mysingle / auth / schemas / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / schemas / auth.py (no function)   0% 49 49 0   100% 0 0   0%
src / mysingle / auth / schemas / oauth2.py (no function)   0% 41 41 0   100% 0 0   0%
src / mysingle / auth / schemas / user.py (no function)   0% 49 49 0   100% 0 0   0%
src / mysingle / auth / types.py (no function)   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.read_user_from_token   0% 14 14 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager.model_dump   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.model_validate   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.get   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.get_by_email   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.get_by_oauth_account   0% 4 4 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.find_oauth_account   0% 4 4 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager.remove_oauth_account   0% 6 6 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.add_oauth_account   0% 4 4 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.update_oauth_account   0% 9 9 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager.create   0% 8 8 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.oauth_callback   0% 37 37 0   0% 18 0   0%
src / mysingle / auth / user_manager.py UserManager.request_verify   0% 6 6 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager.verify   0% 19 19 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager.forgot_password   0% 5 5 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.reset_password   0% 20 20 0   0% 6 0   0%
src / mysingle / auth / user_manager.py UserManager.update   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.delete   0% 3 3 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.validate_password   100% 0 0 1   100% 0 0   100%
src / mysingle / auth / user_manager.py UserManager.on_after_register   0% 9 9 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_register_by_oauth   0% 9 9 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_update   0% 6 6 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_request_verify   0% 9 9 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_verify   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_forgot_password   0% 9 9 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_reset_password   0% 10 10 0   0% 2 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_login   0% 1 1 1   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.update_login_activity   0% 14 14 0   0% 6 0   0%
src / mysingle / auth / user_manager.py UserManager.update_activity   0% 12 12 0   0% 6 0   0%
src / mysingle / auth / user_manager.py UserManager.get_user_activity_summary   0% 1 1 0   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.on_after_logout   0% 6 6 1   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.on_before_delete   100% 0 0 1   100% 0 0   100%
src / mysingle / auth / user_manager.py UserManager.on_after_delete   0% 5 5 1   100% 0 0   0%
src / mysingle / auth / user_manager.py UserManager.authenticate   0% 11 11 0   0% 4 0   0%
src / mysingle / auth / user_manager.py UserManager._update   0% 22 22 0   0% 8 0   0%
src / mysingle / auth / user_manager.py UUIDIDMixin.parse_id   0% 6 6 0   0% 2 0   0%
src / mysingle / auth / user_manager.py IntegerIDMixin.parse_id   0% 6 6 0   0% 2 0   0%
src / mysingle / auth / user_manager.py (no function)   0% 67 67 0   100% 0 0   0%
src / mysingle / cli / __init__.py (no function)   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / __main__.py show_interactive_menu   0% 25 25 0   0% 8 0   0%
src / mysingle / cli / __main__.py main_with_args   0% 11 11 0   0% 4 0   0%
src / mysingle / cli / __main__.py main   0% 8 8 0   100% 0 0   0%
src / mysingle / cli / __main__.py (no function)   0% 9 9 0   0% 2 0   0%
src / mysingle / cli / core / __init__.py (no function)   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py CommitInfo.is_breaking   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py CommitInfo.is_feat   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py CommitInfo.is_fix   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py CommitInfo.is_proto_only   67% 3 1 0   50% 2 1   60%
src / mysingle / cli / core / auto_version.py CommitInfo.is_proto_related   100% 1 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py CommitInfo.type   100% 2 0 0   100% 0 0   100%
src / mysingle / cli / core / auto_version.py get_commits_since_tag   82% 17 3 0   62% 8 3   76%
src / mysingle / cli / core / auto_version.py analyze_commits   100% 24 0 0   91% 22 2   96%
src / mysingle / cli / core / auto_version.py generate_changelog   0% 33 33 0   0% 22 0   0%
src / mysingle / cli / core / auto_version.py import_datetime   0% 2 2 0   100% 0 0   0%
src / mysingle / cli / core / auto_version.py auto_bump   0% 62 62 0   0% 24 0   0%
src / mysingle / cli / core / auto_version.py (no function)   100% 29 0 0   100% 0 0   100%
src / mysingle / cli / core / version.py Version.__str__   75% 4 1 0   50% 2 1   67%
src / mysingle / cli / core / version.py Version.parse   0% 4 4 0   0% 2 0   0%
src / mysingle / cli / core / version.py Version.bump   86% 7 1 0   83% 6 1   85%
src / mysingle / cli / core / version.py find_pyproject   0% 6 6 0   0% 4 0   0%
src / mysingle / cli / core / version.py read_current_version   0% 13 13 0   0% 2 0   0%
src / mysingle / cli / core / version.py get_current_version   0% 2 2 0   100% 0 0   0%
src / mysingle / cli / core / version.py write_version   0% 8 8 0   0% 2 0   0%
src / mysingle / cli / core / version.py run_git   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / core / version.py setup_parser   0% 6 6 0   100% 0 0   0%
src / mysingle / cli / core / version.py execute_interactive   0% 48 48 0   0% 14 0   0%
src / mysingle / cli / core / version.py execute   0% 44 44 0   0% 16 0   0%
src / mysingle / cli / core / version.py (no function)   100% 25 0 0   100% 0 0   100%
src / mysingle / cli / protos / __init__.py (no function)   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / protos / __main__.py get_repo_root   0% 5 5 0   0% 4 0   0%
src / mysingle / cli / protos / __main__.py show_interactive_menu   0% 30 30 0   0% 14 0   0%
src / mysingle / cli / protos / __main__.py build_parser   0% 14 14 0   100% 0 0   0%
src / mysingle / cli / protos / __main__.py main   0% 32 32 0   0% 14 0   0%
src / mysingle / cli / protos / __main__.py (no function)   0% 14 14 0   0% 2 0   0%
src / mysingle / cli / protos / commands / __init__.py (no function)   0% 2 2 0   100% 0 0   0%
src / mysingle / cli / protos / commands / generate.py ensure_file_exists   0% 2 2 0   0% 2 0   0%
src / mysingle / cli / protos / commands / generate.py buf_generate   0% 12 12 0   100% 0 0   0%
src / mysingle / cli / protos / commands / generate.py rewrite_generated_imports   0% 20 20 0   0% 12 0   0%
src / mysingle / cli / protos / commands / generate.py ensure_init_files   0% 15 15 0   0% 10 0   0%
src / mysingle / cli / protos / commands / generate.py execute   0% 8 8 0   0% 4 0   0%
src / mysingle / cli / protos / commands / generate.py execute_interactive   0% 7 7 0   0% 2 0   0%
src / mysingle / cli / protos / commands / generate.py setup_parser   0% 2 2 0   100% 0 0   0%
src / mysingle / cli / protos / commands / generate.py (no function)   0% 15 15 0   100% 0 0   0%
src / mysingle / cli / protos / commands / info.py get_current_proto_version   0% 6 6 0   0% 2 0   0%
src / mysingle / cli / protos / commands / info.py check_git_status   0% 10 10 0   100% 0 0   0%
src / mysingle / cli / protos / commands / info.py setup_parser   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / protos / commands / info.py execute   0% 16 16 0   0% 8 0   0%
src / mysingle / cli / protos / commands / info.py (no function)   0% 9 9 0   100% 0 0   0%
src / mysingle / cli / protos / commands / init.py execute   0% 68 68 0   0% 22 0   0%
src / mysingle / cli / protos / commands / init.py execute_interactive   0% 3 3 0   100% 0 0   0%
src / mysingle / cli / protos / commands / init.py setup_parser   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / protos / commands / init.py (no function)   0% 8 8 0   100% 0 0   0%
src / mysingle / cli / protos / commands / status.py discover_services   0% 20 20 0   0% 8 0   0%
src / mysingle / cli / protos / commands / status.py execute   0% 21 21 0   0% 12 0   0%
src / mysingle / cli / protos / commands / status.py execute_interactive   0% 4 4 0   100% 0 0   0%
src / mysingle / cli / protos / commands / status.py setup_parser   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / protos / commands / status.py (no function)   0% 8 8 0   100% 0 0   0%
src / mysingle / cli / protos / commands / validate.py buf_lint   0% 12 12 0   100% 0 0   0%
src / mysingle / cli / protos / commands / validate.py buf_format_check   0% 24 24 0   0% 2 0   0%
src / mysingle / cli / protos / commands / validate.py buf_breaking   0% 12 12 0   100% 0 0   0%
src / mysingle / cli / protos / commands / validate.py execute   0% 21 21 0   0% 10 0   0%
src / mysingle / cli / protos / commands / validate.py execute_interactive   0% 15 15 0   0% 6 0   0%
src / mysingle / cli / protos / commands / validate.py setup_parser   0% 5 5 0   100% 0 0   0%
src / mysingle / cli / protos / commands / validate.py (no function)   0% 12 12 0   100% 0 0   0%
src / mysingle / cli / protos / models.py ProtoConfig.from_repo_root   0% 4 4 0   0% 2 0   0%
src / mysingle / cli / protos / models.py (no function)   0% 19 19 0   100% 0 0   0%
src / mysingle / cli / protos / utils.py colorize   0% 4 4 0   0% 2 0   0%
src / mysingle / cli / protos / utils.py log   0% 7 7 0   0% 2 0   0%
src / mysingle / cli / protos / utils.py log_header   0% 6 6 0   100% 0 0   0%
src / mysingle / cli / protos / utils.py log_table   0% 13 13 0   0% 8 0   0%
src / mysingle / cli / protos / utils.py (no function)   0% 32 32 0   100% 0 0   0%
src / mysingle / cli / utils / __init__.py (no function)   100% 2 0 0   100% 0 0   100%
src / mysingle / cli / utils / console.py print_success   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py print_error   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py print_warning   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py print_info   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py print_header   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py ask_choice   0% 9 9 0   0% 4 0   0%
src / mysingle / cli / utils / console.py ask_confirm   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py ask_text   0% 1 1 0   100% 0 0   0%
src / mysingle / cli / utils / console.py create_table   0% 4 4 0   0% 2 0   0%
src / mysingle / cli / utils / console.py (no function)   100% 14 0 0   100% 0 0   100%
src / mysingle / clients / __init__.py (no function)   0% 2 2 0   100% 0 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient.__init__   0% 23 23 0   0% 12 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient._extract_user_id_from_request   0% 5 5 0   0% 2 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient._extract_correlation_id_from_request   0% 1 1 0   100% 0 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient._determine_host   0% 7 7 0   0% 4 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient._create_channel   0% 7 7 0   0% 2 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient.metadata   0% 1 1 0   100% 0 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient.close   0% 3 3 0   0% 2 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient.__aenter__   0% 1 1 0   100% 0 0   0%
src / mysingle / clients / base_grpc_client.py BaseGrpcClient.__aexit__   0% 1 1 0   100% 0 0   0%
src / mysingle / clients / base_grpc_client.py (no function)   0% 21 21 2   100% 0 0   0%
src / mysingle / constants.py (no function)   0% 20 20 0   100% 0 0   0%
src / mysingle / core / __init__.py (no function)   0% 13 13 0   100% 0 0   0%
src / mysingle / core / app_factory.py custom_generate_unique_id   0% 2 2 0   100% 0 0   0%
src / mysingle / core / app_factory.py create_lifespan   0% 3 3 0   100% 0 0   0%
src / mysingle / core / app_factory.py create_lifespan.lifespan   0% 51 51 0   0% 30 0   0%
src / mysingle / core / app_factory.py create_fastapi_app   0% 66 66 0   0% 18 0   0%
src / mysingle / core / app_factory.py (no function)   0% 19 19 2   100% 0 0   0%
src / mysingle / core / audit / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / core / audit / middleware.py AuditLoggingMiddleware.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / core / audit / middleware.py AuditLoggingMiddleware.dispatch   0% 24 24 2   0% 2 0   0%
src / mysingle / core / audit / middleware.py (no function)   0% 13 13 0   100% 0 0   0%
src / mysingle / core / audit / models.py (no function)   0% 19 19 0   100% 0 0   0%
src / mysingle / core / base / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / core / base / models.py BaseTimeDoc.set_created_at   0% 2 2 0   100% 0 0   0%
src / mysingle / core / base / models.py BaseTimeDoc.set_updated_at   0% 1 1 0   100% 0 0   0%
src / mysingle / core / base / models.py (no function)   0% 15 15 0   100% 0 0   0%
src / mysingle / core / base / schemas.py (no function)   0% 8 8 0   100% 0 0   0%
src / mysingle / core / config.py CommonSettings.all_cors_origins   0% 7 7 0   0% 6 0   0%
src / mysingle / core / config.py CommonSettings._set_default_emails_from   0% 3 3 0   0% 2 0   0%
src / mysingle / core / config.py CommonSettings.emails_enabled   0% 1 1 0   100% 0 0   0%
src / mysingle / core / config.py get_settings   0% 1 1 0   100% 0 0   0%
src / mysingle / core / config.py get_environment   0% 1 1 0   100% 0 0   0%
src / mysingle / core / config.py is_production   0% 1 1 0   100% 0 0   0%
src / mysingle / core / config.py is_development   0% 2 2 0   100% 0 0   0%
src / mysingle / core / config.py (no function)   0% 91 91 0   100% 0 0   0%
src / mysingle / core / db.py init_mongo   0% 11 11 0   0% 2 0   0%
src / mysingle / core / db.py get_mongodb_url   0% 6 6 0   100% 0 0   0%
src / mysingle / core / db.py get_database_name   0% 1 1 0   100% 0 0   0%
src / mysingle / core / db.py build_mongodb_url   0% 18 18 0   0% 8 0   0%
src / mysingle / core / db.py add_query_params_to_url   0% 8 8 0   0% 2 0   0%
src / mysingle / core / db.py (no function)   0% 11 11 0   100% 0 0   0%
src / mysingle / core / email / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / core / email / email_gen.py generate_verification_email   0% 6 6 0   100% 0 0   0%
src / mysingle / core / email / email_gen.py generate_reset_password_email   0% 5 5 0   100% 0 0   0%
src / mysingle / core / email / email_gen.py generate_new_account_email   0% 5 5 0   100% 0 0   0%
src / mysingle / core / email / email_gen.py generate_password_reset_confirmation_email   0% 4 4 0   100% 0 0   0%
src / mysingle / core / email / email_gen.py (no function)   0% 10 10 0   100% 0 0   0%
src / mysingle / core / email / email_sending.py render_email_template   0% 3 3 0   100% 0 0   0%
src / mysingle / core / email / email_sending.py send_email   0% 13 13 0   0% 8 0   0%
src / mysingle / core / email / email_sending.py (no function)   0% 14 14 0   100% 0 0   0%
src / mysingle / core / email / email_token.py generate_email_token   0% 2 2 0   100% 0 0   0%
src / mysingle / core / email / email_token.py verify_email_token   0% 5 5 0   100% 0 0   0%
src / mysingle / core / email / email_token.py (no function)   0% 7 7 0   100% 0 0   0%
src / mysingle / core / health / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / core / health / checker.py HealthStatus.__init__   0% 4 4 0   100% 0 0   0%
src / mysingle / core / health / checker.py HealthStatus.add_check   0% 1 1 0   100% 0 0   0%
src / mysingle / core / health / checker.py HealthStatus.get_health   0% 15 15 0   0% 6 0   0%
src / mysingle / core / health / checker.py get_health_checker   0% 3 3 0   0% 2 0   0%
src / mysingle / core / health / checker.py basic_health_check   0% 1 1 0   100% 0 0   0%
src / mysingle / core / health / checker.py database_health_check   0% 4 4 0   100% 0 0   0%
src / mysingle / core / health / checker.py (no function)   0% 11 11 0   100% 0 0   0%
src / mysingle / core / health / router.py get_health_checker   0% 1 1 0   100% 0 0   0%
src / mysingle / core / health / router.py basic_health_check   0% 1 1 0   100% 0 0   0%
src / mysingle / core / health / router.py database_health_check   0% 4 4 0   100% 0 0   0%
src / mysingle / core / health / router.py create_health_router   0% 13 13 0   0% 2 0   0%
src / mysingle / core / health / router.py create_health_router.health_check   0% 2 2 0   100% 0 0   0%
src / mysingle / core / health / router.py create_health_router.liveness_probe   0% 1 1 0   100% 0 0   0%
src / mysingle / core / health / router.py create_health_router.readiness_probe   0% 4 4 0   0% 2 0   0%
src / mysingle / core / health / router.py (no function)   0% 10 10 0   100% 0 0   0%
src / mysingle / core / health / schemas.py (no function)   0% 10 10 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.__init__   0% 7 7 0   0% 2 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.close   0% 3 3 0   0% 2 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.__aenter__   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.__aexit__   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.get   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.post   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.put   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.patch   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.delete   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClient.request   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py ServiceHttpClientManager.get_client   0% 8 8 0   0% 4 0   0%
src / mysingle / core / http_client.py ServiceHttpClientManager._build_service_url   0% 6 6 0   0% 2 0   0%
src / mysingle / core / http_client.py ServiceHttpClientManager.close_all   0% 8 8 0   0% 2 0   0%
src / mysingle / core / http_client.py create_service_http_client   0% 6 6 0   0% 4 0   0%
src / mysingle / core / http_client.py get_service_http_client   0% 1 1 0   100% 0 0   0%
src / mysingle / core / http_client.py http_client_lifespan   0% 5 5 0   100% 0 0   0%
src / mysingle / core / http_client.py make_service_request   0% 5 5 0   0% 2 0   0%
src / mysingle / core / http_client.py (no function)   0% 36 36 0   100% 0 0   0%
src / mysingle / core / logging.py CorrelationIdProcessor.__call__   0% 4 4 0   0% 2 0   0%
src / mysingle / core / logging.py ServiceNameProcessor.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py ServiceNameProcessor.__call__   0% 2 2 0   100% 0 0   0%
src / mysingle / core / logging.py UserContextProcessor.__call__   0% 7 7 0   0% 4 0   0%
src / mysingle / core / logging.py configure_structured_logging   0% 11 11 0   0% 6 0   0%
src / mysingle / core / logging.py get_structured_logger   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py set_correlation_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py set_user_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py set_request_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py get_correlation_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py get_user_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py get_request_id   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py clear_logging_context   0% 3 3 0   100% 0 0   0%
src / mysingle / core / logging.py log_user_action   0% 10 10 0   0% 6 0   0%
src / mysingle / core / logging.py log_service_call   0% 8 8 0   0% 4 0   0%
src / mysingle / core / logging.py log_database_operation   0% 8 8 0   0% 4 0   0%
src / mysingle / core / logging.py setup_traditional_logging   0% 30 30 0   0% 4 0   0%
src / mysingle / core / logging.py _configure_external_loggers   0% 3 3 0   0% 2 0   0%
src / mysingle / core / logging.py setup_logging   0% 13 13 0   0% 8 0   0%
src / mysingle / core / logging.py setup_logging_legacy   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py configure_logging_for_service   0% 1 1 0   100% 0 0   0%
src / mysingle / core / logging.py (no function)   0% 38 38 0   100% 0 0   0%
src / mysingle / core / metrics / __init__.py (no function)   0% 4 4 0   100% 0 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.__init__   0% 9 9 0   100% 0 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector._start_cleanup_task   0% 5 5 0   0% 2 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector._periodic_cleanup   0% 8 8 0   100% 0 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector._cleanup_old_metrics   0% 10 10 0   0% 8 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.record_request   0% 14 14 0   0% 6 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.record_request_sync   0% 17 17 0   0% 6 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector._calculate_percentiles   0% 4 4 0   0% 2 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector._calculate_histogram   0% 10 10 0   0% 4 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.get_metrics   0% 13 13 0   0% 6 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.get_prometheus_metrics   0% 14 14 0   0% 8 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.reset_metrics   0% 4 4 0   100% 0 0   0%
src / mysingle / core / metrics / collector.py MetricsCollector.__del__   0% 2 2 0   0% 2 0   0%
src / mysingle / core / metrics / collector.py (no function)   0% 36 36 0   100% 0 0   0%
src / mysingle / core / metrics / middleware.py get_metrics_collector   0% 3 3 0   0% 2 0   0%
src / mysingle / core / metrics / middleware.py MetricsMiddleware.__init__   0% 5 5 0   100% 0 0   0%
src / mysingle / core / metrics / middleware.py MetricsMiddleware._should_track_request   0% 4 4 0   0% 2 0   0%
src / mysingle / core / metrics / middleware.py MetricsMiddleware._extract_route_pattern   0% 15 15 0   0% 4 0   0%
src / mysingle / core / metrics / middleware.py MetricsMiddleware.dispatch   0% 21 21 0   0% 4 0   0%
src / mysingle / core / metrics / middleware.py create_metrics_middleware   0% 8 8 0   100% 0 0   0%
src / mysingle / core / metrics / middleware.py (no function)   0% 15 15 0   100% 0 0   0%
src / mysingle / core / metrics / router.py create_metrics_router   0% 16 16 0   100% 0 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_metrics   0% 8 8 0   0% 2 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_json_metrics   0% 5 5 0   100% 0 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_prometheus_metrics   0% 6 6 0   100% 0 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_metrics_health   0% 14 14 0   0% 4 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_metrics_summary   0% 6 6 0   100% 0 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.get_route_metrics   0% 10 10 0   0% 2 0   0%
src / mysingle / core / metrics / router.py create_metrics_router.reset_metrics   0% 7 7 0   100% 0 0   0%
src / mysingle / core / metrics / router.py (no function)   0% 7 7 0   100% 0 0   0%
src / mysingle / core / middleware.py LoggingMiddleware.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / core / middleware.py LoggingMiddleware.dispatch   0% 21 21 0   0% 2 0   0%
src / mysingle / core / middleware.py LoggingMiddleware._get_client_ip   0% 7 7 0   0% 4 0   0%
src / mysingle / core / middleware.py HealthCheckLoggingFilter.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / core / middleware.py HealthCheckLoggingFilter.should_log_request   0% 6 6 0   0% 4 0   0%
src / mysingle / core / middleware.py TimingLogMiddleware.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / core / middleware.py TimingLogMiddleware.dispatch   0% 8 8 0   0% 4 0   0%
src / mysingle / core / middleware.py add_logging_middleware   0% 3 3 0   0% 2 0   0%
src / mysingle / core / middleware.py setup_request_id_dependency   0% 4 4 0   100% 0 0   0%
src / mysingle / core / middleware.py setup_request_id_dependency.get_request_context   0% 1 1 0   100% 0 0   0%
src / mysingle / core / middleware.py (no function)   0% 18 18 0   100% 0 0   0%
src / mysingle / core / service_types.py ServiceConfig.__post_init__   0% 12 12 0   0% 4 0   0%
src / mysingle / core / service_types.py create_service_config   0% 1 1 0   100% 0 0   0%
src / mysingle / core / service_types.py parse_service_type   0% 4 4 0   100% 0 0   0%
src / mysingle / core / service_types.py (no function)   0% 28 28 0   100% 0 0   0%
src / mysingle / database / __init__.py (no function)   0% 2 2 0   100% 0 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.duckdb_conn   0% 5 5 0   0% 4 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.__enter__   0% 2 2 0   100% 0 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.__exit__   0% 1 1 0   100% 0 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.connect   0% 15 15 0   0% 4 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.close   0% 7 7 0   0% 2 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager._create_tables   0% 1 1 0   100% 0 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager._ensure_connected   0% 2 2 0   0% 2 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager._make_json_serializable   0% 20 20 0   0% 12 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.store_cache_data   0% 14 14 0   0% 2 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager.get_cache_data   0% 14 14 0   0% 4 0   0%
src / mysingle / database / duckdb_manager.py BaseDuckDBManager._create_cache_table   0% 6 6 0   0% 2 0   0%
src / mysingle / database / duckdb_manager.py (no function)   0% 22 22 0   100% 0 0   0%
src / mysingle / dsl / __init__.py (no function)   0% 8 8 0   100% 0 0   0%
src / mysingle / dsl / errors.py SecurityViolation.__init__   0% 4 4 0   100% 0 0   0%
src / mysingle / dsl / errors.py SecurityViolation.__repr__   0% 2 2 0   100% 0 0   0%
src / mysingle / dsl / errors.py SecurityViolation.to_dict   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / errors.py (no function)   0% 18 18 0   100% 0 0   0%
src / mysingle / dsl / executor.py DSLExecutor.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / executor.py DSLExecutor.execute   0% 21 21 0   0% 6 0   0%
src / mysingle / dsl / executor.py DSLExecutor.compile_and_execute   0% 2 2 0   100% 0 0   0%
src / mysingle / dsl / executor.py DSLExecutor._build_namespace   0% 6 6 0   100% 0 0   0%
src / mysingle / dsl / executor.py DSLExecutor._resource_limits   0% 32 32 0   0% 6 0   0%
src / mysingle / dsl / executor.py DSLExecutor._resource_limits.timeout_handler   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / executor.py (no function)   0% 20 20 0   100% 0 0   0%
src / mysingle / dsl / limits.py get_user_daily_limit   0% 3 3 0   0% 2 0   0%
src / mysingle / dsl / limits.py get_user_max_indicators   0% 3 3 0   0% 2 0   0%
src / mysingle / dsl / limits.py get_user_max_private_indicators   0% 3 3 0   0% 2 0   0%
src / mysingle / dsl / limits.py (no function)   0% 25 25 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.parse   0% 18 18 0   0% 8 0   0%
src / mysingle / dsl / parser.py DSLParser.load   0% 4 4 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.get_code_hash   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.get_safe_globals   0% 4 4 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.get_safe_globals._getitem_   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.get_safe_globals._getiter_   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser.get_safe_globals._write_   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py DSLParser._get_safe_builtins   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / parser.py (no function)   0% 15 15 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py SMA   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py EMA   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py WMA   0% 2 2 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py crossover   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py crossunder   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py highest   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py lowest   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py change   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py pct_change   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py stdev   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py bbands   0% 3 3 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py RSI   0% 10 10 0   0% 2 0   0%
src / mysingle / dsl / stdlib.py atr   0% 5 5 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py generate_signal   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py entry_exit_signals   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py signal_filter   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py get_stdlib_functions   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / stdlib.py (no function)   0% 19 19 0   100% 0 0   0%
src / mysingle / dsl / validator.py SecurityValidator.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / dsl / validator.py SecurityValidator.analyze   0% 20 20 0   0% 14 0   0%
src / mysingle / dsl / validator.py SecurityValidator._check_import   0% 5 5 0   0% 4 0   0%
src / mysingle / dsl / validator.py SecurityValidator._check_import_from   0% 4 4 0   0% 2 0   0%
src / mysingle / dsl / validator.py SecurityValidator._check_call   0% 6 6 0   0% 4 0   0%
src / mysingle / dsl / validator.py SecurityValidator._check_attribute   0% 4 4 0   0% 2 0   0%
src / mysingle / dsl / validator.py SecurityValidator.validate   0% 3 3 0   100% 0 0   0%
src / mysingle / dsl / validator.py (no function)   0% 13 13 0   100% 0 0   0%
src / mysingle / grpc / __init__.py (no function)   0% 2 2 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py AuthInterceptor.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py AuthInterceptor.intercept_service   0% 15 15 0   0% 6 0   0%
src / mysingle / grpc / interceptors.py AuthInterceptor.intercept_service.auth_abort_wrapper   0% 1 1 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py LoggingInterceptor.intercept_service   0% 16 16 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py MetadataInterceptor.__init__   0% 1 1 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py MetadataInterceptor.intercept_service   0% 12 12 0   0% 4 0   0%
src / mysingle / grpc / interceptors.py ClientAuthInterceptor.__init__   0% 2 2 0   100% 0 0   0%
src / mysingle / grpc / interceptors.py ClientAuthInterceptor.intercept_unary_unary   0% 10 10 0   0% 2 0   0%
src / mysingle / grpc / interceptors.py (no function)   0% 18 18 0   100% 0 0   0%
src / mysingle / protos / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / common / __init__.py (no function)   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / common / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / common / error_pb2.py (no function)   0% 25 25 0   0% 2 0   0%
src / mysingle / protos / common / error_pb2_grpc.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / common / metadata_pb2.py (no function)   0% 17 17 0   0% 2 0   0%
src / mysingle / protos / common / metadata_pb2_grpc.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / common / pagination_pb2.py (no function)   0% 19 19 0   0% 2 0   0%
src / mysingle / protos / common / pagination_pb2_grpc.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / __init__.py (no function)   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / backtest / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / backtest / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2.py (no function)   0% 61 61 0   0% 2 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceStub.__init__   0% 7 7 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.ExecuteBacktest   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.GetBacktestResult   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.StreamBacktestProgress   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.GetBacktestMetrics   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.ListBacktests   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.CancelBacktest   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestServiceServicer.HealthCheck   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py add_BacktestServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.ExecuteBacktest   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.GetBacktestResult   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.StreamBacktestProgress   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.GetBacktestMetrics   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.ListBacktests   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.CancelBacktest   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py BacktestService.HealthCheck   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / backtest / v1 / backtest_service_pb2_grpc.py (no function)   0% 28 28 0   100% 0 0   0%
src / mysingle / protos / services / genai / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / genai / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / genai / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / genai / v1 / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / genai / v1 / chatops_pb2.py (no function)   0% 47 47 0   0% 2 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsServiceStub.__init__   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsServiceServicer.CreateSession   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsServiceServicer.ChatStream   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsServiceServicer.GetSessionHistory   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsServiceServicer.CloseSession   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py add_ChatOpsServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsService.CreateSession   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsService.ChatStream   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsService.GetSessionHistory   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py ChatOpsService.CloseSession   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / chatops_pb2_grpc.py (no function)   0% 19 19 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2.py (no function)   0% 37 37 0   0% 2 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorServiceStub.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorServiceServicer.ValidateDSL   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorServiceServicer.AutocompleteDSL   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorServiceServicer.GetSyntaxHelp   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py add_DSLValidatorServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorService.ValidateDSL   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorService.AutocompleteDSL   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py DSLValidatorService.GetSyntaxHelp   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / dsl_validator_pb2_grpc.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2.py (no function)   0% 33 33 0   0% 2 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterServiceStub.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterServiceServicer.PreviewConversion   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterServiceServicer.ExecuteConversion   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterServiceServicer.CheckConvertibility   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py add_IRConverterServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterService.PreviewConversion   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterService.ExecuteConversion   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py IRConverterService.CheckConvertibility   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / ir_converter_pb2_grpc.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2.py (no function)   0% 39 39 0   0% 2 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeServiceStub.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeServiceServicer.GenerateReport   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeServiceServicer.GetReportStatus   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeServiceServicer.GenerateComparisonReport   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py add_NarrativeServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeService.GenerateReport   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeService.GetReportStatus   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py NarrativeService.GenerateComparisonReport   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / narrative_pb2_grpc.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2.py (no function)   0% 35 35 0   0% 2 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderServiceStub.__init__   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderServiceServicer.GenerateStrategy   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderServiceServicer.ValidateProposal   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderServiceServicer.CustomizeTemplate   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py add_StrategyBuilderServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderService.GenerateStrategy   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderService.ValidateProposal   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py StrategyBuilderService.CustomizeTemplate   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / genai / v1 / strategy_builder_pb2_grpc.py (no function)   0% 16 16 0   100% 0 0   0%
src / mysingle / protos / services / iam / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / iam / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / iam / v1 / iam_service_pb2.py (no function)   0% 13 13 0   0% 2 0   0%
src / mysingle / protos / services / iam / v1 / iam_service_pb2_grpc.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / indicator / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / indicator / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2.py (no function)   0% 63 63 0   0% 2 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceStub.__init__   0% 5 5 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceServicer.GetIndicatorMetadata   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceServicer.BatchGetIndicatorMetadata   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceServicer.CalculateIndicator   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceServicer.BatchCalculateIndicators   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorServiceServicer.HealthCheck   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py add_IndicatorServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorService.GetIndicatorMetadata   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorService.BatchGetIndicatorMetadata   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorService.CalculateIndicator   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorService.BatchCalculateIndicators   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py IndicatorService.HealthCheck   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / indicator / v1 / indicator_service_pb2_grpc.py (no function)   0% 22 22 0   100% 0 0   0%
src / mysingle / protos / services / market_data / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / market_data / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2.py (no function)   0% 265 265 0   0% 2 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceStub.__init__   0% 53 53 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.HealthCheck   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetServiceInfo   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCacheStats   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetDailyOHLCV   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetIntradayOHLCV   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetWeeklyOHLCV   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetMonthlyOHLCV   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetQuote   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.SearchSymbols   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.BatchGetDailyOHLCV   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.BatchGetQuote   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetForexDaily   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetForexIntraday   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetForexWeekly   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetForexMonthly   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetForexRate   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.ListForexPairs   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCryptoDaily   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCryptoIntraday   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCryptoWeekly   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCryptoMonthly   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.ListCryptoSymbols   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.BatchCryptoQuote   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCompanyOverview   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetIncomeStatement   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetBalanceSheet   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCashFlow   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetEarnings   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetEarningsCalendar   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetIPOCalendar   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetETFProfile   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetDividends   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetSplits   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetNews   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetTopGainersLosers   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetAnalystRatings   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetInsiderTransactions   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetEarningsTranscript   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetGDP   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetGDPPerCapita   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetInflation   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCPI   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetFederalFundsRate   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetTreasuryYield   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetRetailSales   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetDurables   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetUnemployment   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetNonfarmPayroll   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetCommodity   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetAllCommodities   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetOptionsChain   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetHistoricalOptions   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataServiceServicer.GetOptionContract   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py add_MarketDataServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.HealthCheck   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetServiceInfo   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCacheStats   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetDailyOHLCV   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetIntradayOHLCV   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetWeeklyOHLCV   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetMonthlyOHLCV   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetQuote   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.SearchSymbols   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.BatchGetDailyOHLCV   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.BatchGetQuote   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetForexDaily   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetForexIntraday   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetForexWeekly   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetForexMonthly   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetForexRate   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.ListForexPairs   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCryptoDaily   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCryptoIntraday   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCryptoWeekly   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCryptoMonthly   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.ListCryptoSymbols   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.BatchCryptoQuote   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCompanyOverview   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetIncomeStatement   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetBalanceSheet   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCashFlow   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetEarnings   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetEarningsCalendar   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetIPOCalendar   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetETFProfile   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetDividends   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetSplits   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetNews   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetTopGainersLosers   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetAnalystRatings   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetInsiderTransactions   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetEarningsTranscript   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetGDP   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetGDPPerCapita   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetInflation   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCPI   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetFederalFundsRate   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetTreasuryYield   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetRetailSales   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetDurables   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetUnemployment   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetNonfarmPayroll   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetCommodity   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetAllCommodities   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetOptionsChain   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetHistoricalOptions   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py MarketDataService.GetOptionContract   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / market_data / v1 / market_data_service_pb2_grpc.py (no function)   0% 166 166 0   100% 0 0   0%
src / mysingle / protos / services / ml / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / ml / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / ml / v1 / ml_service_pb2.py (no function)   0% 97 97 0   0% 2 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceStub.__init__   0% 7 7 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.OptimizeParameters   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.AnalyzeWalkForward   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.PredictSignal   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.PredictSignalsBatch   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.StoreFeatures   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.HealthCheck   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLServiceServicer.AnalyzeMLBacktestPerformance   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py add_MLServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.OptimizeParameters   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.AnalyzeWalkForward   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.PredictSignal   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.PredictSignalsBatch   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.StoreFeatures   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.HealthCheck   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py MLService.AnalyzeMLBacktestPerformance   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / ml / v1 / ml_service_pb2_grpc.py (no function)   0% 28 28 0   100% 0 0   0%
src / mysingle / protos / services / strategy / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / strategy / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / strategy / v1 / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / strategy / v1 / __pycache__ / __init__.py (no function)   100% 0 0 0   100% 0 0   100%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2.py (no function)   0% 79 79 0   0% 2 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceStub.__init__   0% 13 13 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.GetStrategyVersion   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.BatchGetStrategyVersions   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.HealthCheck   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ValidateStrategyIR   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.GetStrategyTemplate   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ListStrategyTemplates   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.BatchGetStrategies   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ListUserStrategies   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ArchiveStrategy   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.GetStrategy   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ListStrategies   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.ValidateStrategy   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyServiceServicer.GetPortfolioSummary   0% 3 3 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py add_StrategyServiceServicer_to_server   0% 4 4 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.GetStrategyVersion   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.BatchGetStrategyVersions   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.HealthCheck   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ValidateStrategyIR   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.GetStrategyTemplate   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ListStrategyTemplates   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.BatchGetStrategies   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ListUserStrategies   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ArchiveStrategy   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.GetStrategy   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ListStrategies   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.ValidateStrategy   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py StrategyService.GetPortfolioSummary   0% 1 1 0   100% 0 0   0%
src / mysingle / protos / services / strategy / v1 / strategy_service_pb2_grpc.py (no function)   0% 46 46 0   100% 0 0   0%
Total     2% 6410 6276 38   3% 1048 8   2%

No items found using the specified filter.