@@ -221,39 +221,42 @@ describe("buildEmbeddedRunPayloads tool-error warnings", () => {
221221 expectSinglePayloadText ( payloads , "The schema export is fixed." ) ;
222222 } ) ;
223223
224- it ( "turns internal message-tool source replies into suppression-safe final payloads" , ( ) => {
225- const payloads = buildPayloads ( {
226- assistantTexts : [ "ordinary final should stay private" ] ,
227- didSendViaMessagingTool : true ,
228- messagingToolSourceReplyPayloads : [
229- {
230- text : "sent through message tool" ,
231- mediaUrls : [ "/tmp/reply.png" ] ,
232- } ,
233- ] ,
234- sourceReplyDeliveryMode : "message_tool_only" ,
235- sessionKey : "agent:main" ,
236- agentId : "main" ,
237- runId : "run-1" ,
238- } ) ;
239-
240- expect ( payloads ) . toHaveLength ( 1 ) ;
241- expect ( payloads [ 0 ] ) . toMatchObject ( {
242- text : "sent through message tool" ,
243- mediaUrl : "/tmp/reply.png" ,
244- mediaUrls : [ "/tmp/reply.png" ] ,
245- } ) ;
246- expect ( getReplyPayloadMetadata ( payloads [ 0 ] as object ) ) . toMatchObject ( {
247- deliverDespiteSourceReplySuppression : true ,
248- sourceReplyTranscriptMirror : {
224+ it . each ( [ "message_tool_only" , "automatic" ] as const ) (
225+ "turns %s internal message-tool source replies into suppression-safe final payloads" ,
226+ ( sourceReplyDeliveryMode ) => {
227+ const payloads = buildPayloads ( {
228+ assistantTexts : [ "ordinary final should stay private" ] ,
229+ didSendViaMessagingTool : true ,
230+ messagingToolSourceReplyPayloads : [
231+ {
232+ text : "sent through message tool" ,
233+ mediaUrls : [ "/tmp/reply.png" ] ,
234+ } ,
235+ ] ,
236+ sourceReplyDeliveryMode,
249237 sessionKey : "agent:main" ,
250238 agentId : "main" ,
239+ runId : "run-1" ,
240+ } ) ;
241+
242+ expect ( payloads ) . toHaveLength ( 1 ) ;
243+ expect ( payloads [ 0 ] ) . toMatchObject ( {
251244 text : "sent through message tool" ,
245+ mediaUrl : "/tmp/reply.png" ,
252246 mediaUrls : [ "/tmp/reply.png" ] ,
253- idempotencyKey : "run-1:internal-source-reply:0" ,
254- } ,
255- } ) ;
256- } ) ;
247+ } ) ;
248+ expect ( getReplyPayloadMetadata ( payloads [ 0 ] as object ) ) . toMatchObject ( {
249+ deliverDespiteSourceReplySuppression : true ,
250+ sourceReplyTranscriptMirror : {
251+ sessionKey : "agent:main" ,
252+ agentId : "main" ,
253+ text : "sent through message tool" ,
254+ mediaUrls : [ "/tmp/reply.png" ] ,
255+ idempotencyKey : "run-1:internal-source-reply:0" ,
256+ } ,
257+ } ) ;
258+ } ,
259+ ) ;
257260
258261 it ( "preserves rich-only internal message-tool source replies" , ( ) => {
259262 const presentation = {
0 commit comments