- Add report_templates package (_renderer.py) with MD/HTML/PDF/DOCX
support using lazy optional imports (markdown, weasyprint, python-docx)
- Apply Wheels brand colors (#003865/#0066cc) to HTML and DOCX output
- Extend save_report MCP tool with `format` param (default: "md");
binary formats use write_bytes, text formats keep async writer
- Add [report] optional dep group to pyproject.toml for one-step install
- Fix ReportConfig.output_dir default: ./reports → ./output-reports
to align config.py with the codified REPORT_OUTPUT_DIR env setting
Ref: session 2026-04-15 — exec-friendly report output track
BREAKING CHANGE: ReportConfig.output_dir default changed from
./reports to ./output-reports. Environments without REPORT_OUTPUT_DIR
set in .env will write to a different path after this change.
- Created detailed reports for users Nathan Castaldi and Randy Novak.
- Reports include user summaries, directory object information, and raw normalized identity fields.
- Both reports generated from Active Directory on 2026-04-15.
- nexus-mcp/src/shards/reports.py: new async MCP tool that writes
markdown to documentation/output-reports/ with UTC-timestamped
filenames and a path-traversal safety guard
- nexus-mcp/src/main.py: register reports shard gated by ENABLE_REPORTS,
consistent with existing shard loader pattern
- Keeps chat context lightweight for large identity/audit payloads
expected during post-consent validation (ref: SESSION_SNAPSHOT_2026-04-15_2)
- document production-correct AD dual-account and privileged OU handling
- record policy-aware identity confidence implementation status
- capture explainability improvements in identity output semantics
- note Entra admin-consent as external blocker with clean handoff next steps