"""Pyrig-specific configuration file overrides.

Provides ConfigFile subclasses that are only active when pyrig itself is the
project being configured. Uses conditional class definition based on
``src_package_is_pyrig()`` to prevent pyrig-specific configs from leaking into
dependent projects.

Architecture:
    This package contains configuration overrides that only apply to pyrig itself:

    - ``PyprojectConfigFile``: Adds pyrig-specific PyPI classifiers and keywords
      (development status, intended audience, topics, project-setup keywords).

    The conditional class definition pattern ensures that ``__subclasses__()`` only
    returns these classes when running within the pyrig project itself, so other
    projects using pyrig as a dependency get their own appropriate defaults.

Example:
    When running ``uv run pyrig mkroot`` in pyrig's repository:

        >>> from pyrig.rig.configs.pyrig.pyproject import PyprojectConfigFile
        >>> # PyprojectConfigFile exists and adds pyrig-specific classifiers

    When running ``uv run myproject mkroot`` in another project:

        >>> from pyrig.rig.configs.pyrig.pyproject import PyprojectConfigFile
        >>> # ImportError or class doesn't exist (conditional definition)

See Also:
    pyrig.rig.configs.pyproject.PyprojectConfigFile: Base pyproject.toml config
    pyrig.rig.utils.packages.src_package_is_pyrig: Package detection utility
"""
