ux: workflow 文件名与 YAML name 不匹配时报错不够友好 #108

Closed
opened 2026-06-05 10:59:04 +00:00 by xiaonuo · 0 comments
Owner

问题

uwf thread start 启动一个 workflow 时,如果文件名和 YAML 内声明的 name 不一致,会直接报错拒绝:

$ uwf thread start e2e-linear.workflow.yaml -p "test"
workflow name mismatch: file "e2e-linear.workflow.yaml" implies name "e2e-linear.workflow" but YAML declares name "test-linear"

这个行为有几个不顺畅的地方:

  1. 错误信息暗示文件名会被当作 workflow name,但用户可能并不期望文件名和 YAML name 必须一致
  2. 没有提示修复方式 — 用户不知道该改文件名还是改 YAML name
  3. 对于直接从包内 fixtures 复制出来的文件,这个限制很意外 — 测试 fixture 的文件名和 YAML name 通常不一致

建议

  • 错误信息里明确告诉用户怎么修:"rename the file to test-linear.yaml or change the YAML name field to e2e-linear.workflow"
  • 或者放宽限制:直接 thread start 时以 YAML 内的 name 为准,只在 workflow add 注册时做严格校验
  • 如果是 thread start 传的是文件路径(而非已注册的 workflow name),文件名检查可以放松

环境

  • uwf v0.2.1-rc.0
## 问题 用 `uwf thread start` 启动一个 workflow 时,如果文件名和 YAML 内声明的 `name` 不一致,会直接报错拒绝: ```bash $ uwf thread start e2e-linear.workflow.yaml -p "test" workflow name mismatch: file "e2e-linear.workflow.yaml" implies name "e2e-linear.workflow" but YAML declares name "test-linear" ``` 这个行为有几个不顺畅的地方: 1. **错误信息暗示文件名会被当作 workflow name**,但用户可能并不期望文件名和 YAML name 必须一致 2. **没有提示修复方式** — 用户不知道该改文件名还是改 YAML name 3. **对于直接从包内 fixtures 复制出来的文件,这个限制很意外** — 测试 fixture 的文件名和 YAML name 通常不一致 ## 建议 - 错误信息里明确告诉用户怎么修:"rename the file to `test-linear.yaml` or change the YAML `name` field to `e2e-linear.workflow`" - 或者放宽限制:直接 `thread start` 时以 YAML 内的 `name` 为准,只在 `workflow add` 注册时做严格校验 - 如果是 `thread start` 传的是文件路径(而非已注册的 workflow name),文件名检查可以放松 ## 环境 - uwf v0.2.1-rc.0
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: shazhou/united-workforce#108