Release ledger

Release

v2.12.0

the whole field

Maven reactors, fully supported: point Argus at the aggregator and fixes are routed to the module POMs that declare them, qualified with one build at the reactor root, and published as a single multi-file merge request — with the same guarantees single-module projects have always had.

Highlights

  • 01

    Fixes land where the version is declared

    Literal bumps edit each declaring module (grouped — one CVE never becomes N merge requests), property-held versions are bumped at the defining ancestor so every resolving module moves together, transitive overrides pin the reactor root's dependencyManagement, and exclusions land in the module that declares the direct ancestor.

  • 02

    One build proves the whole reactor

    Qualification stages the entire patched file set and runs at the reactor root, so cross-module consumers of a changed version are exercised — grand slams, groups and the final pass included.

  • 03

    One merge request, every file

    Patched POMs are committed atomically at their repo-relative paths; the MR description names the files changed and report.json records pom_paths per remediation.

  • 04

    First-party modules are off the table

    Reactor-internal artifacts are never remediation targets, and the internal parent chain is never treated as an upgradable anchor. The anchor and direct-parent passes scan every module POM for the anchors that matter.

Full notes

Added

  • Maven multi-module reactor support (ADR-043): recursive module walking (nested aggregators, <module> file entries, ${revision} coordinates), inheritance-aware property and dependencyManagement resolution, per-declaring-POM edit routing, reactor-root qualification, reactor-wide stale curation, multi-file merge requests, pom_paths in report.json and a Files-changed row on MR descriptions.
  • CI component input reactor (default "on"); ARGUS_REACTOR=off restores the historical reactor_unsupported refusal for staged rollouts.
  • REG-066 and REG-067 pin first-run routing, reactor-root qualification, the multi-file MR commit and rerun reconciliation against the GitLab mock; new reactor model and routing unit suites cover nesting, property override order, internal-artifact exclusion and patch layouts.