## Protocol 13: Adaptive Multi-Objective Optimization - Iterative FEA + Neural Network surrogate workflow - Initial FEA sampling, NN training, NN-accelerated search - FEA validation of top NN predictions, retraining loop - adaptive_state.json tracks iteration history and best values - M1 mirror study (V11) with 103 FEA, 3000 NN trials ## Dashboard Visualization Enhancements - Added Plotly.js interactive charts (parallel coords, Pareto, convergence) - Lazy loading with React.lazy() for performance - Code splitting: plotly.js-basic-dist (~1MB vs 3.5MB) - Chart library toggle (Recharts default, Plotly on-demand) - ExpandableChart component for full-screen modal views - ConsoleOutput component for real-time log viewing ## Documentation - Protocol 13 detailed documentation - Dashboard visualization guide - Plotly components README - Updated run-optimization skill with Mode 5 (adaptive) ## Bug Fixes - Fixed TypeScript errors in dashboard components - Fixed Card component to accept ReactNode title - Removed unused imports across components 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
45 lines
1.1 KiB
TypeScript
45 lines
1.1 KiB
TypeScript
import { defineConfig } from 'vite'
|
|
import react from '@vitejs/plugin-react'
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
plugins: [react()],
|
|
server: {
|
|
host: '0.0.0.0', // Bind to all interfaces (IPv4 and IPv6)
|
|
port: 3003,
|
|
strictPort: false, // Allow fallback to next available port
|
|
proxy: {
|
|
'/api': {
|
|
target: 'http://127.0.0.1:8000', // Use 127.0.0.1 instead of localhost
|
|
changeOrigin: true,
|
|
secure: false,
|
|
ws: true,
|
|
}
|
|
}
|
|
},
|
|
resolve: {
|
|
alias: {
|
|
// Use the smaller basic Plotly distribution
|
|
'plotly.js/dist/plotly': 'plotly.js-basic-dist'
|
|
}
|
|
},
|
|
build: {
|
|
rollupOptions: {
|
|
output: {
|
|
manualChunks: {
|
|
// Separate Plotly into its own chunk for better caching
|
|
plotly: ['plotly.js-basic-dist', 'react-plotly.js'],
|
|
// Separate React and core libs
|
|
vendor: ['react', 'react-dom', 'react-router-dom'],
|
|
// Recharts in its own chunk
|
|
recharts: ['recharts']
|
|
}
|
|
}
|
|
},
|
|
chunkSizeWarningLimit: 600
|
|
},
|
|
optimizeDeps: {
|
|
include: ['plotly.js-basic-dist']
|
|
}
|
|
})
|