The world's best AI personal assistant for email. Open source app to help you reach inbox zero fast.
This report presents the forensic synthetic code analysis of elie222/inbox-zero, a TypeScript project with 11,618 GitHub stars. SynthScan v2.0 examined 443,590 lines of code across 2505 source files, recording 2427 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 6.8 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
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.
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.
The scanner identified 2427 distinct pattern matches across 14 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.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | scripts/dev-setup.ts | 465 | function writeGeneratedEmulateConfig(baseUrl: string) { | CODE |
| LOW | scripts/dev-setup.ts | 907 | function assertSafeLocalDatabaseUrl(databaseUrl: string) { | CODE |
| LOW | scripts/dev-setup.ts | 916 | function assertSafeWorktreeDatabaseName(databaseName: string) { | CODE |
| LOW | scripts/dev-setup.ts | 991 | function resolveTemplateDatabaseUrl( | CODE |
| LOW | packages/image-proxy/src/proxy-service.ts | 252 | function getConfiguredSigningSecrets(config: ImageProxyConfig): string[] { | CODE |
| LOW | packages/image-proxy/src/proxy-service.ts | 261 | async function validateAssetProxySignatureAgainstSecrets({ | CODE |
| LOW | packages/image-proxy/src/proxy-url.ts | 51 | export async function validateAssetProxySignature({ | CODE |
| LOW | packages/image-proxy/src/node-safe-fetch.ts | 35 | export async function createSafeImageProxyFetch( | CODE |
| LOW | packages/image-proxy/src/node-safe-fetch.ts | 74 | export async function resolveSafeExternalHttpUrl( | CODE |
| LOW | packages/scheduling/src/index.ts | 268 | function isAlignedToAvailabilityGrid({ | CODE |
| LOW | packages/scheduling/src/index.ts | 311 | function roundUpToLocalIntervalGrid({ | CODE |
| LOW | packages/scheduling/src/index.ts | 333 | function isAlignedToLocalIntervalGrid({ | CODE |
| LOW | packages/tinybird-ai-analytics/src/query.ts | 58 | export async function getAiGenerationCountByEmailAccounts(options: { | CODE |
| LOW | packages/tinybird-ai-analytics/src/query.ts | 78 | export async function getAdminAiModelSpendByPeriod(options: { | CODE |
| LOW | packages/tinybird-ai-analytics/src/query.ts | 89 | export async function getAdminAiUserModelSpendByPeriod(options: { | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1142 | function cleanupOrphanedEnvironment( | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1309 | function updateServiceManifestSecrets(config: { | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1394 | function updateServiceManifestVariables(config: { | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1416 | function updateServiceManifestHttp(config: { domain?: string }): void { | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1441 | function resetServiceManifestVariables(): void { | CODE |
| LOW | packages/cli/src/setup-aws.ts | 1738 | function waitForEnvStackCompletion( | CODE |
| LOW | packages/cli/src/llm.ts | 66 | export function seedLlmPlaceholderCredentials( | CODE |
| LOW | packages/cli/src/llm.ts | 184 | async function promptOpenAICompatibleCreds(): Promise<{ | CODE |
| LOW | packages/cli/src/setup-terraform.ts | 723 | function getProviderDefaultLlmModel(provider: string): string | undefined { | CODE |
| LOW | packages/cli/src/aws-setup/ssm-urls.ts | 8 | export function ensureDatabaseUrlParameters( | CODE |
| LOW | packages/resend/emails/guest-booking-rescheduled.tsx | 21 | export default function GuestBookingRescheduledEmail({ | CODE |
| LOW | packages/resend/emails/host-booking-cancellation.tsx | 12 | export default function HostBookingCancellationEmail({ | CODE |
| LOW | packages/resend/emails/host-booking-rescheduled.tsx | 18 | export default function HostBookingRescheduledEmail({ | CODE |
| LOW | packages/resend/emails/host-booking-confirmation.tsx | 18 | export default function HostBookingConfirmationEmail({ | CODE |
| LOW | packages/resend/emails/guest-booking-confirmation.tsx | 21 | export default function GuestBookingConfirmationEmail({ | CODE |
| LOW | packages/resend/emails/meeting-briefing.tsx | 195 | export function generateMeetingBriefingSubject( | CODE |
| LOW | packages/resend/emails/summary.tsx | 455 | function groupArchivedEmailsByRule(archivedEmails: ArchivedEmailItem[]) { | CODE |
| LOW | apps/web/env-legacy-llms.ts | 141 | function getLegacyProviderDefaultModel( | CODE |
| LOW | …ization/[organizationId]/OrgAnalyticsConsentBanner.tsx | 15 | export function OrgAnalyticsConsentBanner() { | CODE |
| LOW | apps/web/app/(app)/[emailAccountId]/error.tsx | 5 | export default function EmailAccountErrorBoundary({ | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 8 | export function normalizeDraftReplyActions(actions: RuleFormAction[]) { | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 24 | export function denormalizeDraftReplyActions(actions: RuleFormAction[]) { | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 86 | export function buildVisibleDraftReplyGroups(actions: RuleFormAction[]) { | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 158 | export function getDraftReplyMessagingChannelIds({ | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 188 | export function buildDraftMessagingAction({ | CODE |
| LOW | …/(app)/[emailAccountId]/assistant/draftReplyActions.ts | 211 | function collectDraftMessagingIndexes( | CODE |
| LOW | …ilAccountId]/assistant/LearnedPatternExclusionHint.tsx | 9 | export function LearnedPatternExclusionHint({ | CODE |
| LOW | …s/web/app/(app)/[emailAccountId]/assistant/examples.ts | 29 | function processPromptsWithTerminology( | CODE |
| LOW | …p)/[emailAccountId]/assistant/RuleForm.render.test.tsx | 208 | function renderLabelRuleAndOpenActionTypeDropdown() { | CODE |
| LOW | …app/(app)/[emailAccountId]/assistant/ResultDisplay.tsx | 321 | export function getRuleResultReasonDisplay(reason: string): { | CODE |
| LOW | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 931 | function DraftReplyReviewChannelsSection({ | CODE |
| LOW | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 1116 | export function formatMessagingDestinationLabel( | CODE |
| LOW | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 1136 | function formatDraftReplyReviewChannelLabel(channel?: MessagingChannelOption) { | CODE |
| LOW | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 1265 | function formatDraftReplyDeliverySummary({ | CODE |
| LOW | …ailAccountId]/assistant/attachment-source-selection.ts | 23 | export function buildDriveSourceChildrenMap( | CODE |
| LOW | …ailAccountId]/assistant/attachment-source-selection.ts | 48 | export function applyAttachmentSourceSelection({ | CODE |
| LOW | …ailAccountId]/assistant/attachment-source-selection.ts | 73 | export function getAttachmentSourceNodeSelection({ | CODE |
| LOW | …eb/app/(app)/[emailAccountId]/assistant/RuleDialog.tsx | 155 | function transformRuleForDuplication( | CODE |
| LOW | …/[emailAccountId]/assistant/ActionAttachmentsField.tsx | 205 | function AttachmentSourcePickerDialog({ | CODE |
| LOW | …/web/app/(app)/[emailAccountId]/assistant/RuleForm.tsx | 886 | function restorePersistedActionSequence({ | CODE |
| LOW | …ntId]/assistant/settings/HiddenAiDraftLinksSetting.tsx | 14 | export function HiddenAiDraftLinksSetting() { | CODE |
| LOW | …/[emailAccountId]/assistant/settings/DigestSetting.tsx | 107 | export function DigestSettingsDialogContent({ | CODE |
| LOW | …untId]/assistant/settings/FollowUpRemindersSetting.tsx | 52 | function FollowUpRemindersSettingContent() { | CODE |
| LOW | …untId]/assistant/settings/FollowUpRemindersSetting.tsx | 125 | export function FollowUpSettingsDialogContent({ | CODE |
| LOW | …tId]/assistant/settings/SensitiveDataPolicySetting.tsx | 46 | export function SensitiveDataPolicySetting() { | CODE |
| 1246 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | .claude/skills/agent-browser/SKILL.md | 25 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | .claude/skills/agent-browser/SKILL.md | 41 | agent-browser fill @e1 "user@example.com" && agent-browser fill @e2 "password123" && agent-browser click @e3 | CODE |
| LOW | .claude/skills/agent-browser/SKILL.md | 211 | agent-browser fill @e1 "Jane Doe" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 132 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 151 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …aude/skills/agent-browser/references/authentication.md | 208 | agent-browser fill @e1 "user@example.com" | CODE |
| LOW | …laude/skills/agent-browser/references/snapshot-refs.md | 72 | agent-browser fill @e10 "user@example.com" | CODE |
| LOW | …/skills/agent-browser/references/session-management.md | 29 | agent-browser --session auth fill @e1 "user@example.com" | CODE |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 32 | # agent-browser fill @e1 "John Doe" # Text input | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 33 | # agent-browser fill @e2 "user@example.com" # Email input | COMMENT |
| LOW | packages/resend/emails/action-required.tsx | 154 | email: "user@example.com", | CODE |
| LOW | packages/resend/emails/reconnection.tsx | 143 | email: "user@example.com", | CODE |
| LOW | …ailAccountId]/assistant/bulk-run-rules-reducer.test.ts | 22 | from: "test@test.com", | CODE |
| LOW | …countId]/calendars/ConfigureBookingLinkDialog.test.tsx | 86 | email: "user@example.com", | CODE |
| LOW | apps/web/app/(app)/admin/GmailUrlConverter.tsx | 78 | placeholder="user@example.com" | CODE |
| LOW | apps/web/app/(app)/admin/AdminUserInfo.tsx | 56 | placeholder="user@example.com" | CODE |
| LOW | apps/web/app/(app)/admin/AdminHashEmail.tsx | 65 | placeholder="user@example.com" | CODE |
| LOW | …ps/web/app/api/chat/confirm-email-action/route.test.ts | 20 | email: "user@example.com", | CODE |
| LOW | …ps/web/app/api/chat/confirm-email-action/route.test.ts | 55 | email: "user@example.com", | CODE |
| LOW | …ps/web/app/api/chat/confirm-email-action/route.test.ts | 91 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 106 | emailAddress: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 116 | { emailAddress: "user@example.com", historyId: 123 }, | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 127 | emailAddress: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 138 | { emailAddress: "user@example.com", historyId: 123 }, | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 154 | emailAddress: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/webhook/route.test.ts | 174 | emailAddress = "user@example.com", | CODE |
| LOW | apps/web/app/api/google/linking/callback/route.test.ts | 128 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/linking/callback/route.test.ts | 179 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/google/linking/callback/route.test.ts | 205 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/admin/top-spenders/route.test.ts | 85 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/user/group/route.test.ts | 15 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/user/me/route.test.ts | 43 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/user/me/route.test.ts | 99 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/unsubscribe/route.test.ts | 27 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 138 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 144 | from: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 168 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 174 | from: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 198 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 205 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 242 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/route.test.ts | 249 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/clean/history/route.test.ts | 32 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 84 | const request = createMockRequest({ email: "user@example.com" }); | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 102 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 130 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 153 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 154 | loginHint: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 170 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 200 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 239 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 265 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/sso/signin/route.test.ts | 285 | email: "user@example.com", | CODE |
| LOW⚡ | apps/web/app/api/sso/signin/route.test.ts | 314 | email: "user@example.com", | CODE |
| LOW⚡ | apps/web/app/api/sso/signin/route.test.ts | 324 | email: "user@example.com", | CODE |
| LOW⚡ | apps/web/app/api/sso/signin/route.test.ts | 325 | loginHint: "user@example.com", | CODE |
| LOW⚡ | apps/web/app/api/sso/signin/route.test.ts | 332 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/resend/summary/archived-emails.test.ts | 124 | to: "user@example.com", | CODE |
| LOW | apps/web/app/api/resend/summary/route.test.ts | 40 | email: "user@example.com", | CODE |
| LOW | apps/web/app/api/resend/summary/route.test.ts | 102 | email: "user@example.com", | CODE |
| 429 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | copilot/environments/addons/rds.yml | 51 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 53 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 67 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 69 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 89 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 91 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 108 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 110 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 167 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/rds.yml | 169 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/environments/addons/addons.parameters.yml | 20 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/environments/addons/addons.parameters.yml | 22 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/environments/addons/addons.parameters.yml | 27 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/environments/addons/addons.parameters.yml | 29 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 66 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 68 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 89 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 91 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 104 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 106 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 125 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 127 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 161 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/environments/addons/elasticache-redis.yml | 163 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 51 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 53 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 64 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 66 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 85 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 87 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 113 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 115 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 127 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 129 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/templates/webhook-gateway.yml | 145 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/templates/webhook-gateway.yml | 147 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/templates/webhook-gateway.yml | 157 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | copilot/templates/webhook-gateway.yml | 159 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 177 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 179 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 192 | # ============================================================================= | COMMENT |
| MEDIUM | copilot/templates/webhook-gateway.yml | 194 | # ============================================================================= | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 32 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 34 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 54 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 56 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 76 | # ================================================================ | COMMENT |
| MEDIUM | …kills/agent-browser/templates/authenticated-session.sh | 78 | # ================================================================ | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 288 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 291 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 293 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 318 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 325 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 327 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 331 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 333 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 341 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 343 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 349 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | packages/cli/src/utils.test.ts | 351 | # ============================================================================= | COMMENT |
| 88 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 20 | # Step 1: Navigate to form | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 24 | # Step 2: Snapshot to discover form elements | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 29 | # Step 3: Fill form fields (customize these refs based on snapshot output) | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 46 | # Step 4: Wait for submission | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 50 | # Step 5: Verify result | COMMENT |
| LOW | .claude/skills/pr-loop/SKILL.md | 26 | ## Step 1: Add tasks to task list | COMMENT |
| LOW | .claude/skills/pr-loop/SKILL.md | 37 | ## Step 2: Review changes via subagent | COMMENT |
| LOW | .claude/skills/pr-loop/SKILL.md | 60 | ## Step 3: Fix review findings | COMMENT |
| LOW | .claude/skills/pr-loop/SKILL.md | 72 | ## Step 4: Commit and create PR | COMMENT |
| LOW | .claude/skills/pr-loop/SKILL.md | 100 | ## Step 5: Review-comment loop | COMMENT |
| LOW⚡ | .claude/skills/testing/e2e.md | 56 | ### Step 1: Determine Action | COMMENT |
| LOW⚡ | .claude/skills/testing/e2e.md | 64 | ### Step 2: Run Tests (if requested) | COMMENT |
| LOW⚡ | .claude/skills/testing/e2e.md | 74 | ### Step 3: Monitor Progress | COMMENT |
| LOW⚡ | .claude/skills/testing/e2e.md | 81 | ### Step 4: Debug Failures with Axiom | COMMENT |
| LOW | .claude/skills/testing/e2e.md | 137 | ### Step 5: Download Artifacts (on failure) | COMMENT |
| LOW⚡ | .claude/skills/testing/write-tests.md | 52 | ### Step 0: Determine Scope | COMMENT |
| LOW⚡ | .claude/skills/testing/write-tests.md | 60 | ### Step 1: Identify Test Targets | COMMENT |
| LOW⚡ | .claude/skills/testing/write-tests.md | 68 | ### Step 2: Create Test File | COMMENT |
| LOW | .claude/skills/testing/write-tests.md | 97 | ### Step 3: Run Tests | COMMENT |
| LOW | .claude/skills/testing/write-tests.md | 113 | ## Step 4: Summary | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 18 | ## Step 0: Environment setup | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 33 | ## Step 1: Plan the test | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 47 | ## Step 2: Set up test data | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 57 | ## Step 3: Execute the test | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 149 | ## Step 4: Report results | COMMENT |
| LOW | .claude/skills/test-feature/SKILL.md | 161 | ## Step 5: Persist (if appropriate) | COMMENT |
| LOW | .claude/skills/review/SKILL.md | 105 | ### Step 0: Determine Scope & Group Files | COMMENT |
| LOW | .claude/skills/review/SKILL.md | 124 | ### Step 1: Create Review Plan (TODO) | COMMENT |
| LOW | .claude/skills/review/SKILL.md | 138 | ### Step 2: Process Each Batch | COMMENT |
| LOW | .claude/skills/review/SKILL.md | 162 | ### Step 3: Summary & Options (After All Batches) | COMMENT |
| LOW | .claude/skills/review/SKILL.md | 188 | ### Step 4: Execute Fixes | COMMENT |
| LOW | .claude/skills/address-pr-comments/SKILL.md | 20 | # Step 1: Fetch comments | COMMENT |
| LOW | .claude/skills/address-pr-comments/SKILL.md | 37 | # Step 2: Create TODO list | COMMENT |
| LOW | .claude/skills/address-pr-comments/SKILL.md | 43 | # Step 3: For each comment | COMMENT |
| LOW | .claude/skills/address-pr-comments/SKILL.md | 68 | # Step 4: Resolve threads on GitHub | COMMENT |
| LOW | .claude/skills/create-pr/SKILL.md | 24 | ## Step 1: Check state (ONE command) | COMMENT |
| LOW | .claude/skills/create-pr/SKILL.md | 42 | ## Step 2: Commit + Push (`required_permissions: ['all']`) | COMMENT |
| LOW | .claude/skills/create-pr/SKILL.md | 56 | ## Step 3: Create PR (`required_permissions: ['all']`) | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 580 | // Step 12: Update addons.parameters.yml with RDS and Redis configuration | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 589 | // Step 13: Generate and store secrets in SSM | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 661 | // Step 17: Webhook gateway is stored in templates/ and only copied to addons/ when needed | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 665 | // Step 18: Deploy environment (creates VPC, RDS) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 120 | // Step 1: Check AWS prerequisites | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 162 | // Step 2: Get AWS profile | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 220 | // Step 3: Get AWS region | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 246 | // Step 4: Get environment name | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 270 | // Step 6: Select RDS instance size | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 288 | // Step 7: Get domain (optional) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 307 | // Step 8: Ask about webhook gateway (for firewalled deployments) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 361 | // Step 9: Google OAuth credentials (required) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 414 | // Step 10: Ask about Google Cloud integration if gcloud is available | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 449 | // Step 11: Select LLM provider | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 623 | // Step 14: Initialize Copilot app (if not already done) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 635 | // Step 15: Initialize environment | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 647 | // Step 16: Store secrets in SSM | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 776 | // Step 19: Initialize and deploy service | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 823 | // Step 20: Deploy webhook gateway addon (only if user requested it) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 898 | // Step 21: Configure Google Pub/Sub if integrated | COMMENT |
| LOW⚡ | packages/cli/src/setup-google.ts | 34 | // Step 1: Check prerequisites | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 52 | // Step 2: Ensure authentication | COMMENT |
| 155 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 20 | # Step 1: Navigate to form | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 24 | # Step 2: Snapshot to discover form elements | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 29 | # Step 3: Fill form fields (customize these refs based on snapshot output) | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 46 | # Step 4: Wait for submission | COMMENT |
| LOW⚡ | …aude/skills/agent-browser/templates/form-automation.sh | 50 | # Step 5: Verify result | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 580 | // Step 12: Update addons.parameters.yml with RDS and Redis configuration | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 589 | // Step 13: Generate and store secrets in SSM | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 661 | // Step 17: Webhook gateway is stored in templates/ and only copied to addons/ when needed | COMMENT |
| LOW⚡ | packages/cli/src/setup-aws.ts | 665 | // Step 18: Deploy environment (creates VPC, RDS) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 120 | // Step 1: Check AWS prerequisites | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 162 | // Step 2: Get AWS profile | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 220 | // Step 3: Get AWS region | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 246 | // Step 4: Get environment name | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 270 | // Step 6: Select RDS instance size | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 288 | // Step 7: Get domain (optional) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 307 | // Step 8: Ask about webhook gateway (for firewalled deployments) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 361 | // Step 9: Google OAuth credentials (required) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 414 | // Step 10: Ask about Google Cloud integration if gcloud is available | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 449 | // Step 11: Select LLM provider | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 623 | // Step 14: Initialize Copilot app (if not already done) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 635 | // Step 15: Initialize environment | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 647 | // Step 16: Store secrets in SSM | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 776 | // Step 19: Initialize and deploy service | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 823 | // Step 20: Deploy webhook gateway addon (only if user requested it) | COMMENT |
| LOW | packages/cli/src/setup-aws.ts | 898 | // Step 21: Configure Google Pub/Sub if integrated | COMMENT |
| LOW⚡ | packages/cli/src/setup-google.ts | 34 | // Step 1: Check prerequisites | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 52 | // Step 2: Ensure authentication | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 69 | // Step 3: Get project ID | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 89 | // Step 4: Get domain (needed for OAuth redirect URIs and Pub/Sub webhook) | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 112 | // Step 5: Enable required APIs | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 127 | // Step 6: OAuth Consent Screen guidance (if not skipped) | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 174 | // Step 7: OAuth Credentials guidance | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 241 | // Step 8: Pub/Sub setup (automated) | COMMENT |
| LOW | packages/cli/src/setup-google.ts | 286 | // Step 9: Output environment variables | COMMENT |
| LOW | apps/web/utils/calendar/handle-calendar-callback.ts | 35 | // Step 1: Validate OAuth callback parameters | COMMENT |
| LOW⚡ | apps/web/utils/calendar/handle-calendar-callback.ts | 74 | // Step 4: Verify user owns this email account | COMMENT |
| LOW⚡ | apps/web/utils/calendar/handle-calendar-callback.ts | 82 | // Step 5: Exchange code for tokens and get email | COMMENT |
| LOW⚡ | apps/web/utils/calendar/handle-calendar-callback.ts | 86 | // Step 6: Check if connection already exists | COMMENT |
| LOW⚡ | apps/web/utils/calendar/handle-calendar-callback.ts | 108 | // Step 7: Create calendar connection | COMMENT |
| LOW⚡ | apps/web/utils/calendar/handle-calendar-callback.ts | 118 | // Step 8: Sync calendars | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 131 | // Step 1: Download attachment | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 139 | // Step 2: Extract text (optional - some file types like images can be filed by filename alone) | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 228 | // Step 6: Determine target folder and drive connection | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 232 | // Step 6: Create folder if needed | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 253 | // Step 7: Determine if we should ask the user first | COMMENT |
| LOW⚡ | apps/web/utils/drive/filing-engine.ts | 256 | // Step 8: Upload file (unless low confidence - then we ask first) | COMMENT |
| LOW | apps/web/utils/drive/filing-engine.ts | 153 | // Step 3: Get saved filing folders (user-selected, not all folders) | COMMENT |
| LOW | apps/web/utils/drive/filing-engine.ts | 172 | // Step 4: Analyze with AI | COMMENT |
| LOW | apps/web/utils/drive/filing-engine.ts | 198 | // Step 5: Handle skip action | COMMENT |
| LOW | apps/web/utils/drive/filing-engine.ts | 272 | // Step 9: Create or replace DocumentFiling record | COMMENT |
| LOW | apps/web/utils/drive/filing-engine.ts | 304 | // Step 10: Send notification email as a reply to the source email | COMMENT |
| LOW | apps/web/utils/drive/handle-drive-callback.ts | 45 | // Step 1: Validate OAuth callback parameters | COMMENT |
| LOW⚡ | apps/web/utils/drive/handle-drive-callback.ts | 82 | // Step 3: Update redirect URL to include emailAccountId | COMMENT |
| LOW⚡ | apps/web/utils/drive/handle-drive-callback.ts | 85 | // Step 4: Verify user owns this email account | COMMENT |
| LOW⚡ | apps/web/utils/drive/handle-drive-callback.ts | 93 | // Step 5: Exchange code for tokens and get email | COMMENT |
| LOW⚡ | apps/web/utils/drive/handle-drive-callback.ts | 97 | // Step 6: Create or update drive connection | COMMENT |
| LOW⚡ | apps/web/__tests__/e2e/labeling/google-labeling.test.ts | 488 | // Step 1: Create label | COMMENT |
| LOW⚡ | apps/web/__tests__/e2e/labeling/google-labeling.test.ts | 495 | // Step 2: Verify label exists in list | COMMENT |
| LOW⚡ | apps/web/__tests__/e2e/labeling/google-labeling.test.ts | 502 | // Step 3: Apply label to message | COMMENT |
| LOW⚡ | apps/web/__tests__/e2e/labeling/google-labeling.test.ts | 511 | // Step 4: Verify label on message | COMMENT |
| 122 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | apps/web/utils/organizations/rules.test.ts | 259 | const ruleIds = prisma.rule.create.mock.calls.map( | CODE |
| CRITICAL | apps/web/utils/gmail/filter.ts | 105 | options.gmail.users.settings.filters.list({ userId: "me" }), | CODE |
| CRITICAL | …/eval/assistant-chat-microsoft-search-feedback.test.ts | 518 | prisma.executedRule.findMany.mock.calls.some( | CODE |
| CRITICAL | …/eval/assistant-chat-microsoft-search-feedback.test.ts | 665 | prisma.executedRule.findMany.mock.calls.some( | CODE |
| CRITICAL | …/eval/assistant-chat-microsoft-search-feedback.test.ts | 812 | prisma.executedRule.findMany.mock.calls.some( | CODE |
| CRITICAL | …/eval/assistant-chat-microsoft-search-feedback.test.ts | 945 | prisma.executedRule.findMany.mock.calls.some( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 272 | // For labelId field, only allow variables if AI generated is toggled on | COMMENT |
| HIGH | …b/app/(app)/[emailAccountId]/assistant/ActionSteps.tsx | 371 | // For AI-generated labelId, read from .name instead of .value | COMMENT |
| HIGH | apps/web/utils/ai/choose-rule/choose-args.ts | 188 | // Merge variables for each field that has AI-generated content | COMMENT |
| HIGH | apps/web/utils/ai/choose-rule/choose-args.ts | 266 | // Skip if no AI-generated fields are needed | COMMENT |
| HIGH | apps/web/utils/follow-up/cleanup.ts | 74 | // Only delete drafts that are tracked in our database (AI-generated) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/docker-compose.local.yml | 1 | # docker-compose.local.yml - Run locally built inbox-zero image with dependencies | COMMENT |
| LOW | docker/scripts/run-local.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/scripts/publish-ghcr.sh | 1 | #!/bin/bash | COMMENT |
| LOW | docker/scripts/publish-ghcr.sh | 21 | # ./docker/scripts/publish-ghcr.sh --local test # build locally with custom tag | COMMENT |
| LOW | copilot/environments/addons/rds.yml | 1 | # RDS PostgreSQL Database for Inbox Zero | COMMENT |
| LOW | copilot/environments/addons/addons.parameters.yml | 1 | # Parameters for environment addons | COMMENT |
| LOW | copilot/environments/addons/addons.parameters.yml | 21 | # RDS PostgreSQL Configuration | COMMENT |
| LOW | copilot/environments/addons/elasticache-redis.yml | 1 | # ElastiCache Redis Replication Group for Inbox Zero ECS | COMMENT |
| LOW | copilot/templates/webhook-gateway.yml | 1 | # API Gateway HTTP API with JWT Authorization for Google Pub/Sub Webhooks | COMMENT |
| LOW | …ude/skills/agent-browser/templates/capture-workflow.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …aude/skills/agent-browser/templates/form-automation.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …aude/skills/agent-browser/templates/form-automation.sh | 21 | agent-browser open "$FORM_URL" | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 1 | #!/bin/bash | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 81 | # | COMMENT |
| LOW | …kills/agent-browser/templates/authenticated-session.sh | 101 | # # Save state for future runs | COMMENT |
| LOW | scripts/run-e2e-local.sh | 1 | #!/bin/bash | COMMENT |
| LOW | packages/resend/src/send.tsx | 141 | // unsubscribeToken, | COMMENT |
| LOW | .github/workflows/claude-code-review.yml | 41 | # Remove direct_prompt since we're using @claude mentions | COMMENT |
| LOW | .github/workflows/claude-code-review.yml | 61 | # - For tests: Coverage, edge cases, and test quality | COMMENT |
| LOW | .github/workflows/claude.yml | 41 | actions: read | COMMENT |
| LOW | .github/workflows/claude.yml | 61 | # Optional: Custom environment variables for Claude | COMMENT |
| LOW | …/app/api/user/categorize/senders/batch/handle-batch.ts | 101 | emailAccountId, | COMMENT |
| LOW | apps/web/app/api/lemon-squeezy/webhook/route.ts | 321 | }); | COMMENT |
| LOW | apps/web/utils/categories.ts | 41 | // WORK: { name: "Work", enabled: false, description: "Professional contacts and work-related communications" }, | COMMENT |
| LOW | apps/web/utils/announcements.tsx | 21 | export const ANNOUNCEMENTS: Announcement[] = [ | COMMENT |
| LOW | apps/web/utils/announcements.tsx | 41 | // }, | COMMENT |
| LOW | apps/web/utils/mcp/integrations.ts | 61 | serverUrl: "https://mcp.monday.com/mcp", | COMMENT |
| LOW | apps/web/utils/mcp/integrations.ts | 81 | // "get_type_details", | COMMENT |
| LOW | apps/web/utils/mcp/integrations.ts | 121 | // "crm.objects.companies.read", | COMMENT |
| LOW | …eb/utils/ai/choose-rule/ai-detect-recurring-pattern.ts | 121 | COMMENT | |
| LOW | apps/web/utils/actions/premium.ts | 221 | }); | COMMENT |
| LOW | apps/web/utils/gmail/scopes.ts | 21 | // "https://www.googleapis.com/auth/calendar.settings", // For modifying calendar settings | COMMENT |
| LOW | apps/web/utils/outlook/client.ts | 161 | "Microsoft refresh token failed - user may need to reconnect", | COMMENT |
| LOW | apps/web/components/ui/sidebar.tsx | 401 | // return ( | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | apps/web/app/api/admin/top-spenders/route.ts | 27 | async function getData() { | CODE |
| LOW | apps/web/app/api/user/messaging-channels/route.ts | 27 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | …i/user/messaging-channels/[channelId]/targets/route.ts | 26 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/executed-rules/batch/route.ts | 10 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/meeting-briefs/route.ts | 15 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/meeting-briefs/history/route.ts | 18 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/calendars/route.ts | 14 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/calendar/upcoming-events/route.ts | 23 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/booking-links/route.ts | 15 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/availability/route.ts | 15 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/draft-actions/route.ts | 16 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/organization-membership/route.ts | 19 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/persona/route.ts | 15 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/drive/source-items/route.ts | 26 | async function getData({ | CODE |
| LOW | …eb/app/api/user/drive/source-items/[folderId]/route.ts | 38 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/drive/connections/route.ts | 17 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/user/drive/folders/route.ts | 23 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/drive/folders/[folderId]/route.ts | 34 | async function getData({ | CODE |
| LOW | apps/web/app/api/user/automation-jobs/route.ts | 13 | async function getData({ emailAccountId }: { emailAccountId: string }) { | CODE |
| LOW | apps/web/app/api/mcp/integrations/route.ts | 13 | async function getData(emailAccountId: string) { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/e2e-flows.yml | 3 | # This workflow runs comprehensive E2E tests with real email accounts. | COMMENT |
| MEDIUM | .github/workflows/claude-code-review.yml | 44 | # - Code quality and best practices | COMMENT |
| MEDIUM | .github/workflows/claude-code-review.yml | 60 | # - For React components: Performance, accessibility, and best practices | COMMENT |
| MEDIUM | .github/workflows/claude-code-review.yml | 67 | # 'Please provide a thorough code review focusing on our coding standards and best practices.' }} | COMMENT |
| MEDIUM | .github/workflows/ai-evals.yml | 83 | # Minimal env vars required for test harness | COMMENT |
| MEDIUM | apps/web/utils/parse/calender-event.ts | 181 | // This is a simplistic approach - for production code, you'd want more robust parsing | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …app)/[emailAccountId]/assistant/rule/[ruleId]/page.tsx | 20 | These rules were AI generated, feel free to adjust them to your | CODE |
| MEDIUM | …egration/reply-context-search-thread-precedent.test.ts | 169 | I've assembled it all and the control panel for the rising desk just reads "RsT". I'm unable to raise or lower the desk. | CODE |
| MEDIUM | …egration/reply-context-search-thread-precedent.test.ts | 251 | I've assembled it all and the control panel for the rising desk just reads "RsT". I'm unable to raise or lower the desk. | CODE |
| MEDIUM | …egration/reply-context-search-thread-precedent.test.ts | 258 | I've assembled it all and the control panel for the rising desk just reads "RsT". I'm unable to raise or lower the desk. | CODE |
| MEDIUM | …s/web/__tests__/ai-regression/ai-writing-style.test.ts | 60 | "Here's the report you requested. Let me know if you need anything else.", | CODE |
| MEDIUM | …__/ai-regression/reply/reply-context-collector.test.ts | 63 | "Attached is your March invoice. Let me know if you need more.", | CODE |
| MEDIUM⚡ | …ps/web/__tests__/e2e/flows/follow-up-reminders.test.ts | 219 | body: "Thanks! Can you please confirm you received this and let me know if you need anything else?", | CODE |
| MEDIUM⚡ | …ps/web/__tests__/e2e/flows/follow-up-reminders.test.ts | 586 | body: "Thanks! Can you please confirm you received this and let me know if you need anything else?", | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/docker-compose.local.yml | 3 | # Usage: | COMMENT |
| LOW | docker/scripts/run-local.sh | 7 | # Usage: | COMMENT |
| LOW | docker/scripts/publish-ghcr.sh | 13 | # Usage: | COMMENT |
| LOW | scripts/run-e2e-local.sh | 5 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/scripts/run-local.sh | 51 | # Check if image exists locally | COMMENT |
| LOW | charts/inbox-zero/values.yaml | 86 | # Set NEXT_PUBLIC_BASE_URL to the public URL users and OAuth providers will use. | COMMENT |
| LOW | scripts/run-e2e-local.sh | 109 | # Check if tunnel is up via the API (cache response to avoid redundant calls) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …eb/__tests__/ai-regression/ai-meeting-briefing.test.ts | 19 | const TIMEOUT = 60_000; // Longer timeout for agentic flow with research | CODE |