#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Siapkan prompt baru untuk cron threads-all-harian: slot DAS 23:00 -> 20:00.

- Backup cron/jobs.json dulu.
- Tulis prompt baru ke /tmp/prompt_threads_baru.txt (dipakai oleh
  /tmp/edit_prompt_das.sh yang memanggil `hermes cron edit`).
"""
import json, shutil, datetime, sys

JOBS = "/home/mantapman/.hermes/profiles/atun/cron/jobs.json"
bak = JOBS + ".bak-20261006-das"
shutil.copy2(JOBS, bak)
print("backup:", bak)

j = json.load(open(JOBS))
jobs = j if isinstance(j, list) else j.get("jobs", [])
job = next(x for x in jobs if x.get("id") == "16e1f3f8170d")
p = job.get("prompt") or ""

lama_slot = "5. 🔧 DAS Bengkel → 23:00 WIB — otomotif (link dasindonesia.com)"
baru_slot = "5. 🔧 DAS Bengkel → 20:00 WIB — otomotif (link dasindonesia.com)"
lama_json = '{"account":"das","slot":23,"text":"... (wajib ada link)"}'
baru_json = '{"account":"das","slot":20,"text":"... (wajib ada link)"}'

for a, b in ((lama_slot, baru_slot), (lama_json, baru_json)):
    if a not in p:
        print("❌ tidak ketemu:", a[:60])
        sys.exit(1)
    p = p.replace(a, b)

catatan = (
    "\n- 🔧 DAS: akun ini sudah punya bank konten PERCAKAPAN tanpa link di slot **07:00 & 19:00 WIB**\n"
    "  (`bank_das_threads.py` → `pasang_bank_das_threads.py`, terpasang 7–18 Okt 2026). JANGAN mengisi atau\n"
    "  menggeser dua slot itu, dan jangan menambah post DAS lain — tugas cron ini untuk DAS hanya 1 post\n"
    "  artikel ber-link di slot 20:00. Nada akun brand = \"kami\"/tanpa subjek, pembaca disapa \"kamu\".\n"
)
anchor = "\nMasing-masing minimal 5 kalimat/2 paragraf"
if catatan.strip() not in p:
    p = p.replace(anchor, catatan + anchor, 1)
else:
    print("catatan sudah ada")

open("/tmp/prompt_threads_baru.txt", "w").write(p)
print("prompt baru:", len(p), "char -> /tmp/prompt_threads_baru.txt")
print("cek:", baru_slot in p, baru_json in p, "bank_das" in p)

# simpan prompt lama untuk pembanding
job["prompt"] = p
if isinstance(j, dict) and "jobs" in j:
    j["jobs"] = jobs
else:
    j = jobs
json.dump(j, open("/tmp/jobs_preview.json", "w"), ensure_ascii=False, indent=1)
print("preview: /tmp/jobs_preview.json (BELUM ditulis ke jobs.json — tunggu hermes cron edit)")
