50+ tutorials and implementations for Generative AI Agent techniques, from basic conversational bots to complex multi-agent systems.
This report summarizes scanner evidence for NirDiamant/GenAI_Agents, a Jupyter Notebook project with 24,747 GitHub stars. SynthScan examined 71,260 lines of code across 63 source files, recording 66 pattern matches distributed across 6 syntactic categories. The legacy adjusted pattern signal is 1.3 (Low 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.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 64 finding(s).
Are imports declared and package/API names verified? 0 finding(s).
Are wrappers, guards, and repeated structures necessary? 39 finding(s).
Which changes need focused human review? 66 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 66 distinct pattern matches across 6 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 | all_agents_tutorials/data/kv_store_text_chunks.json | 160 | "content": "Artist: Eugene Delacroix\nArtwork Name: Liberty Leading the People\nArtwork Genre: history painting,symb | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 183 | "return": "(\"entity\"<|>\"England\"<|>\"geo\"<|>\"England is the geographical location from which the emigrants in | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 187 | "return": "(\"entity\"<|>\"Napoleon Bonaparte\"<|>\"person\"<|>\"Napoleon Bonaparte was the French military leader w | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 319 | "return": "(\"entity\"<|>\"Théodore Géricault\"<|>\"person\"<|>\"Théodore Géricault was a French Romantic painter an | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 451 | "return": "(\"entity\"<|>\"Pierre-Auguste Renoir\"<|>\"person\"<|>\"Pierre-Auguste Renoir was a French artist known | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 463 | "return": "(\"entity\"<|>\"Cotton Exchange\"<|>\"organization\"<|>\"The Cotton Exchange was a significant business e | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 491 | "return": "(\"entity\"<|>\"Pierre-Auguste Renoir\"<|>\"person\"<|>\"Pierre-Auguste Renoir was a French artist known | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 551 | "return": "(\"entity\"<|>\"Pierre-Auguste Renoir\"<|>\"person\"<|>\"Pierre-Auguste Renoir was a French artist known | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 555 | "return": "(\"entity\"<|>\"Woman with a Pearl Necklace in a Loge\"<|>\"event\"<|>\"Woman with a Pearl Necklace in a | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 635 | "return": "(\"entity\"<|>\"Painting\"<|>\"event\"<|>\"Painting refers to the act of applying pigment to a surface, w | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 687 | "return": "(\"entity\"<|>\"Thomas Eakins\"<|>\"person\"<|>\"Thomas Eakins is an American artist known for his contri | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 839 | "return": "(\"entity\"<|>\"Oil on Canvas\"<|>\"technology\"<|>\"Oil on Canvas is the medium used for the painting 'J | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 851 | "return": "(\"entity\"<|>\"oil on canvas\"<|>\"technology\"<|>\"Oil on canvas refers to the technique used by Abbott | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 899 | "return": "(\"entity\"<|>\"The Sick Child (Norwegian: Det syke barn)\"<|>\"event\"<|>\"The Sick Child is a series of | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 907 | "return": "(\"entity\"<|>\"The Scream Team\"<|>\"organization\"<|>\"The Scream Team consists of individuals involved | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 935 | "return": "(\"entity\"<|>\"The Fate of the Animals\"<|>\"event\"<|>\"The Fate of the Animals is a painting created i | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 943 | "return": "(\"entity\"<|>\"Francesco Hayez\"<|>\"person\"<|>\"Francesco Hayez is an Italian artist known for his his | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 967 | "return": "(\"entity\"<|>\"Alessandro Sanquirico\"<|>\"person\"<|>\"Alessandro Sanquirico was an artist whose set de | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 979 | "return": "Sure, I will extract additional entities that may have been overlooked in the previous extraction.\n\n(\" | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 979 | "return": "Sure, I will extract additional entities that may have been overlooked in the previous extraction.\n\n(\" | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 995 | "return": "(\"entity\"<|>\"Francisco Goya\"<|>\"person\"<|>\"Francisco Goya was a renowned Spanish artist known for | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 1015 | "return": "(\"entity\"<|>\"Charles IV\"<|>\"person\"<|>\"Charles IV was the King of Spain from 1788 to 1808, depicte | CODE |
| MEDIUM | …agents_tutorials/data/kv_store_llm_response_cache.json | 1143 | "return": "(\"entity\"<|>\"The Junta of the Royal Company of the Philippines\"<|>\"event\"<|>\"The Junta of the Roya | CODE |
| MEDIUM | all_agents_tutorials/data/kv_store_full_docs.json | 81 | "content": "Artist: Eugene Delacroix\nArtwork Name: Liberty Leading the People\nArtwork Genre: history painting,symb | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_hitl_approval_agent.py | 49 | def test_low_risk_action_executes_without_an_approval_request(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 58 | def test_high_risk_action_pauses_before_any_side_effect(self): | CODE |
| LOW⚡ | tests/test_hitl_approval_agent.py | 70 | def test_small_mutating_refund_also_pauses_before_side_effect(self): | CODE |
| LOW⚡ | tests/test_hitl_approval_agent.py | 80 | def test_planned_refund_cannot_call_tool_dispatcher_directly(self): | CODE |
| LOW⚡ | tests/test_hitl_approval_agent.py | 88 | def test_approve_resumes_and_executes_the_original_action(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 102 | def test_reject_finishes_without_executing_the_action(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 119 | def test_modify_revalidates_and_executes_reviewer_arguments(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 144 | def test_invalid_modified_arguments_are_blocked(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 161 | def test_unexpected_tool_arguments_are_rejected(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 174 | def test_unexpected_modified_arguments_are_blocked(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 195 | def test_boolean_and_non_finite_refund_amounts_are_rejected(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 226 | def test_graph_interrupts_before_refund_execution(self): | CODE |
| LOW | tests/test_hitl_approval_agent.py | 236 | def test_graph_resumes_approve_reject_and_modify_decisions(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 28 | def test_perfect_trace_receives_full_credit(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 50 | def test_wrong_arguments_and_ungrounded_answer_lose_independent_credit(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 72 | def test_errors_fail_every_execution_check(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 89 | def test_empty_error_string_still_means_execution_failed(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 105 | def test_agent_exception_becomes_failed_trace_and_suite_continues(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 119 | def test_empty_suite_is_rejected_with_clear_error(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 123 | def test_contradictory_claim_does_not_receive_evidence_credit(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 139 | def test_extra_tool_call_fails_the_complete_sequence_contract(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 158 | def test_latency_budget_is_inclusive_and_rejects_over_budget(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 190 | def test_suite_gate_reports_metric_regressions(self): | CODE |
| LOW | tests/test_trace_based_agent_evaluation.py | 206 | def test_improved_agent_passes_the_declared_gate(self): | CODE |
| LOW | tests/test_validate_notebook.py | 69 | def test_accepts_template_compliant_notebook(self): | CODE |
| LOW | tests/test_validate_notebook.py | 77 | def test_reports_outputs_and_execution_counts(self): | CODE |
| LOW | tests/test_validate_notebook.py | 89 | def test_reports_code_cell_without_preceding_markdown_description(self): | CODE |
| LOW | tests/test_validate_notebook.py | 101 | def test_reports_code_cell_after_empty_markdown(self): | CODE |
| LOW | tests/test_validate_notebook.py | 114 | def test_reports_code_cell_after_prose_without_a_title(self): | CODE |
| LOW | tests/test_validate_notebook.py | 127 | def test_reports_missing_template_section(self): | CODE |
| LOW | tests/test_validate_notebook.py | 142 | def test_near_match_does_not_satisfy_required_section(self): | CODE |
| LOW | tests/test_validate_notebook.py | 156 | def test_reports_missing_local_markdown_image(self): | CODE |
| LOW | tests/test_validate_notebook.py | 170 | def test_reports_missing_local_html_image(self): | CODE |
| LOW | tests/test_validate_notebook.py | 184 | def test_protocol_relative_image_is_treated_as_remote(self): | CODE |
| LOW | tests/test_validate_notebook.py | 196 | def test_malformed_image_target_reports_finding_and_continues(self): | CODE |
| LOW | tests/test_validate_notebook.py | 212 | def test_local_image_cannot_escape_repository_root(self): | CODE |
| LOW | tests/test_validate_notebook.py | 263 | def test_cli_checks_every_requested_notebook(self): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | all_agents_tutorials/scripts/mcp_server.py | 58 | except Exception as e: | CODE |
| LOW | .github/workflows/notebook-smoke.yml | 41 | except Exception as exc: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/test_validate_notebook.py | 41 | markdown("## Implementation\n\n### Define the policy"), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | all_agents_tutorials/scripts/mcp_server.py | 48 | # Check if we got data for the requested crypto | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | requirements.txt | 1 | # Shared dependencies for the GenAI_Agents notebooks. | COMMENT |