#!/usr/bin/python3
"""Stand-in for the paid model API: refuses anything without the company key."""
import http.server
import json
import pathlib

KEY = pathlib.Path("/etc/model-api/key").read_text().strip()


class Handler(http.server.BaseHTTPRequestHandler):
    def do_POST(self):
        if self.headers.get("X-Api-Key") != KEY:
            self.send_response(401)
            self.end_headers()
            return
        length = int(self.headers.get("Content-Length") or 0)
        prompt = json.loads(self.rfile.read(length) or b"{}").get("prompt", "")
        body = json.dumps({"answer": f"stub answer for: {prompt[:40]}"}).encode()
        self.send_response(200)
        self.send_header("Content-Type", "application/json")
        self.send_header("Content-Length", str(len(body)))
        self.end_headers()
        self.wfile.write(body)

    def log_message(self, *a):
        pass


http.server.HTTPServer(("127.0.0.1", 8110), Handler).serve_forever()
