Fix: pipeline canvas category (#13319)

### What problem does this PR solve?

Fix: pipeline canvas category

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
This commit is contained in:
Magicbook1108
2026-03-02 20:27:36 +08:00
committed by GitHub
parent 707de2461a
commit 4f09b3e2a4
2 changed files with 2 additions and 19 deletions

View File

@ -187,7 +187,8 @@ async def run():
canvas_category = replica_payload.get("canvas_category", CanvasCategory.Agent)
dsl_str = json.dumps(replica_dsl, ensure_ascii=False)
if canvas_category == CanvasCategory.DataFlow:
_, cvs = await thread_pool_exec(UserCanvasService.get_by_id, req["id"])
if cvs.canvas_category == CanvasCategory.DataFlow:
task_id = get_uuid()
Pipeline(dsl_str, tenant_id=tenant_id, doc_id=CANVAS_DEBUG_DOC_ID, task_id=task_id, flow_id=req["id"])
ok, error_message = await thread_pool_exec(queue_dataflow, user_id, req["id"], task_id, CANVAS_DEBUG_DOC_ID, files[0], 0)

View File

@ -625,24 +625,6 @@ def test_run_dataflow_and_canvas_sse_matrix_unit(monkeypatch):
res = _run(inspect.unwrap(module.run)())
assert res["message"] == "canvas replica not found, please call /get/<canvas_id> first."
pipeline_calls = []
monkeypatch.setattr(module, "Pipeline", lambda *args, **kwargs: pipeline_calls.append((args, kwargs)))
monkeypatch.setattr(module, "get_uuid", lambda: "task-1")
_set_request_json(monkeypatch, module, {"id": "df-1", "files": ["f1"], "user_id": "exp-1"})
monkeypatch.setattr(module.CanvasReplicaService, "load_for_run", lambda *_args, **_kwargs: {"dsl": {"n": 1}, "title": "df", "canvas_category": module.CanvasCategory.DataFlow})
monkeypatch.setattr(module, "queue_dataflow", lambda *_args, **_kwargs: (False, "queue failed"))
res = _run(inspect.unwrap(module.run)())
assert res["code"] == module.RetCode.DATA_ERROR
assert "queue failed" in res["message"]
assert pipeline_calls
_set_request_json(monkeypatch, module, {"id": "df-1", "files": ["f1"], "user_id": "exp-1"})
monkeypatch.setattr(module, "queue_dataflow", lambda *_args, **_kwargs: (True, ""))
res = _run(inspect.unwrap(module.run)())
assert res["code"] == module.RetCode.SUCCESS
assert res["data"]["message_id"] == "task-1"
_set_request_json(monkeypatch, module, {"id": "ag-1", "query": "q", "files": [], "inputs": {}})
monkeypatch.setattr(module.CanvasReplicaService, "load_for_run", lambda *_args, **_kwargs: {"dsl": {"x": 1}, "title": "ag", "canvas_category": module.CanvasCategory.Agent})
monkeypatch.setattr(module, "Canvas", lambda *_args, **_kwargs: (_ for _ in ()).throw(RuntimeError("canvas init failed")))