"""Registry entries for the Distributed Runtime layer (L5).

Auto-extracted from the monolithic ``defaults.py``.  Each entry
follows the standard registry schema:

- ``name``: human-readable tool name
- ``level``: 13-layer taxonomy level (1-13)
- ``layer``: this layer name
- ``role``: role within the layer
- ``category``: functional category
- ``installer``: installation method
- ``launcher``: process launcher specification
- ``deps``: list of required tool IDs
- ``description``: short description
- ``flags``: optional boolean flags

This module is consumed by
:mod:`ai_lsc.registry.loader`.
"""

TOOLS: dict[str, dict] = {
    'vllm': {
    "name": "vLLM",
    "level": 5,
    "layer": "Distributed Runtime",
    "role": "Scaling",
    "category": "LLM Serving",
    "installer": {
        "type": "uv",
        "pkg": "vllm"
    },
    "launcher": {
        "type": "tmux",
        "cmd": "python -m vllm.entrypoints.openai.api_server --port {port}",
        "default_port": 8000
    },
    "deps": [
        "cuda"
    ],
    "description": "High-throughput and memory-efficient LLM serving.",
    "license": 'Apache-2.0',
    "flags": {
        "has_cli": True,
        "has_gui": False,
        "has_web": True,
        "is_ollama": False,
        "is_docker": False,
        "is_passive": False,
        "is_mcp": False,
        "is_skills_collection": False
    }
},
    'distcc': {
    "name": "DistCC",
    "level": 5,
    "layer": "Distributed Runtime",
    "role": "Distribution",
    "category": "Distributed Compilation",
    "installer": {
        "type": "pacman",
        "pkg": "distcc"
    },
    "launcher": {
        "type": "desktop",
        "cmd": "distcc --version",
        "default_port": 3632
    },
    "deps": [],
    "description": "Distributed C/C++ compilation across multiple machines.",
    "license": 'Proprietary',
    "flags": {
        "has_cli": True,
        "has_gui": False,
        "has_web": False,
        "is_ollama": False,
        "is_docker": False,
        "is_passive": False,
        "is_mcp": False,
        "is_skills_collection": False
    }
},
    'dma': {
    "name": "DMA (Distcc Monitor Agent)",
    "level": 5,
    "layer": "Distributed Runtime",
    "role": "Monitoring",
    "category": "Build Monitoring",
    "installer": {
        "type": "git",
        "pkg": "https://github.com/distcc/dma"
    },
    "launcher": {
        "type": "desktop",
        "cmd": "dma --version",
        "default_port": None
    },
    "deps": [
        "distcc"
    ],
    "description": "Monitor for distributed compilation with distcc.",
    "license": 'Proprietary',
    "flags": {
        "has_cli": True,
        "has_gui": False,
        "has_web": False,
        "is_ollama": False,
        "is_docker": False,
        "is_passive": False,
        "is_mcp": False,
        "is_skills_collection": False
    }
},
    'ray': {
    "name": "Ray",
    "level": 5,
    "layer": "Distributed Runtime",
    "role": "Scaling",
    "category": "Distributed Compute",
    "installer": {
        "type": "uv",
        "pkg": "ray"
    },
    "launcher": {
        "type": "tmux",
        "cmd": "ray start --head --port {port}",
        "default_port": 8265
    },
    "deps": [],
    "description": "Unified framework for scaling AI and Python applications.",
    "license": 'Apache-2.0',
    "flags": {
        "has_cli": True,
        "has_gui": False,
        "has_web": True,
        "is_ollama": False,
        "is_docker": False,
        "is_passive": False,
        "is_mcp": False,
        "is_skills_collection": False
    }
},
    'pssh': {
    "name": "PSSH (Parallel SSH)",
    "level": 5,
    "layer": "Distributed Runtime",
    "role": "Coordination",
    "category": "Cluster SSH",
    "installer": {
        "type": "pacman",
        "pkg": "pssh"
    },
    "launcher": {
        "type": "desktop",
        "cmd": "pssh --version",
        "default_port": None
    },
    "deps": [],
    "description": "Parallel SSH tool for running commands on multiple hosts.",
    "license": 'Proprietary',
    "flags": {
        "has_cli": True,
        "has_gui": False,
        "has_web": False,
        "is_ollama": False,
        "is_docker": False,
        "is_passive": False,
        "is_mcp": False,
        "is_skills_collection": False
    }
},
}
