Repository Analysis

ToolJet/ToolJet

ToolJet is the open-source foundation of ToolJet AI - the enterprise app generation platform for building internal tools, dashboard, business applications, workflows and AI agents 🚀

2.8 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of ToolJet/ToolJet, a JavaScript project with 38,203 GitHub stars. SynthScan v2.0 examined 2,318,658 lines of code across 16654 source files, recording 4673 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 2.8 places this repository in the Likely human-written band.

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

2.8
Adjusted Score
2.8
Raw Score
100%
Time Factor
2026-07-14
Last Push
38.2K
Stars
JavaScript
Language
2.3M
Lines of Code
16.7K
Files
4.7K
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

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

Score History

Longitudinal tracking requires multiple scan runs. Once this repository is re-scanned after new commits land, this chart will visualise how the synthetic code signal evolves over time — enabling you to detect whether AI authorship is growing, stabilising, or being actively corrected by human engineers.

No multi-scan history yet — run the scanner again to build trend data.

Severity Breakdown

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

CRITICAL 4HIGH 16MEDIUM 555LOW 4098

Directory Score Breakdown

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

Pattern Findings

The scanner identified 4673 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Fake / Example Data2759 hits · 2711 pts
SeverityFileLineSnippetContext
LOWfrontend/assets/translations/zh.json520 "placeholder": "占位符",CODE
LOWfrontend/assets/translations/de.json489 "placeholder": "Platzhalter",CODE
LOWfrontend/assets/translations/ru.json489 "placeholder": "Плейсхолдер",CODE
LOWfrontend/assets/translations/uk.json489 "placeholder": "Плейсхолдер",CODE
LOWfrontend/assets/translations/en.json608 "placeholder": "Placeholder",CODE
LOWfrontend/assets/translations/it.json489 "placeholder": "Placeholder",CODE
LOWfrontend/assets/translations/fr.json489 "placeholder": "Espace réservé",CODE
LOWfrontend/assets/translations/id.json488 "placeholder": "Placeholder",CODE
LOWfrontend/assets/translations/es.json523 "placeholder": "Marcador",CODE
LOW…end/src/AppBuilder/WidgetManager/widgets/codeEditor.js51 defaultValue: 'placeholder',CODE
LOWfrontend/src/AppBuilder/WidgetManager/widgets/form.js91 "{ 'name': 'John Doe', 'age': 35, 'isActive': true, 'dob': '01-01-1990', 'hobbies': ['reading', 'gaming', 'cycCODE
LOWfrontend/src/AppBuilder/WidgetManager/widgets/form.js91 "{ 'name': 'John Doe', 'age': 35, 'isActive': true, 'dob': '01-01-1990', 'hobbies': ['reading', 'gaming', 'cycCODE
LOW…/AppBuilder/RightSideBar/Inspector/Components/Chat.jsx55 'placeholder',CODE
LOW…or/Components/Form/_components/FieldPopoverContent.jsx86 onChange={(value) => handleFieldChange('placeholder', value)}CODE
LOW…nspector/Components/Form/handlers/parameterHandlers.js44 "{{{ 'name': 'John Doe', 'age': 35, 'isActive': true, 'dob': '01-01-1990', 'hobbies': ['reading', 'gaming'CODE
LOW…nspector/Components/Form/handlers/parameterHandlers.js44 "{{{ 'name': 'John Doe', 'age': 35, 'isActive': true, 'dob': '01-01-1990', 'hobbies': ['reading', 'gaming'CODE
LOWfrontend/src/AppBuilder/_hooks/useAppData.js810 if (type === 'placeholder' && category === 'text') {CODE
LOWfrontend/src/AppBuilder/_hooks/useAppData.js813 if (category === 'text' && type === 'placeholder') {CODE
LOWfrontend/src/AppBuilder/Widgets/Form/FormUtils.js132 uiComponentsDraft[index * 2 + 1]['definition']['properties']['placeholder'] = value?.placeholder;CODE
LOWfrontend/src/AppBuilder/Widgets/Form/FormUtils.js226 uiComponentsDraft[index * 2 + 1]['definition']['properties']['placeholder'] = value?.placeholder;CODE
LOWfrontend/src/AppBuilder/Widgets/Form/FormUtils.js253 uiComponentsDraft[index * 2 + 1]['definition']['properties']['placeholder'] = value?.placeholder;CODE
LOWfrontend/src/AppBuilder/Widgets/Form/FormUtils.js345 uiComponentsDraft[index * 2 + 1]['definition']['properties']['placeholder'] = value?.placeholder;CODE
LOW…anban/helpers/multipleContainersKeyboardCoordinates.js80 if (newDroppable.id === 'placeholder') {CODE
LOW…Builder/Widgets/MultiselectV2/CustomValueContainer.jsx63 <Placeholder {...props} key="placeholder" {...selectProps} data={selectProps?.visibleValues}>CODE
LOW…AppBuilder/Widgets/DropdownV2/CustomValueContainer.jsx49 <Placeholder {...props} key="placeholder" {...selectProps} data={props.getValue()}>CODE
LOWfrontend/src/components/ui/Rocket/Field/Field.spec.md72 <Input placeholder="John Doe" />CODE
LOW…ntend/src/components/ui/Rocket/Field/Field.stories.jsx73 <Input placeholder="John Doe" />CODE
LOW…end/src/components/ui/Rocket/Dialog/Dialog.stories.jsx206 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore etCODE
LOW…end/src/components/ui/Rocket/Dialog/Dialog.stories.jsx206 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore etCODE
LOW…end/src/components/ui/Rocket/Dialog/Dialog.stories.jsx261 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod temporCODE
LOW…end/src/components/ui/Rocket/Dialog/Dialog.stories.jsx261 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod temporCODE
LOW…ntend/src/components/ui/Rocket/Sheet/Sheet.stories.jsx147 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod temporCODE
LOW…ntend/src/components/ui/Rocket/Sheet/Sheet.stories.jsx147 Paragraph {i + 1}: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod temporCODE
LOW…mponents/ui/Rocket/AlertDialog/AlertDialog.stories.jsx36 <AlertDialogTitle>Lorem ipsum dolor sit amet.</AlertDialogTitle>CODE
LOW…mponents/ui/Rocket/AlertDialog/AlertDialog.stories.jsx36 <AlertDialogTitle>Lorem ipsum dolor sit amet.</AlertDialogTitle>CODE
LOW…mponents/ui/Rocket/AlertDialog/AlertDialog.stories.jsx38 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer elementum mattis arcu, non vulputate estCODE
LOW…mponents/ui/Rocket/AlertDialog/AlertDialog.stories.jsx38 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer elementum mattis arcu, non vulputate estCODE
LOWfrontend/src/_components/SortableList/utilities.js133 item.children.push({ id: `${item.id}-placeholder`, name: 'placeholder' });CODE
LOWplugins/packages/clickhouse/lib/operations.json42 "placeholder": "Enter array of objects"CODE
LOWplugins/packages/clickhouse/lib/operations.json49 "placeholder": "tablename",CODE
LOWplugins/packages/clickhouse/lib/operations.json60 "placeholder": "{{['date', 'str', 'arr', 'arr2']}}",CODE
LOWplugins/packages/postgresql/lib/operations.json441 "placeholder": "Select table"CODE
LOWplugins/packages/postgresql/lib/operations.json451 "placeholder": "e.g. id or {{ [\"id\", \"tenant_id\"] }}"CODE
LOWplugins/packages/postgresql/lib/operations.json460 "placeholder": "{{ [ { id: 1, name: 'Alice' } ] }}"CODE
LOWplugins/packages/postgresql/lib/operations.json489 "placeholder": "Select table"CODE
LOWplugins/packages/postgresql/lib/operations.json499 "placeholder": "e.g. id or {{ [\"id\", \"tenant_id\"] }}"CODE
LOWplugins/packages/postgresql/lib/operations.json508 "placeholder": "{{ [ { id: 1, name: 'Alice' } ] }}"CODE
LOWplugins/packages/postgresql/lib/operations.json520 "placeholder": "Enter table name"CODE
LOWplugins/packages/postgresql/lib/operations.json530 "placeholder": "Enter primary key column"CODE
LOWplugins/packages/postgresql/lib/operations.json539 "placeholder": "{{ [ { id: 1, name: 'Alice' } ] }}"CODE
LOWplugins/packages/postgresql/lib/operations.json22 "placeholder": "Leave empty to use default",CODE
LOWplugins/packages/postgresql/lib/operations.json31 "placeholder": "Leave empty to use default",CODE
LOWplugins/packages/postgresql/lib/operations.json47 "placeholder": "SELECT * FROM users"CODE
LOWplugins/packages/postgresql/lib/operations.json86 "placeholder": "Select schema"CODE
LOWplugins/packages/postgresql/lib/operations.json101 "placeholder": "Select table"CODE
LOWplugins/packages/postgresql/lib/operations.json147 "placeholder": "Enter limit"CODE
LOWplugins/packages/postgresql/lib/operations.json157 "placeholder": "Enter offset"CODE
LOWplugins/packages/postgresql/lib/operations.json171 "placeholder": "Select schema"CODE
LOWplugins/packages/postgresql/lib/operations.json186 "placeholder": "Select table"CODE
LOWplugins/packages/postgresql/lib/operations.json209 "placeholder": "Select schema"CODE
2699 more matches not shown…
Decorative Section Separators548 hits · 1763 pts
SeverityFileLineSnippetContext
MEDIUMdocker/nsjail/python-execution.cfg17# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg23# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg25# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg39# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg41# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg49# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg51# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg74# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg76# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg94# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg96# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg102# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg104# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg136# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg138# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg142# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg144# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg148# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg150# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg155# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg157# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg176# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg178# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg187# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg230# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg232# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg240# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg242# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg249# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg1# ============================================================================COMMENT
MEDIUMdocker/nsjail/python-execution.cfg3# ============================================================================COMMENT
MEDIUMfrontend/src/HomePage/AppMenu.jsx39 // ─── Ownership ────────────────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/HomePage/AppMenu.jsx42 // ─── App-level edit access ────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/_styles/queryManager.scss1935// ─── Query Folder Feature ──────────────────────────────────────────────────────COMMENT
MEDIUM…Builder/AppCanvas/Grid/helpers/flexContainerDragEnd.js66 // ── Case 1: same FlexContainer → reorder only, no grid writes ──────────────COMMENT
MEDIUM…Builder/AppCanvas/Grid/helpers/flexContainerDragEnd.js98 // ── Case 2: different FlexContainer → reparent at the locked slot ──────────COMMENT
MEDIUM…Builder/AppCanvas/Grid/helpers/flexContainerDragEnd.js134 // ── Case 3: dragged out to grid canvas → synthesize absolute layout ─────────COMMENT
MEDIUM…nd/src/AppBuilder/QueryManager/queryManager.theme.scss294// ─── DataSourcePicker ─────────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/AppBuilder/_stores/slices/gridSlice.js17// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/AppBuilder/_stores/slices/gridSlice.js32// ─────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/AppBuilder/_stores/slices/gridSlice.js214 // ───────────────────────────────────────────────────────────────────────────COMMENT
MEDIUMfrontend/src/AppBuilder/_stores/slices/gridSlice.js245 // ───────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js222 // ─── Segment Builders ──────────────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js321 // ─── Full Initialization ───────────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js349 // ─── Getter (backward compat) ─────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js359 // ─── Context-Aware Hints ────────────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js498 // ─── Server-side Global Resolve ────────────────────────────────────COMMENT
MEDIUM…ntend/src/AppBuilder/_stores/slices/codeHinterSlice.js521// ─── Helper ──────────────────────────────────────────────────────────COMMENT
MEDIUM…tores/slices/componentSlices/listViewComponentSlice.js249 // ─── Row-Scoped Component Resolution ───────────────────────────────────────COMMENT
MEDIUM…tores/slices/componentSlices/listViewComponentSlice.js268 // ──────────────────────────────────────────────────────────────────────────────COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js16// ═════════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js19// ── High-level model ────────────────────────────────────────────────────────COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js54// ── Pipeline ────────────────────────────────────────────────────────────────COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js64// ── Key concepts ────────────────────────────────────────────────────────────COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js78// ═════════════════════════════════════════════════════════════════════════════COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js937// ── GROW / SHRINK (changed widget is in flow) ───────────────────────────────COMMENT
MEDIUM…nd/src/AppBuilder/_stores/utils/dynamicHeightReflow.js954// ── HIDE / SHOW (changed widget is out of flow, `collapseWhenHidden`) ───────COMMENT
MEDIUM…c/components/ui/blocks/DataTable/DataTable.stories.jsx35// ── Default ─────────────────────────────────────────────────────────────────COMMENT
MEDIUM…c/components/ui/blocks/DataTable/DataTable.stories.jsx44// ── Compact ─────────────────────────────────────────────────────────────────COMMENT
MEDIUM…c/components/ui/blocks/DataTable/DataTable.stories.jsx53// ── Loading ─────────────────────────────────────────────────────────────────COMMENT
488 more matches not shown…
Structural Annotation Overuse786 hits · 1329 pts
SeverityFileLineSnippetContext
LOWdocker/pre-release/ee/ee-try-entrypoint.sh6# Step 1: Configure and Start PostgreSQLCOMMENT
LOWdocker/LTS/ee/ee-try-entrypoint-lts.sh6# Step 1: Configure and Start PostgreSQLCOMMENT
LOWdocker/LTS/ee/ee-try-entrypoint-lts.sh24# Step 2: Start ToolJet servicesCOMMENT
LOW…ppBuilder/AppCanvas/Grid/hooks/useElementGuidelines.js40 // Step 1: Keep global extremesCOMMENT
LOW…ppBuilder/AppCanvas/Grid/hooks/useElementGuidelines.js52 // Step 2: Keep local extremes for each alignment lineCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/EditRowForm.jsx31 // Step 1: Parse cv until it's fully converted to an objectCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/EditRowForm.jsx36 // Step 2: Use Lodash's isEqual for a deep comparisonCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/RowForm.jsx27 // Step 1: Parse cv until it's fully converted to an objectCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/RowForm.jsx32 // Step 2: Use Lodash's isEqual for a deep comparisonCOMMENT
LOW…-tests/cypress/commands/platform/gitSyncAppCommands.js751 // Step 1: resolve the AppGitSync record (auto-created if missing)COMMENT
LOW…-tests/cypress/commands/platform/gitSyncAppCommands.js768 // Step 2: push app content to gitCOMMENT
LOW…tests/cypress/commands/platform/platformApiCommands.js580 // Step 1: Authenticate with Okta to get session tokenCOMMENT
LOW…tests/cypress/commands/platform/platformApiCommands.js596 // Step 2: Exchange session token for authorization codeCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js31 // Step 1: Verify initial draft state (v1 as draft)COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js41 // Step 2: Open save version modal and verify all modal contentCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js46 // Step 3: Save v1 with descriptionCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js51 // Step 4: Verify v1 saved state (no draft tag, has promote button, description visible)COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js55 // Step 5: Open create draft modal and verify all modal contentCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js63 // Step 6: Create v2 draft from v1COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js68 // Step 7: Verify v2 draft stateCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js73 // Step 8: Save v2 with descriptionCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js76 // Step 9: Verify v2 saved stateCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js80 // Step 10: Verify both v1 and v2 available in "create from" dropdownCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js89 // Step 11: Create v3 draft from v2COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js94 // Step 12: Verify v3 draft state and all versions existCOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js68 // Step 1: Verify LDAP configuration page UICOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js114 // Step 2: Configure LDAP SSO successfullyCOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js133 // Step 3: Verify LDAP login page UICOMMENT
LOW…s/licensing/basicPlanTestcases/appWorkflowLimits.cy.js44 // Step 5: Verify clone button disabled at limit (Bug)COMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1357 // Step 1: Search for packagesCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1368 // Step 2: Update workflow packagesCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1379 // Step 3: Poll bundle status until readyCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1397 // Step 4: Verify entity in databaseCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1414 // Step 5: Test rebuild functionalityCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1425 // Step 6: Verify rebuilt bundle consistencyCOMMENT
LOW…ta-migrations/1742905945987-UpdateGlobalDataSources.ts17 // Step 1: Set app_version_id to NULL for existing global data sourcesCOMMENT
LOW…ta-migrations/1742905945987-UpdateGlobalDataSources.ts24 // Step 2: Add a check constraint to ensure app_version_id is NULL for global data sourcesCOMMENT
LOW…data-migrations/1766500000001-SeedFolderPermissions.ts5 // Step 1: Create granular_permissions entries for folders for each existing permission_groupCOMMENT
LOW…data-migrations/1766500000001-SeedFolderPermissions.ts21 // Step 2: Create folders_group_permissions for each new granular permissionCOMMENT
LOW…data-migrations/1776600000000-SeedPushModulesBranch.ts107 // Step 1: seed module BRANCH versions on the push-modules branch only.COMMENT
LOW…data-migrations/1776600000000-SeedPushModulesBranch.ts149 // Step 2: seed a push-modules BRANCH version for non-module apps that containCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts5 // Step 1: For app_versions with NULL co_relation_id, copy from a sibling versionCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts20 // Step 2: For apps with NULL co_relation_id, copy from any of their versionsCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts35 // Step 3: For remaining apps still with NULL co_relation_id (no versions have it),COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts5 // Step 1: Add nullable branch_id — PostgreSQL 11+ makes this instant (catalog-only change)COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts16 // Step 2: Replace uniq_folder_apps_app_id (global, app_id only) with two partial indexes.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts35 // Step 3: Add FK with NOT VALID — skips the full table scan that a plain ADD FOREIGN KEYCOMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts47 // Step 4: Materialise branch-scoped rows for git orgs using app_versions as source of truth.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts64 // Step 5: Delete the now-replaced branchless rows for git orgs.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts80 // Step 6: Validate FK — takes SHARE UPDATE EXCLUSIVE (allows concurrent reads/writes)COMMENT
LOW…modules/tooljet-db/services/postgrest-proxy.service.ts25 // NOTE: This method forwards request directly to PostgREST Using express middlewareCOMMENT
LOWserver/src/modules/versions/util.service.ts202 // Step 1: random UUID name for the new draft. Mirrors branch-versionCOMMENT
LOWserver/src/modules/versions/util.service.ts246 // Step 2: detach branch_id from the just-published row. Delegated via theCOMMENT
LOWserver/src/modules/organization-users/util.service.ts89 // Step 1 - Remove all custom groupsCOMMENT
LOWserver/src/modules/organization-users/util.service.ts92 // Step 2 - Change the role if requiredCOMMENT
LOWserver/src/modules/organization-users/util.service.ts102 // Step 3 - Attach the new groupsCOMMENT
LOWserver/src/modules/organization-users/util.service.ts131 // Step 4 - License checkCOMMENT
LOWserver/src/modules/organization-users/service.ts49 // Step 1 - Update user details - Only super admin canCOMMENT
LOWserver/src/modules/organization-users/service.ts58 // Step 2 - Roles and groups updateCOMMENT
LOWserver/src/modules/organization-users/service.ts72 // Step 3 - Update user metadataCOMMENT
726 more matches not shown…
Hyper-Verbose Identifiers247 hits · 258 pts
SeverityFileLineSnippetContext
LOW…rc/SuccessInfoScreen/VerificationSuccessInfoScreen.jsx20export const VerificationSuccessInfoScreen = function VerificationSuccessInfoScreen() {CODE
LOWfrontend/src/_utils/workflowExecutionState.js92export function getExecutionDisplayConfig(execution) {CODE
LOWfrontend/src/_helpers/editorHelpers.js44function verifyDotAndBracketNotations(jsString) {CODE
LOWfrontend/src/_helpers/editorHelpers.js105export function findComponentsWithReferences(components, changedCurrentState) {CODE
LOWfrontend/src/_helpers/codehinterPortalDimensions.js11export function readCodehinterPopupEditorDimensions() {CODE
LOWfrontend/src/_helpers/codehinterPortalDimensions.js26export function writeCodehinterPopupEditorDimensions(partial) {CODE
LOWfrontend/src/_helpers/codehinterPortalDimensions.js44export function getDefaultCodehinterPopupEditorDimensions() {CODE
LOWfrontend/src/_helpers/useSessionTransferRedirect.js6export function useSessionTransferRedirect(logPrefix = 'sessionTransfer') {CODE
LOWfrontend/src/_helpers/handle-response.js146export function handleResponseWithoutValidation(response) {CODE
LOWfrontend/src/_helpers/active-branch.js89export function unregisterBranchFocusSync() {CODE
LOWfrontend/src/_helpers/white-label/whiteLabelling.js16export function retrieveWhiteLabelFavicon() {CODE
LOWfrontend/src/_helpers/white-label/whiteLabelling.js155export async function resetToDefaultWhiteLabels() {CODE
LOWfrontend/src/_helpers/white-label/whiteLabelling.js162export function checkWhiteLabelsDefaultState() {CODE
LOWfrontend/src/AppBuilder/_utils/auth.js23export function fetchOauthTokenForSlackAndGSheet(dataSourceId, data) {CODE
LOWfrontend/src/AppBuilder/_helpers/editorHelpers.js233function verifyDotAndBracketNotations(jsString) {CODE
LOWfrontend/src/AppBuilder/_helpers/editorHelpers.js294export function findComponentsWithReferences(components, changedCurrentState) {CODE
LOW…end/src/AppBuilder/CodeEditor/SingleLineCodeEditor.jsx322 function autoCompleteExtensionConfig(context) {CODE
LOW…tend/src/AppBuilder/CodeEditor/MultiLineCodeEditor.jsx187 function autoCompleteExtensionConfig(context) {CODE
LOW…tend/src/AppBuilder/CodeEditor/MultiLineCodeEditor.jsx291 function updateCurrentLineObserver(editorView) {CODE
LOW…/AppBuilder/AppCanvas/AutoComputeMobileLayoutAlert.jsx13export default function AutoComputeMobileLayoutAlert({ currentLayout, darkMode, isCurrentVersionLocked }) {CODE
LOWfrontend/src/AppBuilder/AppCanvas/appCanvasUtils.js171export function addChildrenWidgetsToParent(componentType, parentId, currentLayout) {CODE
LOW…tend/src/AppBuilder/AppCanvas/copyPasteWidgetsUtils.js23function markClipboardAsCopyAfterCutPaste(copiedComponentObj) {CODE
LOW…tend/src/AppBuilder/AppCanvas/copyPasteWidgetsUtils.js131function calculateComponentPosition(component, existingComponents, layout, targetParentId) {CODE
LOW…tend/src/AppBuilder/AppCanvas/copyPasteWidgetsUtils.js278export function resolvePastedComponentName({ isCut, isCloning, originalName, componentType, mergedComponents }) {CODE
LOW…ppBuilder/AppCanvas/Hooks/useEnableMainCanvasScroll.js5export default function useEnableMainCanvasScroll({ canvasContentRef, enabled = true }) {CODE
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridUtils.js176function resolveCompactionCollision(layout, item, moveToCoord, axis) {CODE
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridUtils.js294export function getMouseDistanceFromParentDiv(event, id, parentWidgetType, frozenTargetRect) {CODE
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridUtils.js312export function findHighestLevelofSelection(_selectedComponents) {CODE
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridUtils.js338export function findChildrenAndGrandchildren(parentId, widgets) {CODE
LOW…c/AppBuilder/AppCanvas/Grid/helpers/gridResizeUtils.js31export function computeFlexResizeEndPatch({ lastEvent, gridHeight }) {CODE
LOW…Builder/AppCanvas/Grid/helpers/flexContainerDragEnd.js36export function handleFlexContainerDragEnd({CODE
LOW…src/AppBuilder/RightSideBar/Inspector/EventManager.jsx212 function getComponentsOptionsWithoutModalChilds() {CODE
LOW…src/AppBuilder/RightSideBar/Inspector/EventManager.jsx225 function getComponentOptionsOfComponentsWithActions(componentType = '') {CODE
LOW…src/AppBuilder/RightSideBar/Inspector/EventManager.jsx243 function getComponentActionOptions(componentId) {CODE
LOW…src/AppBuilder/RightSideBar/Inspector/EventManager.jsx273 function getComponentActionDefaultParams(componentId, actionHandle) {CODE
LOW…nd/src/AppBuilder/RightSideBar/Inspector/Inspector.jsx230 function handleComponentNameChange(newName) {CODE
LOW…tSideBar/Inspector/hooks/useNewEventAutoPopoverOpen.js16export function useNewEventAutoPopoverOpen(focusedEventIndex, setFocusedEventIndex) {CODE
LOW…geSettingsTab/PageMenu/DeletePageConfirmationModal.jsx8export function DeletePageConfirmationModal({ darkMode }) {CODE
LOWfrontend/src/AppBuilder/CodeBuilder/CodeBuilder.jsx31// function computeIfDropDownCanBeShown(instance) {COMMENT
LOW…/QueryManager/Components/SuccessNotificationInputs.jsx5export default function SuccessNotificationInputs({ currentState, options, darkMode, optionchanged }) {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/UpdateRows.jsx47 function addNewFilterConditionPair() {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/UpdateRows.jsx54 function removeFilterConditionPair(id) {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/UpdateRows.jsx65 function updateFilterOptionsChanged(filter) {CODE
LOW…ueryManager/QueryEditors/TooljetDatabase/JoinTable.jsx225 function addNewFilterConditionEntry() {CODE
LOW…ueryManager/QueryEditors/TooljetDatabase/JoinTable.jsx247 function removeFilterConditionEntry(index) {CODE
LOW…ueryManager/QueryEditors/TooljetDatabase/JoinTable.jsx266 function updateFilterConditionEntry(type, indexToUpdate, valueToUpdate) {CODE
LOW…ueryManager/QueryEditors/TooljetDatabase/JoinTable.jsx349 function updateOperatorForConditions(changedOperator) {CODE
LOW…anager/QueryEditors/TooljetDatabase/JoinConstraint.jsx99 function isMatchingForeignKeyObjects(foreignKeyTableList, tableList) {CODE
LOW…anager/QueryEditors/TooljetDatabase/JoinConstraint.jsx114 function checkIfAdjacentTableHasForeignKey(isChoosingLHStable, tableId) {CODE
LOW…anager/QueryEditors/TooljetDatabase/JoinConstraint.jsx136 function autoFillColumnIfForeignKeyExists(tableId, isChoosingLHStable) {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/DeleteRows.jsx20 function addNewFilterConditionPair() {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/DeleteRows.jsx27 function removeFilterConditionPair(id) {CODE
LOW…eryManager/QueryEditors/TooljetDatabase/DeleteRows.jsx38 function updateFilterOptionsChanged(filter) {CODE
LOW…QueryManager/QueryEditors/TooljetDatabase/ListRows.jsx26 function addNewFilterConditionPair() {CODE
LOW…QueryManager/QueryEditors/TooljetDatabase/ListRows.jsx40 function removeFilterConditionPair(id) {CODE
LOW…QueryManager/QueryEditors/TooljetDatabase/ListRows.jsx62 function updateFilterOptionsChanged(filter) {CODE
LOWfrontend/src/AppBuilder/_stores/utils.js457export function replaceQueryOptionsEntityReferencesWithIds(CODE
LOWfrontend/src/AppBuilder/_stores/utils.js551export function convertAllKeysToSnakeCase(o) {CODE
LOWfrontend/src/AppBuilder/_stores/ast.js32export function extractAndReplaceReferencesFromString(input, componentIdNameMapping = {}, queryIdNameMapping = {}) {CODE
LOW…nd/src/AppBuilder/Header/UpdatePresenceMultiPlayer.jsx7export default function UpdatePresenceMultiPlayer() {CODE
187 more matches not shown…
Over-Commented Block217 hits · 210 pts
SeverityFileLineSnippetContext
LOWdocker/nsjail/python-execution.cfg1# ============================================================================COMMENT
LOWdocker/nsjail/python-execution.cfg141COMMENT
LOWdocker/nsjail/python-execution.cfg181# - Debug other processes (ptrace)COMMENT
LOWdocker/nsjail/python-execution.cfg241# EXECUTIONCOMMENT
LOWfrontend/webpack.config.js141 },COMMENT
LOWfrontend/webpack.config.js161 // // HEAVY EDITORS GROUP - Split these out as they're HUGE and editor-onlyCOMMENT
LOWfrontend/webpack.config.js181 // pdf: {COMMENT
LOWfrontend/webpack.config.js201 // test: /[\\/]node_modules[\\/](@radix-ui|bootstrap|react-bootstrap|@dnd-kit|react-dnd|react-dnd-html5-backenCOMMENT
LOWfrontend/src/_helpers/utils.js701// return isFound;COMMENT
LOWfrontend/src/_helpers/utils.js721// // return previewQuery(_ref, query, true, processedParams);COMMENT
LOWfrontend/src/_helpers/utils.js741// return executeAction(_ref, event, mode, {});COMMENT
LOWfrontend/src/_helpers/utils.js761// return executeAction(_ref, event, mode, {});COMMENT
LOWfrontend/src/_helpers/utils.js781// const showModal = (modalName = '') => {COMMENT
LOWfrontend/src/_helpers/utils.js801// }COMMENT
LOWfrontend/src/_helpers/utils.js821// const event = {COMMENT
LOWfrontend/src/_helpers/utils.js841COMMENT
LOWfrontend/src/_helpers/utils.js861// const event = {COMMENT
LOWfrontend/src/_helpers/utils.js881// });COMMENT
LOWfrontend/src/_helpers/utils.js901// };COMMENT
LOWfrontend/src/Oauth/Authorize.jsx61 // Set AI cookie if prompt is availableCOMMENT
LOWfrontend/src/Oauth/Authorize.jsx161 // const base64 = base64Url.replace(/-/g, '+').replace(/_/g, '/');COMMENT
LOWfrontend/src/Oauth/Authorize.jsx181 // }COMMENT
LOWfrontend/src/Oauth/Authorize.jsx201 // if (compressedPrompt) {COMMENT
LOWfrontend/src/HomePage/HomePage.jsx1321 // OLD: fetch remote branches for branch pickerCOMMENT
LOWfrontend/src/AppBuilder/_utils/queryAbort.js1// Runtime state for the "abort in-flight query" feature.COMMENT
LOW…end/src/AppBuilder/WidgetManager/widgets/filepicker.js301 // accordian: 'File Drop Area',COMMENT
LOW…/src/AppBuilder/WidgetManager/widgets/currencyinput.js241 accordian: 'field',COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/selecto.scss1// .active-target::after{COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/selecto.scss21// position: absolute;COMMENT
LOW…src/AppBuilder/AppCanvas/Hooks/useCanvasDropHandler.js181 addedComponent = [newComponent];COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js1// // hooks.jsCOMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js21// useGridStore.getState().actions.setDraggingComponentId(e.target.id);COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js41// const { draggedOverElemId, isParentChangeAllowed } = getDraggedOverInfo(e, widgets, boxes);COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js61// );COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js81// const resizeData = calculateResizeData(e, _gridWidth, currentWidget);COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js101COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js121// const dragData = calculateGroupDragData(events, positions, _gridWidth, parentId);COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js141// }COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js161COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js181// const isHandle = targetElems.find((ele) => ele.classList.contains('handle-content'));COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js201// let left = e.translate[0];COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js221// if (draggedOverElem && draggedOverElem !== draggedOverElemRef.current) {COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js241// (ele) => ele.id !== e.target.id && (ele.classList.contains('target') || ele.classList.contains('real-canvas'))COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js261// const elemContainer = e.target.closest('.real-canvas');COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js281COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js301// function getCurrentLayout(id, boxes) {COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js321// if (isTopChanged) transformY -= height - currentLayout.height;COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js341// const transformY = Math.round(e.lastEvent.drag.beforeTranslate[1] / 10) * 10;COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js361// return events.map((ev) => {COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js381// });COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js401// function arePositionsValid(positions) {COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js421COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js441// const posX = layout.left * _gridWidth;COMMENT
LOWfrontend/src/AppBuilder/AppCanvas/Grid/gridHooks.js461// y: childRect.top - grandparentRect.top,COMMENT
LOW…nd/src/AppBuilder/AppCanvas/Grid/moveableExtensions.js1// export const MultiComponentHandle = {COMMENT
LOW…nd/src/AppBuilder/AppCanvas/Grid/moveableExtensions.js21// },COMMENT
LOW…nd/src/AppBuilder/AppCanvas/Grid/moveableExtensions.js41// height="12"COMMENT
LOW…rc/AppBuilder/RightSideBar/Inspector/EventManager.scss1// Base UI Combobox renders its Positioner with a hardcoded `tw-isolate tw-z-50`COMMENT
LOW…ilder/RightSideBar/Inspector/Components/FilePicker.jsx141 // Properties -> 0, Events -> 1, Validation -> 2COMMENT
LOW…ilder/RightSideBar/PageSettingsTab/PageMenu/style.scss161 // width: 20px;COMMENT
157 more matches not shown…
Verbosity Indicators58 hits · 102 pts
SeverityFileLineSnippetContext
LOWdocker/pre-release/ee/ee-try-entrypoint.sh6# Step 1: Configure and Start PostgreSQLCOMMENT
LOWdocker/LTS/ee/ee-try-entrypoint-lts.sh6# Step 1: Configure and Start PostgreSQLCOMMENT
LOWdocker/LTS/ee/ee-try-entrypoint-lts.sh24# Step 2: Start ToolJet servicesCOMMENT
LOW…ppBuilder/AppCanvas/Grid/hooks/useElementGuidelines.js40 // Step 1: Keep global extremesCOMMENT
LOW…ppBuilder/AppCanvas/Grid/hooks/useElementGuidelines.js52 // Step 2: Keep local extremes for each alignment lineCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/EditRowForm.jsx31 // Step 1: Parse cv until it's fully converted to an objectCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/EditRowForm.jsx36 // Step 2: Use Lodash's isEqual for a deep comparisonCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/RowForm.jsx27 // Step 1: Parse cv until it's fully converted to an objectCOMMENT
LOWfrontend/src/TooljetDatabase/Forms/RowForm.jsx32 // Step 2: Use Lodash's isEqual for a deep comparisonCOMMENT
LOW…-tests/cypress/commands/platform/gitSyncAppCommands.js751 // Step 1: resolve the AppGitSync record (auto-created if missing)COMMENT
LOW…-tests/cypress/commands/platform/gitSyncAppCommands.js768 // Step 2: push app content to gitCOMMENT
LOW…tests/cypress/commands/platform/platformApiCommands.js580 // Step 1: Authenticate with Okta to get session tokenCOMMENT
LOW…tests/cypress/commands/platform/platformApiCommands.js596 // Step 2: Exchange session token for authorization codeCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js31 // Step 1: Verify initial draft state (v1 as draft)COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js41 // Step 2: Open save version modal and verify all modal contentCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js46 // Step 3: Save v1 with descriptionCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js51 // Step 4: Verify v1 saved state (no draft tag, has promote button, description visible)COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js55 // Step 5: Open create draft modal and verify all modal contentCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js63 // Step 6: Create v2 draft from v1COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js68 // Step 7: Verify v2 draft stateCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js73 // Step 8: Save v2 with descriptionCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js76 // Step 9: Verify v2 saved stateCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js80 // Step 10: Verify both v1 and v2 available in "create from" dropdownCOMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js89 // Step 11: Create v3 draft from v2COMMENT
LOW…ath/platform/commonTestcases/apps/newVersionFlow.cy.js94 // Step 12: Verify v3 draft state and all versions existCOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js68 // Step 1: Verify LDAP configuration page UICOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js114 // Step 2: Configure LDAP SSO successfullyCOMMENT
LOW…appyPath/platform/eeTestcases/sso/ldapOnboarding.cy.js133 // Step 3: Verify LDAP login page UICOMMENT
LOW…s/licensing/basicPlanTestcases/appWorkflowLimits.cy.js44 // Step 5: Verify clone button disabled at limit (Bug)COMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1357 // Step 1: Search for packagesCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1368 // Step 2: Update workflow packagesCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1379 // Step 3: Poll bundle status until readyCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1397 // Step 4: Verify entity in databaseCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1414 // Step 5: Test rebuild functionalityCOMMENT
LOW…er/test/modules/workflows/e2e/workflow-bundles.spec.ts1425 // Step 6: Verify rebuilt bundle consistencyCOMMENT
LOW…ta-migrations/1742905945987-UpdateGlobalDataSources.ts17 // Step 1: Set app_version_id to NULL for existing global data sourcesCOMMENT
LOW…ta-migrations/1742905945987-UpdateGlobalDataSources.ts24 // Step 2: Add a check constraint to ensure app_version_id is NULL for global data sourcesCOMMENT
LOW…data-migrations/1766500000001-SeedFolderPermissions.ts5 // Step 1: Create granular_permissions entries for folders for each existing permission_groupCOMMENT
LOW…data-migrations/1766500000001-SeedFolderPermissions.ts21 // Step 2: Create folders_group_permissions for each new granular permissionCOMMENT
LOW…data-migrations/1776600000000-SeedPushModulesBranch.ts107 // Step 1: seed module BRANCH versions on the push-modules branch only.COMMENT
LOW…data-migrations/1776600000000-SeedPushModulesBranch.ts149 // Step 2: seed a push-modules BRANCH version for non-module apps that containCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts5 // Step 1: For app_versions with NULL co_relation_id, copy from a sibling versionCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts20 // Step 2: For apps with NULL co_relation_id, copy from any of their versionsCOMMENT
LOW…ta-migrations/1773400000000-BackfillAppCoRelationId.ts35 // Step 3: For remaining apps still with NULL co_relation_id (no versions have it),COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts5 // Step 1: Add nullable branch_id — PostgreSQL 11+ makes this instant (catalog-only change)COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts16 // Step 2: Replace uniq_folder_apps_app_id (global, app_id only) with two partial indexes.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts35 // Step 3: Add FK with NOT VALID — skips the full table scan that a plain ADD FOREIGN KEYCOMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts47 // Step 4: Materialise branch-scoped rows for git orgs using app_versions as source of truth.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts64 // Step 5: Delete the now-replaced branchless rows for git orgs.COMMENT
LOW…ta-migrations/1777100000000-AddBranchIdToFolderApps.ts80 // Step 6: Validate FK — takes SHARE UPDATE EXCLUSIVE (allows concurrent reads/writes)COMMENT
LOWserver/src/modules/versions/util.service.ts202 // Step 1: random UUID name for the new draft. Mirrors branch-versionCOMMENT
LOWserver/src/modules/versions/util.service.ts246 // Step 2: detach branch_id from the just-published row. Delegated via theCOMMENT
LOWserver/src/modules/app-environments/ability/index.ts41 // we need to check if the user has general permissions to view environmentsCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh23 # Step 1: Navigate to submodule directoryCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh27 # Step 2: Get the latest commit hash from main branchCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh35 # Step 3: Checkout to the latest main commitCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh39 # Step 4: Go back to root directoryCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh43 # Step 5: Stage the submodule changesCOMMENT
Magic Placeholder Names10 hits · 50 pts
SeverityFileLineSnippetContext
HIGHmarketplace/plugins/portkey/lib/manifest.json38 "helpText": "How to obtain API Key: <a href='https://docs.portkey.ai/docs/api-reference/authentication#obtaining-yCODE
HIGHmarketplace/plugins/portkey/lib/manifest.json58 "helpText": "How to obtain Gateway URL: <a href='https://docs.portkey.ai/docs/api-reference/authentication#obtainiCODE
HIGHdocs/docs/marketplace/plugins/portkey.md20- **API Key**: Your Portkey API Key. Refer to the **[Portkey API Authentication Documentation](https://docs.portkey.ai/dCODE
HIGHdocs/docs/marketplace/plugins/portkey.md23- **Gateway URL** (Optional): Your default Portkey Gateway URL. See the **[Portkey API Authentication Documentation](httCODE
HIGH…ned_docs/version-2.68.0/marketplace/plugins/portkey.md20- **API Key**: Your Portkey API Key. Refer to the **[Portkey API Authentication Documentation](https://docs.portkey.ai/dCODE
HIGH…ned_docs/version-2.68.0/marketplace/plugins/portkey.md23- **Gateway URL** (Optional): Your default Portkey Gateway URL. See the **[Portkey API Authentication Documentation](httCODE
HIGH…docs/version-2.50.0-LTS/marketplace/plugins/portkey.md20- **API Key**: Your Portkey API Key. Refer to the **[Portkey API Authentication Documentation](https://docs.portkey.ai/dCODE
HIGH…docs/version-2.50.0-LTS/marketplace/plugins/portkey.md23- **Gateway URL** (Optional): Your default Portkey Gateway URL. See the **[Portkey API Authentication Documentation](httCODE
HIGH…_docs/version-3.0.0-LTS/marketplace/plugins/portkey.md20- **API Key**: Your Portkey API Key. Refer to the **[Portkey API Authentication Documentation](https://docs.portkey.ai/dCODE
HIGH…_docs/version-3.0.0-LTS/marketplace/plugins/portkey.md23- **Gateway URL** (Optional): Your default Portkey Gateway URL. See the **[Portkey API Authentication Documentation](httCODE
Hallucination Indicators4 hits · 40 pts
SeverityFileLineSnippetContext
CRITICAL…ver/templates/personal-finance-tracker/definition.json350 "value": "{{`Add to ${components.transactionForm.data.transactionType.value.toLowerCase()}s`}}"CODE
CRITICAL…ver/templates/personal-finance-tracker/definition.json2340 "message": "{{`Failed to add ${components.transactionForm.data.transactionType.value.toLowerCase()}! PleCODE
CRITICAL…er/templates/student-management-system/definition.json4842 "value": "{{components.add_student_form.data.course_input.values.join(\",\")}}"CODE
CRITICAL…er/templates/student-management-system/definition.json4998 "value": "{{components.update_student.data.update_courses.values.join(\",\")}}"CODE
Redundant / Tautological Comments20 hits · 30 pts
SeverityFileLineSnippetContext
LOWdocker/nsjail/python-execution.cfg65# Open file descriptors limitCOMMENT
LOWdocker/pre-release/ee/ee-entrypoint.sh27# Check if PGRST_HOST starts with "localhost"COMMENT
LOWdocker/LTS/ee/ee-entrypoint.sh27# Check if PGRST_HOST starts with "localhost"COMMENT
LOWdeploy/docker/external.sh6# Check if LOCKBOX_MASTER_KEY is present or emptyCOMMENT
LOWdeploy/docker/external.sh24# Check if SECRET_KEY_BASE is present or emptyCOMMENT
LOWdeploy/docker/external.sh42# Check if PGRST_JWT_SECRET is present or emptyCOMMENT
LOWdeploy/docker/external.sh65# Check if PG_USER, PG_HOST, PG_PASS, PG_DB are present or emptyCOMMENT
LOWdeploy/docker/internal.sh6# Check if LOCKBOX_MASTER_KEY is present or emptyCOMMENT
LOWdeploy/docker/internal.sh24# Check if SECRET_KEY_BASE is present or emptyCOMMENT
LOWdeploy/docker/internal.sh42# Check if PGRST_JWT_SECRET is present or emptyCOMMENT
LOWdeploy/docker/internal.sh65# Check if PG_PASS and TOOLJET_DB_PASS are present or emptyCOMMENT
LOWdeploy/docker/internal.sh83# Check if PGRST_DB_URI is present or emptyCOMMENT
LOWserver/scripts/wait-for-it.sh151 # Check if busybox timeout uses -t flagCOMMENT
LOWrelease-scripts/resolve-conflicts-submodules.sh17 # Check if submodule directory existsCOMMENT
LOWrelease-scripts/create-release.sh8# Check if all required arguments are providedCOMMENT
LOWrelease-scripts/create-release.sh19# Check if GITHUB_TOKEN is set in the environmentCOMMENT
LOWrelease-scripts/create-release.sh55# Check if the current user is the creator of the milestoneCOMMENT
LOWrelease-scripts/create-release.sh68# Check if release branch already existsCOMMENT
LOWrelease-scripts/create-release.sh173# Check if release PR already existsCOMMENT
LOW.github/workflows/release-automation.yml162 # Check if there are any changesCOMMENT
Cross-Language Confusion (JS/TS)4 hits · 20 pts
SeverityFileLineSnippetContext
HIGH…modules/workflows/unit/python-sandbox-security.spec.ts673 elif len(content) < 100:CODE
HIGH…modules/workflows/unit/python-sandbox-security.spec.ts1092elif err == errno.EPERM:CODE
HIGH…modules/workflows/unit/python-sandbox-security.spec.ts1094elif err == errno.ENOSYS:CODE
HIGH…modules/workflows/unit/python-sandbox-security.spec.ts1212elif result_code == -1:CODE
Synthetic Comment Markers2 hits · 15 pts
SeverityFileLineSnippetContext
HIGH…tend/src/AppBuilder/CodeEditor/MultiLineCodeEditor.jsx285 // when the value is set programmatically (e.g. AI-generated code). Sync it here soCOMMENT
HIGHserver/src/modules/app-history/constants/index.ts42 // AI-generated changesCOMMENT
AI Slop Vocabulary5 hits · 11 pts
SeverityFileLineSnippetContext
MEDIUMfrontend/src/_helpers/utils.js131 state?.constants, // Passing constants as an argument allows the evaluated code to access and utilize the constaCODE
MEDIUMfrontend/src/AppBuilder/CodeEditor/utils.js187 state?.constants, // Passing constants as an argument allows the evaluated code to access and utilize the constaCODE
MEDIUMfrontend/src/AppBuilder/_stores/utils.js188 state?.constants, // Passing constants as an argument allows the evaluated code to access and utilize the constaCODE
MEDIUM…modules/git-sync/unit/git-object-cache.service.spec.ts457 // robust even if the publish->disconnect chain grows more async hops.COMMENT
MEDIUM…/sample-data-json-files/sample_data_organizations.json1[{"Index":1,"Organization Id":"FAB0d41d5b5d22c","Name":"Ferrell LLC","Website":"https://price.net/","Country":"Papua NewCODE
Excessive Try-Catch Wrapping7 hits · 7 pts
SeverityFileLineSnippetContext
LOW…modules/workflows/unit/python-sandbox-security.spec.ts401except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts458except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts635except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts700except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts751 except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts773except Exception as e:CODE
LOW…modules/workflows/unit/python-sandbox-security.spec.ts1390except Exception as e:CODE
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMdocker/dev-entrypoint.sh31# Create main application database (tooljet_production)COMMENT
MEDIUMserver/dev-entrypoint.sh31# Create main application database (tooljet_production)COMMENT
Slop Phrases3 hits · 3 pts
SeverityFileLineSnippetContext
LOWfrontend/assets/libs/pyodide-0.23.2/pyodide.js1!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports):"function"==typeof definCODE
LOW…etplace/plugins/hubspot/openapi-specs/site-search.json149 "values" : [ "Free HubSpot CRM", "App Marketplace", "Subscribe via Email", "Don't forget to share CODE
LOW…etplace/plugins/hubspot/openapi-specs/site-search.json185 "values" : [ "Free HubSpot CRM", "App Marketplace", "Subscribe via Email", "Don't forget to share CODE
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWserver/scripts/run-e2e.sh8# Usage:COMMENT