← всі звіти · infra_reports_hub.md

name: Reports hub description: Markdown-viewer за Caddy /reports/ — рендерить .md з whitelist dirs у HTML на льоту type: reference originSessionId: de6b0934-87c5-45b4-849e-9b451f70b4e3

URL: http://31.131.26.203/reports/ (index) · http://31.131.26.203/reports/<path> (рендер)

Raw text: /reports/raw/<path>

Сервіс: reports.service (systemd) → uvicorn на 127.0.0.1:8081 → Caddy /reports/* strip_prefix + reverse_proxy.

Код: /srv/reports/server.py (FastAPI + markdown-it-py). Venv — /srv/reports/.venv/.

Whitelist source dirs (SOURCES у server.py):

Index рекурсивний (rglob) — показує всі .md з усіх SOURCES, сортовано по mtime desc.

How to apply: коли Сергій просить лінк на звіт чи бриф — віддавай через цей hub, а не Telegram-файл. Сергій явно сказав 2026-04-20 що не читає MD-файли — Reports Hub = default канал доставки (див. feedback_report_delivery.md). Новий source dir → додай у SOURCES dict + restart reports.service. Стиль тотожний Med Detective (OKLCH + Geist) — можна показувати клієнтам без сорому.