#!/usr/bin/env python3.12
"""
Check HTML/CSS/JS presence for a site directory.
Exit codes: 0=all present, 1=missing files, 2=input error
"""
from __future__ import annotations

import argparse
import pathlib
from typing import List


def main() -> int:
    parser = argparse.ArgumentParser()
    parser.add_argument("site_dir", help="Site directory containing index.html/styles.css/script.js")
    args = parser.parse_args()
    base = pathlib.Path(args.site_dir)

    if not base.exists():
        print(f"ERROR:directory_not_found:{base}")
        return 2

    required = ["index.html", "styles.css", "script.js"]
    missing: List[str] = [f for f in required if not (base / f).exists()]
    if missing:
        print(f"FAIL:missing_files:{', '.join(missing)}")
        return 1
    print("OK:all_files_present")
    return 0


if __name__ == "__main__":
    raise SystemExit(main())
