Hermes Agent b9a5810d85 feat(v3): human-in-the-loop — interactive steps, pluggable step_type registry
- New states: waiting (step/task), rejected (step)
- New tables: pipeline_human_tasks, pipeline_step_types
- New module: step_registry.py — pluggable step_type metadata
- New module: human.py — human_complete, approval_approve, approval_reject
- Executor: detects interactive step_types, creates human_tasks, enters waiting
- Reject with rollback: approval_reject(rollback_to=step) resets steps and re-runs
- API: human_task_complete, approval_approve, approval_reject, human_task_list
- API: pipeline_step_types, pipeline_register_step_type, pipeline_unregister_step_type
- Built-in interactive types: human_task, approval_gate
- Updated DDL and appcodes
2026-06-16 11:05:45 +08:00

95 lines
3.3 KiB
JSON

{
"appcodes": [
{
"parentid": "task_state",
"parentname": "任务状态",
"items": [
{"k": "submitted", "v": "已提交"},
{"k": "running", "v": "运行中"},
{"k": "completed", "v": "已完成"},
{"k": "failed", "v": "失败"},
{"k": "paused", "v": "已暂停"},
{"k": "cancelled", "v": "已取消"},
{"k": "waiting", "v": "等待人工"}
]
},
{
"parentid": "step_state",
"parentname": "步骤状态",
"items": [
{"k": "pending", "v": "等待中"},
{"k": "running", "v": "执行中"},
{"k": "completed", "v": "已完成"},
{"k": "failed", "v": "失败"},
{"k": "skipped", "v": "已跳过"},
{"k": "waiting", "v": "等待人工"},
{"k": "rejected", "v": "已驳回"}
]
},
{
"parentid": "io_type",
"parentname": "产物类型",
"items": [
{"k": "input", "v": "输入"},
{"k": "output", "v": "输出"}
]
},
{
"parentid": "step_type",
"parentname": "步骤类型",
"items": [
{"k": "audio_process", "v": "音频处理"},
{"k": "video_process", "v": "视频处理"},
{"k": "llm_generate", "v": "LLM生成"},
{"k": "llm_evaluate", "v": "LLM评估"},
{"k": "api_call", "v": "外部API调用"},
{"k": "file_process", "v": "文件处理"},
{"k": "composite", "v": "合成"},
{"k": "custom", "v": "自定义"},
{"k": "human_task", "v": "人工任务"},
{"k": "approval_gate", "v": "审批关卡"}
]
},
{
"parentid": "human_task_type",
"parentname": "人工任务类型",
"items": [
{"k": "human_task", "v": "人工任务"},
{"k": "approval_gate", "v": "审批关卡"}
]
},
{
"parentid": "human_task_status",
"parentname": "人工任务状态",
"items": [
{"k": "pending", "v": "待处理"},
{"k": "submitted", "v": "已提交"},
{"k": "approved", "v": "已通过"},
{"k": "rejected", "v": "已驳回"},
{"k": "expired", "v": "已过期"}
]
},
{
"parentid": "step_type_category",
"parentname": "步骤类型分类",
"items": [
{"k": "media", "v": "媒体处理"},
{"k": "llm", "v": "AI生成"},
{"k": "interactive", "v": "人工交互"},
{"k": "devops", "v": "开发运维"},
{"k": "testing", "v": "测试验证"},
{"k": "general", "v": "通用"}
]
},
{
"parentid": "timeout_policy",
"parentname": "超时策略",
"items": [
{"k": "skip", "v": "跳过"},
{"k": "escalate", "v": "升级通知"},
{"k": "fail", "v": "标记失败"}
]
}
]
}