Finding
A single issue detected by a skill during code analysis.Unique identifier for the finding. Generated automatically using a short alphanumeric format (e.g.,
"sec_xss_42a").Severity level:
"high", "medium", or "low"Determines urgency and filtering behavior. See Severity for ordering rules.Confidence level:
"high", "medium", or "low"How certain the skill is about this finding. Used for filtering low-confidence results.Brief title summarizing the issue (e.g.,
"SQL injection vulnerability in user query")Detailed explanation of the issue, including context and impact
Steps to verify the issue manually or programmatically
Primary location of the finding in the codebase
Related locations (e.g., all places where a vulnerable pattern appears)
Proposed fix with unified diff format
Time taken to generate this finding in milliseconds (must be non-negative)
Location
Specifies where a finding occurs in the codebase.File path relative to repository root (e.g.,
"src/auth/login.ts")Starting line number (1-indexed, must be positive)
Ending line number (1-indexed, must be positive). If omitted, defaults to
startLine.SuggestedFix
A proposed code change to resolve a finding.Human-readable explanation of what the fix does and why it resolves the issue
Unified diff format showing the change:
Warden can automatically apply suggested fixes using
--apply-fixes or generate PRs with fixes using schedule triggers.Severity
Severity levels for findings.Severity Ordering
Warden uses consistent ordering for filtering and comparison:Backward Compatibility
Warden normalizes legacy severity values:"critical"→"high"(for old JSONL logs)"info"→"low"(for old LLM responses)
Skills should only use the three-level scale (
high, medium, low). The normalization exists for backward compatibility with historical data.Confidence
Confidence levels indicate how certain a skill is about a finding.Confidence Ordering
Configuration
Control confidence filtering inwarden.toml:
Example: Complete Finding
Filtering and Comparison
Warden provides utilities for working with findings:Filter by Severity and Confidence
Compare Finding Priority
Get Effective Line Number
Validation
All finding types use Zod schemas for runtime validation:Skills must return findings that conform to the
FindingSchema. Invalid findings will cause analysis to fail with detailed validation errors.