Coverage report: 19%

Files Functions Classes

coverage.py v7.11.3, created at 2025-11-14 11:27 +0100

File function statements missing excluded coverage
src/alprina_cli/__init__.py (no function) 5 0 0 100%
src/alprina_cli/acp_server.py run_acp 17 17 0 0%
src/alprina_cli/acp_server.py run_acp.AlprinaACPServer.handle_request 20 20 0 0%
src/alprina_cli/acp_server.py run_acp.AlprinaACPServer._handle_scan 12 12 0 0%
src/alprina_cli/acp_server.py run_acp.AlprinaACPServer._handle_recon 7 7 0 0%
src/alprina_cli/acp_server.py run_acp.AlprinaACPServer._handle_mitigate 7 7 0 0%
src/alprina_cli/acp_server.py run_acp.AlprinaACPServer._handle_analyze_file 10 10 0 0%
src/alprina_cli/acp_server.py (no function) 4 0 0 100%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.__init__ 5 5 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._initialize_agents 6 6 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.is_available 1 1 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.run_code_audit 10 10 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.run_web_reconnaissance 10 10 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.run_vulnerability_scan 11 11 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.suggest_mitigation 11 11 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.explain_vulnerability 9 9 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.get_security_advice 9 9 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._fallback_code_audit 2 2 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._fallback_web_recon 2 2 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._fallback_vuln_scan 2 2 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._fallback_mitigation 2 2 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge._fallback_explanation 1 1 0 0%
src/alprina_cli/agent_bridge.py SecurityAgentBridge.get_available_tools 2 2 0 0%
src/alprina_cli/agent_bridge.py (no function) 28 3 0 89%
src/alprina_cli/agent_coordinator.py AgentCoordinator.__init__ 3 3 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.execute_chain 24 24 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator._get_chain_definition 2 2 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator._execute_agent_step 14 14 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator._merge_context 15 15 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator._track_vulnerability 6 6 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator._generate_vuln_id 3 3 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.update_vulnerability_state 9 9 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.get_vulnerabilities_by_state 1 1 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.get_vulnerability_metrics 18 18 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.schedule_follow_up_scan 8 8 0 0%
src/alprina_cli/agent_coordinator.py AgentCoordinator.recommend_chain 10 10 0 0%
src/alprina_cli/agent_coordinator.py get_coordinator 3 3 0 0%
src/alprina_cli/agent_coordinator.py (no function) 35 35 0 0%
src/alprina_cli/agents/__init__.py (no function) 2 0 0 100%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/android_sast.py AndroidSastWrapper.scan 7 7 0 0%
src/alprina_cli/agents/android_sast.py run_android_sast_scan 1 1 0 0%
src/alprina_cli/agents/android_sast.py (no function) 19 2 0 89%
src/alprina_cli/agents/api_security_sentinel/__init__.py (no function) 3 3 0 0%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/blue_teamer.py BlueTeamerWrapper.scan 7 7 0 0%
src/alprina_cli/agents/blue_teamer.py run_blue_team_scan 1 1 0 0%
src/alprina_cli/agents/blue_teamer.py (no function) 19 2 0 89%
src/alprina_cli/agents/cicd_guardian/__init__.py (no function) 2 0 0 100%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent.__init__ 8 8 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent.analyze_directory 18 18 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent.analyze_pipeline_file 21 21 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._discover_pipeline_files 18 18 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._analyze_github_actions 28 28 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._check_actions_against_cve_database 25 25 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._parse_action_reference 9 9 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._detect_public_ppe 32 32 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._executes_pr_code 14 14 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._unsafe_pr_checkout 11 11 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._accesses_secrets 19 19 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._env_uses_secrets 6 6 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._with_uses_secrets 6 6 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._get_dangerous_pattern 11 11 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._analyze_gitlab_ci 10 10 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._analyze_jenkinsfile 7 7 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._calculate_risk_score 5 5 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PipelineGuardianAgent._initialize_github_cve_db 1 1 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PoisonedPipelineDetector.detect 6 6 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PoisonedPipelineDetector._detect_untrusted_triggers 2 2 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PoisonedPipelineDetector._detect_insecure_script_references 2 2 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py GitHubVulnerabilityScanner.__init__ 1 1 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py GitHubVulnerabilityScanner.check_action_vulnerability 9 9 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py SecretsDetector.scan 10 10 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py SecretsDetector.extract_secrets 8 8 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py PermissionsAnalyzer.analyze 6 6 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py CicdGuardianAgentWrapper.__init__ 13 13 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py CicdGuardianAgentWrapper.analyze 22 22 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py CicdGuardianAgentWrapper._enhance_vulnerabilities_with_llm 21 21 0 0%
src/alprina_cli/agents/cicd_guardian/cicd_guardian.py (no function) 71 4 0 94%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEEntry.to_dict 1 1 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEEntry.matches_action 7 7 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase.__init__ 12 12 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase._load_cache 15 15 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase._save_cache 7 7 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase._bootstrap_known_cves 5 5 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase.fetch_latest_cves 22 22 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase._fetch_github_advisories 3 3 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase._fetch_osv_vulnerabilities 10 10 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase.search 11 11 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase.get_cve 1 1 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py CVEDatabase.get_statistics 6 6 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py get_cve_database 3 3 0 0%
src/alprina_cli/agents/cicd_guardian/cve_database.py (no function) 30 3 0 90%
src/alprina_cli/agents/dfir.py DFIRWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/dfir.py DFIRWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/dfir.py DFIRWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/dfir.py DFIRWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/dfir.py DFIRWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/dfir.py DFIRWrapper.scan 7 7 0 0%
src/alprina_cli/agents/dfir.py run_dfir_scan 1 1 0 0%
src/alprina_cli/agents/dfir.py (no function) 19 2 0 89%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/guardrails.py GuardrailsWrapper.scan 7 7 0 0%
src/alprina_cli/agents/guardrails.py run_guardrails_scan 1 1 0 0%
src/alprina_cli/agents/guardrails.py (no function) 19 2 0 89%
src/alprina_cli/agents/llm_config.py LLMConfig.select_model 1 1 0 0%
src/alprina_cli/agents/llm_config.py LLMConfig.estimate_cost 8 8 0 0%
src/alprina_cli/agents/llm_config.py LLMConfig.should_enhance 6 6 0 0%
src/alprina_cli/agents/llm_config.py UsageTracker.__init__ 4 4 0 0%
src/alprina_cli/agents/llm_config.py UsageTracker.record_request 7 7 0 0%
src/alprina_cli/agents/llm_config.py UsageTracker.get_summary 1 1 0 0%
src/alprina_cli/agents/llm_config.py UsageTracker.reset 4 4 0 0%
src/alprina_cli/agents/llm_config.py (no function) 26 0 0 100%
src/alprina_cli/agents/llm_enhancer.py EnhancedVulnerability.to_dict 1 1 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer.__init__ 8 8 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer.enhance_vulnerability 12 12 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer._build_prompt 1 1 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer._get_code_context 8 8 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer._extract_section 5 5 0 0%
src/alprina_cli/agents/llm_enhancer.py LLMEnhancer._extract_code_block 5 5 0 0%
src/alprina_cli/agents/llm_enhancer.py enhance_if_available 7 7 0 0%
src/alprina_cli/agents/llm_enhancer.py (no function) 30 3 0 90%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent.__init__ 6 6 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent.scan_prompt 27 27 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent.scan_output 16 16 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_prompt_injection 6 6 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_jailbreak 7 7 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_pii 6 6 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_harmful_content 6 6 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_sensitive_data 8 8 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._detect_hallucination_indicators 9 9 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._redact 3 3 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent._get_timestamp 2 2 0 0%
src/alprina_cli/agents/llm_security.py LLMSecurityAgent.get_recommendations 1 1 0 0%
src/alprina_cli/agents/llm_security.py run_llm_security_scan 6 6 0 0%
src/alprina_cli/agents/llm_security.py (no function) 18 18 0 0%
src/alprina_cli/agents/mail.py MailWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/mail.py MailWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/mail.py MailWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/mail.py MailWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/mail.py MailWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/mail.py MailWrapper.scan 7 7 0 0%
src/alprina_cli/agents/mail.py run_mail_scan 1 1 0 0%
src/alprina_cli/agents/mail.py (no function) 19 2 0 89%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/memory_analysis.py MemoryAnalysisWrapper.scan 7 7 0 0%
src/alprina_cli/agents/memory_analysis.py run_memory_analysis_scan 1 1 0 0%
src/alprina_cli/agents/memory_analysis.py (no function) 19 2 0 89%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/network_analyzer.py NetworkAnalyzerWrapper.scan 7 7 0 0%
src/alprina_cli/agents/network_analyzer.py run_network_analyzer_scan 1 1 0 0%
src/alprina_cli/agents/network_analyzer.py (no function) 19 2 0 89%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper._scan_async 14 14 0 0%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper._mock_scan 5 5 0 0%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper._extract_attack_scenario 8 8 0 0%
src/alprina_cli/agents/red_teamer.py RedTeamerAgentWrapper.scan 7 7 0 0%
src/alprina_cli/agents/red_teamer.py run_red_team_scan 1 1 0 0%
src/alprina_cli/agents/red_teamer.py (no function) 20 2 0 90%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/replay_attack.py ReplayAttackWrapper.scan 7 7 0 0%
src/alprina_cli/agents/replay_attack.py run_replay_attack_scan 1 1 0 0%
src/alprina_cli/agents/replay_attack.py (no function) 19 2 0 89%
src/alprina_cli/agents/retester.py RetesterWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/retester.py RetesterWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/retester.py RetesterWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/retester.py RetesterWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/retester.py RetesterWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/retester.py RetesterWrapper.scan 7 7 0 0%
src/alprina_cli/agents/retester.py run_retester_scan 1 1 0 0%
src/alprina_cli/agents/retester.py (no function) 19 2 0 89%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/reverse_engineer.py ReverseEngineerWrapper.scan 7 7 0 0%
src/alprina_cli/agents/reverse_engineer.py run_reverse_engineer_scan 1 1 0 0%
src/alprina_cli/agents/reverse_engineer.py (no function) 19 2 0 89%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/subghz_sdr.py SubghzSdrWrapper.scan 7 7 0 0%
src/alprina_cli/agents/subghz_sdr.py run_subghz_sdr_scan 1 1 0 0%
src/alprina_cli/agents/subghz_sdr.py (no function) 19 2 0 89%
src/alprina_cli/agents/web3_auditor/__init__.py (no function) 2 0 0 100%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer.__init__ 3 3 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer.analyze_contracts 12 12 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._parse_contract 14 14 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._extract_functions 7 7 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._extract_external_calls 14 14 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._build_dependency_graph 7 7 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._detect_cross_contract_reentrancy 10 10 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._detect_upgrade_vulnerabilities 13 13 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._detect_delegatecall_issues 11 11 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._detect_interface_trust_issues 6 6 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._identify_attack_chains 7 7 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._has_state_change_pattern 2 2 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._convert_to_standard_format 11 11 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer._get_remediation 2 2 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py CrossContractAnalyzer.visualize_dependency_graph 10 10 0 0%
src/alprina_cli/agents/web3_auditor/cross_contract_analyzer.py (no function) 53 15 0 72%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor.__init__ 2 2 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor.assess_economic_risks 12 12 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._detect_flash_loan_vulnerabilities 20 20 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._detect_price_oracle_risks 15 15 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._detect_liquidity_drain_risks 15 15 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._detect_governance_attacks 15 15 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._llm_economic_analysis 13 13 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._simulate_llm_analysis 8 8 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._parse_llm_response 40 40 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._initialize_risk_patterns 1 1 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py DeFiRiskAssessor._initialize_llm_client 1 1 0 0%
src/alprina_cli/agents/web3_auditor/defi_risk_assessor.py (no function) 28 0 0 100%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator.__init__ 4 4 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator.calculate_impact 15 15 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._estimate_tvl 7 7 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._get_protocol_type 3 3 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._get_base_impact 4 4 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._calculate_likelihood 5 5 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._calculate_exploitability 2 2 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._calculate_loss_range 11 11 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._calculate_risk_score 2 2 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._categorize_impact 9 9 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._get_time_to_exploit 11 11 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._get_attack_complexity 8 8 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._find_historical_exploit 1 1 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._estimate_remediation_cost 2 2 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._calculate_confidence 9 9 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator._initialize_exploit_database 1 1 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py EconomicImpactCalculator.format_impact_report 1 1 0 0%
src/alprina_cli/agents/web3_auditor/economic_impact_calculator.py (no function) 30 0 0 100%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimization.__post_init__ 6 6 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer.__init__ 1 1 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer.analyze_contract 13 13 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_storage_optimization 16 16 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_redundant_operations 4 4 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_loop_optimization 5 5 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_visibility_optimization 8 8 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_data_type_optimization 3 3 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_caching_opportunities 5 5 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_short_circuit_optimization 3 3 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_unchecked_math 3 3 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_immutable_optimization 20 20 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._detect_constant_optimization 9 9 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._get_type_size 13 13 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer._extract_function_name 6 6 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py GasOptimizationAnalyzer.generate_report 11 11 0 0%
src/alprina_cli/agents/web3_auditor/gas_optimizer.py (no function) 42 0 0 100%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector.__init__ 2 2 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector.analyze_contract 8 8 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._extract_functions 26 26 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._detect_frontrunning 9 9 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._detect_sandwich_attacks 16 16 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._detect_liquidation_mev 13 13 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._detect_timestamp_manipulation 9 9 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._has_oracle_update_and_use 3 3 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._has_price_affecting_public_change 3 3 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._convert_to_standard_format 9 9 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py MEVDetector._get_remediation 2 2 0 0%
src/alprina_cli/agents/web3_auditor/mev_detector.py (no function) 42 14 0 67%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner.__init__ 2 2 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner.scan_blockchain_context 17 17 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner.get_chain_vulnerabilities 6 6 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner.analyze_cross_chain_bridge 14 14 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._initialize_chain_profiles 1 1 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._initialize_chain_patterns 1 1 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._parse_chain_type 2 2 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._get_pattern_description 2 2 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._get_pattern_severity 2 2 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._analyze_cross_chain_risks 9 9 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._analyze_economic_impact_factors 13 13 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py MultiChainScanner._assess_bridge_economic_risks 8 8 0 0%
src/alprina_cli/agents/web3_auditor/multi_chain_scanner.py (no function) 26 0 0 100%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer.__init__ 4 4 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer.analyze_contract 20 20 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._parse_contract_structure 37 37 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_reentrancy_vulnerabilities 13 13 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_access_control_vulnerabilities 19 19 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_integer_vulnerabilities 14 14 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_unchecked_calls 15 15 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_logic_errors 15 15 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_oracle_manipulation 16 16 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._extract_function_contexts 20 20 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_chainlink_staleness 16 16 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_single_oracle_usage 18 18 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_missing_price_bounds 18 18 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_uniswap_spot_price 14 14 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_pool_reserve_manipulation 14 14 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_missing_oracle_failure_handling 15 15 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_input_validation_issues 14 14 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_missing_address_validation 19 19 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_missing_amount_validation 18 18 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_missing_array_bounds 16 16 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_unchecked_external_calls 20 20 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._detect_unsafe_type_conversions 14 14 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._get_current_function_contract 11 11 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py SolidityStaticAnalyzer._initialize_patterns 1 1 0 0%
src/alprina_cli/agents/web3_auditor/solidity_analyzer.py (no function) 47 0 0 100%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicState.copy 2 2 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor.__init__ 8 8 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor.analyze_contract 7 7 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._extract_functions 26 26 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._execute_function 9 9 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._extract_parameters 18 18 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._map_to_symbolic_type 11 11 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._create_symbolic_variable 10 10 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._explore_paths 19 19 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._is_conditional 1 1 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._analyze_conditional_branch 20 20 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._parse_condition_to_z3 20 20 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._parse_expression_to_z3 11 11 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._is_path_feasible 7 7 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._check_path_feasibility 3 3 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._analyze_requirement 14 14 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._analyze_arithmetic 22 22 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._check_overflow_addition 12 12 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._check_overflow_addition_expr 12 12 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._check_underflow_subtraction 11 11 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._analyze_division 11 11 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._analyze_taint_flow 6 6 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._convert_to_standard_format 9 9 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py SymbolicExecutor._get_remediation 2 2 0 0%
src/alprina_cli/agents/web3_auditor/symbolic_executor.py (no function) 79 19 0 76%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent.__init__ 9 9 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent.analyze_directory 23 23 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent.analyze_contract_file 13 13 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._analyze_solidity_contract 5 5 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._analyze_solana_contract 10 10 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._analyze_generic_contract 9 9 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._discover_contract_files 12 12 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._detect_contract_language 14 14 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._extract_contract_names 4 4 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._extract_rust_program_names 4 4 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._infer_protocol_type 12 12 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._calculate_overall_risk_score 7 7 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._generate_recommendations 17 17 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._simulate_exploit_scenarios 8 8 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._generate_summary 8 8 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._calculate_confidence_score 5 5 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._format_vulnerabilities 1 1 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._format_economic_risks 1 1 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._error_report 1 1 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._initialize_exploit_database 1 1 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgent._load_owasp_smart_contract_patterns 1 1 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper.__init__ 15 15 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper.analyze 16 16 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper._calculate_single_file_risk_score 6 6 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper._generate_single_file_summary 8 8 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper._generate_recommendations 9 9 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py Web3AuditorAgentWrapper._enhance_vulnerabilities_with_llm 22 22 0 0%
src/alprina_cli/agents/web3_auditor/web3_auditor.py (no function) 52 2 0 96%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper.__init__ 4 0 0 100%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper._get_alprina_agent 10 10 0 0%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper._scan_async 12 12 0 0%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper._mock_scan 3 3 0 0%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper._parse_cai_response 16 16 0 0%
src/alprina_cli/agents/wifi_security.py WifiSecurityWrapper.scan 7 7 0 0%
src/alprina_cli/agents/wifi_security.py run_wifi_security_scan 1 1 0 0%
src/alprina_cli/agents/wifi_security.py (no function) 19 2 0 89%
src/alprina_cli/api/__init__.py (no function) 2 0 0 100%
src/alprina_cli/api/main.py startup_event 9 9 0 0%
src/alprina_cli/api/main.py shutdown_event 5 5 0 0%
src/alprina_cli/api/main.py root 1 1 0 0%
src/alprina_cli/api/main.py health_check 1 1 0 0%
src/alprina_cli/api/main.py http_exception_handler 1 1 0 0%
src/alprina_cli/api/main.py general_exception_handler 1 1 0 0%
src/alprina_cli/api/main.py (no function) 46 2 0 96%
src/alprina_cli/api/middleware/__init__.py (no function) 2 0 0 100%
src/alprina_cli/api/middleware/auth.py verify_api_key 18 18 0 0%
src/alprina_cli/api/middleware/auth.py get_current_user 1 1 0 0%
src/alprina_cli/api/middleware/auth.py get_current_user_no_rate_limit 10 10 0 0%
src/alprina_cli/api/middleware/auth.py optional_auth 6 6 0 0%
src/alprina_cli/api/middleware/auth.py (no function) 8 0 0 100%
src/alprina_cli/api/middleware/usage_check.py check_usage_limits 8 8 0 0%
src/alprina_cli/api/middleware/usage_check.py check_scan_permission 12 12 0 0%
src/alprina_cli/api/middleware/usage_check.py record_scan_usage 6 6 0 0%
src/alprina_cli/api/middleware/usage_check.py (no function) 9 9 0 0%
src/alprina_cli/api/polar_meters.py PolarMeterService.report_credit_usage 21 21 0 0%
src/alprina_cli/api/polar_meters.py PolarMeterService.get_operation_cost 1 1 0 0%
src/alprina_cli/api/polar_meters.py PolarMeterService.report_scan 4 4 0 0%
src/alprina_cli/api/polar_meters.py PolarMeterService.get_customer_usage 14 14 0 0%
src/alprina_cli/api/polar_meters.py (no function) 18 0 0 100%
src/alprina_cli/api/routes/__init__.py (no function) 2 0 0 100%
src/alprina_cli/api/routes/agents.py list_agents 2 2 0 0%
src/alprina_cli/api/routes/agents.py get_agent_info 4 4 0 0%
src/alprina_cli/api/routes/agents.py (no function) 10 0 0 100%
src/alprina_cli/api/routes/alerts.py get_alerts 5 5 0 0%
src/alprina_cli/api/routes/alerts.py get_unread_count 5 5 0 0%
src/alprina_cli/api/routes/alerts.py mark_alert_read 7 7 0 0%
src/alprina_cli/api/routes/alerts.py mark_all_alerts_read 7 7 0 0%
src/alprina_cli/api/routes/alerts.py get_notification_preferences 10 10 0 0%
src/alprina_cli/api/routes/alerts.py update_notification_preferences 20 20 0 0%
src/alprina_cli/api/routes/alerts.py (no function) 34 0 0 100%
src/alprina_cli/api/routes/auth.py register_user 12 12 0 0%
src/alprina_cli/api/routes/auth.py login_user 15 15 0 0%
src/alprina_cli/api/routes/auth.py get_current_user_info 2 2 0 0%
src/alprina_cli/api/routes/auth.py list_api_keys 2 2 0 0%
src/alprina_cli/api/routes/auth.py create_api_key 3 3 0 0%
src/alprina_cli/api/routes/auth.py revoke_api_key 4 4 0 0%
src/alprina_cli/api/routes/auth.py sync_oauth_user 21 21 0 0%
src/alprina_cli/api/routes/auth.py sync_stack_user 30 30 0 0%
src/alprina_cli/api/routes/auth.py (no function) 44 0 0 100%
src/alprina_cli/api/routes/badge.py get_badge_config 18 18 0 0%
src/alprina_cli/api/routes/badge.py update_badge_config 10 10 0 0%
src/alprina_cli/api/routes/badge.py generate_badge_svg 40 40 0 0%
src/alprina_cli/api/routes/badge.py get_verification_data 51 51 0 0%
src/alprina_cli/api/routes/badge.py get_badge_analytics 16 16 0 0%
src/alprina_cli/api/routes/badge.py (no function) 31 0 0 100%
src/alprina_cli/api/routes/billing.py create_checkout 19 19 0 0%
src/alprina_cli/api/routes/billing.py get_subscription 9 9 0 0%
src/alprina_cli/api/routes/billing.py cancel_subscription 10 10 0 0%
src/alprina_cli/api/routes/billing.py create_customer_portal_session 8 8 0 0%
src/alprina_cli/api/routes/billing.py list_products 6 6 0 0%
src/alprina_cli/api/routes/billing.py (no function) 23 0 0 100%
src/alprina_cli/api/routes/cron.py verify_cron_secret 10 10 0 0%
src/alprina_cli/api/routes/cron.py run_abandoned_checkout_cron 12 12 0 0%
src/alprina_cli/api/routes/cron.py cron_health_check 3 3 0 0%
src/alprina_cli/api/routes/cron.py test_abandoned_email 12 12 0 0%
src/alprina_cli/api/routes/cron.py (no function) 15 0 0 100%
src/alprina_cli/api/routes/dashboard.py get_vulnerabilities 23 23 0 0%
src/alprina_cli/api/routes/dashboard.py get_recent_scans 21 21 0 0%
src/alprina_cli/api/routes/dashboard.py get_vulnerability_trends 19 19 0 0%
src/alprina_cli/api/routes/dashboard.py generate_ai_fix 34 34 0 0%
src/alprina_cli/api/routes/dashboard.py (no function) 37 0 0 100%
src/alprina_cli/api/routes/device_auth.py request_device_authorization 7 7 0 0%
src/alprina_cli/api/routes/device_auth.py poll_device_authorization 25 25 0 0%
src/alprina_cli/api/routes/device_auth.py authorize_device 18 18 0 0%
src/alprina_cli/api/routes/device_auth.py generate_dashboard_code 21 21 0 0%
src/alprina_cli/api/routes/device_auth.py verify_cli_code 21 21 0 0%
src/alprina_cli/api/routes/device_auth.py list_user_devices 17 17 0 0%
src/alprina_cli/api/routes/device_auth.py (no function) 29 0 0 100%
src/alprina_cli/api/routes/github_webhooks.py verify_github_signature 5 5 0 0%
src/alprina_cli/api/routes/github_webhooks.py github_webhook 23 23 0 0%
src/alprina_cli/api/routes/github_webhooks.py handle_pull_request 23 23 0 0%
src/alprina_cli/api/routes/github_webhooks.py handle_push 25 25 0 0%
src/alprina_cli/api/routes/github_webhooks.py handle_installation 19 19 0 0%
src/alprina_cli/api/routes/github_webhooks.py handle_installation_repositories 18 18 0 0%
src/alprina_cli/api/routes/github_webhooks.py _log_webhook_event 5 5 0 0%
src/alprina_cli/api/routes/github_webhooks.py _save_installation 7 7 0 0%
src/alprina_cli/api/routes/github_webhooks.py _delete_installation 5 5 0 0%
src/alprina_cli/api/routes/github_webhooks.py _add_repositories 6 6 0 0%
src/alprina_cli/api/routes/github_webhooks.py _remove_repositories 5 5 0 0%
src/alprina_cli/api/routes/github_webhooks.py (no function) 26 0 0 100%
src/alprina_cli/api/routes/health_check.py detailed_health_check 17 17 0 0%
src/alprina_cli/api/routes/health_check.py database_test 11 11 0 0%
src/alprina_cli/api/routes/health_check.py (no function) 9 9 0 0%
src/alprina_cli/api/routes/insights.py get_weekly_summary 5 5 0 0%
src/alprina_cli/api/routes/insights.py get_most_scanned_target 7 7 0 0%
src/alprina_cli/api/routes/insights.py get_security_trend 5 5 0 0%
src/alprina_cli/api/routes/insights.py get_recommendations 5 5 0 0%
src/alprina_cli/api/routes/insights.py get_vulnerable_targets 5 5 0 0%
src/alprina_cli/api/routes/insights.py (no function) 24 0 0 100%
src/alprina_cli/api/routes/polar_webhooks.py handle_polar_webhook 22 22 0 0%
src/alprina_cli/api/routes/polar_webhooks.py process_webhook_background 28 28 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_checkout_completed 4 4 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_subscription_created 50 50 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_subscription_updated 16 16 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_subscription_cancelled 14 14 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_payment_succeeded 8 8 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_payment_failed 9 9 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_checkout_updated 4 4 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_benefit_grant_granted 4 4 0 0%
src/alprina_cli/api/routes/polar_webhooks.py handle_benefit_grant_revoked 4 4 0 0%
src/alprina_cli/api/routes/polar_webhooks.py fix_user_tier 8 8 0 0%
src/alprina_cli/api/routes/polar_webhooks.py test_webhook 1 1 0 0%
src/alprina_cli/api/routes/polar_webhooks.py (no function) 25 0 0 100%
src/alprina_cli/api/routes/scan.py scan_code 14 14 0 0%
src/alprina_cli/api/routes/scan.py red_team_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py blue_team_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py network_analysis_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py reverse_engineering_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py forensics_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py android_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py memory_analysis_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py wifi_security_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py replay_attack_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py radio_security_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py retest_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py email_report_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py safety_check_scan 13 13 0 0%
src/alprina_cli/api/routes/scan.py get_scan_results 1 1 0 0%
src/alprina_cli/api/routes/scan.py (no function) 37 0 0 100%
src/alprina_cli/api/routes/scans.py create_scan 7 7 0 0%
src/alprina_cli/api/routes/scans.py update_scan 14 14 0 0%
src/alprina_cli/api/routes/scans.py list_scans 7 7 0 0%
src/alprina_cli/api/routes/scans.py get_scan 6 6 0 0%
src/alprina_cli/api/routes/scans.py (no function) 25 0 0 100%
src/alprina_cli/api/routes/subscription.py cancel_subscription 17 17 0 0%
src/alprina_cli/api/routes/subscription.py get_subscription 10 10 0 0%
src/alprina_cli/api/routes/subscription.py (no function) 14 0 0 100%
src/alprina_cli/api/routes/team.py get_team_stats 10 10 0 0%
src/alprina_cli/api/routes/team.py list_team_members 5 5 0 0%
src/alprina_cli/api/routes/team.py invite_team_member 22 22 0 0%
src/alprina_cli/api/routes/team.py add_team_seat 16 16 0 0%
src/alprina_cli/api/routes/team.py remove_team_member 18 18 0 0%
src/alprina_cli/api/routes/team.py accept_team_invitation 19 19 0 0%
src/alprina_cli/api/routes/team.py team_health 1 1 0 0%
src/alprina_cli/api/routes/team.py (no function) 34 0 0 100%
src/alprina_cli/api/schemas/__init__.py (no function) 3 0 0 100%
src/alprina_cli/api/schemas/agent.py (no function) 16 0 0 100%
src/alprina_cli/api/schemas/scan.py (no function) 41 0 0 100%
src/alprina_cli/api/services/__init__.py (no function) 4 0 0 100%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService.__init__ 4 1 0 75%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService.find_abandoned_users 12 12 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService.send_reminder_email 19 19 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService._mark_email_sent 5 5 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService._generate_email_html 1 1 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService._generate_email_text 1 1 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py AbandonedCheckoutService.process_abandoned_checkouts 10 10 0 0%
src/alprina_cli/api/services/abandoned_checkout_service.py (no function) 15 0 0 100%
src/alprina_cli/api/services/ai_fix_service.py AIFixService.__init__ 7 0 0 100%
src/alprina_cli/api/services/ai_fix_service.py AIFixService.generate_security_fix 34 34 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._is_security_vulnerability 5 5 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._truncate_context 5 5 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._build_security_fix_prompt 5 5 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._call_kimi_api 11 11 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._call_openai_api 11 11 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService._parse_ai_response 11 11 0 0%
src/alprina_cli/api/services/ai_fix_service.py AIFixService.get_usage_stats 1 1 0 0%
src/alprina_cli/api/services/ai_fix_service.py (no function) 19 0 0 100%
src/alprina_cli/api/services/database_service.py DatabaseService.__init__ 17 17 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.is_enabled 1 1 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.get_session 10 10 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.get_usage_record 7 7 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.create_usage_record 7 7 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.update_usage_record 9 9 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.increment_scan_count 8 8 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.create_scan_history 7 7 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.get_scan_history 5 5 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.log_webhook_event 7 7 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.mark_webhook_processed 11 11 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.update_user 9 9 0 0%
src/alprina_cli/api/services/database_service.py DatabaseService.get_user_by_polar_customer 7 7 0 0%
src/alprina_cli/api/services/database_service.py (no function) 24 24 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner.__init__ 1 0 0 100%
src/alprina_cli/api/services/github_scanner.py GitHubScanner.scan_pr_changes 26 26 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner.scan_push_changes 21 21 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._filter_scannable_files 6 6 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._is_code_file 3 3 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._get_file_extension 1 1 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._detect_language 3 3 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._get_fix_recommendation 2 2 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._get_learn_more_url 2 2 0 0%
src/alprina_cli/api/services/github_scanner.py GitHubScanner._assess_risk 2 2 0 0%
src/alprina_cli/api/services/github_scanner.py (no function) 19 0 0 100%
src/alprina_cli/api/services/github_service.py GitHubService.__init__ 4 0 0 100%
src/alprina_cli/api/services/github_service.py GitHubService._generate_jwt 3 3 0 0%
src/alprina_cli/api/services/github_service.py GitHubService.get_installation_token 11 11 0 0%
src/alprina_cli/api/services/github_service.py GitHubService.get_pr_changed_files 4 4 0 0%
src/alprina_cli/api/services/github_service.py GitHubService.get_file_content 8 8 0 0%
src/alprina_cli/api/services/github_service.py GitHubService.post_pr_comment 8 8 0 0%
src/alprina_cli/api/services/github_service.py GitHubService._find_existing_comment 12 12 0 0%
src/alprina_cli/api/services/github_service.py GitHubService._format_pr_comment 40 40 0 0%
src/alprina_cli/api/services/github_service.py GitHubService.create_check_run 15 15 0 0%
src/alprina_cli/api/services/github_service.py GitHubService._format_check_output 10 10 0 0%
src/alprina_cli/api/services/github_service.py (no function) 18 0 0 100%
src/alprina_cli/api/services/neon_service.py NeonService.__init__ 8 3 0 62%
src/alprina_cli/api/services/neon_service.py NeonService.get_pool 8 8 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.is_enabled 1 1 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_user 13 13 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.authenticate_user 19 19 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_user_by_id 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_user_by_email 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_user_by_subscription 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_user_from_subscription 7 7 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.update_user 15 15 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.initialize_usage_tracking 3 3 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.increment_user_scans 5 5 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.generate_api_key 1 1 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_api_key 8 8 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.verify_api_key 10 10 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.list_api_keys 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.deactivate_api_key 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_scan 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.save_scan 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_scan 8 8 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.list_scans 19 19 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.check_rate_limit 13 13 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.log_request 5 5 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_user_stats 12 12 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.log_webhook_event 7 7 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.mark_webhook_processed 5 5 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.mark_webhook_error 5 5 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.generate_device_codes 3 3 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_device_authorization 8 8 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.check_device_authorization 12 12 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.authorize_device 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_team_members 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_team_member_by_email 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.create_team_invitation 11 11 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.get_team_invitation 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.delete_team_invitation 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.add_team_member 11 11 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.remove_team_member 6 6 0 0%
src/alprina_cli/api/services/neon_service.py NeonService.close 3 3 0 0%
src/alprina_cli/api/services/neon_service.py (no function) 49 0 0 100%
src/alprina_cli/api/services/polar_service.py PolarService.__init__ 3 0 0 100%
src/alprina_cli/api/services/polar_service.py PolarService.create_checkout_session 41 41 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.get_subscription 8 8 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.cancel_subscription 8 8 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.list_products 8 8 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.verify_webhook_signature 11 11 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.process_webhook_event 18 18 0 0%
src/alprina_cli/api/services/polar_service.py PolarService._handle_subscription_created 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService._handle_subscription_updated 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService._handle_subscription_cancelled 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService._handle_payment_succeeded 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService._handle_payment_failed 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.get_tier_from_product 8 8 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.get_tier_from_product_id 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.get_tier_limits 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.ingest_usage_event 9 9 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.ingest_scan_usage 2 2 0 0%
src/alprina_cli/api/services/polar_service.py PolarService.ingest_ai_usage 3 3 0 0%
src/alprina_cli/api/services/polar_service.py (no function) 30 0 0 100%
src/alprina_cli/api/services/usage_service.py UsageService.__init__ 1 1 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.get_current_month 1 1 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.get_or_create_usage_record 8 8 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.check_scan_limit 12 12 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.check_workflow_access 11 11 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.check_file_limit 7 7 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.increment_scan_count 11 11 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.record_scan 2 2 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.get_usage_stats 9 9 0 0%
src/alprina_cli/api/services/usage_service.py UsageService._get_next_reset_date 4 4 0 0%
src/alprina_cli/api/services/usage_service.py UsageService.enforce_rate_limit 9 9 0 0%
src/alprina_cli/api/services/usage_service.py (no function) 18 18 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.__init__ 2 2 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.verify_signature 5 5 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.get_tier_from_product_id 4 4 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.log_webhook_event 7 7 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.handle_subscription_created 24 24 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.handle_subscription_updated 11 11 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.handle_subscription_canceled 5 5 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.handle_subscription_revoked 5 5 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.handle_subscription_renewed 5 5 0 0%
src/alprina_cli/api/webhooks.py PolarWebhookHandler.process_webhook 26 26 0 0%
src/alprina_cli/api/webhooks.py (no function) 23 23 0 0%
src/alprina_cli/auth.py ensure_alprina_dir 1 1 0 0%
src/alprina_cli/auth.py save_token 5 5 0 0%
src/alprina_cli/auth.py load_token 11 11 0 0%
src/alprina_cli/auth.py remove_token 2 2 0 0%
src/alprina_cli/auth.py get_backend_url 1 1 0 0%
src/alprina_cli/auth.py login_command 36 36 0 0%
src/alprina_cli/auth.py authenticate_with_api_key 30 30 0 0%
src/alprina_cli/auth.py login_with_cli_code 30 30 0 0%
src/alprina_cli/auth.py logout_command 4 4 0 0%
src/alprina_cli/auth.py status_command 13 13 0 0%
src/alprina_cli/auth.py get_auth_headers 5 5 0 0%
src/alprina_cli/auth.py is_authenticated 4 4 0 0%
src/alprina_cli/auth.py login_with_browser 80 80 0 0%
src/alprina_cli/auth.py (no function) 28 0 0 100%
src/alprina_cli/auth_system.py AuthenticationService.__init__ 12 3 0 75%
src/alprina_cli/auth_system.py AuthenticationService.generate_api_key 1 0 0 100%
src/alprina_cli/auth_system.py AuthenticationService.hash_api_key 1 0 0 100%
src/alprina_cli/auth_system.py AuthenticationService.create_user 8 0 0 100%
src/alprina_cli/auth_system.py AuthenticationService.authenticate 18 18 0 0%
src/alprina_cli/auth_system.py AuthenticationService.revoke_api_key 6 6 0 0%
src/alprina_cli/auth_system.py AuthenticationService.deactivate_user 6 1 0 83%
src/alprina_cli/auth_system.py AuthorizationService.__init__ 1 0 0 100%
src/alprina_cli/auth_system.py AuthorizationService.has_permission 5 0 0 100%
src/alprina_cli/auth_system.py AuthorizationService.require_permission 2 0 0 100%
src/alprina_cli/auth_system.py AuthorizationService.get_user_permissions 1 0 0 100%
src/alprina_cli/auth_system.py AuthorizationService.can_use_tool 6 0 0 100%
src/alprina_cli/auth_system.py AuditLogger.__init__ 2 0 0 100%
src/alprina_cli/auth_system.py AuditLogger.log 5 0 0 100%
src/alprina_cli/auth_system.py AuditLogger.get_logs 11 0 0 100%
src/alprina_cli/auth_system.py AuditLogger.get_user_activity 2 0 0 100%
src/alprina_cli/auth_system.py get_auth_service 3 0 0 100%
src/alprina_cli/auth_system.py get_authz_service 3 0 0 100%
src/alprina_cli/auth_system.py get_audit_logger 3 0 0 100%
src/alprina_cli/auth_system.py (no function) 64 0 0 100%
src/alprina_cli/billing.py get_backend_url 1 1 0 0%
src/alprina_cli/billing.py billing_status_command 17 17 0 0%
src/alprina_cli/billing.py _display_billing_info 21 21 0 0%
src/alprina_cli/billing.py _display_local_billing_info 7 7 0 0%
src/alprina_cli/billing.py check_scan_quota 20 20 0 0%
src/alprina_cli/billing.py increment_usage 6 6 0 0%
src/alprina_cli/billing.py (no function) 14 0 0 100%
src/alprina_cli/chat.py AlprinaChatSession.__init__ 15 15 0 0%
src/alprina_cli/chat.py AlprinaChatSession._create_key_bindings 4 4 0 0%
src/alprina_cli/chat.py AlprinaChatSession._create_key_bindings._ 1 1 0 0%
src/alprina_cli/chat.py AlprinaChatSession.start 22 22 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_welcome 6 6 0 0%
src/alprina_cli/chat.py AlprinaChatSession._process_message 44 44 0 0%
src/alprina_cli/chat.py AlprinaChatSession._get_response 8 8 0 0%
src/alprina_cli/chat.py AlprinaChatSession._get_streaming_response 12 12 0 0%
src/alprina_cli/chat.py AlprinaChatSession._build_system_prompt 5 5 0 0%
src/alprina_cli/chat.py AlprinaChatSession._is_scan_request 3 3 0 0%
src/alprina_cli/chat.py AlprinaChatSession._is_mitigation_request 2 2 0 0%
src/alprina_cli/chat.py AlprinaChatSession._handle_scan_request 14 14 0 0%
src/alprina_cli/chat.py AlprinaChatSession._handle_mitigation_request 6 6 0 0%
src/alprina_cli/chat.py AlprinaChatSession._extract_target 13 13 0 0%
src/alprina_cli/chat.py AlprinaChatSession._handle_command 35 35 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_help 7 7 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_findings 12 12 0 0%
src/alprina_cli/chat.py AlprinaChatSession._explain_finding 6 6 0 0%
src/alprina_cli/chat.py AlprinaChatSession._fix_finding 6 6 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_report 5 5 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_status 11 11 0 0%
src/alprina_cli/chat.py AlprinaChatSession._show_stats 30 30 0 0%
src/alprina_cli/chat.py AlprinaChatSession._save_conversation 4 4 0 0%
src/alprina_cli/chat.py AlprinaChatSession._handle_exit 4 4 0 0%
src/alprina_cli/chat.py chat_command 7 7 0 0%
src/alprina_cli/chat.py (no function) 45 45 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession.__init__ 10 10 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._create_key_bindings 4 4 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._create_key_bindings._ 1 1 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession.start 22 22 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._show_welcome 3 3 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._process_message 15 15 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._get_response 8 8 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._get_streaming_response 12 12 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._build_system_prompt 5 5 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._is_scan_request 3 3 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._is_mitigation_request 2 2 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._handle_scan_request 14 14 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._handle_mitigation_request 6 6 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._extract_target 13 13 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._handle_command 30 30 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._show_help 7 7 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._show_findings 12 12 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._explain_finding 6 6 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._fix_finding 6 6 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._show_report 5 5 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._show_stats 13 13 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._save_conversation 4 4 0 0%
src/alprina_cli/chat_enhanced.py AlprinaChatSession._handle_exit 4 4 0 0%
src/alprina_cli/chat_enhanced.py chat_command 7 7 0 0%
src/alprina_cli/chat_enhanced.py (no function) 43 43 0 0%
src/alprina_cli/chat_ui_enhanced.py show_beautiful_welcome 18 18 0 0%
src/alprina_cli/chat_ui_enhanced.py display_user_message 5 5 0 0%
src/alprina_cli/chat_ui_enhanced.py display_assistant_header 3 3 0 0%
src/alprina_cli/chat_ui_enhanced.py display_thinking_indicator 1 1 0 0%
src/alprina_cli/chat_ui_enhanced.py display_error 3 3 0 0%
src/alprina_cli/chat_ui_enhanced.py display_success 3 3 0 0%
src/alprina_cli/chat_ui_enhanced.py display_info 3 3 0 0%
src/alprina_cli/chat_ui_enhanced.py create_help_table 9 9 0 0%
src/alprina_cli/chat_ui_enhanced.py create_stats_table 14 14 0 0%
src/alprina_cli/chat_ui_enhanced.py display_goodbye 3 3 0 0%
src/alprina_cli/chat_ui_enhanced.py (no function) 18 18 0 0%
src/alprina_cli/cli.py login 6 6 0 0%
src/alprina_cli/cli.py logout 1 1 0 0%
src/alprina_cli/cli.py auth_status 1 1 0 0%
src/alprina_cli/cli.py scan 1 1 0 0%
src/alprina_cli/cli.py recon 1 1 0 0%
src/alprina_cli/cli.py history 1 1 0 0%
src/alprina_cli/cli.py mitigate 2 2 0 0%
src/alprina_cli/cli.py fix 1 1 0 0%
src/alprina_cli/cli.py policy_init 1 1 0 0%
src/alprina_cli/cli.py policy_test 1 1 0 0%
src/alprina_cli/cli.py config 3 3 0 0%
src/alprina_cli/cli.py report 1 1 0 0%
src/alprina_cli/cli.py billing_status 1 1 0 0%
src/alprina_cli/cli.py quickstart 2 2 0 0%
src/alprina_cli/cli.py chat 2 2 0 0%
src/alprina_cli/cli.py acp_mode 2 2 0 0%
src/alprina_cli/cli.py version 1 1 0 0%
src/alprina_cli/cli.py main 11 11 0 0%
src/alprina_cli/cli.py cli_main 8 8 0 0%
src/alprina_cli/cli.py (no function) 71 1 0 99%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.__init__ 13 13 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.show_banner 2 2 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.get_prompt 5 5 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_help 19 19 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_login 15 15 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_logout 7 7 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_whoami 21 21 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_tools 14 14 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_scan 21 21 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_recon 19 19 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_vuln_scan 17 17 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.display_scan_results 9 9 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.display_vuln_results 13 13 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_history 1 1 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_clear 1 1 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.cmd_exit 2 2 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.execute_command 12 12 0 0%
src/alprina_cli/cli_interactive.py AlprinaInteractiveCLI.run 15 15 0 0%
src/alprina_cli/cli_interactive.py main 2 2 0 0%
src/alprina_cli/cli_interactive.py (no function) 40 40 0 0%
src/alprina_cli/config.py load_config 10 10 0 0%
src/alprina_cli/config.py save_config 4 4 0 0%
src/alprina_cli/config.py is_admin_mode 7 7 0 0%
src/alprina_cli/config.py get_api_key 15 15 0 0%
src/alprina_cli/config.py init_config_command 6 6 0 0%
src/alprina_cli/config.py (no function) 14 0 0 100%
src/alprina_cli/context_manager.py ConversationContext.__init__ 5 5 0 0%
src/alprina_cli/context_manager.py ConversationContext.add_user_message 3 3 0 0%
src/alprina_cli/context_manager.py ConversationContext.add_assistant_message 3 3 0 0%
src/alprina_cli/context_manager.py ConversationContext.add_system_message 2 2 0 0%
src/alprina_cli/context_manager.py ConversationContext._trim_history 5 5 0 0%
src/alprina_cli/context_manager.py ConversationContext.load_scan_results 10 10 0 0%
src/alprina_cli/context_manager.py ConversationContext.load_scan_results_dict 5 5 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_finding 4 4 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_findings_by_severity 1 1 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_messages 3 3 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_messages_for_llm 1 1 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_context_summary 9 9 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_detailed_context 12 12 0 0%
src/alprina_cli/context_manager.py ConversationContext.clear 2 2 0 0%
src/alprina_cli/context_manager.py ConversationContext.clear_all 4 4 0 0%
src/alprina_cli/context_manager.py ConversationContext.save_conversation 4 4 0 0%
src/alprina_cli/context_manager.py ConversationContext.get_statistics 1 1 0 0%
src/alprina_cli/context_manager.py (no function) 23 23 0 0%
src/alprina_cli/database/__init__.py (no function) 2 0 0 100%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.__init__ 2 0 0 100%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.is_available 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.authenticate_api_key 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.get_user_by_id 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.create_scan 7 7 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.update_scan_status 4 4 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.save_scan_results 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.get_scan 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.list_user_scans 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.track_scan_usage 7 7 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.check_scan_limit 10 10 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.increment_scan_count 4 4 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.create_cli_session 4 4 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.update_session_activity 3 3 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.list_api_keys 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.create_api_key 7 7 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.revoke_api_key 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.get_user_stats 1 1 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.get_scan_analytics 6 6 0 0%
src/alprina_cli/database/neon_client.py NeonDatabaseClient.close 1 1 0 0%
src/alprina_cli/database/neon_client.py get_database_client 3 0 0 100%
src/alprina_cli/database/neon_client.py (no function) 31 0 0 100%
src/alprina_cli/demo_app/__init__.py (no function) 0 0 0 100%
src/alprina_cli/demo_app/vulnerable_app.py login_user 3 3 0 0%
src/alprina_cli/demo_app/vulnerable_app.py post_comment 2 2 0 0%
src/alprina_cli/demo_app/vulnerable_app.py ping_server 1 1 0 0%
src/alprina_cli/demo_app/vulnerable_app.py read_user_file 2 2 0 0%
src/alprina_cli/demo_app/vulnerable_app.py hash_password 1 1 0 0%
src/alprina_cli/demo_app/vulnerable_app.py get_all_users 1 1 0 0%
src/alprina_cli/demo_app/vulnerable_app.py generate_session_token 1 1 0 0%
src/alprina_cli/demo_app/vulnerable_app.py update_email 4 4 0 0%
src/alprina_cli/demo_app/vulnerable_app.py (no function) 18 18 0 0%
src/alprina_cli/fix_command.py fix_command 6 6 0 0%
src/alprina_cli/fix_command.py suggest_fixes_command 19 19 0 0%
src/alprina_cli/fix_command.py _demo_fix_generation 14 14 0 0%
src/alprina_cli/fix_command.py _process_single_finding 4 4 0 0%
src/alprina_cli/fix_command.py _display_fix 30 30 0 0%
src/alprina_cli/fix_command.py _apply_fix_interactive 13 13 0 0%
src/alprina_cli/fix_command.py _show_fix_summary 12 12 0 0%
src/alprina_cli/fix_command.py (no function) 18 0 0 100%
src/alprina_cli/guardrails/__init__.py (no function) 3 0 0 100%
src/alprina_cli/guardrails/input_guardrails.py InputGuardrail.check 1 1 0 0%
src/alprina_cli/guardrails/input_guardrails.py SQLInjectionGuardrail.check 9 9 0 0%
src/alprina_cli/guardrails/input_guardrails.py CommandInjectionGuardrail.check 9 9 0 0%
src/alprina_cli/guardrails/input_guardrails.py PathTraversalGuardrail.check 15 15 0 0%
src/alprina_cli/guardrails/input_guardrails.py XXEGuardrail.check 9 9 0 0%
src/alprina_cli/guardrails/input_guardrails.py LengthGuardrail.__init__ 1 0 0 100%
src/alprina_cli/guardrails/input_guardrails.py LengthGuardrail.check 9 9 0 0%
src/alprina_cli/guardrails/input_guardrails.py TypeGuardrail.__init__ 1 1 0 0%
src/alprina_cli/guardrails/input_guardrails.py TypeGuardrail.check 4 4 0 0%
src/alprina_cli/guardrails/input_guardrails.py validate_input 8 8 0 0%
src/alprina_cli/guardrails/input_guardrails.py validate_params 4 4 0 0%
src/alprina_cli/guardrails/input_guardrails.py (no function) 42 0 0 100%
src/alprina_cli/guardrails/output_guardrails.py OutputGuardrail.sanitize 1 1 0 0%
src/alprina_cli/guardrails/output_guardrails.py PIIScrubber.__init__ 4 0 0 100%
src/alprina_cli/guardrails/output_guardrails.py PIIScrubber.sanitize 34 34 0 0%
src/alprina_cli/guardrails/output_guardrails.py CredentialFilter.sanitize 14 14 0 0%
src/alprina_cli/guardrails/output_guardrails.py IPRedactor.__init__ 3 0 0 100%
src/alprina_cli/guardrails/output_guardrails.py IPRedactor.sanitize 28 28 0 0%
src/alprina_cli/guardrails/output_guardrails.py PathSanitizer.__init__ 1 0 0 100%
src/alprina_cli/guardrails/output_guardrails.py PathSanitizer.sanitize 17 17 0 0%
src/alprina_cli/guardrails/output_guardrails.py sanitize_output 12 12 0 0%
src/alprina_cli/guardrails/output_guardrails.py sanitize_dict 15 15 0 0%
src/alprina_cli/guardrails/output_guardrails.py sanitize_list 17 17 0 0%
src/alprina_cli/guardrails/output_guardrails.py (no function) 40 0 0 100%
src/alprina_cli/history.py history_command 9 9 0 0%
src/alprina_cli/history.py _display_scan_list 61 61 0 0%
src/alprina_cli/history.py _display_scan_details 51 51 0 0%
src/alprina_cli/history.py (no function) 13 0 0 100%
src/alprina_cli/llm_provider.py LLMClient.__init__ 4 4 0 0%
src/alprina_cli/llm_provider.py LLMClient._initialize_client 12 12 0 0%
src/alprina_cli/llm_provider.py LLMClient._init_openai 11 11 0 0%
src/alprina_cli/llm_provider.py LLMClient._init_anthropic 11 11 0 0%
src/alprina_cli/llm_provider.py LLMClient._init_ollama 7 7 0 0%
src/alprina_cli/llm_provider.py LLMClient.analyze_code 13 13 0 0%
src/alprina_cli/llm_provider.py LLMClient._build_security_prompt 1 1 0 0%
src/alprina_cli/llm_provider.py LLMClient._analyze_with_openai 3 3 0 0%
src/alprina_cli/llm_provider.py LLMClient._analyze_with_anthropic 3 3 0 0%
src/alprina_cli/llm_provider.py LLMClient._analyze_with_ollama 3 3 0 0%
src/alprina_cli/llm_provider.py LLMClient._parse_llm_response 12 12 0 0%
src/alprina_cli/llm_provider.py LLMClient._extract_findings_from_text 6 6 0 0%
src/alprina_cli/llm_provider.py LLMClient._mock_analysis 6 6 0 0%
src/alprina_cli/llm_provider.py LLMClient.chat 13 13 0 0%
src/alprina_cli/llm_provider.py LLMClient.chat_streaming 14 14 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_openai 6 6 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_anthropic 5 5 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_ollama 6 6 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_streaming_openai 8 8 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_streaming_anthropic 6 6 0 0%
src/alprina_cli/llm_provider.py LLMClient._chat_streaming_ollama 8 8 0 0%
src/alprina_cli/llm_provider.py get_llm_client 5 5 0 0%
src/alprina_cli/llm_provider.py (no function) 32 0 0 100%
src/alprina_cli/main_agent.py MainAlprinaAgent.__init__ 5 5 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent.process_user_request 16 16 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._analyze_intent 9 9 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._fallback_intent_analysis 18 18 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._handle_scan_request_async 106 106 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._handle_explanation_request 7 7 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._handle_remediation_request 7 7 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._handle_general_question 6 6 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._handle_capabilities_request 2 2 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._aggregate_parallel_results 17 17 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._extract_target_from_message 14 14 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._get_agent_info 3 3 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._format_agents_for_llm 6 6 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent._get_system_prompt 1 1 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent.get_agent_registry 1 1 0 0%
src/alprina_cli/main_agent.py MainAlprinaAgent.list_agents 4 4 0 0%
src/alprina_cli/main_agent.py (no function) 27 27 0 0%
src/alprina_cli/memory_service.py MemoryService.__init__ 11 11 0 0%
src/alprina_cli/memory_service.py MemoryService.add_finding 10 10 0 0%
src/alprina_cli/memory_service.py MemoryService.add_scan_results 13 13 0 0%
src/alprina_cli/memory_service.py MemoryService.add_context 10 10 0 0%
src/alprina_cli/memory_service.py MemoryService.search 12 12 0 0%
src/alprina_cli/memory_service.py MemoryService.get_relevant_findings 2 2 0 0%
src/alprina_cli/memory_service.py MemoryService.get_tool_context 2 2 0 0%
src/alprina_cli/memory_service.py MemoryService.clear_user_memory 8 8 0 0%
src/alprina_cli/memory_service.py MemoryService._format_finding 16 16 0 0%
src/alprina_cli/memory_service.py MemoryService.is_enabled 1 1 0 0%
src/alprina_cli/memory_service.py get_memory_service 3 3 0 0%
src/alprina_cli/memory_service.py init_memory_service 2 2 0 0%
src/alprina_cli/memory_service.py (no function) 23 23 0 0%
src/alprina_cli/mitigation.py mitigate_command 15 15 0 0%
src/alprina_cli/mitigation.py _load_findings_from_events 8 8 0 0%
src/alprina_cli/mitigation.py _load_findings_from_report 8 8 0 0%
src/alprina_cli/mitigation.py _generate_mitigation 10 10 0 0%
src/alprina_cli/mitigation.py _provide_generic_mitigation 4 4 0 0%
src/alprina_cli/mitigation.py (no function) 13 13 0 0%
src/alprina_cli/policy.py load_policy 9 9 0 0%
src/alprina_cli/policy.py save_policy 3 3 0 0%
src/alprina_cli/policy.py validate_target 16 16 0 0%
src/alprina_cli/policy.py _validate_ip 7 7 0 0%
src/alprina_cli/policy.py _validate_domain 8 8 0 0%
src/alprina_cli/policy.py validate_file 4 4 0 0%
src/alprina_cli/policy.py policy_init_command 7 7 0 0%
src/alprina_cli/policy.py policy_test_command 9 9 0 0%
src/alprina_cli/policy.py check_intrusive_allowed 3 3 0 0%
src/alprina_cli/policy.py get_scan_limits 4 4 0 0%
src/alprina_cli/policy.py (no function) 21 0 0 100%
src/alprina_cli/quick_scanner.py QuickScanner.__init__ 3 3 0 0%
src/alprina_cli/quick_scanner.py QuickScanner.scan_directory 12 12 0 0%
src/alprina_cli/quick_scanner.py QuickScanner._should_skip 7 7 0 0%
src/alprina_cli/quick_scanner.py QuickScanner._scan_file 13 13 0 0%
src/alprina_cli/quick_scanner.py QuickScanner.get_summary 1 1 0 0%
src/alprina_cli/quick_scanner.py quick_scan 4 4 0 0%
src/alprina_cli/quick_scanner.py (no function) 22 5 0 77%
src/alprina_cli/quickstart.py QuickstartTutorial.__init__ 1 1 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial.run 11 11 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._show_welcome 2 2 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._choose_scan_type 8 8 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._run_demo_scan 17 17 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._explain_demo_results 21 21 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._get_simple_explanation 2 2 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._run_website_scan 5 5 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._run_directory_scan 5 5 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._run_file_scan 5 5 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._show_next_steps 2 2 0 0%
src/alprina_cli/quickstart.py QuickstartTutorial._mark_tutorial_complete 4 4 0 0%
src/alprina_cli/quickstart.py quickstart_command 2 2 0 0%
src/alprina_cli/quickstart.py (no function) 23 23 0 0%
src/alprina_cli/report_generator.py generate_security_reports 19 19 0 0%
src/alprina_cli/report_generator.py _generate_security_report 33 33 0 0%
src/alprina_cli/report_generator.py _generate_findings_report 25 25 0 0%
src/alprina_cli/report_generator.py _generate_remediation_report 19 19 0 0%
src/alprina_cli/report_generator.py _generate_executive_summary 28 28 0 0%
src/alprina_cli/report_generator.py _get_risk_explanation 3 3 0 0%
src/alprina_cli/report_generator.py _get_cwe_reference 2 2 0 0%
src/alprina_cli/report_generator.py _get_remediation_steps 5 5 0 0%
src/alprina_cli/report_generator.py _generate_red_team_report 25 25 0 0%
src/alprina_cli/report_generator.py _generate_blue_team_report 34 34 0 0%
src/alprina_cli/report_generator.py _generate_dfir_report 45 45 0 0%
src/alprina_cli/report_generator.py (no function) 17 0 0 100%
src/alprina_cli/reporting.py ensure_output_dir 1 1 0 0%
src/alprina_cli/reporting.py write_event 4 4 0 0%
src/alprina_cli/reporting.py load_events 10 10 0 0%
src/alprina_cli/reporting.py report_command 19 19 0 0%
src/alprina_cli/reporting.py _generate_json_report 7 7 0 0%
src/alprina_cli/reporting.py _generate_html_report 16 16 0 0%
src/alprina_cli/reporting.py _generate_pdf_report 11 11 0 0%
src/alprina_cli/reporting.py _create_html_template 11 11 0 0%
src/alprina_cli/reporting.py (no function) 19 0 0 100%
src/alprina_cli/sbom_command.py sbom_command 15 15 0 0%
src/alprina_cli/sbom_command.py _generate_cyclonedx 8 8 0 0%
src/alprina_cli/sbom_command.py _generate_spdx 8 8 0 0%
src/alprina_cli/sbom_command.py _generate_both 13 13 0 0%
src/alprina_cli/sbom_command.py _display_summary 28 28 0 0%
src/alprina_cli/sbom_command.py _handle_error 13 13 0 0%
src/alprina_cli/sbom_command.py (no function) 13 13 0 0%
src/alprina_cli/scanner.py scan_command 54 54 0 0%
src/alprina_cli/scanner.py _scan_local 5 5 0 0%
src/alprina_cli/scanner.py _scan_remote 5 5 0 0%
src/alprina_cli/scanner.py _run_quick_scan 7 7 0 0%
src/alprina_cli/scanner.py _display_quick_results 22 22 0 0%
src/alprina_cli/scanner.py _display_results 40 40 0 0%
src/alprina_cli/scanner.py _save_results 5 5 0 0%
src/alprina_cli/scanner.py recon_command 16 16 0 0%
src/alprina_cli/scanner.py _create_scan_entry 12 12 0 0%
src/alprina_cli/scanner.py _save_scan_results 8 8 0 0%
src/alprina_cli/scanner.py _scan_with_agents 21 21 0 0%
src/alprina_cli/scanner.py _run_container_scan 21 21 0 0%
src/alprina_cli/scanner.py _display_container_results 38 38 0 0%
src/alprina_cli/scanner.py _run_unified_scanner 75 75 0 0%
src/alprina_cli/scanner.py _display_unified_results 47 47 0 0%
src/alprina_cli/scanner.py (no function) 31 0 0 100%
src/alprina_cli/security_engine.py run_agent 10 10 0 0%
src/alprina_cli/security_engine.py _run_llm_analysis 4 4 0 0%
src/alprina_cli/security_engine.py _parse_alprina_result 24 24 0 0%
src/alprina_cli/security_engine.py _run_llm_analysis 11 11 0 0%
src/alprina_cli/security_engine.py _pattern_based_analysis 11 11 0 0%
src/alprina_cli/security_engine.py run_local_scan 18 18 0 0%
src/alprina_cli/security_engine.py run_remote_scan 3 3 0 0%
src/alprina_cli/security_engine.py _collect_scannable_files 9 9 0 0%
src/alprina_cli/security_engine.py _scan_file 12 12 0 0%
src/alprina_cli/security_engine.py (no function) 37 4 0 89%
src/alprina_cli/services/__init__.py (no function) 5 0 0 100%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService.__init__ 4 4 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService.find_abandoned_users 12 12 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService.send_reminder_email 19 19 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService._mark_email_sent 5 5 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService._generate_email_html 1 1 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService._generate_email_text 1 1 0 0%
src/alprina_cli/services/abandoned_checkout_service.py AbandonedCheckoutService.process_abandoned_checkouts 10 10 0 0%
src/alprina_cli/services/abandoned_checkout_service.py (no function) 15 15 0 0%
src/alprina_cli/services/alert_service.py AlertService.__init__ 4 0 0 100%
src/alprina_cli/services/alert_service.py AlertService.create_alert 13 13 0 0%
src/alprina_cli/services/alert_service.py AlertService._should_send_email 13 13 0 0%
src/alprina_cli/services/alert_service.py AlertService._send_email_notification 22 22 0 0%
src/alprina_cli/services/alert_service.py AlertService.mark_alert_read 7 7 0 0%
src/alprina_cli/services/alert_service.py AlertService.mark_all_alerts_read 7 7 0 0%
src/alprina_cli/services/alert_service.py AlertService.get_user_alerts 9 9 0 0%
src/alprina_cli/services/alert_service.py AlertService.get_unread_count 9 9 0 0%
src/alprina_cli/services/alert_service.py AlertService.create_scan_completion_alerts 11 11 0 0%
src/alprina_cli/services/alert_service.py (no function) 15 0 0 100%
src/alprina_cli/services/badge_generator.py BadgeGenerator.generate_svg 5 5 0 0%
src/alprina_cli/services/badge_generator.py BadgeGenerator._generate_standard_badge 6 6 0 0%
src/alprina_cli/services/badge_generator.py BadgeGenerator._generate_minimal_badge 5 5 0 0%
src/alprina_cli/services/badge_generator.py BadgeGenerator._generate_detailed_badge 10 10 0 0%
src/alprina_cli/services/badge_generator.py BadgeGenerator.generate_static_url 1 1 0 0%
src/alprina_cli/services/badge_generator.py BadgeGenerator.generate_verification_url 1 1 0 0%
src/alprina_cli/services/badge_generator.py (no function) 12 0 0 100%
src/alprina_cli/services/container_scanner.py ContainerScanner.__init__ 4 4 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._check_trivy 5 5 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner.scan_image 26 26 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner.scan_kubernetes 21 21 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner.scan_filesystem 18 18 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner.generate_sbom 15 15 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._analyze_image_results 19 19 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._analyze_config_results 11 11 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._analyze_filesystem_results 14 14 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._generate_recommendations 18 18 0 0%
src/alprina_cli/services/container_scanner.py ContainerScanner._install_guide 1 1 0 0%
src/alprina_cli/services/container_scanner.py get_container_scanner 3 3 0 0%
src/alprina_cli/services/container_scanner.py scan_docker_image 2 2 0 0%
src/alprina_cli/services/container_scanner.py scan_k8s_manifest 2 2 0 0%
src/alprina_cli/services/container_scanner.py (no function) 22 0 0 100%
src/alprina_cli/services/cve_service.py CVEService.__init__ 4 4 0 0%
src/alprina_cli/services/cve_service.py CVEService.get_cve_details 13 13 0 0%
src/alprina_cli/services/cve_service.py CVEService._parse_cve_data 26 26 0 0%
src/alprina_cli/services/cve_service.py CVEService.enrich_finding 25 25 0 0%
src/alprina_cli/services/cve_service.py CVEService._get_cwe_for_type 7 7 0 0%
src/alprina_cli/services/cve_service.py CVEService._get_cwe_name 2 2 0 0%
src/alprina_cli/services/cve_service.py CVEService._get_owasp_mapping 1 1 0 0%
src/alprina_cli/services/cve_service.py CVEService._estimate_cvss 9 9 0 0%
src/alprina_cli/services/cve_service.py CVEService._cvss_to_severity 9 9 0 0%
src/alprina_cli/services/cve_service.py CVEService._build_references 9 9 0 0%
src/alprina_cli/services/cve_service.py get_cve_service 3 3 0 0%
src/alprina_cli/services/cve_service.py enrich_finding 2 2 0 0%
src/alprina_cli/services/cve_service.py enrich_findings 2 2 0 0%
src/alprina_cli/services/cve_service.py (no function) 25 0 0 100%
src/alprina_cli/services/fix_generator.py FixGenerator.__init__ 2 2 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator.generate_fix 22 22 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator.generate_multiple_fixes 12 12 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._build_fix_prompt 7 7 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._get_system_prompt 1 1 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._parse_fix_response 18 18 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._extract_code_from_text 8 8 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._generate_diff 4 4 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._calculate_confidence 16 16 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator._get_language_from_filename 3 3 0 0%
src/alprina_cli/services/fix_generator.py FixGenerator.apply_fix 20 20 0 0%
src/alprina_cli/services/fix_generator.py get_fix_generator 3 3 0 0%
src/alprina_cli/services/fix_generator.py generate_fix 2 2 0 0%
src/alprina_cli/services/fix_generator.py apply_fix_to_file 2 2 0 0%
src/alprina_cli/services/fix_generator.py (no function) 22 0 0 100%
src/alprina_cli/services/insights_service.py InsightsService.__init__ 1 0 0 100%
src/alprina_cli/services/insights_service.py InsightsService.get_weekly_summary 17 17 0 0%
src/alprina_cli/services/insights_service.py InsightsService.get_most_scanned_target 9 9 0 0%
src/alprina_cli/services/insights_service.py InsightsService.get_security_trend 29 29 0 0%
src/alprina_cli/services/insights_service.py InsightsService.get_recommendations 26 26 0 0%
src/alprina_cli/services/insights_service.py InsightsService.get_top_vulnerable_targets 12 12 0 0%
src/alprina_cli/services/insights_service.py (no function) 10 0 0 100%
src/alprina_cli/services/sbom_generator.py SBOMGenerator.__init__ 1 1 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._check_tools 6 6 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._check_command 5 5 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator.generate_cyclonedx 25 25 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator.generate_spdx 25 25 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator.generate_both 24 24 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._read_sbom 8 8 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._analyze_cyclonedx 24 24 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._analyze_spdx 19 19 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._install_guide_cyclonedx 1 1 0 0%
src/alprina_cli/services/sbom_generator.py SBOMGenerator._install_guide_spdx 1 1 0 0%
src/alprina_cli/services/sbom_generator.py get_sbom_generator 3 3 0 0%
src/alprina_cli/services/sbom_generator.py generate_sbom 8 8 0 0%
src/alprina_cli/services/sbom_generator.py (no function) 21 0 0 100%
src/alprina_cli/tools/__init__.py register_tool 2 2 0 0%
src/alprina_cli/tools/__init__.py get_tool_by_name 4 4 0 0%
src/alprina_cli/tools/__init__.py get_all_tools 1 1 0 0%
src/alprina_cli/tools/__init__.py (no function) 18 0 0 100%
src/alprina_cli/tools/base.py ToolResult.__init__ 2 2 0 0%
src/alprina_cli/tools/base.py ToolResult.__str__ 1 1 0 0%
src/alprina_cli/tools/base.py ToolOk.__init__ 2 2 0 0%
src/alprina_cli/tools/base.py ToolError.__init__ 4 4 0 0%
src/alprina_cli/tools/base.py AlprinaToolBase.__init__ 13 1 0 92%
src/alprina_cli/tools/base.py AlprinaToolBase.execute 1 1 0 0%
src/alprina_cli/tools/base.py AlprinaToolBase.__call__ 103 103 0 0%
src/alprina_cli/tools/base.py AlprinaToolBase.to_dict 1 1 0 0%
src/alprina_cli/tools/base.py AlprinaToolBase.to_mcp_schema 1 1 0 0%
src/alprina_cli/tools/base.py AlprinaToolBase.__repr__ 1 1 0 0%
src/alprina_cli/tools/base.py SyncToolBase.__init__ 2 2 0 0%
src/alprina_cli/tools/base.py SyncToolBase.execute 1 1 0 0%
src/alprina_cli/tools/base.py SyncToolBase.__call__ 1 1 0 0%
src/alprina_cli/tools/base.py SyncToolBase.to_dict 1 1 0 0%
src/alprina_cli/tools/base.py (no function) 40 0 0 100%
src/alprina_cli/tools/file/__init__.py (no function) 4 0 0 100%
src/alprina_cli/tools/file/glob.py GlobTool.execute 34 34 0 0%
src/alprina_cli/tools/file/glob.py GlobTool._validate_pattern 5 5 0 0%
src/alprina_cli/tools/file/glob.py GlobTool._glob_search 5 5 0 0%
src/alprina_cli/tools/file/glob.py (no function) 18 0 0 100%
src/alprina_cli/tools/file/grep.py GrepTool.execute 19 19 0 0%
src/alprina_cli/tools/file/grep.py GrepTool._search_file 17 17 0 0%
src/alprina_cli/tools/file/grep.py GrepTool._search_directory 12 12 0 0%
src/alprina_cli/tools/file/grep.py GrepTool._format_results 19 19 0 0%
src/alprina_cli/tools/file/grep.py (no function) 23 0 0 100%
src/alprina_cli/tools/file/read.py ReadFileTool.execute 43 43 0 0%
src/alprina_cli/tools/file/read.py ReadFileTool._is_binary 12 12 0 0%
src/alprina_cli/tools/file/read.py (no function) 17 0 0 100%
src/alprina_cli/tools/security/__init__.py (no function) 3 0 0 100%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool.execute 33 33 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._manifest_analysis 25 25 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._permission_analysis 28 28 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._code_review_analysis 23 23 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._crypto_analysis 16 16 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._network_analysis 18 18 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._full_analysis 7 7 0 0%
src/alprina_cli/tools/security/android_sast.py AndroidSASTTool._filter_by_severity 3 3 0 0%
src/alprina_cli/tools/security/android_sast.py (no function) 26 0 0 100%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool.execute 36 36 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._threat_hunt_operation 12 12 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._hunt_file 16 16 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._incident_response_operation 19 19 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._log_analysis_operation 22 22 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._ioc_search_operation 21 21 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._baseline_operation 13 13 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._full_defense_operation 6 6 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._filter_by_severity 3 3 0 0%
src/alprina_cli/tools/security/blue_team.py BlueTeamTool._is_binary 6 6 0 0%
src/alprina_cli/tools/security/blue_team.py (no function) 27 0 0 100%
src/alprina_cli/tools/security/dfir.py DFIRTool.execute 30 30 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._evidence_collection_operation 14 14 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._collect_file_evidence 11 11 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._timeline_analysis_operation 16 16 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._artifact_extraction_operation 17 17 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._hash_verification_operation 13 13 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._hash_file 6 6 0 0%
src/alprina_cli/tools/security/dfir.py DFIRTool._full_forensics_operation 7 7 0 0%
src/alprina_cli/tools/security/dfir.py (no function) 26 0 0 100%
src/alprina_cli/tools/security/exploit.py ExploitTool.execute 19 19 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._exploit_local 10 10 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._test_file_exploits 17 17 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._test_sql_injection 9 9 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._test_xss 9 9 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._test_path_traversal 9 9 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._test_command_injection 9 9 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._exploit_remote 5 5 0 0%
src/alprina_cli/tools/security/exploit.py ExploitTool._is_binary 6 6 0 0%
src/alprina_cli/tools/security/exploit.py (no function) 24 0 0 100%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool.__init__ 2 0 0 100%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool._get_alprina_agent 10 10 0 0%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool.execute 14 14 0 0%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool._analyze_with_cai 5 5 0 0%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool._analyze_builtin 13 13 0 0%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool._parse_cai_response 12 12 0 0%
src/alprina_cli/tools/security/network_analyzer.py NetworkAnalyzerTool._is_ip_address 4 4 0 0%
src/alprina_cli/tools/security/network_analyzer.py (no function) 26 1 0 96%
src/alprina_cli/tools/security/recon.py ReconTool.execute 14 14 0 0%
src/alprina_cli/tools/security/recon.py ReconTool._recon_network 17 17 0 0%
src/alprina_cli/tools/security/recon.py ReconTool._recon_file 18 18 0 0%
src/alprina_cli/tools/security/recon.py ReconTool._scan_common_ports 13 13 0 0%
src/alprina_cli/tools/security/recon.py ReconTool._detect_technologies 6 6 0 0%
src/alprina_cli/tools/security/recon.py ReconTool._is_network_target 8 8 0 0%
src/alprina_cli/tools/security/recon.py (no function) 21 0 0 100%
src/alprina_cli/tools/security/red_team.py RedTeamTool.execute 32 32 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._recon_operation 16 16 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._initial_access_operation 14 14 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._privilege_escalation_operation 13 13 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._lateral_movement_operation 8 8 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._exfiltration_operation 12 12 0 0%
src/alprina_cli/tools/security/red_team.py RedTeamTool._full_chain_operation 8 8 0 0%
src/alprina_cli/tools/security/red_team.py (no function) 23 0 0 100%
src/alprina_cli/tools/security/scan.py ScanParams.validate_target 3 3 0 0%
src/alprina_cli/tools/security/scan.py ScanTool.__init__ 2 0 0 100%
src/alprina_cli/tools/security/scan.py ScanTool._build_agent_mapping 3 1 0 67%
src/alprina_cli/tools/security/scan.py ScanTool.execute 14 14 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._scan_local 4 4 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._scan_remote 3 3 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._scan_local_builtin 6 6 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._scan_remote_builtin 6 6 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._analyze_file 15 15 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._analyze_directory 10 10 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._is_local_target 1 1 0 0%
src/alprina_cli/tools/security/scan.py ScanTool._is_valid_remote_target 8 8 0 0%
src/alprina_cli/tools/security/scan.py (no function) 36 3 0 92%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool.execute 26 26 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._scan_local 10 10 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._scan_file 17 17 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._check_secrets 8 8 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._check_injection 11 11 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._check_crypto 7 7 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._check_config 6 6 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._check_code_quality 5 5 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._scan_remote 6 6 0 0%
src/alprina_cli/tools/security/vuln_scan.py VulnScanTool._is_binary 6 6 0 0%
src/alprina_cli/tools/security/vuln_scan.py (no function) 25 0 0 100%
src/alprina_cli/unified_scanner.py UnifiedScanner.__init__ 8 8 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner.scan 30 30 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner.scan_multi_contract 29 29 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._select_analyzers 16 16 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._run_parallel 14 14 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._run_sequential 8 8 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._run_analyzer 35 35 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._process_analyzer_results 3 3 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._calculate_economic_impact_for_all 10 10 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._map_vulnerability_type 12 12 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._deduplicate_vulnerabilities 8 8 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._sort_vulnerabilities 2 2 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._generate_report 9 9 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._save_report 7 7 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._save_json_report 3 3 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._save_markdown_report 15 15 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._save_html_report 1 1 0 0%
src/alprina_cli/unified_scanner.py UnifiedScanner._save_text_report 12 12 0 0%
src/alprina_cli/unified_scanner.py (no function) 94 10 0 89%
src/alprina_cli/utils/__init__.py (no function) 1 0 0 100%
src/alprina_cli/utils/agent_loader.py load_agent_module_silent 10 10 0 0%
src/alprina_cli/utils/agent_loader.py get_local_agent 16 16 0 0%
src/alprina_cli/utils/agent_loader.py (no function) 12 12 0 0%
src/alprina_cli/utils/errors.py AlprinaError.__init__ 4 4 0 0%
src/alprina_cli/utils/errors.py AlprinaError.display 4 4 0 0%
src/alprina_cli/utils/errors.py AuthenticationError.__init__ 1 1 0 0%
src/alprina_cli/utils/errors.py RateLimitError.__init__ 1 1 0 0%
src/alprina_cli/utils/errors.py APIError.__init__ 4 4 0 0%
src/alprina_cli/utils/errors.py FileNotFoundError.__init__ 1 1 0 0%
src/alprina_cli/utils/errors.py NetworkError.__init__ 4 4 0 0%
src/alprina_cli/utils/errors.py InvalidTierError.__init__ 1 1 0 0%
src/alprina_cli/utils/errors.py ScanError.__init__ 4 4 0 0%
src/alprina_cli/utils/errors.py handle_error 11 11 0 0%
src/alprina_cli/utils/errors.py (no function) 22 0 0 100%
src/alprina_cli/utils/welcome.py get_auth_status 5 5 0 0%
src/alprina_cli/utils/welcome.py show_welcome 8 8 0 0%
src/alprina_cli/utils/welcome.py show_not_authenticated_error 1 1 0 0%
src/alprina_cli/utils/welcome.py (no function) 10 0 0 100%
src/alprina_cli/workflows.py WorkflowResult.__init__ 7 7 0 0%
src/alprina_cli/workflows.py WorkflowResult.add_step 1 1 0 0%
src/alprina_cli/workflows.py WorkflowResult.add_error 2 2 0 0%
src/alprina_cli/workflows.py WorkflowResult.complete 2 2 0 0%
src/alprina_cli/workflows.py WorkflowResult.duration 3 3 0 0%
src/alprina_cli/workflows.py WorkflowResult.to_dict 1 1 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.__init__ 3 3 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.execute_sequential 14 14 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.execute_routing 13 13 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.execute_parallel 19 19 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.execute_orchestrator_worker 21 21 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow.execute_evaluator_optimizer 28 28 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow._execute_step 32 32 0 0%
src/alprina_cli/workflows.py AlprinaWorkflow._optimize_params 7 7 0 0%
src/alprina_cli/workflows.py evaluate_scan_quality 21 21 0 0%
src/alprina_cli/workflows.py evaluate_comprehensive_scan 8 8 0 0%
src/alprina_cli/workflows.py comprehensive_security_scan 2 2 0 0%
src/alprina_cli/workflows.py parallel_multi_target_scan 3 3 0 0%
src/alprina_cli/workflows.py sequential_scan_and_report 3 3 0 0%
src/alprina_cli/workflows.py (no function) 32 32 0 0%
Total   14728 11981 0 19%

No items found using the specified filter.