Module: Jekyll::AgentAudit::Reporters::Console
- Defined in:
- lib/jekyll/agent_audit/reporters/console.rb
Constant Summary collapse
- SEVERITIES =
%w[error warning info experimental].freeze
- MAX_VALUE_LENGTH =
240
Class Method Summary collapse
Class Method Details
.render(report, verbose: false) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/jekyll/agent_audit/reporters/console.rb', line 11 def render(report, verbose: false) data = report.to_h summary = data.fetch("summary", {}) lines = ["AI publishing audit — local build", "", "Documents inspected: #{safe(summary["documents_inspected"])}"] lines << "Active findings: #{severity_summary(summary["active"])}" lines << "Suppressed findings: #{safe(summary["suppressed"], "0")}" lines << coverage_line(data.fetch("coverage", {}), data.dig("run", "complete")) lines << "" lines << "Discovery: Not assessed — jekyll-agent-discovery" append_findings(lines, report.findings, verbose) append_diagnostics(lines, data.fetch("diagnostics", []), verbose) lines << "" lines << result_line(report, data) lines.join("\n") end |
.result_line(report, data) ⇒ Object
100 101 102 103 104 |
# File 'lib/jekyll/agent_audit/reporters/console.rb', line 100 def result_line(report, data) code = Array(data["diagnostics"]).any? { |item| (item["code"] || item[:code]).to_s == "interrupted" } ? 130 : report.exit_code result = {0 => "passed", 1 => "failed policy", 130 => "interrupted"}.fetch(code, "incomplete") "Result: #{result} (fail_on=#{escape(data.dig("policy", "fail_on"))}). Exit #{code}." end |