"""Trampoline para invocar enrichers desde tests.

El Python embebido de Windows (`python-embed`) ignora `PYTHONPATH` por
diseno — el control de sys.path lo lleva el fichero `python312._pth`.
Para inyectar el stub `requests` de tests sin tocar ese fichero, los
tests llaman a este runner en vez de a `run.py` directamente:

    python _runner.py <run.py>

El runner anade `$_STUB_PATHS` al frente de `sys.path` y ejecuta el
script objetivo como si hubiese sido invocado directamente.
"""
from __future__ import annotations

import os
import runpy
import sys


def main() -> int:
    stub_paths = os.environ.get("_STUB_PATHS", "")
    if stub_paths:
        for p in stub_paths.split(os.pathsep):
            if p and p not in sys.path:
                sys.path.insert(0, p)

    if len(sys.argv) < 2:
        sys.stderr.write("usage: _runner.py <script>\n")
        return 2
    target = sys.argv[1]
    sys.argv = [target] + sys.argv[2:]
    runpy.run_path(target, run_name="__main__")
    return 0


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