AI Slop Code Risk Monitor

chatwoot/chatwoot

SlopCodeMonitor badge for chatwoot/chatwoot Adjusted legacy signal; badge bands: 25 / 50 / 75 (different from dashboard bands).

Open-source live-chat, email support, omni-channel desk. An alternative to Intercom, Zendesk, Salesforce Service Cloud etc. 🔥💬

1.5 Low pattern signal View on GitHub

Open-Source Code Quality, Security and Technical Debt Review

This report summarizes scanner evidence for chatwoot/chatwoot, a Ruby project with 38,664 GitHub stars. SynthScan examined 1,419,279 lines of code across 8750 source files, recording 1528 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 1.5 (Low pattern signal); it is not an authorship estimate.

Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.

1.5
Adjusted Signal
1.5
Raw Pattern Score
100%
Time Factor
2026-10-31
Last Push
38.7K
Stars
Ruby
Language
1.4M
Lines of Code
8.8K
Files
1.5K
Pattern Hits
2026-10-31
Scan Date
0.01
HC Hit Rate

Risk Review · Payload v1

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

Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.

Cognitive Ownership Risk 4.9/100 · LOW

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

Hallucinated Dependency & Supply Chain Risk 2.1/100 · LOW

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

Agent Over-Engineering Ratio 2.7/100 · LOW

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

PR Review Velocity Impact 7.1/100 · LOW

Which changes need focused human review? 1528 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 2HIGH 56MEDIUM 133LOW 1337

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 1528 distinct pattern matches across 17 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 Identifiers655 hits · 695 pts
SeverityFileLineSnippetContext
LOWapp/mailers/conversation_reply_mailer.rb65 def init_conversation_attributes(conversation)CODE
LOWapp/mailers/references_header_builder.rb42 def get_references_from_replied_message(conversation, in_reply_to_message_id)CODE
LOWapp/mailers/references_header_builder.rb77 def extract_references_from_message(message)CODE
LOW…nistrator_notifications/account_notification_mailer.rb2 def account_deletion_user_initiated(account, reason)CODE
LOW…nistrator_notifications/account_notification_mailer.rb14 def account_deletion_for_inactivity(account, reason)CODE
LOW…ent_notifications/conversation_notifications_mailer.rb34 def assigned_conversation_new_message(conversation, agent, message)CODE
LOW…ent_notifications/conversation_notifications_mailer.rb46 def participating_conversation_new_message(conversation, agent, message)CODE
LOWapp/builders/contact_inbox_with_contact_builder.rb84 def find_contact_by_instagram_source_id(instagram_id)CODE
LOWapp/builders/contact_inbox_with_contact_builder.rb98 def find_contact_by_identifier(identifier)CODE
LOWapp/builders/messages/message_builder.rb233 def process_liquid_in_email_body(content)CODE
LOWapp/builders/messages/messenger/message_builder.rb76 def update_attachment_file_type(attachment)CODE
LOWapp/builders/messages/messenger/message_builder.rb115 def get_story_object_from_source_id(_source_id)CODE
LOWapp/builders/messages/messenger/message_builder.rb143 def update_facebook_reel_content(attachment)CODE
LOWapp/builders/messages/facebook/message_builder.rb135 def process_contact_params_result(result)CODE
LOWapp/builders/messages/instagram/base_message_builder.rb118 def create_story_reply_attachment(story_url)CODE
LOWapp/builders/messages/instagram/base_message_builder.rb179 def find_message_by_source_id(source_id)CODE
LOWapp/builders/messages/instagram/base_message_builder.rb198 def get_story_object_from_source_id(source_id)CODE
LOWapp/builders/messages/instagram/message_builder.rb8 def get_story_object_from_source_id(source_id)CODE
LOW…ilders/messages/instagram/messenger/message_builder.rb8 def get_story_object_from_source_id(source_id)CODE
LOWapp/builders/v2/reports/drilldown_record_serializer.rb32 def serialize_conversation_event(event)CODE
LOWapp/builders/v2/reports/drilldown_builder.rb100 def distinct_conversation_event_ids(events)CODE
LOWapp/builders/v2/reports/label_summary_builder.rb61 def fetch_conversation_counts(conversation_filter)CODE
LOWapp/models/inbox.rb212 def dispatch_reauthorization_event(reauthorization_required)CODE
LOWapp/models/attachment.rb201 def validate_file_content_type(file_content_type)CODE
LOWapp/models/message.rb455 def validate_attachments_limit(_attachment)CODE
LOWapp/models/conversation.rb267 def dispatch_conversation_updated_event(previous_changes = nil)CODE
LOWapp/models/automation_rule.rb188 def validate_single_condition(condition)CODE
LOWapp/models/application_record.rb37 def check_and_validate_content_length(column)CODE
LOWapp/models/application_record.rb49 def normalize_empty_string_to_nil(attrs = [])CODE
LOW⚡app/models/user.rb136 def send_confirmation_instructions_with_redirect(redirect_url:)CODE
LOW⚡app/models/user.rb143 def send_reset_password_instructions(redirect_url: nil, sso_account_id: nil)CODE
LOW⚡app/models/user.rb152 def send_reset_password_instructions_notification(token)CODE
LOWapp/models/channel/telegram.rb44 def get_telegram_profile_image(user_id)CODE
LOWapp/models/channel/telegram.rb130 def convert_markdown_to_telegram_html(text)CODE
LOWapp/models/channel/whatsapp.rb139 def send_contact_info_request(identifier, message)CODE
LOWapp/models/integrations/hook.rb206 def settings_cloudflare_realtimekit_credentials(value)CODE
LOWapp/models/concerns/inbox_branded_email_layoutable.rb14 def effective_branded_email_layout_template(locale = I18n.locale)CODE
LOWapp/models/concerns/sort_handler.rb18 def sort_on_priority_created_at(sort_direction = :desc)CODE
LOWapp/models/concerns/account_email_rate_limitable.rb33 def reserve_email_send_capacity(count = 1)CODE
LOWapp/models/concerns/account_email_rate_limitable.rb48 def attempt_email_capacity_reservation(count)CODE
LOW…p/models/concerns/assignee_activity_message_handler.rb6 def create_assignee_change_activity(user_name)CODE
LOW…p/models/concerns/assignee_activity_message_handler.rb15 def generate_assignee_change_activity_content(user_name)CODE
LOWapp/models/concerns/activity_message_handler.rb83 def user_status_change_activity_content(user_name)CODE
LOWapp/models/concerns/activity_message_handler.rb117 def create_mute_change_activity(change_type)CODE
LOWapp/models/concerns/sla_activity_message_handler.rb6 def create_sla_change_activity(change_type, user_name)CODE
LOWapp/models/concerns/reauthorizable.rb58 def send_channel_reauthorization_email(disconnect_type)CODE
LOWapp/models/concerns/reauthorizable.rb80 def dispatch_inbox_reauthorization_event(reauthorization_required)CODE
LOW…p/models/concerns/priority_activity_message_handler.rb20 def build_priority_change_content(user_name, old_priority = nil, new_priority = nil)CODE
LOWapp/models/concerns/label_activity_message_handler.rb14 def create_label_change_activity(change_type, user_name, labels = [])CODE
LOWapp/models/concerns/sso_authenticatable.rb11 def invalidate_sso_auth_token(token)CODE
LOWapp/models/concerns/sso_authenticatable.rb33 def sso_auth_token_impersonator_id(token)CODE
LOWapp/models/concerns/sso_authenticatable.rb37 def generate_sso_link_with_impersonation(impersonated_by)CODE
LOWapp/models/concerns/json_schema_validator.rb89 def get_name_from_data_pointer(error)CODE
LOWapp/models/concerns/team_activity_message_handler.rb6 def create_team_change_activity(user_name)CODE
LOWapp/models/concerns/cache_keys.rb39 def update_cache_key_for_account(account_id, key)CODE
LOWapp/mailboxes/mailbox_helper.rb43 def process_regular_attachments(attachments)CODE
LOWapp/mailboxes/mailbox_helper.rb55 def process_inline_attachments(attachments)CODE
LOWapp/mailboxes/mailbox_helper.rb67 def embed_inline_image_source(mail_attachment)CODE
LOWapp/mailboxes/mailbox_helper.rb75 def embed_plain_text_email_with_inline_image(mail_attachment)CODE
LOWapp/mailboxes/mailbox_sanitizer.rb6 def sanitized_message_attributes(source_id)CODE
595 more matches not shown…
Over-Commented Block321 hits · 320 pts
SeverityFileLineSnippetContext
LOW.bundler-audit.yml21 - CVE-2026-33176COMMENT
LOWapp/mailers/references_header_builder.rb1# Builds RFC 5322 compliant References headers for email threadingCOMMENT
LOWapp/models/macro.rb1# == Schema InformationCOMMENT
LOWapp/models/note.rb1# == Schema InformationCOMMENT
LOWapp/models/custom_attribute_definition.rb1# == Schema InformationCOMMENT
LOWapp/models/data_import_error.rb1# == Schema InformationCOMMENT
LOWapp/models/related_category.rb1# == Schema InformationCOMMENT
LOWapp/models/account.rb1# == Schema InformationCOMMENT
LOWapp/models/data_import.rb1# == Schema InformationCOMMENT
LOWapp/models/data_import.rb21# status :integer default("pending"), not nullCOMMENT
LOWapp/models/article.rb1# == Schema InformationCOMMENT
LOWapp/models/article.rb21# author_id :bigintCOMMENT
LOWapp/models/category.rb1# == Schema InformationCOMMENT
LOWapp/models/email_template.rb1# == Schema InformationCOMMENT
LOWapp/models/platform_app_permissible.rb1# == Schema InformationCOMMENT
LOWapp/models/contact.rb1# rubocop:disable Layout/LineLengthCOMMENT
LOWapp/models/contact.rb21# created_at :datetime not nullCOMMENT
LOWapp/models/user_session.rb1# == Schema InformationCOMMENT
LOWapp/models/automation_rule_pending_execution.rb1# == Schema InformationCOMMENT
LOWapp/models/automation_rule_pending_execution.rb81COMMENT
LOWapp/models/assignment_policy.rb1# == Schema InformationCOMMENT
LOWapp/models/mention.rb1# == Schema InformationCOMMENT
LOWapp/models/csat_survey_response.rb1# == Schema InformationCOMMENT
LOWapp/models/inbox_assignment_policy.rb1# == Schema InformationCOMMENT
LOWapp/models/canned_response.rb1# == Schema InformationCOMMENT
LOWapp/models/label.rb1# == Schema InformationCOMMENT
LOWapp/models/inbox.rb1# frozen_string_literal: trueCOMMENT
LOWapp/models/inbox.rb21# out_of_office_message :stringCOMMENT
LOWapp/models/agent_bot.rb1# == Schema InformationCOMMENT
LOWapp/models/notification_subscription.rb1# == Schema InformationCOMMENT
LOWapp/models/platform_banner.rb1# == Schema InformationCOMMENT
LOWapp/models/campaign.rb1# == Schema InformationCOMMENT
LOWapp/models/campaign.rb21# account_id :bigint not nullCOMMENT
LOWapp/models/data_import_mapping.rb1# == Schema InformationCOMMENT
LOWapp/models/dashboard_app.rb1# == Schema InformationCOMMENT
LOWapp/models/account_user.rb1# == Schema InformationCOMMENT
LOWapp/models/attachment.rb1# == Schema InformationCOMMENT
LOWapp/models/message.rb1# == Schema InformationCOMMENT
LOWapp/models/message.rb21# inbox_id :integer not nullCOMMENT
LOWapp/models/team.rb1# == Schema InformationCOMMENT
LOWapp/models/reporting_events_rollup.rb1# == Schema InformationCOMMENT
LOWapp/models/notification.rb1# == Schema InformationCOMMENT
LOWapp/models/folder.rb1# == Schema InformationCOMMENT
LOWapp/models/custom_filter.rb1# == Schema InformationCOMMENT
LOWapp/models/conversation.rb1# == Schema InformationCOMMENT
LOWapp/models/conversation.rb21# waiting_since :datetimeCOMMENT
LOWapp/models/conversation.rb41# index_conversations_on_campaign_id (campaign_id)COMMENT
LOWapp/models/super_admin.rb1# == Schema InformationCOMMENT
LOWapp/models/super_admin.rb21# otp_backup_codes :textCOMMENT
LOWapp/models/super_admin.rb41# index_users_on_otp_required_for_login (otp_required_for_login)COMMENT
LOWapp/models/automation_rule.rb1# == Schema InformationCOMMENT
LOWapp/models/company.rb1# == Schema InformationCOMMENT
LOWapp/models/portal.rb1# == Schema InformationCOMMENT
LOWapp/models/notification_setting.rb1# == Schema InformationCOMMENT
LOWapp/models/agent_bot_inbox.rb1# == Schema InformationCOMMENT
LOWapp/models/installation_config.rb1# == Schema InformationCOMMENT
LOWapp/models/contact_inbox.rb1# == Schema InformationCOMMENT
LOWapp/models/working_hour.rb1# == Schema InformationCOMMENT
LOWapp/models/platform_app.rb1# == Schema InformationCOMMENT
LOWapp/models/webhook.rb1# == Schema InformationCOMMENT
261 more matches not shown…
Fake / Example Data292 hits · 304 pts
SeverityFileLineSnippetContext
LOW.eslintrc.js129 input: ['placeholder'],CODE
LOWapp/builders/messages/facebook/message_builder.rb136 name = result['name'].presence || [result['first_name'], result['last_name']].compact_blank.join(' ').presence || 'JCODE
LOWapp/javascript/widget/components/Form/PhoneInput.vue197 :placeholder="placeholder"CODE
LOWapp/javascript/superadmin/commandBar.spec.js23 command('Acme Corp', { href: '/super_admin/accounts/7' }),CODE
LOWapp/javascript/superadmin/commandBar.spec.js106 expect(visible()).toEqual(['Acme Corp']);CODE
LOWapp/javascript/superadmin/commandBar.spec.js107 expect(selected()).toBe('Acme Corp');CODE
LOWapp/javascript/superadmin/commandBar.spec.js134 expect(visible()).toEqual(['Acme Corp']);CODE
LOWapp/javascript/superadmin/commandBar.spec.js142 expect(visible()).toContain('Acme Corp');CODE
LOWapp/javascript/shared/components/GreetingsEditor.vue28 :placeholder="placeholder"CODE
LOWapp/javascript/shared/components/GreetingsEditor.vue40 :placeholder="placeholder"CODE
LOWapp/javascript/shared/components/ResizableTextArea.vue171 :placeholder="placeholder"CODE
LOWapp/javascript/shared/components/TextArea.vue54 :placeholder="placeholder"CODE
LOW…posables/spec/useContactConversationNavigation.spec.js67 meta: { sender: { id: contactId, name: 'Jane Doe' } },CODE
LOW…posables/spec/useContactConversationNavigation.spec.js139 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js196 { id: 7, name: 'Jane Doe' },CODE
LOW…posables/spec/useContactConversationNavigation.spec.js209 { id: 7, name: 'Jane Doe' },CODE
LOW…posables/spec/useContactConversationNavigation.spec.js226 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js246 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js267 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js281 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js294 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js309 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…posables/spec/useContactConversationNavigation.spec.js324 appliedContactFilter.value = { id: 7, name: 'Jane Doe' };CODE
LOW…avascript/dashboard/composables/spec/useMacros.spec.js98 available_name: 'John Doe',CODE
LOW…avascript/dashboard/composables/spec/useMacros.spec.js99 name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js9 available_name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js10 name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js39 available_name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js40 name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js78 name: 'John Doe',CODE
LOW…script/dashboard/composables/commands/spec/fixtures.js79 available_name: 'John Doe',CODE
LOW…script/dashboard/components-next/taginput/TagInput.vue235 :placeholder="placeholder"CODE
LOW…components-next/captain/assistant/AddNewRulesInput.vue43 :placeholder="placeholder"CODE
LOW…nts-next/captain/assistant/PlaygroundTestSetup.spec.js383 expect(knowledgeField.props('placeholder')).toBe(CODE
LOW…omponents-next/captain/assistant/AddNewRulesDialog.vue65 :placeholder="placeholder"CODE
LOW…p/javascript/dashboard/components-next/input/Input.vue132 :placeholder="placeholder"CODE
LOW…components-next/Contacts/ContactsForm/ContactsForm.vue216 // Example: firstName="John", lastName="Doe" → name="John Doe"COMMENT
LOW…omponents-next/Contacts/ContactsForm/story/fixtures.js3 name: 'John Doe',CODE
LOW…omponents-next/Contacts/ContactsCard/story/fixtures.js9 name: 'John Doe',CODE
LOW…mponents-next/message/stories/MessageBubbles.story.vue23 name: 'John Doe',CODE
LOW…onents-next/message/stories/InstagramBubbles.story.vue23 name: 'John Doe',CODE
LOW…components-next/message/stories/MediaBubbles.story.vue23 name: 'John Doe',CODE
LOW…s-next/message/forward/specs/ForwardEmailPanel.spec.js71const contact = { name: 'Jane Doe', email: 'jane@example.com' };CODE
LOW…ts-next/NewConversation/components/RecipientsInput.vue42 :placeholder="placeholder"CODE
LOW…NewConversation/components/specs/MessageEditor.spec.js8 props: ['placeholder', 'modelValue'],CODE
LOW…NewConversation/components/specs/MessageEditor.spec.js9 template: '<div class="editor-stub" :data-placeholder="placeholder" />',CODE
LOW…ents-next/NewConversation/components/story/fixtures.js166 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js11 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js49 ).toBe('John Doe');CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js364 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js380 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js443 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js450 name: 'Jane Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js474 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js510 name: 'John Doe',CODE
LOW…sation/helpers/specs/composeConversationHelper.spec.js534 name: 'John Doe',CODE
LOW…-next/template-preview/templates/whatsapp-templates.js367 body_text: [['John', '123 Main St', 'support@telco.com']],CODE
LOW…dashboard/components-next/inline-input/InlineInput.vue116 :placeholder="placeholder"CODE
LOW…script/dashboard/components-next/textarea/TextArea.vue170 :placeholder="placeholder"CODE
LOW…/AssignmentPolicy/components/story/DataTable.story.vue28 name: 'John Doe',CODE
232 more matches not shown…
Magic Placeholder Names54 hits · 270 pts
SeverityFileLineSnippetContext
HIGHswagger/swagger.json6413 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json6433 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json6684 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json6703 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json14693 "example": "your-api-key"CODE
HIGHswagger/swagger.json14707 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json14755 "example": "your-api-key"CODE
HIGHswagger/swagger.json14759 "api_key": "your-api-key"CODE
HIGHswagger/swagger.json15074 "example": "your-api-key"CODE
HIGHswagger/swagger.json15088 "api_key": "your-api-key",CODE
HIGHswagger/swagger.json15108 "api_key": "your-api-key",CODE
HIGHswagger/paths/application/inboxes/update.yml149 api_key: your-api-keyCODE
HIGHswagger/paths/application/inboxes/update.yml164 api_key: your-api-keyCODE
HIGHswagger/paths/application/inboxes/index.yml149 api_key: your-api-keyCODE
HIGHswagger/paths/application/inboxes/index.yml165 api_key: your-api-keyCODE
HIGHswagger/tag_groups/other_swagger.json4051 "example": "your-api-key"CODE
HIGHswagger/tag_groups/other_swagger.json4065 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/other_swagger.json4113 "example": "your-api-key"CODE
HIGHswagger/tag_groups/other_swagger.json4117 "api_key": "your-api-key"CODE
HIGHswagger/tag_groups/other_swagger.json4432 "example": "your-api-key"CODE
HIGHswagger/tag_groups/other_swagger.json4446 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/other_swagger.json4466 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json4816 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json4836 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json5087 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json5106 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json13060 "example": "your-api-key"CODE
HIGHswagger/tag_groups/application_swagger.json13074 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json13122 "example": "your-api-key"CODE
HIGHswagger/tag_groups/application_swagger.json13126 "api_key": "your-api-key"CODE
HIGHswagger/tag_groups/application_swagger.json13441 "example": "your-api-key"CODE
HIGHswagger/tag_groups/application_swagger.json13455 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/application_swagger.json13475 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/platform_swagger.json4942 "example": "your-api-key"CODE
HIGHswagger/tag_groups/platform_swagger.json4956 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/platform_swagger.json5004 "example": "your-api-key"CODE
HIGHswagger/tag_groups/platform_swagger.json5008 "api_key": "your-api-key"CODE
HIGHswagger/tag_groups/platform_swagger.json5323 "example": "your-api-key"CODE
HIGHswagger/tag_groups/platform_swagger.json5337 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/platform_swagger.json5357 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/client_swagger.json4636 "example": "your-api-key"CODE
HIGHswagger/tag_groups/client_swagger.json4650 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/client_swagger.json4698 "example": "your-api-key"CODE
HIGHswagger/tag_groups/client_swagger.json4702 "api_key": "your-api-key"CODE
HIGHswagger/tag_groups/client_swagger.json5017 "example": "your-api-key"CODE
HIGHswagger/tag_groups/client_swagger.json5031 "api_key": "your-api-key",CODE
HIGHswagger/tag_groups/client_swagger.json5051 "api_key": "your-api-key",CODE
HIGH…/request/inbox/channels/update_sms_channel_payload.yml12 api_key: your-api-keyCODE
HIGH…est/inbox/channels/update_whatsapp_channel_payload.yml20 example: your-api-keyCODE
HIGH…est/inbox/channels/update_whatsapp_channel_payload.yml30 api_key: your-api-keyCODE
HIGH…est/inbox/channels/create_whatsapp_channel_payload.yml34 example: your-api-keyCODE
HIGH…est/inbox/channels/create_whatsapp_channel_payload.yml44 api_key: your-api-keyCODE
HIGH…est/inbox/channels/create_whatsapp_channel_payload.yml78 example: your-api-keyCODE
HIGH…est/inbox/channels/create_whatsapp_channel_payload.yml80 api_key: your-api-keyCODE
Self-Referential Comments81 hits · 238 pts
SeverityFileLineSnippetContext
MEDIUMapp/mailers/references_header_builder.rb3# This module provides functionality to construct proper References headersCOMMENT
MEDIUMapp/models/concerns/json_schema_validator.rb1# This file defines a custom validator class `JsonSchemaValidator` for validating a JSON object against a schema.COMMENT
MEDIUMapp/models/concerns/json_schema_validator.rb43 # Create a JSONSchemer instance using the schemaCOMMENT
MEDIUMapp/helpers/data_helper.rb2# This module contains helper methods for converting between different data types,COMMENT
MEDIUM…rprise/app/helpers/captain/chat_generation_recorder.rb10 # Create a generation span with model and token info for Langfuse cost calculation.COMMENT
MEDIUM…vices/internal/accounts/internal_attributes_service.rb23 # Create a new hash to avoid modifying the originalCOMMENT
MEDIUMconfig/markdown_embeds.yml3# This file defines patterns and templates for converting URLs into embedded contentCOMMENT
MEDIUMconfig/installation_config.yml1# This file contains all the installation wide configuration which controls various settings in ChatwootCOMMENT
MEDIUMconfig/initializers/feature_policy.rb1# Define an application-wide HTTP feature policy. For furtherCOMMENT
MEDIUMconfig/initializers/wrap_parameters.rb3# This file contains settings for ActionController::ParamsWrapper whichCOMMENT
MEDIUMconfig/initializers/permissions_policy.rb1# Define an application-wide HTTP permissions policy. For furtherCOMMENT
MEDIUMconfig/initializers/content_security_policy.rb3# Define an application-wide content security policyCOMMENT
MEDIUMconfig/initializers/git_sha.rb1# Define a method to fetch the git commit hashCOMMENT
MEDIUM…terprise/models/concerns/captain_tools_helpers_spec.rb4 # Create a test class that includes the concernCOMMENT
MEDIUM…nterprise/policies/csat_survey_response_policy_spec.rb11 # Create a custom role with report_manage permissionCOMMENT
MEDIUMspec/enterprise/policies/article_policy_spec.rb13 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUMspec/enterprise/policies/report_policy_spec.rb11 # Create a custom role with report_manage permissionCOMMENT
MEDIUMspec/enterprise/policies/portal_policy_spec.rb11 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUMspec/enterprise/policies/category_policy_spec.rb12 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUMspec/enterprise/lib/captain/base_task_service_spec.rb16 # Create a concrete test service class with enterprise module prependedCOMMENT
MEDIUMspec/enterprise/lib/captain/prompt_renderer_spec.rb78 # Create a controlled snippet to decouple from real snippet contentCOMMENT
MEDIUM…trollers/enterprise/api/v1/accounts_controller_spec.rb523 # Create the installation config for cloud environmentCOMMENT
MEDIUM…terprise/api/v1/accounts/categories_controller_spec.rb12 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUM…enterprise/api/v1/accounts/articles_controller_spec.rb13 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUM…/enterprise/api/v1/accounts/portals_controller_spec.rb11 # Create a custom role with knowledge_base_manage permissionCOMMENT
MEDIUM…/v1/accounts/contacts/conversations_controller_spec.rb25 # Create a conversation assigned to this agentCOMMENT
MEDIUM…/v1/accounts/contacts/conversations_controller_spec.rb65 # Create the conversationsCOMMENT
MEDIUM…/enterprise/api/v2/accounts/reports_controller_spec.rb9 # Create a custom role with report_manage permissionCOMMENT
MEDIUM…llers/api/v1/accounts/conversations_controller_spec.rb168 # Create an event for a different conversation (should not be included)COMMENT
MEDIUM…captain/tools/copilot/get_conversation_service_spec.rb117 # Create a regular messageCOMMENT
MEDIUM…captain/tools/copilot/get_conversation_service_spec.rb124 # Create a private messageCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb53 # Create a new isolated test environmentCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb90 # Create a new isolated test environmentCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb99 # Create a custom role with only the conversation_participating_manage permissionCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb130 # Create a new isolated test environmentCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb139 # Create a custom role with only the conversation_unassigned_manage permissionCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb174 # Create a new isolated test environmentCOMMENT
MEDIUM…rprise/conversations/permission_filter_service_spec.rb183 # Create a custom role with both participating and unassigned permissionsCOMMENT
MEDIUM…enterprise/billing/handle_stripe_event_service_spec.rb160 # Create a double for the serviceCOMMENT
MEDIUM…ec/builders/contact_inbox_with_contact_builder_spec.rb117 # Create a Facebook page inbox with a contact using the same source_idCOMMENT
MEDIUM…ec/builders/contact_inbox_with_contact_builder_spec.rb122 # Create an Instagram inboxCOMMENT
MEDIUM⚡spec/models/contact_spec.rb165 # Create a lead contact with only nameCOMMENT
MEDIUM⚡spec/models/contact_spec.rb169 # Create a customer contactCOMMENT
MEDIUM⚡spec/models/contact_spec.rb173 # Create a visitor contactCOMMENT
MEDIUMspec/models/concerns/json_schema_validator_spec.rb24 # Create a simple test model for validationCOMMENT
MEDIUMspec/mailboxes/application_mailbox_spec.rb76 # Create a BCC-only email scenarioCOMMENT
MEDIUMspec/support/csv_spec_helpers.rb5 # Create a temporary fileCOMMENT
MEDIUMspec/lib/captain/base_task_service_spec.rb8 # Create a concrete test service class since BaseTaskService is abstractCOMMENT
MEDIUMspec/jobs/internal/process_stale_contacts_job_spec.rb17 # Create an account and set its ID to match today's patternCOMMENT
MEDIUM…llers/api/v1/accounts/conversations_controller_spec.rb979 # Create a new message after agent_last_seen_at (unread message)COMMENT
MEDIUM…controllers/api/v2/accounts/reports_controller_spec.rb154 # Create a resolution event right at timezone boundaryCOMMENT
MEDIUMspec/listeners/automation_rule_listener_old_spec.rb1# This file is deprecated, please don't add any additional specs or modifications in thisCOMMENT
MEDIUMspec/listeners/reporting_event_listener_spec.rb339 # Create a resolved event firstCOMMENT
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb45 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb67 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb107 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb125 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb147 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb188 automation_rule # Create the automation ruleCODE
MEDIUMspec/listeners/automation_rule_listener_labels_spec.rb228 automation_rule # Create the automation ruleCODE
21 more matches not shown…
Decorative Section Separators25 hits · 75 pts
SeverityFileLineSnippetContext
MEDIUM…script/dashboard/helper/specs/snoozeDateParser.spec.js121// ─── Regression Test Matrix ───────────────────────────────────────────────────COMMENT
MEDIUM…script/dashboard/helper/specs/snoozeDateParser.spec.js544// ─── parseDateFromText direct tests ──────────────────────────────────────────COMMENT
MEDIUM…script/dashboard/helper/specs/snoozeDateParser.spec.js1512// ─── Multilingual / Localized Input Regressions ─────────────────────────────COMMENT
MEDIUM…ascript/dashboard/helper/snoozeDateParser/tokenMaps.js20// ─── Token Maps ──────────────────────────────────────────────────────────────COMMENT
MEDIUM…ascript/dashboard/helper/snoozeDateParser/tokenMaps.js199// ─── Unicode / Normalization ────────────────────────────────────────────────COMMENT
MEDIUM…ascript/dashboard/helper/snoozeDateParser/tokenMaps.js289// ─── Utility Functions ──────────────────────────────────────────────────────COMMENT
MEDIUM…ript/dashboard/helper/snoozeDateParser/localization.js22// ─── English Reference Data ─────────────────────────────────────────────────COMMENT
MEDIUM…ript/dashboard/helper/snoozeDateParser/localization.js156// ─── Regex for token replacement ────────────────────────────────────────────COMMENT
MEDIUM…ript/dashboard/helper/snoozeDateParser/localization.js172// ─── Translation Cache ──────────────────────────────────────────────────────COMMENT
MEDIUM…ript/dashboard/helper/snoozeDateParser/localization.js275// ─── Token Replacement ──────────────────────────────────────────────────────COMMENT
MEDIUM…ript/dashboard/helper/snoozeDateParser/localization.js345// ─── Main Suggestion Generator ──────────────────────────────────────────────COMMENT
MEDIUM…javascript/dashboard/helper/snoozeDateParser/parser.js48// ─── Regex Fragments (derived from maps) ────────────────────────────────────COMMENT
MEDIUM…javascript/dashboard/helper/snoozeDateParser/parser.js81// ─── Pre-compiled Regexes ───────────────────────────────────────────────────COMMENT
MEDIUM…javascript/dashboard/helper/snoozeDateParser/parser.js198// ─── Pattern Matchers ───────────────────────────────────────────────────────COMMENT
MEDIUM…javascript/dashboard/helper/snoozeDateParser/parser.js774// ─── Main Parser ────────────────────────────────────────────────────────────COMMENT
MEDIUMconfig/routes.rb50 # ----------------------------------COMMENT
MEDIUMconfig/routes.rb514 # ----------------------------------COMMENT
MEDIUMconfig/routes.rb648 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb674 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb713 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb721 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb773 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb780 # ----------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb845 # ---------------------------------------------------------------------COMMENT
MEDIUMconfig/routes.rb850 # ----------------------------------------------------------------------COMMENT
Redundant / Tautological Comments37 hits · 60 pts
SeverityFileLineSnippetContext
LOWapp/models/message.rb385 # Check if this is a response from AgentBot or Captain::AssistantCOMMENT
LOWapp/models/notification.rb172 # Check if the user has subscribed to the specified type of notificationCOMMENT
LOWapp/mailboxes/mailbox_inline_attachment_helper.rb27 # Check if CID is referenced in HTML contentCOMMENT
LOW…lers/public/api/v1/inboxes/conversations_controller.rb16 # Check if the conversation is already resolved to prevent redundant operationsCOMMENT
LOWapp/controllers/instagram/callbacks_controller.rb6 # Check if Instagram redirected with an error (user canceled authorization)COMMENT
LOWapp/services/instagram/refresh_oauth_token_service.rb27 # Check if token is still validCOMMENT
LOW…vices/whatsapp/populate_template_parameters_service.rb122 # Check if text contains WhatsApp rich formatting markersCOMMENT
LOWapp/services/whatsapp/incoming_message_base_service.rb170 # Set status to :delivered for echo messages to prevent SendReplyJob from trying to send themCOMMENT
LOWapp/services/whatsapp/webhook_setup_service.rb59 # Check if we have a stored PIN for this phone numberCOMMENT
LOW…ervices/enterprise/auto_assignment/capacity_service.rb11 # Check if there's a specific limit for this inboxCOMMENT
LOWconfig/application.rb104 # Check if proper encryption keys are configuredCOMMENT
LOWconfig/environments/production.rb94 # Set this to true and configure the email server for immediate delivery to raise delivery errors.COMMENT
LOWconfig/environments/production.rb97 # Set this to appropriate ingress service for which the options are :COMMENT
LOWconfig/initializers/mailer.rb43 # Set this to appropriate ingress service for which the options are :COMMENT
LOWconfig/initializers/rack_attack.rb228 # Set ENABLE_RACK_ATTACK_WIDGET_API to false to disable all widget throttles (e.g. iframe embeds).COMMENT
LOW⚡spec/enterprise/models/sla_event_spec.rb69 # Check if notification is created for the assigneeCOMMENT
LOW⚡spec/enterprise/models/sla_event_spec.rb71 # Check if notification is created for the account adminCOMMENT
LOW⚡spec/enterprise/models/sla_event_spec.rb73 # Check if notification is created for participantCOMMENT
LOW…enterprise/devise_overrides/session_controller_spec.rb74 # Check if the sign_in event is createdCOMMENT
LOW…enterprise/services/sla/business_hours_service_spec.rb127 # Set Saturday to open_all_day (0:00 - 23:59)COMMENT
LOWspec/builders/v2/report_builder_spec.rb280 metric: nil, # Set metric to nil to test this caseCODE
LOWdeployment/setup_20.04.sh425 # Check if this is a conversion from existing deploymentCOMMENT
LOWdeployment/setup_20.04.sh864 # Check if Redis is installedCOMMENT
LOWdeployment/setup_20.04.sh999 # Check if CW_VERSION is 4.0 or aboveCOMMENT
LOWdeployment/setup_20.04.sh1111 # Check if Chatwoot is installedCOMMENT
LOWdeployment/setup_20.04.sh1205# Check if there is newer version of cwctl and upgrade if foundCOMMENT
LOWdeployment/setup_20.04.sh1220 #Check if pip is not installed, and install it if notCOMMENT
LOWdeployment/setup_20.04.sh1226 # Check if packaging library is installed, and install it if notCOMMENT
LOW⚡rubocop/one_class_per_file.rb54 # Check if we're inside a Rack::Attack classCOMMENT
LOW⚡rubocop/one_class_per_file.rb61 # Check if the class inherits from StandardError or ends with 'Error'COMMENT
LOW⚡rubocop/one_class_per_file.rb69 # Check if any parent node is a module containing 'CustomExceptions'COMMENT
LOWrubocop/one_class_per_file.rb83 # Check if class name ends with any of these patternsCOMMENT
LOW.github/workflows/logging_percentage_check.yml50 # Check if the percentage is less than 5%COMMENT
LOW.github/workflows/run_foss_spec.yml140 # Assign spec to this node if: index % total == node_indexCOMMENT
LOWlib/redis/redis_keys.rb76 # Check if a message create with same source-id is in progress?COMMENT
LOWlib/test_data/database_optimizer.rb21 # Set tables to UNLOGGED mode for better write performanceCOMMENT
LOWlib/active_storage/migrator.rb7 # Check if services are configured correctlyCOMMENT
Slop Phrases19 hits · 38 pts
SeverityFileLineSnippetContext
MEDIUM…/javascript/dashboard/i18n/locale/sl/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/ur/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/uz/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/sq/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/sv/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/am/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/no/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…vascript/dashboard/i18n/locale/ur_IN/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/tl/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/ml/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/hr/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/nl/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/bg/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/hi/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/ka/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/fi/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/en/conversation.json486 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…/javascript/dashboard/i18n/locale/ta/conversation.json482 "DESCRIPTION": "Labels provide an easier way to categorize your conversation. Create some labels like #support-enqCODE
MEDIUM…ise/app/services/captain/llm/system_prompts_service.rb109 - Do not try to end the conversation explicitly (e.g., avoid phrases like "Talk soon!" or "Let me know if you neCODE
Verbosity Indicators14 hits · 28 pts
SeverityFileLineSnippetContext
LOWapp/builders/messages/instagram/base_message_builder.rb98 # Therefore, we need to check if the message already exists before creating it.COMMENT
LOW⚡app/javascript/dashboard/composables/useImageZoom.js68 // Step 1: Calculate offset from centerCOMMENT
LOW⚡app/javascript/dashboard/composables/useImageZoom.js71 // Step 2: Apply rotation transformationCOMMENT
LOW⚡app/javascript/dashboard/composables/useImageZoom.js78 // Step 3: Convert to percentage coordinatesCOMMENT
LOW…ipt/dashboard/components/widgets/WootWriter/Editor.vue480 // these drafts can also have a signature, so we need to check if the body is emptyCOMMENT
LOW…d/store/modules/conversations/helpers/filterHelpers.js435 // Step 1: Group consecutive AND conditions into logical unitsCOMMENT
LOW⚡…d/store/modules/conversations/helpers/filterHelpers.js462 // Step 2: Add the final AND group that wasn't followed by an ORCOMMENT
LOW⚡…d/store/modules/conversations/helpers/filterHelpers.js471 // Step 3: Combine all AND groups with OR operatorsCOMMENT
LOW⚡app/services/twilio/csat_template_service.rb20 # Step 1: Create templateCOMMENT
LOW⚡app/services/twilio/csat_template_service.rb25 # Step 2: Submit for WhatsApp approval using the approval_create URLCOMMENT
LOWspec/services/whatsapp/facebook_api_client_spec.rb193 # Step 1: Subscribe app to WABA with the default field list (`calls` is added only when voice is enabled).COMMENT
LOWspec/services/whatsapp/facebook_api_client_spec.rb206 # Step 2: Override callback at phone number levelCOMMENT
LOW⚡lib/integrations/slack/channel_builder.rb33 # Step 1: Fetch all private channels in one call (expect very few)COMMENT
LOW⚡lib/integrations/slack/channel_builder.rb37 # Step 2: Fetch public channels with paginationCOMMENT
Structural Annotation Overuse12 hits · 25 pts
SeverityFileLineSnippetContext
LOW⚡app/javascript/dashboard/composables/useImageZoom.js68 // Step 1: Calculate offset from centerCOMMENT
LOW⚡app/javascript/dashboard/composables/useImageZoom.js71 // Step 2: Apply rotation transformationCOMMENT
LOW⚡app/javascript/dashboard/composables/useImageZoom.js78 // Step 3: Convert to percentage coordinatesCOMMENT
LOW…d/store/modules/conversations/helpers/filterHelpers.js435 // Step 1: Group consecutive AND conditions into logical unitsCOMMENT
LOW⚡…d/store/modules/conversations/helpers/filterHelpers.js462 // Step 2: Add the final AND group that wasn't followed by an ORCOMMENT
LOW⚡…d/store/modules/conversations/helpers/filterHelpers.js471 // Step 3: Combine all AND groups with OR operatorsCOMMENT
LOW⚡app/services/twilio/csat_template_service.rb20 # Step 1: Create templateCOMMENT
LOW⚡app/services/twilio/csat_template_service.rb25 # Step 2: Submit for WhatsApp approval using the approval_create URLCOMMENT
LOWspec/services/whatsapp/facebook_api_client_spec.rb193 # Step 1: Subscribe app to WABA with the default field list (`calls` is added only when voice is enabled).COMMENT
LOWspec/services/whatsapp/facebook_api_client_spec.rb206 # Step 2: Override callback at phone number levelCOMMENT
LOW⚡lib/integrations/slack/channel_builder.rb33 # Step 1: Fetch all private channels in one call (expect very few)COMMENT
LOW⚡lib/integrations/slack/channel_builder.rb37 # Step 2: Fetch public channels with paginationCOMMENT
Hallucination Indicators2 hits · 20 pts
SeverityFileLineSnippetContext
CRITICAL…ollers/api/v1/accounts/captain/documents_controller.rb60 @documents = Current.account.captain_documents.with_attached_pdf_file.with_attached_markdown_file.includes(:assistanCODE
CRITICALspec/services/twilio/incoming_message_service_spec.rb328 expect(conversation.reload.messages.last.attachments.map(&:file_type)).to contain_exactly('image', 'image')CODE
Modern AI Meta-Vocabulary5 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUMenterprise/app/models/captain/assistant.rb8# guardrails :jsonbCOMMENT
MEDIUMenterprise/app/helpers/captain/chat_helper.rb111 # Ensures all LLM calls and tool executions within an agentic loopCOMMENT
MEDIUMenterprise/app/services/llm/speech_to_text_service.rb40 # temperature: 0.0 minimises hallucinations on silence / near-silentCOMMENT
MEDIUMlib/captain/base_task_service.rb6 # Sized for a 128,000-token context windowCOMMENT
MEDIUMlib/integrations/llm_base_service.rb5 # Sized for a 128,000-token context windowCOMMENT
AI Slop Vocabulary5 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMapp/javascript/shared/components/ResizableTextArea.vue78 // A surprise cursor jump? Definitely not user-friendly.COMMENT
MEDIUM…script/dashboard/composables/useWhatsappCallSession.js401 // to the override means hangup is robust to a wiped local session.COMMENT
LOWapp/services/crm/leadsquared/processor_service.rb65 # So we just use the update API if we already have a lead IDCOMMENT
MEDIUMapp/services/email_templates/db_resolver_service.rb33 # details contain local info which we can leverage in futureCOMMENT
LOWenterprise/app/models/applied_sla.rb125 # right now we simply use `CONVERSATION_UPDATED` event to notify the frontendCOMMENT
Empty Error Handlers2 hits · 10 pts
SeverityFileLineSnippetContext
HIGH.github/scripts/ghsa_linear_sync.py118except requests.RequestException:CODE
HIGH.github/scripts/ghsa_linear_sync.py150except requests.RequestException:CODE
TODO Padding2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…routes/dashboard/settings/inbox/channels/Instagram.vue24 // TODO: Handle error typeCOMMENT
LOW…rd/routes/dashboard/settings/inbox/channels/Tiktok.vue20 // TODO: Handle error typeCOMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWlib/seeders/reports/report_data_seeder.rb10# Usage:COMMENT
Unused Imports1 hit · 1 pts
SeverityFileLineSnippetContext
LOW.github/scripts/ghsa_linear_sync.py4CODE