Repository Analysis

mobile-dev-inc/Maestro

Painless E2E Automation for Mobile and Web

1.5 Likely human-written View on GitHub
1.5
Adjusted Score
1.5
Raw Score
100%
Time Factor
2026-05-28
Last Push
14,269
Stars
Kotlin
Language
83,423
Lines of Code
1244
Files
50
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 5HIGH 5MEDIUM 2LOW 38

Pattern Findings

50 matches across 8 categories. Click a row to expand file-level details.

Hallucination Indicators5 hits · 50 pts
SeverityFileLineSnippet
CRITICAL…est/kotlin/maestro/cli/report/TestDebugReporterTest.kt38 Files.setLastModifiedTime(oldDir, java.nio.file.attribute.FileTime.fromMillis(System.currentTimeMillis() - 1000
CRITICAL…in/java/maestro/cli/analytics/AnalyticsStateManager.kt255 return java.time.temporal.ChronoUnit.DAYS.between(now, targetDate).toInt()
CRITICAL…dels/src/test/kotlin/maestro/orchestra/util/EnvTest.kt144 val error = org.junit.jupiter.api.Assertions.assertThrows(maestro.orchestra.util.Env.EnvVariableMissingValueErro
CRITICAL…dels/src/test/kotlin/maestro/orchestra/util/EnvTest.kt156 val error = org.junit.jupiter.api.Assertions.assertThrows(maestro.orchestra.util.Env.EnvVariableMissingValueErro
CRITICAL…dels/src/test/kotlin/maestro/orchestra/util/EnvTest.kt171 val error = org.junit.jupiter.api.Assertions.assertThrows(maestro.orchestra.util.Env.EnvVariableMissingValueErro
Over-Commented Block22 hits · 22 pts
SeverityFileLineSnippet
LOWdetekt.yml21 # - 'PackageCountProcessor'
LOW…test/src/test/kotlin/maestro/test/GraalJsEngineTest.kt101
LOW.github/scripts/setup_android_device.sh1#!/bin/bash
LOW.github/scripts/setup_android_device.sh21 sleep 1
LOWmaestro-ios-driver/src/main/resources/screenrecord.sh1# The `simctl recordVideo` command requires a SIGINT to be sent to stop the recording.
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml21 criteria: >
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml41 # criteria: >
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml61 # The assistant correctly identifies exactly 8 clickable elements: 7 buttons in a column, and a final button in
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml81
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml101 # I want to get a quick overview of all interactive elements on the screen for automated testing.
LOWmaestro-cli/src/test/mcp/inspect-screen-evals.yaml121 # required:
LOWe2e/demo_app/analysis_options.yaml1# This file configures the analyzer, which statically analyzes Dart code to
LOWe2e/demo_app/analysis_options.yaml21 # `// ignore_for_file: name_of_lint` syntax on the line or in the file
LOW…estro/android_device_configuration/enable_sensors.yaml1# Verifies all device sensors are available
LOWe2e/alert-repro-swiftui/verify_preflight_suppressed.sh1#!/usr/bin/env bash
LOW…ert-repro-swiftui/flows/ui_interruption_preflight.yaml1## Regression target for the iOS XCTest UI-interruption preflight hang.
LOW…ver-iosTests/maestro-driver-iosTests-Bridging-Header.h1//
LOW…UITests/PrivateHeaders/XCTest/XCTRunnerDaemonSession.h1//
LOW…driver-iosUITests/PrivateHeaders/XCTest/XCTestDriver.h1//
LOW…Categories/maestro-driver-iosUITests-Bridging-Header.h1//
LOW…-iosUITests/Routes/Handlers/ViewHierarchyHandler.swift341 /// process's view tree into the host application's snapshot, but the foreign
LOW…verLib/Sources/MaestroDriverLib/MaestroDriverLib.swift1// MaestroDriverLib
Cross-File Repetition3 hits · 15 pts
SeverityFileLineSnippet
HIGH…orchestra/src/main/java/maestro/orchestra/Orchestra.kt0element with $description not found. check the ui hierarchy in debug artifacts to verify if the element exists. possible
HIGH…orchestra/src/main/java/maestro/orchestra/Orchestra.kt0element with $description not found. check the ui hierarchy in debug artifacts to verify if the element exists. possible
HIGH…orchestra/src/main/java/maestro/orchestra/Orchestra.kt0element with $description not found. check the ui hierarchy in debug artifacts to verify if the element exists. possible
Redundant / Tautological Comments7 hits · 11 pts
SeverityFileLineSnippet
LOWmaestro-cli/src/test/mcp/run_mcp_tool_tests.sh21# Check if Maestro CLI is built
LOWmaestro-cli/src/test/mcp/run_mcp_evals.sh23# Check if Maestro CLI is built
LOWmaestro-cli/src/test/mcp/setup/setup_and_run_eval.sh51# Check if Maestro CLI is built
LOWmaestro-cli/src/test/mcp/setup/setup_and_run_eval.sh102 # Check if file exists, try relative to evals/ if not absolute
LOW…ro-cli/src/test/mcp/setup/download-and-install-apps.sh25# Check if we can find the e2e directory
LOW…stro-cli/src/test/mcp/setup/check-maestro-cli-built.sh4# Check if Maestro CLI is built for MCP testing
LOW…stro-cli/src/test/mcp/setup/check-maestro-cli-built.sh15# Check if Maestro CLI is built
Synthetic Comment Markers2 hits · 10 pts
SeverityFileLineSnippet
HIGHCHANGELOG.md420- Fix: Warnings generated by AI-powered commands aren't formatted nicely ([#2043](https://github.com/mobile-dev-inc/maes
HIGHCHANGELOG.md424- Fix: display warnings generated by AI-powered commands in CLI output when `optional: true` ([#2026](https://github.com
Fake / Example Data7 hits · 7 pts
SeverityFileLineSnippet
LOW…o-test/src/test/kotlin/maestro/test/IntegrationTest.kt409 driver.assertHasEvent(Event.InputText("user@example.com"))
LOWmaestro-cli/mcp-viewer/src/demo.tsx34 { commandId: "8", yaml: 'inputText: "user@example.com"', depth: 0, status: "completed" },
LOWmaestro-cli/mcp-viewer/src/demo.tsx39 { commandId: "13", yaml: 'inputText: "user@example.com"', depth: 0, status: "completed" },
LOWe2e/demo_app/.maestro/issues/issue1777.yaml6- inputText: "Lorem ipsum dolor sit amet"
LOWe2e/demo_app/.maestro/issues/issue1777.yaml6- inputText: "Lorem ipsum dolor sit amet"
LOWe2e/demo_app/lib/defects_screen.dart73 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
LOWe2e/demo_app/lib/defects_screen.dart73 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna
Self-Referential Comments2 hits · 6 pts
SeverityFileLineSnippet
MEDIUM.github/scripts/boot_simulator.sh7# Create a unique identifier for the new simulator to avoid naming conflicts
MEDIUM.github/scripts/boot_simulator.sh12# Create the simulator
Verbosity Indicators2 hits · 4 pts
SeverityFileLineSnippet
LOW…ro-cli/src/test/mcp/setup/download-and-install-apps.sh33# Step 1: Download apps using e2e infrastructure
LOW…ro-cli/src/test/mcp/setup/download-and-install-apps.sh38# Step 2: Install apps for the specified platform