Leak GateLeak Gate
How to judge this in 90 seconds
  1. 1. The red lines show where a synthetic customer’s data went that the data map does not allow.
  2. 2. Click a red destination to see the exact captured line, with her planted value marked.
  3. 3. Switch to After fix: a GitLab Duo flow committed the fix and the same drill found nothing.
  4. 4. Run a live drill on the leaky build, with a first name of your choosing, and watch it happen.
  5. 5. Switch to merge request !2: data went to a CRM the data map has never seen, and the flow held it for the privacy lead.

Sync new customers to the CRM

■ Blocked: 3 leaks

Sync new customers to the CRM · 13 Oct, 08:27 UTC · 4 journeys · 11.7 s · pipeline

Each leak, with the line that proves it

“crm” is not in the data map, so the GitLab Duo flow did not guess. It held this merge request for the privacy lead.

In plain words

Leak Gate checks where customers’ personal details end up, before a code change goes live.

Apps leak personal data by accident. A developer adds a debug log, and every new customer’s password is saved in the log files. An error report attaches the whole signup form. Nobody reading the code change can see it, so it ships.

Who it is for
Teams that build apps holding customer data, and the person accountable for where that data goes.
What it never uses
Real customer data. Every customer in a test is invented, and the outside companies in this demo are simulated.
  1. A fake customer tries the change

    Each proposed change to the app gets its own test copy. A made-up customer signs up, orders and asks for help, and every detail she types carries a unique tag.

    Ada Canary-VPAN
    ada.vfy2f8@canary.leakgate.test
    The customer planted on merge request !1
  2. Every place her details could go is searched

    The app’s logs, each outside company it sends data to, and its own database. A tagged detail is easy to find wherever it lands.

    • App logs
    • Error tracker
    • Analytics
    • Email vendor
    • Shipping vendor
    • Shop database
  3. A rule list says what is allowed

    The team writes down who may receive each detail. A password in the logs breaks the rules, so the change fails and the exact line is shown as proof.

    • email to the shop database✓ allowed
    • password to the app logs✕ leak
  4. An AI agent fixes it, a person ships it

    A GitLab Duo agent reads that proof, changes the code that leaked and explains why. If the data went somewhere the list has never heard of, it does not guess: it asks the privacy lead. A person approves the release.

    ■ Blocked: 11 leaks✓ Passed: 0 leaks

This merge request across the lifecycle

  1. Plan
  2. Create
  3. Verify
  4. Package
  5. Secure
  6. Release
  7. Configure
  8. Monitor
  9. Govern

Each lit stage links to the real GitLab object for this merge request. Hover a stage to see what lights it.