I do that kind of things all the time with Qwen 3.5 122B. It works well in one shot with Cline or Opencode.
May be your harness problem?