fix: task lane restore checks activeChatId, not urlSessionId

The showTaskLane initializer was comparing the saved chatId against
urlSessionId (null on /assistant), so it never matched. Now compares
against activeChatId which is already restored from sessionStorage.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
chihlasm
2026-03-28 13:03:06 +00:00
parent 1e78977e4f
commit 977e5a8ddb

View File

@@ -48,21 +48,21 @@ export default function AssistantChatPage() {
const [activeQuestions, setActiveQuestions] = useState<QuestionItem[]>(() => {
try {
const saved = sessionStorage.getItem('rf-tasklane-meta')
if (saved) { const d = JSON.parse(saved); return d.questions || [] }
if (saved) { const d = JSON.parse(saved); if (d.chatId === activeChatId) return d.questions || [] }
} catch { /* ignore */ }
return []
})
const [activeActions, setActiveActions] = useState<ActionItem[]>(() => {
try {
const saved = sessionStorage.getItem('rf-tasklane-meta')
if (saved) { const d = JSON.parse(saved); return d.actions || [] }
if (saved) { const d = JSON.parse(saved); if (d.chatId === activeChatId) return d.actions || [] }
} catch { /* ignore */ }
return []
})
const [showTaskLane, setShowTaskLane] = useState(() => {
try {
const saved = sessionStorage.getItem('rf-tasklane-meta')
if (saved) { const d = JSON.parse(saved); return d.show === true && d.chatId === (urlSessionId || null) }
if (saved) { const d = JSON.parse(saved); return d.show === true && d.chatId === activeChatId }
} catch { /* ignore */ }
return false
})