pipeline/ модулі лежать на VPS у /srv/projects/pediatric-news/pipeline/infographic_render_v2.py мігровано з /tmp у pipeline/infographic.pycurl https://graph.threads.net/v1.0/me?access_token=... → 200)0 5,11,17 * * *, нова pipeline сама за себе)bot.py.bak-2026-05-11python3 bot.py --dry-run → бачимо що Telegram-пост + thread + PNG згенерувалися без post-APICron tick'ає сам: 0 5,11,17 * * * cd /srv/projects/pediatric-news && python3 bot.py >> /var/log/pediatric-news.log 2>&1
cd /srv/projects/pediatric-news
python3 bot.py # повний tick
python3 bot.py --dry-run # без публікації, лише generation + log
python3 bot.py --channel telegram # лише Telegram (skip Threads)
# Тимчасово (на один tick):
crontab -e # закоментувати рядок pediatric-news
# Постійно (на обслуговування):
mv /etc/cron.d/pediatric-news /etc/cron.d/pediatric-news.disabled
tail -f /var/log/pediatric-news.log # текстові логи
tail -f /var/log/pediatric-news.jsonl | jq . # metrics per-tick
cat /srv/projects/pediatric-news/seen_ids.json | jq '. | length' # скільки seen
journalctl -u cron --since "1 hour ago" | grep pediatric # cron-екзекуція
/var/log/pediatric-news.log (rotate weekly через logrotate)/var/log/pediatric-news.jsonl (per-tick)pediatric_news.events для довгострокової аналітикиcd /srv/passepartout/meta/threads
python3 refresh_long_lived_token.py # TODO Phase 2
feedback_gemini_key_routing.md — прод використовує gemini-med-detective.keycheck_feeds.py (Phase 2) — alert якщо feed >7 днів без оновленьfonts-dejavu, на VPS встановлено; апдейт системи може зачепити, тест test_render_png_outputs_1080x1080 ловить