AI-SyncForge 任务调度中心,提供 Dev-QA-Ops 三方异步协作工具。MCP Broker 服务实现 Dev/QA/Ops 三方协作的任务队列、DAG 路由调度、意图蒸馏、QA 抗辩机制。
AI-SyncForge exhibits significant definition quality gaps. While 10 tools are registered with schemas and descriptions, most descriptions are overly technical (Chinese, jargon-heavy) and lack LLM-optimized clarity. Parameter descriptions exist but are sparse. No output schemas are documented. Error handling is minimal, tools return generic dicts without recovery guidance. Tool names are verb-based (submit_and_wait, get_next_task) but descriptions assume deep domain knowledge of DAG scheduling, QA workflows, and Ops intervention, not accessible to LLMs unfamiliar with this system. Critical security concerns: manage_env accepts destructive actions (restart, cleanup) with minimal validation; no permission gates or audit trails visible. Composition is reasonable (tools are single-purpose), but chaining is implicit and undocumented.
[QA] 提交测试结果。将测试状态与报告写回任务队列,解除 Dev 端的等待阻塞。
[Dev] 获取下一个可用的 DAG 任务。原子锁定一个依赖已满足的 pending 任务,状态变为 in_progress。长轮询挂起等待,无可用任务时不立即返回,节省 Token。返回任务详情 + 直接前置节点的摘要(上下文裁剪)。
[Ops/Dev] 查看项目的 DAG 状态树。返回项目中所有任务的状态快照,用于可视化和调试。
[Ops] 执行环境管理操作。支持对故障容器执行 restart/cleanup/logs/inspect 操作。严禁重启 Broker 自身容器。操作完成后自动触发事件通知唤醒 Dev。
[Dev] 标记 DAG 任务完成。将 summary 写入 metadata 实现意图蒸馏。成功时解锁下游节点(含 I/O 冷却期)。失败时触发级联阻断 + 3次自动熔断升级。支持 qa_rejection 状态发起 QA 抗辩。
[Ops] 长轮询获取运维急救任务。专供 Ops-Forge 使用,拉取系统自动生成的 ops_task 工单。Ops-Forge 启动后进入此长轮询状态,时刻待命。
[QA] 长轮询获取待测任务。内部循环等待直到有新的 dev_test 任务可用,避免客户端空轮询。
Descriptions are domain-jargon-heavy and not LLM-optimized. E.g., submit_and_wait: '[Dev] 提交代码并等待测试结果...' mixes Chinese, technical DAG terminology, and implementation details. LLMs need clear WHAT/WHEN/WHY in English, not internal architecture notes.
No output schemas documented. Tools return dicts with fields like 'task_id', 'status', 'report_path', but LLMs cannot plan downstream calls without knowing the response structure. E.g., submit_and_wait returns {'task_id', 'status', 'report_path', 'retry_count'}, this must be formally declared.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | <=2025-11-25 | v2 |
[Dev] 读取任务的完整上下文。通过后端协议直接读取,绕过 IDE 前端字数限制。当 metadata 超过 50KB 时自动降级为本地文件路径。
[Ops] 重置卡死分支。将指定任务及其所有下游任务重置为 pending 状态。用于死锁解除和灾难恢复。
[Dev] 提交代码并等待测试结果。将代码与测试需求写入队列,通过事件通知机制等待 QA 完成测试后毫秒级返回结果。超时判定权归属 Ops 监控模块,本工具不主动熔断。
manage_env lacks permission gates and audit trails. A destructive tool accepting 'restart', 'cleanup', 'logs', 'inspect' with only a string keyword filter ('FORBIDDEN_KEYWORDS') is insufficient. No evidence of permission checks, logging of who called it, or confirmation step for irreversible actions.
Error handling is minimal. Tools return generic dicts with 'success' or 'message' fields but do not categorize errors as retryable/user-fixable/fatal. E.g., manage_env returns {'success': False, 'message': '...'}, no guidance on whether to retry, ask user, or abort.
Parameter descriptions are sparse or missing context. E.g., 'action' in manage_env lists allowed values ('restart'/'cleanup'/'logs'/'inspect') but does not explain when to use each or what side effects occur. 'params' is a free-form string with no format guidance.