# US 12,182,004 B2 · Debugging data privacy pipelines using sample data

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,182,004 B2
- Document ID: US12182004B2
- Status: Granted
- Kind: B2
- Application number: 17/684,204
- Filed: 2022-03-01
- Published: 2023-09-07
- Granted: 2024-12-31
- Earliest claimed: 2022-03-01
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Yisroel Gershon Taber; Ittay Levy Ophir; Lev Rozenbaum; Nerya Cohen
- Web page: https://patentgrep.com/patent/US12182004B2

## CPC

- G06F 11/3698: Environments for analysis, debugging or testing of software
- G06F 21/6254: {by anonymising data, e.g. decorrelating personal data from the owner's identification}
- G06F 11/3636: {by tracing the execution of the program}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Implementations are directed to developing and facilitating a data collaboration using a debug mode that permits debugging a data pipeline without exposing collaborator data. In an example implementation, collaborators that contribute production data into a data pipeline specify sample data such as mock, random, or expired data for each production dataset they contribute. When one of the collaborators triggers the data pipeline in debug mode, a modified data pipeline that substitutes the production data for the sample data is executed to generate sample derived data in a data trustee environment, without exposing the production data. Since debug mode does not use production data, a data pipeline may run in debug mode even if a governing contract has not been signed (and entitlements have not been granted), and/or diagnostic logs generated by the modified data pipeline in debug mode may be exposed to the collaborators for debugging purposes.

## Claims

### Claim 1

A computer system comprising:
one or more computer storage media storing computer-useable instructions that, when used by one or more computing devices, cause the one or more computing devices to perform operations comprising:
receiving first input selecting a data pipeline that identifies configurable computations over production data, governed by a contract between collaborators, without exposing the production data to the collaborators;
receiving second input triggering the data pipeline in debug mode; and
executing, in response to the second input, a modified data pipeline that substitutes the production data with sample data provided by one of the collaborators to generate sample derived data in a data trustee environment.

### Claim 2 (depends on 1)

The computer system of claim 1, wherein the contract has not been signed by all the collaborators and the data pipeline is under development, the operations further comprising permitting the collaborators to trigger the data pipeline under development in the debug mode without exposing the production data.

### Claim 3 (depends on 1)

The computer system of claim 1, wherein the second input is from a first collaborator of the collaborators, the operations further comprising exposing the sample derived data to the first collaborator without exposing the production data.

### Claim 4 (depends on 1)

The computer system of claim 1, wherein the production data comprises multiple production datasets contributed by corresponding collaborators, and the sample data comprises multiple sample datasets provided the corresponding collaborators via an interface of a data collaboration tool of the data trustee environment.

### Claim 5 (depends on 1)

The computer system of claim 1, wherein the sample data comprises mock, random, or expired data.

### Claim 6 (depends on 1)

The computer system of claim 1, wherein the data pipeline references the production data using one or more pointers without exposing the production data.

### Claim 7 (depends on 1)

The computer system of claim 1, the operations further comprising permitting the collaborators to access diagnostic logs generated by the configurable computations over the sample data during the debug mode.

### Claim 8 (depends on 1)

The computer system of claim 1, the operations further comprising disallowing the collaborators to access diagnostic logs generated by the configurable computations over the production data in a production mode.

### Claim 9

One or more computer storage media storing computer-useable instructions that, when executed by one or more computing devices, cause the one or more computing devices to perform operations comprising:
providing, to a group of collaborators, access to an electronic representation of a data pipeline that identifies configurable computations over production data of the collaborators without exposing the production data to the collaborators;
receiving, from one or more of the collaborators, sample data associated with the production data;
receiving input triggering the data pipeline in debug mode; and
executing, in response to the input, a modified data pipeline that substitutes the sample data for the production data to generate, in a data trustee environment, sample derived data from the sample data without exposing the production data to the collaborators.

### Claim 10 (depends on 9)

The one or more computer storage media of claim 9, wherein the data pipeline is under development, the operations further comprising permitting the collaborators to trigger the data pipeline under development in the debug mode without exposing the production data.

### Claim 11 (depends on 9)

The one or more computer storage media of claim 9, wherein the input is from a first collaborator of the collaborators, the operations further comprising exposing the sample derived data to the first collaborator without exposing the production data.

### Claim 12 (depends on 9)

The one or more computer storage media of claim 9, wherein the production data comprises multiple production datasets contributed by corresponding collaborators, and the sample data comprises multiple sample datasets provided the corresponding collaborators via an interface of a data collaboration tool of the data trustee environment.

### Claim 13 (depends on 9)

The one or more computer storage media of claim 9, wherein the sample data comprises mock, random, or expired data.

### Claim 14 (depends on 9)

The one or more computer storage media of claim 9, wherein the data pipeline references the production data using one or more pointers without exposing the production data.

### Claim 15 (depends on 9)

The one or more computer storage media of claim 9, the operations further comprising permitting the collaborators to access diagnostic logs generated by the configurable computations over the sample data during the debug mode.

### Claim 16 (depends on 9)

The one or more computer storage media of claim 9, the operations further comprising disallowing the collaborators to access diagnostic logs generated by the configurable computations over the production data in a production mode.

### Claim 17

A method comprising:
receiving first input selecting a data pipeline that identifies configurable computations over production data, governed by a contract between collaborators, without exposing the production data to the collaborators;
receiving second input triggering the data pipeline in debug mode; and
executing, in response to the second input, a modified data pipeline that substitutes the production data with sample data provided by one of the collaborators to generate sample derived data in a data trustee environment.

### Claim 18 (depends on 17)

The method of claim 17, wherein the contract has not been signed by all the collaborators and the data pipeline is under development, the method further comprising permitting the collaborators to trigger the data pipeline under development in debug mode without exposing the production data.

### Claim 19 (depends on 17)

The method of claim 17, wherein the second input is from a first collaborator of the collaborators, the method further comprising exposing the sample derived data to the first collaborator without exposing the production data.

### Claim 20 (depends on 17)

The method of claim 17, further comprising permitting the collaborators to access diagnostic logs generated by the configurable computations over the sample data during the debug mode.
