Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/NVIDIA/SkillSpector
/ functions
Functions
2,044 in github.com/NVIDIA/SkillSpector
⨍
Functions
2,044
◇
Types & classes
379
↳
Endpoints
141
Method
test_from_subprocess_import_run_as_exec_sink
(self)
tests/nodes/analyzers/test_behavioral_taint_tracking.py:335
Method
test_fstring_propagates_taint
(self)
tests/nodes/analyzers/test_behavioral_taint_tracking.py:189
Method
test_ftp_scheme_warns
(self, caplog: pytest.LogCaptureFixture)
tests/unit/test_reviewer_nits.py:69
Method
test_full_context_preserved
(self)
tests/nodes/test_llm_analyzer_base.py:613
Method
test_full_coverage_complete
(self)
tests/nodes/test_analysis_completeness.py:56
Method
test_full_file_label
(self)
tests/nodes/test_llm_analyzer_base.py:143
Method
test_full_manifest_includes_all_fields
(self)
tests/nodes/analyzers/test_semantic_developer_intent.py:334
Method
test_full_matched_text_preserved
(self)
tests/nodes/test_llm_analyzer_base.py:607
Method
test_full_pipeline_clean_skill
Clean skill produces no MCP findings through full pipeline.
tests/test_mcp_tool_poisoning.py:744
Method
test_full_pipeline_poisoned_skill
TP1+TP2 findings survive meta_analyzer filtering.
tests/test_mcp_tool_poisoning.py:726
Method
test_garbage_raises
(self)
tests/unit/test_llm_utils.py:312
Method
test_gemini_cli_provider_selects
(self, monkeypatch: pytest.MonkeyPatch)
tests/unit/test_agent_cli.py:665
Method
test_generic_exception_records_ok_false
(self, mock_get_model: MagicMock)
tests/nodes/analyzers/test_semantic_security_discovery.py:324
Method
test_generic_exception_returns_empty
(self, mock_get_model: MagicMock)
tests/nodes/test_semantic_quality_policy.py:255
Method
test_generic_exception_returns_empty
(self, mock_get_model: MagicMock)
tests/nodes/analyzers/test_semantic_security_discovery.py:284
Method
test_genuine_loopback_default_url_is_exempt
Real loopback default URLs stay exempt (regression guard).
tests/test_mcp_tool_poisoning.py:540
Method
test_get_batches_creates_one_batch_per_file
(self)
contrib/multilingual/tests/tests-pro/test_gap_fill.py:383
Method
test_get_chat_model_returns_native_anthropic_client
( self, monkeypatch: pytest.MonkeyPatch )
tests/unit/test_llm_utils.py:114
Method
test_get_spec_returns_matching_binary
(self)
tests/unit/test_agent_cli.py:647
Method
test_get_spec_unknown_raises
(self)
tests/unit/test_agent_cli.py:651
Method
test_getattr_builtins_exec_produces_ast9
(self)
tests/nodes/analyzers/test_behavioral_ast.py:137
Method
test_getattr_eval_double_quotes_produces_ast9
(self)
tests/nodes/analyzers/test_behavioral_ast.py:141
Method
test_getattr_os_popen_produces_ast9
(self)
tests/nodes/analyzers/test_behavioral_ast.py:145
Method
test_getattr_os_system_produces_ast9
(self)
tests/nodes/analyzers/test_behavioral_ast.py:131
Method
test_getattr_with_literal_no_finding
(self)
tests/nodes/analyzers/test_behavioral_ast.py:117
Method
test_getattr_with_variable_produces_ast7
(self)
tests/nodes/analyzers/test_behavioral_ast.py:110
Method
test_getenv_to_httpx
(self)
tests/nodes/analyzers/test_behavioral_taint_tracking.py:68
Method
test_git_hosts_include_major_forges
(self)
tests/unit/test_input_handler_ssrf.py:193
Method
test_git_reset_in_example_section_is_filtered
git reset --hard inside 'example:' context is filtered.
tests/nodes/analyzers/test_static_runner_filtering.py:64
Method
test_github_url_allowed
(self, mock_run)
tests/unit/test_input_handler_ssrf.py:84
Method
test_gitlab_url_allowed
(self, mock_run)
tests/unit/test_input_handler_ssrf.py:92
Method
test_granular_keying_both_confirmed
Both instances confirmed independently via start_line.
tests/nodes/test_llm_analyzer_base.py:1252
Method
test_granular_keying_filters_per_instance
Two findings with the same rule_id in one file; LLM confirms only one.
tests/nodes/test_llm_analyzer_base.py:1200
Function
test_graph_invalid_skill_path_raises
Invalid skill_path raises instead of returning a clean low-risk report.
tests/integration/test_graph.py:58
Function
test_graph_invoke_returns_findings_and_report
Graph runs to completion; returns findings, SARIF report, report_body, risk_score.
tests/integration/test_graph.py:45
Function
test_graph_invoke_with_output_format_json
Invoking with output_format=json yields report_body as valid JSON with skill and risk_assessment.
tests/integration/test_graph.py:26
Function
test_graph_surfaces_degraded_llm_stage
End-to-end: use_llm requested but every LLM call fails. Proves (a) the operator.add reducer accumulates llm_call_log across the parallel anal
tests/integration/test_graph.py:70
Method
test_guard_after_context_cycle_still_passes
Guard should pass even after patches were applied and restored.
contrib/multilingual/tests/test_monkeypatch_fragility.py:185
Method
test_guard_after_setup_and_manual_restore_still_passes
Guard should pass after setup_deepseek_compat() + manual restore.
contrib/multilingual/tests/test_monkeypatch_fragility.py:195
Method
test_guard_catches_missing_base_prompt_param
If upstream removes 'base_prompt' from __init__, guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:219
Method
test_guard_catches_missing_batch_file_path_field
If Batch.file_path field is removed, guard must raise. Batch is a @dataclass — we test by removing the field from __dataclass_fields__.
contrib/multilingual/tests/test_monkeypatch_fragility.py:309
Method
test_guard_catches_missing_batch_param
If parse_response no longer accepts 'batch', guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:264
Method
test_guard_catches_missing_batch_param
(self)
contrib/multilingual/tests/test_monkeypatch_fragility.py:386
Method
test_guard_catches_missing_batch_param
(self)
contrib/multilingual/tests/test_monkeypatch_fragility.py:424
Method
test_guard_catches_missing_batch_param_on_meta_parse
(self)
contrib/multilingual/tests/test_monkeypatch_fragility.py:334
Method
test_guard_catches_missing_findings_field
If MetaAnalyzerResult no longer has 'findings' field.
contrib/multilingual/tests/test_monkeypatch_fragility.py:365
Method
test_guard_catches_missing_kwargs
If build_prompt no longer accepts **kwargs.
contrib/multilingual/tests/test_monkeypatch_fragility.py:401
Method
test_guard_catches_missing_main_param
If asyncio.run signature changes, guard uses saved _original_asyncio_run.
contrib/multilingual/tests/test_monkeypatch_fragility.py:447
Method
test_guard_catches_missing_meta_analyzer_model_validate
(self)
contrib/multilingual/tests/test_monkeypatch_fragility.py:348
Method
test_guard_catches_missing_model_param
If upstream removes 'model' from __init__, guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:235
Method
test_guard_catches_missing_model_validate
If LLMAnalysisResult.model_validate is removed, guard must raise. model_validate is a Pydantic metaclass-injected classmethod that ca
contrib/multilingual/tests/test_monkeypatch_fragility.py:279
Method
test_guard_catches_missing_new_event_loop
If asyncio.new_event_loop is removed, guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:459
Method
test_guard_catches_missing_response_schema_attr
If upstream removes response_schema class attr, guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:249
Method
test_guard_catches_missing_to_finding
If LLMFinding.to_finding is removed, guard must raise.
contrib/multilingual/tests/test_monkeypatch_fragility.py:302
Method
test_guard_passes_against_current_upstream_version
Entering context manager must not raise.
contrib/multilingual/tests/tests-pro/test_runner_patches.py:368
Method
test_handles_fence_with_trailing_whitespace
(self)
contrib/multilingual/tests/tests-pro/test_runner_patches.py:543
Method
test_handles_llm_exception
(self, mock_get_model: MagicMock)
tests/nodes/analyzers/test_semantic_developer_intent.py:219
Method
test_handles_only_opening_fence_no_closing
Edge: opening ``` but no closing ``` — should not crash.
contrib/multilingual/tests/tests-pro/test_runner_patches.py:547
Method
test_has_cli_capability
(self)
tests/unit/test_providers.py:438
Method
test_has_cli_capability
(self)
tests/unit/test_providers.py:475
Method
test_has_cli_capability
(self)
tests/unit/test_providers.py:499
Method
test_hidden_directories_skipped
Directories starting with '.' are not scanned for skills.
tests/test_multi_skill.py:112
Method
test_high_below_threshold_retained
HIGH finding at 0.2 confidence is retained (severity floor).
tests/nodes/test_meta_analyzer_fallback.py:88
Method
test_high_confidence_kept
Finding with high confidence passes through.
tests/nodes/test_meta_analyzer_fallback.py:71
Method
test_high_unconfirmed_kept_with_llm_unconfirmed_tag
A HIGH static finding NOT confirmed by the LLM must be kept. Same invariant as CRITICAL: the original finding is preserved and tagged
tests/nodes/test_llm_analyzer_base.py:1451
Method
test_homoglyph_in_name
Name with Cyrillic 'а' (U+0430) → TP2 finding, confidence >= 0.90.
tests/test_mcp_tool_poisoning.py:318
Method
test_honors_openai_base_url_override
(self, monkeypatch: pytest.MonkeyPatch)
tests/unit/test_providers.py:212
Method
test_html_comment
Description with HTML comment → TP1 finding, HIGH severity, confidence >= 0.90.
tests/test_mcp_tool_poisoning.py:200
Function
test_https_url_unchanged
https URLs continue to extract the host via urlparse without hitting the scp fallback.
tests/unit/test_input_handler.py:138
Method
test_identical_content_produces_same_hash
Unchanged file content must produce the same hash.
tests/nodes/analyzers/test_static_yara.py:470
Method
test_identical_manifests_returns_empty
Returns empty findings when current and previous manifests are identical.
tests/nodes/analyzers/test_mcp_rug_pull.py:50
Method
test_ignore_guidelines
(self)
tests/nodes/analyzers/test_static_patterns_anti_refusal.py:74
Method
test_ignore_rules_present
(self)
tests/unit/test_agent_cli.py:248
Method
test_ignore_user_config_present
(self)
tests/unit/test_agent_cli.py:244
Method
test_import_builtins_as_alias_dot_exec
``import builtins as b2; b2.exec(...)`` must still raise AST1.
tests/nodes/analyzers/test_behavioral_ast.py:328
Method
test_import_builtins_as_alias_sink
``import builtins as b2; b2.exec(input())`` must raise TT5.
tests/nodes/analyzers/test_behavioral_taint_tracking.py:495
Method
test_import_builtins_dot_exec
``import builtins; builtins.exec(...)`` must still raise AST1.
tests/nodes/analyzers/test_behavioral_ast.py:323
Method
test_import_builtins_dot_exec_sink
``import builtins; builtins.exec(input())`` must raise TT5.
tests/nodes/analyzers/test_behavioral_taint_tracking.py:489
Method
test_import_os_as_alias
(self)
tests/nodes/analyzers/test_behavioral_ast.py:248
Method
test_import_runner_leaves_original_init_untouched
Subprocess isolation: import runner → __init__ unchanged.
contrib/multilingual/tests/test_monkeypatch_invasiveness.py:141
Method
test_import_subprocess_as_alias
(self)
tests/nodes/analyzers/test_behavioral_ast.py:256
Method
test_importing_runner_does_not_apply_patches
(self)
contrib/multilingual/tests/tests-pro/test_runner_patches.py:306
Method
test_importlib_benign_module_no_false_positive
A benign dynamic import (``json.loads``) must not be treated as an exec sink.
tests/nodes/analyzers/test_behavioral_taint_tracking.py:521
Method
test_importlib_import_module_benign_no_false_positive
A benign dynamic import (``json.loads``) must not match a sink ladder.
tests/nodes/analyzers/test_behavioral_ast.py:372
Method
test_importlib_import_module_os_system
``importlib.import_module('os').system(...)`` must raise AST5.
tests/nodes/analyzers/test_behavioral_ast.py:357
Method
test_importlib_import_module_os_system_sink
``importlib.import_module('os').system(input())`` must raise TT5.
tests/nodes/analyzers/test_behavioral_taint_tracking.py:501
Method
test_importlib_import_module_subprocess_run
``importlib.import_module('subprocess').run(...)`` must raise AST4.
tests/nodes/analyzers/test_behavioral_ast.py:362
Method
test_importlib_import_module_subprocess_run_sink
``importlib.import_module('subprocess').run(input())`` must raise TT5.
tests/nodes/analyzers/test_behavioral_taint_tracking.py:507
Method
test_inappropriate_capability_flagged
(self)
tests/nodes/analyzers/test_semantic_developer_intent.py:424
Method
test_injection_cannot_add_capability_flags
Content containing '--dangerously-skip-permissions' must never reach argv.
tests/unit/test_agent_cli.py:559
Method
test_injection_in_param_description
Parameter description with 'ignore previous instructions' → TP3 finding.
tests/test_mcp_tool_poisoning.py:401
Method
test_injection_is_returned_as_text_not_executed
An injected shell command must come back as analysis text, not run.
tests/integration/test_agent_cli_live.py:87
Method
test_injection_payload_in_stdin_only
( self, mock_popen: MagicMock, _mock_binary: MagicMock )
tests/unit/test_agent_cli.py:395
Method
test_injection_with_escape_attempts_stays_on_stdin
Newlines and shell meta-chars in content must not break the argv list.
tests/unit/test_agent_cli.py:585
Method
test_injects_anthropic_version
(self)
tests/unit/test_anthropic_proxy_provider.py:181
Method
test_input_to_eval
(self)
tests/nodes/analyzers/test_behavioral_taint_tracking.py:106
Method
test_instance_attributes_dont_cross_contaminate
Two instances each get their own response_schema=None; class attr intact. This is the core V2 fix: ``self.response_schema = None`` writes to
contrib/multilingual/tests/test_monkeypatch_invasiveness.py:325
Method
test_instruction_keyword_in_comment
HTML comment with instruction keyword → TP1, confidence >= 0.95.
tests/test_mcp_tool_poisoning.py:290
Method
test_integer_input_returns_empty_list
(self)
contrib/multilingual/tests/tests-pro/test_gap_fill.py:220
Method
test_intent_validation
(self)
tests/nodes/test_llm_analyzer_base.py:813
← previous
next →
1,101–1,200 of 2,044, ranked by callers