fix: brainstorm infinite loop, ghost cursor, embedding ::vector cast, semantic search, billing stats, usage meter accordion
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 5s
All checks were successful
Deploy to Production / Build and Deploy (push) Successful in 5s
- Fix useBrainstormSocket: stable guestId via useRef, remove setState in cleanup - Fix GhostCursor: direct DOM manipulation via refs, no useState re-renders - Fix all SQL embedding queries: add ::vector cast on text columns - Fix embedding truncation to 15000 chars (under 8192 token limit) - Fix NoteEmbedding INSERT: remove non-existent updatedAt column - Fix billing page: show all quota stats in grid instead of single metric - Fix usage meter: accordion expand/collapse, per-feature detail - Fix semantic search: rebuild 103 note embeddings, ::vector cast on vectorSearch - Fix brainstorm expand/manual-idea/create: ::vector cast on embedding SQL
This commit is contained in:
@@ -32,7 +32,11 @@ export function useBrainstormSocket(
|
||||
const [activities, setActivities] = useState<ActivityEvent[]>([])
|
||||
const [aiProcessingNodeId, setAiProcessingNodeId] = useState<string | null>(null)
|
||||
|
||||
const effectiveUserId = userId || `guest_${Math.random().toString(36).slice(2, 10)}`
|
||||
const guestIdRef = useRef<string | null>(null)
|
||||
if (!guestIdRef.current && !userId) {
|
||||
guestIdRef.current = `guest_${Math.random().toString(36).slice(2, 10)}`
|
||||
}
|
||||
const effectiveUserId = userId || guestIdRef.current!
|
||||
|
||||
useEffect(() => {
|
||||
if (!sessionId) return
|
||||
@@ -85,8 +89,6 @@ export function useBrainstormSocket(
|
||||
return () => {
|
||||
socket.disconnect()
|
||||
socketRef.current = null
|
||||
setOthers([])
|
||||
setAiProcessingNodeId(null)
|
||||
}
|
||||
}, [sessionId, effectiveUserId, userName])
|
||||
|
||||
|
||||
Reference in New Issue
Block a user