Skip to content

Harden phase-2 modules and web from code review

강규욱 requested to merge feat/phase2-drafting-modules into main

Address 15 max-effort code-review findings (accuracy first, then cleanup).

Accuracy:

  • Preserve OCR provenance flags (OCR_APPLIED) in canonical page quality flags
  • Token-based keyword matching so short ASCII keys (ai/api/ui/dr/db) no longer false-match inside email/domain/available; Korean substring kept (m03/04/05)
  • Reflect real step status in run-all/run-drafting badges and overall job status
  • Default reranker per-source cap off (None) so single-source top-K isn't truncated
  • Stop dropping requirements in m04 component / m05 section mapping
  • Surface a bad explicit --strategy/--architecture path as a failed result

Cleanup / performance:

  • Unify web cache to no-store (drop ?v= rewrite; 404 instead of 500 on missing index)
  • Pre-tokenize MMR pool once (O(P^2) -> O(P))
  • Cut list_runs I/O: one registry read per run, no duplicate artifact sweeps
  • Move run title to run_meta.json with legacy upload_registry fallback
  • Keep selection of runs that failed to bulk-delete
  • Normalize solution-catalog override keywords to a list
  • Rename OCR min_word_confidence -> min_avg_confidence (it is a page-average)
  • Centralize default LLM-JSON metadata in _shared (dedupe across 5 services)

Tests: 153 passed (+33 regression tests). Docs: CHANGELOG/RELEASE_NOTES updated.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Merge request reports