diff --git a/CHANGELOG.md b/CHANGELOG.md index f644760..59696f4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog - + +## [0.3.2.post2] - 2026-05-07 + +### New Features + +- **Operator-supplied "extra lines to cut"** (PR #76): `OverFlowGraph` accepts an `extra_lines_to_cut` argument naming a subset of `lines_to_cut` that the operator chose to disconnect to prevent flow increase elsewhere (ExpertAgent's `additionalLinesToCut` semantic). Those edges keep their natural flow colour (coral/blue) instead of black/yellow, are stamped `is_extra_cut=True` (alongside `constrained=True`) so downstream consumers can find them by flag, and are excluded from `is_overload` / `is_monitored` tagging in `highlight_significant_line_loading`. The before% → after% loading annotation still fires on extras so the operator sees how their cut materialises. +- **Interactive HTML viewer layer**: new "Extra lines to prevent flow increase" semantic layer (`semantic:is_extra_cut`) with a dashed-blue swatch, surfaced under the "Individual entities properties" section. + +### Tests + +- `TestExtraLinesToCut` in `test_overflow_graph.py` covers default empty extras, set storage, natural coral/blue colour, `is_extra_cut`/`constrained` flagging, exclusion from overload/monitored layers while still annotating the label, and the legacy "no extras" path. +- `test_layer_index_emits_extra_cut_layer_with_endpoints` verifies the new viewer layer (endpoint nodes, swatch, label, section). + + ## [0.3.0.post1] - 2026-03-10 ### New Features diff --git a/docs/conf.py b/docs/conf.py index 33ac5db..15175ff 100755 --- a/docs/conf.py +++ b/docs/conf.py @@ -22,7 +22,7 @@ author = 'Antoine Marot, Mario Jothy, Nicolas Megel' # The full version, including alpha/beta/rc tags -release = '0.3.2.post1' +release = '0.3.2.post2' # -- General configuration --------------------------------------------------- diff --git a/setup.py b/setup.py index 5b027d1..7c19cac 100644 --- a/setup.py +++ b/setup.py @@ -28,7 +28,7 @@ } setup(name='ExpertOp4Grid', - version='0.3.2.post1', + version='0.3.2.post2', description='Expert analysis algorithm for solving overloads in a powergrid', long_description_content_type="text/markdown", python_requires=">=3.9", @@ -50,7 +50,7 @@ author='Antoine Marot', author_email='antoine.marot@rte-france.com', url="https://github.com/marota/ExpertOp4Grid/", - download_url = 'https://github.com/marota/ExpertOp4Grid/archive/refs/tags/v0.3.2.post1.tar.gz', + download_url = 'https://github.com/marota/ExpertOp4Grid/archive/refs/tags/v0.3.2.post2.tar.gz', license='Mozilla Public License 2.0 (MPL 2.0)', packages=setuptools.find_packages(), extras_require=pkgs["extras"],