PROBIE
Fix these issues
Report readyDispatch 47

We found 6 issueson carbon.msworth fixing.

Probie inspected carbon.ms the way a new customer would. 12 pages, desktop and phone, 12 minutes. Sep 26, 2026.

12 pages visited186 controls found60 clicked
carbon.ms's report cardSep 26, 2026

The terms page logs a React hydration error.

2 serious4 minor
See the breakdown
Probie doesn't stop at the report.Sign up and turn these findings into tested pull requests.
Fix these issues →
Probie on site

Watch the inspection.

We navigate your site the way customers would. Idle time is skipped.

Inspect your own site
the scores · out of 100
84VisualThe MCP operation count differs between two pages
94AccessibilityPrimary buttons fail the AA contrast threshold
100Buttons and linksNo verified problems with the controls and links checked.
37Under the hoodThe terms page logs a React hydration error
86MobileThe subprocessor table URL is clipped on mobile
How the composite score works

The overall score is a weighted average: Visual 18.75%, Accessibility 25%, Buttons and links 31.25%, Under the hood 12.5%, and Mobile 12.5%. Unassessed categories are excluded and the remaining weights are normalized.

Product categories start at 100. Each distinct verified finding deducts 30 points for a reproduced flow defect, or 18 for critical, 12 for high, 7 for medium, and 3 for low stored detector severity. Scores stop at zero and round to whole numbers. All verified findings count, including those beyond the displayed list. The formula is fixed and versioned, so the same saved evidence always receives the same score.

the issues
Serious/terms · phone

The terms page logs a React hydration error

Loading /terms on a mobile viewport puts a React error in the console: "Minified React error #418", thrown from assets/index-BbR_RaX1.js with a stack running through the chunk assets/chunk-QFMPRPBF-HdOgr6Xy.js. Error #418 is the hydration mismatch case, where the server-rendered markup does not match what the client renders on first pass. The page content itself still paints, but React discards and re-renders the mismatched subtree.

carbon.ms/terms
Captured during the scan: The terms page logs a React hydration error
from the scan · /terms · mobileopen full capture ↗

Try it: Open https://carbon.ms/terms on a phone-sized viewport with the console open and look for the "Minified React error #418" entry on load.

Serious/terms · phone

React hydration error #418 fires on the terms page

Loading /terms on mobile throws an uncaught page error: "Minified React error #418", the hydration mismatch case where server-rendered HTML does not match the client render. The error repeats on a fresh load of the same route. The page content still renders, but React discards the server markup for the mismatched subtree and re-renders it on the client, and any state or handlers attached during that pass are affected.

carbon.ms/terms
Captured during the scan: React hydration error #418 fires on the terms page
from the scan · /terms · mobileopen full capture ↗

Try it: Open https://carbon.ms/terms on a mobile viewport with the browser console open and look for the uncaught "Minified React error #418" entry on load.

Minor/subprocessors · phone

The subprocessor table URL is clipped on mobile

On /subprocessors at a 390px viewport, the Website cell in the AWS GovCloud (US) row runs past the right edge of the table. The link renders as "aws.amazon.com/g" cut mid-glyph at the viewport boundary, with only "us" wrapping onto the next line, so the URL cannot be read. The Cloudflare row in the same table fits, so the table is wider than the viewport only where a long URL appears.

carbon.ms/subprocessors
Captured during the scan: The subprocessor table URL is clipped on mobile
from the scan · /subprocessors · mobileopen full capture ↗

Try it: Open /subprocessors on a phone or a 390px-wide browser window and scroll to the Infrastructure table; the AWS GovCloud (US) Website link is cut off at the right edge.

Minor/contact · phone

The Turnstile widget runs off the right edge on mobile

On /contact at a 390px viewport, the Cloudflare Turnstile verification widget is wider than the page, so its right side is cut at the viewport edge. The Cloudflare wordmark is sliced mid-letter and the Privacy and Help links are truncated to "Privacy • He". The widget also starts far enough to the right that it overlaps the Submit button area, which is partly covered on the left of the row.

carbon.ms/contact
Captured during the scan: The Turnstile widget runs off the right edge on mobile
from the scan · /contact · mobileopen full capture ↗

Try it: Open /contact on a phone or a 390px-wide window and scroll to the form, look at the Turnstile box: its right edge and the Cloudflare wordmark and Privacy/Help links are cut off past the viewport.

Minorhome page

The MCP operation count differs between two pages

The homepage and /developers give different sizes for the same MCP server. The homepage states "A built-in MCP server exposes 1,374 operations across 15 modules through three discovery tools." The /developers page states that search_tools, describe_tool and call_tool "reach more than 1,400 ERP operations across 15 modules, each classified read, write or destructive." Both describe the same server and the same 15 modules, so the operation count on one of the two pages is out of date.

Try it: Open / and find the MCP Server section, then open /developers and read the paragraph under the mcpServers config block; compare the operation counts.

Minorhome page

Five security response headers are missing

The response from https://carbon.ms/ is missing Content-Security-Policy, CSP frame-ancestors or X-Frame-Options, X-Content-Type-Options: nosniff, Referrer-Policy, and Cross-Origin-Resource-Policy.

carbon.ms
Captured during the scan: Five security response headers are missing
from the scan · / · desktopopen full capture ↗

Try it: Run curl -sI https://carbon.ms/ and look for Content-Security-Policy, X-Frame-Options, X-Content-Type-Options, Referrer-Policy, and Cross-Origin-Resource-Policy in the response headers.

polish
Polish

A rough edge in the layout

The testimonial quote glyph sits inline with the first two text lines and indents them, so the first two lines start about 90px right of the remaining lines of the same paragraph.

from report to pull request

Probie fixes this for you.

This report came from one visit. When installed on your project, Probie watches real sessions, reproduces failures, and opens tested fixes as pull requests.

Sign up and get this fixed
PRFix: The terms page logs a React hydration error
probie/fix-1+12−4checks passing

Free inspection

What should Probie inspect next?

Enter a project URL. There is nothing to install.

Probie checks every issue twice, respects robots.txt, and backs off at bot challenges.

Send this report to an inbox.

Enter an address and we will email the report card link.