import React, { useEffect, useState } from 'react' import { panelStyle, titleStyle } from '../App' import { api } from '../api' interface MemoryEntry { task_id: string; root_cause: string; fix_summary: string; reward: number; timestamp: number } export function MemoryPanel() { const [entries, setEntries] = useState([]) useEffect(() => { api.memory().then((r: any) => setEntries(r.memory || [])).catch(() => {}) const t = setInterval(() => { api.memory().then((r: any) => setEntries(r.memory || [])).catch(() => {}) }, 5000) return () => clearInterval(t) }, []) if (entries.length === 0) return null return (
🧠 Agent Memory ({entries.length})
{entries.slice(0, 8).map((e, i) => (
{e.task_id.replace('_',' ')} = 0.7 ? '#22c55e' : '#f59e0b', fontFamily: 'monospace' }}>{(e.reward*100).toFixed(0)}%
{e.fix_summary.slice(0, 100)}
))}
) }