> ## Documentation Index
> Fetch the complete documentation index at: https://fossa.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Changelog

> Latest Fossa updates and improvements.

<div className="fossa-changelog-shell">
  <div className="fossa-changelog-filter-sidebar">
    <div className="fossa-changelog-filter-panel" aria-label="Changelog filters">
      <p className="fossa-changelog-filter-heading">Filters</p>

      <div className="fossa-changelog-filter-options">
        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-ai-engine" />

          <span>AI Engine</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-byok" />

          <span>BYOK</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-fossy-rules" />

          <span>Fossy Rules</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-self-hosted" />

          <span>Self-hosted</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-cockpit" />

          <span>Cockpit</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-git-provider" />

          <span>Git Provider</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-cli" />

          <span>CLI</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-security" />

          <span>Security</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-performance" />

          <span>Performance</span>
        </label>

        <label className="fossa-changelog-filter-button">
          <input className="fossa-changelog-filter-control" type="checkbox" id="fossa-filter-ux-interface" />

          <span>UX & Interface</span>
        </label>
      </div>
    </div>
  </div>

  <div className="fossa-changelog-release">
    <div className="fossa-changelog-meta">
      <span className="fossa-changelog-date">September 26, 2026</span>
    </div>

    <div className="fossa-changelog-content">
      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Improvements</div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-ai-engine filter-byok">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Native Multi-Provider LLM & Fallback Failover</div>
          <p className="fossa-changelog-copy">Fossa now provides first-class native support for all major AI providers directly through environment variables and in-app BYOK settings. You can seamlessly switch between Anthropic Claude (3.5 & 3.7 Sonnet), OpenAI (GPT-4o, o3-mini), Google Gemini (2.0 Flash & Pro), OpenRouter, and any custom OpenAI-compatible endpoint with zero proxy overhead.</p>
          <p className="fossa-changelog-copy">We also introduced an automatic fallback failover engine. If your primary LLM encounters rate limits (429 HTTP), quota exhaustion, or temporary vendor outages, Fossa automatically falls back to your configured secondary provider without interrupting ongoing code reviews.</p>
        </div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-byok filter-performance">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Per-Repository Model Routing</div>
          <p className="fossa-changelog-copy">Organizations are no longer restricted to a single model family across all codebases. You can assign cost-effective, high-speed models for routine documentation and frontend repositories, while routing core security and architecture reviews to frontier reasoning models.</p>
        </div>
      </div>

      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Bug Fixes</div>

        <div className="fossa-changelog-fix-list">
          <div className="fossa-changelog-fix fossa-changelog-filterable filter-ai-engine">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Stream Chunk Buffering:</strong> Fixed stream truncation on extremely large multi-file diffs when reviewing pull requests containing over 1,500 changed lines.</p>
          </div>

          <div className="fossa-changelog-fix fossa-changelog-filterable filter-byok">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Reasoning Parameters:</strong> Normalized reasoning effort and temperature settings across Anthropic and Google Gemini APIs.</p>
          </div>
        </div>
      </div>

      <p className="fossa-changelog-empty">No changelog entries for this filter yet.</p>
    </div>
  </div>

  <div className="fossa-changelog-release">
    <div className="fossa-changelog-meta">
      <span className="fossa-changelog-date">September 20, 2026</span>
    </div>

    <div className="fossa-changelog-content">
      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Improvements</div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-self-hosted filter-performance">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Hardened Production Self-Hosted Docker Stack</div>
          <p className="fossa-changelog-copy">Self-hosting Fossa is now cleaner and more resilient than ever. The unified Docker Compose setup runs the NestJS REST API, asynchronous worker, webhook ingestion relay, and Next.js 15 dashboard with automated health checks, pre-configured database migrations, and RabbitMQ quorum queues.</p>
          <p className="fossa-changelog-copy">The worker pipeline implements the transactional outbox relay pattern and idempotent inbox claims, guaranteeing that webhook events from GitHub, GitLab, Bitbucket, Azure Repos, and Forgejo are processed reliably even during network restarts.</p>
        </div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-git-provider filter-security">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Automated Schema Evolution & Health Checks</div>
          <p className="fossa-changelog-copy">TypeORM PostgreSQL migrations and MongoDB audit history initializations now run automatically on container startup. Container health probes continuously monitor RabbitMQ queue backlog and database pool health.</p>
        </div>
      </div>

      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Bug Fixes</div>

        <div className="fossa-changelog-fix-list">
          <div className="fossa-changelog-fix fossa-changelog-filterable filter-self-hosted">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Inbox Claim Locks:</strong> Resolved a lock contention edge-case where rapid consecutive git push events could delay job scheduling.</p>
          </div>

          <div className="fossa-changelog-fix fossa-changelog-filterable filter-performance">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Connection Pooling:</strong> Optimized Postgres connection pooling under sustained concurrent webhook ingestion.</p>
          </div>
        </div>
      </div>

      <p className="fossa-changelog-empty">No changelog entries for this filter yet.</p>
    </div>
  </div>

  <div className="fossa-changelog-release">
    <div className="fossa-changelog-meta">
      <span className="fossa-changelog-date">September 14, 2026</span>
    </div>

    <div className="fossa-changelog-content">
      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Improvements</div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-fossy-rules filter-ai-engine">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Fossy Rules Studio & Conversational Context Extraction</div>
          <p className="fossa-changelog-copy">Fossy now proactively learns your engineering team's conventions. When you explain an architectural rule, provide team style guidance, or clarify why a suggestion doesn't apply inside a pull request comment, Fossy detects the convention and proposes saving it as an active Fossy Rule.</p>
          <p className="fossa-changelog-copy">You maintain total control: Fossy displays the extracted rule for review and requests developer confirmation before persisting it to your organization or repository rule library.</p>
        </div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-fossy-rules filter-ux-interface">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Hierarchical Inheritance & Dry Run Previews</div>
          <p className="fossa-changelog-copy">Define coding guidelines at the organization level that automatically cascade to all repositories, or override rules for specialized services using in-repo <code>fossa-config.yml</code>. With Dry Run mode, you can test rule changes against past pull requests to inspect suggestion precision before enabling rules in production.</p>
        </div>
      </div>

      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Bug Fixes</div>

        <div className="fossa-changelog-fix-list">
          <div className="fossa-changelog-fix fossa-changelog-filterable filter-fossy-rules">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Glob Path Matching:</strong> Fixed path glob matching for directory-scoped rules targeting deeply nested test files (<code>\*\*/\*.spec.ts</code>).</p>
          </div>

          <div className="fossa-changelog-fix fossa-changelog-filterable filter-fossy-rules filter-ux-interface">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Inheritance Toggle:</strong> Added optimistic UI feedback when toggling organization rule inheritance with automatic rollback on network error.</p>
          </div>
        </div>
      </div>

      <p className="fossa-changelog-empty">No changelog entries for this filter yet.</p>
    </div>
  </div>

  <div className="fossa-changelog-release">
    <div className="fossa-changelog-meta">
      <span className="fossa-changelog-date">September 8, 2026</span>
    </div>

    <div className="fossa-changelog-content">
      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Improvements</div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-cockpit filter-ux-interface">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Cockpit Engineering Hub & Shareable Review Views</div>
          <p className="fossa-changelog-copy">Cockpit provides your engineering leads with real-time insight into active code reviews, suggestion acceptance rates, pull request turnaround time, and detected quality trends across all repositories.</p>
          <p className="fossa-changelog-copy">All applied filters (time range, repositories, severity, and status) are synchronized directly to the browser URL, allowing engineers to copy and share exact filtered views with team members on Slack or Discord.</p>

          <video autoPlay loop muted playsInline preload="auto" className="fossa-changelog-video">
            <source src="https://mintcdn.com/fossa/YFVxxc1qJ38rruEN/videos/cockpit.mp4?fit=max&auto=format&n=YFVxxc1qJ38rruEN&q=85&s=7406179e19f70aa9286a5b83ef62d0b4" type="video/mp4" data-path="videos/cockpit.mp4" />
          </video>
        </div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-cockpit filter-byok">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Granular Token Accounting & Spend Visibility</div>
          <p className="fossa-changelog-copy">Full visibility into token consumption across models, teams, and repositories. Track prompt tokens, completion tokens, and estimated cost metrics in real time to prevent surprise cloud bills.</p>

          <video autoPlay loop muted playsInline preload="auto" className="fossa-changelog-video">
            <source src="https://mintcdn.com/fossa/YFVxxc1qJ38rruEN/videos/token-usage.mp4?fit=max&auto=format&n=YFVxxc1qJ38rruEN&q=85&s=5e2ad7fc0364a4a7c1bdeb7a0cb407c9" type="video/mp4" data-path="videos/token-usage.mp4" />
          </video>
        </div>
      </div>

      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Bug Fixes</div>

        <div className="fossa-changelog-fix-list">
          <div className="fossa-changelog-fix fossa-changelog-filterable filter-cockpit">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Timezone Graph Alignment:</strong> Fixed local timezone display calculation on Cockpit 30-day velocity charts.</p>
          </div>

          <div className="fossa-changelog-fix fossa-changelog-filterable filter-security">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">RBAC Scoping:</strong> Enhanced team policy isolation to prevent unauthorized cross-repository telemetry reads.</p>
          </div>
        </div>
      </div>

      <p className="fossa-changelog-empty">No changelog entries for this filter yet.</p>
    </div>
  </div>

  <div className="fossa-changelog-release">
    <div className="fossa-changelog-meta">
      <span className="fossa-changelog-date">September 1, 2026</span>
    </div>

    <div className="fossa-changelog-content">
      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Improvements</div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-self-hosted filter-ai-engine">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Fossa 2.0 Open Source Platform Launch</div>
          <p className="fossa-changelog-copy">We are thrilled to release Fossa 2.0 as a 100% open-source, community-driven AI code review platform. Built for engineering teams that demand complete data sovereignty, Fossa delivers enterprise-grade automated pull request reviews without locking your proprietary source code into third-party SaaS vendors.</p>
          <p className="fossa-changelog-copy">Universal git provider integration covers GitHub, GitLab, Bitbucket, Azure Repos, and Forgejo out of the box with zero complex webhooks configuration.</p>
        </div>

        <div className="fossa-changelog-item fossa-changelog-filterable filter-cli filter-ux-interface">
          <div role="heading" aria-level="3" className="fossa-changelog-title">Fossa CLI for Local Reviews & Pre-Commit Checks</div>
          <p className="fossa-changelog-copy">Review uncommitted diffs and staged branches directly from your developer terminal using <code>fossa review</code>. Developers get instant architectural feedback before opening pull requests, reducing review turnaround latency and keeping CI pipelines green.</p>
        </div>
      </div>

      <div className="fossa-changelog-section">
        <div role="heading" aria-level="2" className="fossa-changelog-section-label">Bug Fixes</div>

        <div className="fossa-changelog-fix-list">
          <div className="fossa-changelog-fix fossa-changelog-filterable filter-performance">
            <p className="fossa-changelog-copy"><strong className="fossa-changelog-fix-label">Initial Launch Optimization:</strong> Optimized container images, reduced bundle footprints, and added automated linting pipelines.</p>
          </div>
        </div>
      </div>

      <p className="fossa-changelog-empty">No changelog entries for this filter yet.</p>
    </div>
  </div>
</div>

<div className="fossa-changelog-rss-source" aria-hidden="true">
  <Update label="September 26, 2026 - Native Multi-Provider LLM & Failover" tags={["AI Engine", "BYOK"]}>
    Fossa now supports Anthropic Claude, OpenAI, Google Gemini, OpenRouter, and custom endpoints with automatic fallback failover.
  </Update>

  <Update label="September 20, 2026 - Hardened Production Self-Hosted Docker Stack" tags={["Self-hosted", "Performance"]}>
    Unified Docker Compose deployment with RabbitMQ quorum queues, TypeORM PostgreSQL migrations, and transactional outbox relay.
  </Update>

  <Update label="September 14, 2026 - Fossy Rules Studio & Review Directives" tags={["Fossy Rules", "AI Engine"]}>
    Conversational rule learning from PR discussions, hierarchical inheritance, and dry run simulation previews.
  </Update>

  <Update label="September 8, 2026 - Cockpit Developer Hub & Review Telemetry" tags={["Cockpit", "UX & Interface"]}>
    Real-time review analytics, shareable URL filters, and granular token usage tracking across repositories.
  </Update>

  <Update label="September 1, 2026 - Fossa 2.0 Open Source Platform Launch" tags={["Self-hosted", "AI Engine", "CLI"]}>
    Complete open-source AI code review platform supporting GitHub, GitLab, Bitbucket, Azure Repos, and Forgejo.
  </Update>
</div>

<script>
  {`
    (() => {
      const filterSelector = ".fossa-changelog-filter-control";
      const itemSelector = ".fossa-changelog-filterable";
      const sectionSelector = ".fossa-changelog-section";
      const releaseSelector = ".fossa-changelog-release";

      const applyChangelogFilters = () => {
          const root = document.querySelector(".fossa-changelog-shell");

          if (!root) {
              return;
          }

          const selectedFilters = Array.from(root.querySelectorAll(filterSelector))
              .filter((input) => input.checked)
              .map((input) => input.id.replace("fossa-filter-", "filter-"));

          const isFiltered = selectedFilters.length > 0;

          root.querySelectorAll(filterSelector).forEach((input) => {
              input.closest(".fossa-changelog-filter-button")?.classList.toggle("is-selected", input.checked);
          });

          root.querySelectorAll(itemSelector).forEach((item) => {
              const shouldShow = !isFiltered || selectedFilters.some((filter) => item.classList.contains(filter));
              item.hidden = !shouldShow;
          });

          root.querySelectorAll(sectionSelector).forEach((section) => {
              const hasVisibleItems = Array.from(section.querySelectorAll(itemSelector)).some((item) => !item.hidden);
              section.hidden = isFiltered && !hasVisibleItems;
          });

          root.querySelectorAll(releaseSelector).forEach((release) => {
              const hasVisibleItems = Array.from(release.querySelectorAll(itemSelector)).some((item) => !item.hidden);
              release.hidden = isFiltered && !hasVisibleItems;
          });
      };

      document.addEventListener("change", (event) => {
          if (event.target.matches(filterSelector)) {
              applyChangelogFilters();
          }
      });

      window.addEventListener("pageshow", applyChangelogFilters);
      requestAnimationFrame(applyChangelogFilters);
    })();
    `}
</script>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.