@@ -76,12 +76,12 @@ private function SyncPromptData(Apps $app, MessageType $messageType, MessageType
76
76
77
77
//Need to get just the first child message
78
78
foreach ($ message ->children as $ childMessage ) {
79
- $ validateMessageSchema = new MessageSchemaValidator ($ childMessage , $ childMessageType , true );
80
- $ this ->info ('--Checking Child Nugget Message Schema of ID: ' . $ childMessage ->getId ());
81
- if ($ validateMessageSchema ->validate ()) {
82
- $ this ->info ('--Message Schema is OK ' );
83
- continue ;
84
- }
79
+ // $validateMessageSchema = new MessageSchemaValidator($childMessage, $childMessageType, true);
80
+ // $this->info('--Checking Child Nugget Message Schema of ID: ' . $childMessage->getId());
81
+ // if ($validateMessageSchema->validate()) {
82
+ // $this->info('--Message Schema is OK');
83
+ // continue;
84
+ // }
85
85
86
86
$ this ->info ('--Fixing Child Nugget Message Schema ' );
87
87
$ this ->fixNuggetData ($ childMessage );
@@ -97,13 +97,13 @@ private function SyncPromptData(Apps $app, MessageType $messageType, MessageType
97
97
private function fixPromptData (Message $ message ): void
98
98
{
99
99
$ messageData = is_array ($ message ->message ) ? $ message ->message : json_decode ($ message ->message , true );
100
- $ validateMessageSchema = new MessageSchemaValidator ($ message , MessageType::find ($ message ->message_types_id ), true );
100
+ // $validateMessageSchema = new MessageSchemaValidator($message, MessageType::find($message->message_types_id), true);
101
101
102
- $ this ->info ('--Checking Prompt Message Schema of ID: ' . $ message ->getId ());
103
- if ($ validateMessageSchema ->validate ()) {
104
- $ this ->info ('-Prompt Message Schema is OK ' );
105
- return ;
106
- }
102
+ // $this->info('--Checking Prompt Message Schema of ID: ' . $message->getId());
103
+ // if ($validateMessageSchema->validate()) {
104
+ // $this->info('-Prompt Message Schema is OK');
105
+ // return;
106
+ // }
107
107
//Anything that is not a prompt, set as deleted
108
108
if (! isset ($ messageData ['prompt ' ])) {
109
109
$ message ->is_deleted = 1 ;
@@ -157,10 +157,20 @@ private function fixPromptData(Message $message): void
157
157
$ this ->info ('Added payment to message data ' );
158
158
}
159
159
160
- // if (isset($messageData['ai_nugged'])) {
161
- // unset($messageData['ai_nugged']);
162
- // $this->info('Removed ai_nugged from message data');
163
- // }
160
+ if (isset ($ messageData ['ai_nugged ' ])) {
161
+ unset($ messageData ['ai_nugged ' ]);
162
+ $ this ->info ('Removed ai_nugged from message data ' );
163
+ }
164
+
165
+ if (isset ($ messageData ['nugget ' ])) {
166
+ unset($ messageData ['nugget ' ]);
167
+ $ this ->info ('Removed nugget from message data ' );
168
+ }
169
+
170
+ if (isset ($ messageData ['is_assistant ' ])) {
171
+ unset($ messageData ['is_assistant ' ]);
172
+ $ this ->info ('Removed is_assistant from message data ' );
173
+ }
164
174
165
175
$ message ->message = $ messageData ;
166
176
$ message ->save ();
@@ -200,18 +210,22 @@ private function fixNuggetData(Message $message): void
200
210
if (! isset ($ messageData ['type ' ]) && isset ($ parentMessageData ['type ' ])) {
201
211
$ messageData ['type ' ] = $ parentMessageData ['type ' ];
202
212
203
- if (! isset ($ messageData ['nugget ' ]) || ! isset ($ messageData ['image ' ])) {
213
+ $ this ->info ('Added message type to message data: ' . $ messageData ['type ' ]);
214
+ if (! isset ($ messageData ['nugget ' ]) && $ messageData ['type ' ] === 'text-format ' ) {
215
+ $ this ->info ('Generating nugget for message ID: ' . $ message ->getId ());
204
216
$ response = Prism::text ()
205
- ->using (Provider::Gemini, 'gemini-2.0-flash ' )
206
- ->withPrompt ($ parentMessageData ['prompt ' ])
207
- ->generate ();
208
-
217
+ ->using (Provider::Gemini, 'gemini-2.0-flash ' )
218
+ ->withPrompt ($ parentMessageData ['prompt ' ])
219
+ ->generate ();
209
220
$ responseText = str_replace (['``` ' , 'json ' ], '' , $ response ->text );
210
221
$ messageData ['nugget ' ] = $ responseText ;
222
+ $ this ->info ('Added message nugget to message data ' );
211
223
}
224
+ }
212
225
213
- $ this ->info ('Added message type to message data: ' . $ messageData ['type ' ]);
214
- $ this ->info ('Added message nugget to message data ' );
226
+ if (isset ($ messageData ['nugget ' ]) && $ messageData ['type ' ] === 'image-format ' ) {
227
+ unset($ messageData ['nugget ' ]);
228
+ $ this ->info ('Removed nugget from message data on image format ' );
215
229
}
216
230
217
231
if (isset ($ messageData ['display_type ' ])) {
@@ -244,10 +258,15 @@ private function fixNuggetData(Message $message): void
244
258
$ this ->info ('Removed ai_model from message data ' );
245
259
}
246
260
247
- // if (isset($messageData['ai_nugged'])) {
248
- // unset($messageData['ai_nugged']);
249
- // $this->info('Removed ai_nugged from message data');
250
- // }
261
+ if (isset ($ messageData ['ai_nugged ' ])) {
262
+ unset($ messageData ['ai_nugged ' ]);
263
+ $ this ->info ('Removed ai_nugged from message data ' );
264
+ }
265
+
266
+ if (isset ($ messageData ['description ' ])) {
267
+ unset($ messageData ['description ' ]);
268
+ $ this ->info ('Removed description from message data ' );
269
+ }
251
270
252
271
$ message ->message = $ messageData ;
253
272
$ message ->save ();
@@ -257,9 +276,9 @@ private function createNuggetMessage(Message $parentMessage, MessageType $childM
257
276
{
258
277
$ messageData = is_array ($ parentMessage ->message ) ? $ parentMessage ->message : json_decode ($ parentMessage ->message , true );
259
278
$ response = Prism::text ()
260
- ->using (Provider::Gemini, 'gemini-2.0-flash ' )
261
- ->withPrompt ($ messageData ['prompt ' ])
262
- ->generate ();
279
+ ->using (Provider::Gemini, 'gemini-2.0-flash ' )
280
+ ->withPrompt ($ messageData ['prompt ' ])
281
+ ->generate ();
263
282
264
283
$ responseText = str_replace (['``` ' , 'json ' ], '' , $ response ->text );
265
284
$ nuggetId = DB ::connection ('social ' )->table ('messages ' )->insertGetId ([
@@ -282,6 +301,17 @@ private function createNuggetMessage(Message $parentMessage, MessageType $childM
282
301
->where ('id ' , $ nuggetId )
283
302
->update (['path ' => $ parentMessage ->getId () . ". " . $ nuggetId ]);
284
303
304
+ foreach ($ parentMessage ->tags () as $ tag ) {
305
+ DB ::connection ('social ' )->table ('tags_entities ' )->insert ([
306
+ 'entity_id ' => $ nuggetId ,
307
+ 'tags_id ' => $ tag ->getId (),
308
+ 'users_id ' => $ parentMessage ->users_id ,
309
+ 'taggable_type ' => "Kanvas\Social\Messages\Models\Message " ,
310
+ 'created_at ' => date ('Y-m-d H:i:s ' ),
311
+ 'updated_at ' => date ('Y-m-d H:i:s ' ),
312
+ ]);
313
+ }
314
+
285
315
//Call fixNuggetData just in case something is missing
286
316
$ this ->fixNuggetData (Message::find ($ nuggetId ));
287
317
0 commit comments