prove-1.log $ node scripts/prove-scenario.ts scripts/scenarios/azure-literal-pr-text.e2e.ts --base 3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88 --head b44299b1da902e68af29cc49d4847dbf3d331450 --upload-command 'ghdrop upload' ⊘ cache disabled Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1101, reused 1101, downloaded 0, added 1086 Progress: resolved 1765, reused 1765, downloaded 0, added 1759 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 3.9s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1dec6-af31-741f-9590-93de2738352b · targets: web, ios ✓ target "web" command at http://127.0.0.1:36973/.well-known/t3/environment ready 6.67s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 9.86s → Settings: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"F… ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 9.86s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Settings: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"EnvironmentRpcUnavailableError","environmentId":"b047245a-5fe2-4be1-b7ec-a4296545235c","message":"Scenario is not connected."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} ❯ scenarios/azure-literal-pr-text.e2e.ts:43:5 41| }, environmentId); 42| const address = generator.address() as { port: number }; 43| await browser.evaluate(async ({ environmentId, port }) => { | ^ 44| const { appAtomRegistry } = await import("/src/rpc/atomRegistry… 45| const { serverEnvironment } = await import("/src/state/server.t… ❯ at http://127.0.0.1:36973/ ❯ trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:35:25 Duration 17.75s (startup 6.67s) Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory) Markdown .e2e/prove/base/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:43 > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Settings: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"EnvironmentRpcUnavailableError","environmentId":"b047245a-5fe2-4be1-b7ec-a4296545235c","message":"Scenario is not connected."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 972, reused 972, downloaded 0, added 957 Progress: resolved 1527, reused 1527, downloaded 0, added 1514 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 4.4s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1dec7-27ca-78cd-813b-410c3c2d063b · targets: web, ios ✓ target "web" command at http://127.0.0.1:33245/.well-known/t3/environment ready 7.01s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 9.95s → Cannot read properties of null (reading 'projects') ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 9.95s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Cannot read properties of null (reading 'projects') ❯ scenarios/azure-literal-pr-text.e2e.ts:36:23 34| await t3.open(); 35| const environmentId = await browser.evaluate(async () => (await (… 36| const projectId = await browser.evaluate(async (environmentId) =>… | ^ 37| const { appAtomRegistry } = await import("/src/rpc/atomRegistry… 38| const { environmentSnapshotAtom } = await import("/src/state/sh… ❯ at http://127.0.0.1:33245/ ❯ trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:35:56 Duration 18.59s (startup 7.01s) Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory) Markdown .e2e/prove/head/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:36 > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Cannot read properties of null (reading 'projects') trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md { "scenario": "Azure pull requests preserve literal @ text on creation and update", "failsOnBase": false, "passesOnHead": false, "couldNotRun": "scenario", "baseSha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "headSha": "b44299b1da902e68af29cc49d4847dbf3d331450", "verdict": "Not proven: the scenario could not run on base `3ee4aa62ec` (EVALUATE_FAILED: Settings: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"EnvironmentRpcUnavailableError\",\"environmentId\":\"b047245a-5fe2-4be1-b7ec-a4296545235c\",\"message\":\"Scenario is not connected.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.", "steps": { "base": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "head": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ] }, "captures": [ "", "" ], "videos": [ "", "" ], "markdown": "### Scenario: Azure pull requests preserve literal @ text on creation and update\n\n**Not proven: the scenario could not run on base `3ee4aa62ec` (EVALUATE_FAILED: Settings: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"EnvironmentRpcUnavailableError\",\"environmentId\":\"b047245a-5fe2-4be1-b7ec-a4296545235c\",\"message\":\"Scenario is not connected.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.**\n\n| | Base `3ee4aa62ec` | Head `b44299b1da` |\n| --- | --- | --- |\n| Result | ⚠️ could not run
EVALUATE_FAILED: Settings: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"EnvironmentRpcUnavailableError\",\"environmentId\":\"b047245a-5fe2-4be1-b7ec-a4296545235c\",\"message\":\"Scenario is not connected.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false} | ⚠️ could not run
EVALUATE_FAILED: Cannot read properties of null (reading 'projects') |\n| failure | ![Base 3ee4aa62ec: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a61a7875905e13ba/001-failure.png) | ![Head b44299b1da: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f118a13cda8cd8e5/001-failure.png) |\n", "base": { "sha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "EVALUATE_FAILED: Settings: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"EnvironmentRpcUnavailableError\",\"environmentId\":\"b047245a-5fe2-4be1-b7ec-a4296545235c\",\"message\":\"Scenario is not connected.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "captures": [ "" ], "videos": [ "" ] }, "head": { "sha": "b44299b1da902e68af29cc49d4847dbf3d331450", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "EVALUATE_FAILED: Cannot read properties of null (reading 'projects')", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "captures": [ "" ], "videos": [ "" ] } } prove-2.log $ node scripts/prove-scenario.ts scripts/scenarios/azure-literal-pr-text.e2e.ts --base 3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88 --head b44299b1da902e68af29cc49d4847dbf3d331450 --upload-command 'ghdrop upload' ⊘ cache disabled Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 898, reused 898, downloaded 0, added 883 Progress: resolved 1559, reused 1559, downloaded 0, added 1542 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 4.4s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1dec7-c0ba-712a-928d-e4d8bcf0ae25 · targets: web, ios ✓ target "web" command at http://127.0.0.1:37941/.well-known/t3/environment ready 5.68s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 74.42s → locator did not become visible: getByText("start fixture turn complete") ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 74.42s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update LOCATOR_NOT_FOUND: locator did not become visible: getByText("start fixture turn complete") ❯ scenarios/azure-literal-pr-text.e2e.ts:36:5 34| await push(["-u", base]); branches.push(base); 35| const thread = await t3.thread({ project, title: "Azure literal t… 36| await t3.open(thread); | ^ 37| await screen.getByText("first fixture turn complete", { exact: fa… 38| const environmentId = await browser.evaluate(async () => (await (… ❯ at http://127.0.0.1:37941/f5bdd580-04d4-491d-8297-c25715af7b53/mcp:0cb41a27-d8c6-452f-94f7-665ad9be1f16 ❯ on screen #n6051 text="first fixture turn complete" ❯ on screen #n6047 button "Agent start" ❯ on screen #n6049 text="start" ❯ on screen #n6060 button "Multi turn" ❯ on screen #n6061 text="Multi turn" ❯ app 1 warning logged ❯ trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:36:36 Duration 81.08s (1m 21s, startup 5.68s) Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory) Markdown .e2e/prove/base/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:36 > Azure pull requests preserve literal @ text on creation and update LOCATOR_NOT_FOUND: locator did not become visible: getByText("start fixture turn complete") trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1086, reused 1086, downloaded 0, added 1071 Progress: resolved 1622, reused 1622, downloaded 0, added 1610 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 4.6s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1dec9-3859-79bb-9639-a0c80b084d58 · targets: web, ios ✓ target "web" command at http://127.0.0.1:36079/.well-known/t3/environment ready 5.75s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 89.55s → locator did not become visible: getByRole("button", name: "Edit title") ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 89.55s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update LOCATOR_NOT_FOUND: locator did not become visible: getByRole("button", name: "Edit title") ❯ scenarios/azure-literal-pr-text.e2e.ts:60:7 ❯ at http://127.0.0.1:36079/pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F398&selectedProjectId=21f237f0-5cf0-4259-8201-4b3d40f1b851&selectedEnvironmentId=d4cb1a8f-90dc-4192-930a-90fdfd3878bc&involvement=all&state=open ❯ on screen #n12048 button "Open #398 Original title Julius@markping791.onmicrosoft.com t3-factory-test 1m ago" ❯ app 1 error, 1 warning logged × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… ❯ trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:38:12 Duration 95.97s (1m 36s, startup 5.75s) Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory) Markdown .e2e/prove/head/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:60 > Azure pull requests preserve literal @ text on creation and update LOCATOR_NOT_FOUND: locator did not become visible: getByRole("button", name: "Edit title") trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md { "scenario": "Azure pull requests preserve literal @ text on creation and update", "failsOnBase": false, "passesOnHead": false, "couldNotRun": "scenario", "baseSha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "headSha": "b44299b1da902e68af29cc49d4847dbf3d331450", "verdict": "Not proven: the scenario could not run on base `3ee4aa62ec` (LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"start fixture turn complete\")). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.", "steps": { "base": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /f5bdd580-04d4-491d-8297-c25715af7b53/mcp:0cb41a27-d8c6-452f-94f7-665ad9be1f16", "status": "passed" }, { "step": "locator.waitFor getByText(\"start fixture turn complete\") → visible", "status": "failed" } ], "head": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /d4cb1a8f-90dc-4192-930a-90fdfd3878bc/mcp:81545758-df43-4484-bd99-b03a0b16d22c", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F398&selectedProjectId=21f237f0-5cf0-4259-8201-4b3d40f1b851&selectedEnvironmentId=d4cb1a8f-90dc-4192-930a-90fdfd3878bc", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "failed" } ] }, "captures": [ "", "" ], "videos": [ "", "" ], "markdown": "### Scenario: Azure pull requests preserve literal @ text on creation and update\n\n**Not proven: the scenario could not run on base `3ee4aa62ec` (LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"start fixture turn complete\")). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.**\n\n| | Base `3ee4aa62ec` | Head `b44299b1da` |\n| --- | --- | --- |\n| Result | ⚠️ could not run
LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"start fixture turn complete\") | ⚠️ could not run
LOCATOR_NOT_FOUND: locator did not become visible: getByRole(\"button\", name: \"Edit title\") |\n| failure | ![Base 3ee4aa62ec: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/1d2fc2d35e26dfae/001-failure.png) | ![Head b44299b1da: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b4faa7aa05471f79/001-failure.png) |\n", "base": { "sha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "LOCATOR_NOT_FOUND: locator did not become visible: getByText(\"start fixture turn complete\")", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /f5bdd580-04d4-491d-8297-c25715af7b53/mcp:0cb41a27-d8c6-452f-94f7-665ad9be1f16", "status": "passed" }, { "step": "locator.waitFor getByText(\"start fixture turn complete\") → visible", "status": "failed" } ], "captures": [ "" ], "videos": [ "" ] }, "head": { "sha": "b44299b1da902e68af29cc49d4847dbf3d331450", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "LOCATOR_NOT_FOUND: locator did not become visible: getByRole(\"button\", name: \"Edit title\")", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /d4cb1a8f-90dc-4192-930a-90fdfd3878bc/mcp:81545758-df43-4484-bd99-b03a0b16d22c", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F398&selectedProjectId=21f237f0-5cf0-4259-8201-4b3d40f1b851&selectedEnvironmentId=d4cb1a8f-90dc-4192-930a-90fdfd3878bc", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "failed" } ], "captures": [ "" ], "videos": [ "" ] } } prove-3.log $ node scripts/prove-scenario.ts scripts/scenarios/azure-literal-pr-text.e2e.ts --base 3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88 --head b44299b1da902e68af29cc49d4847dbf3d331450 --upload-command 'ghdrop upload' ⊘ cache disabled Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1411, reused 1411, downloaded 0, added 1394 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 3.1s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1decb-0da3-7a34-bbae-75462ded2dcf · targets: web, ios ✓ target "web" command at http://127.0.0.1:36795/.well-known/t3/environment ready 3.88s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 42.35s → Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_… ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 42.35s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"PullRequestOperationError","operation":"resolveRepository","detail":"The change request does not belong to the selected project."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} ❯ scenarios/azure-literal-pr-text.e2e.ts:110:5 108| await app.screenshot("edit-description"); 109| results.push({ operation: "edit-description", body: description.d… 110| await browser.evaluate(async ({ environmentId, projectId, reposit… | ^ 111| const { appAtomRegistry } = await import("/src/rpc/atomRegistry… 112| const { pullRequestEnvironment } = await import("/src/state/pul… ❯ at http://127.0.0.1:36795/pull-requests?involvement=all&state=open&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5 ❯ app 6 errors, 2 warnings logged × console error: WebSocket connection to 'ws://127.0.0.1:36795/ws?clientSurface=web&clientAppVersion=0.1.9&clientDeviceType=desktop&clientOs=Linux&clientWebDeployment=server&clientBrowser=Chrome&connectionMethod=direct&clientDevice=d0d73dd7b55117fbb749049605acd9aea4ee213b7a8f2b9035c82dbef5f1d667&orchestrationProtoc… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… 3 more app errors logged ❯ trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:40:12 Duration 46.94s (startup 3.88s) Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory) Screenshots .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/001-create-0.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/002-edit-title-0.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/003-edit-title-1.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/004-edit-description.png Markdown .e2e/prove/base/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:110 > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"PullRequestOperationError","operation":"resolveRepository","detail":"The change request does not belong to the selected project."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1242, reused 1242, downloaded 0, added 1227 Progress: resolved 1773, reused 1773, downloaded 0, added 1767 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 3.3s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1decb-eef3-78f7-88b5-3538f1b075cc · targets: web, ios ✓ target "web" command at http://127.0.0.1:33243/.well-known/t3/environment ready 4.12s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 42.15s → Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_… ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 42.15s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"PullRequestOperationError","operation":"resolveRepository","detail":"The change request does not belong to the selected project."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} ❯ scenarios/azure-literal-pr-text.e2e.ts:110:5 108| await screen.getByRole("button", "Edit description").waitFor({ st… 109| const description = await read(first.id); 110| await openPr(first.url); | ^ 111| await app.screenshot("edit-description"); 112| results.push({ operation: "edit-description", body: description.d… ❯ at http://127.0.0.1:33243/pull-requests?involvement=all&state=open&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c ❯ app 5 errors, 1 warning logged × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… 2 more app errors logged ❯ trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:41:09 Duration 46.97s (startup 4.12s) Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory) Screenshots .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/001-create-0.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/002-edit-title-0.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/003-edit-title-1.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/004-edit-description.png Markdown .e2e/prove/head/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:110 > Azure pull requests preserve literal @ text on creation and update EVALUATE_FAILED: Combined update: {"_tag":"Failure","cause":{"_id":"Cause","reasons":[{"_tag":"Fail","error":{"_tag":"PullRequestOperationError","operation":"resolveRepository","detail":"The change request does not belong to the selected project."}}]},"previousSuccess":{"_id":"Option","_tag":"None"},"waiting":false} trace .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md { "scenario": "Azure pull requests preserve literal @ text on creation and update", "failsOnBase": false, "passesOnHead": false, "couldNotRun": "scenario", "baseSha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "headSha": "b44299b1da902e68af29cc49d4847dbf3d331450", "verdict": "Not proven: the scenario could not run on base `3ee4aa62ec` (EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.", "steps": { "base": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5/mcp:4eb95e2f-781e-4474-a1c4-72cef531c495", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "head": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /2eb25a62-2bf5-49cd-b8ce-a99936209f7c/mcp:8b7dd1ee-09bc-4aa9-ae3b-d48d2c9ca57b", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ] }, "captures": [ "", "", "", "", "", "", "", "", "", "" ], "videos": [ "", "" ], "markdown": "### Scenario: Azure pull requests preserve literal @ text on creation and update\n\n**Not proven: the scenario could not run on base `3ee4aa62ec` (EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}). The app ran and the scenario stopped before its assertion: fix the scenario and run it again.**\n\n| | Base `3ee4aa62ec` | Head `b44299b1da` |\n| --- | --- | --- |\n| Result | ⚠️ could not run
EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false} | ⚠️ could not run
EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false} |\n| create 0 | ![Base 3ee4aa62ec: create 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/3c39df782afa9c84/001-create-0.png) | ![Head b44299b1da: create 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/07c618bb604081f9/001-create-0.png) |\n| edit title 0 | ![Base 3ee4aa62ec: edit title 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/947472ee2f81141a/002-edit-title-0.png) | ![Head b44299b1da: edit title 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/400f6439b9627f98/002-edit-title-0.png) |\n| edit title 1 | ![Base 3ee4aa62ec: edit title 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0b1981a17c1eede0/003-edit-title-1.png) | ![Head b44299b1da: edit title 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/430be1b600cf02b9/003-edit-title-1.png) |\n| edit description | ![Base 3ee4aa62ec: edit description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7a37d7728e842cb4/004-edit-description.png) | ![Head b44299b1da: edit description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ffc85020694bfa39/004-edit-description.png) |\n| failure | ![Base 3ee4aa62ec: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b8a388550e739f1a/005-failure.png) | ![Head b44299b1da: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/a67e338ef9471b1b/005-failure.png) |\n", "base": { "sha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5/mcp:4eb95e2f-781e-4474-a1c4-72cef531c495", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F399&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=399&projectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&host=dev.azure.com&selectedProjectId=7e55f9ba-9bcd-4a31-90d5-9bcb17c15283&selectedEnvironmentId=7a2dba0f-bdc8-40e9-8dfa-9200453ef7c5", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "captures": [ "", "", "", "", "" ], "videos": [ "" ] }, "head": { "sha": "b44299b1da902e68af29cc49d4847dbf3d331450", "status": "error", "stopped": "scenario", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "EVALUATE_FAILED: Combined update: {\"_tag\":\"Failure\",\"cause\":{\"_id\":\"Cause\",\"reasons\":[{\"_tag\":\"Fail\",\"error\":{\"_tag\":\"PullRequestOperationError\",\"operation\":\"resolveRepository\",\"detail\":\"The change request does not belong to the selected project.\"}}]},\"previousSuccess\":{\"_id\":\"Option\",\"_tag\":\"None\"},\"waiting\":false}", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /2eb25a62-2bf5-49cd-b8ce-a99936209f7c/mcp:8b7dd1ee-09bc-4aa9-ae3b-d48d2c9ca57b", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F400&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=400&projectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&host=dev.azure.com&selectedProjectId=08c681c2-24ea-4df0-85d6-89a5178bd3c5&selectedEnvironmentId=2eb25a62-2bf5-49cd-b8ce-a99936209f7c", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "failed" } ], "captures": [ "", "", "", "", "" ], "videos": [ "" ] } } prove-4.log $ node scripts/prove-scenario.ts scripts/scenarios/azure-literal-pr-text.e2e.ts --base 3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88 --head b44299b1da902e68af29cc49d4847dbf3d331450 --upload-command 'ghdrop upload' ⊘ cache disabled Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1133, reused 1133, downloaded 0, added 1118 Progress: resolved 1775, reused 1775, downloaded 0, added 1775 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 3.2s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1decd-09a1-7c72-99fa-6b46e5fff066 · targets: web, ios ✓ target "web" command at http://127.0.0.1:41739/.well-known/t3/environment ready 4.43s × |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 95.85s → expected [{"operation":"create-0","title":"Original title","body":"Origi… ❯ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test | 1 failed) 95.85s ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Failed Tests 1 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ FAIL |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update ASSERTION_FAILED: expected [{"operation":"create-0","title":"Original title","body":"Original description"},{"operation":"edit-title-0","title":"from the file"},{"operation":"edit-title-1","title":"a=@notes.txt"},{"operation":"edit-description","body":"from the file"},{"operation":"combined","title":"from the file","body":"from the other file"},{"operation":"create-1","title":"from the file","body":"from the file"},{"operation":"create-2","title":"a=from the file","body":"a=@notes.txt"}] to equal [{"operation":"create-0","title":"Original title","body":"Original description"},{"operation":"edit-title-0","title":"@notes.txt"},{"operation":"edit-title-1","title":"a=@notes.txt"},{"operation":"edit-description","body":"@notes.txt"},{"operation":"combined","title":"@notes.txt","body":"@other.txt"},{"operation":"create-1","title":"@notes.txt","body":"@notes.txt"},{"operation":"create-2","title":"a=@notes.txt","body":"a=@notes.txt"}] ❯ scenarios/azure-literal-pr-text.e2e.ts:125:21 123| await create("@notes.txt", "@notes.txt", 1); 124| await create("a=@notes.txt", "a=@notes.txt", 2); 125| expect(results).toEqual([ | ^ 126| { operation: "create-0", title: "Original title", body: "Origin… 127| { operation: "edit-title-0", title: "@notes.txt" }, ❯ at http://127.0.0.1:41739/pull-requests?involvement=all&state=open&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=403&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1 ❯ app 12 errors, 1 warning logged × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… × network error: GET https://spsprodcus7.vssps.visualstudio.com/_signin?realm=dev.azure.com&reply_to=https%3A%2F%2Fdev.azure.com%2Ft3code-factory-test%2F_api%2F_common%2FidentityImage%3Fid%3D045e40d6-c17e-66c1-9649-dc1f0141a3a3&redirect=1&protocol=entra.web.3&hid=4fee8751-7cd0-4fd4-beba-fbca878cd2d4&context=eyJodCI… 9 more app errors logged ❯ trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md ❯ video .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/video/video.webm ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯[1/1]⎯ Test Files 1 failed | 0 passed (1) Tests 1 failed | 0 passed (1) Start at 10:42:22 Duration 101.06s (1m 41s, startup 4.43s) Traces .e2e/prove/base/results/ (1 page, trace.md in each test's directory) Screenshots .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/001-create-0.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/002-edit-title-0.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/003-edit-title-1.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/004-edit-description.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/005-combined-title-description.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/006-create-1.png .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/007-create-2.png Markdown .e2e/prove/base/summary.md Failed × |web| scenarios/azure-literal-pr-text.e2e.ts:125 > Azure pull requests preserve literal @ text on creation and update ASSERTION_FAILED: expected [{"operation":"create-0","title":"Original title","body":"Original description"},{"operation":"edit-title-0","title":"from the file"},{"operation":"edit-title-1","title":"a=@notes.txt"},{"operation":"edit-description","body":"from the file"},{"operation":"combined","title":"from the file","body":"from the other file"},{"operation":"create-1","title":"from the file","body":"from the file"},{"operation":"create-2","title":"a=from the file","body":"a=@notes.txt"}] to equal [{"operation":"create-0","title":"Original title","body":"Original description"},{"operation":"edit-title-0","title":"@notes.txt"},{"operation":"edit-title-1","title":"a=@notes.txt"},{"operation":"edit-description","body":"@notes.txt"},{"operation":"combined","title":"@notes.txt","body":"@other.txt"},{"operation":"create-1","title":"@notes.txt","body":"@notes.txt"},{"operation":"create-2","title":"a=@notes.txt","body":"a=@notes.txt"}] trace .e2e/prove/base/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/trace.md Scope: all 42 workspace projects ✓ Lockfile passes supply-chain policies (verified 2h ago) Lockfile is up to date, resolution step is skipped Packages are hard linked from the content-addressable store to the virtual store. Content-addressable store is at: /home/user/.local/share/pnpm/store/v11 Virtual store is at: node_modules/.pnpm Progress: resolved 1228, reused 1228, downloaded 0, added 1215 Progress: resolved 1746, reused 1746, downloaded 0, added 1736 Packages: +1780 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Progress: resolved 1780, reused 1776, downloaded 0, added 1780, done Agent skills awaiting approval: e2e. Run "pnpm approve" to review them. . prepare$ vp config --no-agent . prepare: Done devDependencies: + @coderabbitai/config 1.2.0 + @effect/tsgo 0.67.1 + @shadcn/lint 0.1.5 + @types/node 24.12.4 + knip 6.34.0 + vite-plus 1.4.0 Done in 3.9s using pnpm v12.14.0 RUN e2e v0.23.0 run 01a1dece-c5e4-7590-a384-458597c56ce4 · targets: web, ios ✓ target "web" command at http://127.0.0.1:38587/.well-known/t3/environment ready 6.27s ✓ |web| scenarios/azure-literal-pr-text.e2e.ts > Azure pull requests preserve literal @ text on creation and update 103.81s ✓ |web| scenarios/azure-literal-pr-text.e2e.ts (1 test) 103.81s Test Files 1 passed (1) Tests 1 passed (1) Start at 10:44:16 Duration 111.24s (1m 51s, startup 6.27s) Traces .e2e/prove/head/results/ (1 page, trace.md in each test's directory) Screenshots .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/001-create-0.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/002-edit-title-0.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/003-edit-title-1.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/004-edit-description.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/005-combined-title-description.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/006-create-1.png .e2e/prove/head/results/azure-literal-pr-text-azure-pull-requests-preserve-82dfb90ff2eb8efe/attempt-1/screenshots/007-create-2.png Markdown .e2e/prove/head/summary.md { "scenario": "Azure pull requests preserve literal @ text on creation and update", "failsOnBase": true, "passesOnHead": true, "couldNotRun": null, "baseSha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "headSha": "b44299b1da902e68af29cc49d4847dbf3d331450", "verdict": "Proven: the scenario fails on base `3ee4aa62ec` and passes on head `b44299b1da`.", "steps": { "base": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /39b66e54-f92b-40c0-97b7-f6785f6504f1/mcp:8af4bcaf-ae9f-48e5-9242-0736da775544", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"Original title\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the file\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the other file\" }) → visible", "status": "passed" }, { "step": "app.screenshot combined-title-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F402&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=402&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the file\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-1", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F403&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=403&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"a=@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-2", "status": "passed" } ], "head": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /4ba34974-a0c2-4965-9e57-683e1394e0de/mcp:a963c6c5-8334-46b6-a98e-46476724bd5d", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"Original title\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@other.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot combined-title-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F405&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=405&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-1", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F406&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=406&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"a=@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-2", "status": "passed" } ] }, "captures": [ "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" ], "videos": [ "", "" ], "markdown": "### Scenario: Azure pull requests preserve literal @ text on creation and update\n\n**Proven: the scenario fails on base `3ee4aa62ec` and passes on head `b44299b1da`.**\n\n| | Base `3ee4aa62ec` | Head `b44299b1da` |\n| --- | --- | --- |\n| Result | ❌ failed
ASSERTION_FAILED: expected [{\"operation\":\"create-0\",\"title\":\"Original title\",\"body\":\"Original description\"},{\"operation\":\"edit-title-0\",\"title\":\"from the file\"},{\"operation\":\"edit-title-1\",\"title\":\"a=@notes.txt\"},{\"operation\":\"edit-description\",\"body\":\"from the file\"},{\"operation\":\"combined\",\"title\":\"from the file\",\"body\":\"from the other file\"},{\"operation\":\"create-1\",\"title\":\"from the file\",\"body\":\"from the file\"},{\"operation\":\"create-2\",\"title\":\"a=from the file\",\"body\":\"a=@notes.txt\"}] to equal [{\"operation\":\"create-0\",\"title\":\"Original title\",\"body\":\"Original description\"},{\"operation\":\"edit-title-0\",\"title\":\"@notes.txt\"},{\"operation\":\"edit-title-1\",\"title\":\"a=@notes.txt\"},{\"operation\":\"edit-description\",\"body\":\"@notes.txt\"},{\"operation\":\"combined\",\"title\":\"@notes.txt\",\"body\":\"@other.txt\"},{\"operation\":\"create-1\",\"title\":\"@notes.txt\",\"body\":\"@notes.txt\"},{\"operation\":\"create-2\",\"title\":\"a=@notes.txt\",\"body\":\"a=@notes.txt\"}] | ✅ passed |\n| create 0 | ![Base 3ee4aa62ec: create 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/e51d26c33b1a2f87/001-create-0.png) | ![Head b44299b1da: create 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/0e111736fa4b1987/001-create-0.png) |\n| edit title 0 | ![Base 3ee4aa62ec: edit title 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/26e5ad1fc6d42661/002-edit-title-0.png) | ![Head b44299b1da: edit title 0](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/ce76309fe982d24f/002-edit-title-0.png) |\n| edit title 1 | ![Base 3ee4aa62ec: edit title 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/fc7a3388bf0842f5/003-edit-title-1.png) | ![Head b44299b1da: edit title 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/b8fb2e6763cea837/003-edit-title-1.png) |\n| edit description | ![Base 3ee4aa62ec: edit description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4b79a0f6bd5c7c59/004-edit-description.png) | ![Head b44299b1da: edit description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cd3ae82e1a92b217/004-edit-description.png) |\n| combined title description | ![Base 3ee4aa62ec: combined title description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/cd767a11c53af269/005-combined-title-description.png) | ![Head b44299b1da: combined title description](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/7f67f86229b630dc/005-combined-title-description.png) |\n| create 1 | ![Base 3ee4aa62ec: create 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/492f0f41e495a35c/006-create-1.png) | ![Head b44299b1da: create 1](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f57b0fab0388b3b7/006-create-1.png) |\n| create 2 | ![Base 3ee4aa62ec: create 2](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/f2e0c68b26de2d53/007-create-2.png) | ![Head b44299b1da: create 2](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/5f92f095bd6d297e/007-create-2.png) |\n| failure | ![Base 3ee4aa62ec: failure](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/db0ad6dd52c080b0/008-failure.png) | |\n", "base": { "sha": "3ee4aa62ec0ed16375e3f28c8ad2138a44ebaa88", "status": "failed", "title": "Azure pull requests preserve literal @ text on creation and update", "message": "ASSERTION_FAILED: expected [{\"operation\":\"create-0\",\"title\":\"Original title\",\"body\":\"Original description\"},{\"operation\":\"edit-title-0\",\"title\":\"from the file\"},{\"operation\":\"edit-title-1\",\"title\":\"a=@notes.txt\"},{\"operation\":\"edit-description\",\"body\":\"from the file\"},{\"operation\":\"combined\",\"title\":\"from the file\",\"body\":\"from the other file\"},{\"operation\":\"create-1\",\"title\":\"from the file\",\"body\":\"from the file\"},{\"operation\":\"create-2\",\"title\":\"a=from the file\",\"body\":\"a=@notes.txt\"}] to equal [{\"operation\":\"create-0\",\"title\":\"Original title\",\"body\":\"Original description\"},{\"operation\":\"edit-title-0\",\"title\":\"@notes.txt\"},{\"operation\":\"edit-title-1\",\"title\":\"a=@notes.txt\"},{\"operation\":\"edit-description\",\"body\":\"@notes.txt\"},{\"operation\":\"combined\",\"title\":\"@notes.txt\",\"body\":\"@other.txt\"},{\"operation\":\"create-1\",\"title\":\"@notes.txt\",\"body\":\"@notes.txt\"},{\"operation\":\"create-2\",\"title\":\"a=@notes.txt\",\"body\":\"a=@notes.txt\"}]", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /39b66e54-f92b-40c0-97b7-f6785f6504f1/mcp:8af4bcaf-ae9f-48e5-9242-0736da775544", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"Original title\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the file\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F401&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=401&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the other file\" }) → visible", "status": "passed" }, { "step": "app.screenshot combined-title-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F402&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=402&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"from the file\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-1", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F403&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=403&projectId=553d0202-5c58-40c3-ab7c-28eceb195252&host=dev.azure.com&selectedProjectId=553d0202-5c58-40c3-ab7c-28eceb195252&selectedEnvironmentId=39b66e54-f92b-40c0-97b7-f6785f6504f1", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=from the file\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"a=@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-2", "status": "passed" } ], "captures": [ "", "", "", "", "", "", "", "" ], "videos": [ "" ] }, "head": { "sha": "b44299b1da902e68af29cc49d4847dbf3d331450", "status": "passed", "title": "Azure pull requests preserve literal @ text on creation and update", "steps": [ { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /4ba34974-a0c2-4965-9e57-683e1394e0de/mcp:a963c6c5-8334-46b6-a98e-46476724bd5d", "status": "passed" }, { "step": "locator.waitFor getByText(\"first fixture turn complete\") → visible", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"Original title\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-0", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit title\")", "status": "passed" }, { "step": "locator.waitFor locator(\"input[aria-label=\\\"Pull request title\\\"]:enabled\") → visible", "status": "passed" }, { "step": "locator.press getByRole(\"textbox\", name: \"Pull request title\")", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"Original description\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-title-1", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Edit description\")", "status": "passed" }, { "step": "locator.fill getByRole(\"textbox\", name: \"Pull request description\")", "status": "passed" }, { "step": "locator.tap getByRole(\"button\", name: \"Save\")", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit description\") → visible", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot edit-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F404&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=404&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@other.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot combined-title-description", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F405&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=405&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-1", "status": "passed" }, { "step": "browser.evaluate ", "status": "passed" }, { "step": "app.open ", "status": "passed" }, { "step": "expect.not.toHaveURL /\\/pair(?:[?#]|$)/", "status": "passed" }, { "step": "app.open /pull-requests?selectedUrl=https%3A%2F%2Ft3code-factory-test%40dev.azure.com%2Ft3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test%2Fpullrequest%2F406&repository=t3code-factory-test%2Ft3-factory-test%2F_git%2Ft3-factory-test&number=406&projectId=32f69860-6fe6-416f-b86f-8efe209221b4&host=dev.azure.com&selectedProjectId=32f69860-6fe6-416f-b86f-8efe209221b4&selectedEnvironmentId=4ba34974-a0c2-4965-9e57-683e1394e0de", "status": "passed" }, { "step": "locator.waitFor getByRole(\"button\", name: \"Edit title\") → visible", "status": "passed" }, { "step": "locator.waitFor getByRole(\"heading\", name: \"a=@notes.txt\") → visible", "status": "passed" }, { "step": "locator.waitFor locator(\"[data-pr-description]\").filter({ hasText: \"a=@notes.txt\" }) → visible", "status": "passed" }, { "step": "app.screenshot create-2", "status": "passed" } ], "captures": [ "", "", "", "", "", "", "" ], "videos": [ "" ] } }