|
18 | 18 | from .findings import Finding, dedupe, gate, severity_distribution |
19 | 19 | from .governance import DEFAULT_ALLOWED_SCRIPTS, GovernanceEngine |
20 | 20 | from .llm_review import run_llm_review |
21 | | -from .report import build_report, write_reports |
| 21 | +from .redaction import redact_text |
| 22 | +from .report import build_report, render_markdown, write_reports |
22 | 23 | from .sandbox import DIFF_WS_PATH, SandboxSession, create_runtime |
23 | 24 |
|
24 | 25 | DEFAULT_SKILL_ROOT = str(Path(__file__).resolve().parents[1] / "skills" / "code-review") |
@@ -165,7 +166,10 @@ async def run_review(opts: ReviewOptions) -> ReviewResult: |
165 | 166 | filter_events=filter_events, sandbox_outcomes=sandbox_outcomes, |
166 | 167 | metrics=metrics, llm_summary=llm_summary, warnings=warnings) |
167 | 168 | json_path, md_path = write_reports(report, opts.output_dir) |
168 | | - await store.add_report(task_id, report, Path(md_path).read_text(encoding="utf-8")) |
| 169 | + report_json_text = redact_text(json.dumps(report, indent=2, ensure_ascii=False, default=str)) |
| 170 | + report_for_db = json.loads(report_json_text) |
| 171 | + md_text = render_markdown(report) |
| 172 | + await store.add_report(task_id, report_for_db, md_text) |
169 | 173 | await store.update_task(task_id, status="completed", |
170 | 174 | diff_summary=diff_summary, finished=True) |
171 | 175 | return ReviewResult(task_id=task_id, report=report, |
|
0 commit comments