#!/usr/bin/env python3
import json
import sys
from datetime import datetime, timezone
from pathlib import Path

PROJECT = Path(__file__).resolve().parents[1]
PROMOTION = PROJECT / "story/promotion-report.json"
OUT = PROJECT / "output/info.txt"
RECEIPT = PROJECT / "log/metadata-verification.json"
TITLE = "Cô Dược Sĩ Bị Vu Đổi Thuốc, Tám Lọ Thủy Tinh Cùng Lên Tiếng"
DESCRIPTION = """Tô Thanh Nghi đang trực tại kho lạnh của Nhà Thuốc Vân Tịch thì tám lọ thuốc thử bị phát hiện sai nhãn sau một sự cố. Phiếu kiểm kê mang dấu điện tử của cô, quyền truy cập bị khóa, công việc bị tước và những người biết chuyện lần lượt chọn im lặng.

Không chấp nhận đổi danh dự lấy quyền sử dụng quy trình bảo quản do mình xây dựng, Thanh Nghi lần theo nhiệt độ, dấu cặn và chuỗi bàn giao để buộc từng người đối diện với lựa chọn của họ. Cuộc phản công không chỉ nhằm rửa oan, mà còn giành lại quyền tác giả và bảo vệ những nhân viên từng bị quyền lực ép nhận sai.

🎧 Tên truyện: Cô Dược Sĩ Bị Vu Đổi Thuốc, Tám Lọ Thủy Tinh Cùng Lên Tiếng
🎙 Giọng đọc: Huyền An Audio
📚 Thể loại: Drama nghề nghiệp, dược phẩm hư cấu, vu oan, chiếm quyền quy trình, phản công
Tình trạng: Trọn bộ

Nếu yêu thích câu chuyện, hãy đăng ký kênh và để lại cảm nhận của bạn dưới phần bình luận.

Huyền An Audio – Lắng nghe một thế giới khác.

Nội dung được phát hành độc quyền tại Huyền An Audio. Vui lòng không sao chép và đăng tải lại dưới bất kỳ hình thức nào.

#HuyenAnAudio #TruyenAudio #NgheTruyen #TruyenHay #TruyenDemKhuya #DramaNgheNghiep"""


def main():
    if not PROMOTION.exists():
        print("Metadata blocked: promotion missing", file=sys.stderr)
        return 1
    promotion = json.loads(PROMOTION.read_text())
    canon = promotion.get("spoken_sha256")
    if promotion.get("verified") is not True or not canon:
        print("Metadata blocked: promotion invalid", file=sys.stderr)
        return 1
    youtube_title = TITLE + " | Truyện Audio Full | Huyền An Audio"
    if not 2 <= len(youtube_title) <= 100:
        print("Metadata blocked: title length", file=sys.stderr)
        return 1
    OUT.parent.mkdir(parents=True, exist_ok=True)
    OUT.write_text("TITLE\n" + youtube_title + "\n\nDESCRIPTION\n" + DESCRIPTION.strip() + "\n")
    receipt = {"version": 1, "verified": True, "source_canon_sha256": canon, "title": youtube_title, "title_length": len(youtube_title), "description_chars": len(DESCRIPTION.strip()), "output": "output/info.txt", "checked_at": datetime.now(timezone.utc).isoformat()}
    RECEIPT.write_text(json.dumps(receipt, ensure_ascii=False, indent=2) + "\n")
    print(json.dumps(receipt, ensure_ascii=False))
    return 0


if __name__ == "__main__":
    sys.exit(main())
