Repository Analysis

foundry-rs/foundry

Foundry is a blazing fast, portable and modular toolkit for Ethereum application development written in Rust.

2.7 Likely human-written View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of foundry-rs/foundry, a Rust project with 10,487 GitHub stars. SynthScan v2.0 examined 437,481 lines of code across 1041 source files, recording 930 pattern matches distributed across 14 syntactic categories. The overall adjusted score of 2.7 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).

2.7
Adjusted Score
2.7
Raw Score
100%
Time Factor
2026-07-14
Last Push
10.5K
Stars
Rust
Language
437.5K
Lines of Code
1.0K
Files
930
Pattern Hits
2026-07-14
Scan Date
0.02
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 22HIGH 0MEDIUM 38LOW 870

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 930 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.

Over-Commented Block600 hits · 534 pts
SeverityFileLineSnippetContext
LOWCargo.toml541idna_adapter = "=1.1.0"COMMENT
LOWCargo.toml561# alloy-consensus = { git = "https://github.com/alloy-rs/alloy", rev = "395521c" }COMMENT
LOWCargo.toml581# alloy-signer-aws = { git = "https://github.com/alloy-rs/alloy", rev = "395521c" }COMMENT
LOWdeny.toml21# This section is considered when running `cargo deny check bans`.COMMENT
LOWcrates/test-utils/src/util.rs41///COMMENT
LOWcrates/test-utils/src/prj.rs101 fn from(id: T) -> Self {COMMENT
LOWcrates/lint/src/linter/early.rs41 fn check_path(&mut self, _ctx: &LintContext, _path: &'ast ast::PathSlice) {}COMMENT
LOWcrates/lint/src/sol/macros.rs1/// Macro for defining lints and relevant metadata for the Solidity linter.COMMENT
LOWcrates/lint/src/sol/macros.rs21 pub static $id: SolLint = SolLint {COMMENT
LOWcrates/lint/src/sol/high/arbitrary_send_erc20.rs141 gcx: Gcx<'hir>,COMMENT
LOWcrates/lint/src/sol/analysis/mod.rs1//! Shared analysis primitives reused by Solidity lints.COMMENT
LOWcrates/lint/src/sol/med/dangerous_unary_operator.rs21 // RHS is a `Binary` (or `Ternary`) with the `-a` unary as its leftmost operand. Follow theCOMMENT
LOWcrates/verify/src/verify.rs361COMMENT
LOWcrates/verify/src/verify.rs381 /// the browser.COMMENT
LOWcrates/verify/src/verify.rs401 )]COMMENT
LOWcrates/verify/src/etherscan/flatten.rs61 /// provided compiler. If the compiler is missing it will be installed.COMMENT
LOWcrates/config/src/coverage.rs21 Attribution,COMMENT
LOWcrates/config/src/coverage.rs41COMMENT
LOWcrates/config/src/coverage.rs61 /// Glob patterns of source files to exclude from the coverage report.COMMENT
LOWcrates/config/src/fee.rs1//! EIP-1559 fee estimation configuration.COMMENT
LOWcrates/config/src/symbolic.rs41 /// Whether fuzz branch frontiers should guide targeted symbolic fuzz-test seeding.COMMENT
LOWcrates/config/src/symbolic.rs61 pub solver_portfolio: Vec<String>,COMMENT
LOWcrates/config/src/symbolic.rs81 #[serde(default)]COMMENT
LOWcrates/config/src/vyper.rs21 #[serde(default, skip_serializing_if = "Option::is_none")]COMMENT
LOWcrates/config/src/extend.rs1use std::collections::HashMap;COMMENT
LOWcrates/config/src/mutation.rs41 }COMMENT
LOWcrates/config/src/mutation.rs61 /// mutation worker count.COMMENT
LOWcrates/config/src/error.rs101COMMENT
LOWcrates/config/src/fs_permissions.rs41 }COMMENT
LOWcrates/config/src/lib.rs141pub use compilation::{CompilationRestrictions, SettingsOverrides};COMMENT
LOWcrates/config/src/lib.rs161///COMMENT
LOWcrates/config/src/lib.rs181pub struct Config {COMMENT
LOWcrates/config/src/lib.rs201 pub root: PathBuf,COMMENT
LOWcrates/config/src/lib.rs261 /// The Solc instance to use if any.COMMENT
LOWcrates/config/src/lib.rs281 /// Whether to activate optimizerCOMMENT
LOWcrates/config/src/lib.rs301 pub verbosity: u8,COMMENT
LOWcrates/config/src/lib.rs321 /// You can also the ETH_RPC_HEADERS env variable like so:COMMENT
LOWcrates/config/src/lib.rs341 #[serde(default, skip_serializing)]COMMENT
LOWcrates/config/src/lib.rs361 /// Only show coverage for files that do not match the specified regex pattern.COMMENT
LOWcrates/config/src/lib.rs381 pub mutation: MutationConfig,COMMENT
LOWcrates/config/src/lib.rs401 /// the initial balance of each deployed test contractCOMMENT
LOWcrates/config/src/lib.rs441 ///COMMENT
LOWcrates/config/src/lib.rs461 pub extra_output: Vec<ContractOutputSelection>,COMMENT
LOWcrates/config/src/lib.rs481 /// Whether to turn on SSA CFG-based code generation via the IR.COMMENT
LOWcrates/config/src/lib.rs501 #[serde(default, skip_serializing_if = "RpcEndpoints::is_empty")]COMMENT
LOWcrates/config/src/lib.rs521 /// included in solc's output selection, see also [`OutputSelection`].COMMENT
LOWcrates/config/src/lib.rs601 /// Restrictions on compilation of certain files.COMMENT
LOWcrates/config/src/lib.rs801 }COMMENT
LOWcrates/config/src/lib.rs821 /// use foundry_config::Config;COMMENT
LOWcrates/config/src/lib.rs1061 self.canonic_at(root)COMMENT
LOWcrates/config/src/lib.rs1221 ///COMMENT
LOWcrates/config/src/lib.rs1501 /// **NOTE**: this uses the paths as they are and does __not__ modify them, seeCOMMENT
LOWcrates/config/src/lib.rs1581 ///COMMENT
LOWcrates/config/src/lib.rs1601 /// # ExampleCOMMENT
LOWcrates/config/src/lib.rs1621 /// # ReturnsCOMMENT
LOWcrates/config/src/lib.rs1701 /// let rpc_url = config.get_rpc_url_or("http://localhost:8545").unwrap();COMMENT
LOWcrates/config/src/lib.rs1721 /// ```COMMENT
LOWcrates/config/src/lib.rs1961 })COMMENT
LOWcrates/config/src/lib.rs1981 ///COMMENT
LOWcrates/config/src/lib.rs2121 })COMMENT
540 more matches not shown…
Hyper-Verbose Identifiers218 hits · 222 pts
SeverityFileLineSnippetContext
LOW…9d27527Ada2CF29fBDAB2973cfa243845a08Bd3F/metadata.json13 "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.9;\n\nimport \"@openzeppelin/contracts/utils/CODE
LOW…9d27527Ada2CF29fBDAB2973cfa243845a08Bd3F/metadata.json43 "content": "// SPDX-License-Identifier: MIT\npragma solidity 0.8.9;\n\nimport \"./BleepsRoles.sol\";\nimport \CODE
LOW…Db53f47aC61FE54F456A4eb3E09832D08Dd7BEec/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"@solidstate/contracts/token/ERC1155/base/ERC1155Base.sol":{"content":"CODE
LOW…3a23F943181408EAC424116Af7b7790c94Cb97a5/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"src/bridges/hop/interfaces/amm.sol":{"content":"// SPDX-License-IdentiCODE
LOW…9AB6b21cDF116f611110b048987E58894786C244/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"contracts/InterestRates/InterestRatePositionManager.f.sol":{"content":CODE
LOW…71356E37e0368Bd10bFDbF41dC052fE5FA24cD05/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"@openzeppelin/contracts/access/IAccessControl.sol":{"content":"// SPDXCODE
LOW…35Fb958109b70799a8f9Bc2a8b1Ee4cC62034193/metadata.json1[{"SourceCode":"/**\r\n *Submitted for verification at Etherscan.io on 2022-02-19\r\n*/\r\n\r\n/**\r\n *Submitted for veCODE
LOW…044b75f554b886A065b9567891e45c79542d7357/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"contracts/InputStream.sol":{"content":"// SPDX-License-Identifier: UNLCODE
LOWcrates/cast/tests/cli/main.rs4180 function updateCounterInExternalLib(CounterInExternalLib.Info storage counterInfo, uint256 counter) public {CODE
LOWcrates/forge/tests/cli/coverage.rs1013 function testTypeConversionCoverage() external {CODE
LOWcrates/forge/tests/cli/inline_config.rs388 function testInlineIsolateCanCreateFile() public {CODE
LOWcrates/forge/tests/cli/config.rs1849 function testSnapshotGasSectionExternal() public {{CODE
LOWcrates/forge/tests/cli/failure_assertions.rs421 function testDSTestFailingAssertions() public {CODE
LOWcrates/forge/tests/cli/failure_assertions.rs470 function testShouldBeMarkedAsFailedBecauseOfSetup() public {CODE
LOWcrates/forge/tests/cli/failure_assertions.rs501 function testFailShouldBeMarkedAsFailedBecauseOfAfterInvariant()CODE
LOWcrates/forge/tests/cli/failure_assertions.rs536 function testFailShouldBeMarkedAsFailedBecauseOfSetup() public {CODE
LOWcrates/forge/tests/cli/failure_assertions.rs565 function emitAnonymousEventNonIndexed(uint256 a) external {CODE
LOWcrates/forge/tests/cli/failure_assertions.rs580 function testShouldFailEmitDifferentEventNonIndexed() public {CODE
LOWcrates/forge/tests/cli/json.rs25 function testJsonParseAndSerialize() public {CODE
LOWcrates/forge/tests/cli/lint.rs25 function divideBeforeMultiplyMedium() public {CODE
LOWcrates/forge/tests/cli/lint.rs77815 | function divideBeforeMultiplyMedium() public {CODE
LOWcrates/forge/tests/cli/lint.rs86515 | function divideBeforeMultiplyMedium() public {CODE
LOWcrates/forge/tests/cli/lint.rs92915 | function divideBeforeMultiplyMedium() public {CODE
LOWcrates/forge/tests/cli/bind_json.rs90 function deserializeTopLevelStruct(string memory json) public pure returns (TopLevelStruct memory) {CODE
LOWcrates/forge/tests/cli/bind_json.rs94 function deserializeTopLevelStruct(string memory json, string memory path) public pure returns (TopLevelStruct memorCODE
LOWcrates/forge/tests/cli/bind_json.rs98 function deserializeTopLevelStructArray(string memory json, string memory path) public pure returns (TopLevelStruct[CODE
LOWcrates/forge/tests/cli/bind_json.rs110 function deserializeContractLevelStruct(string memory json) public pure returns (BindJsonTest.ContractLevelStruct meCODE
LOWcrates/forge/tests/cli/bind_json.rs114 function deserializeContractLevelStruct(string memory json, string memory path) public pure returns (BindJsonTest.CoCODE
LOWcrates/forge/tests/cli/bind_json.rs118 function deserializeContractLevelStructArray(string memory json, string memory path) public pure returns (BindJsonTeCODE
LOWcrates/forge/tests/cli/precompiles.rs314 function expectKeychainAdminVerified(address account, bytes32 digest, bytes calldata signature) external;CODE
LOWcrates/forge/tests/cli/test_cmd/core.rs55 function testMultipleAssertFailures() public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs19 function checkSymbolicCalldataLoad(uint16 offset, uint256 marker) public pure {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs63 function checkSymbolicCalldataCopy(uint16 offset, uint256 marker) public pure {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs108 function checkSymbolicCalldataCopyDest(uint16 dest, uint256 marker) public pure {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs150 function checkSymbolicCalldataCopySize(uint8 n) public pure {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs198 function checkCalldataCopyDestAndSize(uint8 rawDest, uint8 rawSize, bytes32 marker) public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs257 function checkSymbolicCallInputOffset(uint16 offset, uint256 marker) public view {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs317 function checkSymbolicCallOutputSize(uint8 rawSize) public view {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs380 function checkSymbolicCallInputSize(uint8 rawSize, uint256 marker) public view {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs1272 function checkSymbolicValueTransfer(uint256 amount) public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs1329 function checkSymbolicInsufficientValue(uint256 amount) public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_calls.rs1384 function checkSymbolicCallcodeValue(uint256 amount) public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs144 function checkEnabledByContractConfig(uint256 x) public pure {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs4265 function checkConstrainedStorageKeyUsesConcreteSlot(uint256 key) public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs4271 function checkRandomUintRejectsOversizedBits() public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs4275 function checkCreateUintRejectsOversizedBits() public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs4279 function checkCreateIntRejectsOversizedBits() public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic.rs4283 function checkPrankDelegatecallReportsUnsupported() public {CODE
LOWcrates/forge/tests/cli/test_cmd/repros.rs816 function testExpectEmitPreservesRevertWhenCallRevertsBeforeLog() public {CODE
LOWcrates/forge/tests/cli/test_cmd/repros.rs823 function testExpectEmitPreservesRevertReason() public {CODE
LOWcrates/forge/tests/cli/test_cmd/repros.rs830 function testExpectEmitPreservesCustomError() public {CODE
LOWcrates/forge/tests/cli/test_cmd/symbolic_storage.rs398 function checkNativeGenericStorage(address owner) public view {CODE
LOWcrates/forge/tests/cli/test_cmd/trace.rs43 function testTraceWithConflictingSignatures() public {CODE
LOWcrates/forge/tests/cli/test_cmd/trace.rs133 function testStructTracesUseContractAbi() public view {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1005 function testHistoryContractDeployed() public {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1009 function testInitialHistoryWindowSeeded() public {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1018 function testRollStoresParentBlockHash() public {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1119 function testRollDoesNotPopulateReplacedHistoryContract() public {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1128 function testRollDoesNotExposeSeededHistorySlotAfterEtch() public {CODE
LOWcrates/forge/tests/cli/test_cmd/mod.rs1137 function testSetBlockhashDoesNotPopulateReplacedHistoryContract() public {CODE
158 more matches not shown…
Hallucination Indicators22 hits · 220 pts
SeverityFileLineSnippetContext
CRITICALcrates/verify/src/etherscan/flatten.rs27 let metadata = context.project.settings.solc.metadata.as_ref();CODE
CRITICALcrates/cast/src/cmd/wallet/mod.rs1258 assert_eq!(args.send_tx.eth.etherscan.chain.map(|chain| chain.id()), Some(4217));CODE
CRITICALcrates/cast/src/cmd/wallet/mod.rs1268 args.send_tx.eth.wallet.raw.private_key.as_deref(),CODE
CRITICALcrates/forge/src/runner.rs703 self.mcr.tcfg.multi_network.pass_network.as_ref(),CODE
CRITICALcrates/forge/src/runner.rs1115 if !self.mcr.tcfg.multi_network.all_override_networks.is_empty() {CODE
CRITICALcrates/forge/src/runner.rs2006 if (self.cr.mcr.tcfg.showmap.is_some() || self.cr.mcr.tcfg.fuzz_only)CODE
CRITICALcrates/forge/src/runner.rs2014 if let Some(showmap) = self.cr.mcr.tcfg.showmap.as_ref() {CODE
CRITICALcrates/forge/src/runner.rs3475 if let Some(showmap) = self.cr.mcr.tcfg.showmap.clone() {CODE
CRITICALcrates/forge/src/runner.rs3610 if let Some(minimize) = self.cr.mcr.tcfg.fuzz_minimize.as_ref() {CODE
CRITICALcrates/forge/src/runner.rs4729 if let Some(showmap) = self.cr.mcr.tcfg.showmap.clone() {CODE
CRITICALcrates/forge/src/runner.rs4757 if let Some(minimize) = self.cr.mcr.tcfg.fuzz_minimize.as_ref() {CODE
CRITICALcrates/evm/core/src/evm/eth.rs98 Ok(ResultAndState::new(result, self.ctx.journaled_state.inner.state.clone()))CODE
CRITICALcrates/evm/core/src/evm/tempo.rs185 Ok(ResultAndState::new(result, self.ctx.journaled_state.inner.state.clone()))CODE
CRITICALcrates/anvil/tests/it/fork.rs718 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs845 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs860 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs921 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs1208 let status = res.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs1336 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/fork.rs1351 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/traces.rs1049 let status = tx.inner.inner.inner.receipt.status.coerce_status();CODE
CRITICALcrates/anvil/tests/it/logs.rs135 .flat_map(|receipt| receipt.unwrap().inner.inner.inner.receipt.logs.clone())CODE
Decorative Section Separators23 hits · 69 pts
SeverityFileLineSnippetContext
MEDIUMcrates/doc/src/render.rs27// ── public entry point ───────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs162// ── rendering context ────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs183// ── contract ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs455// ── free functions ────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs478// ── constants ─────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs505// ── standalone items ──────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs616// ── function section ──────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs754// ── natspec comment collection ────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/render.rs944// ── markdown output helpers ───────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/vocs.rs86// ── vocs.config.ts ────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/vocs.rs265// ── homepage ──────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/vocs.rs301// ── homepage link rewriting ───────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/vocs.rs527// ── package.json ──────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/vocs.rs546// ── helpers ───────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/hir_ext.rs25// ── name-to-page map ──────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/hir_ext.rs211// ── inheritance links ─────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/hir_ext.rs251// ── inheritdoc resolution ─────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/hir_ext.rs643// ── inline link replacement ───────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/hir_ext.rs896// ── path helpers ──────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/utils.rs15// ── git source ────────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/doc/src/utils.rs41// ── deployments ──────────────────────────────────────────────────────────────COMMENT
MEDIUMcrates/cheatcodes/src/test/expect.rs107 /// ┌───────┬───────┬───────┬───────┬────┐COMMENT
MEDIUMcrates/cheatcodes/src/test/expect.rs109 /// └───────┴───────┴───────┴───────┴────┘COMMENT
Verbosity Indicators24 hits · 47 pts
SeverityFileLineSnippetContext
LOWcrates/cast/src/cmd/keychain.rs1450 // Step 4: local signing readiness.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1458 // Step 5: on-chain key state.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1507 // Step 7: expiry.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1515 // Step 8: hardfork detection (used for limits and allowed-calls checks).COMMENT
LOWcrates/cast/src/cmd/keychain.rs1519 // Step 9: spending limits.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1524 // Step 10: allowed calls (TIP-1011, T3+ only).COMMENT
LOWcrates/cast/src/cmd/keychain.rs1358 // Step 1: local registry lookup.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1370 // Step 2: RPC reachability.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1420 // Step 3: chain-id match + final entry selection.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1495 // Step 6: revoked?COMMENT
LOWcrates/forge/src/cmd/bind_json.rs54 // Step 1: Read and preprocess sourcesCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs73 // Step 2: Preprocess sources to handle potentially invalid bindingsCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs79 // Step 3: Find structs and generate bindingsCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs83 // Step 4: Write bindingsCOMMENT
LOWcrates/evm/core/src/backend/mod.rs886 // here's an edge case where we need to check if this account has been created, inCOMMENT
LOWcrates/cheatcodes/src/inspector.rs1920 // we need to check if we've found all the emits.COMMENT
LOWcrates/cheatcodes/src/test/revert_handlers.rs200 // we need to check if it matches our criteriaCOMMENT
LOWcrates/cheatcodes/src/test/revert_handlers.rs206 // We need to check if this revert matches our expected criteriaCOMMENT
LOW.github/scripts/tempo-check.sh580# Step 1: Get the fee_payer_signature_hash using --tempo.print-sponsor-hashCOMMENT
LOW.github/scripts/tempo-check.sh581# Step 2: Sign it with the sponsor's private keyCOMMENT
LOW.github/scripts/tempo-check.sh582# Step 3: Send with --tempo.sponsor and --tempo.sponsor-signatureCOMMENT
LOW.github/scripts/tempo-check.sh584# Step 1: Get the hash that the sponsor needs to signCOMMENT
LOW.github/scripts/tempo-check.sh590# Step 2: Sponsor signs the hashCOMMENT
LOW.github/scripts/tempo-check.sh594# Step 3: Send the sponsored transaction with the signatureCOMMENT
Structural Annotation Overuse20 hits · 41 pts
SeverityFileLineSnippetContext
LOWcrates/cast/src/cmd/keychain.rs1450 // Step 4: local signing readiness.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1458 // Step 5: on-chain key state.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1507 // Step 7: expiry.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1515 // Step 8: hardfork detection (used for limits and allowed-calls checks).COMMENT
LOWcrates/cast/src/cmd/keychain.rs1519 // Step 9: spending limits.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1524 // Step 10: allowed calls (TIP-1011, T3+ only).COMMENT
LOWcrates/cast/src/cmd/keychain.rs1358 // Step 1: local registry lookup.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1370 // Step 2: RPC reachability.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1420 // Step 3: chain-id match + final entry selection.COMMENT
LOWcrates/cast/src/cmd/keychain.rs1495 // Step 6: revoked?COMMENT
LOWcrates/forge/src/cmd/bind_json.rs54 // Step 1: Read and preprocess sourcesCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs73 // Step 2: Preprocess sources to handle potentially invalid bindingsCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs79 // Step 3: Find structs and generate bindingsCOMMENT
LOWcrates/forge/src/cmd/bind_json.rs83 // Step 4: Write bindingsCOMMENT
LOW.github/scripts/tempo-check.sh580# Step 1: Get the fee_payer_signature_hash using --tempo.print-sponsor-hashCOMMENT
LOW.github/scripts/tempo-check.sh581# Step 2: Sign it with the sponsor's private keyCOMMENT
LOW.github/scripts/tempo-check.sh582# Step 3: Send with --tempo.sponsor and --tempo.sponsor-signatureCOMMENT
LOW.github/scripts/tempo-check.sh584# Step 1: Get the hash that the sponsor needs to signCOMMENT
LOW.github/scripts/tempo-check.sh590# Step 2: Sponsor signs the hashCOMMENT
LOW.github/scripts/tempo-check.sh594# Step 3: Send the sponsored transaction with the signatureCOMMENT
Self-Referential Comments6 hits · 18 pts
SeverityFileLineSnippetContext
MEDIUM.github/workflows/release.yml105 # Create the GitHub release as a draft up-front so that all matrix jobsCOMMENT
MEDIUM.github/scripts/combine-benchmarks.sh12# Define the benchmark files and their section namesCOMMENT
MEDIUM.github/scripts/tempo-check.sh169# Create an access key for testingCOMMENT
MEDIUM.github/scripts/tempo-check.sh489 # Create a new unrestricted key, then add scope restrictions via set-scopeCOMMENT
MEDIUM.github/scripts/tempo-check.sh569# Create a sponsor wallet for testing sponsored (gasless) transactionsCOMMENT
MEDIUM.github/scripts/tempo-check.sh682# Create a script that calls multiple contracts and batch them into a single txCOMMENT
Modern AI Meta-Vocabulary5 hits · 15 pts
SeverityFileLineSnippetContext
MEDIUMcrates/forge/src/opts.rs161 /// Generate scaffold files.COMMENT
MEDIUMcrates/forge/src/cmd/doc.rs29 /// ready-to-use [vocs](https://vocs.dev) site scaffold alongside theCOMMENT
MEDIUMcrates/doc/src/vocs.rs37 // Write user-editable scaffold files only on first run so that manualCOMMENT
MEDIUMcrates/doc/src/vocs.rs71 // Always regenerate: unlike user-editable scaffold files, index.mdx isCOMMENT
MEDIUMcrates/doc/src/builder.rs28 /// Total time spent writing the vocs site scaffold.COMMENT
Example Usage Blocks4 hits · 6 pts
SeverityFileLineSnippetContext
LOWcrates/common/src/preprocessor/data.rs153 /// Example usage:COMMENT
LOWcrates/cheatcodes/spec/src/vm.rs3129 /// Example usage:COMMENT
LOW.github/scripts/bump-tempo.sh7# Usage:COMMENT
LOW.github/scripts/tempo-mpp.sh9# Usage:COMMENT
AI Slop Vocabulary2 hits · 6 pts
SeverityFileLineSnippetContext
MEDIUMcrates/forge/src/result.rs56 /// Essentially `identifier => signature => result`.COMMENT
MEDIUMcrates/evm/fuzz/src/strategies/invariants.rs87/// leverage the evolving fuzz dictionary.COMMENT
Slop Phrases2 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUM…9AB6b21cDF116f611110b048987E58894786C244/metadata.json1[{"SourceCode":{"language":"Solidity","sources":{"contracts/InterestRates/InterestRatePositionManager.f.sol":{"content":CODE
MEDIUMcrates/primitives/src/network/mod.rs25/// Note: This is a basic implementation ("for now") that provides the core NetworkCOMMENT
Deep Nesting2 hits · 2 pts
SeverityFileLineSnippetContext
LOW.github/scripts/matrices.py101CODE
LOW.github/scripts/compare-benchmark-thresholds.py77CODE
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWcrates/forge/tests/cli/verify_bytecode.rs363// TODO: Add test utils for base such as basescan keys and alchemy keys.COMMENT
Redundant / Tautological Comments1 hit · 2 pts
SeverityFileLineSnippetContext
LOW.github/scripts/setup-foundryup.sh9# Check if foundryup script exists in the repoCOMMENT