# Web release review

Source: https://saasmirror.com/tools/release-review
Checklist version: 2026-09-06
Exported: Blank template — no review performed

Manual observations for the cases recorded here. This report is not a release certification or an automated test result.

## Review conditions

Release / build:
> Not recorded

Environment:
> Not recorded

Browser / device:
> Not recorded

## Recorded outcomes

0 observed passes · 0 need follow-up · 18 not checked · 0 not applicable
Reviewed items without evidence or a reason: 0

## Pages and search

### 01. Open a direct URL

Status: Not checked

Paste a nested page URL into a new tab, then reload it. Confirm the intended page loads without visiting the homepage first. Follow its main navigation links and check their destinations.

Record: URL, signed-in/out state, resulting page, HTTP status, and any unexpected redirect.

Evidence / reason:
> Not recorded

### 02. Use Back and Forward

Status: Not checked

Open a list, apply a filter, visit a detail page, then use Back and Forward. Compare the restored URL, filter, selection, and scroll position with the intended behavior.

Record: Exact route sequence, expected restored state, and actual result.

Evidence / reason:
> Not recorded

### 03. Visit a missing page

Status: Not checked

In a test environment, open a route known not to exist. Confirm the page explains the problem, provides a working way onward, and returns the intended missing-page status rather than an ordinary success response.

Record: Requested route, HTTP status, visible message, and destination of the recovery link.

Evidence / reason:
> Not recorded

### 04. Check page identity

Status: Not checked

For a public page, inspect its title, description, and canonical URL in the delivered HTML and rendered page. Confirm they describe this page, agree with each other, and use the intended public hostname. Open the canonical destination.

Record: Actual title, description, canonical URL, destination status, and any source/render difference.

Evidence / reason:
> Not recorded

### 05. Check search access

Status: Not checked

For a page intended for search, inspect robots.txt, robots meta tags, and X-Robots-Tag. Check that no rule unexpectedly blocks crawling or indexing. Follow a real HTML link to the page; verify the public sitemap, if provided, lists the intended canonical URL.

Record: URL, relevant rules/header values, linking page, and sitemap entry. This records configuration, not actual indexing.

Evidence / reason:
> Not recorded

## Inputs and feedback

### 06. Correct invalid input

Status: Not checked

Submit a required field empty and a constrained field with an invalid sample value. Check that the error identifies the field and correction, valid input remains available, and correcting the problem allows the intended next step.

Record: Sample values, exact error text, retained values, and outcome after correction.

Evidence / reason:
> Not recorded

### 07. See loading and empty states

Status: Not checked

Use an existing test fixture or network throttling to slow the relevant request. Then load a known empty fixture. Confirm pending work is distinguishable from a completed result with zero items.

Record: Fixture/route, throttling condition, messages shown, and the next action offered in each state.

Evidence / reason:
> Not recorded

### 08. Recover from failure

Status: Not checked

In staging, use a documented failure fixture or block the relevant request. Attempt the action, restore normal conditions, and retry once. Check that the error explains a useful next step and the result agrees with the stored state.

Record: Failure condition, message, retry steps, and resulting sample record or visible outcome.

Evidence / reason:
> Not recorded

### 09. Check repeated actions

Status: Not checked

With a sample record and a deliberately slow staging response, activate the same submit action twice. Check the request sequence and resulting records against the product’s intended duplicate-handling behavior.

Record: Number of requests and resulting records, record IDs, and the intended behavior. A disabled button alone is not evidence of one stored operation.

Evidence / reason:
> Not recorded

## Keyboard and status

### 10. Finish with the keyboard

Status: Not checked

Put the pointer aside. Complete one core journey with Tab, Shift+Tab, Enter, Space, and the keys appropriate to any widgets. Check that the required controls can be reached, operated, and exited.

Record: Browser/OS, journey, keystroke sequence, and any unreachable control or trap.

Evidence / reason:
> Not recorded

### 11. Follow visible focus

Status: Not checked

Tab through the journey and any menus or dialogs. Check that the focused control remains visible, focus moves in a useful order, and closing a dialog returns it to a sensible control.

Record: Focus sequence, a screenshot of any missing/covered indicator, and focus location after closing.

Evidence / reason:
> Not recorded

### 12. Hear status changes

Status: Not checked

With a screen reader, trigger a loading message, a validation/result update, and completion without moving focus to the message. Check which meaningful updates are announced and whether repeated announcements become disruptive.

Record: Browser and screen-reader versions, trigger, visible message, announcement heard, and focus location.

Evidence / reason:
> Not recorded

## Mobile and touch

### 13. Read at a narrow width

Status: Not checked

Test a 320 CSS-pixel viewport, then separately enlarge text to 200% in a browser that supports text-only zoom. Read the main content and reach the primary action. Check for clipped text, overlaps, and lost controls.

Record: Viewport or zoom mode, browser, affected route, and screenshot of any obstruction.

Evidence / reason:
> Not recorded

### 14. Tap adjacent controls

Status: Not checked

On a real touch device, use the main navigation, neighboring buttons, and any menu close control. Check for mistaken activation and functionality that is available only when hovering.

Record: Device/browser, controls attempted, observed wrong activations, and whether the intended action remains reachable.

Evidence / reason:
> Not recorded

### 15. Use the on-screen keyboard

Status: Not checked

Focus the last field of a sample form on a phone. Enter a long sample value, correct it, and reach submit while the keyboard is open. Repeat in landscape if supported by the product.

Record: Device/orientation, sample length, obscured field/control, and submission outcome.

Evidence / reason:
> Not recorded

## Release and recovery

### 16. Load the released assets

Status: Not checked

After the staging deployment, repeat a direct load with an empty browser cache, an ordinary reload, and a return visit through browser history. Check for missing scripts/styles and mixed old/new UI. Confirm the intended build where the product exposes a build identifier.

Record: Deployment/build identifier, browser, asset failures, relevant cache headers, and result for each navigation type.

Evidence / reason:
> Not recorded

### 17. Find a controlled failure

Status: Not checked

If monitoring exists, trigger one documented, harmless staging error using sample data. Locate the corresponding event and any configured alert. If there is no monitoring, record that gap instead of marking the check passed.

Record: Trigger time/time zone, environment, correlation/event ID, recorded message, and observed alert delivery or absence.

Evidence / reason:
> Not recorded

### 18. Rehearse the rollback

Status: Not checked

In staging, restore the recorded previous release using the documented rollback procedure. Verify its build and repeat the primary sample journey, including any data compatibility checks required by the change. Restore the candidate only after recording the result.

Record: Previous/candidate build IDs, actual rollback steps, timestamps, and post-rollback journey result. Unrehearsed or incompatible data changes remain unresolved.

Evidence / reason:
> Not recorded
