import base64
import sys
from pathlib import Path

# Ensure project root is on sys.path when running from scripts/
ROOT = Path(__file__).resolve().parents[1]
if str(ROOT) not in sys.path:
    sys.path.insert(0, str(ROOT))

from autoclicker.openai_analyzer import OpenAIAnalyzer
from autoclicker.prompt_builder import build_find_value_prompt
from autoclicker.constants import OPENAI_VISION_TEMPERATURE


def main():
    target = "440"
    image_path = r"logs\openai_debug\search_1757493965572\grid_input.png"

    analyzer = OpenAIAnalyzer()
    sw, sh = analyzer._get_screen_size()
    prompt, _ = build_find_value_prompt(target, sw, sh, row_hint=None)

    with open(image_path, "rb") as f:
        img_b64 = base64.b64encode(f.read()).decode("utf-8")
    image_url = f"data:image/png;base64,{img_b64}"

    out = analyzer._post_vision(prompt, image_url, max_tokens=400, temperature=float(OPENAI_VISION_TEMPERATURE), target_value=target)
    print(out)


if __name__ == "__main__":
    main()


