Class: FastExists::Intelligence::Report::Markdown

Inherits:
Object
  • Object
show all
Defined in:
lib/fast_exists/intelligence/report/markdown.rb

Class Method Summary collapse

Class Method Details

.render(data, comparison: nil) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/fast_exists/intelligence/report/markdown.rb', line 7

def self.render(data, comparison: nil)
  lines = []
  lines << "# ⚡ FastExists Performance & Architecture Report"
  lines << ""
  lines << "> **Generated**: `#{data.timestamp}`  "
  lines << "> **Environment**: Ruby #{data.environment[:ruby_version]} | Rails #{data.environment[:rails_version]} | DB: `#{data.environment[:database_adapter]}`  "
  lines << "> **Active Backend**: `#{data.environment[:backend]}`"
  lines << ""
  lines << "## Executive Summary"
  lines << "- **Health Status**: `#{data.health[:overall_status].to_s.upcase}`"
  lines << "- **Architecture Grade**: **#{data.audit[:grade]}** (#{data.audit[:audit_score]}/100)"
  lines << "- **Queries Avoided**: **#{data.stats[:queries_avoided]}**"
  lines << "- **Database Lookups**: #{data.stats[:database_lookups]}"
  lines << "- **Hit Ratio**: #{(data.stats[:hit_ratio] * 100).round(1)}%"
  lines << ""
  lines << "## Health Check Findings"
  data.health[:checks].each do |check|
    badge = check[:status] == :pass ? "" : "⚠️"
    lines << "- #{badge} **#{check[:name]}**: #{check[:message]}"
  end
  lines << ""
  lines << "## Audit & Optimizations"
  data.audit[:findings].each do |f|
    lines << "### [#{f[:severity].to_s.upcase}] #{f[:location]}"
    lines << "- **Problem**: #{f[:problem]}"
    lines << "- **Recommendation**: #{f[:recommendation]}"
    lines << "- **Impact**: #{f[:estimated_impact]}"
    lines << ""
  end
  lines.join("\n")
end