Skip to content

Conversation

@gperdrizet
Copy link
Owner

No description provided.

Copilot AI review requested due to automatic review settings November 23, 2025 06:19
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a comprehensive real-time monitoring dashboard for the Hill Climber optimization package, enabling users to visualize optimization progress as it runs. The implementation introduces SQLite-based database logging with a Streamlit web dashboard, bumping the version from 1.0.2 to 1.1.0.

Key Changes:

  • Added Streamlit dashboard (progress_dashboard.py) with live metrics visualization, replica status cards, and temperature exchange timeline
  • Implemented SQLite database backend (hill_climber/database.py) with WAL mode for concurrent read/write access
  • Extended optimizer to support optional database logging with configurable collection intervals and buffer sizes
  • Introduced checkpoint_interval parameter to decouple checkpoint frequency from batch frequency

Reviewed changes

Copilot reviewed 14 out of 15 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
progress_dashboard.py New 429-line Streamlit dashboard providing real-time visualization of optimization progress with auto-refresh, metric selection, and interactive Plotly charts
hill_climber/database.py New database module with thread-safe SQLite writer supporting schema initialization, metrics logging, and replica status tracking
hill_climber/optimizer.py Added database initialization, new db_* parameters, batch counter for checkpoint intervals, and database buffer collection from workers
hill_climber/replica_worker.py Extended to collect and buffer metrics for database logging, with conditional database writer instantiation per worker
pyproject.toml Added optional 'dashboard' dependency group with streamlit>=1.28.0 and plotly>=5.14.0, version bump to 1.1.0
hill_climber/__init__.py Version string updated to 1.1.0
docs/source/dashboard.rst New comprehensive documentation (346 lines) covering dashboard installation, usage, configuration, performance tuning, and troubleshooting
docs/source/index.rst Added dashboard feature and documentation link to main page
docs/source/conf.py Version updated to 1.1.0
README.md Added dashboard feature description, installation instructions, and usage example
docs/README.md Reorganized documentation maintenance guide (content moved from deleted DOCUMENTATION_README.md)
CITATION.cff Version updated to 1.1.0
.gitignore Added SQLite database files (*.db, *.db-shm, *.db-wal) to ignore list
benchmark_parallel.py Deleted development/testing script (no longer needed)
DOCUMENTATION_README.md Deleted (content moved to docs/README.md for better organization)

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@gperdrizet gperdrizet merged commit d30edec into main Nov 23, 2025
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant