Repository Analysis

twentyhq/twenty

The open alternative to Salesforce, designed for AI.

1.0 Likely human-written View on GitHub
1.0
Adjusted Score
1.0
Raw Score
100%
Time Factor
2026-05-30
Last Push
48,537
Stars
TypeScript
Language
1,473,284
Lines of Code
18191
Files
836
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 43HIGH 27MEDIUM 47LOW 719

Pattern Findings

836 matches across 18 categories. Click a row to expand file-level details.

Hallucination Indicators43 hits · 430 pts
SeverityFileLineSnippet
CRITICAL…ite/src/sections/Hero/visuals/components/WhyTwenty.tsx293 sceneObject.material.uniforms.uCameraPosition.value.copy(
CRITICAL…website/src/lib/halftone/components/HalftoneCanvas.tsx169 resources.imageMaterial.uniforms.imageSize.value.set(1, 1);
CRITICAL…website/src/lib/halftone/components/HalftoneCanvas.tsx184 resources.imageMaterial.uniforms.imageSize.value.set(
CRITICAL…on/application-variable-encryption.integration-spec.ts170 findResponse.body.data.findOneApplication.applicationVariables.find(
CRITICAL…on/application-variable-encryption.integration-spec.ts237 findResponse.body.data.findOneApplication.applicationVariables.find(
CRITICAL…on/application-variable-encryption.integration-spec.ts299 findResponse.body.data.findOneApplication.applicationVariables.find(
CRITICAL…ql/suites/mutate-by-relation-field.integration-spec.ts148 findResponse.body.data.people.edges.map(
CRITICAL…ql/suites/mutate-by-relation-field.integration-spec.ts207 const remainingIds = findResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts80 const firstPagePeople = firstPageResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts111 const secondPagePeople = secondPageResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts147 const thirdPagePeople = thirdPageResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts174 const firstPagePeople = firstPageResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts202 const secondPagePeople = secondPageResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts230 const allPeople = allPeopleResponse.body.data.people.edges.map(
CRITICAL…/suites/composite-field-pagination.integration-spec.ts254 const backwardPagePeople = backwardPageResponse.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts169 const ids = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts205 const ids = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts242 const ids = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts283 const companyNames = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts325 const ids = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts420 const ids = response.body.data.people.edges.map(
CRITICAL…ql/suites/filter-by-relation-field.integration-spec.ts454 const ids = response.body.data.pets.edges.map(
CRITICAL…art-data-relation-traversal-filter.integration-spec.ts58 }> = objectsResponse.body.data.objects.edges.map(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts230 const firstPageTimestamps = firstPage.body.data.eventLogs.records.map(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts233 const secondPageTimestamps = secondPage.body.data.eventLogs.records.map(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts278 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts321 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts346 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts373 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts399 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts419 response.body.data.eventLogs.records.forEach(
CRITICAL…aphql/suites/event-logs/event-logs.integration-spec.ts446 response.body.data.eventLogs.records.forEach(
CRITICAL…ecords-relation-traversal-workflow.integration-spec.ts61 }> = objectsResponse.body.data.objects.edges.map(
CRITICAL…ject-metadata/rename-custom-object.integration-spec.ts67 standardObjects.body.data.objects.edges.find(
CRITICAL…application-token-schema-filtering.integration-spec.ts73 const typeNames: string[] = response.body.data.__schema.types.map(
CRITICAL…application-token-schema-filtering.integration-spec.ts89 const typeNames: string[] = response.body.data.__schema.types.map(
CRITICAL…rosoft/services/microsoft-get-messages.service.spec.ts187 responseExample.body.sender.emailAddress.address.toLowerCase(),
CRITICAL…iption-item-ids-from-stripe-subscription-event.util.ts22 event.data.object.items.data.map((item) => item.id) ?? [];
CRITICAL…orchestrator/steps/start-watchers-orchestrator-step.ts150 this.state.steps.uploadFiles.output.builtFileInfos.set(event.builtPath, {
CRITICAL…v/orchestrator/steps/upload-files-orchestrator-step.ts164 ] of this.state.steps.uploadFiles.output.builtFileInfos.entries()) {
CRITICALpackages/twenty-utils/congratulate-dangerfile.ts62 await danger.github.api.rest.search.issuesAndPullRequests({
CRITICALpackages/twenty-utils/congratulate-dangerfile.ts91 await danger.github.api.rest.issues.createComment({
CRITICAL…ctions/handlers/list-linear-workflow-states-handler.ts58 const states = result.data.team.states.nodes.sort(
Fake / Example Data335 hits · 362 pts
SeverityFileLineSnippet
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx163 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx184 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx191 const name = await canvas.findByText('John Doe');
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx216 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx218 street: '123 Main St',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx281 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx310 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx312 street: '123 Main St',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx358 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx360 street: '123 Main St',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx512 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum iaculis est tincidunt, sagittis neque vitae,
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx512 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum iaculis est tincidunt, sagittis neque vitae,
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx520 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum iaculis est tincidunt, sagittis neque vitae,
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx520 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum iaculis est tincidunt, sagittis neque vitae,
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx536 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx552 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx572 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx591 name: 'John Doe',
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx599 const nameValue = await canvas.findByText('John Doe');
LOW…i/src/json-visualizer/__stories__/JsonTree.stories.tsx604 expect(args.onNodeValueClick).toHaveBeenCalledWith('John Doe');
LOW…rc/layout/card/components/__stories__/Card.stories.tsx16 <CardHeader>Lorem ipsum</CardHeader>
LOW…rc/layout/card/components/__stories__/Card.stories.tsx18 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec id massa
LOW…rc/layout/card/components/__stories__/Card.stories.tsx18 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec id massa
LOW…rc/layout/card/components/__stories__/Card.stories.tsx22 <CardFooter>Lorem ipsum</CardFooter>
LOW…/menu-item/components/__stories__/MenuItem.stories.tsx217 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Eveniet, corporis.',
LOW…/menu-item/components/__stories__/MenuItem.stories.tsx217 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Eveniet, corporis.',
LOW…/menu-item/components/__stories__/MenuItem.stories.tsx224 case 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Eveniet, corporis.':
LOW…/menu-item/components/__stories__/MenuItem.stories.tsx224 case 'Lorem ipsum dolor sit amet consectetur adipisicing elit. Eveniet, corporis.':
LOW…ty-ui/src/components/chip/__stories__/Chip.stories.tsx36 label: 'John Doe',
LOW…ty-ui/src/components/chip/__stories__/Chip.stories.tsx42 placeholderColorSeed="John Doe"
LOW…ty-ui/src/components/chip/__stories__/Chip.stories.tsx127 label: 'John Doe',
LOW…ty-ui/src/components/chip/__stories__/Chip.stories.tsx131 placeholderColorSeed="John Doe"
LOW…i/src/components/chip/__stories__/LinkChip.stories.tsx42 label: 'John Doe',
LOW…i/src/components/chip/__stories__/LinkChip.stories.tsx48 placeholderColorSeed="John Doe"
LOW…i/src/components/chip/__stories__/LinkChip.stories.tsx117 label: 'John Doe',
LOW…i/src/components/chip/__stories__/LinkChip.stories.tsx122 placeholderColorSeed="John Doe"
LOW…ts/avatar-or-icon/__stories__/AvatarOrIcon.stories.tsx18 placeholderColorSeed: 'John Doe',
LOW…ts/avatar-or-icon/__stories__/AvatarOrIcon.stories.tsx26 placeholderColorSeed: 'John Doe',
LOW…ts/avatar-or-icon/__stories__/AvatarOrIcon.stories.tsx53 placeholderColorSeed: 'John Doe',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx45 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx45 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx56 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx56 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx68 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…enty-ui/src/components/tag/__stories__/Tag.stories.tsx68 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…ooltip/__stories__/OverflowTextWithTooltip.stories.tsx9 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi tellus diam, rhoncus nec consequat quis, dapibus quis
LOW…ooltip/__stories__/OverflowTextWithTooltip.stories.tsx9 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi tellus diam, rhoncus nec consequat quis, dapibus quis
LOW…splay/status/components/__stories__/Status.stories.tsx44 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…splay/status/components/__stories__/Status.stories.tsx44 text: 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
LOW…/typography/components/__stories__/H2Title.stories.tsx9 description: 'Lorem ipsum dolor sit amet',
LOW…/typography/components/__stories__/H2Title.stories.tsx9 description: 'Lorem ipsum dolor sit amet',
LOW…s/PartnerApplication/__tests__/split-full-name.test.ts5 expect(splitFullName('John Doe')).toEqual({
LOW…/utils/setup-test-objects-with-all-field-types.util.ts169 primaryEmail: 'test@test.com',
LOW…/utils/setup-test-objects-with-all-field-types.util.ts170 additionalEmails: ['test@test.com'],
LOW…essful-filter-input-by-field-metadata-type.constant.ts465 emailsField: { primaryEmail: { eq: 'test@test.com' } },
LOW…essful-filter-input-by-field-metadata-type.constant.ts467 restFilterInput: 'emailsField.primaryEmail[eq]:"test@test.com"',
LOW…essful-filter-input-by-field-metadata-type.constant.ts469 return record.emailsField.primaryEmail === 'test@test.com';
LOW…essful-create-input-by-field-metadata-type.constant.ts298 primaryEmail: 'test@test.com',
LOW…essful-create-input-by-field-metadata-type.constant.ts304 record.emailsField.primaryEmail === 'test@test.com' &&
LOW…sful-save-imap-smtp-caldav-account.integration-spec.ts14 username: 'user@example.com',
275 more matches not shown…
Hyper-Verbose Identifiers178 hits · 178 pts
SeverityFileLineSnippet
LOWpackages/twenty-ui/scripts/generateBarrels.ts315function extractExportsFromSourceFile(sourceFile: ts.SourceFile) {
LOW…oter/effect-components/LocaleSwitcherDismissEffect.tsx14export function LocaleSwitcherDismissEffect({
LOW…/Testimonials/components/MountedTestimonialsVisual.tsx22export function MountedTestimonialsVisual() {
LOW…onials/components/MountedTestimonialsPartnerVisual.tsx22export function MountedTestimonialsPartnerVisual() {
LOW…ons/PartnerApplication/PartnerApplicationModalRoot.tsx15export function usePartnerApplicationModal() {
LOW…ons/PartnerApplication/PartnerApplicationModalRoot.tsx25export function PartnerApplicationModalRoot({
LOW…s/Problem/components/Visual/monolith-halftone-mount.ts389function getFootprintScaleFromRects(
LOW…ed/effect-components/HelpedSceneScrollLayoutEffect.tsx15export function HelpedSceneScrollLayoutEffect({
LOW…tions/Helped/utils/create-helped-scene-layout-state.ts3export function createHelpedSceneLayoutState(): HelpedSceneLayoutState {
LOW…src/sections/Helped/utils/apply-helped-scene-layout.ts146function shouldRecomputeMeasurements(
LOW…tions/Helped/utils/preload-helped-visual-geometries.ts7export function preloadHelpedVisualGeometries() {
LOW…-components/CloseDrawerWhenNavigationExpandsEffect.tsx10export function CloseDrawerWhenNavigationExpandsEffect({
LOW…ons/HomeStepper/utils/home-stepper-lottie-frame-map.ts10export function scrollProgressToHomeStepperLottieFrame(
LOW…r/components/Visual/use-stepper-background-halftone.ts597export function useStepperBackgroundHalftone({
LOW…tepper/components/Visual/StepperBackgroundHalftone.tsx18export function StepperBackgroundHalftone({
LOW…eStepper/visuals/HomeStepperBackgroundIllustration.tsx8export function HomeStepperBackgroundIllustration() {
LOW…mponents/PartnerVisual/use-partner-halftone-overlay.ts332function getFootprintScaleFromRects(
LOW…mponents/PartnerVisual/use-partner-halftone-overlay.ts743export function usePartnerHalftoneOverlay({
LOW…ite/src/sections/Hero/visuals/components/WhyTwenty.tsx133function createWhyTwentyScanlineMaterial(lightDirection: THREE.Vector3) {
LOW…ite/src/sections/Hero/visuals/components/WhyTwenty.tsx154function applyWhyTwentyScanlineMaterials(
LOW…visuals/components/PartnerHeroHalftoneIllustration.tsx7export function PartnerHeroHalftoneIllustration() {
LOW…ons/Hero/visuals/hooks/use-home-background-halftone.ts61function getHomeBackgroundBreakpoint(
LOW…ons/Hero/visuals/hooks/use-home-background-halftone.ts346function getFootprintScaleFromRects(
LOW…ons/Hero/visuals/hooks/use-home-background-halftone.ts408async function mountHomeBackgroundCanvas({
LOW…ons/Hero/visuals/hooks/use-home-background-halftone.ts673export function useHomeBackgroundHalftone({
LOW…rds/effect-components/ThreeCardsScrollLayoutEffect.tsx16export function ThreeCardsScrollLayoutEffect({
LOW…sections/ThreeCards/utils/three-cards-scroll-layout.ts28export function applyThreeCardsScrollLayout(
LOW…Cards/components/IllustrationCard/IllustrationCard.tsx285function PartnerActionIconLinkButton({
LOW…eCard/components/FamiliarInterfaceGradientBackdrop.tsx36export function FamiliarInterfaceGradientBackdrop({
LOW…nents/FeatureCard/hooks/use-halftone-image-backdrop.ts186async function mountHalftoneImageBackdrop({
LOW…site/src/app/[locale]/customers/act-education/page.tsx26export default async function ActEducationCaseStudyPage({
LOW…src/app/[locale]/customers/elevate-consulting/page.tsx26export default async function ElevateConsultingCaseStudyPage({
LOW…e]/customers/_components/CustomersCaseStudySignoff.tsx8export function CustomersCaseStudySignoff() {
LOW…c/app/[locale]/customers/alternative-partners/page.tsx26export default async function AlternativePartnersCaseStudyPage({
LOW…-website/src/app/[locale]/enterprise/activate/page.tsx44function EnterpriseActivateFallback({
LOW…c/app/[locale]/halftone/_components/HalftoneStudio.tsx131function normalizePresetAssetReference(reference: string | null) {
LOW…nents/effect-components/CopyHalftoneShortcutEffect.tsx29export function CopyHalftoneShortcutEffect({
LOWpackages/twenty-website/src/content/site/asset-paths.ts101export function getSharedCompanyLogoUrlFromDomainName(domainName?: string) {
LOW…y-website/src/lib/releases/fetch-latest-release-tag.ts1export async function fetchLatestGithubReleaseTag(): Promise<string | null> {
LOW…-website/src/lib/releases/compare-semantic-versions.ts47function comparePreReleaseIdentifiers(a: string[], b: string[]): number {
LOW…twenty-website/src/lib/articles/load-local-articles.ts107function calculateReadingTimeMinutes(content: string): number {
LOW…twenty-website/src/lib/articles/load-local-articles.ts137export function loadLocalArticlesFromDirectory(
LOW…wenty-website/src/lib/animation/use-animated-number.ts25function canScheduleAnimationFrame() {
LOW…c/lib/animation/__tests__/animation-frame-loop.test.ts3function createAnimationFrameScheduler() {
LOW…y-website/src/lib/motion/use-prefers-reduced-motion.ts11export function getPrefersReducedMotionSnapshot(): boolean {
LOW…/src/lib/visual-runtime/utils/bounded-failure-cache.ts6export function createBoundedFailureCache(
LOW…ite/src/lib/visual-runtime/utils/visual-render-loop.ts62function requestAnimationFrameFromWindow(callback: FrameRequestCallback) {
LOW…ite/src/lib/visual-runtime/utils/visual-render-loop.ts66function cancelAnimationFrameFromWindow(handle: number) {
LOW…lib/visual-runtime/utils/create-site-webgl-renderer.ts71export function tryCreateSiteWebGlRenderer(
LOW…/src/lib/visual-runtime/utils/visual-runtime-policy.ts25function isHeavyVisualsKillSwitchEnabled(): boolean {
LOW…/src/lib/visual-runtime/utils/visual-runtime-policy.ts66function detectPrefersReducedMotion(): boolean {
LOW…site/src/lib/visual-runtime/utils/load-visual-image.ts15function createVisualImageLoadError(imageUrl: string, label: string) {
LOW…src/lib/visual-runtime/utils/visual-mount-scheduler.ts98export function createVisualMountScheduler(
LOW…ib/visual-runtime/utils/active-webgl-context-budget.ts11function getMaxActiveWebGlContexts(): number {
LOW…ib/visual-runtime/utils/active-webgl-context-budget.ts29export function tryReserveWebGlContextSlot(): (() => void) | null {
LOW…ib/visual-runtime/utils/active-webgl-context-budget.ts47export function subscribeToActiveWebGlContextCount(
LOW…ib/visual-runtime/__tests__/visual-render-loop.test.ts6function createAnimationFrameScheduler() {
LOW…ib/visual-runtime/__tests__/visual-render-loop.test.ts29function createDocumentVisibilityStub(initialHidden = false) {
LOW…bsite/src/lib/react/__tests__/timeout-registry.test.ts3function createManualTimerScheduler() {
LOWpackages/twenty-website/src/lib/halftone/utils/state.ts281function getDefaultLightingSettings(
118 more matches not shown…
Cross-Language Confusion (JS/TS)23 hits · 132 pts
SeverityFileLineSnippet
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts649print(f"{len(tools)} catalog tools available")
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts651 print(f"- {tool['name']}")
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts656 print(c['name'], c.get('employees'))
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts666print(f"Created company id={result['id']}")
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts876 print(row)
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts608print('Chart saved!')
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts619print(f"Loaded {len(df)} rows")
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts629print('Analysis complete!')
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts859 print(text)
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts991 print(para.text)
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts997 print(cell.text)
HIGH…l-metadata/create-standard-flat-skill-metadata.util.ts1402 print(shape.text)
HIGH…es/ai/components/__stories__/AiChatMessage.stories.tsx75print(f"Total sales: $" + str(df['sales'].sum()))
HIGH…es/ai/components/__stories__/AiChatMessage.stories.tsx76print("Chart saved successfully!")`,
HIGH…es/ai/components/__stories__/AiChatMessage.stories.tsx148print("Processing data...")
HIGH…es/ai/components/__stories__/AiChatMessage.stories.tsx150print("Done!")`,
HIGH…es/ai/components/__stories__/AiChatMessage.stories.tsx174print(df.head())`,
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx21print(f"Total Revenue: $" + f"{total:,.2f}")
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx22print(f"Average Monthly: $" + f"{average:,.2f}")
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx53print("Complete!")`,
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx84print(df.head())`,
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx140print("Files exported successfully!")`,
HIGH…omponents/__stories__/CodeExecutionDisplay.stories.tsx203 print(f"Processing item {i+1}...")`,
Over-Commented Block101 hits · 101 pts
SeverityFileLineSnippet
LOWpackages/twenty-ui/setupTests.ts1// jest-dom adds custom jest matchers for asserting on DOM nodes.
LOWpackages/twenty-ui/src/vite-env.d.ts1/// <reference types="vite/client" />
LOWpackages/twenty-ui/src/nx-react.d.ts1/// <reference types="@nx/react/typings/cssmodule.d.ts" />
LOWpackages/twenty-docker/docker-compose.yml21 STORAGE_S3_ENDPOINT: ${STORAGE_S3_ENDPOINT}
LOWpackages/twenty-docker/docker-compose.yml81 # MESSAGING_PROVIDER_GMAIL_ENABLED: ${MESSAGING_PROVIDER_GMAIL_ENABLED}
LOWpackages/twenty-docker/helm/twenty/README.md61**Local (default):** Uses PVCs for persistence
LOW…lds-permissions/update-permissions.integration-spec.ts241
LOW…lds-permissions/update-permissions.integration-spec.ts261
LOW…lds-permissions/update-permissions.integration-spec.ts281 // beforeEach(async () => {
LOW…lds-permissions/update-permissions.integration-spec.ts301 // expect(response.body.data).toBeDefined();
LOW…ation/utils/get-field-metadata-creation-inputs.util.ts221 ],
LOW…lean-field-create-input-validation.integration-spec.ts41 // ...testCase,
LOW…n/find-many-morph-relation-records.integration-spec.ts141 // 'should find many records with a MORPH_RELATION field type ONE_TO_MANY',
LOW…n/find-many-morph-relation-records.integration-spec.ts201 // }
LOW…est/suites/rest-api-core-find-many.integration-spec.ts301 method: 'get',
LOW…est/suites/rest-api-core-find-many.integration-spec.ts321 // lastName: 'Smith',
LOW…est/suites/rest-api-core-find-many.integration-spec.ts341 // },
LOW…est/suites/rest-api-core-find-many.integration-spec.ts361 // }).expect(200);
LOW…est/suites/rest-api-core-find-many.integration-spec.ts381 // expect(secondPagePeople).toHaveLength(2);
LOW…est/suites/rest-api-core-find-many.integration-spec.ts401 // const thirdPagePeople = thirdPageResponse.body.data.people;
LOW…est/suites/rest-api-core-find-many.integration-spec.ts421 // expect(firstPagePeople[1].name.firstName).toBe('Bob');
LOW…est/suites/rest-api-core-find-many.integration-spec.ts441 // method: 'get',
LOW…-fast-1747234200000-add-sub-field-name-to-view-sort.ts1import { QueryRunner } from 'typeorm';
LOW…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py21Usage:
LOW…c-function-executor/logic-function-executor.service.ts261 [DEFAULT_API_URL_NAME]: baseUrl ?? '',
LOW…-modules/file/constants/twenty-mime-policy.constant.ts1// Extensions where Twenty intentionally deviates from the IANA-standard mime
LOW…tools/code-interpreter-tool/twenty-mcp-helper.const.ts141
LOW…ty-server/src/engine/guards/custom-permission.guard.ts1import {
LOW…twenty-server/src/engine/guards/no-permission.guard.ts1import {
LOW…src/cli/utilities/file/append-server-variables.util.ts21const DEFINE_APPLICATION_PATTERN = /defineApplication\s*\(\s*\{/;
LOW…y-sdk/src/cli/utilities/entity/entity-view-template.ts101${typeBlock} icon: 'IconList',
LOW…cli/utilities/entity/entity-logic-function-template.ts41 // Cron trigger example:
LOWpackages/twenty-sdk/src/sdk/logic-function/index.ts1// Runtime-facing barrel for logic-function authors.
LOW…ic-function/connections/find-connection-for-request.ts1import { type AppConnection } from '@/sdk/logic-function/connections/types/app-connection.type';
LOW…ogic-function/connections/types/app-connection.type.ts1// One credential the running app owns. Returned from `listConnections` and
LOW…wenty-shared/src/application/connectionProviderType.ts1// Discriminator on `connectionProvider.type`. Each value pairs with a
LOW…ges/twenty-shared/src/application/appConnectionType.ts1// Wire shape exchanged between an app's logic-function runtime and the
LOW…ges/twenty-shared/src/application/appConnectionType.ts21 // Connection-row visibility:
LOWpackages/twenty-utils/setup-dev-env.sh1#!/bin/bash
LOWpackages/twenty-companion/forge.config.js21 },
LOW…rnal/twenty-partners/src/scripts/purge-soft-deleted.ts1// Hard-destroy soft-deleted records that block re-imports.
LOW…enty-apps/internal/twenty-partners/src/scripts/seed.ts1// Single demo seed for the twenty-partners app. Idempotent UPSERT by natural key.
LOW…nternal/twenty-partners/src/scripts/import-from-tft.ts1// Import partners, opportunities and partner quotes FROM the TFT workspace INTO
LOWpackages/twenty-front/src/vite-env.d.ts1/// <reference types="vite/client" />
LOWpackages/twenty-front/src/nx-react.d.ts1/// <reference types="@nx/react/typings/cssmodule.d.ts" />
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx161// <DropdownMenuItemsContainer hasMaxHeight>
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx181// </DropdownContent>
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx201// [item.id]: checked,
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx321// export const SelectableMenuItemWithAvatar: Story = {
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx341// TEMP_DISABLED_TEST: Commented out unused component
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx361// dropdownId="modal-dropdown-test"
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx381// }),
LOW…t/dropdown/components/__stories__/Dropdown.stories.tsx401// export const DropdownInsideModal: Story = {
LOW…s/data-model/indexes/utils/indexableOptionSeparator.ts1// The Select component takes string values. We encode (fieldMetadataId,
LOW…-group/utils/__tests__/recordGroupSortedInsert.test.ts1// export const recordGroupSortedInsert = <T>(
LOW…es/side-panel/hooks/useOpenCalendarEventInSidePanel.ts21 }),
LOW…nd-menu/components/__stories__/CommandMenu.stories.tsx261// const canvas = within(canvasElement.ownerDocument.body);
LOW…modules/activities/files/components/DocumentViewer.tsx121 documentExtension?: string;
LOW…eadsheet-import/constants/CsvInjectionPreventionZwj.ts1// Zero-Width Joiner character used to prevent CSV injection while preserving data.
LOW…es/settings/__stories__/SettingsExperience.stories.tsx41// play: async ({ canvasElement }) => {
41 more matches not shown…
Excessive Try-Catch Wrapping38 hits · 54 pts
SeverityFileLineSnippet
LOW…odules/code-interpreter/sandbox-scripts/xlsx/recalc.py49 except Exception:
LOW…odules/code-interpreter/sandbox-scripts/xlsx/recalc.py154 except Exception as e:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py100 print(f"Error: Invalid PowerPoint file: {args.input}")
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py124 print("Error: No slides found")
LOW…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py144 except Exception as e:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py145 print(f"Error: {e}")
LOW…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py351 except Exception:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/rearrange.py58 print(f"Error: Template file not found: {args.template}")
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/rearrange.py68 print(f"Error: {e}")
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py70 except Exception as e:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/rearrange.py71 print(f"Error processing presentation: {e}")
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py124 except Exception:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/inventory.py84 print(f"Error: Input file not found: {args.input}")
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/inventory.py88 print("Error: Input must be a PowerPoint file (.pptx)")
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py120 except Exception as e:
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/inventory.py121 print(f"Error processing presentation: {e}")
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py384 except Exception:
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py504 except Exception:
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py601 except Exception:
MEDIUM…dules/code-interpreter/sandbox-scripts/pptx/replace.py367 print(f"Error: Input file '{input_pptx}' not found")
MEDIUM…dules/code-interpreter/sandbox-scripts/pptx/replace.py371 print(f"Error: Replacements JSON file '{replacements_json}' not found")
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py376 except Exception as e:
MEDIUM…dules/code-interpreter/sandbox-scripts/pptx/replace.py377 print(f"Error applying replacements: {e}")
LOW…-modules/code-interpreter/sandbox-scripts/docx/pack.py128 except Exception as e:
MEDIUM…ules/code-interpreter/sandbox-scripts/docx/validate.py52 print(f"Error: Validation not supported for file type {file_extension}")
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py187 except Exception as e:
MEDIUM…de-interpreter/sandbox-scripts/docx/validation/docx.py188 print(f"Error counting paragraphs in unpacked document: {e}")
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py211 except Exception as e:
MEDIUM…de-interpreter/sandbox-scripts/docx/validation/docx.py212 print(f"Error counting paragraphs in original document: {e}")
LOW…terpreter/sandbox-scripts/docx/validation/redlining.py59 except Exception:
LOW…terpreter/sandbox-scripts/docx/validation/redlining.py71 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py228 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py471 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py140 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py359 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py604 except Exception:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py626 except Exception as e:
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py866 except Exception as e:
Redundant / Tautological Comments30 hits · 52 pts
SeverityFileLineSnippet
LOWpackages/twenty-docker/scripts/install.sh8# Check if docker compose plugin is installed
LOWpackages/twenty-docker/scripts/install.sh13# Check if docker is started
LOWpackages/twenty-docker/scripts/install.sh23# Check if docker compose version is >= 2
LOWpackages/twenty-docker/scripts/install.sh28# Check if docker-compose is installed, if so issue a warning if version is < 2
LOWpackages/twenty-docker/scripts/install.sh102# Check if command nc is available
LOWpackages/twenty-docker/scripts/install.sh104 # Check if port 3000 is already in use, propose to change it
LOWpackages/twenty-docker/scripts/install.sh130 # Check if port is listening
LOWpackages/twenty-server/scripts/ssl-generation/script.sh3# Check if OpenSSL is installed
LOW…odules/code-interpreter/sandbox-scripts/xlsx/recalc.py82 # Check if gtimeout is available on macOS
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py873 # Check if there's meaningful overlap (more than tolerance)
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py173 # Check if slide exists
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py306 # Check if any text overflow got worse
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py90 # Check if text starts or ends with whitespace
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py92 # Check if xml:space="preserve" attribute exists
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py94 # Check if this is an ID attribute
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py97 # Check if value looks like a UUID (has the right length and pattern structure)
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py125 # Check if it's 32 hex-like characters (could include invalid hex chars)
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py449 # Check if the ID exists
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py456 # Check if we have type expectations for this element
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py463 # Check if the actual type matches or contains the expected type
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py759 # Check if file is in a main content folder and use appropriate schema
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py776 # Check if attribute is from a namespace other than allowed ones
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py212 # Check if this element type has ID uniqueness requirements
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py503 # Check if this might be a compound like "sldMasterId"
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py619 # Check if it's a known media extension that should be declared
LOW.github/workflows/ci-breaking-changes.yaml469 # Check if GraphQL schema has changes
LOW.github/workflows/ci-breaking-changes.yaml487 # Check if GraphQL metadata schema has changes
LOW.github/workflows/ci-breaking-changes.yaml520 # Check if the output file was created and is valid JSON
LOW.github/workflows/ci-breaking-changes.yaml591 # Check if the output file was created and is valid JSON
LOW.github/workflows/ci-emails.yaml47 # Check if server is running
Decorative Section Separators14 hits · 42 pts
SeverityFileLineSnippet
MEDIUM…-docker/helm/twenty/tests/schema_permissions_test.yaml9 # ================
MEDIUM…-docker/helm/twenty/tests/schema_permissions_test.yaml63 # ==================
MEDIUM…tools/code-interpreter-tool/twenty-mcp-helper.const.ts142# --------------------------------------------------------------------------
MEDIUM…tools/code-interpreter-tool/twenty-mcp-helper.const.ts147# --------------------------------------------------------------------------
MEDIUMpackages/twenty-utils/setup-dev-env.sh2# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh4# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh17# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh149# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh151# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh206# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh208# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh224# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh226# =============================================================================
MEDIUMpackages/twenty-utils/setup-dev-env.sh244# =============================================================================
Self-Referential Comments12 hits · 40 pts
SeverityFileLineSnippet
MEDIUMpackages/twenty-docker/scripts/install.sh71# Create a directory named twenty
MEDIUMpackages/twenty-server/scripts/ssl-generation/script.sh17# Create a directory to store the certificates
MEDIUMpackages/twenty-server/scripts/ssl-generation/script.sh36# Create a Certificate Signing Request (CSR) for the provided domain
MEDIUMpackages/twenty-server/scripts/ssl-generation/script.sh40# Create a configuration file for certificate extensions
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py401 # Create a highlight overlay
MEDIUM…les/code-interpreter/sandbox-scripts/pptx/rearrange.py108 # Create a new relationship in the destination slide for this image
MEDIUM…de-interpreter/sandbox-scripts/docx/validation/base.py767 # Create a clean copy
MEDIUM…de-interpreter/sandbox-scripts/docx/validation/base.py919 # Create a copy of the document to avoid modifying the original
MEDIUM…de-interpreter/sandbox-scripts/docx/validation/base.py298 ): # This file is not referenced by .rels
MEDIUM…l-metadata/create-standard-flat-skill-metadata.util.ts658# Create a record — arguments match the tool's inputSchema directly,
MEDIUM…es/ai/components/__stories__/AiChatMessage.stories.tsx68# Create the chart
MEDIUM.github/workflows/ci-breaking-changes.yaml245 # Create a temp directory to store current branch files
Deep Nesting31 hits · 28 pts
SeverityFileLineSnippet
LOW…odules/code-interpreter/sandbox-scripts/xlsx/recalc.py53
LOW…nterpreter/sandbox-scripts/pdf/fill_fillable_fields.py12
LOW…nterpreter/sandbox-scripts/pdf/fill_fillable_fields.py59
LOW…rpreter/sandbox-scripts/pdf/extract_form_field_info.py22
LOW…rpreter/sandbox-scripts/pdf/extract_form_field_info.py62
LOW…nterpreter/sandbox-scripts/pdf/check_bounding_boxes.py18
LOW…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py67
LOW…les/code-interpreter/sandbox-scripts/pptx/thumbnail.py321
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py149
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py140
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py280
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py362
LOW…les/code-interpreter/sandbox-scripts/pptx/inventory.py480
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py143
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py162
LOW…dules/code-interpreter/sandbox-scripts/pptx/replace.py214
LOW…-modules/code-interpreter/sandbox-scripts/docx/pack.py45
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py72
LOW…de-interpreter/sandbox-scripts/docx/validation/docx.py124
LOW…terpreter/sandbox-scripts/docx/validation/redlining.py139
LOW…terpreter/sandbox-scripts/docx/validation/redlining.py217
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py77
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py128
LOW…de-interpreter/sandbox-scripts/docx/validation/pptx.py243
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py186
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py277
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py388
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py486
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py522
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py688
LOW…de-interpreter/sandbox-scripts/docx/validation/base.py765
Verbosity Indicators14 hits · 23 pts
SeverityFileLineSnippet
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py176 # Step 1: DUPLICATE repeated slides
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py200 # Step 2: DELETE unwanted slides (work backwards)
LOW…les/code-interpreter/sandbox-scripts/pptx/rearrange.py209 # Step 3: REORDER to final sequence
LOW…es/cloudflare/controllers/dns-cloudflare.controller.ts33 // since notification are not scoped to a zone, we need to check if the zone is in the list of zones
LOW…odules/graphql/hooks/use-graphql-error-handler.hook.ts126 // Step 1: Process errors - extract original errors and convert to BaseGraphQLError
LOW…odules/graphql/hooks/use-graphql-error-handler.hook.ts191 // Step 2: Send errors to monitoring service (with stack traces)
LOW…odules/graphql/hooks/use-graphql-error-handler.hook.ts219 // Step 3: Transform errors for GraphQL response (clean GraphQL errors)
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts881### Step 1: Extract field information
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts886### Step 2: Create fill data JSON
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts895### Step 3: Fill the form
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts900### Step 4: Validate the output
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts1032### Step 1: Unpack
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts1037### Step 2: Edit XML directly
LOW…l-metadata/create-standard-flat-skill-metadata.util.ts1050### Step 3: Validate & Repack
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippet
HIGH…de-interpreter/sandbox-scripts/docx/validation/docx.py0run all validation checks and return true if all pass.
HIGH…de-interpreter/sandbox-scripts/docx/validation/pptx.py0run all validation checks and return true if all pass.
HIGH…de-interpreter/sandbox-scripts/docx/validation/base.py0run all validation checks and return true if all pass.
AI Slop Vocabulary4 hits · 8 pts
SeverityFileLineSnippet
MEDIUM…ty-website/src/lib/releases/generated-release-notes.ts150 "content": "\n# Workflow improvements\n\nYou now have the ability to duplicate nodes, change node types, and use a s
MEDIUM…ty-website/src/lib/releases/generated-release-notes.ts262 "content": "\n# View Groups\n\nAdded \"Group By\" in tables to better organize entries, like grouping companies by i
MEDIUM…ty-website/src/lib/releases/generated-release-notes.ts350 "content": "\n# Enhanced Timeline\n\nThe timeline on every record page has been significantly improved. It now provi
MEDIUM…ty-website/src/lib/releases/generated-release-notes.ts374 "content": "\n# More Field Types, More Power\n\nEnhance your data handling capabilities with the addition of four ne
Synthetic Comment Markers1 hit · 8 pts
SeverityFileLineSnippet
HIGHpackages/twenty-companion/src/main.js933 // Create content with the AI-generated summary
Slop Phrases3 hits · 6 pts
SeverityFileLineSnippet
MEDIUM…-ui/src/feedback/loader/__stories__/Loader.stories.tsx36 // @ts-expect-error: Custom CSS variable for demonstration purposes
MEDIUM…ty-website/src/lib/releases/generated-release-notes.ts294 "content": "\n# Smart ⌘K\n\nWe started a major ⌘K revamp that now understands the context to display appropriate act
LOW…yout-widget/compute-my-first-dashboard-widgets.util.ts158 text: "Don't forget to replace the sample data with your own.",
Unused Imports4 hits · 4 pts
SeverityFileLineSnippet
LOW…nterpreter/sandbox-scripts/docx/validation/__init__.py5
LOW…nterpreter/sandbox-scripts/docx/validation/__init__.py6
LOW…nterpreter/sandbox-scripts/docx/validation/__init__.py7
LOW…nterpreter/sandbox-scripts/docx/validation/__init__.py8
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippet
LOWpackages/twenty-docker/docker-compose.dev.yml4# Usage:
Overly Generic Function Names1 hit · 1 pts
SeverityFileLineSnippet
LOWpackages/twenty-front/public/mockServiceWorker.js124async function handleRequest(event, requestId, requestInterceptedAt) {