Soda Core ========= **3 probes** Integration with `Soda Core `_ for importing quality check definitions and scan results into the metapod pipeline. Soda checks are mapped to metapod ``CheckResult`` objects so they participate in the standard alerting flow (Board work items, email, blob export). Install ------- .. code-block:: bash pip install 'metapod-probes[soda]' This pulls in ``soda-core`` and ``soda-core-duckdb`` as transitive dependencies. Configuration ------------- .. code-block:: yaml sources: - type: soda soda_project_dir: /opt/soda scan_results_dir: /opt/soda/scan_output import_checks: true Probes ------ .. list-table:: :header-rows: 1 :widths: 40 60 * - Probe - Description * - ``soda.quality.checks`` - Import Soda check definitions and map to metapod quality checks * - ``soda.quality.scan_results`` - Import latest Soda scan results (pass/warn/fail) as CheckResult objects * - ``soda.quality.anomalies`` - Detect anomalies flagged by Soda anomaly-score checks Usage ----- .. code-block:: bash metapod run "soda.quality.*" --config config.yaml Output ------ .. code-block:: json { "probe": "soda.quality.scan_results", "source": "soda", "collected_at": "2026-03-31T08:00:00Z", "results": [ { "check": "row_count > 0", "dataset": "orders", "outcome": "pass", "measured_value": 14230, "soda_scan_id": "scan-20260331-080000" } ] }