Repository Analysis

argmaxinc/argmax-oss-swift

On-device Speech AI for Apple Silicon

4.1 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of argmaxinc/argmax-oss-swift, a Swift project with 6,264 GitHub stars. SynthScan v2.0 examined 60,950 lines of code across 214 source files, recording 224 pattern matches distributed across 9 syntactic categories. The overall adjusted score of 4.1 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.1
Adjusted Score
4.1
Raw Score
100%
Time Factor
2026-07-13
Last Push
6.3K
Stars
Swift
Language
61.0K
Lines of Code
214
Files
224
Pattern Hits
2026-07-14
Scan Date
0.00
HC Hit Rate

What These Metrics Mean

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

Score History

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.

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 0HIGH 0MEDIUM 26LOW 198

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 224 distinct pattern matches across 9 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.

Over-Commented Block159 hits · 159 pts
SeverityFileLineSnippetContext
LOWPackage@swift-6.2.swift161 // These reduce false-positive concurrency diagnostics by making theCOMMENT
LOW…ts/ArgmaxCoreTests/External/Tokenizers/TrieTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOW…ArgmaxCoreTests/External/Tokenizers/DecoderTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOW…ArgmaxCoreTests/External/Tokenizers/FactoryTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOW…gmaxCoreTests/External/Tokenizers/TokenizerTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOW…xCoreTests/External/Tokenizers/PreTokenizerTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift121 #expect(cfgArray.array() == [1, 2, 3, 4])COMMENT
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift141 #expect(cfgStrings.get() == ["a", "b", "c"])COMMENT
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift201 #expect(got["dict_of_bools"]["key4"] == false)COMMENT
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift221 @Test("Equatable: string, integer, float, boolean, token, dictionary")COMMENT
LOW…sts/ArgmaxCoreTests/External/Hub/DownloaderTests.swift1// Originally from: https://github.com/huggingface/swift-transformersCOMMENT
LOWTests/WhisperKitTests/Evaluate/NormalizeEn.swift661 #"\bimma\b"#: "i am going to",COMMENT
LOWTests/WhisperKitTests/Evaluate/NormalizeEn.swift681 #"\basst\b"#: "assistant ",COMMENT
LOW…t/Sources/WhisperKitSwiftClient/Generated/Client.swift1// Generated by swift-openapi-generator, do not modify.COMMENT
LOW…t/Sources/WhisperKitSwiftClient/Generated/Client.swift21/// To regenerate this file:COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift1// Generated by swift-openapi-generator, do not modify.COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift161 /// - Remark: Generated from `#/components/schemas/CreateTranscriptionRequest/stream`.COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift181 public var text: Swift.StringCOMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift221 public typealias logprobsPayload = [Components.Schemas.CreateTranscriptionResponseJson.logprobsPayloadPayloaCOMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift301 }COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift321 /// - Remark: Generated from `#/components/schemas/CreateTranscriptionResponseVerboseJson/words`.COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift461 public struct CreateTranslationResponseVerboseJson: Codable, Hashable, Sendable {COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift521 /// - Remark: Generated from `#/components/schemas/TranscriptTextDeltaEvent/type`.COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift541 public var token: Swift.String?COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift601 case logprobsCOMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift621 ///COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift661 }COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift701 ///COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift721 ///COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift741 ///COMMENT
LOW…ft/Sources/WhisperKitSwiftClient/Generated/Types.swift1301 }COMMENT
LOW…les/TTS/TTSKitExample/TTSKitExample/WaveformView.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOW…mples/TTS/TTSKitExample/TTSKitExample/DetailView.swift201// .overlay(alignment: .topTrailing) {COMMENT
LOW…es/TTS/TTSKitExample/TTSKitExample/FileUtilities.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOW…es/TTS/TTSKitExample/TTSKitExample/AudioMetadata.swift61COMMENT
LOWSources/TTSKit/Models.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOWSources/TTSKit/Models.swift81/// ```swiftCOMMENT
LOWSources/TTSKit/Models.swift101 /// - voice: Voice/speaker identifier. `nil` uses the model's default voice.COMMENT
LOWSources/TTSKit/Models.swift141/// pipeline (MultiCodeDecoder + SpeechDecoder + CodeDecoder) before any audioCOMMENT
LOWSources/TTSKit/Models.swift161COMMENT
LOWSources/TTSKit/Models.swift181 /// Compute the required pre-buffer duration (seconds) given a measured step time.COMMENT
LOWSources/TTSKit/Models.swift241COMMENT
LOWSources/TTSKit/Protocols.swift121 /// model's `key_cache` input shape after `loadModel`.COMMENT
LOWSources/TTSKit/TTSKit.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOWSources/TTSKit/TTSKit.swift21/// tts.codeDecoder = MyOptimisedCodeDecoder()COMMENT
LOWSources/TTSKit/TTSKit.swift241 /// Fetch all available model variants from the HuggingFace Hub.COMMENT
LOWSources/TTSKit/TTSKit.swift281 /// Mirrors `WhisperKit.download(variant:downloadBase:from:token:progressCallback:)`.COMMENT
LOWSources/TTSKit/TTSKit.swift361 /// Mirrors `WhisperKit.setupModels(model:downloadBase:modelRepo:...)`. PopulatesCOMMENT
LOWSources/TTSKit/TTSKit.swift421 /// Prewarm all CoreML models by compiling them sequentially, then discarding weights.COMMENT
LOWSources/TTSKit/TTSKit.swift521COMMENT
LOWSources/TTSKit/TTSKit.swift601 /// CodeDecoder, returning a reusable cache that eliminates ~90% of prefill costCOMMENT
LOWSources/TTSKit/TTSKit.swift981COMMENT
LOWSources/TTSKit/Configurations.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOWSources/TTSKit/Generating.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOWSources/TTSKit/Generating.swift41 /// - Parameters:COMMENT
LOWSources/TTSKit/Qwen3TTS/Qwen3SpeechDecoder.swift1// For licensing see accompanying LICENSE.md file.COMMENT
LOWSources/TTSKit/Qwen3TTS/Qwen3Config.swift121///COMMENT
LOWSources/TTSKit/Qwen3TTS/Qwen3Config.swift141/// ├── text_projector/<versionDir>/<variant>/*.mlmodelcCOMMENT
LOWSources/TTSKit/Qwen3TTS/Qwen3Config.swift221 /// Use a background `URLSession` for model downloads.COMMENT
99 more matches not shown…
Excessive Try-Catch Wrapping32 hits · 52 pts
SeverityFileLineSnippetContext
MEDIUMTests/WhisperKitTests/RegressionTestUtils.swift383 print("Error retrieving file system attributes: \(error)")CODE
MEDIUMTests/WhisperKitTests/RegressionTestUtils.swift404 print("Error retrieving file system attributes: \(error)")CODE
MEDIUMTests/WhisperKitTests/Evaluate/NormalizeEn.swift25 print("Error while creating regex: \(error)")CODE
MEDIUMTests/WhisperKitTests/Evaluate/NormalizeEn.swift599 print("Error in regex: \(error)")CODE
MEDIUMTests/WhisperKitTests/Evaluate/NormalizeEn.swift611 print("Error in regex: \(error)")CODE
MEDIUMExamples/WhisperAX/WhisperAX/Views/ContentView.swift1315 print("Error enumerating files at \(modelPath): \(error.localizedDescription)")CODE
MEDIUMExamples/WhisperAX/WhisperAX/Views/ContentView.swift1409 print("Error prewarming models, retrying: \(error.localizedDescription)")STRING
MEDIUMExamples/WhisperAX/WhisperAX/Views/ContentView.swift1492 print("Error deleting model: \(error)")STRING
MEDIUMExamples/WhisperAX/WhisperAX/Views/ContentView.swift1642 print("Error: \(error.localizedDescription)")STRING
MEDIUMExamples/WhisperAX/WhisperAX/Views/ContentView.swift1886 print("Error: \(error.localizedDescription)")STRING
MEDIUM…WhisperAX/WhisperAXWatchApp/WhisperAXExampleView.swift309 print("Error enumerating files at \(modelPath): \(error.localizedDescription)")CODE
MEDIUM…WhisperAX/WhisperAXWatchApp/WhisperAXExampleView.swift389 print("Error prewarming models, retrying: \(error.localizedDescription)")CODE
MEDIUM…WhisperAX/WhisperAXWatchApp/WhisperAXExampleView.swift553 print("Error: \(error.localizedDescription)")CODE
MEDIUMExamples/ServeCLIClient/Python/test_transcribe.py29 print(f"Error: Test resources directory not found: {resources_dir}")CODE
LOWExamples/ServeCLIClient/Python/test_transcribe.py68 except Exception as e:CODE
MEDIUMExamples/ServeCLIClient/Python/test_transcribe.py69 print(f"Error transcribing {audio_file_path.name}: {e}")CODE
MEDIUMExamples/ServeCLIClient/Python/test_transcribe.py131 print(f"Error: Test file '{args.file}' not found")CODE
MEDIUMExamples/ServeCLIClient/Python/test_translate.py29 print(f"Error: Test resources directory not found: {resources_dir}")CODE
LOWExamples/ServeCLIClient/Python/test_translate.py65 except Exception as e:CODE
MEDIUMExamples/ServeCLIClient/Python/test_translate.py66 print(f"Error translating {audio_file_path.name}: {e}")CODE
MEDIUMExamples/ServeCLIClient/Python/test_translate.py126 print(f"Error: Test file '{args.file}' not found")CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py40 except Exception as e:CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py52 except Exception as e:CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py141 except Exception as e:CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py226 except Exception as e:CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py299 except Exception as e:CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py430 except Exception as e:CODE
MEDIUMscripts/generate_local_server_openapi.py52 print(f"Error fetching latest spec: {e}")CODE
MEDIUMscripts/generate_local_server_openapi.py312 print(f"Error: {input_file} not found")CODE
MEDIUMSources/ArgmaxCLI/TranscribeCLI.swift259 print("Error when transcribing \(audioPath): \(error)")CODE
MEDIUMSources/ArgmaxCLI/TranscribeCLI.swift269 print("Error during diarization for \(audioPath): \(error)")CODE
MEDIUMSources/ArgmaxCLI/TranscribeCLI.swift413 print("Error: \(error.localizedDescription)")CODE
Deep Nesting12 hits · 12 pts
SeverityFileLineSnippetContext
LOWExamples/ServeCLIClient/Python/test_transcribe.py73CODE
LOWExamples/ServeCLIClient/Python/test_translate.py70CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py435CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py56CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py145CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py241CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py370CODE
LOWscripts/generate_local_server_openapi.py73CODE
LOWscripts/generate_local_server_openapi.py213CODE
LOWscripts/generate_local_server_openapi.py114CODE
LOWscripts/generate_local_server_openapi.py128CODE
LOWscripts/generate_local_server_openapi.py193CODE
Redundant / Tautological Comments5 hits · 8 pts
SeverityFileLineSnippetContext
LOWExamples/ServeCLIClient/Curl/transcribe.sh95# Check if audio file is providedCOMMENT
LOWExamples/ServeCLIClient/Curl/transcribe.sh102# Check if audio file existsCOMMENT
LOWExamples/ServeCLIClient/Curl/translate.sh105# Check if audio file is providedCOMMENT
LOWExamples/ServeCLIClient/Curl/translate.sh112# Check if audio file existsCOMMENT
LOWExamples/ServeCLIClient/Curl/test.sh32# Check if server is runningCOMMENT
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMSources/ArgmaxCore/External/Hub/Downloader.swift17/// A robust file downloader with support for resumable downloads and progress reporting.COMMENT
MEDIUMSources/ArgmaxCore/External/Hub/HubApi.swift66/// background downloads, and automatic retry mechanisms for robust file transfers.COMMENT
Unused Imports5 hits · 5 pts
SeverityFileLineSnippetContext
LOWExamples/ServeCLIClient/Python/test_transcribe.py11CODE
LOWExamples/ServeCLIClient/Python/test_translate.py11CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py10CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py12CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py13CODE
Fake / Example Data4 hits · 4 pts
SeverityFileLineSnippetContext
LOWTests/ArgmaxCoreTests/External/Hub/ConfigTests.swift124 #expect(cfgArray["fake_key"].isNull())COMMENT
LOWExamples/ServeCLIClient/Python/test_transcribe.py111 api_key="dummy-key"CODE
LOWExamples/ServeCLIClient/Python/test_translate.py109 api_key="dummy-key"CODE
LOWExamples/ServeCLIClient/Python/whisperkit_client.py25 api_key="dummy-key" # Not used by local serverCODE
TODO Padding3 hits · 4 pts
SeverityFileLineSnippetContext
LOWSources/WhisperKit/Core/TextDecoder.swift802 let noSpeechProb: Float = 0 // TODO: implement no speech probCODE
LOWSources/WhisperKit/Core/Models.swift52 // TODO: implement config.json and generation_config.json parsing for modelsCOMMENT
LOWSources/WhisperKit/Core/Configurations.swift233 self.suppressTokens = suppressTokens ?? [] // nonSpeechTokens() // TODO: implement these as defaultCODE
Hyper-Verbose Identifiers2 hits · 2 pts
SeverityFileLineSnippetContext
LOWExamples/ServeCLIClient/Python/whisperkit_client.py145 def _transcribe_non_streaming(self, audio_path: str, language: str = "", model: str = "tiny",CODE
LOWscripts/generate_local_server_openapi.py39def fetch_latest_openapi_spec():CODE