[refactor] Introduce Typed Safety Audit Finding Types in Classification Engine #40

Closed
opened 2026-08-30 16:14:08 +03:00 by jalmari · 1 comment
Owner

Parent

Part of #39

What to build

Add an explicit AuditFindingType string enum in the classification domain module. Update ClassificationEngine.audit_safety and SafetyAuditor to emit and evaluate AuditFindingType constants instead of plain string literals.

Acceptance criteria

  • AuditFindingType enum is defined with categories for transactional, shipping, and protected item findings
  • ClassificationEngine.audit_safety returns tuples of (AuditFindingType, AnalysisResult)
  • SafetyAuditor evaluates AuditFindingType constants during scan summary and plan audits
  • Unit tests for classification engine and safety auditor verify typed finding assertions

Blocked by

  • None (can start immediately)
## Parent Part of #39 ## What to build Add an explicit `AuditFindingType` string enum in the classification domain module. Update `ClassificationEngine.audit_safety` and `SafetyAuditor` to emit and evaluate `AuditFindingType` constants instead of plain string literals. ## Acceptance criteria - [ ] `AuditFindingType` enum is defined with categories for transactional, shipping, and protected item findings - [ ] `ClassificationEngine.audit_safety` returns tuples of `(AuditFindingType, AnalysisResult)` - [ ] `SafetyAuditor` evaluates `AuditFindingType` constants during scan summary and plan audits - [ ] Unit tests for classification engine and safety auditor verify typed finding assertions ## Blocked by - None (can start immediately)
Author
Owner

Completed refactoring of safety audit finding types to AuditFindingType enum in commit ed9b3f8. All 138 unit tests pass.

Completed refactoring of safety audit finding types to AuditFindingType enum in commit ed9b3f8. All 138 unit tests pass.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Reference
Lavisys/mailsweep#40
No description provided.