"""Analysis framework for AI MusiMuse.

This package provides the extensible, deterministic pipeline that
powers all music analyzers.  Future analyzers (RMS, Tempo, Spectral,
Harmony, Embeddings, Music DNA, Recommendations) can be added by
subclassing :class:`~analyzer.analyzer.Analyzer`, implementing
:meth:`analyze`, and registering with
:class:`~analyzer.registry.AnalyzerRegistry` — no modifications to
existing infrastructure required.

Key components:

- :class:`~analyzer.context.AnalysisContext` — immutable input
- :class:`~analyzer.feature.Feature` / :class:`~analyzer.feature.FeatureSet`
  — immutable feature objects
- :class:`~analyzer.result.AnalysisResult` — immutable analyzer output
- :class:`~analyzer.analyzer.Analyzer` — abstract base class
- :class:`~analyzer.registry.AnalyzerRegistry` — registration and lookup
- :class:`~analyzer.pipeline.AnalysisPipeline` — executes with
  failure isolation
"""
