#!/usr/bin/env python3
"""Cek tema kartu baru (tanya dulu sebelum kerja / asumsi) di jadwal Threads @ukyhandoko.
READ-ONLY. Fokus frasa inti tema, bukan kata generik 'ditanyakan'."""
import os, re, sys
from datetime import datetime, timedelta

ROOT = "/home/mantapman/.hermes/profiles/atun/workspace"
sys.path.insert(0, ROOT)
from repliz_client import get_client
import repliz_openssl_transport
repliz_openssl_transport.install(verbose=False)

UKY_T = "6a334e89c5ff4ce3a3225a48"
c = get_client()
r = c.get_schedules(page=1, limit=100)
pages = (r["totalDocs"] + 99) // 100
docs = list(r["docs"])
for p in range(2, pages + 1):
    docs.extend(c.get_schedules(page=p, limit=100)["docs"])
uky = [d for d in docs if (d.get("accountId") or (d.get("account") or {}).get("id")) == UKY_T]
print("jadwal Threads-uky:", len(uky))

def wib(d):
    at = d.get("scheduleAt")
    return None if not at else datetime.fromisoformat(at.replace("Z", "+00:00")) + timedelta(hours=7)

TESTS = {
    "asumsi": re.compile(r"asumsi", re.I),
    "tanya dulu/bertanya dulu": re.compile(r"tanya\s+dulu|bertanya\s+dulu", re.I),
    "tanya di awal": re.compile(r"tanya\s+di\s+awal|ditanyakan\s+di\s+awal", re.I),
    "sebelum mulai kerja": re.compile(r"sebelum\s+(mulai|mulai kerja|kerjakan)", re.I),
    "jangan langsung": re.compile(r"jangan\s+langsung", re.I),
    "ditanyakan": re.compile(r"ditanyakan", re.I),
}
for nama, rx in TESTS.items():
    hit = [d for d in uky if rx.search((d.get("description") or "") + " " + (d.get("topic") or ""))]
    print(f"\n== {nama}: {len(hit)} kemunculan")
    for d in hit:
        desc = (d.get("description") or "").strip()
        b1 = desc.splitlines()[0] if desc else ""
        print("   ", wib(d).strftime("%Y-%m-%d %H:%M"), d.get("type"),
              "| topic:", repr((d.get("topic") or "")[:35]),
              "| baris1:", b1[:80])
