diff --git a/tests/runner-e2e/catalog.ts b/tests/runner-e2e/catalog.ts index 3732cb22a9d..8953c0527e9 100644 --- a/tests/runner-e2e/catalog.ts +++ b/tests/runner-e2e/catalog.ts @@ -950,11 +950,12 @@ export const runnerSuites: readonly RunnerSuiteFixture[] = [ id: "agent-chat-hardening", label: "Agent Chat Recovery and Coordination", manualOnly: true, description: "Native chat startup cancellation, committed sends, hiring, grounded status, and remote continuity.", groups: ["chat", "native"], - profiles: runnerProfiles.filter(profile => ["runner-codex", "runner-acpx-claude"].includes(profile.id)).map(defaultPermissionProfile), + profiles: runnerProfiles.filter(profile => ["runner-codex", "runner-acpx-claude"].includes(profile.id)) + .map(profile => productionStoryProfile(defaultPermissionProfile(profile))), environments: [localEnvironment, daytonaWarmEnvironment], tasks: chatHardeningTasks, expectedMatrixSize: 18, excludedExecutionIds: ["runner-codex", "runner-acpx-claude"].flatMap(profile => ["stop-startup-new-resume", "hire-delegate-reuse", "blocked-status-review"].map(task => `agent-chat-hardening.${profile}.daytona.${task}`)), - definitionMetadata: { version: 1, permissions: "production-defaults", grading: "durable-state-and-source-evidence", scheduling: "explicit-only" }, + definitionMetadata: { version: 1, permissions: "production-defaults", instructions: "production", grading: "durable-state-and-source-evidence", scheduling: "explicit-only" }, }, ...(process.env.PAPERCLIP_RUNNER_E2E_CONNECTION_REVIEWS === "1" ? [connectionReviewSuite] : []), { diff --git a/tests/runner-e2e/chat-hardening.test.ts b/tests/runner-e2e/chat-hardening.test.ts index 934e39efabe..c432853c924 100644 --- a/tests/runner-e2e/chat-hardening.test.ts +++ b/tests/runner-e2e/chat-hardening.test.ts @@ -74,6 +74,12 @@ describe("agent chat hardening oracles", () => { for (const cell of cells) { expect(buildRunnerE2EProcessEnvironment({}, [cell]).PAPERCLIP_RUNNER_API_TOOLS_ENABLED).toBe( ["hire-delegate-reuse", "blocked-status-review"].includes(cell.task.id) ? "true" : undefined); + const config = cell.profile.buildAgent({ executionId: "fixture", workspacePath: "/workspace", environmentId: "local", + environmentFixtureId: "local", secretRefs: { [cell.profile.credential]: { type: "secret_ref", secretId: "secret", version: "latest" } } }); + expect(config.role).toBe("ceo"); + expect(JSON.stringify(config.instructionsBundle)).not.toMatch(/mark the task done|paperclip_finish|POST \/api|PUT \/api/); + expect(config.adapterConfig).not.toHaveProperty("codexPermissionMode"); + expect(config.adapterConfig).not.toHaveProperty("acpxPermissionMode"); } }); });