diff --git a/server/src/services/native-runtime/native-execution-input.test.ts b/server/src/services/native-runtime/native-execution-input.test.ts index 24079be1cd1..bfe598f8fce 100644 --- a/server/src/services/native-runtime/native-execution-input.test.ts +++ b/server/src/services/native-runtime/native-execution-input.test.ts @@ -461,7 +461,7 @@ describe("native execution input external-chat framing", () => { runtimeContext: nativeRuntimeContextFixture(), }); expect(input.task.prompt).not.toContain("## Questions that need a user response"); - expect(input.task.prompt).toContain("Use Paperclip's request_human_input for user questions"); + expect(input.task.prompt).toContain("Use Paperclip's request_human_input for durable task questions."); expect(input.task.prompt).not.toContain("payload.questionSet"); }); diff --git a/server/src/services/native-runtime/native-execution-input.ts b/server/src/services/native-runtime/native-execution-input.ts index 5b0f2b1f494..27bdf5c082c 100644 --- a/server/src/services/native-runtime/native-execution-input.ts +++ b/server/src/services/native-runtime/native-execution-input.ts @@ -156,9 +156,9 @@ export function buildNativeExecutionInput(input: { isPaperclipExternalChatQuestionResponseTurn(wakePayload); const taskPrompt = [ wakePrompt, - // Provider-local elicitation can wait without creating a Paperclip card. + // Durable task questions must survive the current provider turn. // Keep routing visible before deferred tool discovery; usage belongs in the tool schema. - "Use Paperclip's request_human_input for user questions; provider-local question tools do not reach the Paperclip UI.", + "Use Paperclip's request_human_input for durable task questions.", externalChatTurn && wake?.externalChatProvider === "github" ? NATIVE_GITHUB_ATTACHMENT_RECOVERY_GUIDANCE : "",