Reduces scan noise by 96% through proper exclusion of test fixtures, demo apps, and intentional vulnerabilities. Phase 16.1 - Glob Pattern Matching: - Replace starts_with() with globset for ** and * patterns - Backwards compatible with legacy prefix patterns - Add walker/mod.rs tests for glob exclusions Phase 16.2 - .aphoriaignore File: - Create walker/ignore_file.rs for gitignore-style parsing - Merge with aphoria.toml excludes - Support # comments and whitespace trimming Phase 16.3 - Inline Ignore Comments: - Create extractors/ignore_comments.rs parser - Support // aphoria:ignore, // aphoria:ignore-next-line - Support // aphoria:ignore-block / // aphoria:end-ignore - Multiple comment styles: //, #, /*, --, <!-- - Integrate with ExtractorRegistry.extract_all() Phase 16.4 - Ack Export/Import: - Create ack_file.rs for TOML serialization - Add 'aphoria ack add' subcommand - Add 'aphoria ack export' to .aphoria/acks.toml - Add 'aphoria ack import' from .aphoria/acks.toml - Preserve expiry and reason fields Also configures stemedb with: - aphoria.toml with glob excludes for vulnbank, extractors, fixtures - .aphoriaignore for dashboard, community, latent, SDK examples Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
54 lines
1.3 KiB
TOML
54 lines
1.3 KiB
TOML
# Aphoria Configuration for StemeDB
|
|
#
|
|
# This configures the code-level truth linter for the StemeDB project.
|
|
|
|
[project]
|
|
name = "stemedb"
|
|
|
|
[scan]
|
|
# Exclude patterns (supports globs)
|
|
exclude = [
|
|
# Build outputs
|
|
"target/**",
|
|
"node_modules/**",
|
|
".git/**",
|
|
|
|
# Intentionally vulnerable demo app
|
|
"docs/demo/vulnbank/**",
|
|
|
|
# Test fixtures (intentionally insecure patterns)
|
|
"**/uat/fixtures/**",
|
|
"**/test_fixtures/**",
|
|
|
|
# Extractor source files (contain detection patterns as test strings, not real issues)
|
|
"applications/aphoria/src/extractors/**",
|
|
|
|
# Report modules (contain example output, not real issues)
|
|
"applications/aphoria/src/report/**",
|
|
|
|
# Learning modules (contain pattern examples)
|
|
"applications/aphoria/src/learning/**",
|
|
|
|
# Community modules (contain anonymization examples)
|
|
"applications/aphoria/src/community/**",
|
|
]
|
|
|
|
# Include test files in scan (we'll use inline ignores for specific patterns)
|
|
include_tests = false
|
|
|
|
# Max file size to scan (1MB)
|
|
max_file_size = 1048576
|
|
|
|
[extractors]
|
|
# All extractors enabled by default
|
|
|
|
[corpus]
|
|
# Include all corpus sources
|
|
include_hardcoded = true
|
|
include_rfc = true
|
|
include_owasp = true
|
|
|
|
[aliases]
|
|
# Auto-create aliases when conflicts are detected
|
|
auto_create_aliases = true
|