AI Slop Code RIsk Monitor

getzep/graphiti

Build Real-Time Knowledge Graphs for AI Agents

47.2 High pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for getzep/graphiti, a Python project with 31,628 GitHub stars. SynthScan examined 92,195 lines of code across 378 source files, recording 2096 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 47.2 (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.

47.2
Adjusted Signal
47.2
Raw Pattern Score
100%
Time Factor
2026-10-10
Last Push
31.6K
Stars
Python
Language
92.2K
Lines of Code
378
Files
2.1K
Pattern Hits
2026-10-12
Scan Date
1.41
HC Hit Rate

Risk Review · v3

Use each vector to guide manual verification of the underlying findings.

Cognitive Ownership Risk 48.9/100 · MEDIUM

Can maintainers explain intent, assumptions, and trade-offs? 1151 finding(s).

Hallucinated Dependency & Supply Chain Risk 9.6/100 · LOW

Are imports declared and package/API names verified? 146 finding(s).

Agent Over-Engineering Ratio 87.7/100 · CRITICAL

Are wrappers, guards, and repeated structures necessary? 1781 finding(s).

PR Review Velocity Impact 93.2/100 · CRITICAL

Which changes need focused human review? 2096 finding(s).

What These Metrics Mean

Adjusted Signal
Legacy pattern score normalized per 1,000 scanned lines and multiplied by the repository-level time factor. It is not an estimate of AI authorship.
Raw Pattern Score
Sum of severity- and context-weighted pattern findings before applying the time factor.
Time Factor
A coarse multiplier based on repository last-push metadata. It does not identify when individual code was written.
Pattern Hits
Count of configured pattern findings. Review each location and surrounding code before acting.
HC Hit Rate
High- and critical-severity findings per scanned file. Severity is a configured detector weight, not proof of a vulnerability or authorship.
Lines / Files
Scan coverage denominators used by the legacy normalized score.

Pattern-Signal History

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.

Severity Breakdown

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.

CRITICAL 1HIGH 533MEDIUM 95LOW 1467

Directory Score Breakdown

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.

Pattern Findings

The scanner identified 2096 distinct pattern matches across 20 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.

Cross-File Repetition435 hits · 2175 pts
SeverityFileLineSnippetContext
HIGHtests/test_graphiti_mock.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_request_scope_concurrency.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_add_triplet.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_saga_refetch_episode_uuids.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_edge_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/helpers_test.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_entity_exclusion_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_graphiti_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_handle_multiple_group_ids.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_text_utils.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/test_node_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/evals/eval_e2e_graph_building.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/evals/utils.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_anthropic_client_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_anthropic_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_errors.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_token_tracker.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_gemini_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/llm_client/test_cache.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/driver/test_falkordb_driver.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/embedder/test_voyage.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/embedder/test_openai.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/embedder/embedder_fixtures.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/embedder/test_gemini.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/utils/test_content_chunking.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/utils/maintenance/test_entity_extraction.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/utils/maintenance/test_remove_communities.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/cross_encoder/test_bge_reranker_client_int.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHtests/cross_encoder/test_gemini_reranker_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHexamples/ecommerce/runner.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHexamples/podcast/podcast_runner.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHexamples/wizard_of_oz/runner.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/graphiti_types.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/edges.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/errors.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/nodes.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/graphiti.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/helpers.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/tracer.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/decorators.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/config.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/cache.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/__init__.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/token_tracker.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/prompt_config.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/azure_openai_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/gliner2_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/groq_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/utils.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/openai_generic_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/errors.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/openai_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/anthropic_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/llm_runtime.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/openai_base_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/llm_client/gemini_client.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/driver/neptune_driver.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
HIGHgraphiti_core/driver/neo4j_driver.py0copyright 2025, zep software, inc. licensed under the apache license, version 2.0 (the "license"); you may not use this STRING
375 more matches not shown…
Hyper-Verbose Identifiers973 hits · 938 pts
SeverityFileLineSnippetContext
LOWtests/test_graphiti_mock.py99def mock_cross_encoder_client():CODE
LOWtests/test_graphiti_mock.py454async def test_graphiti_retrieve_episodes(CODE
LOWtests/test_graphiti_mock.py529async def test_filter_existing_duplicate_of_edges(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py593async def test_determine_entity_community(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py753async def test_get_community_clusters(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py879async def test_get_communities_by_nodes(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py918async def test_edge_fulltext_search(CODE
LOWtests/test_graphiti_mock.py1019async def test_edge_similarity_search(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py1307async def test_node_fulltext_search(CODE
LOWtests/test_graphiti_mock.py1356async def test_node_similarity_search(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py1516async def test_episode_fulltext_search(CODE
LOWtests/test_graphiti_mock.py1567async def test_community_fulltext_search(CODE
LOWtests/test_graphiti_mock.py1610async def test_community_similarity_search(CODE
LOWtests/test_graphiti_mock.py1717async def test_get_relevant_edges_and_invalidation_candidates(CODE
LOWtests/test_graphiti_mock.py1871async def test_node_distance_reranker(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py1932async def test_episode_mentions_reranker(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py1989async def test_get_embeddings_for_edges(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py2030async def test_get_embeddings_for_nodes(graph_driver, mock_embedder):CODE
LOWtests/test_graphiti_mock.py2051async def test_get_embeddings_for_communities(graph_driver, mock_embedder):CODE
LOWtests/test_saga_summary_budget.py23def test_saga_summary_budget_constants():CODE
LOWtests/test_saga_summary_budget.py30def test_saga_summary_episode_selection_respects_byte_budget():CODE
LOWtests/test_saga_summary_budget.py58def test_saga_summary_episode_selection_truncates_first_oversized_episode():CODE
LOWtests/test_saga_summary_budget.py80 async def saga_get_episode_contents(self, _driver, _saga_uuid, since=None, limit=200):CODE
LOWtests/test_saga_summary_budget.py117async def test_saga_summary_cursor_advances_only_to_latest_selected_episode(monkeypatch):CODE
LOWtests/test_saga_summary_budget.py136async def test_saga_summary_watermark_advances_for_partial_fetch_window(monkeypatch):CODE
LOWtests/test_saga_summary_budget.py180async def test_saga_summary_cursor_follows_created_at_not_valid_at(monkeypatch):CODE
LOWtests/test_saga_summary_budget.py198async def test_saga_summary_prompt_orders_selected_episodes_by_valid_at(monkeypatch):CODE
LOWtests/test_saga_summary_budget.py216async def test_saga_summary_truncates_oversized_first_episode_and_advances_cursor(CODE
LOWtests/test_saga_summary_budget.py236async def test_saga_summary_prompt_stays_under_context_cap(monkeypatch):CODE
LOWtests/test_saga_summary_budget.py253async def test_saga_summary_budget_uses_routed_prompt(monkeypatch):CODE
LOWtests/test_request_scope_concurrency.py77 async def build_indices_and_constraints(CODE
LOWtests/test_request_scope_concurrency.py99def test_resolve_request_scope_none_group_id_reuses_shared_driver():CODE
LOWtests/test_request_scope_concurrency.py112def test_resolve_request_scope_matching_group_id_reuses_shared_driver():CODE
LOWtests/test_request_scope_concurrency.py123def test_resolve_request_scope_different_group_id_does_not_mutate_shared_state():CODE
LOWtests/test_request_scope_concurrency.py150async def test_concurrent_group_ids_keep_independent_drivers():CODE
LOWtests/test_add_triplet.py57def mock_cross_encoder_client():CODE
LOWtests/test_add_triplet.py68async def test_add_triplet_merges_attributes(CODE
LOWtests/test_add_triplet.py147async def test_add_triplet_updates_summary(CODE
LOWtests/test_add_triplet.py218async def test_add_triplet_updates_labels(CODE
LOWtests/test_add_triplet.py290async def test_add_triplet_with_new_nodes_no_uuid(CODE
LOWtests/test_add_triplet.py355async def test_add_triplet_preserves_existing_attributes(CODE
LOWtests/test_add_triplet.py435async def test_add_triplet_empty_attributes_preserved(CODE
LOWtests/test_add_triplet.py510async def test_add_triplet_invalid_source_uuid(CODE
LOWtests/test_add_triplet.py563async def test_add_triplet_invalid_target_uuid(CODE
LOWtests/test_add_triplet.py629async def test_add_triplet_invalid_both_uuids(CODE
LOWtests/test_add_triplet.py685async def test_add_triplet_edge_uuid_with_different_nodes_creates_new_edge(CODE
LOWtests/test_add_triplet.py782async def test_add_triplet_edge_uuid_with_same_nodes_updates_edge(CODE
LOWtests/test_add_triplet.py858async def test_add_triplet_passes_caller_episode_to_edge_dedupe(CODE
LOWtests/test_add_triplet.py944async def test_add_triplet_builds_dedupe_episode_when_caller_omits_it(CODE
LOW⚡tests/test_node_label_security.py13def test_entity_node_rejects_unsafe_labels():CODE
LOW⚡tests/test_node_label_security.py22def test_entity_node_assignment_rejects_unsafe_labels():CODE
LOW⚡tests/test_node_label_security.py29def test_entity_node_save_query_rejects_unsafe_labels_when_validation_is_bypassed():CODE
LOW⚡tests/test_node_label_security.py39def test_entity_node_save_bulk_query_rejects_unsafe_labels_when_validation_is_bypassed():CODE
LOWtests/test_saga_refetch_episode_uuids.py28async def test_get_or_create_saga_refetch_preserves_episode_uuids():CODE
LOWtests/test_saga_refetch_episode_uuids.py63async def test_get_or_create_saga_creates_when_absent():CODE
LOW⚡tests/test_graphiti_configurable_prompts.py48def test_graphiti_keeps_prompt_library_unset_when_unconfigured():CODE
LOW⚡tests/test_graphiti_configurable_prompts.py54def test_graphiti_stores_custom_prompt_library():CODE
LOW⚡tests/test_graphiti_configurable_prompts.py61def test_graphiti_clients_include_instance_prompt_library():CODE
LOW⚡tests/test_graphiti_configurable_prompts.py67def test_graphiti_instances_isolate_prompt_libraries():CODE
LOW⚡tests/test_graphiti_configurable_prompts.py87def test_graphiti_accepts_prompt_library_created_from_overrides():CODE
913 more matches not shown…
Empty Error Handlers80 hits · 372 pts
SeverityFileLineSnippetContext
HIGHgraphiti_core/edges.py63except NotImplementedError:CODE
HIGHgraphiti_core/edges.py99except NotImplementedError:CODE
HIGHgraphiti_core/edges.py148except NotImplementedError:CODE
HIGHgraphiti_core/edges.py171except NotImplementedError:CODE
HIGHgraphiti_core/edges.py197except NotImplementedError:CODE
HIGHgraphiti_core/edges.py230except NotImplementedError:CODE
HIGHgraphiti_core/edges.py309except NotImplementedError:CODE
HIGHgraphiti_core/edges.py344except NotImplementedError:CODE
HIGHgraphiti_core/edges.py387except NotImplementedError:CODE
HIGHgraphiti_core/edges.py423except NotImplementedError:CODE
HIGHgraphiti_core/edges.py456except NotImplementedError:CODE
HIGHgraphiti_core/edges.py499except NotImplementedError:CODE
HIGHgraphiti_core/edges.py554except NotImplementedError:CODE
HIGHgraphiti_core/edges.py585except NotImplementedError:CODE
HIGHgraphiti_core/edges.py608except NotImplementedError:CODE
HIGHgraphiti_core/edges.py632except NotImplementedError:CODE
HIGHgraphiti_core/edges.py663except NotImplementedError:CODE
HIGHgraphiti_core/edges.py699except NotImplementedError:CODE
HIGHgraphiti_core/edges.py719except NotImplementedError:CODE
HIGHgraphiti_core/edges.py739except NotImplementedError:CODE
HIGHgraphiti_core/edges.py765except NotImplementedError:CODE
HIGHgraphiti_core/edges.py796except NotImplementedError:CODE
HIGHgraphiti_core/edges.py832except NotImplementedError:CODE
HIGHgraphiti_core/edges.py854except NotImplementedError:CODE
HIGHgraphiti_core/edges.py874except NotImplementedError:CODE
HIGHgraphiti_core/edges.py900except NotImplementedError:CODE
HIGHgraphiti_core/edges.py931except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py115except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py184except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py243except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py338except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py368except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py399except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py434except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py477except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py521except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py550except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py589except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py616except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py649except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py688except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py735except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py774except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py806except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py837except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py872except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py926except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py950except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py970except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py1001except NotImplementedError:CODE
HIGHgraphiti_core/nodes.py1036except NotImplementedError:CODE
HIGHgraphiti_core/graphiti.py406except Exception:CODE
HIGHgraphiti_core/graphiti.py2095except EdgeNotFoundError:CODE
HIGHgraphiti_core/graphiti.py553except NotImplementedError:CODE
HIGHgraphiti_core/graphiti.py584except NotImplementedError:CODE
HIGHgraphiti_core/graphiti.py1297except NotImplementedError:CODE
HIGHgraphiti_core/tracer.py104except Exception:CODE
HIGHgraphiti_core/tracer.py116except Exception:CODE
HIGHgraphiti_core/llm_client/gemini_client.py232except Exception:CODE
HIGHgraphiti_core/llm_client/gemini_client.py239except Exception:CODE
20 more matches not shown…
Decorative Section Separators53 hits · 152 pts
SeverityFileLineSnippetContext
MEDIUMgraphiti_core/llm_client/gliner2_client.py118 # ── Message parsing helpers ──────────────────────────────────────COMMENT
MEDIUMgraphiti_core/llm_client/gliner2_client.py174 # ── Extraction handlers ──────────────────────────────────────────COMMENT
MEDIUMgraphiti_core/llm_client/gliner2_client.py215 # ── Core dispatch ────────────────────────────────────────────────COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py124 # --------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py126 # --------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py197 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py199 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py291 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py293 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py357 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py359 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py380 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py382 # -----------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py484 # -----------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py486 # -----------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py505 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py507 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py525 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py527 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py550 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py552 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py570 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py572 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py595 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py597 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py626 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py628 # ---------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py651 # ----------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py653 # ----------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py682 # ----------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py684 # ----------------------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py826 # -----------------COMMENT
MEDIUM⚡…phiti_core/driver/graph_operations/graph_operations.py828 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py36 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py38 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py77 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py79 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py145 # --------------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py147 # --------------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py250 # -----------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py252 # -----------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py316 # -----------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py318 # -----------------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py430 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py432 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py461 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py463 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py707 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py709 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py747 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py749 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py866 # -----------------COMMENT
MEDIUM…phiti_core/driver/graph_operations/graph_operations.py868 # -----------------COMMENT
Unused Imports130 hits · 130 pts
SeverityFileLineSnippetContext
LOWconftest.py8CODE
LOWconftest.py8CODE
LOWtests/e2e_prompt_library_ingest.py17CODE
LOWtests/intake/test_decide.py1CODE
LOWtests/intake/test_workflows.py1CODE
LOWtests/intake/test_apply.py1CODE
LOWserver/graph_service/dto/__init__.py1CODE
LOWserver/graph_service/dto/__init__.py1CODE
LOWserver/graph_service/dto/__init__.py2CODE
LOWserver/graph_service/dto/__init__.py2CODE
LOWserver/graph_service/dto/__init__.py3CODE
LOWserver/graph_service/dto/__init__.py3CODE
LOWserver/graph_service/dto/__init__.py3CODE
LOWserver/graph_service/dto/__init__.py3CODE
LOWserver/graph_service/dto/__init__.py3CODE
LOW.github/intake/decide.py12CODE
LOW.github/intake/apply.py13CODE
LOWgraphiti_core/__init__.py1CODE
LOWgraphiti_core/tracer.py23CODE
LOWgraphiti_core/tracer.py26CODE
LOWgraphiti_core/llm_client/__init__.py17CODE
LOWgraphiti_core/llm_client/__init__.py18CODE
LOWgraphiti_core/llm_client/__init__.py19CODE
LOWgraphiti_core/llm_client/__init__.py20CODE
LOWgraphiti_core/llm_client/__init__.py21CODE
LOWgraphiti_core/llm_client/__init__.py22CODE
LOWgraphiti_core/llm_client/__init__.py22CODE
LOWgraphiti_core/llm_client/__init__.py22CODE
LOWgraphiti_core/llm_client/__init__.py22CODE
LOWgraphiti_core/llm_client/__init__.py23CODE
LOWgraphiti_core/llm_client/__init__.py23CODE
LOWgraphiti_core/llm_client/prompt_config.py17CODE
LOWgraphiti_core/llm_client/llm_runtime.py17CODE
LOWgraphiti_core/driver/__init__.py17CODE
LOWgraphiti_core/driver/driver.py17CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py17CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py18CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py19CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py20CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py21CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py22CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py23CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py24CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py27CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py30CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py31CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py17CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py20CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py23CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py24CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py25CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py26CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py27CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py28CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py31CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py34CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py35CODE
LOWgraphiti_core/driver/kuzu/operations/__init__.py17CODE
LOWgraphiti_core/driver/kuzu/operations/__init__.py18CODE
LOWgraphiti_core/driver/kuzu/operations/__init__.py19CODE
70 more matches not shown…
Excessive Try-Catch Wrapping119 hits · 116 pts
SeverityFileLineSnippetContext
LOWtests/e2e_prompt_library_ingest.py318 except Exception as exc: # noqa: BLE001 — report per-path failuresCODE
LOWtests/e2e_prompt_library_ingest.py416 except Exception as exc:CODE
LOWtests/test_entity_exclusion_int.py349 except Exception as e:CODE
LOWtests/llm_client/test_anthropic_client_int.py63 except Exception as e:CODE
LOWtests/driver/test_falkordb_driver.py518 except Exception as e:CODE
LOWtests/driver/test_falkordb_driver.py537 except Exception as e:CODE
LOWtests/driver/test_falkordb_driver.py583 except Exception as e:CODE
LOWtests/driver/test_falkordb_driver.py636 except Exception as e:CODE
LOWgraphiti_core/graphiti.py406 except Exception:CODE
LOWgraphiti_core/graphiti.py1581 except Exception as e:CODE
LOWgraphiti_core/graphiti.py1851 except Exception as e:CODE
LOW⚡graphiti_core/tracer.py104 except Exception:CODE
LOW⚡graphiti_core/tracer.py116 except Exception:CODE
LOWgraphiti_core/tracer.py154 except Exception:CODE
LOWgraphiti_core/llm_client/client.py273 except Exception as e:CODE
LOWgraphiti_core/llm_client/gliner2_client.py247 except Exception as e:CODE
LOWgraphiti_core/llm_client/gliner2_client.py321 except Exception as e:CODE
LOWgraphiti_core/llm_client/groq_client.py85 except Exception as e:CODE
LOWgraphiti_core/llm_client/openai_generic_client.py174 except Exception as e:CODE
LOWgraphiti_core/llm_client/openai_generic_client.py232 except Exception as e:CODE
LOWgraphiti_core/llm_client/anthropic_client.py345 except Exception as e:CODE
LOWgraphiti_core/llm_client/anthropic_client.py428 except Exception as e:CODE
LOWgraphiti_core/llm_client/openai_base_client.py239 except Exception as e:CODE
LOWgraphiti_core/llm_client/openai_base_client.py319 except Exception as e:CODE
LOWgraphiti_core/llm_client/gemini_client.py232 except Exception:CODE
LOWgraphiti_core/llm_client/gemini_client.py239 except Exception:CODE
LOWgraphiti_core/llm_client/gemini_client.py342 except Exception as e:CODE
LOWgraphiti_core/llm_client/gemini_client.py358 except Exception as e:CODE
LOWgraphiti_core/llm_client/gemini_client.py448 except Exception as e:CODE
LOWgraphiti_core/driver/neptune_driver.py296 except Exception as e:CODE
LOWgraphiti_core/driver/neo4j_driver.py172 except Exception as e:CODE
LOWgraphiti_core/driver/neo4j_driver.py232 except Exception as e:CODE
LOWgraphiti_core/driver/falkordb_driver.py247 except Exception as e:CODE
LOW⚡graphiti_core/driver/falkordb_driver.py354 except Exception as e:CODE
LOWgraphiti_core/driver/kuzu_driver.py228 except Exception as e:STRING
LOWgraphiti_core/embedder/gemini.py155 except Exception as e:CODE
LOWgraphiti_core/embedder/gemini.py179 except Exception as individual_error:CODE
LOWgraphiti_core/embedder/azure_openai.py57 except Exception as e:CODE
LOWgraphiti_core/embedder/azure_openai.py69 except Exception as e:CODE
LOWgraphiti_core/utils/maintenance/combined_extraction.py328 except Exception:CODE
LOWgraphiti_core/utils/maintenance/node_operations.py520 except Exception:CODE
LOWgraphiti_core/utils/maintenance/node_operations.py555 except Exception:CODE
LOWgraphiti_core/utils/maintenance/edge_operations.py830 except Exception:CODE
LOWgraphiti_core/search/search.py92 except Exception as e:CODE
LOWgraphiti_core/cross_encoder/gemini_reranker_client.py149 except Exception as e:CODE
LOWgraphiti_core/cross_encoder/openai_reranker_client.py121 except Exception as e:STRING
LOWgraphiti_core/telemetry/telemetry.py50 except Exception:CODE
LOWgraphiti_core/telemetry/telemetry.py61 except Exception:CODE
LOWgraphiti_core/telemetry/telemetry.py72 except Exception:CODE
LOWgraphiti_core/telemetry/telemetry.py87 except Exception:CODE
LOWgraphiti_core/telemetry/telemetry.py115 except Exception:CODE
LOWmcp_server/tests/test_stdio_simple.py77 except Exception as e:CODE
LOWmcp_server/tests/run_tests.py79 except Exception:CODE
LOWmcp_server/tests/run_tests.py91 except Exception:CODE
LOWmcp_server/tests/test_configuration.py66 except Exception as e:CODE
LOWmcp_server/tests/test_configuration.py84 except Exception as e:CODE
LOWmcp_server/tests/test_configuration.py104 except Exception as e:CODE
LOWmcp_server/tests/test_configuration.py140 except Exception as e:CODE
LOWmcp_server/tests/test_configuration.py142 except Exception as e:CODE
LOWmcp_server/tests/test_configuration.py230 except Exception as e:CODE
59 more matches not shown…
Modern Structural Boilerplate112 hits · 112 pts
SeverityFileLineSnippetContext
LOWconftest.py13__all__ = ['graph_driver', 'mock_embedder']CODE
LOWtests/llm_client/test_llm_runtime.py50 def set_tracer(self, tracer: object) -> None:CODE
LOWtests/utils/search/test_search_tracing.py22 def set_status(self, status: str, description: str | None = None) -> None:CODE
LOWserver/graph_service/zep_graphiti.py14logger = logging.getLogger(__name__)CODE
LOWserver/graph_service/dto/__init__.py5__all__ = [CODE
LOWexamples/opentelemetry/otel_stdout_example.py37logger = logging.getLogger(__name__)CODE
LOWexamples/quickstart/dense_vs_normal_ingestion.py58logger = logging.getLogger(__name__)CODE
LOWexamples/quickstart/quickstart_neptune.py44logger = logging.getLogger(__name__)CODE
LOWexamples/quickstart/quickstart_neo4j.py43logger = logging.getLogger(__name__)CODE
LOWexamples/quickstart/quickstart_falkordb.py44logger = logging.getLogger(__name__)CODE
LOWexamples/azure-openai/azure_openai_neo4j.py46logger = logging.getLogger(__name__)CODE
LOWexamples/gliner2/gliner2_neo4j.py97logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/__init__.py3__all__ = ['Graphiti']CODE
LOWgraphiti_core/edges.py46logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/nodes.py51logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/graphiti.py126logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/tracer.py42 def set_status(self, status: str, description: str | None = None) -> None:CODE
LOWgraphiti_core/tracer.py67 def set_status(self, status: str, description: str | None = None) -> None:CODE
LOW⚡graphiti_core/tracer.py108 def set_status(self, status: str, description: str | None = None) -> None:CODE
LOWgraphiti_core/llm_client/client.py59logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/client.py94 def set_tracer(self, tracer: Tracer) -> None:CODE
LOWgraphiti_core/llm_client/cache.py24logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/__init__.py25__all__ = [CODE
LOWgraphiti_core/llm_client/azure_openai_client.py28logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/gliner2_client.py44logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/groq_client.py42logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/utils.py22logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/openai_generic_client.py33logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/anthropic_client.py47logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/llm_runtime.py138 def set_tracer(self, tracer: Tracer) -> None:CODE
LOWgraphiti_core/llm_client/openai_base_client.py32logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/llm_client/gemini_client.py45logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neptune_driver.py59logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neo4j_driver.py58logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/falkordb_driver.py75logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/__init__.py19__all__ = ['Neo4jDriver']CODE
LOWgraphiti_core/driver/driver.py47logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/kuzu_driver.py49logger = logging.getLogger(__name__)CODE
LOW…i_core/driver/neo4j/operations/has_episode_edge_ops.py30logger = logging.getLogger(__name__)CODE
LOW…aphiti_core/driver/neo4j/operations/entity_node_ops.py32logger = logging.getLogger(__name__)CODE
LOW…hiti_core/driver/neo4j/operations/episodic_edge_ops.py32logger = logging.getLogger(__name__)CODE
LOW…aphiti_core/driver/neo4j/operations/entity_edge_ops.py32logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neo4j/operations/__init__.py33__all__ = [CODE
LOW…iti_core/driver/neo4j/operations/community_edge_ops.py31logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neo4j/operations/saga_node_ops.py28logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neo4j/operations/graph_ops.py33logger = logging.getLogger(__name__)CODE
LOW…phiti_core/driver/neo4j/operations/episode_node_ops.py33logger = logging.getLogger(__name__)CODE
LOW…_core/driver/neo4j/operations/next_episode_edge_ops.py30logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/neo4j/operations/search_ops.py49logger = logging.getLogger(__name__)CODE
LOW…iti_core/driver/neo4j/operations/community_node_ops.py31logger = logging.getLogger(__name__)CODE
LOW…ore/driver/falkordb/operations/has_episode_edge_ops.py31logger = logging.getLogger(__name__)CODE
LOW…iti_core/driver/falkordb/operations/entity_node_ops.py32logger = logging.getLogger(__name__)CODE
LOW…i_core/driver/falkordb/operations/episodic_edge_ops.py32logger = logging.getLogger(__name__)CODE
LOW…iti_core/driver/falkordb/operations/entity_edge_ops.py32logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/falkordb/operations/__init__.py37__all__ = [CODE
LOW…_core/driver/falkordb/operations/community_edge_ops.py31logger = logging.getLogger(__name__)CODE
LOW…phiti_core/driver/falkordb/operations/saga_node_ops.py28logger = logging.getLogger(__name__)CODE
LOWgraphiti_core/driver/falkordb/operations/graph_ops.py33logger = logging.getLogger(__name__)CODE
LOW…ti_core/driver/falkordb/operations/episode_node_ops.py33logger = logging.getLogger(__name__)CODE
LOW…re/driver/falkordb/operations/next_episode_edge_ops.py31logger = logging.getLogger(__name__)CODE
52 more matches not shown…
Self-Referential Comments32 hits · 100 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_add_triplet.py83 # Create an existing node with some attributesCOMMENT
MEDIUMtests/test_add_triplet.py95 # Create a user-provided node with additional attributesCOMMENT
MEDIUMtests/test_add_triplet.py162 # Create an existing node with a summaryCOMMENT
MEDIUMtests/test_add_triplet.py233 # Create an existing node with labelsCOMMENT
MEDIUMtests/test_add_triplet.py370 # Create an existing node with multiple attributesCOMMENT
MEDIUMtests/test_add_triplet.py450 # Create an existing node with attributesCOMMENT
MEDIUMtests/test_add_triplet.py527 # Create a node with a UUID that doesn't exist in the databaseCOMMENT
MEDIUMtests/test_add_triplet.py580 # Create an existing source nodeCOMMENT
MEDIUMtests/test_add_triplet.py592 # Create a target node with a UUID that doesn't exist in the databaseCOMMENT
MEDIUMtests/test_add_triplet.py723 # Create a third node: CharlieCOMMENT
MEDIUMtests/test_add_triplet.py735 # Create an existing edge between Alice and BobCOMMENT
MEDIUMtests/test_add_triplet.py820 # Create an existing edge between Alice and BobCOMMENT
MEDIUMtests/test_edge_int.py32 # Create a loggerCOMMENT
MEDIUMtests/test_graphiti_int.py33 # Create a loggerCOMMENT
MEDIUMtests/evals/utils.py22 # Create a loggerCOMMENT
MEDIUMtests/llm_client/test_anthropic_client.py162 # Create a custom RateLimitError from AnthropicCOMMENT
MEDIUMtests/llm_client/test_anthropic_client.py182 # Create a custom APIError that matches what we needCOMMENT
MEDIUMtests/utils/test_content_chunking.py176 # Create a single long paragraph with multiple sentencesCOMMENT
MEDIUMtests/utils/maintenance/test_entity_extraction.py499 # Create a node with a very long summary (over MAX_SUMMARY_CHARS * 4)COMMENT
MEDIUMexamples/ecommerce/runner.py40 # Create a loggerCOMMENT
MEDIUM⚡examples/gliner2/gliner2_neo4j.py123 # Create the Gemini client for reasoning tasksCOMMENT
MEDIUM⚡examples/gliner2/gliner2_neo4j.py132 # Create the GLiNER2 hybrid clientCOMMENT
MEDIUM⚡examples/gliner2/gliner2_neo4j.py139 # Create the Gemini embedderCOMMENT
MEDIUMexamples/podcast/podcast_runner.py41 # Create a loggerCOMMENT
MEDIUMexamples/wizard_of_oz/runner.py39 # Create a loggerCOMMENT
MEDIUMgraphiti_core/llm_client/client.py165 # Create a unique cache key based on the messages and modelCOMMENT
MEDIUMgraphiti_core/llm_client/anthropic_client.py195 # Create a generic JSON output toolCOMMENT
MEDIUMgraphiti_core/llm_client/anthropic_client.py290 # Create the appropriate tool based on whether response_model is providedCOMMENT
MEDIUMgraphiti_core/driver/neptune_driver.py264 # Create a new list expression with datetime() wrapped around each elementCOMMENT
MEDIUM⚡graphiti_core/driver/falkordb_driver.py344 # Create a new instance of FalkorDriver with the same connection but a different databaseCOMMENT
MEDIUMgraphiti_core/driver/kuzu_driver.py255 # This method is required by the abstract base class but is a no-op for KuzuSTRING
MEDIUMmcp_server/tests/test_async_operations.py247 # Create a very large episode that might time outCOMMENT
Deep Nesting64 hits · 61 pts
SeverityFileLineSnippetContext
LOWtests/helpers_test.py90CODE
LOWtests/utils/test_content_chunking.py664CODE
LOWtests/utils/test_content_chunking.py757CODE
LOWexamples/quickstart/quickstart_neptune.py61CODE
LOWexamples/quickstart/quickstart_neo4j.py57CODE
LOWexamples/quickstart/quickstart_falkordb.py65CODE
LOWexamples/azure-openai/azure_openai_neo4j.py68CODE
LOWexamples/gliner2/gliner2_neo4j.py113CODE
LOWexamples/podcast/transcript_parser.py38CODE
LOW.github/intake/decide.py383CODE
LOWgraphiti_core/graphiti.py422CODE
LOWgraphiti_core/graphiti.py1586CODE
LOWgraphiti_core/tracer.py89CODE
LOWgraphiti_core/tracer.py108CODE
LOWgraphiti_core/decorators.py29CODE
LOWgraphiti_core/decorators.py41CODE
LOWgraphiti_core/llm_client/client.py285CODE
LOWgraphiti_core/llm_client/azure_openai_client.py131CODE
LOWgraphiti_core/llm_client/anthropic_client.py254CODE
LOWgraphiti_core/llm_client/anthropic_client.py348CODE
LOWgraphiti_core/llm_client/openai_base_client.py250CODE
LOWgraphiti_core/llm_client/gemini_client.py243CODE
LOWgraphiti_core/llm_client/gemini_client.py372CODE
LOWgraphiti_core/driver/neptune_driver.py243CODE
LOWgraphiti_core/driver/neptune_driver.py351CODE
LOWgraphiti_core/driver/falkordb_driver.py292CODE
LOWgraphiti_core/driver/falkordb_driver.py359CODE
LOWgraphiti_core/driver/falkordb/operations/graph_ops.py73CODE
LOWgraphiti_core/embedder/gemini.py113CODE
LOWgraphiti_core/utils/datetime_utils.py45CODE
LOWgraphiti_core/utils/bulk_utils.py151CODE
LOWgraphiti_core/utils/bulk_utils.py388CODE
LOWgraphiti_core/utils/bulk_utils.py504CODE
LOWgraphiti_core/utils/content_chunking.py145CODE
LOWgraphiti_core/utils/content_chunking.py719CODE
LOWgraphiti_core/utils/maintenance/combined_extraction.py58CODE
LOWgraphiti_core/utils/maintenance/attribute_utils.py218CODE
LOWgraphiti_core/utils/maintenance/edge_operations.py424CODE
LOWgraphiti_core/utils/maintenance/edge_operations.py649CODE
LOWgraphiti_core/utils/maintenance/edge_operations.py864CODE
LOWgraphiti_core/search/search_filters.py126CODE
LOWgraphiti_core/search/search.py259CODE
LOWgraphiti_core/search/search.py473CODE
LOWgraphiti_core/search/search.py676CODE
LOWgraphiti_core/search/search.py778CODE
LOWgraphiti_core/search/search_utils.py302CODE
LOWgraphiti_core/search/search_utils.py667CODE
LOWgraphiti_core/search/search_utils.py1056CODE
LOWgraphiti_core/cross_encoder/gemini_reranker_client.py73CODE
LOWmcp_server/tests/run_tests.py227CODE
LOWmcp_server/tests/run_tests.py102CODE
LOWmcp_server/tests/test_http_integration.py15CODE
LOWmcp_server/tests/test_mcp_integration.py184CODE
LOWmcp_server/tests/test_mcp_integration.py219CODE
LOWmcp_server/tests/test_mcp_integration.py291CODE
LOWmcp_server/tests/test_stress_load.py57CODE
LOWmcp_server/tests/test_falkordb_integration.py138CODE
LOWmcp_server/tests/test_falkordb_integration.py49CODE
LOWmcp_server/tests/test_comprehensive_integration.py114CODE
LOWmcp_server/tests/test_mcp_transports.py88CODE
4 more matches not shown…
Redundant / Tautological Comments39 hits · 56 pts
SeverityFileLineSnippetContext
LOWtests/utils/maintenance/test_entity_extraction.py628 # Set MAX_NODES to a small value for testingCOMMENT
LOW⚡tests/cross_encoder/test_bge_reranker_client_int.py38 # Check if the output is a list of tuplesCOMMENT
LOW⚡tests/cross_encoder/test_bge_reranker_client_int.py42 # Check if the output has the correct lengthCOMMENT
LOW⚡tests/cross_encoder/test_bge_reranker_client_int.py45 # Check if the scores are floats and passages are stringsCOMMENT
LOW⚡tests/cross_encoder/test_bge_reranker_client_int.py50 # Check if the results are sorted in descending orderCOMMENT
LOWtests/cross_encoder/test_bge_reranker_client_int.py62 # Check if the output is an empty listCOMMENT
LOWtests/cross_encoder/test_bge_reranker_client_int.py73 # Check if the output has one itemCOMMENT
LOWtests/cross_encoder/test_bge_reranker_client_int.py76 # Check if the passage is correct and the score is a floatCOMMENT
LOWgraphiti_core/graphiti.py2079 # Check if an edge with this UUID already exists with different source/target nodes.COMMENT
LOWgraphiti_core/helpers.py163 # Check if string contains only ASCII alphanumeric characters, dashes, or underscoresCOMMENT
LOWgraphiti_core/llm_client/azure_openai_client.py137 # Check if this is a ParsedChatCompletion (from beta.chat.completions.parse)COMMENT
LOWgraphiti_core/llm_client/gemini_client.py130 # Check if the response was blocked for safety reasonsCOMMENT
LOWgraphiti_core/llm_client/gemini_client.py359 # Check if it's a rate limit error based on Gemini API error codesCOMMENT
LOWgraphiti_core/llm_client/gemini_client.py451 # Check if this is a safety block - these typically shouldn't be retriedCOMMENT
LOWgraphiti_core/driver/neo4j/operations/graph_ops.py153 # Check if the node is already part of a communitySTRING
LOWgraphiti_core/driver/falkordb/operations/graph_ops.py184 # Check if the node is already part of a communitySTRING
LOWgraphiti_core/driver/kuzu/operations/graph_ops.py158 # Check if the node is already part of a communitySTRING
LOWgraphiti_core/driver/neptune/operations/graph_ops.py158 # Check if the node is already part of a communitySTRING
LOWgraphiti_core/utils/content_chunking.py202 # Check if capitalized (first char upper, not all caps)COMMENT
LOWgraphiti_core/utils/content_chunking.py271 # Check if adding this element would exceed chunk sizeCOMMENT
LOWgraphiti_core/utils/content_chunking.py330 # Check if adding this entry would exceed chunk sizeCOMMENT
LOWgraphiti_core/utils/content_chunking.py429 # Check if adding this paragraph would exceed chunk sizeCOMMENT
LOWgraphiti_core/utils/content_chunking.py486 # Check if adding this sentence would exceed chunk sizeCOMMENT
LOWgraphiti_core/utils/content_chunking.py579 # Check if it's JSON (array of message objects)COMMENT
LOWgraphiti_core/utils/maintenance/community_operations.py342 # Check if the node is already part of a communitySTRING
LOWgraphiti_core/utils/maintenance/node_operations.py357 # Check if this entity type should be excludedCOMMENT
LOWgraphiti_core/utils/maintenance/node_operations.py1115 # Check if node should be summarized at allCOMMENT
LOWgraphiti_core/cross_encoder/gemini_reranker_client.py150 # Check if it's a rate limit error based on Gemini API error codesCOMMENT
LOWmcp_server/tests/run_tests.py42 # Check if .env file exists for helpful messageCOMMENT
LOWmcp_server/tests/run_tests.py295 # Check if prerequisites are metSTRING
LOWmcp_server/tests/test_http_integration.py223 # Check if server is runningCOMMENT
LOWmcp_server/tests/test_mcp_integration.py192 # Check if we have any episodesCOMMENT
LOWmcp_server/tests/test_mcp_integration.py314 # Check if response indicates successCOMMENT
LOWmcp_server/tests/test_falkordb_integration.py76 # Check if status indicates FalkorDB is workingCOMMENT
LOWmcp_server/tests/test_comprehensive_integration.py483 # Check if timeout was handled gracefullyCOMMENT
LOWmcp_server/tests/test_mcp_transports.py72 # Check if we have most expected toolsCOMMENT
LOWmcp_server/tests/test_integration.py154 # Check if we have any episodesCOMMENT
LOWmcp_server/src/config/schema.py36 # Check if the entire value is a single env var expressionCOMMENT
LOWmcp_server/src/services/factories.py107 # Check if base_url contains any official OpenAI domainCOMMENT
Docstring Block Structure8 hits · 40 pts
SeverityFileLineSnippetContext
HIGHgraphiti_core/helpers.py146 Validate that a group_id contains only ASCII alphanumeric characters, dashes, and underscores. Args: gSTRING
HIGHgraphiti_core/helpers.py201 Validate that excluded entity types are valid type names. Args: excluded_entity_types: List of entity STRING
HIGHgraphiti_core/llm_client/anthropic_client.py152Extract JSON from text content. A helper method to extract JSON from text content, used when tool use fails or STRING
HIGHgraphiti_core/llm_client/anthropic_client.py263 Generate a response from the Anthropic LLM using tool-based approach for all requests. Args: STRING
HIGHgraphiti_core/llm_client/anthropic_client.py360 Generate a response from the LLM. Args: messages: List of message objects to send to the LSTRING
HIGHgraphiti_core/llm_client/gemini_client.py252 Generate a response from the Gemini language model. Args: messages (list[Message]): A listSTRING
HIGHgraphiti_core/prompts/prompt_helpers.py24 Serialize data to JSON for use in prompts. Args: data: The data to serialize ensure_ascii: If STRING
HIGHmcp_server/src/services/factories.py71Validate API key is present. Args: provider_name: Name of the provider (e.g., 'OpenAI', 'Anthropic') STRING
Cross-Language Confusion7 hits · 28 pts
SeverityFileLineSnippetContext
HIGHtests/e2e_prompt_library_ingest.py12 set -a && source .env && set +aSTRING
HIGHserver/tests/test_live_falkordb_int.py19 cd server && uv run pytest tests/test_live_falkordb_int.pySTRING
HIGHgraphiti_core/llm_client/client.py198 'it to null; never explain the absence in the field itself.'CODE
HIGHgraphiti_core/prompts/extract_nodes.py447ENTITY: {{"name": "Northwind", "industry": null}}CODE
HIGHmcp_server/tests/test_live_falkordb_int.py15 cd mcp_server && uv run pytest tests/test_live_falkordb_int.pySTRING
HIGHmcp_server/src/graphiti_mcp_server.py328 f' - Using Docker Compose: cd mcp_server && docker compose up\n'CODE
HIGHmcp_server/src/graphiti_mcp_server.py339 f' - Using Docker Compose: cd mcp_server && docker compose -f docker/docker-compose-neo4j.yCODE
Magic Placeholder Names3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHREADME.md446 api_key="your-api-key",CODE
HIGHexamples/azure-openai/README.md38AZURE_OPENAI_API_KEY=your-api-key-hereCODE
HIGHmcp_server/docker/README.md21OPENAI_API_KEY=your-api-key-hereCODE
Over-Commented Block15 hits · 14 pts
SeverityFileLineSnippetContext
LOWspec/configurable-prompts-tests.yaml1# Specification Test CoverageCOMMENT
LOWexamples/quickstart/quickstart_neo4j.py61 # Connect to Neo4j and set up Graphiti indicesCOMMENT
LOWexamples/quickstart/quickstart_falkordb.py81 # falkordb_client = AsyncFalkorDB(dbfilename='/tmp/graphiti_quickstart.db')COMMENT
LOWexamples/wizard_of_oz/runner.py61 llm_client = AnthropicClient(LLMConfig(api_key=os.environ.get('ANTHROPIC_API_KEY')))COMMENT
LOW.github/secret_scanning.yml1# Secret scanning configurationCOMMENT
LOW.github/workflows/lint.yml1name: Lint with RuffCOMMENT
LOW.github/workflows/lint.yml21# cache poisoning of the default branch (CodeQLCOMMENT
LOW.github/workflows/codeql.yml1# For most projects, this workflow file will not need changing; you simply needCOMMENT
LOW.github/workflows/codeql.yml61COMMENT
LOW.github/workflows/cla.yml41 allowlist: paul-paliychuk,prasmussen15,danielchalef,pevans,dependabot[bot],ellipsis-dev,Claude[bot],claude[botCOMMENT
LOWgraphiti_core/helpers.py41# `max_coroutines` explicitly (typically sourced fromCOMMENT
LOWgraphiti_core/utils/maintenance/attribute_utils.py41# Track invalid env values we've already warned about so a misconfigured deployCOMMENT
LOWmcp_server/config/config.yaml121 # list empty to keep graphiti-core's default edge extraction behavior.COMMENT
LOWmcp_server/src/graphiti_mcp_server.py61env_file = mcp_server_dir / '.env'COMMENT
LOWmcp_server/src/graphiti_mcp_server.py81# - OpenAI Tier 4: 5,000 RPM -> SEMAPHORE_LIMIT=20-50COMMENT
Modern AI Meta-Vocabulary5 hits · 14 pts
SeverityFileLineSnippetContext
MEDIUMspec/driver-operations-redesign.md44# High-level search (orchestration stays on client)COMMENT
MEDIUMspec/driver-operations-redesign.md861 # High-level search orchestration stays as methods on Graphiti.COMMENT
MEDIUMspec/driver-operations-redesign.md911 search.py # High-level search orchestration (unchanged)CODE
MEDIUMgraphiti_core/graphiti.py633 # the model context window in one pass. Deferred episodes remainCOMMENT
MEDIUMgraphiti_core/utils/maintenance/node_operations.py1184 # few-shot examples that are intended for extraction prompts only.COMMENT
Hallucination Indicators1 hit · 10 pts
SeverityFileLineSnippetContext
CRITICALgraphiti_core/llm_client/azure_openai_client.py105 return await self.client.beta.chat.completions.parse(**request_kwargs)CODE
AI Slop Vocabulary5 hits · 8 pts
SeverityFileLineSnippetContext
MEDIUMmcp_server/tests/test_mcp_integration.py442 # Print comprehensive summaryCOMMENT
MEDIUMmcp_server/tests/test_stress_load.py496 """Generate comprehensive load test report."""STRING
MEDIUMmcp_server/tests/test_comprehensive_integration.py36 """Enhanced test client for comprehensive Graphiti MCP testing."""STRING
MEDIUMmcp_server/tests/test_comprehensive_integration.py620 """Generate a comprehensive test report from metrics."""STRING
LOWmcp_server/tests/test_integration.py253 # Should not error, just return empty resultsCOMMENT
AI Structural Patterns9 hits · 6 pts
SeverityFileLineSnippetContext
LOWgraphiti_core/graphiti.py208CODE
LOWgraphiti_core/graphiti.py1332CODE
LOWgraphiti_core/graphiti.py1586CODE
LOWgraphiti_core/llm_client/openai_client.py105CODE
LOWgraphiti_core/utils/maintenance/node_operations.py985CODE
LOWmcp_server/tests/run_tests.py193CODE
LOWmcp_server/src/graphiti_mcp_server.py403CODE
LOWmcp_server/src/graphiti_mcp_server.py616CODE
LOWmcp_server/src/services/queue_service.py101CODE
Fake / Example Data5 hits · 5 pts
SeverityFileLineSnippetContext
LOWtests/e2e_prompt_library_ingest.py76 return 'placeholder'CODE
LOWtests/utils/maintenance/test_entity_extraction.py114 {'name': 'Acme Corp', 'entity_type_id': 0}, # Default EntityCODE
LOWtests/utils/maintenance/test_entity_extraction.py132 acme = next(n for n in nodes if n.name == 'Acme Corp')CODE
LOWgraphiti_core/prompts/extract_nodes.py262JSON: {{"user": "Jordan Lee", "company": "Acme Corp", "role": "engineer", "start_date": "2024-01-15", "location": "DenveCODE
LOWgraphiti_core/prompts/extract_nodes.py263Good extractions: "Jordan Lee" (Person), "Acme Corp" (Organization), "Denver" (Location)CODE
Slop Phrases1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/codeql.yml56 # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize howCOMMENT