From 37a5e807425a436b7aa7be5f72ee370b4d07471c Mon Sep 17 00:00:00 2001 From: soryu Date: Fri, 13 Feb 2026 00:28:22 +0000 Subject: WIP: heartbeat checkpoint --- .../src/components/directives/DirectiveDetail.tsx | 53 ++------- makima/frontend/src/hooks/useDirectiveMemories.ts | 122 ++++++++++----------- makima/frontend/tsconfig.tsbuildinfo | 2 +- 3 files changed, 69 insertions(+), 108 deletions(-) diff --git a/makima/frontend/src/components/directives/DirectiveDetail.tsx b/makima/frontend/src/components/directives/DirectiveDetail.tsx index ab6ddbb..e66325a 100644 --- a/makima/frontend/src/components/directives/DirectiveDetail.tsx +++ b/makima/frontend/src/components/directives/DirectiveDetail.tsx @@ -18,10 +18,12 @@ const CATEGORY_COLORS: Record("context"); const [newContent, setNewContent] = useState(""); - const [newSource, setNewSource] = useState(""); const [confirmClear, setConfirmClear] = useState(false); const { grouped, - config: memoryConfig, loading: memoryLoading, error: memoryError, - toggleEnabled, add: addMemory, remove: removeMemory, clearAll: clearMemories, refresh: refreshMemories, } = useDirectiveMemories(directive.id); - const memoryEnabled = memoryConfig?.enabled ?? false; - const totalMemories = Object.values(grouped).reduce((sum, arr) => sum + arr.length, 0); + const totalMemories = Object.values(grouped).reduce( + (sum: number, arr: unknown[]) => sum + arr.length, + 0 + ); // Build task map from directive steps and orchestrator const taskMap = useMemo(() => { @@ -126,10 +127,8 @@ export function DirectiveDetail({ await addMemory({ category: newCategory, content: newContent.trim(), - source: newSource.trim() || undefined, }); setNewContent(""); - setNewSource(""); setAddingMemory(false); }; @@ -358,21 +357,6 @@ export function DirectiveDetail({ )} -
- {/* Enable/disable toggle */} - -
{/* Collapsible content */} @@ -389,14 +373,13 @@ export function DirectiveDetail({ ) : totalMemories === 0 ? (
No memory entries yet. - {!memoryEnabled && " Enable memory to start capturing entries."}
) : ( /* Grouped entries */
{ALL_CATEGORIES.map((cat) => { - const entries = grouped[cat]; - if (entries.length === 0) return null; + const catEntries = grouped[cat]; + if (catEntries.length === 0) return null; const style = CATEGORY_COLORS[cat]; return (
@@ -405,11 +388,11 @@ export function DirectiveDetail({ {style.label} - ({entries.length}) + ({catEntries.length})
- {entries.map((entry) => ( + {catEntries.map((entry) => (
{entry.content}

- {entry.source && ( - - src: {entry.source} - - )}