+
    Q(¸i!
  ã                  óÈ   € R t ^ RIHt ^ RIHtHtHt ^ RIt^ RI	H
t
 ^ RIHtHt ^ RIHt ^ RIHt ]'       d   ^ RIHt ^ R	IHt ^ R
IHt ^ RIHt ]R,          tRR R lltR# )zjTask routing helper for MCP components.

Provides unified task mode enforcement and docket routing logic.
)Úannotations)ÚTYPE_CHECKINGÚAnyÚLiteralN)ÚMcpError)ÚMETHOD_NOT_FOUNDÚ	ErrorData)ÚTaskMeta)Úsubmit_to_docket)ÚPrompt)ÚResource)ÚResourceTemplate)ÚToolc          
     ó,   € V ^8„  d   QhRRRRRRRRR	R
/# )é   Ú	componentz+Tool | Resource | ResourceTemplate | PromptÚ	task_typeÚTaskTypeÚ	argumentszdict[str, Any] | NoneÚ	task_metazTaskMeta | NoneÚreturnz!mcp.types.CreateTaskResult | None© )Úformats   "Úb/Users/agent/.openclaw/workspace/venv/lib/python3.14/site-packages/fastmcp/server/tasks/routing.pyÚ__annotate__r      sA   € ÷ 2Vñ 2VØ:ð2Vàð2Vð %ð2Vð ð	2Vð
 'ñ2Vó    c              ƒ  óø  "  € V P                   p\        V 4      P                   RV P                  ;'       g    V P                   R2pVP
                  R8X  d&   V'       g   \        \        \        V R2R7      4      hVP                  4       '       g&   V'       d   \        \        \        V R2R7      4      hV'       g   R# VP                  ;'       g    V P                  p\        WWV4      G Rj  x€L
 #  L5i)a  Check task mode and submit to background if requested.

Args:
    component: The MCP component
    task_type: Type of task ("tool", "resource", "template", "prompt")
    arguments: Arguments for tool/prompt/template execution
    task_meta: Task execution metadata. If provided, execute as background task.

Returns:
    CreateTaskResult if submitted to docket, None for sync execution

Raises:
    McpError: If mode="required" but no task metadata, or mode="forbidden"
              but task metadata is present
z 'Ú'Úrequiredz" requires task-augmented execution)ÚcodeÚmessagez* does not support task-augmented executionN)Útask_configÚtypeÚ__name__ÚtitleÚkeyÚmoder   r   r   Úsupports_tasksÚfn_keyr
   )r   r   r   r   r!   Úentity_labelr(   s   &&&&   r   Úcheck_background_taskr*      sä   é € ð* ×'Ñ'€Kô ˜9“o×.Ñ.Ð/¨r°)·/±/×2RÐ2RÀYÇ]Á]Ð1SÐSTÐU€Lð ×Ñ˜:Ô%¯iÜÜÜ%Ø'˜.Ð(JÐKôó
ð 	
ð ×%Ñ%×'Ò'¯IÜÜÜ%Ø'˜.Ð(RÐSôó
ð 	
÷ Ùð ×Ñ×.Ð. §¡€FÜ! )°YÈ9ÓU×UÐUÑUùs0   ‚AC:Á!2C:ÂC:Â$C:ÃC:ÃC:Ã3C8Ã4C:)ÚtoolÚresourceÚtemplateÚprompt)NN)Ú__doc__Ú
__future__r   Útypingr   r   r   Ú	mcp.typesÚmcpÚmcp.shared.exceptionsr   r   r   Úfastmcp.server.tasks.configr	   Úfastmcp.server.tasks.handlersr
   Úfastmcp.prompts.promptr   Úfastmcp.resources.resourcer   Úfastmcp.resources.templater   Úfastmcp.tools.toolr   r   r*   r   r   r   Ú<module>r;      sJ   ðñõ
 #ç .Ñ .ã Ý *ß 1å 0Ý :çÝ-Ý3Ý;Ý'àÐ;Õ<€÷2Vñ 2Vr   