# Privacy Notice

This notice was last updated on 12 November 2024. We may change this notice from time to time, so please check this page for updates.

We are committed to respecting your data privacy and we avoid collecting information from our products that could identify you as an individual wherever possible. Please note, however, that using our licensing feature does result in us collecting Personally Identifiable Information.

## 1. Who are we? <a href="#i9h8eelgmiuh" id="i9h8eelgmiuh"></a>

We are Diffblue Limited, AI for Code. We are a company registered in England and Wales number 09958102, with our registered office at Diffblue Ltd, 5 New Street Square, London, EC4A 3TW, UK. We are the controller of the data described in this notice.

## 2. What data do we collect? <a href="#ikut0ho1z6vv" id="ikut0ho1z6vv"></a>

We collect two different types of data: licensing data and telemetry data / error reporting.

### 2.1 Licensing <a href="#tix1levvvgj1" id="tix1levvvgj1"></a>

As part of our license verification process, to identify unique devices and users we collect information on the following hardware components to generate a unique identity key per device. The hardware components are:

* Motherboard
* Processor (CPU)
* Hard disks or other similar storage units.

We store the following data:

<table data-header-hidden><thead><tr><th width="314"></th><th></th></tr></thead><tbody><tr><td><strong>User first name, last name, and email address</strong></td><td>Used to identify the assignment of keys to individual users.</td></tr><tr><td><strong>User company name and job title</strong></td><td><p>Used to identify the company and job title of the user to which the license is assigned. Only collected in:</p><ul><li>Community Edition</li><li>Teams Edition - 14-Day Free Trial</li></ul></td></tr><tr><td><strong>License first activated</strong></td><td>Date and time</td></tr><tr><td><strong>License last checked</strong></td><td>Date and time</td></tr><tr><td><strong>External IP address</strong></td><td>x.xx.xxx.xxx</td></tr><tr><td><strong>Hardware ID</strong></td><td>This is a secure hash of a unique identifier used to distinguish between devices</td></tr><tr><td><strong>Number of times license activated</strong></td><td>x</td></tr></tbody></table>

The license management technology used by Diffblue is provided by [LicenseSpring](https://licensespring.com/). Please click here to see the[ LicenseSpring privacy notice](https://licensespring.com/privacy).

When deployed in a Continuous Integration environment, Diffblue collects the following additional information from environment variables to verify license entitlement:

<table data-header-hidden><thead><tr><th width="249"></th><th></th></tr></thead><tbody><tr><td><strong>CI_JOB_URL</strong></td><td>For example: https://gitlab.com/diffblue/examples/PetClinic/-/jobs/nnnnnn</td></tr><tr><td><strong>CI_PROJECT_VISIBILITY</strong></td><td>public/private</td></tr><tr><td><strong>CI_SERVER_VERSION</strong></td><td>For example: 16.7.0</td></tr><tr><td><strong>CI_COMPANY</strong></td><td>For example: diffblue</td></tr><tr><td><strong>CI_USER_EMAIL</strong></td><td>For example: firstname.surname@company.com</td></tr></tbody></table>

The CI pipeline license information collection technology used by Diffblue is provided by [MixPanel](https://mixpanel.com/). Please click here to see the[ MixPanel privacy notice](https://mixpanel.com/legal/privacy-policy/).

Users of Diffblue Cover Enterprise Edition who have the offline licensing option can activate Diffblue Cover offline such that none of this information is collected.

### 2.2 Telemetry data / error reporting <a href="#kdsf74xxr2s0" id="kdsf74xxr2s0"></a>

Diffblue collects telemetry data and error reports to guide future product improvements. The data is sent to Diffblue over an encrypted HTTPS connection.

Telemetry/error report collection by Diffblue is mandatory in Community, Developer, and Teams edition; telemetry/error report collection can be disabled in Enterprise Edition according to the following instructions:

* [Diffblue Cover CLI](https://docs.diffblue.com/features/cover-cli/telemetry)
* [Diffblue Cover Plugin for IntelliJ](https://docs.diffblue.com/features/cover-plugin/telemetry)

The telemetry collection and processing technology used by Diffblue is provided by [MixPanel](https://mixpanel.com/). Please click here to see the[ MixPanel privacy notice](https://mixpanel.com/legal/privacy-policy/).

The error reporting collection and processing technology used by Diffblue is provided by [Sentry](https://sentry.io/). Please click here to see the[ Sentry privacy notice](https://sentry.io/privacy/).

**Telemetry data collection:**

<table data-full-width="true"><thead><tr><th>Data point</th><th>Example</th><th>Usage</th></tr></thead><tbody><tr><td>First 3 octets of Public IP address</td><td>104.18.120</td><td>From this we infer approximate location (e.g. New York), to prioritize language and product support</td></tr><tr><td>Random UUID</td><td>697764c3-657d-4c93-9a14-7f701173a690</td><td>So that we can see how a particular instance of the product is used over time</td></tr><tr><td>Operating system version</td><td>Apple macOS 10.14.6 (Mojave) build 18G103</td><td>Prioritize OS support</td></tr><tr><td>CPU ID string</td><td>Intel(R) Core(TM) i5-6500 CPU @ 3.20GHz</td><td>Guide decisions on product performance</td></tr><tr><td>System RAM in bytes</td><td>4294430720</td><td>Guide decisions on product performance</td></tr><tr><td>Diffblue Cover Version</td><td>2023.12.01</td><td>Understand how versions are being used</td></tr><tr><td>IDE version *(Cover Plugin only)*</td><td>2019.2.1 IC-191.6707.61</td><td>Prioritize IDE support</td></tr><tr><td><p>Application start time (CLI only)</p><p>IDE start time (IntelliJ Plugin only)</p></td><td>Wed, 04 Nov 2020 15:02:27 GMT</td><td>Analyze performance and product usability</td></tr><tr><td><p>Application exit time (CLI only)</p><p>IDE exit time (IntelliJ Plugin only) Application exit time</p></td><td>Wed, 04 Nov 2020 15:19:17 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>When the Plugin is uninstalled (IntelliJ Plugin only)</td><td>Fri, 06 Nov 2020 09:33:45 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>Indexing start time</td><td>Wed, 04 Nov 2020 15:02:27 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>Indexing end time</td><td>Wed, 04 Nov 2020 15:10:22 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>Analysis start time</td><td>Wed, 04 Nov 2020 15:02:27 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>Analysis end time</td><td>Wed, 04 Nov 2020 15:19:17 GMT</td><td>Analyze performance and product usability</td></tr><tr><td>Number of tests generated</td><td>42</td><td>Product usefulness and preferred workflow</td></tr><tr><td>Output codes from analysis</td><td>E009, R003, T002, V002</td><td>Product robustness and preferred workflow</td></tr></tbody></table>

​

​

**Error report data collection:**

<table data-full-width="true"><thead><tr><th width="223">Data</th><th width="348">Example</th><th>Usage</th></tr></thead><tbody><tr><td>Stack trace</td><td>java.lang.RuntimeException: Controller failed at org.springframework.samples.petclinic.system.CrashController.triggerException(CrashController.java:33) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568)</td><td>Debugging</td></tr><tr><td>The release version</td><td>2021.10.01-community</td><td>Understand how versions are being used</td></tr><tr><td>User id</td><td>38b4a23b-e46f-43c2-8b98-e829c5d7182d</td><td><p>e.g.</p><p>So that we can see how a particular instance of the product is used over time</p></td></tr><tr><td>IDE version</td><td>2021.3 IC-213.4746.92</td><td>Prioritize IDE support</td></tr><tr><td>Java runtime version</td><td>11.0.11+9-b1504.13</td><td>Understand how versions are being used</td></tr><tr><td>Number of CPU cores</td><td>8</td><td>Guide decisions on product performance</td></tr><tr><td>Memory</td><td>Free, Max, and Total</td><td>Guide decisions on product performance</td></tr><tr><td>OS</td><td>macOS X</td><td>Prioritize OS support</td></tr></tbody></table>

## 3. Security <a href="#ow1r7hfxkkiy" id="ow1r7hfxkkiy"></a>

While we cannot guarantee the security of the data, we have implemented generally accepted technical and organizational measures to protect all data from accidental or unlawful destruction, loss, alteration, unauthorized disclosure and unauthorized access, taking into account the nature of the data and the associated risks.

## 4. Contact <a href="#id-32lzbv1qoigb" id="id-32lzbv1qoigb"></a>

If you have any questions about this notice or our handling of data, please contact us at <legal@diffblue.com> or by writing to:

Head of Legal,\
Diffblue Limited,\
5 New Street Square\
London EC4A 3TW


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cover-docs-preview.diffblue.com/legal/diffblue-legal/privacy-notice.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
