Commit 5a155eef authored by smartcontracts's avatar smartcontracts Committed by GitHub

maint(ci): clean up semgrep rules and ignores (#12347)

Cleans up the existing semgrep rules and gets rid of the blanket
ignores that were being applied everywhere now that we can add
ignores for specific files in the rule config.
parent e165a7ea
rules: rules:
- id: sol-safety-deployutils-args - id: sol-safety-deployutils-args
languages: [solidity]
severity: ERROR
pattern-regex: DeployUtils\.(create1|create2|create1AndSave|create2AndSave)\s*\(\s*\{[^}]*?_args\s*:\s*(?!\s*DeployUtils\.encodeConstructor\()\s*[^}]*?\}\s*\) pattern-regex: DeployUtils\.(create1|create2|create1AndSave|create2AndSave)\s*\(\s*\{[^}]*?_args\s*:\s*(?!\s*DeployUtils\.encodeConstructor\()\s*[^}]*?\}\s*\)
message: _args parameter should be wrapped with DeployUtils.encodeConstructor message: _args parameter should be wrapped with DeployUtils.encodeConstructor
severity: ERROR
languages:
- solidity
- id: sol-style-input-arg-fmt - id: sol-style-input-arg-fmt
languages: [solidity]
severity: ERROR
pattern-regex: function\s+\w+\s*\(\s*([^)]*?\b\w+\s+(?!_)(?!memory\b)(?!calldata\b)(?!storage\b)(?!payable\b)\w+\s*(?=,|\))) pattern-regex: function\s+\w+\s*\(\s*([^)]*?\b\w+\s+(?!_)(?!memory\b)(?!calldata\b)(?!storage\b)(?!payable\b)\w+\s*(?=,|\)))
message: Named inputs to functions must be prepended with an underscore message: Named inputs to functions must be prepended with an underscore
severity: ERROR paths:
languages: exclude:
- solidity - op-chain-ops/script/testdata/scripts/ScriptExample.s.sol
- packages/contracts-bedrock/scripts/libraries/Solarray.sol
- packages/contracts-bedrock/scripts/interfaces/IGnosisSafe.sol
- packages/contracts-bedrock/src/universal/interfaces/IWETH.sol
- packages/contracts-bedrock/src/universal/WETH98.sol
- packages/contracts-bedrock/src/L2/interfaces/ISuperchainWETH.sol
- packages/contracts-bedrock/src/L2/SuperchainWETH.sol
- packages/contracts-bedrock/src/governance/interfaces/IGovernanceToken.sol
- packages/contracts-bedrock/src/governance/GovernanceToken.sol
- id: sol-style-return-arg-fmt - id: sol-style-return-arg-fmt
languages: [solidity]
severity: ERROR
pattern-regex: returns\s*(\w+\s*)?\(\s*([^)]*?\b\w+\s+(?!memory\b)(?!calldata\b)(?!storage\b)(?!payable\b)\w+(?<!_)\s*(?=,|\))) pattern-regex: returns\s*(\w+\s*)?\(\s*([^)]*?\b\w+\s+(?!memory\b)(?!calldata\b)(?!storage\b)(?!payable\b)\w+(?<!_)\s*(?=,|\)))
message: Named return arguments to functions must be appended with an underscore message: Named return arguments to functions must be appended with an underscore
severity: ERROR paths:
languages: exclude:
- solidity - op-chain-ops/script/testdata/scripts/ScriptExample.s.sol
- packages/contracts-bedrock/scripts/libraries/Solarray.sol
- packages/contracts-bedrock/scripts/interfaces/IGnosisSafe.sol
- packages/contracts-bedrock/src/dispute/interfaces/IPermissionedDisputeGame.sol
- packages/contracts-bedrock/src/dispute/interfaces/IFaultDisputeGame.sol
- id: sol-style-doc-comment - id: sol-style-doc-comment
languages: [solidity] languages: [solidity]
......
...@@ -9,6 +9,7 @@ vendor/ ...@@ -9,6 +9,7 @@ vendor/
*.min.js *.min.js
# Common test paths # Common test paths
# TODO: Tests should conform to semgrep too.
test/ test/
tests/ tests/
...@@ -17,29 +18,3 @@ tests/ ...@@ -17,29 +18,3 @@ tests/
# Semgrep-action log folder # Semgrep-action log folder
.semgrep_logs/ .semgrep_logs/
op-chain-ops/script/testdata
op-chain-ops/script/testdata/scripts/ScriptExample.s.sol
packages/*/node_modules
packages/*/test
# TODO: Define these exclusions inside of the semgrep rules once those rules
# are all defined locally in the repository instead of the semgrep app.
# Contracts: autogenerated solidity library
packages/contracts-bedrock/scripts/libraries/Solarray.sol
# Contracts: vendor interfaces
packages/contracts-bedrock/scripts/interfaces/IGnosisSafe.sol
packages/contracts-bedrock/src/vendor/eas/
# Contracts: deliberate exclusions
packages/contracts-bedrock/src/universal/WETH98.sol
packages/contracts-bedrock/src/universal/interfaces/IWETH.sol
packages/contracts-bedrock/src/L2/SuperchainWETH.sol
packages/contracts-bedrock/src/L2/interfaces/ISuperchainWETH.sol
packages/contracts-bedrock/src/governance/GovernanceToken.sol
packages/contracts-bedrock/src/governance/interfaces/IGovernanceToken.sol
packages/contracts-bedrock/src/dispute/interfaces/IFaultDisputeGame.sol
packages/contracts-bedrock/src/dispute/interfaces/IPermissionedDisputeGame.sol
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment