Spaces:
Sleeping
Sleeping
| # Copyright (c) 2025-2026, RTE (https://www.rte-france.com) | |
| # This Source Code Form is subject to the terms of the Mozilla Public License, version 2.0. | |
| # If a copy of the Mozilla Public License, version 2.0 was not distributed with this file, | |
| # you can obtain one at http://mozilla.org/MPL/2.0/. | |
| # SPDX-License-Identifier: MPL-2.0 | |
| """Decomposition helpers for ``analysis_mixin.py``. | |
| The mixin used to be a ~1,100-line class; the heavy-lifting was pulled | |
| into focused modules here so the orchestrator stays small and each | |
| concern becomes independently testable: | |
| - :mod:`pdf_watcher` — glob-based search for overflow PDFs | |
| - :mod:`action_enrichment` — per-action detail computations (load | |
| shedding / curtailment / PST) — pure functions | |
| - :mod:`mw_start_scoring` — MW-at-start computation per action type | |
| - :mod:`analysis_runner` — legacy AC→DC fallback runner with PDF | |
| polling (streams NDJSON events) | |
| """ | |