diff --git a/wwwroot/api/cockpit_chat.dspy b/wwwroot/api/cockpit_chat.dspy index 520f762..5f0218f 100644 --- a/wwwroot/api/cockpit_chat.dspy +++ b/wwwroot/api/cockpit_chat.dspy @@ -2,26 +2,14 @@ import aiohttp action = (params_kw or {}).get('action', 'list_messages') -# AgentIO sends JSON body: {"params":{"prompt":"...","model_id":"..."},...} +# AgentIO sends JSON body without action field — detect from message_text presence if action != 'send_message': - try: p = dict(params_kw) if params_kw else {} - except: p = {} - msg = p.get('message_text', '') or '' + p = params_kw or {} + msg = (p.get('message_text') or '').strip() if not msg: - inner = p.get('params', None) - if inner is not None and isinstance(inner, dict): + inner = p.get('params', {}) + if isinstance(inner, dict): msg = (inner.get('prompt') or inner.get('message_text') or '').strip() - # bricks_fetch sends JSON body without Content-Type — read raw - if not msg: - try: - raw_body = await request.read() - if raw_body: - import json - body = json.loads(raw_body.decode('utf-8')) - inner2 = body.get('params', {}) - if isinstance(inner2, dict): - msg = (inner2.get('prompt') or inner2.get('message_text') or '').strip() - except: pass if msg: action = 'send_message' dbname = get_module_dbname('pipeline-sdlc')