You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Built-in updates: Diffwright checks on its own, at startup and then every 6 hours, whether a new
version is available and flags it in the activity bar. Updates are signed and are only downloaded and
installed after you click; you can also run the check by hand or turn off the startup check in
Settings › Updates.
Usage profiles: tell Diffwright your role — Reviewer, Tester, Author or Team lead — and it only
shows what is useful to you. A tester sees neither the Code space nor the Team space, and a Pull
Request opens directly on the Test tab ("Show code" stays one click away, and a banner takes you back
to your profile's view). The role is chosen in the setup assistant or in Settings › Usage profile,
where each space and each tab can also be adjusted one by one. Nothing is removed: everything comes
back when you switch profile.
A Test tab to test a Pull Request end to end: a dedicated tab of the Review panel (⌘6) brings the
test session together — preview environment or local address, window state, live page errors, and
feedback already filed in your review. The page opens in an isolated window with no access to
Diffwright, topped by a toolbar: navigation, address, page errors, and capture (⌘⇧S) without leaving
the test window.
Run the PR's project on your machine (macOS and Windows): a launch profile describes how to start
the application. "Run" fetches the PR's code, first shows every exact command with the required tools,
the variables to provide (secrets stay on your machine) and any warnings, then follows the run live —
status, steps with their duration, log, stop — and opens the test window as soon as the application
responds. Nothing runs without your approval, and a trusted profile can be relaunched in one click as
long as its commands don't change.
A real launch workflow, with a visual editor: each profile chains its steps — command, background
process, waiting for an address, a log message or a delay, opening the test window — and a "On stop"
list. "Configure" opens a visual builder (or the raw text); existing files are still read and trust
already granted is kept. A launch script that returns control (for example by running in the
background) is no longer mistaken for a failure.
AI prepares the launch for you: "Suggest with AI" reads the repository (docker compose,
Dockerfile, README, launch scripts…) and suggests a profile, which you review before saving it
through a commit. It reuses the repository's scripts instead of rewriting their steps, and "Analyze
the failure" points to the likely cause of a failed launch (port in use, image not found, missing
variable…) without running or changing anything.
Local files and ports checked before launch: git-ignored files the project needs (an environment
file, for example) are detected, then copied into the test folder on every launch without ever being
sent anywhere. Ports that are already in use are reported along with what is using them — a container
to stop in one click, a process, or another PR's stack — instead of letting the launch fail along the
way.
Test folders under control: a single folder per PR, automatic cleanup of unused folders (14 days
by default) and a total space cap (10 GB by default). Settings › Tests lists each folder (size, last
use) so you can show or delete it, and also gathers local files and test accounts.
Test feedback with an annotated screenshot: capture an area of the screen (Diffwright steps aside
during the selection), paste an image or pick a file, annotate it — rectangle, arrow, pencil,
ellipse, highlighter, numbered markers, text, blurring of sensitive data, 9 colors readable
everywhere — then publish it as a Pull Request comment, along with the iteration and commit tested.
On Windows, press Win+Shift+S then paste the capture.
Enrich a test feedback: attach the page's errors (console, exceptions, failed requests) or the
latest errors from the local stack's log, unchecked by default and reviewable before sending; record
the page under test (30 s at most, macOS) to attach a video, published as a link.
Test feedback in "Finish my review": "Add to my review" sets a feedback aside instead of
publishing it; the whole session is reviewed and then sent at once, like code comments. Screenshots
stay on your machine until publication.
Follow up on your test feedback: the Test tab lists published feedback with its status — pending,
author replied, resolved, new push since your feedback. "Re-test" brings the test window back, then
"Confirmed fixed" or "Still present" posts your answer in the thread. Nothing is sent without your
click.
Test verdict: "Finish the test" gives your verdict — Approved, Approved with reservations or
Rejected — with a comment and an automatic summary (version tested, feedback published, page errors)
that you review before publishing, and a suggested vote that you can change or remove. "Save without
publishing" keeps it on your machine.
"To test" on Home: a tile lists the Pull Requests you review that haven't been tested since their
last push, and a badge — Approved / Reservations / Rejected / To re-test — accompanies them in the
lists (tile shown for the Tester profile, or as soon as you've run your first test).
A test stack is never forgotten: as long as a project launched on your machine is running, a
"Stack · #PR" badge stays in the title bar (amber if it serves a PR other than the one open) to
reopen the PR or stop the stack, and leaving a PR whose stack is running offers "Stop" or "Keep
running". If the PR receives a new push, the Test tab and the test window bar say so and offer
"Relaunch on iteration N"; a stack from another PR that holds the port can be stopped in one click
when launching this one.
Test window tools ("⋯" button): page screen size (Desktop, Small screen, Tablet, Mobile or Fit),
session reset, and test accounts saved per repository, copyable in one click (the password leaves the
clipboard a minute later).
Test tools on Windows: the test window can be captured and picks up page errors, and launch
profiles also run on Windows, without a console window.
Improvements
A more consistent app from one screen to the next: the Code, Repositories, Team and Pull requests
spaces share the same header (title and context on the left, data freshness and actions on the right,
filters below), and the detail panels — Review, branch, repository, contributor — share the same
layout and the same tabs.
A Pull Request looks the same everywhere: same information in the same place on Home cards, the
sidebar, the inbox, ⌘⇧P search, the bell and popovers, and the same gestures: click to open it,
⌘-click for a new window, ⋯ button or right-click for its actions.
Action menus everywhere: ⋯ button and right-click on Pull Requests, repositories, files, threads
and branches, with the same actions as the ⌘K palette (copy the link, open in Azure DevOps, open in
the Code space, blame, resolve a thread…).
AI looks the same everywhere: same button, same indicator while it works, same "Suggested by AI"
frame and same reminder that nothing is published without your click — from the AI review to chat,
reply drafts, descriptions, commit, test launch and team summary.
Uniform wording and states: the same words for the same actions ("Refresh", "Publish", "Save",
"Remove"…), one loading indicator, an error that offers "Retry" when possible, and "Refreshed … ago" /
"Live" wherever data updates.
Calm, consistent animations: switching tabs, screens or Pull Requests is instant — only the
selection pill slides. Motion is reserved for what really happens (a list loading, a folder
expanding, a box being checked, a counter changing), always subtle and quick, and nothing replays when
you return to a screen or during refreshes. The line marker after navigating in the diff finally
shows up. "Reduced motion" turns everything off.
Loading that no longer flickers: each screen holds its place while loading, with skeletons of the
same shape everywhere (PR files, branches, history, repositories, comments, review feed, test). An
indicator doesn't appear for a quick read and doesn't vanish right after showing, no list appears
"empty" before it has loaded, and a refresh keeps the content. The branch list arrives complete and
sorted, and Pull Requests you've already opened (30 per session) reopen instantly.
No more hover tooltips: the bubbles that appeared on buttons and the activity bar are gone.
Settings reorganized and searchable: "Search settings" (⌘F) finds a setting by name and jumps to
it. Sections are grouped (You, Display, Work, Tracking, System); "General" only keeps startup and
keyboard, refresh rates have their own "Synchronization" section, and caches, history, export and
reset are under "Local data". Pull requests settings are arranged by moment, and the tab opened by
default is now set in one place only, in Usage profile.
Tester view uses the full width: without code, the Review panel takes the whole main column. The
Test tab switches to two columns — the application and its run on the left, the verdict and feedback
on the right —, Summary cards spread across columns, and threads keep a comfortable reading width.
A more guided tester journey: the Test tab walks you through the first setup ("Set up launch",
AI suggestion first), offers to resume after a setting change, shows test feedback with clickable
thumbnails in "Finish my review", confirms publication and suggests a commit message for the launch
file and the checklist.
Faster relaunch: relaunching a Pull Request on the same commit reuses its test folder instead of
downloading the code again; only your local files are copied back.
Narrow Review panel handled better: the Threads tab header shrinks cleanly (AI sort button as an
icon, counter reduced to the number) and the "Write a comment…" prompt ends with "…" instead of being
cut into two clipped lines.
The test window keeps its cookies to itself: the page under test has its own storage, separate
from Diffwright; closing the test window therefore logs you out of the tested application.
Fixes
"Trust this profile" is finally respected: the confirmation dialog came back on every launch of a
profile modified by the PR, even after trust was granted. It no longer comes back as long as the
commands don't change (or a port is in use), and the "Commands" button still lets you review them.
Opening the test window on an address that doesn't respond crashed the application: the address is
now checked before opening ("Open anyway" is still possible), and the bar flags a page that isn't
responding.
The application crashed while preparing a launch when a project file had an accented name.
Stopping then relaunching right away could leave the run showing "Stopping" forever, or mix up the
files of the two launches.
"Delete all" test folders was no longer possible as soon as a run was in progress; folders in use
are now simply kept.
Saving the launch file or the checklist failed with an "Invalid path" error when committing.
The AI's suggestion could be rejected ("unknown field") when a description contained a comma; the
AI now writes these entries safely, and the error message explains how to fix it by hand.
The Test tab didn't show the profiles of a launch file that had just been saved until you switched
PR.
Some dialogs in the Test tab didn't respond to clicks near the edge of the panel.
The "Mark reviewed and next" button stayed visible on top of dialogs.
Only one test window at a time: opening one for another PR closes the previous one, and the "Test
window" card disappears when the stack is running and its window is open.