feat: Dashboard improvements and configuration updates

Dashboard:
- Enhanced terminal components (ClaudeTerminal, GlobalClaudeTerminal)
- Improved MarkdownRenderer for better documentation display
- Updated convergence plots (ConvergencePlot, PlotlyConvergencePlot)
- Refined Home, Analysis, Dashboard, Setup, Results pages
- Added StudyContext improvements
- Updated vite.config for better dev experience

Configuration:
- Updated CLAUDE.md with latest instructions
- Enhanced launch_dashboard.py
- Updated config.py settings

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2025-12-20 13:47:05 -05:00
parent 1612991d0d
commit 7c700c4606
19 changed files with 478 additions and 173 deletions

View File

@@ -375,7 +375,7 @@ export default function Dashboard() {
};
return (
<div className="w-full max-w-[2400px] mx-auto px-4">
<div className="w-full">
{/* Alerts */}
<div className="fixed top-4 right-4 z-50 space-y-2">
{alerts.map(alert => (
@@ -436,13 +436,21 @@ export default function Dashboard() {
<StudyReportViewer studyId={selectedStudyId} />
)}
<button
onClick={() => {
// Open Optuna dashboard on port 8081
// Note: The dashboard needs to be started separately with the correct study database
window.open('http://localhost:8081', '_blank');
onClick={async () => {
if (!selectedStudyId) return;
try {
// Launch Optuna dashboard via API, then open the returned URL
const result = await apiClient.launchOptunaDashboard(selectedStudyId);
window.open(result.url || 'http://localhost:8081', '_blank');
} catch (err) {
// If launch fails (maybe already running), try opening directly
console.warn('Failed to launch dashboard:', err);
window.open('http://localhost:8081', '_blank');
}
}}
className="btn-secondary"
title="Open Optuna Dashboard (runs on port 8081)"
title="Launch Optuna Dashboard for this study"
disabled={!selectedStudyId}
>
Optuna Dashboard
</button>