Skip to content

refactor(reporting): split reporting.py into sub-package (518 > 500-line gate) #392

@Alberto-Codes

Description

@Alberto-Codes

Context

src/docvet/reporting.py is at 518 lines after Story 32.4 added the suppressed parameter to format_json() (+18 lines). This exceeds the 500-line module size gate.

Proposed Split

The module has natural seams for extraction:

  • reporting/_json.pyformat_json() and JSON-specific helpers
  • reporting/_terminal.pyformat_terminal(), _colorize(), terminal helpers
  • reporting/_markdown.pyformat_markdown()
  • reporting/_summary.pyformat_summary(), format_verbose_header(), format_quality_summary()
  • reporting/__init__.py — re-exports public API, determine_exit_code(), write_report(), compute_quality(), CheckQuality

Origin

Flagged during Story 32.4 code review (M1 finding). See _bmad-output/implementation-artifacts/32-4-inline-suppression-comments.md.

Metadata

Metadata

Assignees

No one assigned

    Labels

    refactorCode restructuring without behavior changes

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions