Repository Analysis

Uniswap/interface

🦄 Open source interfaces for the Uniswap protocol

4.0 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of Uniswap/interface, a TypeScript project with 5,523 GitHub stars. SynthScan v2.0 examined 929,556 lines of code across 8209 source files, recording 3062 pattern matches distributed across 16 syntactic categories. The overall adjusted score of 4.0 places this repository in the Likely human-written band.

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

4.0
Adjusted Score
4.0
Raw Score
100%
Time Factor
2026-07-31
Last Push
5.5K
Stars
TypeScript
Language
929.6K
Lines of Code
8.2K
Files
3.1K
Pattern Hits
2026-08-02
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

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

Score History

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

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

Severity Breakdown

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

CRITICAL 5HIGH 25MEDIUM 118LOW 2914

Directory Score Breakdown

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

Pattern Findings

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

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

Hyper-Verbose Identifiers2640 hits · 2696 pts
SeverityFileLineSnippetContext
LOWoxlint.config.ts270export function restrictedImportPatternsForUniversePackage(packageName: string) {CODE
LOWdangerfile.ts56function checkGeneralizedHookFiles() {CODE
LOWconfig/oxlint-plugins/universe-custom.js63 function getNearestJSXAncestorName(node) {CODE
LOWconfig/oxlint-plugins/universe-custom.js216 function isPercentageTemplateLiteral(node) {CODE
LOWconfig/oxlint-plugins/universe-custom.js956function getPhysicalFilenameForBoundary(context) {CODE
LOWconfig/oxlint-plugins/universe-custom.js968function moduleImportSuffixForBoundary(source, boundary) {CODE
LOWconfig/oxlint-plugins/universe-custom.js1167function isDirectViemEthersAllowlisted(physicalPath) {CODE
LOWscripts/check-podfile-lock.ts138function readPackageDependencyNames(packageJsonPath: string): string[] {CODE
LOWpackages/uniswap/src/contexts/UniswapContext.tsx249export function useSignDelegationAuthorization(): SignDelegationAuthorizationFn | undefined {CODE
LOW…ages/uniswap/src/extension/useIsChromeWindowFocused.ts41export function useIsChromeWindowFocusedWithTimeout(timeoutInMs: number): boolean {CODE
LOW…nces/implementations/createDialogPreferencesService.ts16export function createDialogPreferencesService(ctx: DialogPreferencesServiceContext): DialogPreferencesService {CODE
LOWpackages/uniswap/src/constants/addresses.ts38export function getWrappedNativeAddressWithThrow(chainId: UniverseChainId): string {CODE
LOWpackages/uniswap/src/features/settings/constants.ts26export function deviceAccessTimeoutToMinutes(timeout: DeviceAccessTimeout): number | undefined {CODE
LOWpackages/uniswap/src/features/settings/hooks.ts12export function useHideSmallBalancesSetting(): boolean {CODE
LOWpackages/uniswap/src/features/settings/hooks.ts22export function useHideReportedActivitySetting(): boolean {CODE
LOWpackages/uniswap/src/features/settings/hooks.ts37export function useTestnetModeBannerHeight(): number {CODE
LOW…/settings/balances/PortfolioBalanceSettingsContent.tsx18export function PortfolioBalanceSettingsContent(): JSX.Element {CODE
LOWpackages/uniswap/src/features/reporting/reports.ts113export function submitTokenWarningDataReport({CODE
LOWpackages/uniswap/src/features/reporting/reports.ts220export function submitPortfolioDataReport({CODE
LOW…/features/prices/isRemotePriceServiceSupportedChain.ts8export function isRemotePriceServiceSupportedChain(chainId: number): boolean {CODE
LOW…niswap/src/features/gas/convertGasFeeToDisplayValue.ts15export function convertGasFeeToDisplayValue({CODE
LOWpackages/uniswap/src/features/gas/utils.ts62export function applyNativeTokenPercentageBuffer(CODE
LOWpackages/uniswap/src/features/gas/utils.ts93function getNativeCurrencyTotalSpend({CODE
LOWpackages/uniswap/src/features/gas/utils.ts115export function hasSufficientFundsIncludingGas(params: {CODE
LOWpackages/uniswap/src/features/gas/utils.ts253export async function estimateGasWithClientSideProvider({CODE
LOWpackages/uniswap/src/features/gas/shiftedGasToken.ts41export function hasSufficientFundsIncludingShiftedGasToken({CODE
LOWpackages/uniswap/src/features/gas/shiftedGasToken.ts83export function convertShiftedGasFeeForDisplay(gasFeeRaw: string, decimalShift: bigint): string {CODE
LOWpackages/uniswap/src/features/gas/hooks.ts104export function useUSDCurrencyAmountOfGasFee(CODE
LOWpackages/uniswap/src/features/gas/hooks.ts144export function useFormattedUniswapXGasFeeInfo(CODE
LOWpackages/uniswap/src/features/gas/hooks.ts178export function useGasFeeHighRelativeToValue(CODE
LOWpackages/uniswap/src/features/gas/utils/cancel.ts33export function createClassicCancelRequest(transaction: TransactionDetails): providers.TransactionRequest {CODE
LOWpackages/uniswap/src/features/gas/utils/cancel.ts45export function calculateCancellationGasFee(params: {CODE
LOWpackages/uniswap/src/features/gas/utils/cancel.ts77export function calculateClassicCancellationGas(CODE
LOWpackages/uniswap/src/features/gas/utils/cancel.ts149export function calculateUniswapXCancellationGas(CODE
LOWpackages/uniswap/src/features/gas/utils/cancel.ts168function getCancellationGasFeeDisplayValue({CODE
LOW…eatures/gas/components/CrosschainNotSupportedModal.tsx26export function CrosschainNotSupportedModal({ isOpen, onClose }: CrosschainNotSupportedModalProps): JSX.Element {CODE
LOW…omponents/NetworkCostEditor/useRecommendedGasFields.ts38export function getRecommendedGasFieldsFromQuoteGas(args: {CODE
LOW…nents/NetworkCostEditor/useGasOverridesWarningState.ts37export function useGasOverridesWarningState({CODE
LOW…ts/NetworkCostEditor/buildGasServiceUrgencyOverride.ts25export function buildGasServiceUrgencyOverride({CODE
LOW…ap/src/features/gas/hooks/useCancellationGasFeeInfo.ts37export function useCancellationGasFeeInfo(CODE
LOW…/src/features/gas/hooks/useIsCustomGasFlowAvailable.ts25export function useIsCustomGasFlowAvailable(): boolean {CODE
LOW…ap/src/features/gas/hooks/useTradingApiGasOverrides.ts27export function useTradingApiGasOverrides(args: {CODE
LOW…p/src/features/gas/hooks/useEnableCustomGasFeeEntry.ts6export function useEnableCustomGasFeeEntry(): boolean {CODE
LOW…p/src/features/gas/hooks/useEnableCustomGasFeeEntry.ts10export function useSetEnableCustomGasFeeEntry(): (enabled: boolean) => void {CODE
LOW…es/uniswap/src/features/gas/hooks/useMaxAmountSpend.ts100function convertGasFeeToGasTokenUnits({CODE
LOW…es/uniswap/src/features/gas/hooks/useMaxAmountSpend.ts152export function useLowBalanceWarningGasPercentage(): number {CODE
LOW…rc/features/gas/hooks/usePlanCancellationGasFeeInfo.ts28export function usePlanCancellationGasFeeInfo(CODE
LOWpackages/uniswap/src/features/dataApi/searchTokens.ts65export function useMultichainSearchTokens({CODE
LOWpackages/uniswap/src/features/dataApi/searchTokens.ts89export function filterMultichainResultsToChain(CODE
LOWpackages/uniswap/src/features/dataApi/searchAuctions.ts46function getAuctionAddressFromAuctionId(auctionId: string): string | undefined {CODE
LOWpackages/uniswap/src/features/dataApi/searchAuctions.ts87async function fetchOverrideMatchedAuctions(CODE
LOWpackages/uniswap/src/features/dataApi/searchAuctions.ts112function getAuctionOptionTokenMetadata({CODE
LOWpackages/uniswap/src/features/dataApi/searchAuctions.ts134export function searchAuctionToAuctionOption({CODE
LOWpackages/uniswap/src/features/dataApi/searchAuctions.ts164export function auctionWithStatsToAuctionOption({CODE
LOW…tures/dataApi/tokenDetails/useTokenPriceHistoryRest.ts62function selectPriceHistoryEntries(CODE
LOW…c/features/dataApi/tokenDetails/useTokenDetailsData.ts235function selectMultichainMarketStatsData(CODE
LOW…tures/dataApi/tokenDetails/legacyMarketDataAdapters.ts41export function adaptLegacyProjectMarketData(CODE
LOW…ap/src/features/dataApi/tokenProjects/tokenProjects.ts19export function useTokenProjectsByCurrencyId(CODE
LOW…ap/src/features/dataApi/tokenProjects/tokenProjects.ts56function formatTokenProjectsByCurrencyId(CODE
LOW…ap/src/features/dataApi/tokenProjects/tokenProjects.ts80function hasCurrencyInfoForCurrencyId(currencyInfos: CurrencyInfo[], currencyId: CurrencyId): boolean {CODE
2580 more matches not shown…
Decorative Section Separators108 hits · 324 pts
SeverityFileLineSnippetContext
MEDIUMoxlint.config.ts636 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts638 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts640 // ── Migration files: relax type rules ─────────────────────────────COMMENT
MEDIUMoxlint.config.ts678 // ── Storybook: allow alerts ───────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts685 // ── JavaScript files: allow console ───────────────────────────────COMMENT
MEDIUMoxlint.config.ts693 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts695 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts697 // ── apps/cli, config-cli ──────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts86// ── Shared no-restricted-imports definitions ──────────────────────────COMMENT
MEDIUMoxlint.config.ts280// ── Shared no-restricted-syntax selectors ─────────────────────────────COMMENT
MEDIUMoxlint.config.ts338// ── Shared override fragments ────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts375 // ── complexity ──────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts390 // ── correctness ────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts439 // ── security ───────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts446 // ── style ──────────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts529 // ── additional rules ───────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts547 // ── suspicious ─────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts591 // ── jsPlugin rules (excluded when ENABLE_FAST_LINT=true) ──────────COMMENT
MEDIUMoxlint.config.ts651 // ── Saga files ──────────────────────COMMENT
MEDIUMoxlint.config.ts662 // ── Logger, scripts, devtools: allow console ──────────────────────COMMENT
MEDIUMoxlint.config.ts738 // ── apps/dev-portal ───────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts767 // ── apps/extension ────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts867 // ── apps/mission-control ──────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts913 // ── apps/mobile ───────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts984 // ── apps/web ──────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1169 // ── labs ──────────────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1186 // ── labs/workbench ────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1218 // ── packages/uniswap ──────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1241 // ── packages/wallet ───────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1264 // ── packages/ui ───────────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1302 // ── packages/utilities ────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1317 // ── packages/datadog-cloud ────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1326 // ── packages/prices ───────────────────────────────────────────────COMMENT
MEDIUMoxlint.config.ts1344 // ── @universe/* packages with standard pattern ────────────────────COMMENT
MEDIUMoxlint.config.ts1367 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts1369 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts1420 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMoxlint.config.ts1423 // ═══════════════════════════════════════════════════════════════════COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js13// ── Utilities ──────────────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js34// ── no-unwrapped-t ─────────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js107// ── custom-map-sort ────────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js155// ── no-hex-string-casting ──────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js198// ── no-transform-percentage-strings ────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js335// ── enforce-query-options-result ────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js455// ── no-redux-modals ────────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js502// ── no-relative-import-paths ───────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js582// ── no-nested-component-definitions ──────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js716// ── jsx-prop-order ──────────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js821// ── enum-member-naming ─────────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js848// ── no-tolowercase-address-currencyid ──────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js903// ── no-platform-gate-in-chain-flags ──────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js947// ── import-boundary (JSON) ─────────────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js1096// ── no-direct-viem-ethers-import ───────────────────────────────────────COMMENT
MEDIUMconfig/oxlint-plugins/universe-custom.js1221// ── Plugin export ──────────────────────────────────────────────────────COMMENT
MEDIUMscripts/check-runtime-versions.sh18# ============================================COMMENT
MEDIUMscripts/check-runtime-versions.sh20# ============================================COMMENT
MEDIUMscripts/check-runtime-versions.sh76# ============================================COMMENT
MEDIUMscripts/check-runtime-versions.sh78# ============================================COMMENT
MEDIUM…p/src/features/transactions/swap/plan/planSaga.test.ts20// ── Test constants ──────────────────────────────────────────────────────COMMENT
MEDIUM…p/src/features/transactions/swap/plan/planSaga.test.ts35// ── Mock tracking ───────────────────────────────────────────────────────COMMENT
48 more matches not shown…
Structural Annotation Overuse90 hits · 181 pts
SeverityFileLineSnippetContext
LOW.agents/skills/argent-react-native-profiler/SKILL.md79### Step 1: Start profilingCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md93### Step 2: Stop and collectCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md98### Step 3: AnalyzeCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md108### Step 4: Assess resultsCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md112### Step 5: Present findings and ask about next stepsCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md116### Step 6: Drill-down investigation (iterative)COMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md129### Step 7: Reload a previous sessionCOMMENT
LOW.agents/skills/argent-react-native-profiler/SKILL.md140### Step 8: Apply fix and re-profileCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md43### Step 0: Ensure the target app is runningCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md54### Step 1: Start recordingCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md59### Step 2: Stop and exportCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md63### Step 3: AnalyzeCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md67### Step 4: Present findings and ask about next stepsCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md71### Step 5: Drill-down investigationCOMMENT
LOW.agents/skills/argent-native-profiler/SKILL.md75### Step 6: Reload previous sessionsCOMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts174 // Step 1: Sign the EIP-7702 authorizationCOMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts182 // Step 2: Sign the full EIP-7702 transaction (backend handles type-4 signing + serialization)COMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts247 // Step 3: Submit the fully signed EIP-7702 transactionCOMMENT
LOW…ures/favorites/hooks/useToggleFavoriteCallback.test.ts141 // Step 1: simulate the context-menu flow on Arbitrum USDC — selector says "not favorited",COMMENT
LOW…ures/favorites/hooks/useToggleFavoriteCallback.test.ts151 // Step 2: given the resulting stored state, the selector must report favorited regardless ofCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts52 // Step 1: Check skip flagCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts57 // Step 2: Parse the inputCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts60 // Step 3: Validate the data structureCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts67 // Step 4: Build the quote request from validated inputCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts70 // Step 5: Flatten the result to match the expected return typeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts83 // Step 1: Prepare trade inputCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts86 // Step 2: Early exit if input is nullCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts91 // Step 3: Build quote request with all paramsCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts95 // Step 4: Fetch quote from APICOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts100 // Step 5: Transform quote to tradeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts124 // Step 1: validate indicative quote requestCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts130 // Step 2: build indicative quote requestCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts134 // Step 3: Fetch indicative quote from APICOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts137 // Step 4: Validate and transform to IndicativeTradeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts172 // Step 1: Early exit if skippedCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts177 // Step 2: Parse input into structured formatCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts180 // Step 3: Validate all required fields are presentCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts53 // Step 1: Prepare trade inputCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts57 // Step 2: Early exit if quote args are nullCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts64 // Step 3: Build quote request with all paramsCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts67 // Step 4: Fetch quote from APICOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts70 // Step 5: Transform quote to tradeCOMMENT
LOWpackages/config-cli/src/commands/push.ts22 // Step 1: read + parse the local .env file. readDotenvFile treats a missing fileCOMMENT
LOWpackages/config-cli/src/commands/push.ts31 // Step 2: build the config client (handles auth + dev overrides).COMMENT
LOWpackages/config-cli/src/commands/push.ts35 // Step 3: warn the user about migration-only intent and confirm.COMMENT
LOWpackages/config-cli/src/commands/push.ts48 // Step 4: push each entry. Each call is independent on the backend (no transaction)COMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts275 // Step 1: Find proofCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts280 // Step 2: Verify the proof is validCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts284 // Step 3: Check the hash meets difficulty requirementCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts287 // Step 4: Format for submissionCOMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts465 // Step 1: If we need to request Uniswap gas sponsorship, fill paymaster fields here.COMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts482 // Step 2: Sign (EIP-712 + Calibur encoding). The 7702 auth is bundled into the 4337COMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts489 // Step 3: Submit to bundler via UniRPCCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts41 // Step 1: EIP-712 typed data signing over the PackedUserOperation.COMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts53 // Step 2: Calibur signature encodingCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts56 // Step 3: the 7702 auth is bundled into the 4337 request up front (round-trips onCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts65 // Step 4: Rebuild the final signed UserOperation (preserving any round-tripped eip7702Auth).COMMENT
LOWpackages/notifications/README.md174// Step 1: User sees welcome bannerCOMMENT
LOWpackages/notifications/README.md188// Step 2: Detailed modal (stored as "chained" until triggered)COMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts47 // Step 1: Build dependency graph and identify roots using topological analysisCOMMENT
30 more matches not shown…
Verbosity Indicators75 hits · 150 pts
SeverityFileLineSnippetContext
LOWpackages/uniswap/src/contexts/UniswapContext.tsx71 // some wallets don't support UniswapX, so we need to check if it's supported (mismatch account)COMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts174 // Step 1: Sign the EIP-7702 authorizationCOMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts182 // Step 2: Sign the full EIP-7702 transaction (backend handles type-4 signing + serialization)COMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts247 // Step 3: Submit the fully signed EIP-7702 transactionCOMMENT
LOW…ures/favorites/hooks/useToggleFavoriteCallback.test.ts141 // Step 1: simulate the context-menu flow on Arbitrum USDC — selector says "not favorited",COMMENT
LOW…ures/favorites/hooks/useToggleFavoriteCallback.test.ts151 // Step 2: given the resulting stored state, the selector must report favorited regardless ofCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts52 // Step 1: Check skip flagCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts57 // Step 2: Parse the inputCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts60 // Step 3: Validate the data structureCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts67 // Step 4: Build the quote request from validated inputCOMMENT
LOW…tions/swap/hooks/useTrade/createGetQuoteRequestArgs.ts70 // Step 5: Flatten the result to match the expected return typeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts83 // Step 1: Prepare trade inputCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts86 // Step 2: Early exit if input is nullCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts91 // Step 3: Build quote request with all paramsCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts95 // Step 4: Fetch quote from APICOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts100 // Step 5: Transform quote to tradeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts124 // Step 1: validate indicative quote requestCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts130 // Step 2: build indicative quote requestCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts134 // Step 3: Fetch indicative quote from APICOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts137 // Step 4: Validate and transform to IndicativeTradeCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts172 // Step 1: Early exit if skippedCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts177 // Step 2: Parse input into structured formatCOMMENT
LOW…sactions/swap/services/tradeService/evmTradeService.ts180 // Step 3: Validate all required fields are presentCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts53 // Step 1: Prepare trade inputCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts57 // Step 2: Early exit if quote args are nullCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts64 // Step 3: Build quote request with all paramsCOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts67 // Step 4: Fetch quote from APICOMMENT
LOW…sactions/swap/services/tradeService/svmTradeService.ts70 // Step 5: Transform quote to tradeCOMMENT
LOWpackages/ui/src/components/buttons/Button/Button.tsx40 // We need to check if the children is a string, a Trans tag, or a custom component that likely renders a Trans tag, iCOMMENT
LOWpackages/config-cli/src/commands/push.ts22 // Step 1: read + parse the local .env file. readDotenvFile treats a missing fileCOMMENT
LOWpackages/config-cli/src/commands/push.ts31 // Step 2: build the config client (handles auth + dev overrides).COMMENT
LOWpackages/config-cli/src/commands/push.ts35 // Step 3: warn the user about migration-only intent and confirm.COMMENT
LOWpackages/config-cli/src/commands/push.ts48 // Step 4: push each entry. Each call is independent on the backend (no transaction)COMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts275 // Step 1: Find proofCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts280 // Step 2: Verify the proof is validCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts284 // Step 3: Check the hash meets difficulty requirementCOMMENT
LOW…s/sessions/src/challenge-solvers/hashcash/core.test.ts287 // Step 4: Format for submissionCOMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts465 // Step 1: If we need to request Uniswap gas sponsorship, fill paymaster fields here.COMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts482 // Step 2: Sign (EIP-712 + Calibur encoding). The 7702 auth is bundled into the 4337COMMENT
LOW…/services/TransactionService/transactionServiceImpl.ts489 // Step 3: Submit to bundler via UniRPCCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts41 // Step 1: EIP-712 typed data signing over the PackedUserOperation.COMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts53 // Step 2: Calibur signature encodingCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts56 // Step 3: the 7702 auth is bundled into the 4337 request up front (round-trips onCOMMENT
LOW…ervices/UserOpSignerService/userOpSignerServiceImpl.ts65 // Step 4: Rebuild the final signed UserOperation (preserving any round-tripped eip7702Auth).COMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts47 // Step 1: Build dependency graph and identify roots using topological analysisCOMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts50 // Step 2: Separate primary (roots) and chained (non-roots) notificationsCOMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts62 // Step 3: Filter out notifications that are locally tracked or don't have DISMISS action.COMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts97 // Step 4: Limit the number of primary notifications per content styleCOMMENT
LOW…sor/implementations/createBaseNotificationProcessor.ts100 // Step 5: Convert chained notifications to a Map for fast lookupCOMMENT
LOWapps/web/src/connection/userOpSigning.ts57 // Step 1: EIP-712 PackedUserOperation typed data. NOTE: `formatUserOperation`COMMENT
LOWapps/web/src/connection/userOpSigning.ts61 // Step 2: passkey-backed eth_signTypedData_v4 over the typed data. PrivyCOMMENT
LOWapps/web/src/connection/userOpSigning.ts69 // Step 3: Calibur wrap — abi.encode(ROOT_KEY_HASH=bytes32(0), sig, hookData='0x').COMMENT
LOWapps/web/src/connection/userOpSigning.ts72 // Step 4: attach 7702 authorization if one isn't already bundled by the caller.COMMENT
LOW…ction/ActivityTimeline/getSupplySchedulePoints.test.ts49 // Step 1: 100 mps × 100 blocks = 10_000 of 50_000 → 20%COMMENT
LOWapps/web/src/features/accounts/store/provider.tsx341 // Step 1: Build the store components, deduplicating cross platform data for the same wallet if needed.COMMENT
LOWapps/web/src/features/accounts/store/provider.tsx344 // Step 2: Store all connectors + references to active connectors.COMMENT
LOWapps/web/src/features/accounts/store/provider.tsx358 // Step 3: Store all accounts.COMMENT
LOWapps/web/src/features/accounts/store/provider.tsx363 // Step 4: Store the wallet.COMMENT
LOWapps/mobile/.maestro/flows/send/send-eth-to-self.yaml19# Step 1: Initialize app and recover walletCOMMENT
LOWapps/mobile/.maestro/flows/send/send-eth-to-self.yaml23# Step 2: Copy our wallet address from the Receive QR modalCOMMENT
15 more matches not shown…
Synthetic Comment Markers16 hits · 80 pts
SeverityFileLineSnippetContext
HIGHpackages/uniswap/src/i18n/locales/source/en-US.json1270 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/ko-KR.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/es-ES.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/ja-JP.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/zh-CN.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/tr-TR.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/id-ID.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/pt-PT.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/fr-FR.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/zh-TW.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/ru-RU.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…ages/uniswap/src/i18n/locales/translations/fil-PH.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/nl-NL.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…kages/uniswap/src/i18n/locales/translations/vi-VN.json1241 "hook.description.generatedByAi": "Description generated by AI",CODE
HIGH…s/web/src/features/Liquidity/HookDetailsModal.test.tsx58 expect(screen.getByText('Description generated by AI')).toBeTruthy()CODE
HIGH…s/web/src/features/Liquidity/HookDetailsModal.test.tsx68 expect(screen.queryByText('Description generated by AI')).toBeNull()CODE
Over-Commented Block58 hits · 58 pts
SeverityFileLineSnippetContext
LOWi18next-parser.config.js61 input: ['apps/**/*.tsx', 'apps/**/*.ts', 'packages/**/*.ts', 'packages/**/*.tsx'],COMMENT
LOWbunfig.toml1# Bun configuration fileCOMMENT
LOWscripts/check-env-files.sh1#!/bin/shCOMMENT
LOWscripts/silence-deprecation-warnings.js1// Preloaded via `bun --preload` for the `check:deps:usage` Nx target so thatCOMMENT
LOWscripts/check-rn-patch-prebuilt-conflict.sh1#!/bin/bashCOMMENT
LOWscripts/releases/calculate_version.sh1#!/bin/bashCOMMENT
LOWpackages/uniswap/src/index.ts1// oxlint-disable-next-line typescript/triple-slash-referenceCOMMENT
LOW…iswap/src/features/passkey/embeddedWalletDelegation.ts181COMMENT
LOWpackages/uniswap/src/features/appearance/hooks.tsx61// much more common.COMMENT
LOWpackages/uniswap/src/features/appearance/hooks.tsx81// lastCorrectColorScheme.current = colorSchemeCOMMENT
LOW…/uniswap/src/features/smartWallet/mismatch/mismatch.ts101 // extra: {COMMENT
LOW…ervice/chained/chainedActionTxSwapAndGasInfoService.ts41 }COMMENT
LOWpackages/uniswap/src/data/tradingApi/types.ts1// Re-export trading API types from @universe/api for use by generated model files.COMMENT
LOWpackages/hashcash-native/ios/Bridge.h1//COMMENT
LOWpackages/tailwind/src/index.ts1// @universe/tailwind — shared Tailwind v4 design tokens.COMMENT
LOWpackages/utilities/src/index.ts1// oxlint-disable-next-line typescript/triple-slash-referenceCOMMENT
LOW…ckages/utilities/src/device/keyboard/useKeyDown.web.ts41// keys: ['Escape'],COMMENT
LOWpackages/utilities/src/tokens/constants.ts1// When decimals are not specified for an ERC20 tokenCOMMENT
LOW…adog-cloud/monitors/privy-embedded-wallet/constants.ts21// web-span `webResourceName` below instead.COMMENT
LOW…tadog-cloud/monitors/privy-embedded-wallet/security.ts101// ─────────────────────────────────────────────────────────────────────────────COMMENT
LOWpackages/sessions/src/entryGatewayUrls.ts1// TODO(entry-gateway-urls): duplicated from the canonical definition inCOMMENT
LOWpackages/wallet/src/index.ts1// oxlint-disable-next-line typescript/triple-slash-referenceCOMMENT
LOWpackages/api/src/global.d.ts1// oxlint-disable-next-line typescript/triple-slash-referenceCOMMENT
LOW…es/chains/src/transactions/createSignTypedData/viem.ts21 // callers can pass either pre-typed messages or loosely-typedCOMMENT
LOWpackages/chains/src/rpc/ViemClientManager.ts61COMMENT
LOWpackages/notifications/src/global.d.ts1// oxlint-disable-next-line typescript/triple-slash-referenceCOMMENT
LOWapps/extension/wxt.config.ts421 },COMMENT
LOWapps/extension/src/entrypoints/injected.content.ts221 externalDappMessageChannel.addMessageListener(ExtensionToDappRequestType.SwitchChain, async (message) => {COMMENT
LOWapps/extension/src/entrypoints/background.ts181 // Security: validate the sender origin before relaying. `externally_connectable` in theCOMMENT
LOWapps/web/.storybook/__mocks__/expo-blur.jsx1// Simple mock for expo-blur's BlurViewCOMMENT
LOWapps/web/scripts/start-anvil.sh1#!/bin/bashCOMMENT
LOWapps/web/functions/app.ts121 // ── BFF proxy: entry-gateway ─────────────────────────────────────────COMMENT
LOWapps/web/functions/constants.ts1export const WATERMARK_URL = 'https://app.uniswap.org/images/324x74_App_Watermark.png'COMMENT
LOWapps/web/src/test-utils/matchers.ts1// This type is not exported from Jest, so we need to infer it from the expect.extend function.COMMENT
LOWapps/web/src/appGraphql/data/Token.ts1import { GraphQLApi } from '@universe/api'COMMENT
LOW…/BidDistributionChart/BidDistributionChartRenderer.tsx261 const rangePaddingUnits = useMemo(() => {COMMENT
LOW…n/BidDistributionChart/utils/clearingPrice/position.ts61 // market price that can fall anywhere between ticks.COMMENT
LOW…ps/web/src/features/Toucan/Auction/utils/bidDetails.ts1import { toSubscript } from 'utilities/src/format/toSubscript'COMMENT
LOWapps/web/src/features/Toucan/Auction/store/types.ts241 // Concentration band for the chart, used for reset zoomCOMMENT
LOW…idDistribution/ToucanBidDistributionChartController.ts441 // Temporarily unsubscribe visible range change listeners before setData() to prevent aCOMMENT
LOW…ucan/ToucanChart/bidDistribution/utils/tickGrouping.ts1import type { ChartBarData } from '~/features/Toucan/Auction/BidDistributionChart/utils/utils'COMMENT
LOW…ucan/ToucanChart/bidDistribution/utils/tickGrouping.ts21// - 200 ticks → 7x grouping (29 bars)COMMENT
LOW…s/web/src/pages/Swap/Limit/LimitWrap.anvil.e2e.test.ts41 // A limit price must be set for a trade to exist (and thus forCOMMENT
LOWapps/mobile/fingerprint.config.js1/** @type {import('@expo/fingerprint').Config} */COMMENT
LOWapps/mobile/uniwind-env.d.ts1/// <reference types="uniwind/types" />COMMENT
LOWapps/mobile/ios/Uniswap/Uniswap-Bridging-Header.h1//COMMENT
LOWapps/mobile/ios/Uniswap/Uniswap-Bridging-Header.h21#import "libethers_ffi.h"COMMENT
LOWapps/mobile/ios/Uniswap/WalletConnect/RNWalletConnect.h1//COMMENT
LOW…le/ios/Uniswap/RNEthersRs/RNEthersRS-Bridging-Header.h1//COMMENT
LOW…bile/ios/Uniswap/RNEthersRs/KeychainSwiftDistrib.swift1//COMMENT
LOW…/Uniswap/Onboarding/Backup/RNSwiftUI-Bridging-Header.h1//COMMENT
LOWapps/mobile/ios/WidgetsCore/WidgetsCore.h1//COMMENT
LOWapps/mobile/android/app/src/main/jni/pch.h1#pragma onceCOMMENT
LOWapps/mobile/android/app/src/main/jni/OnLoad.cpp1/*COMMENT
LOWapps/mobile/scripts/runAndroidLocal.sh1#!/usr/bin/env bashCOMMENT
LOWapps/mobile/scripts/runAndroidLocal.sh21# Stale-code defenses (release variants embed JS in the APK, so a stale buildCOMMENT
LOWapps/mobile/scripts/runAndroidLocal.sh81 exit 1COMMENT
LOWapps/mobile/src/components/home/hooks.tsx21 const footerHeight = useSharedValue(maxContentHeight)COMMENT
Hallucination Indicators5 hits · 50 pts
SeverityFileLineSnippetContext
CRITICAL…p/src/features/transactions/swap/plan/planSagaUtils.ts239 chainIn: swapTxContext.trade.quote.quote.tokenInChainId.toString(),CODE
CRITICAL…p/src/features/transactions/swap/plan/planSagaUtils.ts240 chainOut: swapTxContext.trade.quote.quote.tokenOutChainId.toString(),CODE
CRITICAL…niswap/src/features/transactions/swap/plan/planSaga.ts645 inputCurrencyAmountRaw: params.swapTxContext.trade.inputAmount.quotient.toString(),CODE
CRITICAL…niswap/src/features/transactions/swap/plan/planSaga.ts646 outputCurrencyAmountRaw: params.swapTxContext.trade.outputAmount.quotient.toString(),CODE
CRITICAL…bile/src/features/walletConnect/walletConnectClient.ts59 const clientId = await wcWeb3Wallet.engine.signClient.core.crypto.getClientId()CODE
Cross-Language Confusion (JS/TS)9 hits · 48 pts
SeverityFileLineSnippetContext
HIGH…iswap/src/features/tokens/warnings/safetyUtils.test.ts50 it('should return None when currencyInfo is fully undefined', () => {CODE
HIGH…iswap/src/features/tokens/warnings/safetyUtils.test.ts151 it('should return None for default token with no warnings', () => {CODE
HIGH…iswap/src/features/tokens/warnings/safetyUtils.test.ts155 it('should return None for native currency', () => {CODE
HIGH…src/components/InlineWarningCard/InlineWarningCard.tsx78 // !WarningIcon for typecheck; should only be null if WarningSeverity == NoneCOMMENT
HIGH…/src/features/dappRequests/utils/blockaidUtils.test.ts65 it('should return None for undefined classification', () => {CODE
HIGH…/src/features/dappRequests/utils/blockaidUtils.test.ts69 it('should return None for benign classification', () => {CODE
HIGH…/src/features/dappRequests/utils/blockaidUtils.test.ts96 it('should return None for undefined validation', () => {CODE
HIGH…/src/features/dappRequests/utils/blockaidUtils.test.ts851 it('should return None risk level when simulation is missing and validation is benign', () => {CODE
HIGH…/src/features/dappRequests/utils/blockaidUtils.test.ts894 it('should return None risk level when both simulation and validation are missing', () => {CODE
Fake / Example Data36 hits · 36 pts
SeverityFileLineSnippetContext
LOW.agents/skills/argent-test-ui-flow/SKILL.md503. paste { text: "user@example.com" }CODE
LOW…ges/uniswap/src/features/passkey/checkPinReuse.test.ts32const params = { pin: '4321', email: 'user@example.com', accessToken: 'token', encryptedBlob: 'blob' }CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts99 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts105 expect(privy.sendEmailCode).toHaveBeenCalledWith('user@example.com')CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts119 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts151 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts186 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts210 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts253 oauthReturn: { pending: false, provider: 'google', providerEmail: 'user@example.com' },CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts279 oauthReturn: { pending: false, provider: 'google', providerEmail: 'user@example.com' },CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts306 oauthReturn: { pending: false, provider: 'google', providerEmail: 'user@example.com' },CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts348 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts420 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts464 act(() => result.current.setEmail('user@example.com'))CODE
LOW…s/uniswap/src/features/passkey/useRecoveryFlow.test.ts506 act(() => result.current.setEmail('user@example.com'))CODE
LOW…src/features/passkey/checkRecoveryAvailability.test.ts12 const identifier = 'user@example.com'CODE
LOW…es/uniswap/src/features/passkey/recoveryRotate.test.ts35 email: 'user@example.com',CODE
LOW…es/uniswap/src/features/passkey/recoveryRotate.test.ts65 expect.objectContaining({ pin: '4321', email: 'user@example.com', rotate: true, retainPrivateKey: true }),CODE
LOW…es/uniswap/src/features/passkey/recoveryRotate.test.ts97 authMethodIdentifier: 'user@example.com',CODE
LOWpackages/uniswap/src/features/passkey/pinCrypto.test.ts38 const hashLower = hashAuthMethodId('user@example.com')CODE
LOWpackages/uniswap/src/components/reporting/input.tsx10 placeholder: TextInputProps['placeholder']CODE
LOWpackages/mycelium/src/unicon/Unicon.tsx29 * <Unicon input="user@example.com" size={32} className="border border-neutral1" />COMMENT
LOW…tionSignerService/transactionSignerServiceImpl.test.ts202 name: 'John Doe',CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts44 await client.fetchOprfEvaluate({ blindedElement: 'blinded', authMethodId: 'amid' }, 'fake-token')CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts48 { headers: { Authorization: 'Bearer fake-token' } },CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts68 await client.fetchCheckRecoveryAvailability({ authMethodId: 'amid' }, 'fake-token')CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts72 { headers: { Authorization: 'Bearer fake-token' } },CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts92 await client.fetchGetRecoveryConfig({ authMethodId: 'amid' }, 'fake-token')CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts96 { headers: { Authorization: 'Bearer fake-token' } },CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts116 await client.fetchReportDecryptionResult({ success: false, authMethodId: 'amid' }, 'fake-token')CODE
LOW…s/embeddedWallet/createEmbeddedWalletApiClient.test.ts120 { headers: { Authorization: 'Bearer fake-token' } },CODE
LOW…mponents/AccountDrawer/MiniPortfolio/Activity/hooks.ts84 id: 'placeholder',CODE
LOWapps/web/src/pages/Portfolio/Pools/Pools.test.tsx286 expect(screen.getByTestId(TestID.PortfolioPoolsSearchInput)).toHaveAttribute('placeholder', 'Search pools')CODE
LOWapps/web/src/pages/Portfolio/Pools/Pools.test.tsx354 expect(screen.getByTestId(TestID.PortfolioPoolsSearchInput)).toHaveAttribute('placeholder', 'Search pools')CODE
LOWapps/web/src/pages/Portfolio/Pools/Pools.test.tsx379 expect(screen.getByTestId(TestID.PortfolioPoolsSearchInput)).toHaveAttribute('placeholder', 'Search pools')CODE
LOWapps/mobile/src/app/mobileMigrationTests.ts1335 const androidCloudBackupEmail = 'test@test.com'CODE
Redundant / Tautological Comments11 hits · 18 pts
SeverityFileLineSnippetContext
LOWlefthook.yml52 # Check if any staged TS/TSX files exist that might contain i18n stringsCOMMENT
LOWlefthook.yml61 # Check if the i18n source file was modifiedCOMMENT
LOWscripts/check-runtime-versions.sh12# Check if running in Vercel environmentCOMMENT
LOWscripts/lint-composite-action-inputs.sh8 # Check if the file contains an 'inputs:' sectionCOMMENT
LOWscripts/lint-composite-action-inputs.sh10 # Check if the file contains a step that uses the validate-action-inputs.cjs scriptCOMMENT
LOWscripts/checks-should-run.sh40# Check if the specified project is affected by changesCOMMENT
LOW…ps/mobile/.maestro/scripts/performance/submit-local.sh15# Check if Datadog API key is setCOMMENT
LOW…ps/mobile/.maestro/scripts/performance/submit-local.sh27# Check if metrics file already exists (extracted by e2e:local:extract-metrics)COMMENT
LOWapps/mobile/scripts/update_apollo_files_in_xcode.rb184# Check if the MobileSchema group in the project matches the files on diskCOMMENT
LOWapps/mobile/scripts/update_apollo_files_in_xcode.rb310 # Check if files have changed before modifying the projectCOMMENT
LOWapps/mobile/scripts/update_apollo_files_in_xcode.rb348 # Check if directory existsCOMMENT
Self-Referential Comments5 hits · 16 pts
SeverityFileLineSnippetContext
MEDIUMpackages/config-cli/src/lib/devEnv.test.ts5const HEADER = `# This file contains the minimal dev-env configs required to run this app.CODE
MEDIUMapps/mobile/ios/sourcemaps-datadog.sh19# Create a temporary file for capturing output.COMMENT
MEDIUMapps/mobile/scripts/update_apollo_files_in_xcode.rb175 # Create a digest of file paths and their contents to detect any changeCOMMENT
MEDIUMapps/mobile/scripts/update_apollo_files_in_xcode.rb230 # Create the group structure and add filesCOMMENT
MEDIUMapps/mobile/scripts/update_apollo_files_in_xcode.rb342 # Create a new MobileSchema groupCOMMENT
AI Slop Vocabulary3 hits · 9 pts
SeverityFileLineSnippetContext
MEDIUM…rc/utils/colors/utils/pickContrastPassingTokenColor.ts118 // TODO(MOB-643): Define more robust color extraction logic. Some ideas:COMMENT
MEDIUMpackages/config-cli/src/lib/lock/lock.test.ts62 // `second` enters the race. Polling on an observable signal is robust to changes inCOMMENT
MEDIUMpackages/wallet/src/features/wallet/context.tsx50 // Probably not strictly necessary but more robust than relying on 'organic' re-rendersCOMMENT
Example Usage Blocks2 hits · 3 pts
SeverityFileLineSnippetContext
LOW…ckages/utilities/src/device/keyboard/useKeyDown.web.ts38// Example usage:COMMENT
LOWapps/mobile/scripts/runAndroidLocal.sh31# Usage:COMMENT
Modern AI Meta-Vocabulary1 hit · 3 pts
SeverityFileLineSnippetContext
MEDIUMapps/web/functions/utils/getToken.ts43 // This keeps the token-detail worker path aligned with the CF timeout guardrails.COMMENT
Excessive Try-Catch Wrapping1 hit · 2 pts
SeverityFileLineSnippetContext
MEDIUM…CloudBackupsManager/RNCloudStorageBackupsManager.swift223 print("Error reading or decoding iCloud backup JSON at \(file.absoluteURL)")CODE
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOWapps/mobile/scripts/populate_svgs.py29CODE
LOWapps/mobile/scripts/populate_svgs.py91CODE