#!/usr/bin/env python3
"""Versi LIVE (published) kedua container + audit tag di dalamnya."""
import os
from google.oauth2 import service_account
from googleapiclient.discovery import build

creds = service_account.Credentials.from_service_account_file(
    os.path.expanduser("~/.hermes/gsc_service_account.json"),
    scopes=["https://www.googleapis.com/auth/tagmanager.readonly"])
gtm = build("tagmanager", "v2", credentials=creds, cache_discovery=False)

KANDIDAT = {"GTM-WQX6PGNR": "accounts/6303077991/containers/224445829",
            "GTM-PZBR35TB": "accounts/6269687730/containers/206637156"}
for pub, path in KANDIDAT.items():
    print("=" * 88)
    print(f"CONTAINER {pub} — versi LIVE")
    try:
        lv = gtm.accounts().containers().versions().live(parent=path).execute()
    except Exception as e:
        print("  error:", str(e)[:250]); continue
    print(f"  nama versi : {lv.get('name')}")
    print(f"  versionId  : {lv.get('containerVersionId')}")
    print(f"  fingerprint: {str(lv.get('fingerprint'))[:20]}")
    tags = lv.get("tag", [])
    trg = lv.get("trigger", [])
    var = lv.get("variable", [])
    print(f"  tag={len(tags)} trigger={len(trg)} variable={len(var)}")
    for t in tags:
        print(f"   • TAG: {t.get('name')} | {t.get('type')} | firing trigger={t.get('firingTriggerId')}")
        for p in (t.get("parameter") or []):
            k = p.get("key")
            if k in ("eventName", "measurementId", "tagId", "html", "measurementIdOverride", "eventParameters", "measurementIdOverride", "streamId", "url"):
                print(f"       {k}: {str(p.get('value'))[:200]}")
    for g in trg:
        print(f"   • TRIGGER: {g.get('name')} | {g.get('type')} | filter={str(g.get('filter') or g.get('customEventFilter') or '')[:140]}")
