🐛 Fix think sheet didn't provide context

This commit is contained in:
2025-10-27 01:45:54 +08:00
parent f74cca8464
commit 8b0c91977a

View File

@@ -41,6 +41,7 @@ class ThoughtSheet extends HookConsumerWidget {
@override @override
Widget build(BuildContext context, WidgetRef ref) { Widget build(BuildContext context, WidgetRef ref) {
final sequenceId = useState<String?>(null);
final localThoughts = useState<List<SnThinkingThought>>([]); final localThoughts = useState<List<SnThinkingThought>>([]);
final currentTopic = useState<String?>('aiThought'.tr()); final currentTopic = useState<String?>('aiThought'.tr());
@@ -80,11 +81,11 @@ class ThoughtSheet extends HookConsumerWidget {
content: userMessage, content: userMessage,
files: [], files: [],
role: ThinkingThoughtRole.user, role: ThinkingThoughtRole.user,
sequenceId: '', sequenceId: sequenceId.value ?? '',
createdAt: now, createdAt: now,
updatedAt: now, updatedAt: now,
sequence: SnThinkingSequence( sequence: SnThinkingSequence(
id: '', id: sequenceId.value ?? '',
accountId: userInfo.value!.id, accountId: userInfo.value!.id,
createdAt: now, createdAt: now,
updatedAt: now, updatedAt: now,
@@ -94,7 +95,7 @@ class ThoughtSheet extends HookConsumerWidget {
final request = StreamThinkingRequest( final request = StreamThinkingRequest(
userMessage: userMessage, userMessage: userMessage,
sequenceId: null, sequenceId: sequenceId.value,
accpetProposals: ['post_create'], accpetProposals: ['post_create'],
attachedMessages: attachedMessages, attachedMessages: attachedMessages,
attachedPosts: attachedPosts, attachedPosts: attachedPosts,
@@ -158,6 +159,10 @@ class ThoughtSheet extends HookConsumerWidget {
final event = jsonDecode(jsonStr); final event = jsonDecode(jsonStr);
final aiThought = SnThinkingThought.fromJson(event['data']); final aiThought = SnThinkingThought.fromJson(event['data']);
localThoughts.value = [aiThought, ...localThoughts.value]; localThoughts.value = [aiThought, ...localThoughts.value];
if (sequenceId.value == null &&
aiThought.sequenceId.isNotEmpty) {
sequenceId.value = aiThought.sequenceId;
}
isStreaming.value = false; isStreaming.value = false;
} }
} catch (e) { } catch (e) {