Optimize prompts, code, and more with AI-powered Reflective Optimization
This report summarizes scanner evidence for gepa-ai/gepa, a Jupyter Notebook project with 6,937 GitHub stars. SynthScan examined 91,461 lines of code across 447 source files, recording 1949 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 35.0 (High pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1129 finding(s).
Are imports declared and package/API names verified? 238 finding(s).
Are wrappers, guards, and repeated structures necessary? 1413 finding(s).
Which changes need focused human review? 1949 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1949 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_mcp_adapter.py | 146 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 148 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 235 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 237 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 455 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 457 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 576 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 578 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 625 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_mcp_adapter.py | 627 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 32 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 34 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 91 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 93 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 430 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 432 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 556 | # ============================================================================ | COMMENT |
| MEDIUM | tests/test_mcp_adapter.py | 558 | # ============================================================================ | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 154 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 156 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 213 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 215 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 267 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 269 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 327 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 329 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 419 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 421 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 677 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 679 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 756 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 758 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 820 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 822 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 885 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 887 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1058 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1060 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1128 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1130 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1231 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_callbacks.py | 1233 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_callbacks.py | 45 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_callbacks.py | 47 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_callbacks.py | 1294 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_callbacks.py | 1296 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 381 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 383 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 394 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 396 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 419 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_reflection_lm.py | 421 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 200 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 202 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 307 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 309 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 527 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM | tests/test_reflection_lm.py | 530 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_combee_reflection_lm.py | 182 | # --------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | tests/test_combee_reflection_lm.py | 184 | # --------------------------------------------------------------------------- | COMMENT |
| 244 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_gepa_utils.py | 6 | def test_select_program_candidate_respects_frequency_bias(): | CODE |
| LOW | tests/test_dspy_adapter_output_normalization.py | 13 | def test_stripped_lm_call_accepts_string_subclasses_without_losing_metadata(): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 115 | def test_create_streamable_http_client(self): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 124 | def test_create_client_invalid_both_params(self, server_params): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 132 | def test_create_client_missing_params(self): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 137 | def test_create_client_invalid_transport(self): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 154 | def test_adapter_with_single_tool(self, server_params, simple_metric): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 243 | def test_build_system_prompt_single_tool(self, server_params, simple_metric): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 463 | def test_make_reflective_dataset_tool_description(self, server_params, simple_metric, seed_candidate): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 584 | def test_multi_tool_initialization(self, server_params, simple_metric): | CODE |
| LOW⚡ | tests/test_mcp_adapter.py | 633 | def test_two_pass_enabled_by_default(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 167 | def test_adapter_with_multiple_tools(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 179 | def test_adapter_with_remote_sse(self, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 194 | def test_adapter_with_remote_streamable_http(self, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 206 | def test_adapter_with_callable_model(self, server_params, simple_metric, mock_model_callable): | CODE |
| LOW | tests/test_mcp_adapter.py | 218 | def test_adapter_custom_parameters(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 267 | def test_build_system_prompt_multiple_tools(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 292 | def test_extract_tool_response(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 316 | def test_extract_tool_response_with_error(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 337 | def test_extract_tool_response_with_structured_content(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 356 | def test_extract_tool_response_with_image_content(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 377 | def test_generate_tool_feedback_success(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 403 | def test_generate_tool_feedback_failure(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 515 | def test_make_reflective_dataset_system_prompt(self, server_params, simple_metric, seed_candidate): | CODE |
| LOW | tests/test_mcp_adapter.py | 597 | def test_multi_tool_system_prompt_generation(self, server_params, simple_metric): | CODE |
| LOW | tests/test_mcp_adapter.py | 644 | def test_two_pass_can_be_disabled(self, server_params, simple_metric): | CODE |
| LOW | tests/test_evaluation_cache.py | 22 | def test_empty_cache_returns_none(self): | CODE |
| LOW | tests/test_evaluation_cache.py | 36 | def test_different_examples_separate_entries(self): | CODE |
| LOW | tests/test_evaluation_cache.py | 45 | def test_different_candidates_separate_entries(self): | CODE |
| LOW | tests/test_evaluation_cache.py | 86 | def test_unknown_split_is_rejected(self): | CODE |
| LOW | tests/test_evaluation_cache.py | 119 | def test_optimize_with_caching_enabled(self, tmp_path): | CODE |
| LOW | tests/test_evaluation_cache.py | 135 | def test_caching_does_not_break_optimization(self, tmp_path): | CODE |
| LOW | tests/test_evaluation_cache.py | 186 | def test_aime_prompt_optimize_with_cache(mocked_lms, recorder_dir): | CODE |
| LOW | tests/test_evaluation_cache.py | 245 | def test_pareto_frontier_type_with_cache(pareto_mocked_lms, pareto_recorder_dir, frontier_type): | CODE |
| LOW | tests/test_result.py | 35 | def test_to_dict_omits_runtime_oa_fields(): | CODE |
| LOW | tests/test_data_loader.py | 59 | def test_list_data_loader_basic(): | CODE |
| LOW | tests/test_data_loader.py | 69 | def test_staged_data_loader_unlocks_after_batches(): | CODE |
| LOW | tests/test_data_loader.py | 96 | def test_staged_data_loader_manual_unlock(): | CODE |
| LOW | tests/test_optimize_anything_callbacks.py | 25 | def test_callbacks_receive_events(self): | CODE |
| LOW | tests/test_optimize_anything_callbacks.py | 83 | def test_no_callbacks_default(self): | CODE |
| LOW | tests/test_optimize_anything_callbacks.py | 95 | def test_proposal_events_received(self): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 38 | def test_tracking_key_is_forwarded_not_dropped(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 45 | def test_unknown_key_fails_fast(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 51 | def test_legacy_gepa_config_call_returns_gepa_result(): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 76 | def test_legacy_gepa_config_returns_gepa_result_even_when_budget_dies_early(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 100 | def test_legacy_max_workers_sizes_the_eval_server(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 110 | def test_legacy_parallel_false_maps_to_sequential_eval_server(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 118 | def test_legacy_max_workers_none_falls_back_to_cpu_count(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 128 | def test_legacy_run_dir_unset_leaves_output_dir_none(): | CODE |
| LOW⚡ | tests/test_optimize_anything_gepa_config.py | 137 | def test_legacy_run_dir_also_holds_the_eval_output(tmp_path, monkeypatch): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 166 | def test_legacy_gepa_config_accepts_test_set(): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 190 | def test_no_config_returns_unified_gepa_result(monkeypatch): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 245 | def test_no_config_accepts_test_set(monkeypatch): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 274 | def test_explicit_optimize_anything_config_returns_unified_gepa_result(): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 303 | def test_non_gepa_engine_returns_single_candidate_gepa_result(monkeypatch): | CODE |
| LOW | tests/test_optimize_anything_gepa_config.py | 347 | def test_full_config_passthrough_and_reflective_dataset_persistence(tmp_path): | CODE |
| LOW | tests/conftest.py | 9 | def create_mocked_lms_context(cache_dir: Path): | CODE |
| LOW⚡ | tests/test_callbacks.py | 162 | def test_callback_protocol_is_runtime_checkable(self): | CODE |
| LOW⚡ | tests/test_callbacks.py | 171 | def test_empty_callback_implementation(self): | CODE |
| LOW⚡ | tests/test_callbacks.py | 221 | def test_on_optimization_start_called_with_correct_args(self): | CODE |
| 756 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_optimize_anything_autoresearch_engine.py | 176 | except ProcessLookupError: | CODE |
| HIGH | tests/test_code_execution.py | 87 | except psutil.NoSuchProcess: | CODE |
| HIGH | tests/test_batch_evaluator_user_fn.py | 418 | except Exception: # only the warning matters here | CODE |
| HIGH | examples/adrs/can_be_late/utils/simulation.py | 252 | except Exception: | CODE |
| HIGH | src/gepa/optimize_anything.py | 380 | except Exception: | CODE |
| HIGH | src/gepa/lm.py | 192 | except Exception: | CODE |
| HIGH | src/gepa/utils/stop_condition.py | 133 | except (OSError, ValueError): | CODE |
| HIGH | src/gepa/utils/stop_condition.py | 146 | except (OSError, ValueError): | CODE |
| HIGH | src/gepa/utils/code_execution.py | 235 | except ImportError: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 244 | except ImportError: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 263 | except ImportError: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 265 | except Exception: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 261 | except psutil.NoSuchProcess: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 259 | except psutil.NoSuchProcess: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 618 | except OSError: | CODE |
| HIGH | src/gepa/utils/code_execution.py | 601 | except Exception: | CODE |
| HIGH | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 410 | except (json.JSONDecodeError, KeyError): | CODE |
| HIGH | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 168 | except Exception: | CODE |
| HIGH | …ters/generic_rag_adapter/vector_stores/milvus_store.py | 45 | except Exception: | CODE |
| HIGH | …rs/generic_rag_adapter/vector_stores/weaviate_store.py | 163 | except Exception: | CODE |
| HIGH | …c/gepa/adapters/langchain_adapter/langchain_adapter.py | 192 | except ImportError: | CODE |
| HIGH | …pters/terminal_bench_adapter/terminal_bench_adapter.py | 82 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/cost_tracker.py | 102 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/swe_harness.py | 115 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/swe_fitness_fn.py | 184 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/evaluate/mini_swe_agent.py | 133 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/evaluate/claude_code_skills.py | 264 | except Exception: | CODE |
| HIGH | src/gepa/gskill/gskill/evaluate/claude_code.py | 809 | except Exception: | CODE |
| HIGH | …/gepa/examples/mcp_adapter/mcp_optimization_example.py | 52 | except ImportError: | CODE |
| HIGH | src/gepa/examples/rag_adapter/rag_optimization.py | 304 | except Exception: | CODE |
| HIGH | src/gepa/examples/rag_adapter/rag_optimization.py | 370 | except Exception: | CODE |
| HIGH | src/gepa/examples/rag_adapter/rag_optimization.py | 794 | except Exception: | CODE |
| HIGH | src/gepa/oa/eval_server.py | 593 | except Exception: | CODE |
| HIGH | src/gepa/oa/eval_server.py | 379 | except Exception: | CODE |
| HIGH | src/gepa/oa/eval_server.py | 585 | except OSError: | CODE |
| HIGH | src/gepa/oa/proposers/claude_code_agent.py | 640 | except OSError: | CODE |
| HIGH | src/gepa/oa/engines/autoresearch.py | 152 | except ProcessLookupError: | CODE |
| HIGH | src/gepa/oa/engines/meta_harness.py | 1000 | except OSError: | CODE |
| HIGH | src/gepa/oa/engines/meta_harness.py | 472 | except OSError: | CODE |
| HIGH | src/gepa/oa/engines/meta_harness.py | 880 | except Exception: | CODE |
| HIGH | src/gepa/oa/engines/claude_utils.py | 37 | except OSError: | CODE |
| HIGH | src/gepa/logging/experiment_tracker.py | 400 | except Exception: | CODE |
| HIGH | src/gepa/logging/experiment_tracker.py | 409 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_optimize_anything_callbacks.py | 6 | CODE | |
| LOW | tests/test_refiner.py | 11 | CODE | |
| LOW | tests/test_best_example_evals.py | 6 | CODE | |
| LOW | tests/test_optimize_anything_adaptive_sequential.py | 1 | CODE | |
| LOW | tests/test_attach_existing_run.py | 6 | CODE | |
| LOW | tests/test_attach_existing_run.py | 8 | CODE | |
| LOW | tests/test_best_of_n_engine.py | 20 | CODE | |
| LOW | tests/test_langchain_adapter.py | 18 | CODE | |
| LOW | tests/test_eval_server_register.py | 13 | CODE | |
| LOW | tests/test_optimize_anything_eval_server.py | 1 | CODE | |
| LOW | tests/ensure_gepa_dspy_dependency.py | 4 | CODE | |
| LOW | tests/test_seed_candidate_typing.py | 11 | CODE | |
| LOW | tests/test_dspy_full_program_adapter.py | 13 | CODE | |
| LOW | tests/test_dspy_full_program_adapter.py | 19 | CODE | |
| LOW | …sts/test_confidence_adapter/test_confidence_adapter.py | 14 | CODE | |
| LOW | tests/test_confidence_adapter/test_scoring.py | 12 | CODE | |
| LOW | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 10 | CODE | |
| LOW | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 64 | CODE | |
| LOW | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 64 | CODE | |
| LOW | docs/hooks/blog_sections.py | 3 | CODE | |
| LOW | examples/blackbox/utils.py | 4 | CODE | |
| LOW | examples/blackbox/utils.py | 5 | CODE | |
| LOW | examples/blackbox/evalset/evalset.py | 42 | CODE | |
| LOW | examples/confidence_adapter/main.py | 32 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 11 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 11 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 11 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 11 | CODE | |
| LOW | examples/adrs/can_be_late/__init__.py | 17 | CODE | |
| LOW | examples/adrs/can_be_late/utils/dataset.py | 3 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulator/main.py | 35 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 12 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 15 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 16 | CODE | |
| LOW | …e_late/utils/simulator/sky_spot/strategies/__init__.py | 1 | CODE | |
| LOW | …e_late/utils/simulator/sky_spot/strategies/strategy.py | 10 | CODE | |
| LOW | …e_late/utils/simulator/sky_spot/strategies/strategy.py | 12 | CODE | |
| LOW | …e_late/utils/simulator/sky_spot/strategies/strategy.py | 12 | CODE | |
| LOW | examples/adrs/cloudcast/utils/simulation.py | 17 | CODE | |
| LOW | examples/adrs/cloudcast/utils/dataset.py | 4 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/__init__.py | 3 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/__init__.py | 3 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/__init__.py | 4 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/__init__.py | 5 | CODE | |
| LOW | …ples/adrs/cloudcast/utils/cloudcast/initial_program.py | 10 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/utils.py | 6 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/utils.py | 9 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/simulator.py | 4 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/simulator.py | 8 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/broadcast.py | 3 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/broadcast.py | 4 | CODE | |
| LOW | examples/langchain_adapter/pair_sum_product.py | 10 | CODE | |
| LOW | examples/langchain_adapter/big_number_arithmetic.py | 12 | CODE | |
| LOW | examples/langchain_adapter/gsm8k.py | 11 | CODE | |
| 156 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/test_evaluator_wrapper.py | 726 | except Exception: | CODE |
| LOW | tests/test_batch_evaluator_user_fn.py | 418 | except Exception: # only the warning matters here | CODE |
| LOW | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 66 | except Exception as e: # noqa | CODE |
| LOW | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 103 | except Exception as e: # noqa | CODE |
| LOW | docs/docs/guides/callbacks.md | 257 | except Exception: | CODE |
| LOW | docs/docs/guides/adapters.md | 205 | except Exception as e: | CODE |
| LOW | docs/hooks/scholarly_pdf.py | 82 | except Exception: | CODE |
| LOW⚡ | docs/scripts/generate_social_screenshots.py | 84 | except Exception as e: | CODE |
| LOW⚡ | docs/scripts/generate_social_screenshots.py | 91 | except Exception as e: | CODE |
| MEDIUM⚡ | docs/scripts/generate_social_screenshots.py | 92 | print(f"Error generating screenshots: {e}") | CODE |
| LOW | docs/scripts/generate_social_screenshots.py | 157 | except Exception as e: | CODE |
| LOW | examples/circle_packing/utils.py | 59 | except Exception as e: | CODE |
| LOW | examples/arc_agi/utils.py | 130 | except Exception: | CODE |
| LOW | examples/arc_agi/utils.py | 313 | except Exception as e: | CODE |
| LOW | examples/arc_agi/utils.py | 401 | except Exception as e: | CODE |
| LOW | examples/confidence_adapter/main.py | 153 | except Exception as _e: | CODE |
| LOW | examples/confidence_adapter/main.py | 167 | except Exception: | CODE |
| LOW | examples/confidence_adapter/main.py | 298 | except Exception as e: | CODE |
| MEDIUM | examples/confidence_adapter/main.py | 115 | def evaluator(data, response_text): | CODE |
| LOW⚡ | examples/adrs/can_be_late/utils/simulation.py | 95 | except Exception as e: | CODE |
| LOW⚡ | examples/adrs/can_be_late/utils/simulation.py | 252 | except Exception: | CODE |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 140 | except Exception as e: | CODE |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 399 | except Exception: | CODE |
| LOW | examples/adrs/can_be_late/utils/simulator/main.py | 67 | except Exception as e: | CODE |
| LOW⚡ | examples/adrs/cloudcast/utils/simulation.py | 90 | except Exception as e: | CODE |
| LOW | examples/adrs/cloudcast/utils/simulation.py | 137 | except Exception as e: | CODE |
| LOW | examples/adrs/cloudcast/utils/simulation.py | 149 | except Exception as e: | CODE |
| LOW | src/gepa/optimize_anything.py | 380 | except Exception: | CODE |
| LOW | src/gepa/optimize_anything.py | 415 | except Exception: | CODE |
| LOW | src/gepa/optimize_anything.py | 422 | except Exception: | CODE |
| LOW | src/gepa/gepa_launcher.py | 1063 | except Exception as e: | CODE |
| LOW | src/gepa/lm.py | 137 | except Exception: | CODE |
| LOW | src/gepa/lm.py | 192 | except Exception: | CODE |
| LOW | src/gepa/gepa_utils.py | 13 | except Exception: | CODE |
| LOW | src/gepa/core/engine.py | 1103 | except Exception as e: | CODE |
| LOW | src/gepa/core/engine.py | 1270 | except Exception as e: | CODE |
| LOW | src/gepa/core/callbacks.py | 470 | except Exception as e: | CODE |
| LOW | src/gepa/core/callbacks.py | 565 | except Exception as e: | CODE |
| LOW | src/gepa/core/state.py | 436 | except Exception as e: | CODE |
| LOW | src/gepa/utils/stop_condition.py | 79 | except Exception: | CODE |
| LOW | src/gepa/utils/stop_condition.py | 106 | except Exception: | CODE |
| MEDIUM | src/gepa/utils/code_execution.py | 31 | print(f"Error: {result.error}") | STRING |
| LOW | src/gepa/utils/code_execution.py | 265 | except Exception: | CODE |
| LOW | src/gepa/utils/code_execution.py | 330 | except Exception as e: | CODE |
| LOW | src/gepa/utils/code_execution.py | 495 | except Exception as _e: | CODE |
| LOW | src/gepa/utils/code_execution.py | 601 | except Exception: | STRING |
| LOW⚡ | …pa/proposer/reflective_mutation/reflective_mutation.py | 260 | except Exception as e: | CODE |
| LOW⚡ | …pa/proposer/reflective_mutation/reflective_mutation.py | 269 | except Exception as e2: | CODE |
| LOW | …pa/proposer/reflective_mutation/reflective_mutation.py | 500 | except Exception as e: | CODE |
| LOW | src/gepa/proposer/reflective_mutation/combee.py | 579 | except Exception: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 293 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 322 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 422 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 459 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 592 | except Exception as e: | STRING |
| LOW | src/gepa/adapters/mcp_adapter/mcp_client.py | 216 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_client.py | 314 | except Exception as e: | CODE |
| LOW | …ters/dspy_full_program_adapter/full_program_adapter.py | 117 | except Exception as e: | CODE |
| LOW | src/gepa/adapters/anymaths_adapter/anymaths_adapter.py | 109 | except Exception: | CODE |
| LOW | …gepa/adapters/confidence_adapter/confidence_adapter.py | 428 | except Exception: | CODE |
| 123 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/gepa/visualization.py | 249 | let pinnedIdx = null; // non-null when tooltip is click-pinned (scrollable) | CODE |
| HIGH | src/gepa/visualization.py | 250 | let hoverIdx = null; // non-null when hovering over a node | CODE |
| HIGH⚡ | src/gepa/visualization.py | 292 | pinnedIdx = null; | CODE |
| HIGH⚡ | src/gepa/visualization.py | 293 | hoverIdx = null; | CODE |
| HIGH⚡ | src/gepa/visualization.py | 300 | if (pinnedIdx !== null && tt.style.display === "block" | CODE |
| HIGH⚡ | src/gepa/visualization.py | 324 | if (pinnedIdx !== null) return; // don't override a pinned tooltip | CODE |
| HIGH⚡ | src/gepa/visualization.py | 329 | if (pinnedIdx !== null || hoverIdx !== idx) return; | CODE |
| HIGH⚡ | src/gepa/visualization.py | 333 | if (pinnedIdx !== null) return; | CODE |
| HIGH⚡ | src/gepa/visualization.py | 334 | hoverIdx = null; | CODE |
| HIGH | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 377 | trace_instances = [t for t in trace if t[0].signature.equals(module.signature)] | CODE |
| HIGH | …ters/dspy_full_program_adapter/full_program_adapter.py | 244 | if predictor.signature.equals(selected[0].signature): | CODE |
| HIGH⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 512 | id -u claude_user >/dev/null 2>&1 || useradd -m -s /bin/bash claude_user | CODE |
| HIGH⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 515 | chown -R claude_user:claude_user {DOCKER_WORKDIR} 2>/dev/null || true | CODE |
| HIGH⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 525 | ls -la {problem_file_container} 2>&1 || echo "Source not found" | CODE |
| HIGH | src/gepa/gskill/gskill/evaluate/claude_code.py | 309 | apt-get clean && rm -rf /var/lib/apt/lists/* | CODE |
| HIGH | src/gepa/gskill/gskill/evaluate/claude_code.py | 318 | RUN claude --version || echo "Claude Code installed" | CODE |
| HIGH | …/gepa/examples/mcp_adapter/mcp_optimization_example.py | 16 | Pull models: ollama pull llama3.1:8b && ollama pull qwen3:8b | STRING |
| HIGH | src/gepa/examples/rag_adapter/rag_optimization.py | 46 | - For Ollama: ollama pull qwen3:8b && ollama pull nomic-embed-text:latest | STRING |
| HIGH | src/gepa/oa/engines/meta_harness.py | 744 | # starts with a real best_score (not null) for iter 2+. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_evaluator_wrapper.py | 740 | CODE | |
| LOW | tests/test_optimize_anything_eval_server.py | 17 | CODE | |
| LOW | tests/test_rag_adapter/conftest.py | 95 | CODE | |
| LOW | tests/test_rag_adapter/test_rag_end_to_end.py | 246 | CODE | |
| LOW | docs/scripts/generate_social_screenshots.py | 54 | CODE | |
| LOW | docs/scripts/generate_social_screenshots.py | 96 | CODE | |
| LOW | docs/scripts/generate_api_docs.py | 246 | CODE | |
| LOW | examples/blackbox/evalset/evalset.py | 894 | CODE | |
| LOW | examples/confidence_adapter/main.py | 270 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 246 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 295 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 326 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulation.py | 376 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulator/main.py | 41 | CODE | |
| LOW | examples/adrs/can_be_late/utils/simulator/main.py | 72 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 404 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 708 | CODE | |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 733 | CODE | |
| LOW | …/adrs/can_be_late/utils/simulator/sky_spot/simulate.py | 123 | CODE | |
| LOW | examples/adrs/cloudcast/utils/simulation.py | 279 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/utils.py | 120 | CODE | |
| LOW | examples/adrs/cloudcast/utils/cloudcast/simulator.py | 143 | CODE | |
| LOW | src/gepa/visualization.py | 34 | CODE | |
| LOW | src/gepa/visualization.py | 105 | CODE | |
| LOW | src/gepa/gepa_launcher.py | 1132 | CODE | |
| LOW | src/gepa/core/engine.py | 268 | CODE | |
| LOW | src/gepa/core/engine.py | 520 | CODE | |
| LOW | src/gepa/core/engine.py | 714 | CODE | |
| LOW | src/gepa/core/state.py | 506 | CODE | |
| LOW | src/gepa/core/state.py | 922 | CODE | |
| LOW | src/gepa/strategies/instruction_proposal.py | 163 | CODE | |
| LOW | src/gepa/strategies/instruction_proposal.py | 172 | CODE | |
| LOW | src/gepa/strategies/instruction_proposal.py | 181 | CODE | |
| LOW | src/gepa/utils/code_execution.py | 248 | CODE | |
| LOW | src/gepa/utils/code_execution.py | 379 | CODE | |
| LOW | src/gepa/proposer/merge.py | 118 | CODE | |
| LOW | src/gepa/proposer/reflective_mutation/combee.py | 600 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 118 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 182 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 235 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 346 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 483 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 240 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 187 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 357 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 197 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 208 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 357 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 463 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 524 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 596 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_client.py | 318 | CODE | |
| LOW | …ters/dspy_full_program_adapter/full_program_adapter.py | 141 | CODE | |
| LOW | …ters/dspy_full_program_adapter/full_program_adapter.py | 191 | CODE | |
| LOW | …gepa/adapters/confidence_adapter/confidence_adapter.py | 151 | CODE | |
| LOW | …pa/adapters/generic_rag_adapter/generic_rag_adapter.py | 398 | CODE | |
| LOW | …ters/generic_rag_adapter/vector_stores/qdrant_store.py | 227 | CODE | |
| LOW | …ters/generic_rag_adapter/vector_stores/qdrant_store.py | 274 | CODE | |
| LOW | …ers/generic_rag_adapter/vector_stores/lancedb_store.py | 148 | CODE | |
| LOW | …ers/generic_rag_adapter/vector_stores/lancedb_store.py | 207 | CODE | |
| 33 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 130 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\\\\n\\\\nYour task is to read and accurately respond to di | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 133 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n1. Keto | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 135 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\", \"role\": \"system\"}, {\"content\": \"Based on this da | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 136 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\", \"role\": \"system\"}, {\"content\": \"Please describe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 136 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\", \"role\": \"system\"}, {\"content\": \"Please describe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 138 | "('reflection_lm', 'You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nBased on | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 139 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nPlease d | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 139 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nPlease d | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 140 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 140 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 140 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 140 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 141 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 143 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 144 | "('reflection_lm', 'You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nWrite me | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 146 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nPlease d | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 157 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 158 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 158 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 169 | "('reflection_lm', 'You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nI want yo | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 170 | "('reflection_lm', 'You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nHow does | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 170 | "('reflection_lm', 'You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nHow does | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 171 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 25 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW | tests/test_rag_adapter/conftest.py | 82 | # For testing, just return similarity search results | COMMENT |
| LOW | tests/test_rag_adapter/test_vector_store_interface.py | 60 | # For testing, just return similarity search results | COMMENT |
| MEDIUM | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 312 | # instead of just the current instruction, for more holistic instruction proposals. | COMMENT |
| MEDIUM | …ull_program_adapter/dspy_program_proposal_signature.py | 13 | prompt_template = """I am trying to solve a task using the DSPy framework. Here's a comprehensive overview of DSPy c | CODE |
| MEDIUM | src/gepa/gskill/gskill/swe_fitness_fn.py | 27 | # Create harness pool - one per worker | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/swe_fitness_fn.py | 51 | # Get a harness from the pool | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/evaluate/mini_swe_agent.py | 46 | # Get a harness from the pool | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/evaluate/mini_swe_agent.py | 322 | # Create harness pool | COMMENT |
| MEDIUM | src/gepa/oa/ensemble.py | 282 | # engine harness, which would otherwise re-score the held-out set per | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/test_pareto_frontier_types/llm_cache.json | 152 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| LOW⚡ | tests/test_pareto_frontier_types/llm_cache.json | 164 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n[REDACTE | CODE |
| LOW | tests/test_pareto_frontier_types/llm_cache.json | 44 | "('task_lm', '[{\"content\": \"You are a helpful assistant designed to assist with rewriting, translating, and respond | CODE |
| LOW | tests/test_pareto_frontier_types/llm_cache.json | 56 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n[REDACTE | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 2 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 3 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 4 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 7 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 12 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 15 | "('reflection_lm', \"I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 16 | "('task_lm', '[{\"content\": \"You are a helpful assistant. Your task is to answer math olympiad and contest-style pro | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 17 | "('task_lm', '[{\"content\": \"You are a helpful assistant. Your task is to answer math olympiad and contest-style pro | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 19 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 21 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 22 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 23 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 24 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 26 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 27 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 28 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 29 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 31 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 32 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 34 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 35 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW | docs/docs/guides/adapters.md | 39 | ### Step 1: Define Your Types | COMMENT |
| LOW | docs/docs/guides/adapters.md | 68 | ### Step 2: Implement `evaluate` | COMMENT |
| LOW | docs/docs/guides/adapters.md | 120 | ### Step 3: Implement `make_reflective_dataset` | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 63 | # Step 1: Query reformulation (if enabled) | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 68 | # Step 2: Retrieval | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 71 | # Step 3: Reranking (if enabled) | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 75 | # Step 4: Context synthesis | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 78 | # Step 5: Answer generation | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 705 | # Step 1: Setup vector store | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 709 | # Step 2: Create datasets | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 715 | # Step 3: Initialize LLM client | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 726 | # Step 4: Initialize RAG adapter | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 747 | # Step 5: Create initial prompts | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 751 | # Step 6: Test initial performance | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 759 | # Step 7: Run GEPA optimization | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 111 | ### Step 0: Post-eval reports (write if missing) | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 115 | ### Step 1: Analyze | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 140 | ### Step 2: Prototype — MANDATORY | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 150 | ### Step 3: Implement | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 160 | ### Step 4: Write pending_eval.json | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | tests/test_pareto_frontier_types/llm_cache.json | 152 | "('task_lm', '[{\"content\": \"You are a helpful assistant tasked with drafting written content for a variety of profe | CODE |
| LOW⚡ | tests/test_pareto_frontier_types/llm_cache.json | 164 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n[REDACTE | CODE |
| LOW | tests/test_pareto_frontier_types/llm_cache.json | 44 | "('task_lm', '[{\"content\": \"You are a helpful assistant designed to assist with rewriting, translating, and respond | CODE |
| LOW | tests/test_pareto_frontier_types/llm_cache.json | 56 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n[REDACTE | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 2 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 3 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 4 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 7 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 12 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 15 | "('reflection_lm', \"I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 16 | "('task_lm', '[{\"content\": \"You are a helpful assistant. Your task is to answer math olympiad and contest-style pro | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 17 | "('task_lm', '[{\"content\": \"You are a helpful assistant. Your task is to answer math olympiad and contest-style pro | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 19 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 21 | "('task_lm', '[{\"content\": \"You are a helpful assistant. You are given a question and you need to answer it. The an | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 22 | "('reflection_lm', 'I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 23 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 24 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 26 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 27 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 28 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 29 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 31 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 32 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 34 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | tests/test_aime_prompt_optimization/llm_cache.json | 35 | "('task_lm', '[{\"content\": \"You are a helpful assistant for mathematics competition problems. You will be given a q | CODE |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 63 | # Step 1: Query reformulation (if enabled) | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 68 | # Step 2: Retrieval | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 71 | # Step 3: Reranking (if enabled) | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 75 | # Step 4: Context synthesis | COMMENT |
| LOW⚡ | src/gepa/adapters/generic_rag_adapter/rag_pipeline.py | 78 | # Step 5: Answer generation | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 705 | # Step 1: Setup vector store | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 709 | # Step 2: Create datasets | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 715 | # Step 3: Initialize LLM client | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 726 | # Step 4: Initialize RAG adapter | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 747 | # Step 5: Create initial prompts | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 751 | # Step 6: Test initial performance | COMMENT |
| LOW⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 759 | # Step 7: Run GEPA optimization | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 111 | ### Step 0: Post-eval reports (write if missing) | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 115 | ### Step 1: Analyze | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 140 | ### Step 2: Prototype — MANDATORY | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 150 | ### Step 3: Implement | COMMENT |
| LOW⚡ | src/gepa/oa/engines/meta_harness.py | 160 | ### Step 4: Write pending_eval.json | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_rag_adapter/test_rag_end_to_end.py | 297 | # Create RAG configuration | COMMENT |
| MEDIUM⚡ | tests/test_rag_adapter/test_rag_end_to_end.py | 300 | # Create the RAG adapter with our mocked LLM | COMMENT |
| MEDIUM⚡ | tests/test_rag_adapter/test_rag_end_to_end.py | 307 | # Initial seed candidate with basic RAG prompts | COMMENT |
| MEDIUM⚡ | tests/test_rag_adapter/test_rag_end_to_end.py | 310 | # 2. Execution: Run the core RAG optimization logic | COMMENT |
| MEDIUM | …ude/skills/gepa-optimize-anything/scripts/preflight.py | 80 | # 3) agentic engines need the claude CLI (and autoresearch's eval.sh uses jq) | COMMENT |
| MEDIUM | …docs/blog/posts/2026-07-30-parallel-proposals/index.md | 170 | Parallel proposals fit into the bigger picture of scaling each reflection optimization step along several axes. P contro | CODE |
| MEDIUM | docs/docs/guides/faq.md | 576 | ### How do I use GEPA for agentic systems with expensive rollouts? | STRING |
| MEDIUM | docs/docs/guides/use-cases.md | 1132 | [:material-arrow-right: Read the blog post](https://super-agentic.ai/resources/super-posts/gepa-dspy-optimizer-super | CODE |
| MEDIUM | …pa/adapters/generic_rag_adapter/generic_rag_adapter.py | 264 | # Execute RAG pipeline with candidate prompts | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 1 | # Generic RAG Adapter for GEPA (DOCS ONLY) | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 24 | # Install RAG adapter dependencies | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 55 | # 2. Create the RAG adapter | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 150 | ### RAG Pipeline Flow | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 327 | ### RAG Pipeline Configuration | COMMENT |
| MEDIUM | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 544 | ### Unified RAG Optimization Script | STRING |
| MEDIUM⚡ | src/gepa/examples/rag_adapter/rag_optimization.py | 726 | # Step 4: Initialize RAG adapter | COMMENT |
| MEDIUM | src/gepa/examples/rag_adapter/requirements-rag.txt | 1 | # RAG Adapter Dependencies | COMMENT |
| MEDIUM | src/gepa/examples/rag_adapter/RAG_GUIDE.md | 1 | # GEPA Generic RAG Adapter Guide | COMMENT |
| MEDIUM | src/gepa/examples/rag_adapter/RAG_GUIDE.md | 108 | ## 🚀 Using the Unified RAG Optimization Script | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_mcp_adapter.py | 327 | # Create a proper MCP error result | COMMENT |
| MEDIUM | tests/test_refiner.py | 716 | # This function is passed directly to OptimizeAnythingAdapter (bypassing | COMMENT |
| MEDIUM | tests/test_module_selector.py | 159 | # Create a mock state (not used in the new implementation) | COMMENT |
| MEDIUM | …lbacks_integration/test_callbacks_with_optimization.py | 348 | # Create a callback that only implements some methods | COMMENT |
| MEDIUM⚡ | tests/test_rag_adapter/test_rag_end_to_end.py | 300 | # Create the RAG adapter with our mocked LLM | COMMENT |
| MEDIUM | examples/blackbox/evalset/problems.py | 107 | # # Create a test point at midpoint of bounds | COMMENT |
| MEDIUM | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 381 | # This method is only here because it's abstract in base class | COMMENT |
| MEDIUM | src/gepa/gepa_launcher.py | 1028 | # Create a fresh, shared log context for this evaluator call. | COMMENT |
| MEDIUM | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 86 | # Create a rich multimodal examples_with_feedback that includes both text and images | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/evaluate/mini_swe_agent.py | 305 | # Define the two evaluation conditions | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/evaluate/claude_code_skills.py | 109 | # Create the skill directory structure | COMMENT |
| MEDIUM⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 507 | # Create a runner script to avoid shell escaping issues | COMMENT |
| MEDIUM⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 529 | # Create a wrapper script for claude_user that reads from files | COMMENT |
| MEDIUM | src/gepa/gskill/gskill/evaluate/claude_code.py | 203 | # Create a set for fast lookup | COMMENT |
| MEDIUM⚡ | src/gepa/gskill/gskill/evaluate/claude_code.py | 375 | # Create the image from locally-built base | STRING |
| MEDIUM | …gskill/gskill/mini_swe_agent_config/original_mini.yaml | 60 | ### Create a new file: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_state.py | 695 | def set_adapter_state(self, state: dict) -> None: | CODE |
| LOW⚡ | docs/scripts/generate_social_screenshots.py | 96 | def update_og_tags(site_dir: str = "site", docs_dir: str = ".") -> None: | CODE |
| LOW | examples/adrs/can_be_late/__init__.py | 19 | __all__ = [ | CODE |
| LOW⚡ | examples/adrs/can_be_late/main.py | 37 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | examples/adrs/can_be_late/utils/simulation.py | 23 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/adrs/can_be_late/utils/simulator/main.py | 39 | logger = logging.getLogger(__name__) | CODE |
| LOW | …ples/adrs/can_be_late/utils/simulator/sky_spot/task.py | 4 | logger = logging.getLogger(__name__) | CODE |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | …/adrs/can_be_late/utils/simulator/sky_spot/simulate.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | …e_late/utils/simulator/sky_spot/strategies/strategy.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | examples/adrs/cloudcast/main.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | examples/adrs/cloudcast/utils/simulation.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/adrs/cloudcast/utils/dataset.py | 8 | logger = logging.getLogger(__name__) | CODE |
| LOW | examples/adrs/cloudcast/utils/cloudcast/__init__.py | 7 | __all__ = [ | CODE |
| LOW | src/gepa/optimize_anything.py | 466 | __all__ = [ | CODE |
| LOW | src/gepa/gepa_launcher.py | 313 | def _set_log_context(ctx: "LogContext | None") -> None: | CODE |
| LOW | src/gepa/gepa_launcher.py | 351 | def set_log_context(ctx: LogContext) -> None: | CODE |
| LOW | src/gepa/lm.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | src/gepa/core/callbacks.py | 43 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | src/gepa/core/state.py | 910 | def _update_objective_pareto_front(self, objective_scores: ObjectiveScores, program_idx: ProgramIdx) -> None: | CODE |
| LOW | src/gepa/strategies/eval_policy.py | 60 | __all__ = [ | CODE |
| LOW | src/gepa/utils/code_execution.py | 55 | def set_use_cloudpickle(value: bool) -> None: | CODE |
| LOW | src/gepa/utils/code_execution.py | 225 | def _set_random_seeds(seed: int) -> None: | CODE |
| LOW | src/gepa/utils/__init__.py | 41 | __all__ = [ | CODE |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 213 | def _update_tool_descriptions(self, program: Module, tool_candidates: dict[str, Any]) -> None: | STRING |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 502 | # def _update_candidate_tools(self, candidate, program, trajectories) -> None: | COMMENT |
| LOW | src/gepa/adapters/dspy_adapter/instruction_proposal.py | 10 | logger = logging.getLogger(__name__) | CODE |
| LOW⚡ | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/mcp_adapter/__init__.py | 22 | __all__ = [ | CODE |
| LOW | src/gepa/adapters/mcp_adapter/mcp_client.py | 14 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/dspy_full_program_adapter/__init__.py | 6 | __all__ = ["DspyAdapter"] | CODE |
| LOW | …ters/dspy_full_program_adapter/full_program_adapter.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/confidence_adapter/__init__.py | 17 | __all__ = [ | CODE |
| LOW⚡ | …gepa/adapters/confidence_adapter/confidence_adapter.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/generic_rag_adapter/__init__.py | 38 | __all__ = [ | CODE |
| LOW | …optimize_anything_adapter/optimize_anything_adapter.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | …optimize_anything_adapter/optimize_anything_adapter.py | 238 | def _update_best_example_evals(self, example: object, score: float, side_info: "SideInfo") -> None: | CODE |
| LOW | …c/gepa/adapters/langchain_adapter/langchain_adapter.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/adapters/langchain_adapter/__init__.py | 7 | __all__ = [ | CODE |
| LOW⚡ | …/gepa/examples/mcp_adapter/mcp_optimization_example.py | 62 | logger = logging.getLogger(__name__) | CODE |
| LOW | src/gepa/oa/__init__.py | 23 | __all__ = [ | CODE |
| LOW | src/gepa/oa/proposers/__init__.py | 14 | __all__ = ["ClaudeCodeAgentProposer"] | CODE |
| LOW | src/gepa/oa/engines/__init__.py | 14 | __all__ = ["AutoResearchEngine", "BestOfNEngine", "GepaEngine", "MetaHarnessEngine"] | CODE |
| LOW | src/gepa/oa/engines/best_of_n.py | 34 | logger = logging.getLogger(__name__) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/adrs/cloudcast/utils/cloudcast/utils.py | 47 | Create a networkx graph with capacity constraints and cost info. nodes: regions edges: links with the | STRING |
| HIGH | src/gepa/api.py | 105 | GEPA is an evolutionary optimizer that evolves (multiple) text components of a complex system to optimize them towa | STRING |
| HIGH | src/gepa/gepa_launcher.py | 1143 | Optimize any text artifact using LLM-guided search. This is the main entry point for GEPA. You declare the **what* | STRING |
| HIGH | src/gepa/adapters/mcp_adapter/mcp_client.py | 326 | Factory function to create the appropriate MCP client. Args: server_params: StdioServerParameters for | STRING |
| HIGH | …pa/adapters/generic_rag_adapter/generic_rag_adapter.py | 211 | Evaluate RAG system performance on a batch of query-answer examples. This method runs the complete RAG | STRING |
| HIGH | …adapters/generic_rag_adapter/vector_store_interface.py | 44 | Search for documents semantically similar to the query text. This method performs semantic similarity | STRING |
| HIGH | …adapters/generic_rag_adapter/vector_store_interface.py | 85 | Search using a pre-computed query embedding vector. This method allows direct vector similarity search | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …st_pareto_frontier_types/test_pareto_frontier_types.py | 0 | provides the path to the recording directory and ensures it exists. | STRING |
| HIGH | …lbacks_integration/test_callbacks_with_optimization.py | 0 | provides the path to the recording directory and ensures it exists. | STRING |
| HIGH | …_aime_prompt_optimization/test_aime_prompt_optimize.py | 0 | provides the path to the recording directory and ensures it exists. | STRING |
| HIGH | …ters/generic_rag_adapter/vector_stores/qdrant_store.py | 0 | search for documents similar to the query text using embeddings. | STRING |
| HIGH | …ers/generic_rag_adapter/vector_stores/lancedb_store.py | 0 | search for documents similar to the query text using embeddings. | STRING |
| HIGH | …ters/generic_rag_adapter/vector_stores/milvus_store.py | 0 | search for documents similar to the query text using embeddings. | STRING |
| HIGH | …rs/generic_rag_adapter/vector_stores/weaviate_store.py | 0 | search for documents similar to the query text using embeddings. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …ples/adrs/can_be_late/utils/simulator/sky_spot/task.py | 158 | # Check if progress has met or passed the end of this sub-task | COMMENT |
| LOW | …ples/adrs/can_be_late/utils/simulator/sky_spot/task.py | 199 | # Check if progress has met or passed the end of this sub-task (using a small tolerance) | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 311 | # Check if tick is within the valid range for this region | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 418 | # Check if we need to apply strong guarantee | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 428 | # Check if we have a working SPOT instance with no restart overhead | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 493 | # Check if trying to terminate the SAME instance type that was just launched | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 534 | # Check if this is a cold start (no instances running anywhere) | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 537 | # Check if this is a region switch | COMMENT |
| LOW | …mples/adrs/can_be_late/utils/simulator/sky_spot/env.py | 749 | # Check if we had a new launch in the previous tick | COMMENT |
| LOW | …/adrs/can_be_late/utils/simulator/sky_spot/simulate.py | 25 | # Check if this is a multi-region setup | COMMENT |
| LOW | …/adrs/can_be_late/utils/simulator/sky_spot/simulate.py | 39 | # Check if task became done after progress update | COMMENT |
| LOW | .github/workflows/build_and_release.yml | 152 | # Check if this exact version already exists on PyPI | COMMENT |
| LOW⚡ | src/gepa/core/engine.py | 721 | # Check if stop_callback contains MaxMetricCallsStopper | COMMENT |
| LOW⚡ | …ers/generic_rag_adapter/vector_stores/lancedb_store.py | 170 | # Check if field is a list type (vector field) | COMMENT |
| LOW | …ters/generic_rag_adapter/vector_stores/milvus_store.py | 126 | # Check if insertion was successful | COMMENT |
| LOW | src/gepa/gskill/gskill/swe_harness.py | 82 | # Check if rootless socket exists | COMMENT |
| LOW | src/gepa/gskill/gskill/evaluate/claude_code.py | 50 | # Check if rootless socket exists | COMMENT |
| LOW | src/gepa/gskill/gskill/evaluate/claude_code.py | 283 | # Check if base image exists locally - DO NOT PULL (would overwrite local build) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 26 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\", \"role\": \"system\"}, {\"content\": \"Kindly be inform | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 29 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nKindly b | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 32 | "('reflection_lm', \"I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 103 | "('reflection_lm', \"I provided an assistant with the following instructions to perform a task for me:\\n```\\nYou are | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 105 | "('task_lm', '[{\"content\": \"You are a helpful assistant that receives short business communications (such as intern | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 108 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\nlist all | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 130 | "('task_lm', '[{\"content\": \"You are a helpful assistant.\\\\n\\\\nYour task is to read and accurately respond to di | CODE |
| MEDIUM⚡ | tests/test_pareto_frontier_types/llm_cache.json | 133 | "('reflection_lm', \"You are a strict grader. Compare the assistant response to the gold redaction.\\nGOLD:\\n1. Keto | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | pyproject.toml | 21 | COMMENT | |
| LOW | .claude/skills/gepa-optimize-anything/SKILL.md | 81 | `test_set` is **separate from the modes and reporting-only**: the seed and the final candidate are | COMMENT |
| LOW | examples/blackbox/evalset/problems.py | 101 | COMMENT | |
| LOW | examples/blackbox/evalset/problems.py | 121 | # if config["res"] is not None: | COMMENT |
| LOW | examples/confidence_adapter/main.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | …/adrs/can_be_late/utils/simulator/sky_spot/simulate.py | 261 | # if len(envs) > 1: | COMMENT |
| LOW | .github/workflows/run_tests.yml | 101 | - name: Run tests with pytest | COMMENT |
| LOW | .github/workflows/run_tests.yml | 121 | # - name: Install uv with caching | COMMENT |
| LOW | .github/workflows/dependency_canary.yml | 1 | # Fresh-resolution canary: regular CI installs from the committed uv.lock | COMMENT |
| LOW | src/gepa/gepa_launcher.py | 521 | # include it in side_info as {"stdout": "...", "stderr": "..."}. | COMMENT |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 501 | # | COMMENT |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 521 | # base_instruction = candidate[name] | COMMENT |
| LOW | …adapters/generic_rag_adapter/vector_stores/__init__.py | 1 | # Copyright (c) 2025 Lakshya A Agrawal and the GEPA contributors | COMMENT |
| LOW | src/gepa/examples/rag_adapter/requirements-rag.txt | 21 | pyarrow>=10.0.0 | COMMENT |
| LOW | src/gepa/oa/eval_server.py | 741 | # Clients may disconnect after their own timeout or after budget | COMMENT |
| LOW | src/gepa/oa/engines/gepa.py | 81 | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/gepa/adapters/generic_rag_adapter/GEPA_RAG.md | 195 | auth_credentials=weaviate.AuthApiKey("your-api-key"), | CODE |
| HIGH | src/gepa/examples/rag_adapter/RAG_GUIDE.md | 79 | export OPENAI_API_KEY="your-api-key" | CODE |
| HIGH | src/gepa/examples/rag_adapter/RAG_GUIDE.md | 80 | export ANTHROPIC_API_KEY="your-api-key" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/gepa/api.py | 46 | CODE | |
| LOW | src/gepa/optimize_anything.py | 94 | CODE | |
| LOW | src/gepa/gepa_launcher.py | 1132 | CODE | |
| LOW | src/gepa/core/engine.py | 126 | CODE | |
| LOW | src/gepa/utils/code_execution.py | 135 | CODE | |
| LOW | src/gepa/adapters/dspy_adapter/dspy_adapter.py | 90 | CODE | |
| LOW | src/gepa/adapters/mcp_adapter/mcp_adapter.py | 131 | CODE | |
| LOW | …gepa/adapters/confidence_adapter/confidence_adapter.py | 349 | CODE | |
| LOW | …optimize_anything_adapter/optimize_anything_adapter.py | 176 | CODE | |
| LOW | src/gepa/oa/ensemble.py | 214 | CODE | |
| LOW | src/gepa/oa/ensemble.py | 324 | CODE | |
| LOW | src/gepa/oa/ensemble.py | 375 | CODE | |
| LOW | src/gepa/oa/ensemble.py | 412 | CODE | |
| LOW | src/gepa/logging/experiment_tracker.py | 415 | CODE | |
| LOW | src/gepa/logging/experiment_tracker.py | 24 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .github/workflows/build_and_release.yml | 112 | # TODO: Add tests using gepa | COMMENT |