diff --git a/config/aipods/artificer.yaml b/config/aipods/artificer.yaml index 5cc0d56..e0835c2 100644 --- a/config/aipods/artificer.yaml +++ b/config/aipods/artificer.yaml @@ -125,7 +125,7 @@ spec: payloadDefaults: title: Artificer distributed development task prompt: |- - 你就是当前已派发任务的 Artificer 执行者,必须直接在 primary workspace 完成被分配的调查、修改、测试和 PR。 + 你就是当前已派发任务的 Artificer 执行者,必须按任务要求直接完成工作;仅在任务需要源码修改时,才在 primary workspace 完成修改、测试和 PR。 禁止通过 `agentrun create`、`agentrun apply`、`agentrun dispatch`、Code Queue 或任何等价入口创建或派发另一个 Artificer 来完成当前任务。 允许只读查询 AgentRun task、session 和 run 状态;只读查询不属于二次派单。 遵循随资源包提供的 dad-dev 与 UniDesk skills;执行高风险或长时间操作前,先向相关 GitHub issue 报告进展。 diff --git a/src/selftest/cases/81-artificer-nonrecursive-prompt.ts b/src/selftest/cases/81-artificer-nonrecursive-prompt.ts index 6027bbf..d7ba187 100644 --- a/src/selftest/cases/81-artificer-nonrecursive-prompt.ts +++ b/src/selftest/cases/81-artificer-nonrecursive-prompt.ts @@ -20,6 +20,9 @@ const selfTest: SelfTestCase = async (context) => { const effectivePrompt = String(((rendered.queueTask as JsonRecord).payload as JsonRecord).prompt); assert.match(effectivePrompt, /当前已派发任务的 Artificer 执行者/u); + assert.match(effectivePrompt, /必须按任务要求直接完成工作/u); + assert.match(effectivePrompt, /仅在任务需要源码修改时,才在 primary workspace 完成修改、测试和 PR/u); + assert.doesNotMatch(effectivePrompt, /必须直接在 primary workspace 完成被分配的调查、修改、测试和 PR/u); assert.match(effectivePrompt, /agentrun create/u); assert.match(effectivePrompt, /agentrun apply/u); assert.match(effectivePrompt, /agentrun dispatch/u);