-
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Description
Several cmdlets (e.g., Get-DDDomainHealthReport
) emit console warnings that do not appear to correspond to any structured properties on the returned object. This makes programmatic use difficult (e.g., pipelines, CI checks), because consumers cannot reliably parse the free‑text output.
Evidence
Command
Get-DDDomainHealthReport architechlabs.io
Output (examples)
WARNING: Report address fc8e636633ba4528828289d6915e7310@dmarc-reports.cloudflare.net is not aligned with architechlabs.io.
WARNING: No DANE records found.
WARNING: RRSIG for io expires in 15 days
WARNING: Root trust anchor expires in -2408 days
Problem
Warnings are printed but not present as object properties (unlike Hints).
Programmatic consumers cannot filter on, count, or gate on warnings without scraping text.
Proposal
- Add a structured Warnings property to returned objects (mirroring Hints).
- Keep console warnings for humans, but derive them from the structured items for consistency.
- Offer switches to control noise:
-NoWarnings
(suppress console warnings) - Normalize existing warning cases with stable codes:
ReportAddressNotAligned
NoDaneRecords
RrsigExpiringSoon
RootTrustAnchorExpired
Expected Benefits
- Enables reliable, programmatic consumption (CI/CD, dashboards, remediation scripts).
- Aligns with existing Hints pattern and improves consistency.
- Reduces text‑scraping and ambiguity.
Backward Compatibility
- Preserve current console warnings; just ensure they are generated from the new structured Warnings collection to avoid duplication.
Metadata
Metadata
Assignees
Labels
No labels