#!/usr/bin/env python3
"""Per-handle chronology + key content texts, 2026-10-26."""
import json
from datetime import datetime, timezone
D=json.load(open('/home/kiro/trend-engine/trends/x/raw/scan_results_2026-10-26_FULL.json'))
raw=D['raw']; CUT=datetime(2026,10,23,tzinfo=timezone.utc); F="%a %b %d %H:%M:%S %z %Y"
NOW=datetime.now(timezone.utc)

def show(h, limit=14, full=False):
    rs=raw.get(h,[]) or []
    o=[]
    for r in rs:
        try: d=datetime.strptime(r['createdAt'],F)
        except Exception: continue
        o.append((d,r))
    o.sort(key=lambda x:x[0])
    print(f"\n--- @{h}: n={len(rs)} span={o[0][0].strftime('%m-%d %H:%M') if o else 'NA'} -> {o[-1][0].strftime('%m-%d %H:%M') if o else 'NA'} age={(NOW-o[-1][0]).total_seconds()/3600 if o else 0:.1f}h")
    for d,r in o[-limit:]:
        tag = "RT" if r.get('retweeted_tweet') else ("Q" if r.get('quoted_tweet') else ("R" if r.get('isReply') else "O"))
        med=r.get('media') or []
        mt=med[0].get('type') if isinstance(med,list) and med else '-'
        inw = "IN" if d>=CUT else "out"
        t=(r.get('text') or '').replace('\n',' ')
        print(f"  [{tag}/{mt}/{inw}] {d.strftime('%m-%d %H:%M')} {r.get('likeCount')}L/{r.get('viewCount')}V | {t[:200] if not full else t[:700]}")

for h in ["Flovaai","higgsfield_ai","higgsfield","CharaspowerAI","AIWarper","azed_ai","c_valenzuelab","venturetwins","Kling_ai","EHuanglu","interesting_aIl","pika_labs","hubermanlab"]:
    show(h)
