Errors and warnings
On save or validate, DevPeek reports **E** errors (must fix) or **W** warnings (compiles but likely wrong). Messages include line numbers and codes—use the tables below.
错误(必须修复)
保存或校验失败;不改正将无法使用该 Flow。
| 错误码 | 说明 |
|---|---|
| E001 | 语法或缩进不合法:例如 Tab 与空格混用、行结构无法解析、管道写法不符合规范 |
| E002 | 使用了未知的管道 transform(| 后面的名称不在内置列表中) |
| E003 | 引用了未定义的 $变量(validate 严格模式下,capture 或赋值之前不能使用) |
| E004 | 缩进树结构非法:例如返回行出现在根级、父子层级不符合「条件 → 返回」约定 |
| E005 | 未知的 --@ 生命周期事件名(合法名如 open、loop、ping、close 等) |
| E006 | 时长格式非法:--@loop 后的 duration 须为如 5s、300ms 的形式 |
| E007 | 重复定义 scope 进入:两条条件行都写了相同的 ~name |
| E008 | 文件头为 # upstream off 时,须开启 # ping auto 或提供 --@ping 分支,否则协议 Ping 无人响应 |
| E009 | 未知的 # format transform 名(v2 规划,当前版本可忽略) |
| E010 | protobuf 等 transform 缺少 # schema(v2.5+ 规划) |
| E011 | Transform 用在错误一侧:条件行应使用 | codec,返回行误用了 > 等 |
| E012 | 同一行重复指定同一 codec(> 与 | 各写一次) |
| E013 | 未知或非法的 transform 参数/选项名(v2) |
| E014 | transform 参数个数或类型不符(v2) |
| E015 | 把 transform 注册表名当作无 | 的单词简写返回(v2) |
警告(可编译,建议处理)
Flow 可以编译通过,但容易导致运行时行为与预期不符。
| 警告码 | 说明 |
|---|---|
| W001 | 存在 !~name 退出,但全文没有任何 ~name 进入定义;该退出行运行时永远不会匹配 |
| W002 | 多条互斥 entry 条件可能重叠;运行时会按源序深度优先择一,结果可能不符合直觉 |
| W003 | 前置 > 编解码链过长(超过 2 个 codec)(v2,建议拆分 Flow) |