<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>LicenseLeak Changelog</title>
    <link>https://licenseleak.com/changelog</link>
    <atom:link href="https://licenseleak.com/changelog.xml" rel="self" type="application/rss+xml" />
    <description>Weekly releases from the LicenseLeak team — scanner improvements, security fixes, billing polish.</description>
    <language>en-us</language>
    <lastBuildDate>Tue, 19 May 2026 14:00:00 GMT</lastBuildDate>
    <item>
      <title>SBOM upload, directory rollup, PR-diff scans, and an org workbench</title>
      <link>https://licenseleak.com/changelog#2026-05-19-scan-modes-rollup-and-pr-diff</link>
      <guid isPermaLink="false">licenseleak:2026-05-19-scan-modes-rollup-and-pr-diff</guid>
      <pubDate>Tue, 19 May 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>platform</category>
      <category>ui</category>
      <category>api</category>
      <description><![CDATA[<p>A batch of capabilities customers have been asking for landed together: upload an existing SPDX or CycloneDX SBOM instead of a working tree, see findings rolled up by directory, gate PRs on the risk delta of just the changed files via a GitHub Check Run, and (for Agency orgs) get a workbench that rolls up every repo in your org with admin re-grading and an audit log.</p><ul><li>Hosted scans now accept an SPDX 2.3 or CycloneDX 1.5 SBOM (`licenseleak scan --sbom sbom.json` or `POST /api/scans` with an `sbom` field) so teams that already produce one in CI can skip the tarball upload - see /docs#cli for the flag table.</li><li>Public reports and the dashboard ship a directory rollup view that aggregates findings by folder, with a one-click SPDX compatibility verdict per directory against your project license - verdict rules at /docs/compatibility.</li><li>PR-diff and incremental scan modes: pass `--mode diff --base &lt;sha&gt; --head &lt;sha&gt;` (or let the GitHub App do it for you) to scan only the changed files and publish a Check Run with the risk delta and a link to the full report - see /docs#github-app.</li><li>Pro and Agency can upload a private allow-corpus of internal code so first-party copy doesn&apos;t surface as a finding, with per-org scoping and revocable keys - wiring at /docs#org-workbench.</li><li>Live scan progress is now streamed over SSE on the scan detail page, no more polling for the spinner.</li><li>Agency orgs get a new workbench at `/org/posture` that rolls up every repo, plus an admin re-grading flow with a tamper-evident audit log of every verdict change - see /docs#org-workbench.</li><li>Behind the scenes: the snippet matcher is now backed by an LLM ensemble with a content-addressed cache, which keeps p95 scan latency flat as the corpus grows. The AI-provenance scan mode is still beta - see /ai-provenance for the accuracy caveats.</li></ul>]]></description>
    </item>
    <item>
      <title>Scanner now graded against 40 real upstream repos, nightly</title>
      <link>https://licenseleak.com/changelog#2026-05-17-real-repo-adversarial-green</link>
      <guid isPermaLink="false">licenseleak:2026-05-17-real-repo-adversarial-green</guid>
      <pubDate>Sun, 17 May 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ops</category>
      <description><![CDATA[<p>Beyond the hand-labeled fixture suite, the nightly adversarial corpus now clones 40 live production codebases - Linux, LLVM, MongoDB, gecko-dev, Blender, Wagtail, Akaunting, Bitwarden, and 32 more - and re-runs the full scanner end-to-end. Latest run: 40/40 green, precision/recall/F1 = 100%.</p><ul><li>Added a real-repo adversarial corpus that re-clones 40 verified upstream projects from their public remotes each night and grades every scanner finding against the project&apos;s actual license.</li><li>Fixed three classification regressions surfaced by the new corpus: Akaunting (BUSL-1.1) misclassification, the §13 Affero clause body matching too aggressively against GPL bodies, and stub-redirect LICENSE files (doc/license, licenses/) being missed.</li><li>Self-serve readouts on /security and the home FAQ now publish both the hand-labeled benchmark and the real-repo corpus side by side, with a link to the GitHub Actions nightly so anyone can re-verify it.</li></ul>]]></description>
    </item>
    <item>
      <title>See exactly why the crawler is paused, at a glance</title>
      <link>https://licenseleak.com/changelog#2026-05-11-admin-ops-visibility</link>
      <guid isPermaLink="false">licenseleak:2026-05-11-admin-ops-visibility</guid>
      <pubDate>Mon, 11 May 2026 14:00:00 GMT</pubDate>
      <category>ops</category>
      <category>platform</category>
      <description><![CDATA[<p>When the nightly corpus crawler stops, the admin dashboard now tells you whether it crashed, was held back by the smoke gate, or has just been latched on a stale state - and for how long.</p><ul><li>/admin/corpus shows a distinct banner when the smoke gate is actively blocking a run, with a one-click link to the failing GitHub Actions smoke run and both override paths spelled out.</li><li>Same page now surfaces how long any freshness alert has been open (&quot;open since 12h ago&quot;), so you can tell a fresh blip from a multi-day outage without scrolling Slack.</li><li>The deadman pinger now alerts on consecutive failures rather than a single hiccup - fewer false 3am pages.</li><li>Admin can configure optional reputation sources (deps.dev, OSV) from a real form instead of editing env vars.</li></ul>]]></description>
    </item>
    <item>
      <title>Scanner accuracy: harder copy-paste, more permissive licenses, fewer false-cleans</title>
      <link>https://licenseleak.com/changelog#2026-05-10-scanner-accuracy-batch</link>
      <guid isPermaLink="false">licenseleak:2026-05-10-scanner-accuracy-batch</guid>
      <pubDate>Sun, 10 May 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <description><![CDATA[<p>A run of accuracy work - recovering obfuscated copy-paste, detecting more permissive licenses on vendored files, and refusing to claim &quot;all clear&quot; on repos we couldn&apos;t fully parse.</p><ul><li>Recovers oversized GCC-style copy-paste through window-sliced indexing - the three hardest obfuscated copy-paste fixtures we had now match.</li><li>First-class detection for MPL-2.0, LGPL-with-exception, ISC, and BSD-2-Clause on vendored files; severity language calibrated for permissive-ish copyleft.</li><li>Public reports use a three-state coverage header - &quot;all clear&quot;, &quot;scope-limited&quot;, or &quot;could not parse&quot; - so a parser failure no longer reads as a clean bill of health.</li><li>Stops mislabelling Rust and Go scans as &quot;scope-limited&quot; now that those ecosystems are first-class.</li><li>Nightly cargo + Go license cache refresh from the real registries, with an alert when the refresh stops ticking.</li><li>Drift guard: a new copyleft baseline test catches a new GPL/AGPL dep sneaking in through a transitive bump.</li></ul>]]></description>
    </item>
    <item>
      <title>Brand-matched PDF reports, fewer dead links, friendlier failures</title>
      <link>https://licenseleak.com/changelog#2026-05-09-pdf-and-site-polish</link>
      <guid isPermaLink="false">licenseleak:2026-05-09-pdf-and-site-polish</guid>
      <pubDate>Sat, 09 May 2026 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>scanner</category>
      <category>docs</category>
      <description><![CDATA[<p>The signed PDF now matches the site, signed reports stop linking to sources that have since vanished, and a few rough edges on the marketing pages are gone.</p><ul><li>PDF reports redesigned to match the site - Inter and Space Mono throughout, plus a fix for a signature-integrity edge case on multi-page reports.</li><li>Signed reports drop &quot;matched source&quot; links that 404 at view time, so what&apos;s printed always resolves.</li><li>PR Checks tab now gets a self-scan summary comment so reviewers see scanner status without leaving GitHub.</li><li>When a repo is too large to scan in your tier&apos;s time budget, you now get an explanatory dialog with next steps instead of a generic failure.</li><li>Sitemap freshness bot keeps `&lt;lastmod&gt;` honest without cosmetic churn; /bot SEO and the API reference page render styled again; footer © and a handful of marketing copy fixes.</li></ul>]]></description>
    </item>
    <item>
      <title>CLI 0.2.0 - offline-by-default, made obvious</title>
      <link>https://licenseleak.com/changelog#2026-05-07-cli-0-2-0-offline-by-default</link>
      <guid isPermaLink="false">licenseleak:2026-05-07-cli-0-2-0-offline-by-default</guid>
      <pubDate>Thu, 07 May 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>docs</category>
      <category>security</category>
      <description><![CDATA[<p>The CLI was already offline-by-default for local scans; now it says so out loud, and the docs spell out exactly when (and why) it ever talks to the network.</p><ul><li>After a successful local scan, `npx licenseleak scan .` now prints a one-line confirmation that no network requests were made.</li><li>New `--no-hints` flag suppresses that line for scripts that grep stdout. JSON output (`--format json`) is unaffected - still pure JSON.</li><li>README and `/docs` now list every command and flag that triggers an outbound request - `--remote`, GitHub URLs, and `licenseleak whoami`. Nothing else does.</li><li>Published as `licenseleak@0.2.0` on npm.</li><li>Homepage: privacy reassurance now sits directly under the scan form, the trust strip drops the &quot;SOC-ready&quot; phrasing for a concrete &quot;source deleted in &lt;90s&quot; claim, and the FAQ answers the &quot;why not build it myself?&quot; question head-on.</li></ul>]]></description>
    </item>
    <item>
      <title>Launch-readiness check and a quieter ops dashboard</title>
      <link>https://licenseleak.com/changelog#2026-05-04-launch-readiness</link>
      <guid isPermaLink="false">licenseleak:2026-05-04-launch-readiness</guid>
      <pubDate>Mon, 04 May 2026 14:00:00 GMT</pubDate>
      <category>ops</category>
      <category>platform</category>
      <description><![CDATA[<p>One command tells us whether we&apos;re safe to ship. The admin dashboard now shows the result and trims its own history.</p><ul><li>`pnpm launch:check` runs every pre-flight gate (Stripe portal, scanner corpus, queue, Slack) in one shot.</li><li>Result is now pinned to the admin home so the team can see go/no-go at a glance.</li><li>Ops alert history auto-trims so the table can&apos;t grow unbounded between launches.</li><li>Seven small testing fixes consolidated to remove flakes from the CI suite.</li></ul>]]></description>
    </item>
    <item>
      <title>Founder-ops Slack alerting, daily digest, and a Stripe portal canary</title>
      <link>https://licenseleak.com/changelog#2026-04-27-founder-ops</link>
      <guid isPermaLink="false">licenseleak:2026-04-27-founder-ops</guid>
      <pubDate>Mon, 27 Apr 2026 14:00:00 GMT</pubDate>
      <category>ops</category>
      <category>billing</category>
      <description><![CDATA[<p>Real-time Slack pings the moment something breaks, plus an end-of-day digest so nothing slips.</p><ul><li>Slack alerts on first-time interest signups, scan failures, and outages.</li><li>Daily digest summarising scans, signups, and any alerts that fired.</li><li>Stripe Customer Portal config is now auto-checked on boot - broken billing pages won&apos;t reach customers.</li></ul>]]></description>
    </item>
    <item>
      <title>Track demand for new git hosts, opt out of scan emails</title>
      <link>https://licenseleak.com/changelog#2026-04-20-host-demand-and-quiet-emails</link>
      <guid isPermaLink="false">licenseleak:2026-04-20-host-demand-and-quiet-emails</guid>
      <pubDate>Mon, 20 Apr 2026 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>platform</category>
      <description><![CDATA[<p>Tell us which git host you wish we supported, and decide whether you want a per-scan email.</p><ul><li>Settings now has a one-click opt-out for scan-complete emails.</li><li>When you paste a URL from a host we don&apos;t support yet, we capture it as a vote and surface totals to the team.</li><li>Self-service FAQ, friendlier failure email copy, and a cleaner support inbox routing.</li></ul>]]></description>
    </item>
    <item>
      <title>Multi-host email capture and a CLI escape hatch for unsupported hosts</title>
      <link>https://licenseleak.com/changelog#2026-04-13-multi-host-cli</link>
      <guid isPermaLink="false">licenseleak:2026-04-13-multi-host-cli</guid>
      <pubDate>Mon, 13 Apr 2026 14:00:00 GMT</pubDate>
      <category>api</category>
      <category>ui</category>
      <description><![CDATA[<p>Can&apos;t find your code on GitHub? Drop us your host and pipe the folder through the CLI in the meantime.</p><ul><li>When you paste an unsupported host, we capture your email and notify you the day we add it.</li><li>`npx licenseleak scan . --remote` works for any local folder, regardless of what host it lives on.</li></ul>]]></description>
    </item>
    <item>
      <title>&quot;Trusted by&quot; social proof and a 50% testimonial credit</title>
      <link>https://licenseleak.com/changelog#2026-04-06-trusted-by-and-tier-fixes</link>
      <guid isPermaLink="false">licenseleak:2026-04-06-trusted-by-and-tier-fixes</guid>
      <pubDate>Mon, 06 Apr 2026 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>billing</category>
      <description><![CDATA[<p>Leave us a testimonial after a scan, get half your scan credit back. Plus a tighter scan-time experience for paid plans.</p><ul><li>Post-scan testimonial flow with an automatic 50% credit on approval.</li><li>Homepage Trusted-by section pulls from real customer logos.</li><li>Per-tier scan time limits and clearer messages when a scan brushes the ceiling.</li></ul>]]></description>
    </item>
    <item>
      <title>Catch copyleft Java, Kotlin, and Gradle dependencies</title>
      <link>https://licenseleak.com/changelog#2026-03-30-jvm-copyleft</link>
      <guid isPermaLink="false">licenseleak:2026-03-30-jvm-copyleft</guid>
      <pubDate>Mon, 30 Mar 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <description><![CDATA[<p>AGPL/GPL libraries hidden in Maven and Gradle builds now show up in your report.</p><ul><li>First-class detection for copyleft JVM libraries declared in `pom.xml`.</li><li>Groovy `build.gradle` parser for the same coverage on Gradle projects.</li><li>Healthchecks v4.2 added as a third pinned real-repo smoke test fixture.</li></ul>]]></description>
    </item>
    <item>
      <title>Scanner memory cut, lockfile parsing streamed</title>
      <link>https://licenseleak.com/changelog#2026-03-23-scanner-memory</link>
      <guid isPermaLink="false">licenseleak:2026-03-23-scanner-memory</guid>
      <pubDate>Mon, 23 Mar 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ops</category>
      <description><![CDATA[<p>Big monorepos no longer push the scanner over its memory budget.</p><ul><li>Per-file scanner memory reduced - average resident set is roughly half what it was.</li><li>Stream parsing for `composer.lock`, `Pipfile.lock`, `Cargo.lock`, and `Gemfile.lock` - no more loading huge lockfiles into RAM.</li><li>Scanner memory is now measured in the production-built worker, not just CI.</li><li>Fixed a false positive where TypeScript&apos;s `watchPublic.ts` was being flagged as GPL.</li></ul>]]></description>
    </item>
    <item>
      <title>Quieter dashboard, admin landing page, claims notifications</title>
      <link>https://licenseleak.com/changelog#2026-03-16-quieter-dashboard</link>
      <guid isPermaLink="false">licenseleak:2026-03-16-quieter-dashboard</guid>
      <pubDate>Mon, 16 Mar 2026 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>platform</category>
      <description><![CDATA[<p>Stop the 403/503 noise from the dashboard and give the admin team a real home page.</p><ul><li>Dashboard no longer spams 403s and 503s when you load it on a slow network.</li><li>Admin nav links are hidden for non-admin accounts.</li><li>New admin landing page, plus email notifications to the team when a claim is filed.</li><li>Flaky scanner webhook delivery retry tests stabilised.</li></ul>]]></description>
    </item>
    <item>
      <title>Promotion codes, paid-credit routing, and live Stripe keys</title>
      <link>https://licenseleak.com/changelog#2026-03-09-billing-polish</link>
      <guid isPermaLink="false">licenseleak:2026-03-09-billing-polish</guid>
      <pubDate>Mon, 09 Mar 2026 14:00:00 GMT</pubDate>
      <category>billing</category>
      <description><![CDATA[<p>We&apos;re on live Stripe with promo code support and a smoother post-checkout flow.</p><ul><li>Promotion codes now work on every checkout session.</li><li>Paid-credit routing fixed - credit lands on the right account immediately after checkout.</li><li>Live Stripe keys and production prices wired in.</li><li>Heartbeat monitoring with automated outage alerts is now running 24/7.</li></ul>]]></description>
    </item>
    <item>
      <title>Clerk integration docs, logo and tab-title fixes</title>
      <link>https://licenseleak.com/changelog#2026-03-02-clerk-and-logos</link>
      <guid isPermaLink="false">licenseleak:2026-03-02-clerk-and-logos</guid>
      <pubDate>Mon, 02 Mar 2026 14:00:00 GMT</pubDate>
      <category>docs</category>
      <category>ui</category>
      <description><![CDATA[<p>Small but visible polish across the marketing pages and our auth setup.</p><ul><li>Auth now uses the Replit-managed Clerk integration; docs updated to match.</li><li>Fixed the broken logo and stale tab title that showed up on a few pages.</li><li>Updated the social-share image so links posted to Twitter/LinkedIn look right.</li></ul>]]></description>
    </item>
    <item>
      <title>Vector index can be disabled when AI is unavailable</title>
      <link>https://licenseleak.com/changelog#2026-02-23-vector-toggle</link>
      <guid isPermaLink="false">licenseleak:2026-02-23-vector-toggle</guid>
      <pubDate>Mon, 23 Feb 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ops</category>
      <description><![CDATA[<p>If the AI integration goes down, scans keep working with the deterministic matcher.</p><ul><li>Operator flag to disable the vector index when the AI integration is unreachable.</li><li>Scanner falls back to deterministic AST matching with no extra config.</li><li>User email is now captured at signup and backfilled for older accounts (used for transactional notifications).</li></ul>]]></description>
    </item>
    <item>
      <title>False-positive gating on every PR</title>
      <link>https://licenseleak.com/changelog#2026-02-16-fp-gates</link>
      <guid isPermaLink="false">licenseleak:2026-02-16-fp-gates</guid>
      <pubDate>Mon, 16 Feb 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ops</category>
      <description><![CDATA[<p>We now run a vendored mini-corpus on every pull request - a regression in precision blocks the merge.</p><ul><li>Vendored mini-corpus catches scanner false positives before they ship.</li><li>One-command refresh keeps the noise-floor pins current.</li><li>Real public monorepo added as a smoke test so we always test against something we don&apos;t control.</li></ul>]]></description>
    </item>
    <item>
      <title>Polyglot lockfile coverage and the 50k-file pipeline gate</title>
      <link>https://licenseleak.com/changelog#2026-02-09-large-repo-tests</link>
      <guid isPermaLink="false">licenseleak:2026-02-09-large-repo-tests</guid>
      <pubDate>Mon, 09 Feb 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <description><![CDATA[<p>Scanner now has a real test budget against real repositories, not just synthetic fixtures.</p><ul><li>Polyglot lockfile coverage matrix (npm, pip, gem, cargo, composer) under one test.</li><li>Memory ceiling regression gate runs the full pipeline against 50k files.</li><li>Snippet matcher noise-floor test on 50k real OSS files.</li><li>Robustness test for 100MB lockfiles - they no longer hang the worker.</li></ul>]]></description>
    </item>
    <item>
      <title>Fail-closed scanner pipeline and CLI walk warnings</title>
      <link>https://licenseleak.com/changelog#2026-02-02-fail-closed</link>
      <guid isPermaLink="false">licenseleak:2026-02-02-fail-closed</guid>
      <pubDate>Mon, 02 Feb 2026 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>security</category>
      <description><![CDATA[<p>If any phase of a scan fails, we stop and tell you - never silently skip findings.</p><ul><li>Pre-clone size gate now applies fail-closed for all tiers, public and private.</li><li>CLI surfaces warnings during the directory walk so you know which files were skipped.</li><li>Pipeline phases now hard-fail on unexpected errors rather than partial-completing.</li></ul>]]></description>
    </item>
    <item>
      <title>Local CLI quickstart on the dashboard and pricing page</title>
      <link>https://licenseleak.com/changelog#2026-01-26-cli-quickstart</link>
      <guid isPermaLink="false">licenseleak:2026-01-26-cli-quickstart</guid>
      <pubDate>Mon, 26 Jan 2026 14:00:00 GMT</pubDate>
      <category>docs</category>
      <category>ui</category>
      <description><![CDATA[<p>Discover the `npx licenseleak` CLI without leaving the product.</p><ul><li>Dashboard onboarding now documents the local CLI in three lines.</li><li>Pricing page shows scoped API keys and the CLI quickstart side-by-side.</li><li>Automated accessibility audit runs against every marketing route.</li></ul>]]></description>
    </item>
    <item>
      <title>Outbound webhook SSRF fix, public-endpoint DoS hardening</title>
      <link>https://licenseleak.com/changelog#2026-01-19-security-fixes</link>
      <guid isPermaLink="false">licenseleak:2026-01-19-security-fixes</guid>
      <pubDate>Mon, 19 Jan 2026 14:00:00 GMT</pubDate>
      <category>security</category>
      <description><![CDATA[<p>Three security findings remediated and a billing-bypass closed.</p><ul><li>Outbound webhooks now block private-network targets (SSRF fix) and enforce per-tier delivery rules.</li><li>Public endpoints (share, verify, leaderboard) hardened against denial-of-service.</li><li>Closed a billing entitlement bypass on the scan-retry endpoint.</li></ul>]]></description>
    </item>
    <item>
      <title>Per-key API scopes and leak detection</title>
      <link>https://licenseleak.com/changelog#2026-01-12-api-key-scopes</link>
      <guid isPermaLink="false">licenseleak:2026-01-12-api-key-scopes</guid>
      <pubDate>Mon, 12 Jan 2026 14:00:00 GMT</pubDate>
      <category>api</category>
      <category>security</category>
      <description><![CDATA[<p>Issue least-privilege keys for CI and revoke them per environment.</p><ul><li>API keys are now scoped to roles like `scan:submit` or `read-only`.</li><li>If a key shows up in an unexpected place or hasn&apos;t been used in 90 days, we flag it.</li><li>Failed inbound webhook deliveries surface in the admin dashboard for triage.</li></ul>]]></description>
    </item>
    <item>
      <title>`npx licenseleak` CLI and push-triggered scans</title>
      <link>https://licenseleak.com/changelog#2026-01-05-cli-and-push-scans</link>
      <guid isPermaLink="false">licenseleak:2026-01-05-cli-and-push-scans</guid>
      <pubDate>Mon, 05 Jan 2026 14:00:00 GMT</pubDate>
      <category>api</category>
      <category>scanner</category>
      <description><![CDATA[<p>A local-first CLI that runs the same scanner you get on the website, plus auto-scans on every push.</p><ul><li>`npx licenseleak` works offline against any local folder, no signup required for the public path.</li><li>Push-triggered scans show on each repo card so you always see the latest result.</li><li>Configure auto-scan branches and skip-when-no-deps from the UI.</li></ul>]]></description>
    </item>
    <item>
      <title>Auto-scan on every push, with a GitHub account section in Settings</title>
      <link>https://licenseleak.com/changelog#2025-12-22-auto-scan</link>
      <guid isPermaLink="false">licenseleak:2025-12-22-auto-scan</guid>
      <pubDate>Mon, 22 Dec 2025 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ui</category>
      <description><![CDATA[<p>Connect GitHub once and we run a fresh scan every time you push to a watched branch.</p><ul><li>GitHub App connection is now managed from a dedicated Settings section.</li><li>Auto-scan triggers on push events with no per-repo configuration required.</li><li>Self-serve API key generation for Agency and Diligence plans.</li></ul>]]></description>
    </item>
    <item>
      <title>Inline GitHub connect on the dashboard and scan flow</title>
      <link>https://licenseleak.com/changelog#2025-12-15-inline-github-connect</link>
      <guid isPermaLink="false">licenseleak:2025-12-15-inline-github-connect</guid>
      <pubDate>Mon, 15 Dec 2025 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>platform</category>
      <description><![CDATA[<p>Hit a private repo and need GitHub access? Connect right there - no detour.</p><ul><li>Inline GitHub connect button appears on the dashboard repo card and on scan failure pages.</li><li>Repo URL pasted before signup is now persisted through Clerk and reappears on the new-scan page.</li></ul>]]></description>
    </item>
    <item>
      <title>Diligence sales pipeline: admin UI and spam blocking</title>
      <link>https://licenseleak.com/changelog#2025-12-08-diligence-leads</link>
      <guid isPermaLink="false">licenseleak:2025-12-08-diligence-leads</guid>
      <pubDate>Mon, 08 Dec 2025 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>platform</category>
      <description><![CDATA[<p>Real lead management for the Diligence tier, with obvious spam filtered before it hits the inbox.</p><ul><li>Admin view for browsing, contacting, and closing Diligence sales leads.</li><li>Honeypot + heuristic spam blocking on the Diligence sales form.</li><li>Status page shows real incidents from the ops log instead of a hardcoded &quot;all good.&quot;</li></ul>]]></description>
    </item>
    <item>
      <title>Verifiable demo report and per-user scan-complete webhook</title>
      <link>https://licenseleak.com/changelog#2025-12-01-demo-report</link>
      <guid isPermaLink="false">licenseleak:2025-12-01-demo-report</guid>
      <pubDate>Mon, 01 Dec 2025 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>api</category>
      <description><![CDATA[<p>Try the signed-PDF flow without uploading anything, and get a webhook when your scan is done.</p><ul><li>Demo report at `/r/acme-co-payments-api` you can verify end-to-end without signing up.</li><li>Per-user, HMAC-signed scan-complete webhook for any plan that wants one.</li></ul>]]></description>
    </item>
    <item>
      <title>/.well-known/security.txt and a breach-response runbook</title>
      <link>https://licenseleak.com/changelog#2025-11-24-security-disclosure</link>
      <guid isPermaLink="false">licenseleak:2025-11-24-security-disclosure</guid>
      <pubDate>Mon, 24 Nov 2025 14:00:00 GMT</pubDate>
      <category>security</category>
      <category>docs</category>
      <description><![CDATA[<p>If you find a vulnerability, you now have a documented way to tell us.</p><ul><li>Published `/.well-known/security.txt` with reporting contacts and policy.</li><li>Internal breach-response runbook so the team isn&apos;t improvising under pressure.</li></ul>]]></description>
    </item>
    <item>
      <title>Real per-day uptime on the status page</title>
      <link>https://licenseleak.com/changelog#2025-11-17-real-status</link>
      <guid isPermaLink="false">licenseleak:2025-11-17-real-status</guid>
      <pubDate>Mon, 17 Nov 2025 14:00:00 GMT</pubDate>
      <category>ops</category>
      <description><![CDATA[<p>The /status sparkline reflects actual measured availability, not a placeholder.</p><ul><li>Per-day API uptime tracked from real request logs.</li><li>Status sparkline updates daily and feeds the homepage &quot;system secure&quot; badge.</li><li>Diligence sales form now writes to a real submission endpoint.</li></ul>]]></description>
    </item>
    <item>
      <title>Consent gate for non-essential SDKs and JSON-LD for SEO</title>
      <link>https://licenseleak.com/changelog#2025-11-10-consent-and-seo</link>
      <guid isPermaLink="false">licenseleak:2025-11-10-consent-and-seo</guid>
      <pubDate>Mon, 10 Nov 2025 14:00:00 GMT</pubDate>
      <category>security</category>
      <category>docs</category>
      <description><![CDATA[<p>Analytics and chat widgets only load after consent, and search engines now have machine-readable context for our pages.</p><ul><li>Consent gate helper means non-essential SDKs (analytics, chat) don&apos;t load before you accept.</li><li>JSON-LD structured data added to home, about, faq, and security for richer search snippets.</li></ul>]]></description>
    </item>
    <item>
      <title>Audited /security claims and unique social-share previews</title>
      <link>https://licenseleak.com/changelog#2025-11-03-security-audit</link>
      <guid isPermaLink="false">licenseleak:2025-11-03-security-audit</guid>
      <pubDate>Mon, 03 Nov 2025 14:00:00 GMT</pubDate>
      <category>security</category>
      <category>ui</category>
      <description><![CDATA[<p>Every claim on the trust page now maps to something we actually do, and every page has its own social-share image.</p><ul><li>Audited and corrected the /security trust page so every line maps to running code.</li><li>Each page generates a unique Open Graph preview image.</li><li>Product screenshot added to the About page.</li></ul>]]></description>
    </item>
    <item>
      <title>GDPR cookie banner and a real /status page</title>
      <link>https://licenseleak.com/changelog#2025-10-27-gdpr-banner</link>
      <guid isPermaLink="false">licenseleak:2025-10-27-gdpr-banner</guid>
      <pubDate>Mon, 27 Oct 2025 14:00:00 GMT</pubDate>
      <category>security</category>
      <category>ui</category>
      <description><![CDATA[<p>Compliance basics done properly - and the status page reflects real signals.</p><ul><li>GDPR-compliant cookie / consent banner with granular categories.</li><li>/status page now reflects real uptime signals - no fake 100%.</li><li>Replaced the placeholder licenseleak.example domain everywhere with the real domain.</li></ul>]]></description>
    </item>
    <item>
      <title>Product screenshots on home and pricing, /security trust page</title>
      <link>https://licenseleak.com/changelog#2025-10-20-product-screenshots</link>
      <guid isPermaLink="false">licenseleak:2025-10-20-product-screenshots</guid>
      <pubDate>Mon, 20 Oct 2025 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>docs</category>
      <description><![CDATA[<p>You can see the product before clicking sign-up, and we have a dedicated trust page.</p><ul><li>Home and pricing pages now show real product screenshots, not just text.</li><li>New /security page documents how we handle code, encryption, and access.</li><li>Scan-complete email is wired up properly (or removed where the promise wasn&apos;t being kept).</li></ul>]]></description>
    </item>
    <item>
      <title>Launched SEO, Open Graph, robots and sitemap</title>
      <link>https://licenseleak.com/changelog#2025-10-13-seo-launch</link>
      <guid isPermaLink="false">licenseleak:2025-10-13-seo-launch</guid>
      <pubDate>Mon, 13 Oct 2025 14:00:00 GMT</pubDate>
      <category>docs</category>
      <description><![CDATA[<p>Search engines and social cards now have everything they need.</p><ul><li>Per-page meta tags, Open Graph, Twitter cards, canonical URLs.</li><li>robots.txt and sitemap.xml shipped.</li><li>Automated tests for the LicenseLeak fix-PR generator added to CI.</li></ul>]]></description>
    </item>
    <item>
      <title>Dashboard fails loudly, failed scans auto-refund</title>
      <link>https://licenseleak.com/changelog#2025-10-06-loud-failures</link>
      <guid isPermaLink="false">licenseleak:2025-10-06-loud-failures</guid>
      <pubDate>Mon, 06 Oct 2025 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>billing</category>
      <description><![CDATA[<p>When something goes wrong, the product tells you - and your money comes back.</p><ul><li>Dashboard now surfaces an obvious error when the API returns HTML (typically a deploy hiccup) instead of silently breaking.</li><li>Failed Stripe-paid scans are now auto-refunded via real Stripe refunds.</li><li>Share-link upgrade nudge appears inside the app when you&apos;d benefit from a higher tier.</li></ul>]]></description>
    </item>
    <item>
      <title>Rate limits work correctly across multiple replicas</title>
      <link>https://licenseleak.com/changelog#2025-09-29-replica-rate-limits</link>
      <guid isPermaLink="false">licenseleak:2025-09-29-replica-rate-limits</guid>
      <pubDate>Mon, 29 Sep 2025 14:00:00 GMT</pubDate>
      <category>platform</category>
      <category>scanner</category>
      <description><![CDATA[<p>We can scale the API horizontally without the rate limiter getting confused.</p><ul><li>Rate limiting now uses a shared store so it stays consistent across replicas.</li><li>Snippet matcher detects longer and renamed copyleft snippets that previously slipped through.</li><li>Admin ops dashboard shows queue health (depth, lag, oldest job).</li></ul>]]></description>
    </item>
    <item>
      <title>Launch-day load test and the high-demand banner</title>
      <link>https://licenseleak.com/changelog#2025-09-22-launch-day-prep</link>
      <guid isPermaLink="false">licenseleak:2025-09-22-launch-day-prep</guid>
      <pubDate>Mon, 22 Sep 2025 14:00:00 GMT</pubDate>
      <category>ops</category>
      <category>ui</category>
      <description><![CDATA[<p>We rehearsed launch-day traffic and added a banner so users know when we&apos;re catching up.</p><ul><li>Launch-day load and queue stress test run against staging - results captured for next time.</li><li>&quot;High demand&quot; banner appears on the dashboard during launch-day spikes so users aren&apos;t confused by extra wait.</li><li>Real Stripe refunds for failed paid scans (replacing the placeholder credit flow).</li></ul>]]></description>
    </item>
    <item>
      <title>Account-deletion confirmation email and SSRF hardening</title>
      <link>https://licenseleak.com/changelog#2025-09-15-account-deletion</link>
      <guid isPermaLink="false">licenseleak:2025-09-15-account-deletion</guid>
      <pubDate>Mon, 15 Sep 2025 14:00:00 GMT</pubDate>
      <category>security</category>
      <description><![CDATA[<p>We confirm destructive actions and we don&apos;t let scans phone home to private networks.</p><ul><li>Confirmation email when you delete your account, with a 30-day grace period.</li><li>Repo cloning hardened against SSRF and abuse - private IPs and link-local addresses are blocked.</li></ul>]]></description>
    </item>
    <item>
      <title>Scan failure UX, async completion notifications, retention policy</title>
      <link>https://licenseleak.com/changelog#2025-09-08-data-retention</link>
      <guid isPermaLink="false">licenseleak:2025-09-08-data-retention</guid>
      <pubDate>Mon, 08 Sep 2025 14:00:00 GMT</pubDate>
      <category>ui</category>
      <category>docs</category>
      <description><![CDATA[<p>When something fails, we tell you what to do. And we now publish exactly what we keep.</p><ul><li>Scan failure pages explain what happened and the next step (retry, contact us, switch tier).</li><li>Async completion notifications via email when a long scan finishes.</li><li>Data retention and repo-privacy policy published.</li><li>API client code generator repaired so SDK users get correct types again.</li></ul>]]></description>
    </item>
    <item>
      <title>Scanner corpus validation and an uptime page</title>
      <link>https://licenseleak.com/changelog#2025-09-01-corpus-and-status</link>
      <guid isPermaLink="false">licenseleak:2025-09-01-corpus-and-status</guid>
      <pubDate>Mon, 01 Sep 2025 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <category>ops</category>
      <description><![CDATA[<p>Real validation of what we detect, and a public page showing whether we&apos;re up.</p><ul><li>Scanner corpus populated and validated end-to-end with precision/recall numbers.</li><li>Public /status page with uptime history and current incidents.</li><li>Removed fictional testimonials from the landing page (we&apos;ll bring real ones back later).</li></ul>]]></description>
    </item>
    <item>
      <title>Legal pages and end-to-end tests</title>
      <link>https://licenseleak.com/changelog#2025-08-25-legal-and-tests</link>
      <guid isPermaLink="false">licenseleak:2025-08-25-legal-and-tests</guid>
      <pubDate>Mon, 25 Aug 2025 14:00:00 GMT</pubDate>
      <category>docs</category>
      <category>ops</category>
      <description><![CDATA[<p>Privacy, Terms, and an MSA you can read - plus broad e2e coverage.</p><ul><li>Privacy Policy, Terms of Service, and Master Service Agreement published.</li><li>Broad end-to-end Playwright suite covering signup → scan → refund → admin.</li><li>Pricing page display logic updated to match plan changes.</li></ul>]]></description>
    </item>
    <item>
      <title>Scanner engine: AST fingerprinting and signed PDF reports</title>
      <link>https://licenseleak.com/changelog#2025-08-18-scanner-engine</link>
      <guid isPermaLink="false">licenseleak:2025-08-18-scanner-engine</guid>
      <pubDate>Mon, 18 Aug 2025 14:00:00 GMT</pubDate>
      <category>scanner</category>
      <description><![CDATA[<p>The first real version of the scanner engine - AST shingles, vector ANN, signed reports.</p><ul><li>AST shingle fingerprinting normalised so renames and reformats don&apos;t hide a copyleft span.</li><li>Approximate-nearest-neighbor index over a curated AGPL/GPL corpus.</li><li>Signed SHA-256 PDF report you can drop into a data room.</li><li>Risk summary on every scan result and social proof on the home page.</li></ul>]]></description>
    </item>
    <item>
      <title>Foundation: API, database, auth, billing</title>
      <link>https://licenseleak.com/changelog#2025-08-04-foundation</link>
      <guid isPermaLink="false">licenseleak:2025-08-04-foundation</guid>
      <pubDate>Mon, 04 Aug 2025 14:00:00 GMT</pubDate>
      <category>platform</category>
      <description><![CDATA[<p>The first ship of the LicenseLeak product - sign up, pay, run a scan.</p><ul><li>Postgres-backed API with Clerk auth and Stripe billing.</li><li>Three-tier pricing (Free / Pro / Agency) wired through entitlements.</li><li>Webhook security and weekly stats reporting from day one.</li><li>End-to-end license scanning happy path against public GitHub repos.</li></ul>]]></description>
    </item>
  </channel>
</rss>
