#!/usr/bin/env python3
"""Classify new/unclassified handles from their own recent posts + remaining key text."""
import json, os, time
import requests
from datetime import datetime

ENV = os.path.expanduser("~/.hermes/.env")
API_KEY = [l.strip().split("=",1)[1] for l in open(ENV) if l.startswith("GETXAPI_KEY=")][0]
H = {"Authorization": f"Bearer {API_KEY}"}
RAW = "/home/kiro/trend-engine/trends/x/raw/"
d = json.load(open(RAW + "scan_results_2026-11-09_FULL.json"))

for h in ["heyglif", "uns__nstudio", "numerai"]:
    print(f"\n===== @{h} ({len(d['raw'].get(h,[]))} fetched)")
    for t in sorted(d["raw"].get(h, []), key=lambda x: x["createdAt"], reverse=True)[:12]:
        rt = "RT" if t.get("retweeted_tweet") else ("REPLY" if t.get("isReply") else "ORIG")
        print(f"  {t['createdAt'][:19]} {rt:5s} {t.get('likeCount'):>5}L/{t.get('viewCount'):>7}V :: {(t.get('text') or '')[:120]}")
    time.sleep(0.5)

print("\n\n===== REMAINING KEY TEXT")
for h, needles in {"CharaspowerAI": ["TERRIBLE", "Minimax Design", "wishlist", "GM everyone"],
                   "venturetwins": ["wife guy", "Threads", "forklift"],
                   "higgsfield": ["Miracle"], "higgsfield_ai": ["dinosaur", "Miracle", "Cinema-grade"],
                   "AI__TSUBAKI": ["Three People Dancing", "LOG-looking"],
                   "Flovaai": ["No Ordinary Love", "neon era"]}.items():
    for t in d["raw"].get(h, []):
        tx = t.get("text") or ""
        if not any(n.lower() in tx.lower() for n in needles): continue
        if t.get("retweeted_tweet"): continue
        print(f"\n--- @{h} {t['createdAt'][:19]} {t.get('likeCount')}L/{t.get('retweetCount')}RT/{t.get('viewCount')}V")
        print("   ", tx[:900].replace("\n", "\n    "))
