# Changelog All notable changes to Atomizer will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] ### Phase 2 - LLM Integration (In Progress) - Natural language interface for optimization configuration - Feature registry with capability catalog - Claude skill for Atomizer navigation --- ## [0.2.0] - 2025-01-16 ### Phase 1 - Plugin System & Infrastructure ✅ #### Added - **Plugin Architecture** - Hook manager with lifecycle execution at `pre_solve`, `post_solve`, and `post_extraction` points - Plugin auto-discovery from `optimization_engine/plugins/` directory - Priority-based hook execution - Context passing system for hooks (output_dir, trial_number, design_variables, results) - **Logging Infrastructure** - Detailed per-trial logs in `optimization_results/trial_logs/` - Complete iteration trace with timestamps - Design variables, configuration, execution timeline - Extracted results and constraint evaluations - High-level optimization progress log (`optimization.log`) - Configuration summary header - Trial START and COMPLETE entries (one line per trial) - Compact format for easy progress monitoring - **Logging Plugins** - `detailed_logger.py` - Creates detailed trial logs - `optimization_logger.py` - Creates high-level optimization.log - `log_solve_complete.py` - Appends solve completion to trial logs - `log_results.py` - Appends extracted results to trial logs - `optimization_logger_results.py` - Appends results to optimization.log - **Project Organization** - Studies folder structure with standardized layout - Comprehensive studies documentation ([studies/README.md](studies/README.md)) - Model files organized in `model/` subdirectory (`.prt`, `.sim`, `.fem`) - Intelligent path resolution system (`atomizer_paths.py`) - Marker-based project root detection - **Test Suite** - `test_hooks_with_bracket.py` - Hook validation test (3 trials) - `run_5trial_test.py` - Quick integration test (5 trials) - `test_journal_optimization.py` - Full optimization test #### Changed - Renamed `examples/` folder to `studies/` - Moved bracket example to `studies/bracket_stress_minimization/` - Consolidated FEA files into `model/` subfolder - Updated all test scripts to use `atomizer_paths` for imports - Runner now passes `output_dir` to all hook contexts #### Removed - Obsolete test scripts from examples/ (14 files deleted) - `optimization_logs/` and `optimization_results/` from root directory #### Fixed - Log files now correctly generated in study-specific `optimization_results/` folder - Path resolution works regardless of script location - Hooks properly registered with `register_hooks()` function --- ## [0.1.0] - 2025-01-10 ### Initial Release #### Core Features - Optuna integration with TPE sampler - NX journal integration for expression updates and simulation execution - OP2 result extraction (stress, displacement) - Study management with folder-based isolation - Web dashboard for real-time monitoring - Precision control (4-decimal rounding for mm/degrees/MPa) - Crash recovery and optimization resumption --- ## Development Timeline - **Phase 1** (✅ Completed 2025-01-16): Plugin system & hooks - **Phase 2** (🟡 Starting): LLM interface with natural language configuration - **Phase 3** (Planned): Dynamic code generation for custom objectives - **Phase 4** (Planned): Intelligent analysis and surrogate quality assessment - **Phase 5** (Planned): Automated HTML/PDF report generation - **Phase 6** (Planned): NX MCP server with full API documentation - **Phase 7** (Planned): Self-improving feature registry --- **Maintainer**: Antoine Polvé (antoine@atomaste.com) **License**: Proprietary - Atomaste © 2025