AI Slop Code RIsk Monitor

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.

19.2 Elevated pattern signal View on GitHub

Maintenance and Governance Review

This report summarizes scanner evidence for dograh-hq/dograh, a Python project with 5,842 GitHub stars. SynthScan examined 354,486 lines of code across 1566 source files, recording 5253 pattern matches distributed across 23 syntactic categories. The legacy adjusted pattern signal is 19.2 (Elevated 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.

19.2
Adjusted Signal
19.2
Raw Pattern Score
100%
Time Factor
2026-10-08
Last Push
5.8K
Stars
Python
Language
354.5K
Lines of Code
1.6K
Files
5.3K
Pattern Hits
2026-10-12
Scan Date
0.06
HC Hit Rate

Risk Review · v3

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

Cognitive Ownership Risk 43.2/100 · MEDIUM

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

Hallucinated Dependency & Supply Chain Risk 6.4/100 · LOW

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

Agent Over-Engineering Ratio 55.6/100 · HIGH

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

PR Review Velocity Impact 60.9/100 · HIGH

Which changes need focused human review? 5253 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 3HIGH 98MEDIUM 447LOW 4705

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 5253 distinct pattern matches across 23 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.

Hyper-Verbose Identifiers3408 hits · 3385 pts
SeverityFileLineSnippetContext
LOWui/public/embed/dograh-widget.js993 function handlePeerConnectionStateChange() {CODE
LOWui/public/embed/dograh-widget.js1971 function notifyNewAssistantMessages() {CODE
LOWui/public/embed/dograh-widget.js2392 function updateChatEndConfirmationState() {CODE
LOWui/src/types/workflow-configurations.ts159export function resolveWorkflowConfigurations(CODE
LOWui/src/context/TelephonyConfigWarningsContext.tsx26export function TelephonyConfigWarningsProvider({ children }: { children: ReactNode }) {CODE
LOWui/src/context/TelephonyConfigWarningsContext.tsx72export function useTelephonyConfigWarnings() {CODE
LOW…/app/model-configurations/[configurationUuid]/page.tsx3export default async function EditModelConfigurationPage({ params }: { params: Promise<{ configurationUuid: string }> })CODE
LOWui/src/app/model-configurations/new/page.tsx3export default async function NewModelConfigurationPage({ searchParams }: { searchParams: Promise<{ duplicate?: string |CODE
LOWui/src/app/tools/config.tsx37export function createContextDestinationRouteRow(CODE
LOWui/src/app/tools/config.tsx47export function createContextDestinationRuleRow(CODE
LOWui/src/app/tools/config.tsx70export function ruleRowsToContextMappingRules(CODE
LOWui/src/app/tools/config.tsx266export function createTransferCallDefinition(config: TransferCallConfig): TransferCallToolDefinition {CODE
LOWui/src/app/tools/config.tsx279export function createTransferAgentDefinition(CODE
LOWui/src/app/tools/config.tsx300export function createCalculatorDefinition(): CalculatorToolDefinition {CODE
LOW…/tools/[toolUuid]/components/http-tool-test/helpers.ts78export function buildHttpToolTestSnapshot(fields: HttpToolTestSnapshotFields): string {CODE
LOWui/src/app/telephony-configurations/page.tsx50export default function TelephonyConfigurationsPage() {CODE
LOWui/src/app/telephony-configurations/[configId]/page.tsx76export default function TelephonyConfigurationDetailPage() {CODE
LOW⚡…kflowId]/settings/components/CallDispositionEditor.tsx45export function createCallDispositionRows(CODE
LOW⚡…kflowId]/settings/components/CallDispositionEditor.tsx54export function normalizeCallDispositions(CODE
LOW⚡…kflowId]/settings/components/CallDispositionEditor.tsx63export function validateCallDispositionRows(CODE
LOW…kflowId]/settings/components/CallDispositionEditor.tsx242function CallDispositionRowsEditor({CODE
LOW…[workflowId]/components/EditVersionMetadataPopover.tsx21export function EditVersionMetadataPopover({ workflowId, version, onUpdated }: EditVersionMetadataPopoverProps) {CODE
LOW…low/[workflowId]/components/AnswerSupervisorFields.tsx16export function readAnswerSupervisorSettings(config: AnswerSupervisorSettings): AnswerSupervisorSettings {CODE
LOW…low/[workflowId]/components/AnswerSupervisorFields.tsx25export function isVoicemailMessageMissing(config: AnswerSupervisorSettings): boolean {CODE
LOWui/src/app/api/config/version/route.ts15function getHealthcheckFailureMessage(error: unknown, backendUrl: string) {CODE
LOW…src/app/provider-connections/[connectionUuid]/page.tsx3export default async function EditProviderConnectionPage({ params }: { params: Promise<{ connectionUuid: string }> }) {CODE
LOWui/src/app/provider-connections/new/page.tsx3export default function NewProviderConnectionPage() {CODE
LOWui/src/components/OrganizationPreferencesSection.tsx110export function OrganizationPreferencesSection() {CODE
LOWui/src/components/OrganizationPreferencesSection.tsx212 async function handleDispositionMappingSave(CODE
LOWui/src/components/layout/SidebarTeamSwitcher.tsx37function SidebarTeamSwitcherContent({ user }: { user: CurrentUser }) {CODE
LOWui/src/components/http/url-input.tsx24function extractUrlSegmentParameters(segment: string): string[] {CODE
LOWui/src/components/http/url-input.tsx29export function extractUrlHostnameParameters(url: string): string[] {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.ts109export function conversationItemsFromLiveFeedback(messages: RealtimeFeedbackMessage[]) {CODE
LOW…workflow/conversation/adapters/fromRealtimeFeedback.ts136export function conversationItemsFromRealtimeFeedbackEvents(CODE
LOW…ts/workflow/conversation/adapters/fromTextChatTurns.ts32function conversationItemsFromTextChatEvents(CODE
LOW…ts/workflow/conversation/adapters/fromTextChatTurns.ts147export function conversationItemsFromTextChatTurns(turns: TextChatTurnLike[]) {CODE
LOW…nents/model-connections/ModelConfigurationsManager.tsx31export default function ModelConfigurationsManager({ docsUrl }: { docsUrl?: string }) {CODE
LOW…nents/model-connections/WorkflowModelConfiguration.tsx13export function WorkflowModelConfiguration({ workflowConfigurations, workflowName, onSave }: {CODE
LOW…nents/model-connections/ProviderConnectionsManager.tsx22export default function ProviderConnectionsManager({ docsUrl }: { docsUrl?: string }) {CODE
LOWui/src/components/flow/nodes/GenericNode.tsx107function resolveIntegrationEnabled(CODE
LOWui/src/components/flow/nodes/GenericNode.tsx119function resolveIntegrationSummary(CODE
LOWui/src/lib/filterAttributes.ts167export function withDispositionCodeOptions(CODE
LOWui/src/lib/metaPixel.ts36export function trackMetaCompleteRegistration(params?: MetaEventParams): void {CODE
LOWui/src/lib/metaPixel.ts44export function trackMetaInitiateCheckout(params?: MetaEventParams): void {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.py123async def handle_mps_unavailable_error(CODE
LOWapi/app.py166def _add_public_embed_cors_middleware() -> None:CODE
LOWapi/tasks/webhook_delivery.py56def _normalize_webhook_field_name(key: Any) -> str:CODE
LOWapi/tasks/webhook_delivery.py214async def _handle_transient_failure(CODE
LOWapi/tasks/workflow_completion.py13async def process_workflow_completion(CODE
LOWapi/tasks/text_chat_inactivity.py28async def sweep_inactive_text_chat_sessions(_ctx) -> None:CODE
LOWapi/tasks/text_chat_inactivity.py89async def _enqueue_inactive_text_chat_completion(CODE
LOWapi/tasks/text_chat_inactivity.py107async def complete_inactive_text_chat_session(CODE
LOWapi/tasks/text_chat_inactivity.py146def _text_chat_inactivity_timeout_seconds(CODE
LOWapi/tasks/text_chat_inactivity.py172def _text_chat_inactivity_deadline(CODE
LOWapi/tasks/run_integrations.py133async def _update_usage_info_with_qa_tokens(CODE
LOWapi/tasks/run_integrations.py174async def run_integrations_post_workflow_run(_ctx, workflow_run_id: int):CODE
3348 more matches not shown…
Decorative Section Separators389 hits · 1427 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.tsx27// ─── Static per-spec UI maps ──────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx72// ─── Helpers ──────────────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx179// ─── Canvas preview dispatch ──────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx473// ─── GenericNode ──────────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx500 // ── Form state ─────────────────────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx521 // ── Trigger auto-UUID + canvas copy state ──────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx544 // ── Stale tool/document cleanup (was duplicated in Start/Agent) ─────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx572 // ── Dirty / save / open handlers ────────────────────────────────────COMMENT
MEDIUMui/src/components/flow/nodes/GenericNode.tsx608 // ── 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.yaml126# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml130# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml176# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml178# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml264# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml266# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml322# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml329# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml355# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml361# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml387# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml389# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml443# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml445# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml508# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml510# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml528# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml553# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml603# -----------------------------------------------------------------------------COMMENT
MEDIUMdeploy/helm/dograh/values.yaml612# -----------------------------------------------------------------------------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
329 more matches not shown…
Excessive Try-Catch Wrapping506 hits · 511 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
LOWscripts/fix_broken_langfuse_trace_urls.py72 except Exception:CODE
LOWapi/constants.py171 except Exception:CODE
LOWapi/tasks/webhook_delivery.py349 except Exception as e:CODE
LOWapi/tasks/webhook_delivery.py377 except Exception as e:CODE
LOWapi/tasks/workflow_completion.py35 except Exception as e:CODE
LOWapi/tasks/workflow_completion.py41 except Exception as e:CODE
LOWapi/tasks/workflow_completion.py55 except Exception as e:CODE
LOWapi/tasks/text_chat_inactivity.py68 except Exception as e: # noqa: BLE001 - retry on the next sweepCODE
LOWapi/tasks/run_integrations.py126 except Exception as e:CODE
LOWapi/tasks/run_integrations.py170 except Exception as e:CODE
LOWapi/tasks/run_integrations.py346 except Exception as e:CODE
LOWapi/tasks/run_integrations.py359 except Exception as e:CODE
LOWapi/tasks/text_chat_completion.py16 except Exception:CODE
LOWapi/tasks/campaign_tasks.py72 except Exception as e:CODE
LOWapi/tasks/campaign_tasks.py131 except Exception as e:CODE
LOWapi/tasks/knowledge_base_processing.py283 except Exception as e:CODE
LOWapi/tasks/knowledge_base_processing.py297 except Exception as e:CODE
LOWapi/tests/test_loop_exception_routing.py40 except Exception as exc: # noqa: BLE001 - the exception is the fixtureCODE
MEDIUMapi/tests/test_failure_classification.py486def reporting_layer():CODE
LOW⚡api/tests/test_failure_classification.py489 except Exception as e:CODE
LOW…/tests/integrations/test_run_pipeline_text_greeting.py320 except Exception:CODE
LOWapi/tests/support/mcp_mock_server.py86 except Exception:CODE
LOWapi/utils/telephony_helper.py154 except Exception:CODE
LOWapi/utils/telephony_helper.py157 except Exception: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.py196 except Exception as e:CODE
LOWapi/utils/template_renderer.py160 except Exception:CODE
LOWapi/utils/template_renderer.py172 except Exception:CODE
LOWapi/db/campaign_client.py446 except Exception as e:CODE
LOWapi/db/campaign_client.py573 except Exception as e:CODE
LOWapi/db/campaign_client.py764 except Exception as e:CODE
LOWapi/db/campaign_client.py868 except Exception as e:CODE
LOWapi/db/campaign_client.py1042 except Exception:CODE
LOWapi/db/campaign_client.py1074 except Exception:CODE
LOWapi/db/campaign_client.py1099 except Exception:CODE
LOWapi/db/campaign_client.py1111 except Exception as e:CODE
LOWapi/db/campaign_client.py1132 except Exception as e:CODE
LOWapi/db/campaign_client.py1162 except Exception:CODE
LOWapi/db/campaign_client.py1300 except Exception as e:CODE
LOWapi/db/campaign_client.py1430 except Exception as e:CODE
LOWapi/db/organization_usage_client.py358 except Exception:CODE
LOWapi/db/workflow_run_text_session_client.py58 except Exception as e:CODE
LOWapi/db/workflow_run_text_session_client.py208 except Exception as e:CODE
LOWapi/db/workflow_run_text_session_client.py281 except Exception: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
446 more matches not shown…
Unused Imports373 hits · 352 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/paygent.py8CODE
LOWsdk/python/src/dograh_sdk/typed/paygent.py10CODE
LOWsdk/python/src/dograh_sdk/typed/paygent.py11CODE
LOWsdk/python/src/dograh_sdk/typed/paygent.py11CODE
LOWsdk/python/src/dograh_sdk/typed/paygent.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/__init__.py16CODE
LOWsdk/python/src/dograh_sdk/typed/__init__.py17CODE
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
313 more matches not shown…
Empty Error Handlers51 hits · 255 pts
SeverityFileLineSnippetContext
HIGHevals/stt/providers/speechmatics_provider.py193except asyncio.TimeoutError:CODE
HIGHevals/stt/providers/speechmatics_provider.py199except asyncio.CancelledError:CODE
HIGHevals/stt/providers/deepgram_flux_provider.py192except asyncio.TimeoutError:CODE
HIGHevals/stt/providers/deepgram_provider.py187except asyncio.TimeoutError:CODE
HIGHapi/conftest.py48except ValueError:CODE
HIGHapi/logging_config.py91except ValueError:CODE
HIGHapi/tasks/webhook_delivery.py81except ValueError:CODE
HIGHapi/tests/test_pipeline_cancellation.py103except asyncio.TimeoutError:CODE
HIGHapi/tests/test_tts_endframe_with_audio_write_failure.py266except asyncio.TimeoutError:CODE
HIGHapi/tests/test_tts_endframe_with_audio_write_failure.py383except asyncio.TimeoutError:CODE
HIGH…/tests/integrations/test_run_pipeline_text_greeting.py320except Exception:CODE
HIGHapi/utils/url_security.py44except ValueError:CODE
HIGHapi/errors/failure.py490except Exception:CODE
HIGHapi/errors/failure.py525except Exception:CODE
HIGHapi/errors/failure.py553except Exception:CODE
HIGHapi/errors/failure.py580except Exception:CODE
HIGHapi/routes/telephony.py804except RuntimeError:CODE
HIGHapi/routes/agent_stream.py133except RuntimeError:CODE
HIGHapi/routes/agent_stream.py141except RuntimeError:CODE
HIGHapi/routes/organization.py1536except Exception:CODE
HIGHapi/routes/organization.py1551except Exception:CODE
HIGHapi/routes/organization.py1592except Exception:CODE
HIGHapi/routes/campaign.py58except Exception:CODE
HIGHapi/routes/campaign.py79except Exception:CODE
HIGHapi/routes/campaign.py557except Exception:CODE
HIGHapi/routes/webrtc_signaling.py174except (ValueError, IndexError):CODE
HIGHapi/services/workflow_run_artifacts.py181except OSError:CODE
HIGHapi/services/worker_sync/manager.py60except asyncio.CancelledError:CODE
HIGHapi/services/gender/gender_service.py185except Exception as e:CODE
HIGHapi/services/filesystem/local.py88except Exception:CODE
HIGHapi/services/observability/loop_lag.py62except asyncio.CancelledError:CODE
HIGHapi/services/integrations/noveum/completion.py72except OSError:CODE
HIGHapi/services/telephony/failure_reporting.py84except Exception:CODE
HIGHapi/services/telephony/ari_manager.py1793except asyncio.CancelledError:CODE
HIGHapi/services/telephony/ari_manager.py283except asyncio.CancelledError:CODE
HIGHapi/services/telephony/ari_manager.py1053except Exception:CODE
HIGHapi/services/telephony/call_transfer_manager.py279except Exception:CODE
HIGHapi/services/telephony/providers/telnyx/strategies.py185except Exception:CODE
HIGHapi/services/telephony/providers/exotel/provider.py131except Exception:CODE
HIGHapi/services/pipecat/fallback_llm.py502except TimeoutError:CODE
HIGHapi/services/pipecat/turn_context.py44except RuntimeError:CODE
HIGHapi/services/pipecat/turn_context.py59except RuntimeError:CODE
HIGHapi/services/pipecat/event_handlers.py464except Exception:CODE
HIGHapi/services/pipecat/minimax_tts.py66except (ValueError, TypeError, KeyError):CODE
HIGHapi/services/pipecat/recording_audio_cache.py258except OSError:CODE
HIGHapi/services/pipecat/audio_file_cache.py153except OSError:CODE
HIGHapi/services/pipecat/audio_playback.py211except asyncio.TimeoutError:CODE
HIGHapi/services/workflow/mcp_tool_session.py201except Exception:CODE
HIGHapi/services/workflow/answer_classification_service.py137except (ValueError, TypeError):CODE
HIGHapi/services/workflow/qa/tracing.py29except Exception:CODE
HIGHapi/services/reports/daily_report.py127except (ValueError, TypeError):CODE
Deep Nesting138 hits · 128 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.py133CODE
LOWapi/tasks/run_integrations.py174CODE
LOWapi/tests/test_workflow_text_chat.py2581CODE
LOWapi/tests/test_workflow_text_chat.py2721CODE
LOWapi/tests/test_user_muting_during_bot_speech.py82CODE
LOWapi/tests/test_realtime_tool_deferral.py77CODE
LOWapi/tests/test_openai_live_wrapper.py266CODE
LOWapi/tests/test_openai_live_wrapper.py281CODE
LOWapi/tests/test_tts_cache.py296CODE
LOWapi/tests/test_tts_cache.py301CODE
LOWapi/tests/test_fallback_llm_processor.py74CODE
LOWapi/tests/test_campaign_stale_dispatch_recovery.py101CODE
LOWapi/tests/test_dograh_sdk_typed.py58CODE
LOWapi/tests/test_pipecat_engine_end_call.py1257CODE
LOWapi/tests/test_realtime_conversation_contract.py43CODE
LOWapi/tests/test_tts_endframe_with_audio_write_failure.py167CODE
LOWapi/tests/test_tts_endframe_with_audio_write_failure.py284CODE
LOWapi/tests/test_db_layer_boundary.py40CODE
LOWapi/tests/integrations/test_call_events.py27CODE
LOW…/tests/integrations/test_run_pipeline_text_greeting.py151CODE
LOWapi/utils/credential_auth.py15CODE
LOWapi/utils/credential_auth.py57CODE
LOWapi/utils/common.py134CODE
LOWapi/utils/telephony_address.py73CODE
LOWapi/db/filters.py61CODE
LOWapi/alembic/env.py64CODE
LOW…/b41f7c9d2e05_migrate_gemini_2_5_flash_to_3_5_flash.py76CODE
LOW…bic/versions/b3c1d9e4f7a2_backfill_model_catalog_v3.py313CODE
LOW…f3a1c47b9e02_migrate_pre_call_fetch_enabled_to_mode.py94CODE
LOWapi/errors/failure.py532CODE
LOWapi/routes/superuser.py66CODE
LOWapi/routes/telephony.py634CODE
LOWapi/routes/telephony.py1202CODE
LOWapi/routes/public_download.py24CODE
LOWapi/routes/credentials.py51CODE
LOWapi/routes/organization.py491CODE
LOWapi/routes/organization.py1517CODE
LOWapi/routes/campaign.py463CODE
LOWapi/routes/webrtc_signaling.py416CODE
LOWapi/routes/webrtc_signaling.py515CODE
LOWapi/routes/workflow.py1165CODE
LOWapi/routes/workflow_text_chat.py425CODE
LOWapi/routes/workflow_text_chat.py441CODE
LOWapi/routes/public_embed.py229CODE
LOWapi/routes/public_embed.py258CODE
LOWapi/mcp_server/tools/docs_search.py405CODE
LOWapi/mcp_server/tools/docs_search.py474CODE
LOWapi/mcp_server/tools/docs_search.py496CODE
LOWapi/services/quota_service.py626CODE
LOWapi/services/configuration/registry.py354CODE
LOWapi/services/configuration/registry.py357CODE
78 more matches not shown…
Self-Referential Comments39 hits · 114 pts
SeverityFileLineSnippetContext
MEDIUMscripts/rolling_update.sh301 # 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.py140 # Create the pipelineCOMMENT
MEDIUMapi/tests/test_mcp_tool_route.py273 # Create a user and an organization, then link them so the route'sCOMMENT
MEDIUMapi/tests/test_custom_tools.py1683 # Create a mock engineCOMMENT
MEDIUMapi/tests/test_custom_tools.py1757 # Create a mock engine with a mock LLMCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py225 # Create the pipeline with transport input -> user aggregator -> LLM -> TTS -> transport output -> assistant aggregaCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py611 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py700 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py891 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py901 # Create a custom extraction mock that signals when calledCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py974 # Create a simple text responseCOMMENT
MEDIUMapi/tests/test_pipecat_engine_end_call.py980 # Create a workflow where start node has NO extractionCOMMENT
MEDIUMapi/tests/test_pipecat_engine_context_update.py108 # Create the pipelineCOMMENT
MEDIUM⚡api/tests/test_workflow_versioning.py758 # Create a draftCOMMENT
MEDIUM⚡api/tests/test_workflow_versioning.py888 # Create a draft (unpublished)COMMENT
MEDIUM⚡api/tests/test_workflow_versioning.py897 # Create a run (simulating campaign dispatch)COMMENT
MEDIUMapi/tests/test_workflow_versioning.py920 # Create a test runCOMMENT
MEDIUMapi/tests/test_pipecat_engine_tool_calls.py98 # 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.py143 # 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.py149 # 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.py932 # Create a minimal user object for compatibility with signaling managerCOMMENT
MEDIUMapi/routes/workflow.py596 # Create the workflow in our databaseCOMMENT
MEDIUMapi/routes/workflow.py1657 # 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.py1006# 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/workflow/workflow_graph.py252 # 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.py164 # Create a Langfuse trace for this summary generationCOMMENT
MEDIUMapi/services/campaign/campaign_orchestrator.py527 # Create a shutdown event for clean coordinationCOMMENT
Cross-File Repetition19 hits · 95 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/paygent.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/noveum.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
Docstring Block Structure16 hits · 80 pts
SeverityFileLineSnippetContext
HIGHapi/utils/template_renderer.py22 Get a nested value from a dictionary using dot notation. Args: obj: The object to traverse (dict or anSTRING
HIGHapi/db/workflow_client.py751 Update an existing workflow in the database. Name changes are applied directly to the workflow. STRING
HIGHapi/db/workflow_client.py860 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.py96Validate the S3 key format and extract workflow_run_id if present. Args: key: S3 object key allow_sSTRING
HIGHapi/routes/s3_signed_url.py131Authorize access to workflow run and retrieve it. Args: run_id: Workflow run ID (can be None for special paSTRING
HIGHapi/routes/workflow.py558 Create a new workflow from a natural language template request. This endpoint: 1. Uses mps_service_key_cliSTRING
HIGHapi/routes/workflow.py1170 Update an existing workflow. Args: workflow_id: The ID of the workflow to update request: The STRING
HIGHapi/routes/turn_credentials.py59Generate time-limited TURN credentials using HMAC-SHA1. Args: user_id: Unique identifier for the user (for STRING
HIGHapi/services/mps_service_key_client.py307 Check the usage and quota of a service key. Args: service_key: The service key to check usSTRING
HIGHapi/services/mps_service_key_client.py719 Transcribe an audio file via MPS STT API. Args: audio_data: Raw audio bytes fiSTRING
HIGHapi/services/mps_service_key_client.py830 Get available voices for a TTS provider from MPS. Args: provider: TTS provider name (eleveSTRING
HIGHapi/services/mps_service_key_client.py963 Call the MPS workflow creation API using secret key authentication. For OSS mode: Pass created_by in hSTRING
HIGHapi/services/telephony/base.py528 Initiate a call transfer to a destination number. Args: destination: The destination phoneSTRING
HIGHapi/services/telephony/providers/twilio/provider.py621 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
Verbosity Indicators37 hits · 69 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.tsx447 // Step 1: Finalize the last bot message (user started speaking)COMMENT
LOW⚡…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx456 // Step 2: Remove any previous interim transcriptionCOMMENT
LOW⚡…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx461 // Step 3: Add new transcription (interim or final)COMMENT
LOWui/src/app/files/DocumentUpload.tsx165 // 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
LOW⚡api/tasks/run_integrations.py219 # Step 2: Get workflow definition from the run's pinned versionCOMMENT
LOW⚡api/tasks/run_integrations.py227 # Step 3: Extract integration nodesCOMMENT
LOW⚡api/tasks/run_integrations.py233 # Step 4: Generate a public access token for any run that needs post-call work.COMMENT
LOW⚡api/tasks/run_integrations.py304 # Step 7: Execute webhooksCOMMENT
LOW⚡api/tasks/run_integrations.py311 # Step 8: Build render context (includes annotations from QA and integrations)COMMENT
LOW⚡api/tasks/run_integrations.py314 # Step 9: Execute each webhook nodeCOMMENT
LOWapi/tasks/run_integrations.py188 # Step 1: Get workflow run with full contextCOMMENT
LOWapi/tasks/run_integrations.py246 # Step 5: Run QA analysis before webhooksCOMMENT
LOWapi/tasks/run_integrations.py284 # Step 6: Run registered third-party integrations after uploads are completeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py221 # Step 0: Short greeting on Start nodeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py223 # Step 1: Longer response (TTS 400ms > idle timeout 200ms)COMMENT
LOW⚡api/tests/test_user_idle_handler.py228 # Step 2: Transition from Start → Agent nodeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py234 # Step 3: Transition from Agent → End node (ends call)COMMENT
LOW⚡api/tests/test_pipecat_engine_end_call.py787 # Step 0: Text responseCOMMENT
LOW⚡api/tests/test_pipecat_engine_end_call.py790 # Step 1: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py449 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py530 # Step 0: call end_call toolCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py259 # Step 0: Start node - should have start promptCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py262 # Step 1: Agent node - should have agent promptCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py265 # 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
LOW⚡api/services/gender/gender_service.py167 # Step 3: Fallback to GenderAPICOMMENT
LOW⚡api/services/gender/gender_service.py189 # Step 4: Return best guess from model or unknownCOMMENT
Structural Annotation Overuse37 hits · 69 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.tsx447 // Step 1: Finalize the last bot message (user started speaking)COMMENT
LOW⚡…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx456 // Step 2: Remove any previous interim transcriptionCOMMENT
LOW⚡…low/[workflowId]/run/[runId]/hooks/useWebSocketRTC.tsx461 // Step 3: Add new transcription (interim or final)COMMENT
LOWui/src/app/files/DocumentUpload.tsx165 // 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
LOW⚡api/tasks/run_integrations.py219 # Step 2: Get workflow definition from the run's pinned versionCOMMENT
LOW⚡api/tasks/run_integrations.py227 # Step 3: Extract integration nodesCOMMENT
LOW⚡api/tasks/run_integrations.py233 # Step 4: Generate a public access token for any run that needs post-call work.COMMENT
LOW⚡api/tasks/run_integrations.py304 # Step 7: Execute webhooksCOMMENT
LOW⚡api/tasks/run_integrations.py311 # Step 8: Build render context (includes annotations from QA and integrations)COMMENT
LOW⚡api/tasks/run_integrations.py314 # Step 9: Execute each webhook nodeCOMMENT
LOWapi/tasks/run_integrations.py188 # Step 1: Get workflow run with full contextCOMMENT
LOWapi/tasks/run_integrations.py246 # Step 5: Run QA analysis before webhooksCOMMENT
LOWapi/tasks/run_integrations.py284 # Step 6: Run registered third-party integrations after uploads are completeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py221 # Step 0: Short greeting on Start nodeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py223 # Step 1: Longer response (TTS 400ms > idle timeout 200ms)COMMENT
LOW⚡api/tests/test_user_idle_handler.py228 # Step 2: Transition from Start → Agent nodeCOMMENT
LOW⚡api/tests/test_user_idle_handler.py234 # Step 3: Transition from Agent → End node (ends call)COMMENT
LOW⚡api/tests/test_pipecat_engine_end_call.py787 # Step 0: Text responseCOMMENT
LOW⚡api/tests/test_pipecat_engine_end_call.py790 # Step 1: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py449 # Step 0: call end_call toolCOMMENT
LOWapi/tests/test_pipecat_engine_end_call.py530 # Step 0: call end_call toolCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py259 # Step 0: Start node - should have start promptCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py262 # Step 1: Agent node - should have agent promptCOMMENT
LOW⚡api/tests/test_pipecat_engine_context_update.py265 # 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
LOW⚡api/services/gender/gender_service.py167 # Step 3: Fallback to GenderAPICOMMENT
LOW⚡api/services/gender/gender_service.py189 # Step 4: Return best guess from model or unknownCOMMENT
Over-Commented Block73 hits · 66 pts
SeverityFileLineSnippetContext
LOWdocker-compose.yaml1# Dograh deployment stack — driven by the helper scripts, not by a bareCOMMENT
LOWdocker-compose.yaml161COMMENT
LOWdocker-compose.yaml221 ENABLE_PROMETHEUS_METRICS: "${ENABLE_PROMETHEUS_METRICS:-false}"COMMENT
LOW…Id]/components/workflow-tester/EmbeddedVoiceTester.tsx61COMMENT
LOWui/src/config/event-banner.config.ts1// Event announcement bar — the only file to touch when an event changes.COMMENT
LOWui/src/config/event-banner.config.ts21// startsAt: "2026-10-20T00:00:00+05:30",COMMENT
LOWui/src/components/EventBanner.tsx1"use client";COMMENT
LOWui/src/components/EventBanner.tsx21// Why sticky rather than a bar that scrolls away: the app's chrome is a fixedCOMMENT
LOWui/src/components/EventBanner.tsx201// and the lockup costs ~236px, so one of them has to go and the event's dateCOMMENT
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
LOWui/src/lib/utils.ts181 targetWindow?.close();COMMENT
LOWdeploy/hostinger/docker-compose.yaml1# Dograh — Hostinger VPS Docker Manager deploymentCOMMENT
LOWdeploy/hostinger/docker-compose.yaml161 # Must match the MinIO root creds above (same env vars).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.yaml121 # Reject media WebSocket connections whose capability token is missing orCOMMENT
LOWdeploy/helm/dograh/values.yaml161 langfusePublicKey: ""COMMENT
LOWdeploy/helm/dograh/values.yaml181 port: 8000COMMENT
LOWdeploy/helm/dograh/values.yaml201 # covers a max-length call, initial delay, and 60s of shutdown headroom.COMMENT
LOWdeploy/helm/dograh/values.yaml281 # The entrypoint exec's the worker, so it runs as PID 1; grep its cmdline.COMMENT
LOWdeploy/helm/dograh/values.yaml521 requests:COMMENT
LOWdeploy/helm/dograh/values.yaml541# while you saturate per-pod connection limits. Replace this with a customCOMMENT
LOWdeploy/helm/dograh/values.yaml561 # Call-based autoscaling via KEDA (the preferred web signal — CPU is a poorCOMMENT
LOWdeploy/helm/dograh/values.yaml601 targetMemoryUtilizationPercentage: nullCOMMENT
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-sync-env.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/worktree-sync-env.sh21# hard-code a UI origin, so they have to follow this worktree's UI port. UnderCOMMENT
LOWscripts/setup-worktree.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/rolling_update.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/drain_web.sh1#!/bin/shCOMMENT
LOWscripts/release_sdks.sh1#!/usr/bin/env bashCOMMENT
LOWscripts/lib/setup_common.sh401 [[ "$rendered_secret" == "$TURN_SECRET" ]] || dograh_fail "TURN_SECRET in .env does not match turnserver.conf"COMMENT
LOWapi/logging_config.py121 serialize=SERIALIZE_LOG_OUTPUT, # Use JSON serialization for structured logsCOMMENT
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.py41# The server's own IPv4 address, as the operator supplied it to the setupCOMMENT
LOWapi/constants.py121COMMENT
LOWapi/app.py181COMMENT
LOW…/b41f7c9d2e05_migrate_gemini_2_5_flash_to_3_5_flash.py21# Google no longer grants new users access to the Gemini 2.5 Flash family, soCOMMENT
LOW…ns/00b0201ad918_backfill_org_model_configuration_v2.py21# Organizations created before MODEL_CONFIGURATION_V2 only have per-user legacyCOMMENT
LOW…ions/c4e21b7f80a9_retire_provisional_vad_turn_start.py21# `provisional_vad` gated the user turn start on a transcript, so the turn startCOMMENT
LOW…f3a1c47b9e02_migrate_pre_call_fetch_enabled_to_mode.py21# The Start node's `pre_call_fetch_enabled` boolean was replaced by theCOMMENT
LOWapi/routes/webrtc_signaling.py241 List of RTCIceServer configurations for WebRTC peer connection.COMMENT
LOWapi/mcp_server/ts_validator/src/parse.ts1// TypeScript → workflow JSON.COMMENT
LOWapi/services/configuration/options/google.py1# Vertex serves generative models from three shapes of endpoint, and the locationCOMMENT
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
13 more matches not shown…
Modern Structural Boilerplate60 hits · 60 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__.py19__all__ = [CODE
LOWapi/tests/integrations/_run_pipeline_helpers.py246__all__ = [CODE
LOWapi/schemas/telephony_config.py182__all__ = [CODE
LOWapi/db/user_client.py125 async def update_user_email(self, user_id: int, email: str) -> None:CODE
LOWapi/routes/organization.py425def _set_nested_field(value: dict, dotted_path: str, field_value) -> None:CODE
LOWapi/routes/tool.py50__all__ = [CODE
LOWapi/mcp_server/__init__.py3__all__ = ["mcp"]CODE
LOW⚡api/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__.py64__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/observability/call_events/recorder.py193 def set_turn(self, turn: int) -> None:CODE
LOWapi/services/integrations/__init__.py22__all__ = [CODE
LOW⚡api/services/integrations/paygent/collector.py571 def set_call_disposition(self, disposition: str | None) -> None:CODE
LOWapi/services/integrations/paygent/__init__.py32__all__ = ["PACKAGE"]CODE
LOWapi/services/integrations/tuner/collector.py71 def set_disconnection_reason(self, reason: str | None) -> None:CODE
LOWapi/services/integrations/tuner/__init__.py19__all__ = ["PACKAGE"]CODE
LOWapi/services/integrations/noveum/__init__.py19__all__ = ["PACKAGE"]CODE
LOWapi/services/telephony/outbound_readiness.py162__all__ = [CODE
LOWapi/services/telephony/providers/telnyx/serializers.py5__all__ = ["TelnyxFrameSerializer"]CODE
LOWapi/services/telephony/providers/telnyx/__init__.py292__all__ = [CODE
LOWapi/services/telephony/providers/ari/serializers.py5__all__ = ["AsteriskFrameSerializer"]CODE
LOWapi/services/telephony/providers/ari/__init__.py259__all__ = [CODE
LOW…vices/telephony/providers/ari/external_pbx/__init__.py9__all__ = [CODE
LOWapi/services/telephony/providers/exotel/serializers.py5__all__ = ["ExotelFrameSerializer"]CODE
LOWapi/services/telephony/providers/exotel/__init__.py79__all__ = [CODE
LOWapi/services/telephony/providers/vonage/serializers.py5__all__ = ["VonageFrameSerializer"]CODE
LOWapi/services/telephony/providers/vonage/__init__.py85__all__ = [CODE
LOWapi/services/telephony/providers/plivo/serializers.py5__all__ = ["PlivoFrameSerializer"]CODE
LOWapi/services/telephony/providers/plivo/__init__.py150__all__ = [CODE
LOW…/services/telephony/providers/cloudonix/serializers.py5__all__ = ["CloudonixFrameSerializer"]CODE
LOWapi/services/telephony/providers/cloudonix/__init__.py790__all__ = [CODE
LOWapi/services/telephony/providers/cloudonix/setup.py125__all__ = ["resolve_setup_checklist"]CODE
LOW…services/telephony/providers/cloudonix/provisioning.py126__all__ = [CODE
LOWapi/services/telephony/providers/vobiz/serializers.py5__all__ = ["VobizFrameSerializer"]CODE
LOWapi/services/telephony/providers/vobiz/__init__.py160__all__ = [CODE
LOWapi/services/telephony/providers/twilio/serializers.py10__all__ = ["TwilioFrameSerializer"]CODE
LOWapi/services/telephony/providers/twilio/__init__.py69__all__ = [CODE
LOW⚡api/services/pipecat/recording_router_processor.py80 def set_enabled(self, enabled: bool) -> None:CODE
LOWapi/services/pipecat/in_memory_buffers.py142 def set_current_turn(self, turn: int) -> None:CODE
LOWapi/services/pipecat/greeting.py55 async def _update_strategies(self, user: LLMUserAggregator, frame: Frame) -> None:CODE
LOWapi/services/pipecat/termination_funnel_processor.py105 def set_termination_handler(self, handler: TerminationHandler) -> None:CODE
LOWapi/services/call_concurrency/__init__.py17__all__ = [CODE
LOW⚡api/services/workflow/pipecat_engine.py1666 def set_context(self, context: LLMContext) -> None:CODE
LOW⚡api/services/workflow/pipecat_engine.py1682 def set_agent_factory(self, factory) -> None:CODE
LOW⚡api/services/workflow/pipecat_engine.py2042 def set_fetch_recording_audio(self, fetch_fn) -> None:CODE
LOW⚡api/services/workflow/pipecat_engine.py2046 def set_mute_pipeline(self, mute: bool) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py875 async def _setup_llm_context(self, node: Node) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py1200 def set_call_disposition(self, disposition: str) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py1990 def set_audio_config(self, audio_config) -> None:CODE
LOWapi/services/workflow/pipecat_engine.py1994 def set_transport_output(self, transport_output) -> None:CODE
LOWapi/services/workflow/text_chat_session_service.py698__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/reports/__init__.py9__all__ = [CODE
Redundant / Tautological Comments36 hits · 55 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.py154 # Set level to INFO to avoid debug logs from librariesCOMMENT
LOWapi/tasks/arq.py24# Check if we're using TLS (rediss://)COMMENT
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.py28 # Check if email is already takenCOMMENT
LOWapi/routes/workflow_embed.py82 # Check if an embed token already exists for this workflowCOMMENT
LOWapi/routes/webrtc_signaling.py250 # Check if TURN is configured. ENABLE_COTURN is the deployment's declaredCOMMENT
LOWapi/routes/webrtc_signaling.py893 # Check if session is expiredCOMMENT
LOWapi/routes/public_embed.py323 # Check if token is activeCOMMENT
LOWapi/routes/public_embed.py512 # Check if token is activeCOMMENT
LOWapi/routes/public_embed.py583 # Check if TURN is configured. Both conditions matter: ENABLE_COTURN is whatCOMMENT
LOW⚡api/services/auth/depends.py38 # Check if API key is provided (takes precedence)COMMENT
LOW⚡api/services/auth/depends.py44 # Check if we're using local (email/password) authCOMMENT
LOWapi/services/auth/depends.py116 # 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.py537 # Check if this is a transfer destination channel (app_args starts with "transfer")COMMENT
LOWapi/services/telephony/ari_manager.py602 # Check if this is a transfer destination that failedCOMMENT
LOWapi/services/telephony/ari_manager.py1209 # Check if this is a call transfer scenario external channel. Skip full teardown ifCOMMENT
LOWapi/services/telephony/call_transfer_manager.py215 # Check if this is a completion eventCOMMENT
LOWapi/services/telephony/providers/cloudonix/provider.py851 # Check if AccountSid is a Cloudonix domainCOMMENT
LOWapi/services/pipecat/pipeline_builder.py306 # Check if turn logging is enabledCOMMENT
LOW⚡api/services/call_concurrency/rate_limiter.py331 # Set expiry to match stale timeoutSTRING
LOWapi/services/workflow/pipecat_engine_custom_tools.py663 # Check if this is a WebRTC call - transfers are not supportedCOMMENT
LOWapi/services/campaign/campaign_orchestrator.py414 # Check if batch is stuck (initiated > 5 minutes ago but no completion)COMMENT
LOWapi/services/campaign/campaign_orchestrator.py428 # Check if there's work to be doneCOMMENT
LOWapi/services/campaign/campaign_orchestrator.py458 # Check if campaign should be marked completeCOMMENT
Cross-Language Confusion8 hits · 38 pts
SeverityFileLineSnippetContext
HIGHsdk/codegen/client_codegen.py42 # optional string often shown as anyOf:[{type:string}, {type:null}]COMMENT
HIGHscripts/fix_broken_langfuse_trace_urls.py23 source venv/bin/activate && set -a && source api/.env && set +a \STRING
HIGHapi/tests/test_call_event_sinks.py55 "detail": '{"stt_ttfb_ms": 12.3, "llm_ttfb_ms": null}',CODE
HIGHapi/tests/telephony/cloudonix/test_routes.py167 request = _json_request(b'{"domain": "acme.cloudonix.io", "session": null}')CODE
HIGHapi/db/campaign_client.py1030 "SET logs = (logs::jsonb || CAST(:entry AS jsonb))::json, "CODE
HIGHapi/routes/workflow.py1122 """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
HIGHapi/services/pipecat/tts_cache/redis.py16 return falseCODE
Hallucination Indicators3 hits · 30 pts
SeverityFileLineSnippetContext
CRITICALapi/tests/test_custom_tools.py2874 mock_client.return_value.__aenter__.return_value.request.assert_called_once_with(CODE
CRITICALapi/tests/test_custom_tools.py2907 mock_client.return_value.__aenter__.return_value.request.assert_called_once_with(CODE
CRITICALapi/tests/test_custom_tools.py3006 mock_client.return_value.__aenter__.return_value.request.assert_called_once_with(CODE
Fake / Example Data27 hits · 28 pts
SeverityFileLineSnippetContext
LOWui/src/app/superadmin/page.tsx145 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.py135 engine._call_context_vars = {"customer_name": "John Doe"}CODE
LOW⚡api/tests/test_user_email_case_insensitive.py13 assert user.email == "user@example.com"CODE
LOW⚡api/tests/test_user_email_case_insensitive.py19 assert fetched.email == "user@example.com"CODE
LOWapi/tests/test_pipecat_engine_variable_extraction.py171 return_value={"user_name": "John Doe"},CODE
LOWapi/tests/test_custom_tools.py1579 arguments={"customer_name": "John Doe", "date": "2024-01-15"},CODE
LOWapi/tests/test_custom_tools.py1624 assert received_arguments == {"customer_name": "John Doe", "date": "2024-01-15"}CODE
LOWapi/tests/test_node_specs.py454 "placeholder",CODE
LOW⚡api/tests/test_workflow_versioning.py75TEMPLATE_VARS_V2 = {"company_name": "Acme Inc"}CODE
LOWapi/tests/test_auth_depends.py316 email="user@example.com",CODE
LOWapi/tests/test_auth_depends.py355 "email": "user@example.com",CODE
LOW⚡api/tests/test_auth_routes.py25 "email": "user@example.com",CODE
LOW⚡api/tests/test_auth_routes.py33 "email": "user@example.com",CODE
LOW⚡api/tests/test_auth_routes.py51 "email": "user@example.com",CODE
LOW⚡api/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.py143 log in as "user@example.com". Compare on lower(email) so lookups areSTRING
LOWapi/services/workflow/dto.py243 "placeholder": "Greet the caller warmly and ask how you can help today.",CODE
LOWapi/services/workflow/dto.py264 "placeholder": "Hi {{first_name}}, this is Sarah from Acme.",CODE
LOWapi/services/workflow/dto.py328 "placeholder": "https://api.example.com/customer-lookup",CODE
LOWapi/services/workflow/dto.py457 "placeholder": "Ask the caller about their budget and timeline.",CODE
LOWapi/services/workflow/dto.py526 "placeholder": "Thank the caller and confirm next steps before ending the call.",CODE
LOWapi/services/workflow/dto.py612 "placeholder": (CODE
LOWapi/services/workflow/dto.py762 "placeholder": "https://api.example.com/webhook",CODE
LOWapi/services/workflow/node_specs/model_spec.py70 "placeholder": placeholder,CODE
LOWapi/services/workflow/node_specs/model_spec.py204 placeholder=meta.get("placeholder"),CODE
Magic Placeholder Names4 hits · 20 pts
SeverityFileLineSnippetContext
HIGHui/src/components/http/create-credential-dialog.tsx50 { key: "api_key", label: "API Key", placeholder: "your-api-key", isSecret: true },CODE
HIGHui/src/components/flow/nodes/GenericNode.tsx344 -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 Patterns20 hits · 18 pts
SeverityFileLineSnippetContext
LOWevals/stt/providers/speechmatics_provider.py44CODE
LOWevals/stt/providers/deepgram_flux_provider.py53CODE
LOWevals/stt/providers/deepgram_provider.py48CODE
LOWapi/tests/test_tts_cache.py89CODE
LOWapi/tests/test_answer_supervisor_late_speech.py89CODE
LOWapi/tests/test_public_embed_chat.py148CODE
LOWapi/db/telephony_phone_number_client.py357CODE
LOWapi/db/workflow_run_client.py37CODE
LOWapi/db/workflow_run_client.py393CODE
LOWapi/routes/organization_usage.py459CODE
LOWapi/services/mps_service_key_client.py890CODE
LOWapi/services/integrations/paygent/collector.py534CODE
LOWapi/services/telephony/transfer_event_protocol.py57CODE
LOWapi/services/pipecat/event_handlers.py76CODE
LOWapi/services/pipecat/agent_runtime_factory.py71CODE
LOWapi/services/pipecat/service_factory.py1125CODE
LOWapi/services/workflow/pipecat_engine.py132CODE
LOWapi/services/workflow/pipecat_engine.py1442CODE
LOWapi/services/workflow/tools/knowledge_base.py21CODE
LOWapi/services/workflow/node_specs/model_spec.py44CODE
Modern AI Meta-Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUMsdk/python/src/dograh_sdk/_validation.py120 # Unknown field names — the most common LLM hallucination.COMMENT
MEDIUMapi/tests/test_realtime_conversation_contract.py206 # Keep the engine's transition orchestration real without opening sockets.COMMENT
MEDIUMapi/db/campaign_client.py349 # Recognize retries created by the earlier event-driven path too.COMMENT
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUM…/tests/integrations/test_run_pipeline_text_greeting.py95# pytest worker alive indefinitely (the harness has no pytest-timeout plugin).COMMENT
MEDIUMapi/services/integrations/paygent/collector.py127 # Extremely robust extractionCOMMENT
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
Slop Phrases1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUMapi/tests/test_json_parser.py144Let me know if you need anything else!"""CODE