Skip to content

[Bug]: invoke.composeExtension/fetchTask.value.commandContext is missing for iOS Teams App #237

@aviadpriel

Description

@aviadpriel

Bug Description

Failed send composeExtension/fetchTask event from the iOS Teams app

example Event
{
"name": "composeExtension/fetchTask",
"type": "invoke",
"timestamp": "2025-12-17T13:46:40.451Z",
"localTimestamp": "2025-12-17T15:46:40.451+02:00",
"id": "f:62dcf698-cda3-f257-78b9-88872540a0b3",
"channelId": "msteams",
"serviceUrl": "https://smba.trafficmanager.net/il/4af974d3-98ed-4c0e-959d-a8a6eabb1fe5/",
"from": {
"id": "29:1S_F5LY_8qCPjyorfT7Gj5vmFYNoj1NhWnjwSVcOU4ayU7n1lOxKDcXAqycCzJN6YsMrgFZJAxvEuoZQ8o1S8pw",
"name": "Hodaya Baruch",
"aadObjectId": "93a2643b-9007-40d4-a29e-5c4fdcd92f0c"
},
"conversation": {
"isGroup": true,
"conversationType": "channel",
"tenantId": "4af974d3-98ed-4c0e-959d-a8a6eabb1fe5",
"id": "19:[email protected]",
"name": "Ask_Legal"
},
"recipient": {
"id": "28:ad596c08-aa7c-4c30-88f1-e829f26c084e",
"name": "chamelio-local-bot"
},
"entities": [
{
"locale": "he-IL",
"country": "IL",
"platform": "iOS",
"timezone": "Asia/Jerusalem",
"type": "clientInfo"
}
],
"channelData": {
"channel": {
"id": "19:[email protected]"
},
"team": {
"id": "19:[email protected]"
},
"tenant": {
"id": "4af974d3-98ed-4c0e-959d-a8a6eabb1fe5"
},
"source": {
"name": "compose"
},
"legacy": {
"replyToId": "1:1C5t23F4GBgk06KBiIOVQKvoPA5Fh5vvzUlVt6ETIJFY"
}
},
"replyToId": "0",
"value": {
"context": {
"theme": "default"
},
"commandId": "workflows_intake_get_forms",
"state": ""
},
"locale": "he-IL",
"localTimezone": "Asia/Jerusalem"
}

Steps to Reproduce

Send composeExtension/fetchTask event from the iOS Teams app

Expected Behavior

Work like the rest of the Platforms or hide the apps from IOS

Actual Behavior

500 on the Teams app

pydantic_core._pydantic_core.ValidationError: 1 validation error for tagged-union[HandoffActivity,TraceActivity,TypingActivity,CommandSendActivity,CommandResultActivity,ConversationUpdateActivity,EndOfConversationActivity,MessageActivity,MessageDeleteActivity,MessageReactionActivity,MessageUpdateActivity,tagged-union[ReadReceiptEventActivity,MeetingStartEventActivity,MeetingEndEventActivity,MeetingParticipantJoinEventActivity,MeetingParticipantLeaveEventActivity],tagged-union[FileConsentInvokeActivity,ExecuteActionInvokeActivity,MessageExtensionAnonQueryLinkInvokeActivity,MessageExtensionCardButtonClickedInvokeActivity,MessageExtensionFetchTaskInvokeActivity,MessageExtensionQueryInvokeActivity,MessageExtensionQueryLinkInvokeActivity,MessageExtensionQuerySettingUrlInvokeActivity,MessageExtensionSelectItemInvokeActivity,MessageExtensionSettingInvokeActivity,MessageExtensionSubmitActionInvokeActivity,ConfigFetchInvokeActivity,ConfigSubmitInvokeActivity,TabFetchInvokeActivity,TabSubmitInvokeActivity,TaskFetchInvokeActivity,TaskSubmitInvokeActivity,MessageSubmitActionInvokeActivity,HandoffActionInvokeActivity,SignInTokenExchangeInvokeActivity,SignInVerifyStateInvokeActivity,SignInFailureInvokeActivity,AdaptiveCardInvokeActivity],tagged-union[InstalledActivity,UninstalledActivity]]
invoke.composeExtension/fetchTask.value.commandContext
Field required [type=missing, input_value={'context': {'theme': 'de...get_forms', 'state': ''}, input_type=dict]
For further information visit https://errors.pydantic.dev/2.12/v/missing

invoke.composeExtension/fetchTask.value.commandContext is missing

example Event from my bot
{
"name": "composeExtension/fetchTask",
"type": "invoke",
"timestamp": "2025-12-17T13:46:40.451Z",
"localTimestamp": "2025-12-17T15:46:40.451+02:00",
"id": "f:62dcf698-cda3-f257-78b9-88872540a0b3",
"channelId": "msteams",
"serviceUrl": "https://smba.trafficmanager.net/il/4af974d3-98ed-4c0e-959d-a8a6eabb1fe5/",
"from": {
"id": "29:1S_F5LY_8qCPjyorfT7Gj5vmFYNoj1NhWnjwSVcOU4ayU7n1lOxKDcXAqycCzJN6YsMrgFZJAxvEuoZQ8o1S8pw",
"name": "Hodaya Baruch",
"aadObjectId": "93a2643b-9007-40d4-a29e-5c4fdcd92f0c"
},
"conversation": {
"isGroup": true,
"conversationType": "channel",
"tenantId": "4af974d3-98ed-4c0e-959d-a8a6eabb1fe5",
"id": "19:[email protected]",
"name": "Ask_Legal"
},
"recipient": {
"id": "28:ad596c08-aa7c-4c30-88f1-e829f26c084e",
"name": "chamelio-local-bot"
},
"entities": [
{
"locale": "he-IL",
"country": "IL",
"platform": "iOS",
"timezone": "Asia/Jerusalem",
"type": "clientInfo"
}
],
"channelData": {
"channel": {
"id": "19:[email protected]"
},
"team": {
"id": "19:[email protected]"
},
"tenant": {
"id": "4af974d3-98ed-4c0e-959d-a8a6eabb1fe5"
},
"source": {
"name": "compose"
},
"legacy": {
"replyToId": "1:1C5t23F4GBgk06KBiIOVQKvoPA5Fh5vvzUlVt6ETIJFY"
}
},
"replyToId": "0",
"value": {
"context": {
"theme": "default"
},
"commandId": "workflows_intake_get_forms",
"state": ""
},
"locale": "he-IL",
"localTimezone": "Asia/Jerusalem"
}

SDK Version

2.0.0a8

Python Version

3.13

Additional Context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions