Skip to content

feat: baseline support#24

Merged
yardexx merged 7 commits intorelease/0.1.0from
feature/baseline-support
Feb 1, 2026
Merged

feat: baseline support#24
yardexx merged 7 commits intorelease/0.1.0from
feature/baseline-support

Conversation

@yardexx
Copy link
Copy Markdown
Owner

@yardexx yardexx commented Jan 26, 2026

Status

IN DEVELOPMENT

Description

Type of Change

  • ✨ New feature (non-breaking change which adds functionality)
  • 🛠️ Bug fix (non-breaking change which fixes an issue)
  • ❌ Breaking change (fix or feature that would cause existing functionality to change)
  • 🧹 Code refactor
  • ✅ Build configuration change
  • 📝 Documentation
  • 🗑️ Chore

- Add modular SARIF module (sarif_document, sarif_builder, sarif_reporter)
- Map dart_shield severity levels to SARIF levels (high->error, medium->warning, low/info->note)
- Support --reporter=sarif CLI option
- Add comprehensive tests (29 tests for SARIF module)
- Add GitHub Actions integration documentation

This enables:
- GitHub Security tab integration
- PR annotations showing security issues inline
- Tracking security issues over time
- Add BaselineManager for creating and loading baseline files
- Add `dart_shield baseline` command to create baseline from current issues
- Add `--baseline` option to analyze command to filter baselined issues
- Fingerprints are MD5 hashes of (ruleId:filePath:line)
- Baseline files are human-readable YAML format
- Add comprehensive tests (12 tests for baseline manager)

This enables teams to adopt dart_shield in existing projects
without being overwhelmed by legacy issues.
- Default baseline now writes to .dart_tool/dart_shield_baseline.yaml
- Follows Dart conventions for tool-generated files
- --output/-o option still allows custom paths
- Ensures parent directory is created if it doesn't exist
Default path is now .dart_tool/dart_shield/baseline.yaml
Split baseline_manager.dart to follow one-class-per-file convention.
Sealed classes and their implementations remain grouped by design.
@docs-page
Copy link
Copy Markdown

docs-page bot commented Jan 26, 2026

To view this pull requests documentation preview, visit the following URL:

docs.page/yardexx/dart_shield~24

Documentation is deployed and generated using docs.page.

@yardexx yardexx changed the base branch from master to release/0.1.0 January 26, 2026 16:07
@yardexx yardexx merged commit bf82639 into release/0.1.0 Feb 1, 2026
@yardexx yardexx deleted the feature/baseline-support branch February 2, 2026 18:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant