#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Cek 3 link yang akan dipakai hari ini: sudah pernah muncul di jadwal Repliz mana pun?

Ambil SEMUA jadwal dari API (sumber hidup), cari URL target, laporkan akun + status + scheduleAt.
Read-only.
"""
import sys, time
sys.path.insert(0, "/home/mantapman/.hermes/profiles/atun/workspace")
from repliz_client import get_client, ACC

TARGETS = {
    "uky (studiosoft.id)": "bikin-konten-pakai-ai-boleh-asal-tahu-batasnya",
    "tsc": "cara-mencegah-penularan-pms-3",
    "das": "hal-wajib-cek-sebelum-beli-mobil-listrik-bebas",
    "das2": "hal-wajib-cek-sebelum-beli-mobil-listrik-bekas",
}

client = get_client()
all_docs = []
for p in range(1, 120):
    got = None
    for i in range(10):
        try:
            got = client.get_schedules(page=p, limit=100)
            break
        except Exception as e:
            print(f"  page {p} retry {i+1}: {str(e)[:60]}", flush=True)
            time.sleep(3 + 3 * i)
    if got is None:
        raise SystemExit(f"gagal ambil page {p}")
    batch = got.get("docs", [])
    if not batch:
        break
    all_docs += batch
    if len(batch) < 100:
        break
print(f"total jadwal dibaca: {len(all_docs)}")

import json
blobs = [(d, json.dumps(d, ensure_ascii=False)) for d in all_docs]
for label, frag in TARGETS.items():
    hits = [(d.get("accountId"), d.get("status"), d.get("scheduleAt"), (d.get("description") or "")[:60])
            for d, b in blobs if frag in b]
    print(f"\n{label}: {len(hits)} kemunculan")
    for h in hits[:10]:
        print("   ", h)
