# -*- coding: utf-8 -*-
"""
긴급 V2 발행 브리지.
- V1 publish_worker.py를 바로 덮어쓰지 않고, V2 발행 엔진을 별도 파일로 실행한다.
- 네이버 로그인 ID와 블로그 ID 분리, V2 HPE/발행 다이얼로그 로직을 사용한다.
"""
import argparse
import os
import sys

CURRENT_DIR = os.path.dirname(os.path.abspath(__file__))
ROOT_DIR = os.path.dirname(CURRENT_DIR)
if ROOT_DIR not in sys.path:
    sys.path.insert(0, ROOT_DIR)

from workers.v2_publish_worker import run_v2_publish_batch


def main():
    parser = argparse.ArgumentParser()
    parser.add_argument("--realtor-id", type=int, default=None)
    parser.add_argument("--queue-id", type=int, default=None)
    parser.add_argument("--limit", type=int, default=1)
    parser.add_argument("--execute", action="store_true", help="실제 발행. 지정하지 않으면 안전상 실행하지 않는다.")
    parser.add_argument("--skip-snapshot-guard", action="store_true", help="긴급 테스트/전환용 snapshot guard skip")
    parser.add_argument("--hpe-mode", default="test", choices=["test", "conservative", "operation"])
    parser.add_argument("--headless", action="store_true")
    # V1 호환 dummy 옵션
    parser.add_argument("--no-db-lock", action="store_true")
    parser.add_argument("--no-lock", action="store_true")
    parser.add_argument("--sleep", type=int, default=0)
    parser.add_argument("--per-realtor-daily-limit", type=int, default=1)
    args = parser.parse_args()

    result = run_v2_publish_batch(
        realtor_id=args.realtor_id,
        queue_id=args.queue_id,
        limit=args.limit,
        execute=bool(args.execute),
        skip_snapshot_guard=bool(args.skip_snapshot_guard),
        hpe_mode=args.hpe_mode,
        check_final_publish=bool(args.execute),
        headless=bool(args.headless),
    )
    print("[V2 BRIDGE RESULT]", result)


if __name__ == "__main__":
    main()
