Verdict is derived from severity counts via the same deterministic formula every VegaSec report uses. clean.sol was scanned from pasted source. This is static-analysis triage, not a certification or formal audit attestation.
PDF artifact
Queued artifact pipeline · not blocking on the scan
No PDF artifact has been requested for this report yet. The HTML report and the Markdown export already carry the full disclaimer and limitations inline. PDF synthesis is a queued artifact, not part of the scan path.
Status endpoint
GET /report/solidity/VSS-20260923-G2S1GFNZ/export.pdf
Solidity evidence report
4 audit findings
Severity distribution
Executive summary
- 4 findings surfaced (0 critical, 0 high, 1 medium, 0 low, 3 informational).
- No critical or high severity findings; medium and low signals still require operator review before public promotion.
- Automated static analysis only. A human operator review has not been attached to this report.
Warnings (1)
- · Unmapped detector slither:immutable-states — classified as 'other'
- mediumUnchecked callDetector: semgrep
Low-level .call to an externally-controlled target
Evidence
Low-level .call to an externally-controlled target. Combined with reentrancy or unchecked return values, this is a common fund-draining pattern.
Exploitability notes
Analyzer did not report a confidence level; treat as unverified until reviewed.
Remediation
Check the boolean return of low-level call/delegatecall/send and revert on failure with a descriptive reason string.
- informationalLogicConfidence: highExploitability: lowDetector: slither
Version constraint 0.8.19 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html)
Evidence
Version constraint 0.8.19 contains known severe issues (https://solidity.readthedocs.io/en/latest/bugs.html) - VerbatimInvalidDeduplication - FullInlinerNonExpressionSplitArgumentEvaluationOrder - MissingSideEffectsOnSelectorAccess. It is used by: - 0.8.19 (clean.sol#1)
Exploitability notes
Informational signal; not directly exploitable without additional context.
Remediation
Re-derive the business rule by hand, write a property-based test that fails on the current path, and only then fix the implementation.
- informationalOtherConfidence: highExploitability: lowDetector: slither
CleanVault.owner (clean.sol#8) should be immutable
Evidence
CleanVault.owner (clean.sol#8) should be immutable
Exploitability notes
Informational signal; not directly exploitable without additional context.
Remediation
Review the detector output against the source manually; if exploitable, design a fix and add a regression test before deploying.
- informationalUnchecked callConfidence: highExploitability: lowDetector: slither
Low level call in CleanVault.withdraw(uint256) (clean.sol#18-23):
Evidence
Low level call in CleanVault.withdraw(uint256) (clean.sol#18-23): - (ok,None) = msg.sender.call{value: amount}() (clean.sol#21)
Exploitability notes
Informational signal; not directly exploitable without additional context.
Remediation
Check the boolean return of low-level call/delegatecall/send and revert on failure with a descriptive reason string.
Exploit reasoning
Reference-grade reasoning tied to evidence
- ef8f5683d7cd6b67fe504e7782795517878c6b18d6fbf549ba2b228c070b329e · unchecked-callmedium
Not determined
Question: Is this finding exploitable in this specific contract?
Reason: Analyzer confidence or exploitability is unknown; the narrative would overclaim without operator review.
Audit pipeline
Audit cockpit
Honest stage-by-stage view of what VegaSec ran against this contract. Automated stages do not replace a human operator review.
Audit intake
Passed320ms replay2:22 PMNormalize the submitted contract target and confirm it can enter the Solidity audit lane.
Source acquisition
Passed1.4s replay2:22 PMResolve pasted source or verified explorer source without treating malformed input as demo data.
Toolchain validation
Partial2.3s replay2:22 PMConfirm the configured static analyzers can run and produce parseable output.
- One or more analyzers emitted warnings; report findings remain usable but should be read with limitations.
Static analysis
Partial4 findings8.8s replay2:22 PMRun static analyzers against the sandboxed source and collect raw detector evidence.
- One or more analyzers emitted warnings; report findings remain usable but should be read with limitations.
Finding normalization
Passed4 findings1.1s replay2:22 PMDedupe detectors, classify vulnerability classes and compute severity-weighted risk.
Exploitability review
Partial4 findings1.9s replay2:22 PMFrame automated findings with conservative exploitability and limitation notes.
- Automated exploitability review is conservative and does not replace a manual exploitability assessment.
Remediation draft
Partial4 findings1.5s replay2:22 PMPrepare remediation-oriented evidence for the shareable report artifact.
- Remediation notes are generated from detector evidence and require project-specific engineering review.
Operator review
Blocked0ms replay2:22 PMRecord whether a human operator artifact exists before buyer escalation.
- No operator review artifact is attached to this automated scan.
- Human operator review has not been attached to this automated scan yet.
Finalization
Partial4 findings620ms replay2:22 PMPublish the automated report artifact or explain why the scan failed closed.
Artifact: Automated Solidity report · solidity-2f746d702f766567
- Final report is an automated static-analysis artifact; no operator review artifact is attached.
How to read this report
Score, confidence, ranking: four moving parts, no hand-tuning.
Generated Sep 23, 2026, 2:22 PM · Solidity · clean.sol
Score bands
0-19
AVOID-style triage
Multiple high or critical findings, low source confidence, or unverified context. Public action should pause until a Private Review or a re-scan with better evidence.
20-49
High caution
Notable findings or thin evidence. Worth a Private Review before relying on the artifact.
50-69
Watch
Mixed signals: some evidence, some gaps. Re-scan after material changes to the target.
70-89
Clear surface (automated)
No critical or high findings via static analysis. Not a safety claim: human review is still recommended for diligence work.
90-100
Strong surface (automated) · this report
No critical or high findings, verified source, and high source confidence. Not a safety claim: human review is still recommended for diligence work.
- Score
- Deterministic 0-100 derived from severity counts. Same formula across every report. Lower means more risk.
- Confidence
- Separate axis. Measures how much VegaSec trusts the input data. Low confidence pushes the verdict toward UNKNOWN; the two are never collapsed into one number.
- Ranking / percentile
- Only meaningful within the eligible Trust Index set. Shown on /trust-index when the eligible pool is large enough. Today the public index is a controlled preview.
Private Review is separate
A paid Private Review does not raise the public score on this report. Public score reflects public-source evidence only. Private Review adds operator attestation and a confidential memo, never a score bump.