Repository Analysis

dograh-hq/dograh

Open source voice AI platform. Self-hosted alternative to Vapi and Retell. On Prem, BYOK across Speech to Speech or LLM/STT/TTS, with a visual workflow builder, MCP native and telephony support.

16.4 Moderate AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of dograh-hq/dograh, a Python project with 4,855 GitHub stars. SynthScan v2.0 examined 243,653 lines of code across 1136 source files, recording 2838 pattern matches distributed across 21 syntactic categories. The overall adjusted score of 16.4 places this repository in the Moderate AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

16.4
Adjusted Score
16.4
Raw Score
100%
Time Factor
2026-07-13
Last Push
4.9K
Stars
Python
Language
243.7K
Lines of Code
1.1K
Files
2.8K
Pattern Hits
2026-07-14
Scan Date
0.04
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 0HIGH 43MEDIUM 361LOW 2434

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 2838 distinct pattern matches across 21 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. 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 diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Hyper-Verbose Identifiers1420 hits · 1460 pts
SeverityFileLineSnippetContext
LOWui/public/embed/dograh-widget.js807 function handlePeerConnectionStateChange() {CODE
LOWui/src/types/workflow-configurations.ts150export function resolveWorkflowConfigurations(CODE
LOWui/src/context/TelephonyConfigWarningsContext.tsx26export function TelephonyConfigWarningsProvider({ children }: { children: ReactNode }) {CODE
LOWui/src/context/TelephonyConfigWarningsContext.tsx72export function useTelephonyConfigWarnings() {CODE
LOWui/src/app/tools/config.tsx197export function createTransferCallDefinition(config: TransferCallConfig): TransferCallToolDefinition {CODE
LOWui/src/app/tools/config.tsx216export function createCalculatorDefinition(): CalculatorToolDefinition {CODE
LOWui/src/app/telephony-configurations/page.tsx52export default function TelephonyConfigurationsPage() {CODE
LOWui/src/app/telephony-configurations/[configId]/page.tsx65export default function TelephonyConfigurationDetailPage() {CODE
LOWui/src/app/workflow/[workflowId]/settings/page.tsx1194function withoutModelConfigurationOverrides(configurations: WorkflowConfigurations): WorkflowConfigurations {CODE
LOWui/src/app/workflow/[workflowId]/settings/page.tsx1201function WorkflowModelOverridesSection({CODE
LOWui/src/app/api/config/version/route.ts15function getHealthcheckFailureMessage(error: unknown, backendUrl: string) {CODE
LOWui/src/components/OrganizationPreferencesSection.tsx91export function OrganizationPreferencesSection() {CODE
LOWui/src/components/AIModelConfigurationV2Editor.tsx140function effectiveConfigToLegacyShape(config: Record<string, unknown> | null): Record<string, unknown> | null {CODE
LOWui/src/components/layout/SidebarTeamSwitcher.tsx37function SidebarTeamSwitcherContent({ user }: { user: CurrentUser }) {CODE
LOWui/src/components/workflow/TemplateCard.tsx19export function DuplicateWorkflowTemplate({ id, title, description, serverAccessToken }: DuplicateWorkflowTemplateProps)CODE
LOWui/src/components/workflow/conversation/utils.ts17export function countConversationMessages(items: ConversationItem[]) {CODE
LOW…workflow/conversation/adapters/fromRealtimeFeedback.ts101export function conversationItemsFromLiveFeedback(messages: RealtimeFeedbackMessage[]) {CODE
LOW…workflow/conversation/adapters/fromRealtimeFeedback.ts128export function conversationItemsFromRealtimeFeedbackEvents(events: RealtimeFeedbackEvent[]) {CODE
LOW…ts/workflow/conversation/adapters/fromTextChatTurns.ts31function conversationItemsFromTextChatEvents(CODE
LOW…ts/workflow/conversation/adapters/fromTextChatTurns.ts131export function conversationItemsFromTextChatTurns(turns: TextChatTurnLike[]) {CODE
LOWui/src/components/flow/nodes/GenericNode.tsx104function resolveIntegrationEnabled(CODE
LOWui/src/components/flow/nodes/GenericNode.tsx116function resolveIntegrationSummary(CODE
LOWui/src/lib/modelConfigurationPricing.ts5export async function fetchModelConfigurationPricing(): Promise<ModelConfigurationPricingResponse | null> {CODE
LOWsdk/python/src/dograh_sdk/codegen.py143def _render_nested_row_dataclass(STRING
LOWapi/conftest.py267 def reopen_nested_transaction(session_sync, transaction: SessionTransaction):CODE
LOWapi/app.py121def _add_public_embed_cors_middleware() -> None:CODE
LOWapi/tasks/webhook_delivery.py105async def _handle_transient_failure(CODE
LOWapi/tasks/workflow_completion.py10async def process_workflow_completion(CODE
LOWapi/tasks/run_integrations.py126async def _update_usage_info_with_qa_tokens(CODE
LOWapi/tasks/run_integrations.py167async def run_integrations_post_workflow_run(_ctx, workflow_run_id: int):CODE
LOWapi/tasks/run_integrations.py434def _looks_like_secret_header(key: str) -> bool:CODE
LOWapi/tasks/run_integrations.py462async def _enqueue_webhook_delivery(CODE
LOWapi/tasks/knowledge_base_processing.py39async def process_knowledge_base_document(CODE
LOWapi/tests/test_organization_usage_billing.py10async def test_get_billing_credits_oss_aggregates_by_created_by(monkeypatch):CODE
LOWapi/tests/test_organization_usage_billing.py37async def test_get_billing_credits_pages_hosted_ledger(monkeypatch):CODE
LOWapi/tests/test_xai_tts_service_factory.py16def test_xai_tts_configuration_defaults():CODE
LOWapi/tests/test_xai_tts_service_factory.py28def test_create_xai_tts_service_uses_pipeline_compatible_audio_format(CODE
LOWapi/tests/test_xai_tts_service_factory.py59def test_create_xai_tts_service_converts_language():CODE
LOWapi/tests/test_xai_tts_service_factory.py83def test_create_xai_tts_service_falls_back_to_english_for_unknown_language():CODE
LOWapi/tests/test_xai_tts_service_factory.py107def test_create_xai_tts_service_preserves_auto_language():CODE
LOWapi/tests/test_xai_tts_service_factory.py131def test_xai_is_registered_for_key_validation():CODE
LOWapi/tests/test_xai_tts_service_factory.py136def test_xai_key_validation_accepts_valid_key():CODE
LOWapi/tests/test_xai_tts_service_factory.py149def test_xai_key_validation_rejects_bad_key():CODE
LOWapi/tests/test_xai_tts_service_factory.py157def test_xai_key_validation_allows_scoped_key_without_voice_list_access():CODE
LOWapi/tests/test_openai_realtime_initial_context.py23async def test_initial_context_triggers_response_when_context_was_prepopulated():CODE
LOWapi/tests/test_openai_realtime_initial_context.py37async def test_updated_context_uses_tool_result_path_after_initial_context():CODE
LOWapi/tests/test_openai_realtime_initial_context.py52async def test_tts_greeting_sends_exact_static_greeting_prompt():CODE
LOWapi/tests/test_openai_realtime_initial_context.py82async def test_tts_greeting_waits_for_session_updated_before_sending_prompt():CODE
LOWapi/tests/test_openai_realtime_initial_context.py119async def test_function_call_executes_immediately_when_bot_is_not_speaking():CODE
LOWapi/tests/test_openai_realtime_initial_context.py134async def test_function_call_is_deferred_until_bot_stops_speaking():CODE
LOWapi/tests/test_workflow_text_chat.py31def test_text_chat_checkpoint_messages_round_trip_google_thought_signature():CODE
LOWapi/tests/test_workflow_text_chat.py74async def _create_user_and_workflow(CODE
LOWapi/tests/test_workflow_text_chat.py121async def test_text_chat_session_creation_requires_selected_organization():CODE
LOWapi/tests/test_workflow_text_chat.py153async def test_text_chat_session_creation_executes_initial_assistant_turn(CODE
LOWapi/tests/test_workflow_text_chat.py252async def test_text_chat_message_executes_assistant_turn(CODE
LOWapi/tests/test_workflow_text_chat.py370async def test_text_chat_executes_deferred_tool_calls_after_text_response(CODE
LOWapi/tests/test_workflow_text_chat.py500async def test_text_chat_chains_multiple_follow_up_completions_in_one_turn(CODE
LOWapi/tests/test_workflow_text_chat.py640async def test_text_chat_greeting_only_plays_on_fresh_node_entry(CODE
LOWapi/tests/test_workflow_text_chat.py756async def test_text_chat_rewind_reuses_checkpoint_snapshot(CODE
LOWapi/tests/test_workflow_text_chat.py978async def test_text_chat_session_is_not_accessible_from_another_org(CODE
1360 more matches not shown…
Decorative Section Separators311 hits · 1098 pts
SeverityFileLineSnippetContext
MEDIUMui/src/components/flow/renderer/PropertyInput.tsx131// ─── Layout helpers ──────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/renderer/PropertyInput.tsx147// ─── Widgets ─────────────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx24// ─── Static per-spec UI maps ──────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx69// ─── Helpers ──────────────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx168// ─── Canvas preview dispatch ──────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx458// ─── GenericNode ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx485 // ── Form state ─────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx506 // ── Trigger auto-UUID + canvas copy state ──────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx525 // ── Stale tool/document cleanup (was duplicated in Start/Agent) ─────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx553 // ── Dirty / save / open handlers ────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx589 // ── Render ──────────────────────────────────────────────────────────COMMENT
MEDIUMdeploy/hostinger/docker-compose.yaml2# =================================================================COMMENT
MEDIUMdeploy/hostinger/docker-compose.yaml26# =================================================================COMMENT
MEDIUMdeploy/hostinger/docker-compose.traefik.yaml2# =================================================================COMMENT
MEDIUMdeploy/hostinger/docker-compose.traefik.yaml18# =================================================================COMMENT
MEDIUMdeploy/helm/dograh/values.yaml11# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml13# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml31# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml47# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml101# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml104# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml122# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml126# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml154# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml156# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml218# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml220# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml249# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml256# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml282# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml288# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml314# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml316# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml370# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml372# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml435# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml437# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml455# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml480# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml509# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml518# -----------------------------------------------------------------------------COMMENT
MEDIUMsdk/python/src/dograh_sdk/client.py84 # ── spec discovery overrides (generated methods + caching) ────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/client.py106 # ── ergonomic workflow wrappers ───────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/client.py131 # ── low-level ──────────────────────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/workflow.py71 # ── node construction ──────────────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/workflow.py122 # ── edge construction ──────────────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/workflow.py163 # ── serialization ──────────────────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/codegen.py28# ── property type → Python type annotation ────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/codegen.py125# ── source rendering ─────────────────────────────────────────────────────COMMENT
MEDIUMsdk/python/src/dograh_sdk/codegen.py262# ── public entry points ──────────────────────────────────────────────────COMMENT
MEDIUMsdk/typescript/src/client.ts86 // ── spec discovery overrides (generated methods + caching) ────────COMMENT
MEDIUMsdk/typescript/src/client.ts112 // ── ergonomic workflow wrappers ───────────────────────────────────COMMENT
MEDIUMsdk/typescript/src/client.ts138 // ── low-level (overrides `_GeneratedClient.request`) ──────────────COMMENT
MEDIUMsdk/codegen/client_codegen.py169# ── Python emitter ─────────────────────────────────────────────────────COMMENT
MEDIUMsdk/codegen/client_codegen.py245# ── TypeScript emitter ─────────────────────────────────────────────────STRING
MEDIUMsdk/codegen/client_codegen.py332# ── CLI ────────────────────────────────────────────────────────────────STRING
MEDIUMscripts/generate_sdk.sh42# ── 1. Node-spec typed dataclasses ────────────────────────────────────COMMENT
MEDIUMscripts/generate_sdk.sh57# ── 2. SDK-scoped OpenAPI spec ────────────────────────────────────────COMMENT
MEDIUMscripts/generate_sdk.sh79# ── 3. Request/response models (off-the-shelf) ────────────────────────COMMENT
MEDIUMscripts/generate_sdk.sh105# ── 4. Client method mixins ──────────────────────────────────────────COMMENT
251 more matches not shown…
Excessive Try-Catch Wrapping384 hits · 386 pts
SeverityFileLineSnippetContext
LOWevals/stt/benchmark.py66 except Exception as e:CODE
MEDIUMevals/stt/benchmark.py67 print(f"Error with {provider.name}: {e}")CODE
MEDIUMevals/stt/benchmark.py207 print(f"Error: Audio file not found: {audio_path}")STRING
LOWevals/stt/benchmark.py232 except Exception as e:STRING
MEDIUMevals/stt/event_capture.py239 print(f"Error: Audio file not found: {audio_path}")STRING
LOWevals/stt/event_capture.py281 except Exception as e:STRING
LOWevals/stt/providers/local_smart_turn_provider.py83 except Exception:CODE
LOWevals/stt/providers/local_smart_turn_provider.py88 except Exception:CODE
LOWevals/stt/providers/deepgram_provider.py189 except Exception as e:CODE
LOWapi/constants.py122 except Exception:CODE
LOWapi/tasks/webhook_delivery.py197 except Exception as e:CODE
LOWapi/tasks/webhook_delivery.py220 except Exception as e:CODE
LOWapi/tasks/workflow_completion.py32 except Exception as e:CODE
LOWapi/tasks/workflow_completion.py38 except Exception as e:CODE
LOWapi/tasks/run_integrations.py119 except Exception as e:CODE
LOWapi/tasks/run_integrations.py163 except Exception as e:CODE
LOWapi/tasks/run_integrations.py325 except Exception as e:CODE
LOWapi/tasks/run_integrations.py328 except Exception as e:CODE
LOWapi/tasks/campaign_tasks.py79 except Exception as e:CODE
LOWapi/tasks/campaign_tasks.py231 except Exception as e:CODE
LOWapi/tasks/knowledge_base_processing.py284 except Exception as e:CODE
LOWapi/tasks/knowledge_base_processing.py298 except Exception as e:CODE
LOW…/tests/integrations/test_run_pipeline_text_greeting.py258 except Exception:CODE
LOWapi/tests/support/mcp_mock_server.py86 except Exception:CODE
LOWapi/utils/telephony_helper.py149 except Exception:CODE
LOWapi/utils/telephony_helper.py153 except Exception as e:CODE
MEDIUMapi/utils/audio_converter.py26 print(f"Error: Input file '{input_path}' not found")CODE
LOWapi/utils/tunnel.py31 except Exception as e:CODE
LOWapi/utils/tunnel.py93 except Exception as e:CODE
LOWapi/utils/common.py177 except Exception as e:CODE
LOWapi/utils/common.py199 except Exception as e:CODE
LOWapi/utils/template_renderer.py141 except Exception:CODE
LOWapi/utils/template_renderer.py153 except Exception:CODE
LOWapi/db/campaign_client.py60 except Exception as e:CODE
LOWapi/db/campaign_client.py136 except Exception as e:CODE
LOWapi/db/campaign_client.py310 except Exception as e:CODE
LOWapi/db/campaign_client.py414 except Exception as e:CODE
LOWapi/db/campaign_client.py458 except Exception:CODE
LOWapi/db/campaign_client.py490 except Exception:CODE
LOWapi/db/campaign_client.py515 except Exception:CODE
LOWapi/db/campaign_client.py527 except Exception as e:CODE
LOWapi/db/campaign_client.py548 except Exception as e:CODE
LOWapi/db/campaign_client.py578 except Exception:CODE
LOWapi/db/campaign_client.py716 except Exception as e:CODE
LOWapi/db/campaign_client.py844 except Exception as e:CODE
LOWapi/db/organization_usage_client.py345 except Exception:CODE
LOWapi/db/workflow_run_text_session_client.py54 except Exception as e:CODE
LOWapi/db/workflow_run_text_session_client.py120 except Exception as e:CODE
LOWapi/db/workflow_template_client.py49 except Exception as e:CODE
LOWapi/db/workflow_template_client.py79 except Exception as e:CODE
LOWapi/db/workflow_template_client.py97 except Exception as e:CODE
LOWapi/db/integration_client.py44 except Exception as e:CODE
LOWapi/db/integration_client.py65 except Exception as e:CODE
LOWapi/db/integration_client.py86 except Exception as e:CODE
LOWapi/db/organization_configuration_client.py73 except Exception as e:CODE
LOWapi/db/organization_configuration_client.py97 except Exception as e:CODE
LOWapi/db/organization_configuration_client.py120 except Exception as e:CODE
LOWapi/db/workflow_run_client.py117 except Exception as e:CODE
LOWapi/db/workflow_run_client.py409 except Exception as e:CODE
LOWapi/db/workflow_run_client.py474 except Exception as e:CODE
324 more matches not shown…
Unused Imports300 hits · 284 pts
SeverityFileLineSnippetContext
LOWevals/stt/event_capture.py16CODE
LOWevals/stt/providers/local_smart_turn_provider.py7CODE
LOWevals/stt/providers/__init__.py1CODE
LOWevals/stt/providers/__init__.py1CODE
LOWevals/stt/providers/__init__.py1CODE
LOWevals/stt/providers/__init__.py1CODE
LOWevals/stt/providers/__init__.py2CODE
LOWevals/stt/providers/__init__.py3CODE
LOWevals/stt/providers/__init__.py4CODE
LOWevals/stt/providers/__init__.py5CODE
LOW…skills/review-agents-md/scripts/inventory_agents_md.py12CODE
LOWsdk/python/src/dograh_sdk/_generated_models.py5CODE
LOWsdk/python/src/dograh_sdk/_generated_client.py10CODE
LOWsdk/python/src/dograh_sdk/client.py13CODE
LOWsdk/python/src/dograh_sdk/__init__.py21CODE
LOWsdk/python/src/dograh_sdk/__init__.py22CODE
LOWsdk/python/src/dograh_sdk/__init__.py22CODE
LOWsdk/python/src/dograh_sdk/__init__.py22CODE
LOWsdk/python/src/dograh_sdk/__init__.py22CODE
LOWsdk/python/src/dograh_sdk/__init__.py23CODE
LOWsdk/python/src/dograh_sdk/__init__.py24CODE
LOWsdk/python/src/dograh_sdk/__init__.py24CODE
LOWsdk/python/src/dograh_sdk/_validation.py10CODE
LOWsdk/python/src/dograh_sdk/workflow.py13CODE
LOWsdk/python/src/dograh_sdk/workflow.py15CODE
LOWsdk/python/src/dograh_sdk/workflow.py23CODE
LOWsdk/python/src/dograh_sdk/codegen.py18CODE
LOWsdk/python/src/dograh_sdk/typed/_base.py14CODE
LOWsdk/python/src/dograh_sdk/typed/agent_node.py8CODE
LOWsdk/python/src/dograh_sdk/typed/agent_node.py11CODE
LOWsdk/python/src/dograh_sdk/typed/global_node.py8CODE
LOWsdk/python/src/dograh_sdk/typed/global_node.py10CODE
LOWsdk/python/src/dograh_sdk/typed/global_node.py11CODE
LOWsdk/python/src/dograh_sdk/typed/global_node.py11CODE
LOWsdk/python/src/dograh_sdk/typed/global_node.py11CODE
LOWsdk/python/src/dograh_sdk/typed/end_call.py8CODE
LOWsdk/python/src/dograh_sdk/typed/end_call.py11CODE
LOWsdk/python/src/dograh_sdk/typed/webhook.py8CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py7CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py8CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py9CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py10CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py11CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py12CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py13CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py14CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py15CODE
LOWsdk/python/src/dograh_sdk/typed/start_call.py8CODE
LOWsdk/python/src/dograh_sdk/typed/start_call.py11CODE
LOWsdk/python/src/dograh_sdk/typed/tuner.py8CODE
LOWsdk/python/src/dograh_sdk/typed/tuner.py10CODE
LOWsdk/python/src/dograh_sdk/typed/tuner.py11CODE
LOWsdk/python/src/dograh_sdk/typed/tuner.py11CODE
LOWsdk/python/src/dograh_sdk/typed/qa.py8CODE
LOWsdk/python/src/dograh_sdk/typed/qa.py10CODE
LOWsdk/python/src/dograh_sdk/typed/qa.py11CODE
LOWsdk/python/src/dograh_sdk/typed/trigger.py8CODE
LOWsdk/python/src/dograh_sdk/typed/trigger.py10CODE
LOWsdk/python/src/dograh_sdk/typed/trigger.py11CODE
LOWsdk/python/src/dograh_sdk/typed/trigger.py11CODE
240 more matches not shown…
Self-Referential Comments40 hits · 119 pts
SeverityFileLineSnippetContext
MEDIUMscripts/rolling_update.sh287 # Create a new timestamped log dir for this deployCOMMENT
MEDIUMapi/conftest.py336 # Create a custom userSTRING
MEDIUMapi/conftest.py339 # Create a test client for this userSTRING
MEDIUMapi/tests/test_pipecat_engine_variable_extraction.py134 # Create the pipelineCOMMENT
MEDIUMapi/tests/test_mcp_tool_route.py267 # Create a user and an organization, then link them so the route'sCOMMENT
MEDIUMapi/tests/test_custom_tools.py1290 # Create a mock engineCOMMENT
MEDIUMapi/tests/test_custom_tools.py1361 # Create a mock engine with a mock LLMCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py212 # Create the pipeline with transport input -> user aggregator -> LLM -> TTS -> transport output -> assistant aggregaCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py602 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py689 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py876 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py886 # Create a custom extraction mock that signals when calledCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py957 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py963 # Create a workflow where start node has NO extractionCOMMENT
MEDIUMapi/tests/test_pipecat_engine_context_update.py108 # Create the pipelineCOMMENT
MEDIUMapi/tests/test_workflow_versioning.py446 # Create a draftCOMMENT
MEDIUMapi/tests/test_workflow_versioning.py571 # Create a draft (unpublished)COMMENT
MEDIUMapi/tests/test_workflow_versioning.py577 # Create a run (simulating campaign dispatch)COMMENT
MEDIUMapi/tests/test_workflow_versioning.py599 # Create a test runCOMMENT
MEDIUMapi/tests/test_pipecat_engine_tool_calls.py99 # Create the pipeline with the mock LLM and TTSCOMMENT
MEDIUMapi/tests/test_pipecat_engine_tool_calls.py109 # Create a real pipeline taskCOMMENT
MEDIUMapi/tests/test_tts_endframe_with_audio_write_failure.py142 # Create the pipelineCOMMENT
MEDIUM…ts/test_pipecat_engine_node_switch_with_user_speech.py194 # Create the pipeline:COMMENT
MEDIUMapi/db/organization_client.py94 # Create a default API key for the new organizationCOMMENT
MEDIUMapi/db/workflow_client.py42 # Create the first definition as V1 publishedCOMMENT
MEDIUM…/b79f19f68157_add_call_type_column_to_workflow_runs.py23 # Create the workflow_call_type enumCOMMENT
MEDIUM…sions/49a8fe6841e6_add_state_field_to_workflow_runs.py21 # Create the workflow_run_state enum typeCOMMENT
MEDIUMapi/routes/webrtc_signaling.py797 # Create a minimal user object for compatibility with signaling managerCOMMENT
MEDIUMapi/routes/workflow.py515 # Create the workflow in our databaseCOMMENT
MEDIUMapi/routes/workflow.py1536 # Create a new workflow from the templateCOMMENT
MEDIUMapi/mcp_server/instructions.py39### Creating a reusable tool and using it in workflowCOMMENT
MEDIUMapi/mcp_server/instructions.py57### Creating a new workflowCOMMENT
MEDIUMapi/services/mps_service_key_client.py847# Create a singleton instanceCOMMENT
MEDIUMapi/services/storage.py86# Create a single storage instance at module load time.COMMENT
MEDIUMapi/services/filesystem/local.py70 # Create a temporary directory for symlinksCOMMENT
MEDIUMapi/services/pipecat/run_pipeline.py958 # Create a separate LLM instance for the voicemail sub-pipelineCOMMENT
MEDIUMapi/services/workflow/workflow_graph.py199 # Create the edge with properties from dtoCOMMENT
MEDIUMapi/services/workflow/qa/tracing.py112 # Create a root span (new trace) for this node summary generationCOMMENT
MEDIUMapi/services/workflow/qa/node_summary.py177 # Create a Langfuse trace for this summary generationCOMMENT
MEDIUMapi/services/campaign/campaign_orchestrator.py667 # Create a shutdown event for clean coordinationCOMMENT
Docstring Block Structure17 hits · 85 pts
SeverityFileLineSnippetContext
HIGHapi/utils/template_renderer.py19 Get a nested value from a dictionary using dot notation. Args: obj: The object to traverse (dict or anSTRING
HIGHapi/db/workflow_client.py530 Update an existing workflow in the database. Name changes are applied directly to the workflow. STRING
HIGHapi/db/workflow_client.py639 Update the status of a workflow. Args: workflow_id: The ID of the workflow to update STRING
HIGHapi/routes/public_download.py31Download a workflow recording or transcript via public access token. This endpoint: 1. Validates the public accSTRING
HIGHapi/routes/s3_signed_url.py91Validate the S3 key format and extract workflow_run_id if present. Args: key: S3 object key allow_sSTRING
HIGHapi/routes/s3_signed_url.py126Authorize access to workflow run and retrieve it. Args: run_id: Workflow run ID (can be None for special paSTRING
HIGHapi/routes/workflow.py477 Create a new workflow from a natural language template request. This endpoint: 1. Uses mps_service_key_cliSTRING
HIGHapi/routes/workflow.py999 Update an existing workflow. Args: workflow_id: The ID of the workflow to update request: The STRING
HIGHapi/routes/turn_credentials.py58Generate time-limited TURN credentials using HMAC-SHA1. Args: user_id: Unique identifier for the user (for STRING
HIGHapi/services/mps_service_key_client.py245 Check the usage and quota of a service key. Args: service_key: The service key to check usSTRING
HIGHapi/services/mps_service_key_client.py595 Transcribe an audio file via MPS STT API. Args: audio_data: Raw audio bytes fiSTRING
HIGHapi/services/mps_service_key_client.py685 Get available voices for a TTS provider from MPS. Args: provider: TTS provider name (eleveSTRING
HIGHapi/services/mps_service_key_client.py804 Call the MPS workflow creation API using secret key authentication. For OSS mode: Pass created_by in hSTRING
HIGHapi/services/telephony/base.py418 Initiate a call transfer to a destination number. Args: destination: The destination phoneSTRING
HIGHapi/services/telephony/providers/cloudonix/provider.py1063 Initiate a call transfer via Cloudonix. Uses inline CXML to put the destination into a conference whenSTRING
HIGHapi/services/telephony/providers/twilio/provider.py593 Initiate a call transfer via Twilio. Uses inline TwiML to put the destination into a conference when tSTRING
HIGHapi/services/workflow/duplicate.py47Duplicate a workflow including its definition, config, and triggers. Recordings are org-scoped and shared, so they STRING
Cross-File Repetition17 hits · 85 pts
SeverityFileLineSnippetContext
HIGHsdk/python/src/dograh_sdk/typed/agent_node.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/global_node.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/end_call.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/webhook.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/start_call.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/tuner.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/qa.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/trigger.py0generated — do not edit by hand. regenerate with `python -m dograh_sdk.codegen` against the target dograh backend. sourcSTRING
HIGHsdk/python/src/dograh_sdk/typed/agent_node.py0when true and a global node exists, prepends the global prompt to this node's prompt at runtime.STRING
HIGHsdk/python/src/dograh_sdk/typed/end_call.py0when true and a global node exists, prepends the global prompt to this node's prompt at runtime.STRING
HIGHsdk/python/src/dograh_sdk/typed/start_call.py0when true and a global node exists, prepends the global prompt to this node's prompt at runtime.STRING
HIGHapi/services/telephony/providers/telnyx/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
HIGHapi/services/telephony/providers/vonage/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
HIGHapi/services/telephony/providers/plivo/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
HIGHapi/services/telephony/providers/cloudonix/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
HIGHapi/services/telephony/providers/vobiz/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
HIGHapi/services/telephony/providers/twilio/routes.py0twilio telephony routes (webhooks, status callbacks, answer urls). mounted under ``/api/v1/telephony`` by ``api.routes.tSTRING
Deep Nesting83 hits · 78 pts
SeverityFileLineSnippetContext
LOWevals/stt/providers/speechmatics_provider.py44CODE
LOWevals/stt/providers/speechmatics_provider.py204CODE
LOWevals/stt/providers/speechmatics_provider.py152CODE
LOWevals/stt/providers/deepgram_flux_provider.py53CODE
LOWevals/stt/providers/deepgram_flux_provider.py141CODE
LOWevals/stt/providers/local_smart_turn_provider.py68CODE
LOWevals/stt/providers/deepgram_provider.py48CODE
LOWevals/stt/providers/deepgram_provider.py142CODE
LOWsdk/codegen/client_codegen.py96CODE
LOWapi/tasks/run_integrations.py126CODE
LOWapi/tasks/run_integrations.py167CODE
LOWapi/tests/test_user_muting_during_bot_speech.py82CODE
LOWapi/tests/test_dograh_sdk_typed.py58CODE
LOWapi/tests/test_tts_endframe_with_audio_write_failure.py166CODE
LOWapi/tests/test_tts_endframe_with_audio_write_failure.py279CODE
LOW…/tests/integrations/test_run_pipeline_text_greeting.py146CODE
LOWapi/utils/credential_auth.py15CODE
LOWapi/utils/credential_auth.py57CODE
LOWapi/utils/common.py134CODE
LOWapi/utils/telephony_address.py73CODE
LOWapi/db/filters.py58CODE
LOWapi/alembic/env.py64CODE
LOWapi/routes/superuser.py66CODE
LOWapi/routes/telephony.py1070CODE
LOWapi/routes/public_download.py24CODE
LOWapi/routes/credentials.py51CODE
LOWapi/routes/organization.py1230CODE
LOWapi/routes/campaign.py348CODE
LOWapi/routes/webrtc_signaling.py323CODE
LOWapi/routes/webrtc_signaling.py418CODE
LOWapi/routes/workflow.py994CODE
LOWapi/mcp_server/tools/docs_search.py405CODE
LOWapi/mcp_server/tools/docs_search.py474CODE
LOWapi/mcp_server/tools/docs_search.py496CODE
LOWapi/services/configuration/resolve.py37CODE
LOWapi/services/configuration/masking.py147CODE
LOWapi/services/gen_ai/json_parser.py69CODE
LOWapi/services/gen_ai/json_parser.py113CODE
LOWapi/services/auth/depends.py37CODE
LOWapi/services/gender/build_model.py34CODE
LOWapi/services/filesystem/s3.py80CODE
LOWapi/services/telephony/ari_manager.py274CODE
LOWapi/services/telephony/factory.py74CODE
LOWapi/services/telephony/call_transfer_manager.py140CODE
LOWapi/services/telephony/providers/telnyx/strategies.py148CODE
LOWapi/services/pipecat/pipeline_metrics_aggregator.py36CODE
LOWapi/services/pipecat/recording_router_processor.py94CODE
LOWapi/services/pipecat/event_handlers.py61CODE
LOWapi/services/pipecat/event_handlers.py101CODE
LOWapi/services/pipecat/event_handlers.py222CODE
LOWapi/services/pipecat/realtime_feedback_observer.py111CODE
LOW…ervices/pipecat/pipeline_engine_callbacks_processor.py40CODE
LOW…ervices/pipecat/pipeline_engine_callbacks_processor.py62CODE
LOWapi/services/pipecat/run_pipeline.py540CODE
LOWapi/services/pipecat/recording_audio_cache.py151CODE
LOWapi/services/pipecat/service_factory.py190CODE
LOWapi/services/pipecat/service_factory.py493CODE
LOWapi/services/pipecat/service_factory.py852CODE
LOWapi/services/pipecat/service_factory.py983CODE
LOWapi/services/pipecat/service_factory.py1157CODE
23 more matches not shown…
Verbosity Indicators40 hits · 76 pts
SeverityFileLineSnippetContext
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx273 // Step 1: Get presigned URLs for all filesCOMMENT
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx291 // Step 2: Upload all files to storage in parallelCOMMENT
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx308 // Step 3: Create all recording recordsCOMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx429 // Step 1: Finalize the last bot message (user started speaking)COMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx438 // Step 2: Remove any previous interim transcriptionCOMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx443 // Step 3: Add new transcription (interim or final)COMMENT
LOWui/src/app/files/DocumentUpload.tsx181 // Step 2: File selected — show retrieval mode choiceCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx43 // Step 1: Request presigned upload URLCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx59 // Step 2: Upload file directly to S3/MinIOCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx75 // Step 3: Notify parent with file_keyCOMMENT
LOWapi/tasks/run_integrations.py210 # Step 2: Get workflow definition from the run's pinned versionCOMMENT
LOWapi/tasks/run_integrations.py218 # Step 3: Extract integration nodesCOMMENT
LOWapi/tasks/run_integrations.py224 # Step 4: Generate a public access token for any run that needs post-call work.COMMENT
LOWapi/tasks/run_integrations.py295 # Step 7: Execute webhooksCOMMENT
LOWapi/tasks/run_integrations.py302 # Step 8: Build render context (includes annotations from QA and integrations)COMMENT
LOWapi/tasks/run_integrations.py305 # Step 9: Execute each webhook nodeCOMMENT
LOWapi/tasks/run_integrations.py181 # Step 1: Get workflow run with full contextCOMMENT
LOWapi/tasks/run_integrations.py237 # Step 5: Run QA analysis before webhooksCOMMENT
LOWapi/tasks/run_integrations.py275 # Step 6: Run registered third-party integrations after uploads are completeCOMMENT
LOWapi/tests/test_voicemail_detector.py122 # Step 0: First response after CONVERSATION classificationCOMMENT
LOWapi/tests/test_voicemail_detector.py123 # Step 1: Response to second user turnCOMMENT
LOWapi/tests/test_voicemail_detector.py124 # Step 2: end_call function call to end pipelineCOMMENT
LOWapi/tests/test_user_idle_handler.py228 # Step 0: Short greeting on Start nodeCOMMENT
LOWapi/tests/test_user_idle_handler.py230 # Step 1: Longer response (TTS 400ms > idle timeout 200ms)COMMENT
LOWapi/tests/test_user_idle_handler.py235 # Step 2: Transition from Start → Agent nodeCOMMENT
LOWapi/tests/test_user_idle_handler.py241 # Step 3: Transition from Agent → End node (ends call)COMMENT
LOWapi/tests/test_pipecat_engine_end_call.py774 # Step 0: Text responseCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py777 # Step 1: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py427 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py511 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py268 # Step 0: Start node - should have start promptCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py271 # Step 1: Agent node - should have agent promptCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py274 # Step 2: End node - should have end promptCOMMENT
LOW…688d0da1123_backfill_workflow_definition_versioning.py30 # Step 1: For each workflow's is_current=True definition, copy configs fromCOMMENT
LOW…688d0da1123_backfill_workflow_definition_versioning.py47 # Step 2: Mark all pre-versioning non-current definitions as legacy.STRING
LOW…688d0da1123_backfill_workflow_definition_versioning.py56 # Step 3: Set released_definition_id on workflows to their published definition.STRING
LOWapi/services/gender/gender_service.py134 # Step 1: Check local modelCOMMENT
LOWapi/services/gender/gender_service.py152 # Step 2: Check Redis cache for previous API responsesCOMMENT
LOWapi/services/gender/gender_service.py167 # Step 3: Fallback to GenderAPICOMMENT
LOWapi/services/gender/gender_service.py189 # Step 4: Return best guess from model or unknownCOMMENT
Structural Annotation Overuse40 hits · 76 pts
SeverityFileLineSnippetContext
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx273 // Step 1: Get presigned URLs for all filesCOMMENT
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx291 // Step 2: Upload all files to storage in parallelCOMMENT
LOW…/workflow/[workflowId]/components/RecordingsDialog.tsx308 // Step 3: Create all recording recordsCOMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx429 // Step 1: Finalize the last bot message (user started speaking)COMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx438 // Step 2: Remove any previous interim transcriptionCOMMENT
LOW…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx443 // Step 3: Add new transcription (interim or final)COMMENT
LOWui/src/app/files/DocumentUpload.tsx181 // Step 2: File selected — show retrieval mode choiceCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx43 // Step 1: Request presigned upload URLCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx59 // Step 2: Upload file directly to S3/MinIOCOMMENT
LOWui/src/app/campaigns/CsvUploadSelector.tsx75 // Step 3: Notify parent with file_keyCOMMENT
LOWapi/tasks/run_integrations.py210 # Step 2: Get workflow definition from the run's pinned versionCOMMENT
LOWapi/tasks/run_integrations.py218 # Step 3: Extract integration nodesCOMMENT
LOWapi/tasks/run_integrations.py224 # Step 4: Generate a public access token for any run that needs post-call work.COMMENT
LOWapi/tasks/run_integrations.py295 # Step 7: Execute webhooksCOMMENT
LOWapi/tasks/run_integrations.py302 # Step 8: Build render context (includes annotations from QA and integrations)COMMENT
LOWapi/tasks/run_integrations.py305 # Step 9: Execute each webhook nodeCOMMENT
LOWapi/tasks/run_integrations.py181 # Step 1: Get workflow run with full contextCOMMENT
LOWapi/tasks/run_integrations.py237 # Step 5: Run QA analysis before webhooksCOMMENT
LOWapi/tasks/run_integrations.py275 # Step 6: Run registered third-party integrations after uploads are completeCOMMENT
LOWapi/tests/test_voicemail_detector.py122 # Step 0: First response after CONVERSATION classificationCOMMENT
LOWapi/tests/test_voicemail_detector.py123 # Step 1: Response to second user turnCOMMENT
LOWapi/tests/test_voicemail_detector.py124 # Step 2: end_call function call to end pipelineCOMMENT
LOWapi/tests/test_user_idle_handler.py228 # Step 0: Short greeting on Start nodeCOMMENT
LOWapi/tests/test_user_idle_handler.py230 # Step 1: Longer response (TTS 400ms > idle timeout 200ms)COMMENT
LOWapi/tests/test_user_idle_handler.py235 # Step 2: Transition from Start → Agent nodeCOMMENT
LOWapi/tests/test_user_idle_handler.py241 # Step 3: Transition from Agent → End node (ends call)COMMENT
LOWapi/tests/test_pipecat_engine_end_call.py774 # Step 0: Text responseCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py777 # Step 1: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py427 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py511 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py268 # Step 0: Start node - should have start promptCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py271 # Step 1: Agent node - should have agent promptCOMMENT
LOWapi/tests/test_pipecat_engine_context_update.py274 # Step 2: End node - should have end promptCOMMENT
LOW…688d0da1123_backfill_workflow_definition_versioning.py30 # Step 1: For each workflow's is_current=True definition, copy configs fromCOMMENT
LOW…688d0da1123_backfill_workflow_definition_versioning.py47 # Step 2: Mark all pre-versioning non-current definitions as legacy.STRING
LOW…688d0da1123_backfill_workflow_definition_versioning.py56 # Step 3: Set released_definition_id on workflows to their published definition.STRING
LOWapi/services/gender/gender_service.py134 # Step 1: Check local modelCOMMENT
LOWapi/services/gender/gender_service.py152 # Step 2: Check Redis cache for previous API responsesCOMMENT
LOWapi/services/gender/gender_service.py167 # Step 3: Fallback to GenderAPICOMMENT
LOWapi/services/gender/gender_service.py189 # Step 4: Return best guess from model or unknownCOMMENT
Redundant / Tautological Comments43 hits · 65 pts
SeverityFileLineSnippetContext
LOWevals/stt/providers/deepgram_provider.py165 # Check if finalCOMMENT
LOWscripts/migrate.sh5# Set PYTHONPATH to the parent directory of the script's locationCOMMENT
LOWscripts/migrate.sh14# Check if environment file existsCOMMENT
LOWscripts/stop_services.sh71# Check if any PID files existCOMMENT
LOWscripts/stop_services.sh95 # Check if parent or any descendants are still aliveCOMMENT
LOWscripts/makemigrate.sh5# Set PYTHONPATH to the parent directory of the script's locationCOMMENT
LOWscripts/makemigrate.sh14# Check if environment file existsCOMMENT
LOWscripts/makemigrate.sh26# Check if the migration name is empty or less than 5 charactersCOMMENT
LOW.github/workflows/slack-announcements.yml14 # Check if the discussion is in the announcements categoryCOMMENT
LOWapi/conftest.py133 # Check if database existsCOMMENT
LOWapi/logging_config.py114 # Set level to INFO to avoid debug logs from librariesCOMMENT
LOWapi/tasks/arq.py20# Check if we're using TLS (rediss://)COMMENT
LOWapi/tests/test_campaign_call_dispatcher.py794 # Set campaign to pausedCOMMENT
LOWapi/utils/common.py124 # Check if port is numericCOMMENT
LOWapi/db/organization_client.py76 # Check if we actually inserted (rowcount > 0) or if there was a conflict (rowcount == 0)COMMENT
LOWapi/routes/auth.py35 # Check if email is already takenCOMMENT
LOWapi/routes/workflow_embed.py76 # Check if an embed token already exists for this workflowCOMMENT
LOWapi/routes/webrtc_signaling.py204 # Check if TURN is configuredCOMMENT
LOWapi/routes/webrtc_signaling.py761 # Check if session is expiredCOMMENT
LOWapi/routes/public_embed.py283 # Check if token is activeCOMMENT
LOWapi/routes/public_embed.py380 # Check if token is activeCOMMENT
LOWapi/routes/public_embed.py442 # Check if session is expiredCOMMENT
LOWapi/routes/public_embed.py461 # Check if TURN is configuredCOMMENT
LOWapi/services/auth/depends.py42 # Check if API key is provided (takes precedence)COMMENT
LOWapi/services/auth/depends.py48 # Check if we're using local (email/password) authCOMMENT
LOWapi/services/auth/depends.py120 # Check if user's selected organization differs from the current organizationCOMMENT
LOWapi/services/gender/test_service.py96 # Check if API key is availableCOMMENT
LOWapi/services/telephony/ari_manager.py333 # Check if this is a transfer destination channel (app_args starts with "transfer")COMMENT
LOWapi/services/telephony/ari_manager.py396 # Check if this is a transfer destination that failedCOMMENT
LOWapi/services/telephony/ari_manager.py815 # Check if this is a call transfer scenario external channel. Skip full teardown ifCOMMENT
LOWapi/services/telephony/call_transfer_manager.py172 # Check if this is a completion eventCOMMENT
LOWapi/services/telephony/providers/cloudonix/provider.py770 # Check if AccountSid is a Cloudonix domainCOMMENT
LOWapi/services/pipecat/realtime_feedback_observer.py253 # Check if this MetricsFrame contains TTFB data from an LLM processorCOMMENT
LOWapi/services/pipecat/pipeline_builder.py208 # Check if turn logging is enabledCOMMENT
LOWapi/services/pipecat/run_pipeline.py800 # Check if the workflow has any active recordings so the engine canCOMMENT
LOWapi/services/workflow/pipecat_engine.py602 # Check if delayed start is enabledCOMMENT
LOWapi/services/workflow/pipecat_engine_custom_tools.py559 # Check if this is a WebRTC call - transfers are not supportedCOMMENT
LOWapi/services/campaign/campaign_orchestrator.py199 # Check if this reason should be retriedCOMMENT
LOWapi/services/campaign/campaign_orchestrator.py481 # Check if batch is stuck (initiated > 5 minutes ago but no completion)COMMENT
LOWapi/services/campaign/campaign_orchestrator.py495 # Check if there's work to be doneCOMMENT
LOWapi/services/campaign/campaign_orchestrator.py521 # Check if campaign should be marked completeCOMMENT
LOWapi/services/campaign/rate_limiter.py270 # Set expiry to match stale timeoutSTRING
LOWapi/services/campaign/campaign_call_dispatcher.py70 # Check if campaign is in running stateCOMMENT
Modern Structural Boilerplate45 hits · 48 pts
SeverityFileLineSnippetContext
LOWevals/stt/providers/__init__.py7__all__ = [CODE
LOWsdk/python/src/dograh_sdk/__init__.py26__all__ = [CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py17__all__ = [CODE
LOWapi/tests/integrations/_run_pipeline_helpers.py246__all__ = [CODE
LOWapi/schemas/telephony_config.py134__all__ = [CODE
LOWapi/db/user_client.py143 async def update_user_configuration_last_validated_at(self, user_id: int) -> None:CODE
LOWapi/db/user_client.py180 async def update_user_email(self, user_id: int, email: str) -> None:CODE
LOWapi/routes/tool.py44__all__ = [CODE
LOWapi/mcp_server/__init__.py3__all__ = ["mcp"]CODE
LOWapi/services/posthog_client.py88def set_person_properties(distinct_id: str, properties: dict[str, Any]) -> None:CODE
LOWapi/services/configuration/defaults.py34__all__ = [CODE
LOWapi/services/configuration/options/__init__.py59__all__ = [CODE
LOWapi/services/gen_ai/__init__.py15__all__ = [CODE
LOWapi/services/gen_ai/embedding/__init__.py12__all__ = [CODE
LOWapi/services/filesystem/__init__.py6__all__ = [CODE
LOWapi/services/integrations/__init__.py22__all__ = [CODE
LOWapi/services/integrations/tuner/collector.py67 def set_disconnection_reason(self, reason: str | None) -> None:CODE
LOWapi/services/integrations/tuner/__init__.py19__all__ = ["PACKAGE"]CODE
LOWapi/services/telephony/providers/telnyx/serializers.py5__all__ = ["TelnyxFrameSerializer"]CODE
LOWapi/services/telephony/providers/telnyx/__init__.py167__all__ = [CODE
LOWapi/services/telephony/providers/ari/serializers.py5__all__ = ["AsteriskFrameSerializer"]CODE
LOWapi/services/telephony/providers/ari/__init__.py80__all__ = [CODE
LOWapi/services/telephony/providers/vonage/serializers.py5__all__ = ["VonageFrameSerializer"]CODE
LOWapi/services/telephony/providers/vonage/__init__.py86__all__ = [CODE
LOWapi/services/telephony/providers/plivo/serializers.py5__all__ = ["PlivoFrameSerializer"]CODE
LOWapi/services/telephony/providers/plivo/__init__.py148__all__ = [CODE
LOW…/services/telephony/providers/cloudonix/serializers.py5__all__ = ["CloudonixFrameSerializer"]CODE
LOWapi/services/telephony/providers/cloudonix/__init__.py143__all__ = [CODE
LOWapi/services/telephony/providers/vobiz/serializers.py5__all__ = ["VobizFrameSerializer"]CODE
LOWapi/services/telephony/providers/vobiz/__init__.py158__all__ = [CODE
LOWapi/services/telephony/providers/twilio/serializers.py10__all__ = ["TwilioFrameSerializer"]CODE
LOWapi/services/telephony/providers/twilio/__init__.py80__all__ = [CODE
LOWapi/services/workflow/pipecat_engine.py832 def set_context(self, context: LLMContext) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py840 def set_task(self, task: PipelineWorker) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py848 def set_audio_config(self, audio_config) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py852 def set_transport_output(self, transport_output) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py860 def set_fetch_recording_audio(self, fetch_fn) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py864 def set_mute_pipeline(self, mute: bool) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py506 async def _setup_llm_context(self, node: Node) -> None:CODE
LOWapi/services/workflow/text_chat_session_service.py373__all__ = [CODE
LOWapi/services/workflow/qa/__init__.py12__all__ = ["run_per_node_qa_analysis"]CODE
LOWapi/services/workflow/node_specs/__init__.py63__all__ = [CODE
LOWapi/services/voice_prompting_guide/__init__.py22__all__ = [CODE
LOWapi/services/campaign/__init__.py5__all__ = ["rate_limiter"]CODE
LOWapi/services/reports/__init__.py9__all__ = [CODE
Over-Commented Block43 hits · 40 pts
SeverityFileLineSnippetContext
LOWdocker-compose.yaml1# Dograh deployment stack — driven by the helper scripts, not by a bareCOMMENT
LOWdocker-compose.yaml201 MINIO_SECRET_KEY: "${MINIO_ROOT_PASSWORD:-minioadmin}"COMMENT
LOWdocker-compose.yaml301 # - CLOUDFLARE_TUNNEL_TOKEN set -> named tunnel with a stable hostname. PointCOMMENT
LOWui/src/components/lead-forms/onboardingServiceClient.ts1// Thin client for the SEPARATE user_onboarding service (its own base URL).COMMENT
LOWui/src/components/lead-forms/detectCountry.ts1// Best-effort country detection for lead provenance — no permission prompt, noCOMMENT
LOWdeploy/hostinger/docker-compose.yaml1# Dograh — Hostinger VPS Docker Manager deploymentCOMMENT
LOWdeploy/hostinger/docker-compose.yaml161 MINIO_SECRET_KEY: "${MINIO_ROOT_PASSWORD:-minioadmin}"COMMENT
LOWdeploy/hostinger/docker-compose.traefik.yaml1# Standalone Traefik + Let's Encrypt — STANDS IN FOR Hostinger's managed Traefik.COMMENT
LOWdeploy/helm/dograh/values.yaml1# Dograh Helm chart — default values.COMMENT
LOWdeploy/helm/dograh/values.yaml21# - name: regcredCOMMENT
LOWdeploy/helm/dograh/values.yaml41# internalMinio — bundled MinIO manifest (see `minio` below)COMMENT
LOWdeploy/helm/dograh/values.yaml381COMMENT
LOWdeploy/helm/dograh/values.yaml461# corresponding autoscaling block is enabled — treat `minReplicas` as the newCOMMENT
LOWdeploy/helm/dograh/values.yaml501 # satisfiable during node drains. Single-node installs that drop this to 1COMMENT
LOWdeploy/helm/dograh/examples/values-aws.yaml1# AWS EKS — uses ALB (via AWS Gateway API controller) for HTTP and NLBCOMMENT
LOWsdk/typescript/src/index.ts61// Typed SDK — generated per-node interfaces + factories. Importable asCOMMENT
LOWexamples/typescript/fetch_workflow_and_call.ts1// Fetch a workflow by ID and place a test phone call using the TypeScript SDK.COMMENT
LOWexamples/typescript/load_and_edit_workflow.ts1// Load an existing workflow, edit a node prompt, and save it as a draft.COMMENT
LOWexamples/typescript/create_workflow.ts1// Create a new workflow using the TypeScript SDK.COMMENT
LOWexamples/typescript/build_workflow_with_sdk.ts1// Build a multi-node voice agent using the Workflow SDK and save it as a draft.COMMENT
LOWscripts/generate_sdk.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/worktree-assign-port.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/setup-worktree.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/rolling_update.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/release_sdks.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/lib/setup_common.sh401 rm -rf "$tmp_root"COMMENT
LOWapi/alembic.ini1# A generic, single database configuration.COMMENT
LOWapi/alembic.ini21# The default rendered in new alembic.ini files is "os", which uses os.pathsepCOMMENT
LOWapi/alembic.ini41# a source .py file to be detected as revisions in theCOMMENT
LOWapi/alembic.ini61# Use os.pathsep. Default configuration used for new projects.COMMENT
LOWapi/alembic.ini81# detail and examplesCOMMENT
LOWapi/constants.py21# URLs for deploymentCOMMENT
LOW…ns/00b0201ad918_backfill_org_model_configuration_v2.py21# Organizations created before MODEL_CONFIGURATION_V2 only have per-user legacyCOMMENT
LOWapi/mcp_server/ts_validator/src/parse.ts1// TypeScript → workflow JSON.COMMENT
LOWapi/services/auth/stack_auth.py121 # ------------------------------------------------------------------COMMENT
LOWapi/services/auth/stack_auth.py141 # "Content-Type": "application/json",COMMENT
LOWapi/services/auth/stack_auth.py161 # raise ValueError("Access token required to update user")COMMENT
LOWapi/services/telephony/ari_manager.py681 f"(ext_channel_id={ext_channel_id})"COMMENT
LOWapi/services/pipecat/realtime/gemini_live.py61 self._handled_initial_context: bool = FalseCOMMENT
LOWapi/services/pipecat/realtime/gemini_live.py261 else:COMMENT
LOWapi/services/workflow/workflow_graph.py261COMMENT
LOWapi/services/workflow/mcp_tool_session.py121 raiseCOMMENT
LOW.vscode/launch.json1// Debug configurations for Dograh contributors.COMMENT
Fake / Example Data27 hits · 29 pts
SeverityFileLineSnippetContext
LOWui/src/app/superadmin/page.tsx149 placeholder="user@example.com"CODE
LOWdocs/api-reference/openapi.json1{"openapi":"3.1.0","info":{"title":"Dograh API","description":"API for the Dograh app","version":"1.0.0"},"servers":[{"uCODE
LOWapi/tests/conftest.py134 engine._call_context_vars = {"customer_name": "John Doe"}CODE
LOWapi/tests/test_user_email_case_insensitive.py13 assert user.email == "user@example.com"CODE
LOWapi/tests/test_user_email_case_insensitive.py19 assert fetched.email == "user@example.com"CODE
LOWapi/tests/test_pipecat_engine_variable_extraction.py164 return_value={"user_name": "John Doe"},CODE
LOWapi/tests/test_custom_tools.py1186 arguments={"customer_name": "John Doe", "date": "2024-01-15"},CODE
LOWapi/tests/test_custom_tools.py1231 assert received_arguments == {"customer_name": "John Doe", "date": "2024-01-15"}CODE
LOWapi/tests/test_node_specs.py358 "placeholder",CODE
LOWapi/tests/test_workflow_versioning.py70TEMPLATE_VARS_V2 = {"company_name": "Acme Inc"}CODE
LOWapi/tests/test_auth_depends.py148 email="user@example.com",CODE
LOWapi/tests/test_auth_depends.py187 "email": "user@example.com",CODE
LOWapi/tests/test_auth_routes.py25 "email": "user@example.com",CODE
LOWapi/tests/test_auth_routes.py33 "email": "user@example.com",CODE
LOWapi/tests/test_auth_routes.py51 "email": "user@example.com",CODE
LOWapi/tests/test_auth_routes.py66 email="user@example.com",CODE
LOWapi/tests/test_auth_routes.py77 "email": "user@example.com",CODE
LOWapi/db/user_client.py198 log in as "user@example.com". Compare on lower(email) so lookups areSTRING
LOWapi/services/workflow/dto.py234 "placeholder": "Greet the caller warmly and ask how you can help today.",CODE
LOWapi/services/workflow/dto.py255 "placeholder": "Hi {{first_name}}, this is Sarah from Acme.",CODE
LOWapi/services/workflow/dto.py308 "placeholder": "https://api.example.com/customer-lookup",CODE
LOWapi/services/workflow/dto.py408 "placeholder": "Ask the caller about their budget and timeline.",CODE
LOWapi/services/workflow/dto.py477 "placeholder": "Thank the caller and confirm next steps before ending the call.",CODE
LOWapi/services/workflow/dto.py563 "placeholder": (CODE
LOWapi/services/workflow/dto.py704 "placeholder": "https://api.example.com/webhook",CODE
LOWapi/services/workflow/node_specs/model_spec.py69 "placeholder": placeholder,CODE
LOWapi/services/workflow/node_specs/model_spec.py200 placeholder=meta.get("placeholder"),CODE
Cross-Language Confusion5 hits · 25 pts
SeverityFileLineSnippetContext
HIGHsdk/codegen/client_codegen.py42 # optional string often shown as anyOf:[{type:string}, {type:null}]COMMENT
HIGHapi/tests/telephony/cloudonix/test_routes.py167 request = _json_request(b'{"domain": "acme.cloudonix.io", "session": null}')CODE
HIGHapi/db/campaign_client.py446 "SET logs = (logs::jsonb || CAST(:entry AS jsonb))::json, "CODE
HIGHapi/routes/workflow.py951 """Move a workflow into a folder, or to "Uncategorized" (folder_id=null).STRING
HIGHapi/mcp_server/instructions.py79Data-position values must be plain literals (strings, numbers, booleans, null, arrays/objects of same). A single `new WoCODE
Magic Placeholder Names4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHui/src/components/http/create-credential-dialog.tsx46 { key: "api_key", label: "API Key", placeholder: "your-api-key", isSecret: true },CODE
HIGHui/src/components/flow/nodes/GenericNode.tsx333 -H "X-API-Key: YOUR_API_KEY" \\CODE
HIGHapi/services/gender/README.md95 gender_api_key="your-api-key", # Default: from GENDER_API_KEY envCODE
HIGHapi/services/gender/README.md166export GENDERAPI_API_KEY=your-api-key-hereCODE
AI Structural Patterns12 hits · 12 pts
SeverityFileLineSnippetContext
LOWevals/stt/providers/speechmatics_provider.py44CODE
LOWevals/stt/providers/deepgram_flux_provider.py53CODE
LOWevals/stt/providers/deepgram_provider.py48CODE
LOWapi/utils/template_renderer.py224CODE
LOWapi/db/workflow_run_client.py24CODE
LOWapi/db/workflow_run_client.py347CODE
LOWapi/services/mps_service_key_client.py731CODE
LOWapi/services/telephony/transfer_event_protocol.py57CODE
LOWapi/services/pipecat/service_factory.py852CODE
LOWapi/services/workflow/pipecat_engine.py60CODE
LOWapi/services/workflow/tools/knowledge_base.py20CODE
LOWapi/services/workflow/node_specs/model_spec.py43CODE
Modern AI Meta-Vocabulary2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMdocs/api-reference/openapi.json1{"openapi":"3.1.0","info":{"title":"Dograh API","description":"API for the Dograh app","version":"1.0.0"},"servers":[{"uCODE
MEDIUMsdk/python/src/dograh_sdk/_validation.py120 # Unknown field names — the most common LLM hallucination.COMMENT
Example Usage Blocks3 hits · 4 pts
SeverityFileLineSnippetContext
LOWscripts/setup_requirements.sh5# Usage:COMMENT
LOWscripts/rolling_update.sh4# Usage:COMMENT
LOWscripts/release_sdks.sh6# Usage:COMMENT
AI Slop Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUM…/tests/integrations/test_run_pipeline_text_greeting.py90# pytest worker alive indefinitely (the harness has no pytest-timeout plugin).COMMENT
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMapi/tests/test_json_parser.py144Let me know if you need anything else!"""CODE