"""
umarise-mlflow: Anchor MLflow artifacts to Bitcoin.

Usage:
    import umarise_mlflow

    # Level 1: Explicit wrapper
    umarise_mlflow.anchor_artifact("model.pt", run_id=run.info.run_id)

    with umarise_mlflow.auto_anchor():
        mlflow.log_artifact("model.pt")

    # Level 2: Plugin (zero code changes)
    # Set MLFLOW_ARTIFACT_URI=umarise+s3://bucket and train as usual.
"""

from umarise_mlflow.anchor import anchor_artifact, anchor_run_artifacts
from umarise_mlflow.autolog import auto_anchor


def get_plugin_class():
    """Return the plugin class for programmatic use."""
    from umarise_mlflow.plugin import UmariseArtifactRepository
    return UmariseArtifactRepository


__version__ = "0.2.0"
__all__ = [
    "anchor_artifact",
    "anchor_run_artifacts",
    "auto_anchor",
    "get_plugin_class",
]
