| 1234567891011121314151617181920212223242526272829303132 |
- """Pipeline task wrapper for the analysis stage (step 7).
- The analysis logic lives in the top-level :mod:`analysis` package (mirroring
- :mod:`evaluation`); this module is only the thin pipeline-task adapter. It is
- named ``analyze`` rather than ``analysis`` so it does not shadow that package.
- """
- import pathlib as pl
- from typing import Any, Dict
- import analysis
- from util.progress import ProgressTracker
- from util.ui_logger import PipelineLogger
- # Re-exported so the task registry can describe the artifacts this stage writes.
- ANALYSIS_SUBDIR = analysis.ANALYSIS_SUBDIR
- EVAL_SUBDIR = analysis.EVAL_SUBDIR
- def run_analysis_task(
- track: ProgressTracker,
- log: PipelineLogger,
- config: Dict[str, Any],
- state: Dict[str, Any],
- ) -> None:
- """Run every registered analysis over the working directory's evaluations."""
- analysis.run_all(
- work_dir=pl.Path(config["work_dir"]),
- log=log,
- config=config,
- progress=track,
- )
|