docs(sanitization): add comprehensive documentation for Sanitization feature family - #52
Merged
Merged
Conversation
- Document the engine, extension methods, contracts, and NoOp implementation - Show standalone usage with no DI or configuration required - List package details and dependencies
- Document the feature module, options, service, and explicit registration extension - Show both auto discovery and explicit registration usage - Explain the departure from the cache family NoOp floor pattern
- Document the package family overview and dependency direction - Detail the engine, result types, settings, and enums - Detail the module, options, service, and explicit registration extension - Cover two layer gating and provide a full host integration example
- Add nuget badges for both sanitization packages - Add the sanitization feature family package table entries and installation snippet - Add a usage example and update target frameworks and documentation links
- Document both new packages and the comprehensive test suite under unreleased - Note the new independent version family - Document the sensitive data masking fix found while writing tests
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR completes the documentation layer for the Sanitization feature, covering the full API surface, package responsibilities, configuration, and usage patterns for both abstractions and module packages.
Included:
PowerCSharp.Feature.Sanitization.md: comprehensive API reference documenting the static SanitizationEngine (split by concern: log injection, file path, sensitive data, regex injection), extension methods (SanitizeForLog, SanitizeForFilePath, etc.), result types (SanitizationResult, SensitiveDataResult), configuration surface (SanitizationSettings), and fail-safe behavior guarantees.
PowerCSharp.Feature.Sanitization.Abstractions README: describes the abstractions package role, static engine architecture, result and settings models, target frameworks, and cross-cutting concerns (platform independence, performance tracking).
PowerCSharp.Feature.Sanitization README: module package documentation covering DI wiring, auto-discovery via PowerFeatures framework, explicit registration via AddSanitizationFeature(), configuration binding (PowerFeatures:Sanitization section), and integration points (ConfigureSanitizationEngine).
Root README: updated with Sanitization family overview, version badge, NuGet badge, and links to feature documentation.
CHANGELOG.md: entry documenting the Sanitization feature addition, sanitization concerns covered, and configuration surface.
All documentation includes inline code examples, CWE references (CWE-117 for log injection, CWE-22 for directory traversal, CWE-200 for information disclosure, CWE-400/CWE-730 for ReDoS), and cross-references to related API documentation.
No code changes; documentation only.