Changelog¶
All notable changes to the netforge_rl project will be documented in this file.
The format is based on Keep a Changelog.
[2.1.0] — 2026-06¶
Added¶
- Environment: Added
TopologyEventEnginetonetforge_rl/environment/parallel_env.pyto support dynamic topologies. - Environment: Implemented curriculum learning framework.
- Training: Added RLlib integration and RMAPPO vs RMAPPO baseline.
Fixed¶
- Core: Fixed decoy recon replacing hosts, static action mask issues, and stale DHCP targeting.
[2.0.0] — 2026-06¶
Added¶
- Core: Added
netforge_rl/core/functional.pyimplementing a pureEnvStateinterpreter. - JAX Backend: Added
netforge_rl/backends/jax/providing vectorized kernels and batched step execution for high-throughput training. - Bridges: Added
JaxMARLenvironment adapter anddlpacksupport for zero-copy array conversion. - Rendering: Implemented decoupled rendering pipeline in
netforge_rl/render/. - Baselines: Added heuristic evaluation policies and a PPO implementation for the JaxMARL backend.
- Semantic Interface: Added
netforge_rl/semantic/for language-model-based agent interaction and LLM fine-tuning. - Notebooks: Added 7 reference notebooks for quickstart, visualization, and RL training.
- Tests: Expanded test suite to 173 tests, including deterministic trajectory hashing.
Changed¶
- Increased maximum parallel throughput to >1M steps-per-second via JAX vectorization.
[1.0.0] — 2026-02¶
Added¶
- Native integration with the PettingZoo
ParallelEnvAPI. - Replaced legacy observation spaces with
gymnasium.spaces. - Created unified
BaseAction/BaseObservationclass hierarchy. - Upgraded testing and runtime requirements to Python 3.14.
Removed¶
- Removed deprecated OpenAI Gym wrappers and legacy evaluation modules.