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

# Changelog

> Keep up with the latest releases, improvements, and fixes.

<Update label="June 18, 2026" description="v1.88.1">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.88.1</h2>

  This release pushes automation deeper into your software supply chain. Chainloop can now scan repositories, assess the vulnerabilities it finds, and open verified remediation pull requests entirely in managed sandboxes — no CI wiring required — and validate pull requests server-side. A managed LLM gateway with usage credits powers these AI features out of the box, a guided onboarding wizard streamlines project and workflow setup, and the vulnerabilities and risk-assessment experience gets a focused overhaul.

  ## Automated Security Scanning in Managed Sandboxes

  Chainloop now runs security scans and AI agents for you in isolated, managed sandboxes — no CI configuration required. When you connect a repository, the platform can automatically scan it, assess the [vulnerabilities](/concepts/vulnerability-management) it finds, and open remediation pull requests, all server-side.

  **AI Auto-Assessment & Remediation (Preview)** — The Vulnerabilities Agent investigates each finding against your source code, records a signed [risk assessment](/concepts/vulnerability-management#risk-assessments), and can open a fix pull request. Remediation now independently verifies its own fixes before proposing them: dependency and image-digest bumps are re-scanned with grype, and the outcome — resolved, still-present, or unable-to-verify — is reported in a dedicated section of the pull request, so a fix is something Chainloop proves rather than asserts.

  <Frame>
    <img src="https://mintcdn.com/chainloop/bST_GGU7Nan669WX/changelog/autoremediation.png?fit=max&auto=format&n=bST_GGU7Nan669WX&q=85&s=53493ccaeafd66dc63346cdbf106cd01" alt="Automated PR for auto remediation" width="858" height="277" data-path="changelog/autoremediation.png" />
  </Frame>

  **Infrastructure-as-Code Scanning** — A new managed IaC scan task runs [Checkov](https://www.checkov.io) over your source tree and attests the resulting [SARIF report](/concepts/material-types), feeding the existing `iac-misconfiguration` and `iac-scan-present` compliance policies. It honors a `.checkov.yaml` at your repository root.

  **Hardened by Design** — Agents that operate over untrusted project code receive a platform security preamble at the provider's system instruction tier, so it outranks any instructions embedded in the code. Each sandbox gets an ephemeral, per-run LLM gateway key, and repository-supplied agent configuration is stripped from untrusted checkouts.

  **Automated PR Validation** — Chainloop now validates pull requests server-side, without the `pr-attestation.yml` GitHub Action. When a repository's project has a managed `pr-validation` workflow, each pull request event generates a `CHAINLOOP_PR_INFO` attestation, evaluates [policies](/guides/pr-policies-control-gate) against the pull request metadata, and surfaces the results in the Chainloop PR comment alongside a dedicated **Chainloop PR Validation** GitHub check run.

  ## Managed LLM Gateway with Usage Credits

  Chainloop Cloud now includes a managed LLM gateway backed by a monthly credit pool, so AI-powered features like auto-assessment and remediation work out of the box — no [LLM provider key](/reference/llm-support) required. Each organization gets a credit allowance that draws down as AI capabilities are used, and a usage gauge on the Plan & Billing page shows current spend against the allowance. A structured entitlement catalog makes it clear which capabilities are available on your plan, and bring-your-own-key providers are never metered or gated.

  <Frame>
    <img src="https://mintcdn.com/chainloop/bST_GGU7Nan669WX/changelog/credits-billing-gauge.png?fit=max&auto=format&n=bST_GGU7Nan669WX&q=85&s=8c372e80074662a165a37dfac89d4e38" alt="Managed LLM Gateway with Usage Credits" width="926" height="532" data-path="changelog/credits-billing-gauge.png" />
  </Frame>

  ## Project & Workflow Onboarding Wizard

  Setting up a project is now a guided, multi-step flow. The redesigned Create Project wizard lets you pick a live GitHub repository (or connect one inline), prefill and link it, and configure [workflow](/concepts/workflows) templates — managed, manual, or off — in a single submit. Delivery mode and inputs of a template-backed workflow can be edited in place from the workflow edit form, and connecting a repository now auto-onboards an AI coding session workflow so `chainloop trace` attestations land on a ready workflow without a separate install step.

  <Frame>
    <img src="https://mintcdn.com/chainloop/bST_GGU7Nan669WX/changelog/sandbox-workflows.png?fit=max&auto=format&n=bST_GGU7Nan669WX&q=85&s=5e9e1368e08b2b426ab87425afee32b2" alt="Project & Workflow Onboarding Wizard" width="713" height="651" data-path="changelog/sandbox-workflows.png" />
  </Frame>

  **Refined Setup Guides** — The setup guides shown after onboarding a workflow now lead with a description of what each flow does and why it matters, use syntax-highlighted snippets, and surface documentation through an "Open docs" button in the header.

  ## Sharper Vulnerabilities & Risk Assessments

  The [vulnerabilities and risk-assessment](/concepts/vulnerability-management) experience got a focused overhaul. Risk-assessment tables now default to the findings that need attention — Affected and Under Investigation — with clearable filter badges, a new **Fixable** column showing the agent's fix verdict, and a **Fixed Version** column on the vulnerabilities table. Assessment actions are clearer too: Assess or Re-assess with AI or manually, with **Create PR fix** promoted to the primary action and a fix-confidence tooltip. You can also filter by multiple statuses at once — the CLI `--status` flag is now repeatable.

  <Frame>
    <img src="https://mintcdn.com/chainloop/bST_GGU7Nan669WX/changelog/risk-assessment-filters.png?fit=max&auto=format&n=bST_GGU7Nan669WX&q=85&s=d9160ec7077b838a2373d7fd43104278" alt="Sharper Vulnerabilities & Risk Assessments" width="950" height="605" data-path="changelog/risk-assessment-filters.png" />
  </Frame>

  **SBOM-Embedded Vulnerability Ingestion** — You can now ingest the vulnerabilities embedded in a [CycloneDX SBOM](/concepts/material-types) as Chainloop findings bound to a project version, so released versions reflect a real vulnerability posture and migrated assessments have a posture to bind to.

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Windows CLI binaries</strong> — The `chainloop` CLI is now built and published for Windows (amd64 and arm64); download the `.exe` directly from the manual download dialog.<br />
        * <strong>SonarQube transform filters</strong> — `chainloop transform sonarqube` gains `--software-qualities` and `--rules` flags to fetch Maintainability and Reliability findings (dead, unreachable, and unused code), not just Security.<br />
        * <strong>Evidence sidebar from the policies tab</strong> — Evidence names in a workflow run's Policies tab are now clickable, opening the evidence details sidebar; the "Material" and "Material Type" columns are renamed to "Evidence" and "Evidence Type".<br />
        * <strong>CAS usage breakdown for any backend</strong> — The storage usage card now appears for bring-your-own [storage backends](/concepts/cas-backend) too, showing the uploaded, downloaded, stored, and deduplication-savings breakdown.<br />
        * <strong>New evidence types</strong> — Four new [material types](/concepts/material-types): Sysinternals AccessChk output, CERT/CC Dranzer output, OSSF Scorecard JSON, and Radamsa fuzzing reports and crashes.<br />
        * <strong>Project-deletion audit log</strong> — Deleting a project now emits an audit log event.<br />
        * <strong>Custom CAS storage backends</strong> — A contact-us prompt for organizations that want a custom [CAS storage backend](/concepts/cas-backend).<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="blue" size="sm">Frontend</Badge> Send the S3 region when rotating CAS backend credentials.<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Show the organization creation dialog above the org switcher.<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Avoid `crypto.randomUUID` for template instance keys so creation works across more browser contexts.<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Gate repository listing on GitHub App installation.<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Update the frontend base image to remediate CVE-2026-34181.<br />
        * <Badge color="orange" size="sm">CLI</Badge> Prefer `$CHAINLOOP_TOKEN` over user credentials when both are set.<br />
        * <Badge color="orange" size="sm">CLI</Badge> Use the actual pull request head commit instead of the merge commit in GitHub Actions.<br />
        * <Badge color="green" size="sm">Policies</Badge> Add `include_all_versions` to bypass CLI-version gating.<br />
        * <Badge color="gray" size="sm">Backend</Badge> Allow all roles to list workflow templates.<br />
        * <Badge color="gray" size="sm">Backend</Badge> Require signature verification and reject timestamp-only bundles.<br />
        * <Badge color="gray" size="sm">Backend</Badge> Sanitize input and validate column identifiers when parsing JSON filters.<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="June 11, 2026" description="v1.85.2">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.85.2</h2>

  This release simplifies requirement overrides with a direct, status-based flow and introduces new organization settings to make [released versions immutable](/concepts/projects-versions#make-released-versions-immutable) and keep runner-discovered environment variables out of your attestations. The AI coding dashboard gains a score breakdown, workflow runs can now be filtered by version, and agentic workflows add support for Codex and GPT-5.4 alongside custom Azure deployment names for OpenAI.

  ## Improved Requirement Overrides

  Requirement overrides in [compliance frameworks](/concepts/compliance-frameworks) now carry a single explicit status — pass, fail, or in review — and come with a built-in approval process: team members submit an override for review and administrators approve or reject it, as shown in the video below. Every override keeps a traceable history of status changes and conversations, signed and uploaded to the [storage backend of your choice](/concepts/cas-backend), and kept available for auditing.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmq9hpim9024f04js3o4u47zm/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="Improved Requirement Overrides" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## Improved Runs Visualization at the Project Level

  Workflow runs visualization at the [project](/concepts/projects-versions) level got a refresh. Runs can now be filtered by the selected version — a version's Runs tab is scoped to that version, with a link to see runs across all versions and a version filter on the global runs list — and the version overview now shows you which workflows are active, collapsing those without runs. The CLI `workflow-run list` command also gains a `--version` flag.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmq9i5g2300by04ljfqgjh1mn/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="Improved Runs Visualization at the Project Level" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## Immutable Project Versions

  Keep released versions as fixed, auditable points in time. A new organization setting rejects new attestations pushed to a released project version and blocks renaming it. Read more in [Make Released Versions Immutable](/concepts/projects-versions#make-released-versions-immutable).

  <Frame>
    <img src="https://mintcdn.com/chainloop/XXAdF25wKZXY42Xd/changelog/released-versions-immutable.png?fit=max&auto=format&n=XXAdF25wKZXY42Xd&q=85&s=79a26f5e96b8b31f69f338fe7b717c44" alt="Make Released Versions Immutable" width="2584" height="1438" data-path="changelog/released-versions-immutable.png" />
  </Frame>

  ## AI Score Breakdown on the AI Coding Dashboard

  Get a global, real-time view of how AI-assisted coding is scoring across your organization. The [AI coding dashboard](/concepts/ai-coding-sessions) now shows an AI Score Breakdown with the overall quality score and per-criterion averages for the current period, each with a delta versus the previous period and a trend. See the [AI Score reference](/reference/ai-score) for how scores are computed.

  <Frame>
    <img src="https://mintcdn.com/chainloop/XXAdF25wKZXY42Xd/changelog/ai-score-breakdown.png?fit=max&auto=format&n=XXAdF25wKZXY42Xd&q=85&s=9ee39a51e0335e820c2eae4bf4f6dbf8" alt="AI Score Breakdown" width="3096" height="1338" data-path="changelog/ai-score-breakdown.png" />
  </Frame>

  **Pull Requests Get First-Class Treatment** — the redesigned AI Coding Sessions table is built around contributions: each pull request shows its score, AI attribution, lines changed, cost, and duration at a glance.

  <Frame>
    <img src="https://mintcdn.com/chainloop/XXAdF25wKZXY42Xd/changelog/ai-coding-sessions-table.png?fit=max&auto=format&n=XXAdF25wKZXY42Xd&q=85&s=0eb2db68c63ca5d4b12c5a104d989a8e" alt="AI Coding Sessions Table" width="2588" height="910" data-path="changelog/ai-coding-sessions-table.png" />
  </Frame>

  ## Custom Azure Deployment Name for OpenAI

  The OpenAI integration now supports a custom Azure deployment name, required for Azure OpenAI endpoints. This restores Ask, chat, and evidence evaluation for organizations on Azure-hosted models. See the [supported LLM providers](/reference/llm-support) for configuration details.

  ## Codex and GPT-5.4 Support for Agentic Workflows

  All Chainloop agentic workflows now support Codex and GPT-5.4. Organizations that bring their own OpenAI key can use these models right away. See the [supported LLM providers](/reference/llm-support) for the full list.

  ## Skip Runner-Discovered Environment Variables

  A new organization setting lets you opt out of storing the environment variables automatically discovered by the CI runner in your attestations — useful when build metadata should stay inside your CI environment. The contract's explicit environment allow list is still honored, and the setting is available from the organization settings page or via `chainloop organization update --skip-runner-env-vars`. Read more in [Skip Runner-Discovered Environment Variables](/concepts/contracts#skip-storing-runner-discovered-environment-variables).

  <Frame>
    <img src="https://mintcdn.com/chainloop/XXAdF25wKZXY42Xd/changelog/skip-runner-env-vars.png?fit=max&auto=format&n=XXAdF25wKZXY42Xd&q=85&s=8dc61821957a54b9c9549092b61f304f" alt="Skip Runner-Discovered Environment Variables" width="2492" height="212" data-path="changelog/skip-runner-env-vars.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Performance</strong> — the compliance view, artifact downloads, and more are significantly faster, making the UI snappier than ever<br />
        * <strong>Stop a response in Chainloop Ask</strong> — while the assistant is generating an answer, the send button becomes a stop button that aborts the response<br />
        * <strong>New material types</strong> — Yelp detect-secrets baselines and Sysinternals sigcheck output can now be attested as evidence; see [material types](/concepts/material-types)<br />
        * <strong>Dagger module</strong> — attestation init now exposes a mark-latest option
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="purple" size="sm">Compliance</Badge> The current revision now shows who approved it, the history count matches the rail, and the requirement version is shown inline with the passing badge<br />
        * <Badge color="green" size="sm">Policies</Badge> Salt API security findings now emit one rule per gap type with the correct severity, restoring severity-based policy gating<br />
        * <Badge color="gray" size="sm">Backend</Badge> Installing and revoking Slack, GitHub, GitLab, and Linear integrations now requires admin permissions on the underlying HTTP routes<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Integration management actions are hidden for users with the viewer role, and an integration's status icon is now colored by the health of its registrations<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Home prompts re-enable after dismissing the Chainloop Ask chat<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Removed the empty run details column on the workflow runs list and fixed the "See runs for all versions" link to show runs across every version<br />
        * <Badge color="gray" size="sm">Backend</Badge> AI coding sessions without a code diff can now be scored from their transcripts instead of failing<br />
        * <Badge color="gray" size="sm">Backend</Badge> Evidence reconciliation and AI coding session workers now cancel permanently failing jobs instead of retrying them<br />
        * <Badge color="gray" size="sm">Backend</Badge> Precondition errors are now propagated to the client instead of being masked as internal errors<br />
        * <Badge color="orange" size="sm">CLI</Badge> Vulnerability listing degrades gracefully when the assessments lookup fails instead of erroring out<br />
        * <Badge color="orange" size="sm">CLI</Badge> Raised the gRPC receive limit so large responses, such as describing a run with many materials, no longer fail
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="June 3, 2026" description="v1.81.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.81.0</h2>

  Connect a GitHub repository and you get instant security scanning: vulnerability scanning, SBOM generation, CI misconfiguration checks, and secret scanning, all automatic. This release also introduces a new homepage, removes the storage setup burden with automatically provisioned [managed CAS](/guides/deployment/guides/managed-cas), bootstraps compliance the moment you onboard a repository, and connects risk assessments to [Linear](/concepts/issue-trackers) and email notifications. There are also new CLI commands for findings and assessments, clearer AI session scoring, a stable [MCP server](/guides/chainloop-mcp) endpoint, and a UI refresh across the lists you use most.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmpyip10100rw04jv92pe5g85/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="Platform v1.81.0" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## Contextual Home Page

  The home page has been redesigned around a new prompt framework. Tabbed, ready-made prompts surface curated [Ask Chainloop](/concepts/ask-chainloop) questions about your **security, compliance, and governance** posture, so you can check the state of your supply chain as soon as you sign in. New organizations also get a guided onboarding flow for their first steps.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmpyicode06d404l5dtsy6y6e/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="Contextual Home Page" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## Built-in Security Scanning for GitHub Repositories (Preview)

  Connect a GitHub repository and Chainloop runs the security checks for you: vulnerability scanning, SBOM generation, CI misconfiguration checks, and secret scanning, with no pipeline wiring, contract authoring, or agents to install. Evidence and findings land in your projects and compliance reports automatically, and you can trigger a scan on demand whenever you need one.

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/repo-security-scanning.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=bade777d32d7e43e736c7a10c8d4cde5" alt="Built-in Security Scanning for GitHub Repositories" width="1973" height="1289" data-path="changelog/repo-security-scanning.png" />
  </Frame>

  ## Built-in Auto-Provisioned Storage Backend

  Chainloop can now provision and manage your [Content Addressable Storage backend](/concepts/cas-backend) automatically, so there's no bucket or credentials to wire up before you can store evidence. The platform reconciles a dedicated, isolated CAS backend (backed by AWS) for each organization, and once [managed CAS](/guides/deployment/guides/managed-cas) is active it replaces any inline backend you had configured. Managed uploads are capped by a monthly storage quota to keep usage predictable.

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/managed-cas.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=9d1427a1087d4c444325c37d4f263aab" alt="Managed CAS" width="1604" height="1153" data-path="changelog/managed-cas.png" />
  </Frame>

  ## Streamlined Repository Onboarding

  Onboarding a repository now sets up everything you need for compliance tracking in one step. The platform creates a product and attaches default security frameworks, so new projects can collect evidence and report compliance right away. A new WorkflowTemplate resource standardizes project setup behind the scenes, removing the manual configuration that used to come first.

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/repo-onboarding.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=30e223634391c98b1734da0916e227f5" alt="Streamlined Repository Onboarding" width="1426" height="1291" data-path="changelog/repo-onboarding.png" />
  </Frame>

  ## Track Your Findings with the Linear Integration

  Track your findings without leaving your issue tracker. The [Linear](/concepts/issue-trackers) integration now shows each assessment's linked ticket and its current state inline, so you can follow remediation straight from Chainloop. New email [notifications](/concepts/notifications) also go out the moment a finding is created or an assessment revision is proposed.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmpyj03hf001s04jm7u2jfwf5/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="Track Your Findings with the Linear Integration" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## Manage Findings and Risk Assessments Using the CLI

  Manage security findings and assessments directly from the terminal with new dedicated [CLI commands](/command-line-reference/cli-reference). List, inspect, and act on findings and assessments as part of your scripts and automation, bringing the same compliance workflows you use in the UI into your CI/CD pipelines and local tooling.

  ## Vulnerability Distribution Visualization

  A new funnel view breaks down your [vulnerability](/concepts/vulnerability-management) findings by severity and by resolution status (affected, not affected, and more), so you can see where remediation stands and what to tackle next.

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/findings-funnel.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=30a3ed45ccd2874cf851b0b583f0ca4a" alt="Vulnerability Distribution Visualization" width="1840" height="1291" data-path="changelog/findings-funnel.png" />
  </Frame>

  ## Assess AI Contribution Quality

  AI session scoring helps development teams gauge the quality of AI-assisted contributions and learn best practices for agentic engineering, building on the [AI Coding Foundation](/concepts/ai-coding-sessions). It summarizes the changes made in a session and surfaces the positive signals behind the score, and the score tab has been redesigned to show [scoring progress](/reference/ai-score) in real time.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmpyjfz1p003z04l82zof7poj/embed?b=0&title=0&a=1&loop=1&autoPlay=false&t=0&muted=1&wt=0&o=1" title="AI Session Scoring" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  **Confidence, end to end.** AI assessment confidence is surfaced throughout, with an expandable breakdown that shows each subscore as a percentage, so you can see not just the verdict but how sure the model is.

  **Additional signals and recommendations.** The score now spells out the positive and negative signals behind each assessment, along with concrete recommendations for raising it.

  **More developer context.** The session list and detail side panel now carry more context about the developers behind each session, and the risk assessment badge reflects the PR's status colors, so it's easy to scan where each session stands.

  **Change summary.** Each AI coding session now includes a summary of the changes it made, so you can see what happened without reading the full diff.

  ## MCP Server at the Backend Domain

  The [Chainloop MCP server](/guides/chainloop-mcp) is now served under the backend domain at `/mcp`, a single stable endpoint for connecting Claude, Cursor, and other AI assistants to your supply-chain data. The active endpoint is shown in the product's About dialog, so it's always one click away.

  ## We Keep Working on the UI

  We've restyled the lists you work in most: workflow runs, evidence, storage backends, the project overview tab, and the workflows list all get cleaner, more scannable layouts. The project version evidence tab now hides attestations by default, keeping the focus on the evidence items you reach for most, with attestations still one click away.

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/ui-refresh-project-overview.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=50a82f44cff189f70f4f48a74f231b9a" alt="Refreshed project overview and workflow health" width="1840" height="1291" data-path="changelog/ui-refresh-project-overview.png" />
  </Frame>

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/ui-refresh-compliance.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=38c7f378cc87702e0c161944a052b1d2" alt="Refreshed compliance view" width="1840" height="1291" data-path="changelog/ui-refresh-compliance.png" />
  </Frame>

  <Frame>
    <img src="https://mintcdn.com/chainloop/LgcBieP5p_xSMZn4/changelog/ui-refresh-provenance.png?fit=max&auto=format&n=LgcBieP5p_xSMZn4&q=85&s=d1f9030bb839bff88652358cf706fcbd" alt="Refreshed workflow run provenance graph" width="1840" height="1291" data-path="changelog/ui-refresh-provenance.png" />
  </Frame>

  ## And There's More!

  A handful of smaller improvements and fixes shipped across this release too.

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>chainloop trace run</strong>: new CLI subcommand to trace an AI coding session on demand, isolated from <code>.chainloop.yml</code>, with a <code>--version</code> flag and duplicate-push skipping when no new AI commits are present (see the <a href="/guides/chainloop-trace">Chainloop Trace guide</a>)<br />
        * <strong>Structured vulnerability findings</strong>: the workflow-run policies tab now renders vulnerability findings in a structured, readable layout instead of raw output<br />
        * <strong>Anthropic BYOK custom endpoint</strong>: bring-your-own-key integrations can now point at a custom Anthropic-compatible endpoint, and AI provider API keys are masked in the registration form<br />
        * <strong>Issue tracker integration overview</strong>: the Linear / <a href="/concepts/issue-trackers">issue tracker</a> integration gained a dedicated overview panel<br />
        * <strong>Storage backend roles</strong>: storage backends now show their read-only role in a dedicated column<br />
        * <strong>Smarter auto-remediation</strong>: already-fixed vulnerabilities are handled gracefully, assessments are marked fixed when the remediation PR merges, and batch auto-assessment is now gated to critical and high CVEs to cut noise<br />
        * <strong>Trial expiry notifications</strong>: customers are now notified before their trial is about to expire<br />
        * <strong>Product compliance summary</strong>: new product-level compliance summary and detail views, with read-path optimizations that make compliance status faster to load<br />
        * <strong>Scoped provenance discovery</strong>: [provenance](/concepts/attestations) discovery is now scoped by project name and version, making it easier to trace the origin of a specific release<br />
        * <strong>LLM gateway governance tagging</strong>: managed LLM gateway traffic is automatically tagged with governance dimensions for clearer oversight of AI agent activity<br />
        * <strong>Mark a version as latest</strong>: both <code>chainloop project version create</code> and <code>update</code> gain a <code>--mark-latest</code> flag to promote a version to latest<br />
        * <strong>Managed integrations labelling</strong>: platform-provisioned integrations are now clearly marked as <em>managed</em> to distinguish them from user-created ones<br />
        * <strong>Cleaner SBOM findings</strong>: artifact creation is skipped for SBOM scan-root main components, reducing noise in [vulnerability](/concepts/vulnerability-management) findings<br />
        * <strong>Effective assessments in policies</strong>: a new <code>chainloop.effective\_assessments</code> Rego built-in (and <code>AssessmentService.ListEffective</code> API) lets [custom policies](/guides/custom-policies) read the effective assessments for a subject<br />
        * <strong>Faster compliance evaluation sheet</strong>: product requirement compliance detail now loads on demand in the evaluation sheet, cutting initial load times for large reviews<br />
        * <strong>Salt transform sources</strong>: <code>chainloop salt transform</code> gains <code>--source-type</code> and <code>--source</code> flags for more flexible source selection<br />
        * <strong>Slack Ask AI traffic</strong>: Slack Ask AI gateway traffic is now differentiated and tracked separately for clearer AI usage monitoring<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="orange" size="sm">CLI</Badge> Install script now supports musl-based Linux distributions<br />
        * <Badge color="orange" size="sm">CLI</Badge> Trace attestation push correctly populates the CLI version and digest<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Improved light-mode contrast for warning alerts, policy status icons, checkboxes, radios, and the Monaco editor<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Login page is responsive on small phones; Terms and Privacy links are clickable<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Cookie consent banner interactivity and preferences modal restored<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Slack channel dropdown anchors correctly inside the side panel<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Remove button is hidden for protected integration registrations<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Home page recent runs link directly to run details; the workflow runs rocket icon uses the correct color<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Workflow runs list no longer shows a duplicate <code>+next</code> suffix; product action menus cleaned up<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Stale login-method warning removed from the invitation flow; redundant info alert removed from the create-workflow sheet<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Search param resets when switching project version tabs; dialog titles no longer overflow on long names<br />
        * <Badge color="green" size="sm">Policies</Badge> Built-in policies and groups no longer show custom content when names collide<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Suppressed violations are skipped during requirement evaluation<br />
        * <Badge color="gray" size="sm">Backend</Badge> Product version rollups are guarded against non-latest project versions<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Override creation and deletion are now optimistic in the requirement evaluation sheet for a snappier experience<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Findings hooks are gated against empty project versions and the vulnerability-management capability to avoid spurious runs<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Linear issue dialog layout and scrolling behavior improved<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Project and workflow run links are now visible in light mode<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Long tokens wrap correctly in markdown blocks instead of overflowing<br />
        * <Badge color="yellow" size="sm">UX</Badge> Fixed risk assessment history row text overflow on smaller screens<br />
        * <Badge color="yellow" size="sm">UX</Badge> Prevented the About Chainloop dialog from overflowing on mobile<br />
        * <Badge color="yellow" size="sm">UX</Badge> Fixed the install CLI command box overflowing on mobile<br />
        * <Badge color="yellow" size="sm">UX</Badge> Deployment artifact names no longer wrap unexpectedly<br />
        * <Badge color="gray" size="sm">Backend</Badge> Repository-project links are now removed when a project is deleted<br />
        * <Badge color="gray" size="sm">Backend</Badge> Stale open pull-request states are reconciled by a periodic safety-net job<br />
        * <Badge color="gray" size="sm">Backend</Badge> Async operations stuck in pending are recovered, and stale SCM-check output is purged<br />
        * <Badge color="gray" size="sm">Backend</Badge> SCM check tokens are minted per permission so access degrades gracefully when permissions are limited<br />
        * <Badge color="gray" size="sm">Backend</Badge> Set <code>appProtocol</code> on the backend service for gRPC over Envoy Gateway<br />
        * <Badge color="yellow" size="sm">UX</Badge> Reserved space for policy descriptions while they load in the evaluation sheet to avoid layout shift<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Removed spurious comma spacing in the compliance project breakdown<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="May 8, 2026" description="v1.75.1">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.75.1</h2>

  This release rounds out the AI coding governance story — the [AI Coding Foundation](/concepts/ai-coding-sessions) dashboard is now generally available, [`chainloop trace`](/guides/chainloop-trace) gains Cursor support, [salt](/reference/builtin-functions) reports gain SARIF output, and auto-remediation grows a remediability gate. Plus a redesigned integrations page, supply-chain-friendly CLI install dialog, and dozens of polish fixes.

  ## AI Coding Governance — From Adoption to Compliance

  Our recent [AI Coding Governance post](https://chainloop.dev/blog/ai-coding-governance-adoption-to-compliance/) walks through the four pillars Chainloop now provides for governing agentic coding: adoption visibility, framework-driven enforcement, developer integration on the PR, and the [AI Session Score](/reference/ai-score). This release advances each one — the [AI Coding Foundation](/concepts/ai-coding-sessions) dashboard is now available to every organization, and the surfaces around it keep maturing.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmovrufpg00j404la2wgpam9y/embed?b=0&title=0&a=1&loop=0&t=0&muted=0&wt=0&o=1" title="Chainloop AI Coding dashboard" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  **AI Coding Foundation Dashboard for Everyone** — The dashboard now ships to all organizations with a guided empty state, so new teams can see exactly what to instrument before sessions start flowing in. The layout has also been adapted to the flat SDLC structure for a cleaner, more navigable view alongside the rest of your delivery surfaces.

  **Frameworks, Controls, and Policies** — AI sessions and configs are first-class evidence, governed by the same framework / control / policy model used for SBOMs and container images. Auditors read frameworks (SLSA, NIST SSDF, AI Readiness); engineers ship the Rego.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmovrz89u000h04ld0i34dvdq/embed?b=0&title=0&a=1&loop=0&t=0&muted=0&wt=0&o=1" title="AI Readiness framework, controls, and policies" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  **Governance on the PR** — Every AI-assisted PR gets a summary comment with per-session attribution, files touched, and policy verdicts, plus a `Chainloop AI Policies` check run that can be made a required merge gate.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmovsb7zu000504l73awj51i2/embed?b=0&title=0&a=1&loop=0&t=0&muted=0&wt=0&o=1" title="Chainloop PR summary comment and check run" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  **Aggregated Sessions, with Scores and Policies in View** — Every AI session your org produces now rolls up into a single list with a detail sheet that surfaces transcripts, files touched, and per-session attribution. Session tabs show AI Score and policy counts at a glance, and a new AI Score trend chart on the dashboard tracks quality drift over time.

  **Cursor Joins the Party** — [`chainloop trace`](/guides/chainloop-trace) now recognizes Cursor as a trace provider alongside Claude Code. Mixed-tool teams get a unified picture without anyone changing how they work.

  **Smarter Auto-Remediation** — On-demand auto-remediation now gates on an AI remediability verdict — the platform only opens a fix PR when the assessment determines the issue can be safely and effectively resolved, cutting noise on findings that aren't a good fit for automation.

  **Getting Started** — Run `chainloop trace init` once per repo, commit the config, and AI sessions start flowing in. Full walkthrough in the [Chainloop Trace guide](/guides/chainloop-trace).

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmovtaekv00o004joflmn0aff/embed?b=0&title=0&a=1&loop=0&t=0&muted=0&wt=0&o=1" title="Getting started with chainloop trace" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  ## SARIF Output with Posture Gaps and Attacker Mapping

  The new [`chainloop transform salt`](/command-line-reference/cli-reference) subcommand converts SALT reports into a normalized format for attestation, and now emits **SARIF output** enriched with posture gaps and attacker information — so security teams get exploitable context alongside the findings, not just a list of CVEs. The SARIF flavor plugs straight into the same code-scanning surfaces you already use.

  ## Redesigned Integrations Page

  The [integrations](/concepts/integrations) page has been rebuilt around a sheet-detail layout with per-integration documentation panels. Configuring, inspecting, and troubleshooting each integration now happens in context, without bouncing between tabs.

  <Frame>
    <img src="https://mintcdn.com/chainloop/mIKwbQ5PJnfOxX-U/changelog/integrations-redesign.png?fit=max&auto=format&n=mIKwbQ5PJnfOxX-U&q=85&s=377d8d1f8e433d6d952cf0de073bd44f" alt="Redesigned integrations page" width="1492" height="905" data-path="changelog/integrations-redesign.png" />
  </Frame>

  ## Verified CLI Installs

  The [CLI install dialog](/command-line-reference/cli-installation) now shows the pinned CLI version and binary checksums for the active release, so teams can verify what they're installing against a known-good artifact before running the command. Releases now also publish a [keyless cosign signature](https://docs.sigstore.dev/quickstart/quickstart-cosign/) — a Sigstore bundle alongside the checksum manifest — so you can cryptographically verify the checksums themselves came from our release pipeline, not just that the binary matches a checksum served from the same origin. A small UX touch with a meaningful supply-chain story.

  <Frame>
    <img src="https://mintcdn.com/chainloop/mIKwbQ5PJnfOxX-U/changelog/cli-install.png?fit=max&auto=format&n=mIKwbQ5PJnfOxX-U&q=85&s=e572ff610b698ef39803e38e69c9c3fe" alt="Pinned CLI version and checksums in install dialog" width="805" height="498" data-path="changelog/cli-install.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>CLI-version-aware policy resolution</strong>: backend now resolves policies and policy groups against the CLI version producing the attestation, so contract evolution stays compatible with older clients<br />
        * <strong>Simplified policy usage examples</strong>: policy detail pages now show a single YAML usage example, dropping the JSON variant for clarity<br />
        * <strong>Manual SAML SSO authentication</strong>: log in directly with SAML credentials when the IdP doesn't push, complementing the [SAML SSO](/guides/deployment/guides/saml-idp) launch<br />
        * <strong>Responsive narrow viewports</strong>: frontend layout adapts cleanly on smaller screens and split panes<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="orange" size="sm">CLI</Badge> AI attribution is now preserved across rebase and force-push operations<br />
        * <Badge color="orange" size="sm">CLI</Badge> Git hooks install in the common dir when working in git worktrees, so trace works across all worktree branches<br />
        * <Badge color="orange" size="sm">CLI</Badge> Git hook install always runs during agent session tracking<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Assessment actions are hidden from users with project-viewer permissions<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Edit button is disabled while an auto-assessment is running, preventing concurrent edits<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Auto-assessment button correctly shows disabled when no repository is linked<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Project version now appears in the workflow run breadcrumb<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Repository row in AI session detail sheet uses full width; padding above tabs removed<br />
        * <Badge color="blue" size="sm">Frontend</Badge> AI dashboard help link points to the AI Coding Sessions concept page<br />
        * <Badge color="blue" size="sm">Frontend</Badge> AI Score trend chart shows hours on the X axis for 24h ranges<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Compliance scroll tracking and latest-version badge contrast stabilized<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Duplicate policies header removed from workflow run details; warning badge contrast improved in light mode<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Vulnerability search filters guard against undefined fields; trusthub preview positioning fixed<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Help icon link added to products page; spurious comma removed from risk assessment status<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Compliance caches now purge synchronously on override mutations<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Compliance search hides frameworks with no matching results<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Auto-assessment is scoped to the affected artifact instead of the full project<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="May 3, 2026" description="v1.73.1">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.73.1</h2>

  This release brings several improvements — a productized AI coding dashboard with PR-level reviews and scoring, a polished risk assessment workflow with discussions and on-demand auto-remediation, native SAML SSO login, the new Project Security v2 tab, plus expanded Slack notifications and findings access through both Rego and MCP.

  ## AI Coding Sessions — Dashboard, PR Reviews, and Scoring

  AI coding session tracking has graduated into a full product surface. A new AI Coding Foundation dashboard gives security and engineering leaders an organization-wide view of AI-assisted development, while PR comments now correlate AI sessions, surface policy violations inline, and flag PRs that are missing expected session evidence. The new [AI Score](/reference/ai-score) pipeline evaluates each session and assigns a AI Score to each pull request.

  <Frame>
    <iframe className="w-full aspect-video rounded-xl" src="https://www.tella.tv/video/vid_cmovrufpg00j404la2wgpam9y/embed?b=0&title=0&a=1&loop=0&t=0&muted=0&wt=0&o=1" title="Chainloop AI Coding dashboard" allow="autoplay; fullscreen" allowFullScreen />
  </Frame>

  **PR-Level Rollup Comments** — [`chainloop trace`](/guides/chainloop-trace) PR comments now render a table-style rollup linking the policies and materials evaluated for each AI session, with a dedicated check that fails when a PR is missing AI session evidence or when any session in the PR has a policy violation.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/ai-session-pr-comment.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=59a3e1b9fd66295967c70fa733e10545" alt="AI Session Analysis PR comment" width="813" height="356" data-path="changelog/ai-session-pr-comment.png" />
  </Frame>

  **Commit-msg Hook for Trailers** — A new commit-msg hook automatically declares AI session trailers on commits, so attestations pick up the right session even when sessions span multiple commits.

  **Smarter Code Attribution** — Trace now ignores generated code in attribution counts, persists per-session file changes and commits, and respects `.gitattributes` linguist-generated rules so vendored or generated paths don't skew metrics.

  ## AI Risk Assessment Workflow

  Risk assessments are now a first-class workflow with collaboration, revisions, and remediation. Reviewers can leave [discussions](/guides/vulnerability-management) on assessments, request revisions, and gate approval on AI-generated recommendations. A re-assess button lets you refresh an assessment when context changes, and on-demand auto-remediation can open a PR with the suggested fix when the project has a linked repository.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/risk-assessment.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=ee9d0a3fb3ebd9b7c4c1916441f7a729" alt="AI Risk Assessment Workflow" width="697" height="854" data-path="changelog/risk-assessment.png" />
  </Frame>

  **Slack Loop** — Reviewers get pinged in Slack when an assessment needs review, and again when auto-remediation opens a PR — closing the loop without leaving the channel.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/slack-assessment-review.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=534bc667ad9cc39ad14249ef10951b7a" alt="Slack assessment review notification" width="1348" height="720" data-path="changelog/slack-assessment-review.png" />
  </Frame>

  **Failed Auto-Assessments Surfaced** — Failed AI assessments are now visible directly in the risk assessment UI so they don't disappear silently.

  ## SAML SSO Login

  Chainloop Platform now supports Enterprise-level SSO through [SAML](/guides/deployment/guides/saml-idp) against your corporate identity provider.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/saml-sso-login.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=430c7fc72b46317ba84089d8d8f9f6b7" alt="SAML SSO Login" width="412" height="231" data-path="changelog/saml-sso-login.png" />
  </Frame>

  ## Project Security v2

  The redesigned [project security tab](/guides/vulnerability-management) is now the default for organizations on the labs track, with the legacy view still available side-by-side during the transition. Active-finding filters, summary tiles that link straight to filtered views, and a vulnerability management help link make triage faster.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/security-v2.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=ba1368662dd97d994bc47de1ed701901" alt="Project Security v2" width="913" height="318" data-path="changelog/security-v2.png" />
  </Frame>

  ## Findings, MCP, and Notifications

  Findings are now first-class across the platform. A new [`chainloop.findings`](/reference/builtin-functions) Rego builtin lets you reference findings directly from policies, and the [MCP server](/reference/mcp-server) exposes findings to AI assistants.

  <Frame>
    <img src="https://mintcdn.com/chainloop/K5vKOCcaSEvJQ3GP/changelog/findings-mcp.png?fit=max&auto=format&n=K5vKOCcaSEvJQ3GP&q=85&s=c9e3a630289963ef4d1b18297e4a62a2" alt="Findings, MCP, and Notifications" width="1842" height="1452" data-path="changelog/findings-mcp.png" />
  </Frame>

  **High-Severity Slack Alerts** — New high-severity findings now trigger Slack [notifications](/concepts/notifications), and `FINDING_CREATED` events are deduplicated across project versions so you stop getting paged twice for the same issue.

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>SonarQube transform command</strong>: new <code>chainloop transform sonarqube</code> CLI command converts SonarQube reports into a normalized format for attestation<br />
        * <strong>Login page revamp</strong>: refreshed login layout with a marketing hero, available alongside the new SSO entry point<br />
        * <strong>Provenance tab on workflow runs</strong>: drill into the full provenance graph from any <a href="/concepts/workflows">workflow</a> run view<br />
        * <strong>GitHub PR labels persisted</strong>: PR labels are now stored alongside attestation events for downstream filtering and audit<br />
        * <strong>SCM provider in PR audit logs</strong>: pull request <a href="/reference/audit-logs">audit log</a> events now record which SCM provider triggered them<br />
        * <strong>Auto-onboarding email domain filter</strong>: restrict static auto-onboarding to specific email domains for tighter org control<br />
        * <strong>Force trace attestation org</strong>: pin a <a href="/guides/chainloop-trace"><code>chainloop trace</code></a> attestation to a specific organization via <code>.chainloop.yml</code><br />
        * <strong>Dry-run validation upgrades</strong>: CLI `apply --dry-run` now performs batch duplicate detection, offline validation, and validates policy group references against batch requirements<br />
        * <strong>Workflow form simplified</strong>: visibility and team fields removed from workflow creation; entity names normalized across creation forms<br />
        * <strong>Unified entity summaries</strong>: consistent summary cards and detail-sheet layouts across projects, products, workflows, and runs<br />
        * <strong>Standardized form buttons</strong>: submit buttons now use a consistent "Save" label and right-aligned positioning across the app<br />
        * <strong>Detail tab titles and descriptions</strong>: tab views on detail pages now include explanatory titles and descriptions<br />
        * <strong>Restyled product evidence and requirements</strong>: refreshed visuals for product evidence tables and requirement evaluations<br />
        * <strong>Clickable risk summary cards</strong>: risk assessment summary cards now navigate directly to filtered views<br />
        * <strong>Shallow artifacts from SBOM metadata</strong>: the platform now creates lightweight artifact records from SBOM metadata for graph completeness<br />
        * <strong>Legacy Slack webhook hidden</strong>: the legacy webhook configuration is hidden when the native Slack App <a href="/concepts/integrations">integration</a> is enabled<br />
        * <strong>Claude CLI model selection</strong>: pick a specific Claude model for AI coding agents via provider config<br />
        * <strong>Manual evidence reset</strong>: accepted manual evidence can be returned to "needs review" status<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="gray" size="sm">Backend</Badge> Service accounts can now list policies and requirements<br />
        * <Badge color="gray" size="sm">Backend</Badge> Auto-admin membership is correctly skipped when projects are created by service accounts<br />
        * <Badge color="gray" size="sm">Backend</Badge> AI coding session trace summaries now count distinct files correctly<br />
        * <Badge color="gray" size="sm">Backend</Badge> Empty <code>approval\_status</code> on cached evaluations now defaults to approved<br />
        * <Badge color="gray" size="sm">Backend</Badge> GitHub PR webhook events now reach all orgs bound to the installation, with reconciliation using the correct installation<br />
        * <Badge color="gray" size="sm">Backend</Badge> Notification fan-out is decoupled from release pinning to avoid missed alerts<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Framework and requirement ingestion now validates inputs and preserves section hierarchy<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Dry-run apply on a fresh org no longer fails when policy groups reference batch requirements<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Manual evidence is now correctly counted only when approved; the "all submissions approved" rule is enforced for compliance checks<br />
        * <Badge color="blue" size="sm">Frontend</Badge> AI session file counts display 0 instead of NaN when no files are present<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Storage backend creation form now pre-selects the default role<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Framework copy action now copies the identifier instead of the display name<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Security tab defaults to labs when labs is available; non-admin access restored<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Applicability matrix dialog no longer overflows its content<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Markdown tooltips that caused infinite re-render loops have been removed<br />
        * <Badge color="red" size="sm">Contracts</Badge> <code>CHAINLOOP\_AI\_CODING\_SESSION</code> added to the API <a href="/concepts/material-types">MaterialType</a> enum<br />
        * <Badge color="orange" size="sm">CLI</Badge> Policy group to policy reference validation in dry-run<br />
        * <Badge color="orange" size="sm">CLI</Badge> <code>.gitattributes</code> compatibility with go-git<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="April 19, 2026" description="v1.66.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.66.0</h2>

  A smoother AI session viewer with inline code attribution and virtualized conversation rendering, plus compliance workflow refinements.

  ## AI Session Viewer Improvements

  The [AI session viewer](/guides/chainloop-trace) has been refined across the board — long conversations no longer stutter, and you can now see exactly which lines each model touched without leaving the session view.

  **Inline Per-Line Code Attribution** — The session viewer now shows line-level attribution inline alongside each file change, so you can trace any line back to the AI session that produced it without switching views.

  **Virtualized Conversation View** — Long AI sessions with thousands of tool calls now scroll smoothly — the conversation view renders messages on demand instead of all at once.

  <Frame>
    <img src="https://mintcdn.com/chainloop/qGv9r_hxgpxoulip/changelog/ai-session-viewer.png?fit=max&auto=format&n=qGv9r_hxgpxoulip&q=85&s=b9d39c472da2984b711c163ac3adbd9f" alt="AI Session Viewer" width="878" height="914" data-path="changelog/ai-session-viewer.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="Policy Enhancements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>frontend SBOM policy</strong>: now allows permissive custom licenses<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Force evidence and override review</strong>: new organization setting requires reviewer approval for manual evidence and overrides<br />
        * <strong>Grouped policies in requirement evaluation</strong>: policies from the same <a href="/concepts/policy-groups">policy group</a> and their manual evidence are now displayed together in the requirement evaluation sheet<br />
        * <strong>Reset manual evidence</strong>: accepted manual evidence can now be returned to "needs review" status<br />
        * <strong>Needs-review filters and badges</strong>: filter by needs-review extended to manual evidence, with matching badges in requirement detail sheets<br />
        * <strong>Compliance refresh recalculates everything</strong>: triggering a compliance refresh now re-evaluates every requirement<br />
        * <strong>Large JSON evidence rendering</strong>: the evidence viewer can now render large JSON payloads smoothly<br />
        * <strong>Workflow list and details pages restyled</strong>: updated visuals for <a href="/concepts/workflows">workflow</a> list and run detail views<br />
        * <strong><a href="/concepts/vulnerability-management">Risk assessment</a> audit log</strong>: extended with more detail, and <code>target\_type</code> filter fixed<br />
        * <strong>Renamed finding field</strong>: <code>source\_reference</code> renamed to <code>recommendation</code> on <a href="/concepts/vulnerability-management">findings</a> for clarity<br />
        * <strong>CLI: trace defaults to latest project version</strong>: no more flag required for incremental attestations<br />
        * <strong>CLI: trace logs hook output</strong>: all hook messages are now written to the trace log file for easier debugging<br />
        * <strong>Updated Claude model pricing table</strong>: cost calculations in <a href="/guides/chainloop-trace">trace</a> reflect the latest model pricing<br />
        * <strong>Dismissible SaaS Cloud banners</strong>: free trial and restricted account banners can now be dismissed<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="purple" size="sm">Compliance</Badge> Compliance percentage calculation corrected<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Deleted overrides no longer counted in requirement evaluations<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Product framework compliance now polls periodically to stay in sync<br />
        * <Badge color="purple" size="sm">Compliance</Badge> <a href="/concepts/vulnerability-management">Finding</a> deduplication and assessment accuracy improved<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Manual evidence in "needs review" now correctly treated as partial<br />
        * <Badge color="green" size="sm">Policies</Badge> Policy group update sheet layout fixed<br />
        * <Badge color="green" size="sm">Policies</Badge> Duplicate policy detection now scoped to the same group<br />
        * <Badge color="red" size="sm">Contracts</Badge> Contract detail page now shows the latest version after update<br />
        * <Badge color="orange" size="sm">CLI</Badge> Policy group apply dependency order corrected<br />
        * <Badge color="orange" size="sm">CLI</Badge> GitLab fetcher no longer crashes on permission errors<br />
        * <Badge color="orange" size="sm">CLI</Badge> Trace now detects deletion-only commits as AI-assisted<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Monaco editor autocomplete restored in the contract editor<br />
        * <Badge color="blue" size="sm">Frontend</Badge> JSON viewer always pretty-prints evidence payloads<br />
        * <Badge color="blue" size="sm">Frontend</Badge> API token modal now uses an accessible AlertDialog<br />
        * <Badge color="yellow" size="sm">UX</Badge> Notification controls refined for clearer state<br />
        * <Badge color="yellow" size="sm">UX</Badge> Repositories import page layout improved<br />
        * <Badge color="yellow" size="sm">UX</Badge> Yellow tooltip icons for needs-review requirements<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="April 7, 2026" description="v1.58.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.58.0</h2>

  AI coding session tracing with line-level attribution, native Slack and GitLab App integrations, compliance OR-groups, and a comprehensive UI refresh.

  ## AI Coding Session Tracing

  [`chainloop trace`](/guides/chainloop-trace) has been significantly upgraded — the attestation workflow now defers to push time for more reliable capture, the Git backend has been migrated to go-git for broader compatibility, and project versions are automatically passed through to attestations.

  **Line-Level Code Attribution** — Trace now captures line-level code attribution for AI coding sessions, giving security teams granular visibility into exactly which lines of code were written or modified by AI agents versus human developers.

  <Frame>
    <img src="https://mintcdn.com/chainloop/dMekO89KbHAjgDxm/changelog/ai-trace.png?fit=max&auto=format&n=dMekO89KbHAjgDxm&q=85&s=139a4f90264837fc917649791e7c2c50" alt="AI Coding Session Tracing" width="724" height="297" data-path="changelog/ai-trace.png" />
  </Frame>

  ## Native Slack App Integration

  Connect your Slack workspace directly to Chainloop with the new native Slack App [integration](/concepts/integrations). Once connected, you can pick specific channels for [notifications](/concepts/notifications) — no more configuring webhook URLs manually.

  <Frame>
    <img src="https://mintcdn.com/chainloop/dMekO89KbHAjgDxm/changelog/slack-app.png?fit=max&auto=format&n=dMekO89KbHAjgDxm&q=85&s=13f95cd33ca907229a1408b195af23b4" alt="Native Slack App Integration" width="821" height="550" data-path="changelog/slack-app.png" />
  </Frame>

  **Channel Picker** — Browse and select Slack channels from a searchable dropdown directly in the notification settings UI.

  **Rich Notifications** — The Slack App supports structured notification messages with actionable context about attestation events, policy violations, and compliance updates.

  ## GitLab App Integration

  Chainloop now supports a native GitLab App integration for connecting your GitLab repositories. This complements the existing GitHub integration and enables teams using GitLab to benefit from the same repository-project linking, [keyless attestations](/guides/gitlab-keyless), and source control visibility.

  <Frame>
    <img src="https://mintcdn.com/chainloop/dMekO89KbHAjgDxm/changelog/gitlab-app.png?fit=max&auto=format&n=dMekO89KbHAjgDxm&q=85&s=43cbff0b293659e6a6aeb7043356752e" alt="GitLab App Integration" width="605" height="306" data-path="changelog/gitlab-app.png" />
  </Frame>

  ## UI Refresh

  This release brings a comprehensive visual refresh across the platform — redesigned tables, tabs, buttons, inputs, badges, and sheet layouts for a more polished experience.

  <Frame>
    <img src="https://mintcdn.com/chainloop/dMekO89KbHAjgDxm/changelog/ui-refresh.png?fit=max&auto=format&n=dMekO89KbHAjgDxm&q=85&s=902209b0db6769a81ce0eb8428434f34" alt="UI Refresh" width="1319" height="725" data-path="changelog/ui-refresh.png" />
  </Frame>

  **Policies Page** — The [policies](/concepts/policies) page now uses a grid cell layout, and policies and policy groups are split into separate pages for easier navigation.

  **Frameworks Page** — The [compliance frameworks](/concepts/compliance-frameworks) page has been reworked to match the new policies list style.

  **Workflow Run Page** — Updated styling for the workflow run detail view.

  **Sidebar** — Hover over the collapsed sidebar to preview navigation items without expanding it.

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Drag-and-drop evidence upload</strong>: Upload evidence files by dragging and dropping them directly into the upload area<br />
        * <strong>CLI download link in top nav</strong>: Quickly access the CLI download from the top navigation bar<br />
        * <strong>Better CLI auth error handling</strong>: Clearer error messages when authentication fails<br />
        * <strong>Repository filtering</strong>: Filter repositories by provider kind and project association<br />
        * <strong>Breadcrumb improvements</strong>: Sheet routes now appear in breadcrumbs with updated styling<br />
        * <strong>Search debounce</strong>: Search inputs across all pages now debounce for smoother performance<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="purple" size="sm">Compliance</Badge> Framework sections now update correctly in the Compliance view<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Contracts now filtered by project in workflow creation form<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Linked artifacts panel now uses full-size layout instead of nested sheet<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Long descriptions truncated in findings list<br />
        * <Badge color="blue" size="sm">Frontend</Badge> TOC scroll tracking fixed in projects and products<br />
        * <Badge color="gray" size="sm">Backend</Badge> Monthly-scoped evidence, artifact, and deployment counts corrected<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="March 29, 2026" description="v1.51.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.51.0</h2>

  AI agent governance with 9+ built-in policies, Ask Chainloop natural language assistant, per-project authorization for keyless attestations, rich evidence visualization, and compliance approval workflows.

  ## AI Agent Configuration Governance

  As AI coding agents like Claude Code and Cursor become part of the development workflow, their configuration — instruction files, MCP servers, skills, subagents, and permissions — becomes part of your supply chain. Chainloop now automatically discovers and collects this configuration from your repositories, bundling it into tamper-resistant evidence via a new `CHAINLOOP_AI_AGENT_CONFIG` [material type](/concepts/material-types).

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/ai-agent-config.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=cb58d1511c1546df9b5c9894e12554b7" alt="AI Agent Configuration Governance" width="1746" height="1836" data-path="changelog/ai-agent-config.png" />
  </Frame>

  This gives security teams visibility into how AI agents are set up across the organization — detecting hardcoded secrets in configurations, enforcing allowlists for approved MCP servers, validating instruction quality, and preventing privilege escalation in subagent configurations.

  This release ships with **12 built-in [AI governance policies](/reference/policies)** covering MCP server allowlists, instruction quality, subagent permissions, architecture documentation, and more — see the full list in the New Policies section below.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/ai-agent-policies.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=a3b967a6fac983339dc0780506a6a552" alt="AI Agent Governance Policies" width="2000" height="1320" data-path="changelog/ai-agent-policies.png" />
  </Frame>

  Read the [collection guide](/guides/ai-config-collector) to get started, or see the [full blog post](https://chainloop.dev/blog/agentic-coding-support/) for the vision behind AI agent governance in your supply chain.

  ## Ask Chainloop

  [Ask Chainloop](/concepts/ask-chainloop) is a native natural language interface embedded directly in the web UI. It goes beyond simple data discovery — you can browse your organization's supply chain data, query compliance status, write [policies](/concepts/policies), create [contracts](/concepts/contracts), configure your instance, and more. Press `Cmd+K` (or `Ctrl+K`) to open it from any page.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/ask-chainloop.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=41bd6772d8cea7a41e585996707b9304" alt="Ask Chainloop" width="1600" height="1958" data-path="changelog/ask-chainloop.png" />
  </Frame>

  ## Repository-Project Linking & Keyless RBAC

  [Keyless attestations](/guides/github-keyless) can now be configured with authorization per project. Enrolled repositories must be connected to a project for keyless attestations to be accepted — giving security teams fine-grained control over which CI/CD pipelines can produce evidence for each project. This means different repositories can have different access levels, and attestations from repositories not linked to a project are rejected automatically. See the [GitHub keyless](/guides/github-keyless) and [GitLab keyless](/guides/gitlab-keyless) guides to get started.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/repo-project-linking.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=cb3f4ae2b1945d9e85c82f900b5fcc78" alt="Repository-Project Linking" width="2000" height="282" data-path="changelog/repo-project-linking.png" />
  </Frame>

  ## Rich Evidence Visualization

  Browse the content of your [evidence](/concepts/material-types) directly in the platform — no downloads required. New rich viewers let you inspect container image details, pull request metadata, AI agent configuration, and more without leaving the interface.

  **Container Images** — View pull commands (by tag and digest), provenance, and deployment history directly from the material panel.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/evidence-content-viewer-container.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=cefe9288a3c6fc4046de2e1ee860011c" alt="Container Image Content Viewer" width="1750" height="838" data-path="changelog/evidence-content-viewer-container.png" />
  </Frame>

  **Pull Request Info** — See PR details including branch info, reviewers, approval status, and bot detection — all rendered inline from `CHAINLOOP_PR_INFO` materials.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/evidence-content-viewer-pr.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=2fd6f46556906f037b175d557d1649d6" alt="Pull Request Info Content Viewer" width="1752" height="1134" data-path="changelog/evidence-content-viewer-pr.png" />
  </Frame>

  **AI Agent Configuration** — Browse collected AI agent configuration files, instructions, rules, and skills directly in the evidence panel.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/evidence-content-viewer-ai-config.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=cdfc0dda2329bca5b6cb4d3f573aed9d" alt="AI Agent Configuration Content Viewer" width="1756" height="1262" data-path="changelog/evidence-content-viewer-ai-config.png" />
  </Frame>

  ## Compliance Override & Approval Workflows

  The [compliance](/concepts/compliance-frameworks) override system now supports uploading evidence files as part of the override process — along with a full approval workflow and visual status indicators. Teams can also require approval for manually submitted evidence before it's used in [compliance evaluations](/concepts/compliance-frameworks), ensuring that manual submissions are validated before being incorporated into your attestation process.

  <Frame>
    <img src="https://mintcdn.com/chainloop/TuwOf09Gj_ULBd98/changelog/compliance-approval.png?fit=max&auto=format&n=TuwOf09Gj_ULBd98&q=85&s=e78b80fdbefcc19e6e39a40d0c68d3c8" alt="Compliance Override & Approval Workflows" width="1030" height="378" data-path="changelog/compliance-approval.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="New Policies and Policy Groups">
      <div style={{ fontSize: "0.75em" }}>
        * <strong><a href="/reference/policies">ai-agent-present</a></strong>: Detect AI agent presence via configuration materials or bot reviewers on PRs<br />
        * <strong><a href="/reference/policies">ai-config-architecture-with-paths</a></strong>: Verify instruction files describe project architecture<br />
        * <strong><a href="/reference/policies">ai-config-code-style-specificity</a></strong>: Require concrete, project-specific code style rules<br />
        * <strong><a href="/reference/policies">ai-config-mcp-servers-allowed</a></strong>: Ensure only approved MCP integrations are configured<br />
        * <strong><a href="/reference/policies">ai-config-skill-descriptions-actionable</a></strong>: Ensure skills describe what they do and when to use them<br />
        * <strong><a href="/reference/policies">ai-config-subagent-descriptions-actionable</a></strong>: Require subagent descriptions with trigger, scope, and purpose<br />
        * <strong><a href="/reference/policies">ai-config-subagent-permissions-scope</a></strong>: Verify no subagent sets permissionMode to bypass permissions or declares MCP servers absent from parent<br />
        * <strong><a href="/reference/policies">ai-instructions-commands-documented</a></strong>: Require exact, executable commands instead of vague instructions<br />
        * <strong><a href="/reference/policies">ai-instructions-doc-guidance</a></strong>: Verify instruction files reference documentation practices<br />
        * <strong><a href="/reference/policies">ai-instructions-explicit-boundaries</a></strong>: Require explicit behavioral boundaries for agent actions<br />
        * <strong><a href="/reference/policies">ai-instructions-git-workflow-documented</a></strong>: Verify git workflow conventions are documented<br />
        * <strong><a href="/reference/policies">ai-instructions-gotchas</a></strong>: Require project-specific gotchas and edge cases to be documented<br />
        * <strong><a href="/reference/branch-protection-policies">tag-deletion-blocked</a></strong>: Ensure tag deletion is blocked, with optional tag pattern filtering<br />
        * <strong><a href="/reference/branch-protection-policies">tag-force-push-blocked</a></strong>: Prevent tag manipulation attacks by blocking force pushes on tags<br />
        * <strong><a href="/reference/branch-protection-policies">tag-rules-change-restricted</a></strong>: Validate only authorized actors can bypass tag protection rules<br />
        * <strong><a href="/reference/branch-protection-policies">patch-policy-present</a></strong>: Ensure patch management policies are in place for repository management<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>GitHub App Integration</strong>: The GitHub App is now visible on the [Integrations](/concepts/integrations) page for easier discovery and setup<br />
        * <strong>UI Refresh</strong>: Redesigned sidebar with updated Phosphor icons, new page headers and titles, and sheets rendered inside the main content area<br />
        * <strong>Needs review filter</strong>: The [compliance](/concepts/compliance-frameworks) view now includes a "needs review" filter for faster triage<br />
        * <strong>Details tab first</strong>: The material sidebar now shows the Details tab by default<br />
        * <strong>MCP environment & deployment tools</strong>: New [MCP server](/reference/mcp-server) tools for querying environments and deployments<br />
        * <strong>Enhanced PR info viewer</strong>: Better pull request information display with flexible author format support<br />
        * <strong>GitHub immutable releases</strong>: The CLI gatherer now detects GitHub immutable releases in [runner context](/reference/runner-context)<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="purple" size="sm">Compliance</Badge> Preserved framework ordering in project versions for consistent compliance reporting<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Reset approved overrides to needs\_review status when new evidence is submitted<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Added missing material types to evidence list filter<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Corrected manual evidence approval flow and status display<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Fixed sidebar and sticky element positioning after layout changes<br />
        * <Badge color="green" size="sm">Policies</Badge> Prevented pass summaries from appearing as violations in evidence-prompt evaluations<br />
        * <Badge color="red" size="sm">Contracts</Badge> Updated tag-protection to use v\*\* glob pattern for proper version matching<br />
        * <Badge color="gray" size="sm">Backend</Badge> Corrected project version link format in MCP server<br />
        * <Badge color="gray" size="sm">Backend</Badge> Fixed MCP server environment URL generation<br />
        * <Badge color="gray" size="sm">Backend</Badge> Sanitized internal LLM provider errors in chat responses<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="March 12, 2026" description="v1.38.2">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.38.2</h2>

  ## Keyless Attestations for GitHub

  Chainloop now supports [keyless attestations](/guides/github-keyless) for GitHub Actions — no API tokens required. Onboard your GitHub repositories into Chainloop, and your workflows can attest using GitHub's OIDC tokens automatically. The CLI discovers the GitHub OIDC token at runtime, so there's nothing to configure. This eliminates token management overhead and unlocks [SLSA 3](/guides/slsa) compliance checks by default, just like the existing [GitLab keyless](/guides/gitlab-keyless) support.

  <Frame>
    <img src="https://mintcdn.com/chainloop/5EbdCXlXGjX3gMNX/guides/img/github.png?fit=max&auto=format&n=5EbdCXlXGjX3gMNX&q=85&s=144d1f6812dc6e3b899e5eda460e005b" alt="Keyless Attestations for GitHub" width="1376" height="768" data-path="guides/img/github.png" />
  </Frame>

  ## Product Management Commands

  You can now create, update, and organize [products](/concepts/products) directly from the CLI — bringing full product lifecycle management into your terminal and automation scripts. Combined with [`chainloop apply`](/guides/declarative-resource-management), this enables GitOps-style product configuration alongside your existing [workflow](/concepts/workflows) and [contract](/concepts/contracts) definitions.

  <Frame>
    <img src="https://mintcdn.com/chainloop/g-XEHATeLuO3v2Z0/changelog/product-commands.png?fit=max&auto=format&n=g-XEHATeLuO3v2Z0&q=85&s=3106cbecd1a6a7613a481a185d11a4ae" alt="Product Management Commands" width="916" height="567" data-path="changelog/product-commands.png" />
  </Frame>

  ## Compliance Approval Workflows

  Introducing approval workflows for [compliance](/concepts/compliance-frameworks) overrides at both the [product](/concepts/products) and [project](/concepts/projects-versions) level. Teams can now request structured exceptions to compliance requirements — with approvals tracked, auditable, and tied back to the evidence that justifies them. This gives security and compliance teams visibility and control over deviations without blocking delivery.

  <Frame>
    <img src="https://mintcdn.com/chainloop/g-XEHATeLuO3v2Z0/changelog/status-approvals.png?fit=max&auto=format&n=g-XEHATeLuO3v2Z0&q=85&s=3672127e708388ef53d56d653959af38" alt="Compliance Approval Workflows" width="767" height="629" data-path="changelog/status-approvals.png" />
  </Frame>

  ## Manual Evidence with Justification

  You can now submit manual evidence entries with justification-only content — no artifact upload required. This is especially useful for documenting compliance activities like risk acceptances, design reviews, or exception approvals where the evidence is a written rationale rather than a file.

  <Frame>
    <img src="https://mintcdn.com/chainloop/g-XEHATeLuO3v2Z0/changelog/manual-evidence-justification.png?fit=max&auto=format&n=g-XEHATeLuO3v2Z0&q=85&s=6feae54dee11802174d3f8125c20dc6c" alt="Manual Evidence with Justification" width="2180" height="1054" data-path="changelog/manual-evidence-justification.png" />
  </Frame>

  ## Requirement Reordering

  You can now reorder requirements within custom [compliance frameworks](/concepts/compliance-frameworks) — giving you full control over how your compliance structure is presented and navigated. Drag requirements into the order that makes sense for your team's review process.

  <Frame>
    <img src="https://mintcdn.com/chainloop/g-XEHATeLuO3v2Z0/changelog/req-sorting.png?fit=max&auto=format&n=g-XEHATeLuO3v2Z0&q=85&s=9f86f85704d22227cfe7a9529848f8bc" alt="Requirement Reordering" width="1376" height="768" data-path="changelog/req-sorting.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Rego syntax highlighting</strong>: Code blocks now include full syntax highlighting for the Rego [policy](/concepts/policies) language<br />
        * <strong>CLI download dialog</strong>: A new download dialog in [workflow](/concepts/workflows) runs makes it easier to install the CLI directly from the interface<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="gray" size="sm">Backend</Badge> Enabled API token access for apply operations<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Prevented navbar shift when dropdown menus open<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="March 09, 2026" description="v1.36.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.36.0</h2>

  ## Environments & Deployment Tracking

  Chainloop now supports [Artifact Deployment Tracking](/concepts/deployments) — record which artifacts are running in which [environments](/concepts/environments) and build a live view of what's deployed across your organization. Define infrastructure targets (Kubernetes clusters, ECS services, bare-metal servers), map them to lifecycle stages like `development`, `staging`, and `production`, and let Chainloop automatically track deployment history with superseding and decommissioning. Because every deployment record is linked back to [attestations](/concepts/attestations) and evidence, you can trace any running artifact to the workflow that built it and the provenance that backs it.

  <Frame>
    <img src="https://mintcdn.com/chainloop/W6ZtFMaSiWeLxY5-/changelog/deployment-tracking.png?fit=max&auto=format&n=W6ZtFMaSiWeLxY5-&q=85&s=d7ab4d9cacba8fdf7757a7ba845ca85a" alt="Deployment Tracking" width="1376" height="768" data-path="changelog/deployment-tracking.png" />
  </Frame>

  ## New MCP Server Tools

  The [Chainloop MCP server](/reference/mcp-server) now includes `list_contracts` and `describe_contract` tools — making it possible for AI agents and development workflows to discover and inspect [workflow contracts](/concepts/contracts) directly. This brings contract management into AI-assisted automation, so teams can query contract schemas, materials, and policy attachments without leaving their AI toolchain.

  <Frame>
    <img src="https://mintcdn.com/chainloop/W6ZtFMaSiWeLxY5-/changelog/mcp_1.png?fit=max&auto=format&n=W6ZtFMaSiWeLxY5-&q=85&s=3fc4dacf21caf8853a31234e48e509d0" alt="MCP Server Tools" width="1376" height="768" data-path="changelog/mcp_1.png" />
  </Frame>

  With these tools, you can retrieve any contract's full declarative representation — including its materials, policies, policy groups, and runner configuration — directly from an AI assistant or automated workflow. Whether you're auditing a release gate, reviewing what evidence a pipeline collects, or building tooling on top of Chainloop, the contract schema is now just a tool call away.

  <Frame>
    <img src="https://mintcdn.com/chainloop/W6ZtFMaSiWeLxY5-/changelog/gate-info.png?fit=max&auto=format&n=W6ZtFMaSiWeLxY5-&q=85&s=5e5d66ed7031c7f831e83d93552a2bab" alt="Gate Info" width="1024" height="572" data-path="changelog/gate-info.png" />
  </Frame>

  ## Product-Level Compliance Overrides

  [Compliance policies](/concepts/compliance-frameworks) can now be overridden at the [product](/concepts/products) level — giving you more granular control over how compliance requirements are applied across your organization. This is especially useful when different products have distinct regulatory needs while sharing a common baseline.

  <Frame>
    <img src="https://mintcdn.com/chainloop/W6ZtFMaSiWeLxY5-/changelog/product-compliance-overrides.png?fit=max&auto=format&n=W6ZtFMaSiWeLxY5-&q=85&s=9703e4e3b1419ba66cd6ba9665606b59" alt="Product-Level Compliance Overrides" width="1376" height="768" data-path="changelog/product-compliance-overrides.png" />
  </Frame>

  <AccordionGroup>
    <Accordion title="More Improvements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Breadcrumb navigation</strong>: Added throughout the platform to help you navigate between organizations, projects, and connected resources<br />
        * <strong>Positional requirement ordering</strong>: [Framework](/concepts/compliance-frameworks) requirements now support positional ordering for more control over compliance structure<br />
        * <strong>UI polish</strong>: Better description truncation for long text, compliance coverage preview moved into the [policies](/concepts/policies) section, and improved dark mode hover contrast on tables and dropdowns<br />
        * <strong>[Policy](/concepts/policies) management</strong>: Builtin policy content is now hidden in CLI describe output for cleaner results, and [policy group](/concepts/policy-groups) describe commands support output schema formatting<br />
      </div>
    </Accordion>
  </AccordionGroup>

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="blue" size="sm">Frontend</Badge> Fixed duplicate policy groups appearing when filtering<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Fixed deployment history filtering to properly show results by logical environment<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Fixed broken buttons in contract editing, member management, and organization creation pages<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Applied proper prettier formatting in project and deployment detail views<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Resolved multiple UI bugs and display issues<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Prevented unnecessary requirement version creation when apply input is unchanged<br />
        * <Badge color="green" size="sm">Policies</Badge> Prevented builtin policies from being exposed inappropriately<br />
        * <Badge color="orange" size="sm">CLI</Badge> Removed builtin content from requirement and framework describe command outputs<br />
        * <Badge color="gray" size="sm">Backend</Badge> Updated MCP contract schema to follow Kubernetes-style formatting standards<br />
        * <Badge color="gray" size="sm">Backend</Badge> Added User-Agent header support for CORS<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="March 04, 2026" description="v1.34.0">
  <h2 style={{ fontSize: "2em", fontWeight: "bold" }}>Platform v1.34.0</h2>

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/platform-v1.34.0.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=e87fcd798e3df602a8196df1cfa9c401" alt="Platform v1.34.0" width="2495" height="1797" data-path="changelog/platform-v1.34.0.png" />
  </Frame>

  ## UI/UX Improvements

  We've been investing heavily in the frontend experience. Our component library has been upgraded to a more compact, modern design system, and we've reworked key surfaces — from empty states to the org selector and dark mode — all to reduce visual noise while keeping the information you need front and center.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/ui-ux-improvements.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=1ab941a5e2609b0730b0c7d8c99a49db" alt="UI/UX Improvements" width="3840" height="2160" data-path="changelog/ui-ux-improvements.png" />
  </Frame>

  **Global Search** — A new global search experience lets you quickly find workflows, projects, frameworks, requirements and other resources across your organization from anywhere in the app. Try it out with `CMD + K` or by clicking the search button in the top navbar.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/global-search.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=46747a6ea656f2536ea7705582dce3ed" alt="Global Search" width="618" height="415" data-path="changelog/global-search.png" />
  </Frame>

  **Version Selector** — A redesigned version selector with dedicated **prerelease** and **release** tabs makes it easier to navigate between versions and understand what's promoted vs. in progress.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/version-selector-v1.34.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=f50466f488560d544a0fcd52091984dc" alt="Version Selector" width="268" height="313" data-path="changelog/version-selector-v1.34.png" />
  </Frame>

  **Filtering Across All Lists** — All list pages now offer consistent filtering options, making it easier to find and organize your workflows, projects, and resources — no matter how large your organization grows

  <Frame>
    <img src="https://mintcdn.com/chainloop/TfDVUk62AihOXgkj/changelog/filtering-sorting.png?fit=max&auto=format&n=TfDVUk62AihOXgkj&q=85&s=1c620caae9c6398f7c1a2fa2df4cbd3a" alt="Filtering & Sorting" width="814" height="332" data-path="changelog/filtering-sorting.png" />
  </Frame>

  **Contracts Diff** — You can now see differences between [contract](/concepts/contracts) revisions at a glance, making it easier to understand what changed between versions.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/contracts-diff.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=ad38cab336eed2ed64dd27465f9f16d7" alt="Contracts Diff" width="1369" height="704" data-path="changelog/contracts-diff.png" />
  </Frame>

  **Compliance Coverage (Preview)** — An early preview of compliance coverage is now available, showing how your project maps [against compliance frameworks and requirements](/concepts/compliance-frameworks#requirement-coverage-preview). This feature is being actively developed and will be rolling out to all users soon.

  **Easier Policy Evaluation Analysis** — [Policy evaluations](/concepts/policies) are now easier to analyze: advanced filtering helps you quickly focus on passed, failed, or skipped policies, and multiple skip reasons or violations are collapsed for a cleaner view.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/policy-evaluation-analysis.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=cce8497d7b1767902e33dd7f51d2d443" alt="Policy Evaluation Analysis" width="1323" height="665" data-path="changelog/policy-evaluation-analysis.png" />
  </Frame>

  **CLI Install Script** — The platform now serves a pre-configured CLI install script, so new users can get started with a single command — no manual endpoint configuration needed. Get your CLI with a single click, it is available in the help menu under "About Chainloop"

  <Frame>
    <img src="https://mintcdn.com/chainloop/mIKwbQ5PJnfOxX-U/changelog/cli-install.png?fit=max&auto=format&n=mIKwbQ5PJnfOxX-U&q=85&s=e572ff610b698ef39803e38e69c9c3fe" alt="CLI Install Script" width="805" height="498" data-path="changelog/cli-install.png" />
  </Frame>

  ## Declarative Frameworks and Requirements

  We extended declarative support to [frameworks](/concepts/compliance-frameworks), requirements, and [policy groups](/concepts/policy-groups). You can now export any resource as declarative counterparts and manage it programmatically from the CLI.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/declarative-frameworks.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=b72dced5e312f7f86c5f9665595e6084" alt="Declarative Frameworks" width="1480" height="1186" data-path="changelog/declarative-frameworks.png" />
  </Frame>

  We've also introduced a top-level `chainloop apply` command for local or CI automation to enable GitOps operations. For more information, refer to our [CLI reference](https://docs.chainloop.dev/command-line-reference/cli-ee-reference).

  ## Agentic Policies Support

  Agentic policies use AI to evaluate supply chain evidence with natural-language prompts. Define what to check in plain English — Chainloop sends the evidence to your configured LLM provider and returns violations, cryptographically signed into the attestation.

  Use the built-in `evidence-prompt` policy for a zero-code experience, or call `chainloop.evidence_prompt` from custom policies for more control. Read more in the [LLM Policies guide](/guides/llm-policies).

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/agentic-policies.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=cbc0802aed1e094a1b66fd6f6d49ca65" alt="Agentic Policies" width="875" height="409" data-path="changelog/agentic-policies.png" />
  </Frame>

  ```yaml theme={"dark"}
  apiVersion: chainloop.dev/v1
  kind: Contract
  metadata:
    name: check-build
  spec:
    policies:
      attestation:
        - ref: evidence-prompt
          with:
            prompt: "Check that all container images referenced in this attestation come from a trusted registry (e.g. ghcr.io or docker.io/chainloop)"
      materials:
        - ref: evidence-prompt
          with:
            prompt: "Analyze this SBOM and report any components with non-OSS compatible licenses such as AGPL, SSPL, or proprietary licenses"
    materials:
      - type: SBOM_CYCLONEDX_JSON
        name: my-sbom
  ```

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/agentic-policies-result.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=f485a6a08e46eeba830baec0ff7fdf8f" alt="Agentic Policies Result" width="1316" height="362" data-path="changelog/agentic-policies-result.png" />
  </Frame>

  Our enterprise customers can use their own LLM provider by bringing an API key and configuring an [LLM integration](/concepts/integrations). Chainloop supports Anthropic and OpenAI (including OpenAI on Microsoft Foundry); see the [LLM support reference](/reference/llm-support) for details.

  <Frame>
    <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/llm-integration.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=51ed13af2913c8039466c7aa4e1a6074" alt="LLM Integration" width="1100" height="210" data-path="changelog/llm-integration.png" />
  </Frame>

  ## Policy Engine Improvements

  The policy engine is the core of Chainloop's control and quality gate capabilities. Our SDK comes packed with new features:

  * [Attestation phases](/concepts/policies#attestation-phases) let you control when attestation-level policies are evaluated during the attestation lifecycle.
  * [Policy-level gate override](/concepts/policies#configuring-enforcement) — The `gate` property in policy attachments now supports `gate: false` to explicitly disable enforcement for a specific policy, overriding the organization-wide control gate setting.
  * [`chainloop.download_artifact`](/reference/builtin-functions#chainloopdownload_artifact) — A Rego builtin function that downloads an artifact from Chainloop's CAS directly into the policy evaluation context.

  <AccordionGroup>
    <Accordion title="New Policies and Policy Groups">
      <div style={{ fontSize: "0.75em" }}>
        - <strong>evidence-prompt</strong>: Prompts for evidence collection on materials, supports non-digest materials, evaluates only during PUSH phase<br />
        - <strong>owasp-top10-2025</strong>: OWASP Top 10 updated to the 2025 edition, with SARIF and CodeQL report support<br />
        - <strong>cwes-group</strong>: Groups CWE-related policies (CWE Top 25, CWE Top 26-40) for easier adoption<br />
      </div>
    </Accordion>

    <Accordion title="Policy Enhancements">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>cwe-top25 / cwe-top26-40-cusp</strong>: Added CodeQL report support<br />
        * <strong>pr-user-story-linked</strong>: Now also detects issue references in branch names, not just PR body<br />
        * <strong>iac-misconfiguration</strong>: Added severity filtering to control which severity levels trigger violations<br />
        * <strong>check-compliance-requirement</strong>: Can now filter by framework name<br />
      </div>
    </Accordion>
  </AccordionGroup>

  ## API Token Auto-Revocation

  You can now [configure API Token Auto-Revocation](/reference/api-tokens#auto-revocation-of-inactive-tokens), which automatically revokes API tokens that haven't been used within a configurable period, reducing the risk of long-lived, forgotten tokens.

  ## Signed Manual Evidence Receipt

  All manually provided evidence is now signed, attested, and tamper-resistant — just like evidence collected from CI/CD automation. You can download a [signed attestation receipt](/reference/signing) for any manual evidence and verify it using the Chainloop CLI.

  <img src="https://mintcdn.com/chainloop/eYsUp9wEzLWnMZ9J/changelog/signed-manual-evidence.png?fit=max&auto=format&n=eYsUp9wEzLWnMZ9J&q=85&s=88014b633fa9767e45fc48190314146c" alt="Signed Manual Evidence" width="874" height="261" data-path="changelog/signed-manual-evidence.png" />

  ```bash theme={"dark"}
  $ chainloop attestation verify --bundle ~/Downloads/f156d02.json
  INF attestation verified successfully
  ```

  <AccordionGroup>
    <Accordion title="Bug Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <Badge color="purple" size="sm">Compliance</Badge> Corrected compliance scores to exclude expired workflow runs<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Resolved policy groups with bindings not syncing in contracts<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Addressed contracts sync failing when importing empty params<br />
        * <Badge color="purple" size="sm">Compliance</Badge> Restricted check-compliance-requirement to run only at INIT phase<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Sorted product list to show newest first<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Enabled workflow list items to wrap on smaller screens<br />
        * <Badge color="blue" size="sm">Frontend</Badge> Resolved empty workflow runs incorrectly redirecting to API token management<br />
        * <Badge color="orange" size="sm">CLI</Badge> Resolved broken `policy devel` function<br />
        * <Badge color="yellow" size="sm">UX</Badge> Improved confusing freshness wording<br />
        * <Badge color="green" size="sm">Policies</Badge> Preserved escaped patterns on policy args<br />
        * <Badge color="red" size="sm">Contracts</Badge> Ensured contract name from schema v2 is respected<br />
        * <Badge color="red" size="sm">Contracts</Badge> Enabled org tokens to create contracts<br />
        * <Badge color="gray" size="sm">Backend</Badge> Resolved contract scope to use project name instead of UUID<br />
        * <Badge color="gray" size="sm">Backend</Badge> Prevented CAS redirection URL from being returned when CAS is not valid<br />
        * <Badge color="gray" size="sm">Backend</Badge> Ensured project version is promoted after attestation push<br />
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="February 22, 2026">
  * **Guide: [How to run LLM-driven policies](/guides/llm-policies)** - New guide covering how to use AI-powered prompts to evaluate evidence and attestations, including the built-in `evidence-prompt` policy and custom Rego policies with `chainloop.evidence_prompt`.
</Update>

<Update label="February 19, 2026">
  * **AI-powered evidence evaluation in policies**: New [`chainloop.evidence_prompt`](/reference/builtin-functions#chainloop-evidence_prompt) builtin function for Rego policies. Evaluate evidence such as SBOMs or SARIF reports using AI-powered analysis directly within your policy rules.
</Update>

<Update label="February 10, 2026">
  * **Download attestation for manual evidence**: You can now download the attestation for manual evidence from the evaluation views.
      <img src="https://mintcdn.com/chainloop/6KFWW4vejAL7FeK5/changelog/download-attestation-for-manual-evidence.png?fit=max&auto=format&n=6KFWW4vejAL7FeK5&q=85&s=c34c79932046ea10791a61ba87ef5cae" alt="Download Attestation for Manual Evidence" width="759" height="281" data-path="changelog/download-attestation-for-manual-evidence.png" />
</Update>

<Update label="February 10, 2026">
  * **Manual evidence in products**: You can now provide manual evidence from the products view, making it easier to track compliance at the product level.
      <img src="https://mintcdn.com/chainloop/6KFWW4vejAL7FeK5/changelog/manual-evidence-in-products.png?fit=max&auto=format&n=6KFWW4vejAL7FeK5&q=85&s=7851637e44f473472f092e06f9ed9df8" alt="Manual Evidence in Products" width="1019" height="401" data-path="changelog/manual-evidence-in-products.png" />
</Update>

<Update label="February 9, 2026">
  * **Instance Admin API tokens**: New EE CLI feature that allows the creation of Instance-level API tokens for the provisioning and configuration of organizations. Create new instance admin tokens with (needs user with [instance-admin privileges](/guides/deployment/guides/restrict-org-creation#step-2-configure-instance-admins-in-the-chainloop-platform)):

    ```
      chainloop admin api-token create --name <token-name>
    ```

    The following operations are enabled for instance API tokens:

    * `chainloop org create`
    * `chainloop org member invitation create`
    * `chainloop cas-backend add`

    Check \[Organization

  * **Built-in Policies documentation**: New documentation for built-in policies can be found [here](/reference/policies)
</Update>

<Update label="February 10, 2026">
  * **Relaxed CycloneDX SBOM validation**: A new `--no-strict-validation` flag is now available when adding CycloneDX SBOM materials via `chainloop attestation add`. This flag allows SBOMs that don't fully conform to the CycloneDX specification to be attached to attestations. Useful when working with third-party tools that generate SBOMs with minor schema deviations.
    ```bash theme={"dark"}
    chainloop attestation add --name my-sbom --value sbom.cdx.json --no-strict-validation
    ```
</Update>

<Update label="January 30, 2026">
  * **Chainloop EE unified Helm Chart (Preview)**: A new [unified Helm Chart](/guides/deployment/chainloop-ee) provides a streamlined way to deploy both the Evidence Store and Platform components together in Kubernetes environments.
      <img src="https://mintcdn.com/chainloop/_zqnZOrMUZij1efG/guides/deployment/img/platform-4.jpg?fit=max&auto=format&n=_zqnZOrMUZij1efG&q=85&s=65d5aec12d2f7e7a8e006242a8ccd77a" alt="Chainloop Platform" width="1060" height="942" data-path="guides/deployment/img/platform-4.jpg" />
  * **Docker Compose for local evaluation**: A [Docker Compose setup](/guides/evaluate-platform#local-docker-compose) is now available for quick local evaluation of the platform. Contact the Chainloop team to get started.
</Update>

<Update label="January 30, 2026">
  * **Improved search**: The command menu now shows all available entities and options, making it easier to find what you need. You can search for projects, products, policies, workflows, and more.
      <img src="https://mintcdn.com/chainloop/oqpwcE_INQxWVEFH/changelog/search-command-menu.png?fit=max&auto=format&n=oqpwcE_INQxWVEFH&q=85&s=5757d8d755220b2049ba29dc31f6ebae" alt="Search Command Menu" width="598" height="354" data-path="changelog/search-command-menu.png" />
</Update>

<Update label="January 30, 2026">
  * **Form updates**: We updated the requirement and policy forms to improve the user experience. The fields are now more organized, and the forms are more intuitive to use.
      <img src="https://mintcdn.com/chainloop/oqpwcE_INQxWVEFH/changelog/requirement-form.png?fit=max&auto=format&n=oqpwcE_INQxWVEFH&q=85&s=f7f9639508ed52bd7d31381148388a5e" alt="Requirement Form" width="974" height="742" data-path="changelog/requirement-form.png" />
      <img src="https://mintcdn.com/chainloop/oqpwcE_INQxWVEFH/changelog/policy-form.png?fit=max&auto=format&n=oqpwcE_INQxWVEFH&q=85&s=9af6b4d04378780e3a3d30c0e7be118a" alt="Policy Form" width="972" height="1026" data-path="changelog/policy-form.png" />
</Update>

<Update label="January 30, 2026">
  * **Requirement test freshness**: Requirement policies and manual evidence proofs can be set to expire after a certain time. Once expired, the requirement will be automatically marked as “Expired”. This can be useful to ensure that proofs of compliance are fresh and relevant at all times.
      <img src="https://mintcdn.com/chainloop/pZkHFA76n7R86qmq/concepts/img/freshness.png?fit=max&auto=format&n=pZkHFA76n7R86qmq&q=85&s=d2b3109117a5c1f8e94046e11f2b1c6a" alt="Freshness" width="590" height="398" data-path="concepts/img/freshness.png" />
</Update>

<Update label="January 28, 2026">
  * **New Compare tab in Contract view**: A new tab in the Contract view allows users to compare different versions of a contract side by side, highlighting additions, deletions, and modifications for easy review.
      <img src="https://mintcdn.com/chainloop/qjXOKuvkyNvrOkW3/changelog/compare-contracts.png?fit=max&auto=format&n=qjXOKuvkyNvrOkW3&q=85&s=02b93cb93c47890d89d3544f56b887e4" alt="Compare Contracts" width="1332" height="987" data-path="changelog/compare-contracts.png" />
</Update>

<Update label="January 21, 2026">
  * **Product-level compliance**: we have added support for product-scoped requirements in frameworks.
    This new feature allows to perform compliance assessment directly from products, useful when compliance status doesn't depend on the underlying projects.

      <img src="https://mintcdn.com/chainloop/qRHgpG70dZ9eboAN/changelog/product-requirement.png?fit=max&auto=format&n=qRHgpG70dZ9eboAN&q=85&s=dc694775b660f35a1296dd1c4f6a1320" alt="Product requirements" width="767" height="462" data-path="changelog/product-requirement.png" />

    Product-scoped requirements accept manual evidence submissions, but they don't yet support automated compliance from attestations.

  * **Product compliance filters** now affects to the compliance status charts, reflecting the status of what users have selected.

      <img src="https://mintcdn.com/chainloop/qRHgpG70dZ9eboAN/changelog/product-filters.png?fit=max&auto=format&n=qRHgpG70dZ9eboAN&q=85&s=dd443d5b3fe629e2f8f73ff6fe41a797" alt="Product filters" width="1097" height="713" data-path="changelog/product-filters.png" />

  * **Requirement Lifecycle Management** - mark requirements as `Active` or `Inactive` to control which ones are evaluated in your compliance assessments. Inactive requirements don't count toward your scores, making it easy to track requirements you're still defining without impacting your current compliance status. Learn more about [managing requirement lifecycles](/concepts/compliance-frameworks#requirement-lifecycle-management) in frameworks.
      <img src="https://mintcdn.com/chainloop/EgAW2yMRDxNFPPg1/changelog/requirement-lifecycle.png?fit=max&auto=format&n=EgAW2yMRDxNFPPg1&q=85&s=ff1998d2b62e6eebb46814bdea3acc5d" alt="Requirement Lifecycle Management" width="1529" height="770" data-path="changelog/requirement-lifecycle.png" />
</Update>

<Update label="January 16, 2026">
  * Comment badges are now shown in the UI for requirement evaluations at the product level, making it easy to track comments for each evaluation.
      <img src="https://mintcdn.com/chainloop/qtbceFQb9j2fdUVt/changelog/comment-badges.png?fit=max&auto=format&n=qtbceFQb9j2fdUVt&q=85&s=fd07078ab0d481814f7473d4bb12f321" alt="Comment Badges" width="1045" height="568" data-path="changelog/comment-badges.png" />
</Update>

<Update label="January 15, 2026">
  * When running in a GitHub Actions environment, Chainloop’s CLI automatically submits the result of the `chainloop attestation push` command to GitHub’s step summary. On GitLab, it creates a text file and informs the user where to find it, allowing them to include it in the job artifacts.
    Here is an example of how it looks in GitHub Actions:

      <img src="https://mintcdn.com/chainloop/ORMfYaiafq08PNYM/changelog/ci-report-github.png?fit=max&auto=format&n=ORMfYaiafq08PNYM&q=85&s=c8071ca6a839e9cd73aac8fa63ff56e2" alt="GitHub Actions CI Report" width="1031" height="825" data-path="changelog/ci-report-github.png" />

    It can be deactivated by passing the flag `deactivate-ci-report` to the command.
</Update>

<Update label="January 12, 2026">
  * Add **Docker Compose evaluation option** - users can now evaluate the Chainloop Platform using a Docker Compose
    setup for quick local testing. This new evaluation method provides a simpler alternative to Kubernetes for users
    who want to try the platform locally. See the new [Evaluate Chainloop Platform](/guides/evaluate-platform) guide
    for details on all evaluation options including SaaS, Docker Compose, and Kubernetes.
  * Introduce [WASM Policy Engine](/guides/wasm-policies/overview) - learn how to build and use WebAssembly-based custom policies in an initial preview on Go and Javascript.
  * Introduce User Verification status on attestations. Chainloop's CLI is now able to tell if the commit where it's operating from is signed by a verified user.
    More details in the [Commit Verification](/concepts/attestations#commit-verification).

    Additionally, the `source-commit` policy has been updated to support this new feature by introducing two optional inputs:

    * `check_author_verified`: When set to true, the policy enforces that the commit must be signed by a verified user.
    * `required_signature_algorithm`: This input allows specifying the signature algorithm that must be used for the commit signature (e.g., `PGP`, `SSH`, or `X509`).
</Update>

<Update label="January 09, 2026">
  * Added automatic detection of [Tekton Pipelines](/concepts/contracts#tekton-pipeline) as a CI/CD runner, including environment discovery via the `/tekton/results` filesystem and initial metadata support for TaskRuns and PipelineRuns.
</Update>

<Update label="January 08, 2026">
  **Fallback Storage Backend**: Organizations can now configure a [fallback CAS backend](/concepts/cas-backend#fallback-backend) to ensure high availability for evidence storage. When the default backend is unreachable or fails validation, Chainloop automatically switches to the fallback backend, allowing attestation processes to continue without interruption.

  <img src="https://mintcdn.com/chainloop/1fljViX3SVebSE7I/changelog/cas-backends-fallback.png?fit=max&auto=format&n=1fljViX3SVebSE7I&q=85&s=0559fb5eddc9f13a8127ed7f4d59be5b" alt="CAS Backends with Fallback" width="731" height="183" data-path="changelog/cas-backends-fallback.png" />

  Configure in Platform [Storage Backends Section](https://app.chainloop.dev/cas-backends) or using CLI:

  ```bash theme={"dark"}
  chainloop cas-backend update oci --name [BACKEND_NAME] --fallback=true
  ```

  **Requirements Auto-Matching Control**: Organizations can now [deactivate automatic matching of policies to compliance requirements](/concepts/compliance-frameworks#deactivating-requirements-auto-matching), enforcing explicit requirement declarations in workflow contracts for tighter control over compliance mappings.

  When deactivated, only policies with explicit `requirements` declarations in contracts will be matched to framework requirements, ensuring intentional and explicit associations.

  <img src="https://mintcdn.com/chainloop/Jol1rA-GoqMNhiIv/changelog/deactivate-requirements-auto-matching.png?fit=max&auto=format&n=Jol1rA-GoqMNhiIv&q=85&s=b7740b6fed74b5dc8adf0964f4bba5bc" alt="Deactivate Requirements Auto-Matching" width="529" height="197" data-path="changelog/deactivate-requirements-auto-matching.png" />

  This can also be configured via CLI EE:

  ```bash theme={"dark"}
  chainloop org update --name [ORG_NAME] --disable-requirements-auto-matching
  ```
</Update>

<Update label="December 18, 2025">
  * Add automatic detection of **Pull Request and Merge Request** information during attestation - captures PR/MR metadata
    including title and description during attestation initialization, automatically gathering context about code review
    activities.

    This change introduces a new [material type](/concepts/material-types) called `CHAINLOOP_PR_INFO` that's automatically added to attestations
    when a PR/MR is detected in the CI/CD environment.

    ```json theme={"dark"}
    {
        "chainloop.material.evidence.id": "CHAINLOOP_PR_INFO",
        "schema": "https://schemas.chainloop.dev/prinfo/1.0/pr-info.schema.json",
        "data": {
            "platform": "github",
            "type": "pull_request",
            "number": "3621",
            "title": "chore(frontend): fix trust hub loading",
            "description": "This patch fixes the loading skeleton in trust hub graph, without the min height the skeleton wasn't displayed properly (it was almost invisible)",
            "source_branch": "feat/trust-hub-graph-fix",
            "target_branch": "main",
            "url": "https://github.com/chainloop-dev/chainkloop/pull/3621",
            "author": "john"
        }
    }
    ```

  * Add [organization setting to restrict project-scoped contract creation](/concepts/contracts) - administrators can
    now prevent project admins from creating project-level contracts, ensuring all contracts are managed at the
    organization level to prevent contract sprawl
      <img src="https://mintcdn.com/chainloop/RO2O5Hbs9Uv28Rsn/changelog/restrict-contract.png?fit=max&auto=format&n=RO2O5Hbs9Uv28Rsn&q=85&s=774a44d8d0a522404f5224df96ef1967" alt="Restrict Project Contracts" width="786" height="80" data-path="changelog/restrict-contract.png" />
</Update>

<Update label="December 17, 2025">
  **Trust Hub Improvements & restyling**: Trust Hub Graphs now have a different, improved style with a new more modern
  look. We also introduce some UX improvements e.g. graph centering on load, tooltip on node hover, collapsible
  references, click load more nodes handling

  <img src="https://mintcdn.com/chainloop/RO2O5Hbs9Uv28Rsn/changelog/hub-revamp.png?fit=max&auto=format&n=RO2O5Hbs9Uv28Rsn&q=85&s=a41c1c439d1740973a78d5fe7436d72d" alt="Trust Hub Improvements" width="1231" height="696" data-path="changelog/hub-revamp.png" />
</Update>

<Update label="December 16, 2025">
  ## Control gates

  Introduce [control gates](/concepts/control-gates) - policies can now act as gates during attestation, interrupting
  the attestation process when violations are detected through the `gate` property in policy attachments, enabling
  fail-fast policy enforcement in CI/CD pipelines

  ```yaml theme={"dark"}
    apiVersion: chainloop.dev/v1
    kind: Contract
    metadata:
      name: my-workflow
    spec:
      policies:
        materials:
          - ref: critical-policy
            gate: true  # Fail attestation on violations
  ```

  ## CLI updates

  * Add `evidence list` command to [CLI Enterprise
    Edition](/command-line-reference/cli-ee-reference#chainloop-evidence-list) - list and filter evidence
    programmatically from the command line for automation and reporting workflows
    ```bash theme={"dark"}
    # List evidence for a project
    chainloop evidence list --project my-project

    # Filter by evidence type
    chainloop evidence list --project my-project --kind SBOM_CYCLONEDX_JSON

    ```

  ## Policy engine improvements

  * `chainloop.evidence` [built-in function](/reference/builtin-functions#chainloop-evidence) for policy engine -
    retrieve and query evidence across projects and product versions within Rego policies for advanced compliance
    scenarios
    ```ruby theme={"dark"}
    package main
    import rego.v1

    result := {"violations": violations}

    violations contains msg if {
      evidence := chainloop.evidence({
        "project_name": "my-project",
        "kind": ["SBOM_CYCLONEDX_JSON"]
      })

      count(evidence.result) == 0
      msg := "No SBOM found for project"
    }
    ```

  * `chainloop.project_compliance` [built-in function](/reference/builtin-functions#chainloop-project-compliance) for
    policy engine - query compliance requirement evaluations within policies using declarative project and version names
    for control gate implementations
    ```ruby theme={"dark"}
    package main
    import rego.v1

    result := {"violations": violations}

    violations contains msg if {
      compliance := chainloop.project_compliance({
        "project_name": "my-project",
        "project_version_name": "v1.0.0"
      })

      some eval in compliance.evaluations
      eval.status == "fail"
      msg := sprintf("Requirement %s failed", [eval.name])
    }
    ```
</Update>

<Update label="December 15, 2025">
  * Fix contract schema: move annotations from metadata to spec - attestation-level annotations now correctly reside
    in the `spec.annotations` field instead of `metadata.annotations` for proper semantic alignment

  ```yaml theme={"dark"}
  apiVersion: chainloop.dev/v1
  kind: Contract
  metadata:
    name: my-workflow
  spec:
    annotations:  # Correct location
      - name: release-version
        value: "1.0.0"
  ```
</Update>

<Update label="December 12, 2025">
  * Introduce **comments system** for requirement evaluations - add comments and justifications to compliance requirement evaluations with markdown support, enabling teams to document decisions, provide context, and collaborate on compliance assessments
      <img src="https://mintcdn.com/chainloop/RO2O5Hbs9Uv28Rsn/changelog/comments.png?fit=max&auto=format&n=RO2O5Hbs9Uv28Rsn&q=85&s=bb75fd935e489302990d1fab698ba14d" alt="Comments System" width="423" height="240" data-path="changelog/comments.png" />

  <AccordionGroup>
    <Accordion title="Fixes">
      <div style={{ fontSize: "0.75em" }}>
        - Fix 404 error when saving first contract in web UI - contract creation now works correctly on first save
        - Fix user invitation dialog to handle leading whitespace - email inputs are now trimmed automatically to prevent invitation failures
        - Fix unsaved changes alert when updating CAS backend descriptions - form now correctly detects and warns about unsaved changes
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="November 28, 2025">
  # Platform v0.302.1

  ## SLSA 1.2 release

  [Chainloop now supports SLSA 1.2](https://chainloop.dev/blog/slsa-1-2-support/), the latest version of the Supply-chain Levels for Software Artifacts framework. This update brings enhanced provenance attestation capabilities and improved compliance tracking aligned with the latest SLSA specifications.

  For more information, see our [SLSA guides](/guides/slsa) for best practices and implementation steps.

  <img src="https://mintcdn.com/chainloop/KMUOqtquJl5v2YsG/changelog/slsa-1-2.png?fit=max&auto=format&n=KMUOqtquJl5v2YsG&q=85&s=00e90e232f2e9881531d9c34d9264e66" alt="SLSA 1.2 Support" width="1578" height="1251" data-path="changelog/slsa-1-2.png" />

  ## Requirement evaluation overrides

  You can now manually override the evaluation status of compliance requirements with justification. This enables teams to document exceptions and provide context when requirements cannot be met through automated means.

  Overrides are available in both project and product evaluation views. When a requirement is overridden, the status badge changes to "Status Overridden" and displays the justification below the evaluation header. Overrides are also included in the product compliance API response for programmatic access.

  <img src="https://mintcdn.com/chainloop/KMUOqtquJl5v2YsG/changelog/override-dialog.png?fit=max&auto=format&n=KMUOqtquJl5v2YsG&q=85&s=70bc3a9f6ca67de4efebcb95f462e9c6" alt="Override Dialog" width="453" height="399" data-path="changelog/override-dialog.png" />

  <img src="https://mintcdn.com/chainloop/KMUOqtquJl5v2YsG/changelog/override-status.png?fit=max&auto=format&n=KMUOqtquJl5v2YsG&q=85&s=e7bdff3d1f7ec9715ea32c3650e333a6" alt="Override Status Display" width="1085" height="196" data-path="changelog/override-status.png" />

  <AccordionGroup>
    <Accordion title="Fixes">
      <div style={{ fontSize: "0.75em" }}>
        * <strong>Evaluations</strong> - Fixed 500 errors caused by cache failures. The system now gracefully handles cache reconnection issues by logging and recovering instead of returning errors<br />
        * <strong>Evidence API</strong> - Fixed product version filtering to correctly use the specific project version attached to the product version, rather than any version of the underlying project<br />
        * <strong>Built-in frameworks</strong> - Fixed parent section references not updating when frameworks are renamed (e.g., slsa-1-1 to slsa-1-2). Sections now correctly maintain their hierarchy position<br />
        * <strong>Frameworks</strong> - Improved scrolling behavior for deeply nested sections (more than 2 levels)<br />
        * <strong>Table of contents</strong> - Removed buggy tooltip from table of contents component
      </div>
    </Accordion>
  </AccordionGroup>
</Update>

<Update label="November 20, 2025">
  * Add `skip` field to [policy group attachments](/concepts/policy-groups#skipping-specific-policies) - selectively exclude specific policies from evaluation within a policy group without modifying the group itself, enabling flexible policy enforcement per workflow

  ```yaml theme={"dark"}
  apiVersion: chainloop.dev/v1
  kind: Contract
  metadata:
  name: example-contract
  spec:
  policyGroups:
    - ref: sbom-quality-group
      skip:
        - sbom-present
        - my-other-policy
  ```
</Update>

<Update label="November 18, 2025">
  * Add support for **custom built-in functions** in the policy Rego engine - extend policy evaluation capabilities with [custom builtins](/reference/builtin-functions) for advanced policy scenarios and domain-specific validation logic
    ```ruby theme={"dark"}
    package main
    import rego.v1

    result := {"violations": violations}

    violations contains msg if {
        digest := sprintf("sha256:%s",[input.chainloop_metadata.digest.sha256])
        discovered := chainloop.discover(digest, "")

        some ref in discovered.references
        ref.kind == "ATTESTATION"
        ref.metadata.hasPolicyViolations == "true"

        msg:= sprintf("artifact belongs to attestation with digest %s, which contains policy violations [name: %s, project: %s, org: %s]", [ref.digest, ref.metadata.name, ref.metadata.project, ref.metadata.organization])
    }
    ```
</Update>

<Update label="November 18, 2025">
  Improvements in the runner context gatherer and [branch protection policies](/reference/branch-protection-policies)

  * Add `branches` parameter to the policies specify which branches should be evaluated for compliance, enabling targeted policy enforcement on main/production branches only
  * Add branch filtering to runner context gatherer - optimize GitHub branch protection analysis by specifying target branches, reducing API calls and improving performance for repositories with many branches
</Update>

<Update label="November 16, 2025">
  * Expose `has_policy_violations` flag in `attestation status` command - enables CI/CD control gates to fail pipelines based on policy violation status
</Update>

<Update label="November 16, 2025">
  * Add policy violation filtering to workflow run queries - list and filter workflow runs by policy violation status for better compliance monitoring and reporting

  ```bash theme={"dark"}
  # List only runs with policy violations
  chainloop workflow run list --workflow my-workflow --has-violations

  # List only runs without policy violations
  chainloop workflow run list --workflow my-workflow --no-violations
  ```
</Update>

<Update label="November 14, 2025">
  * Add UI support for [preventing workflow creation](/concepts/attestations#preventing-implicit-workflow-creation) - organization setting now available in the UI to require explicit workflow creation before attestations, preventing automatic workflow proliferation in automated environments
      <img src="https://mintcdn.com/chainloop/F80RlUlRCVSsE7ab/changelog/settings-workflow-creation.png?fit=max&auto=format&n=F80RlUlRCVSsE7ab&q=85&s=aaa4a0a7ab29bf5635cfbd43b08ab62e" alt="Prevent Workflow Creation UI" width="952" height="533" data-path="changelog/settings-workflow-creation.png" />
</Update>

<Update label="November 14, 2025">
  * Extend chainloop-best-practices framework with Source Code integrity controls - automatically verify branch protection policies, code review requirements, commit signing, and SAST scanning to ensure secure development practices across repositories
      <img src="https://mintcdn.com/chainloop/F80RlUlRCVSsE7ab/changelog/best-practices-branch-protection.png?fit=max&auto=format&n=F80RlUlRCVSsE7ab&q=85&s=6da38b6ff6deaccac259ef8142003378" alt="Best Practices Framework" width="1540" height="1261" data-path="changelog/best-practices-branch-protection.png" />
</Update>

<Update label="November 14, 2025">
  * Add `--existing-version` flag to `attestation init` command - ensure attestations only associate with pre-existing project versions, preventing accidental version creation during backpatching and packaging workflows

  ```bash theme={"dark"}
  # Fail if version doesn't exist (useful for backpatches)
  chainloop att init --workflow sast --project my-project --version v1.2.3 --existing-version

  # Error output when version doesn't exist:
  # ERR validation error: project version "v1.2.3" not found
  ```
</Update>

<Update label="November 14, 2025">
  * Add CLI commands for [project management](/command-line-reference/cli-ee-reference#chainloop-project) - create, list, update, describe, and delete projects directly from the command line

  ```bash theme={"dark"}
  # Create a new project
  chainloop project create --name my-project --description "My project description"

  # List all projects
  chainloop project list
  ```
</Update>

<Update label="November 14, 2025">
  * Add CLI commands for [project version management](/command-line-reference/cli-ee-reference#chainloop-project-version) - create, list, update, describe, and delete project versions with prerelease/release status control

  ```bash theme={"dark"}
  # Create a new prerelease version
  chainloop project version create --project my-project --name v1.0.0

  # Create a released version
  chainloop project version create --project my-project --name v1.0.0 --is-released
  ```
</Update>

<Update label="November 11, 2025">
  * Add `skip_upload` capability to [workflow contracts](/concepts/contracts#materials) - control whether materials are uploaded to CAS while still recording metadata like digest and filename in attestations, enabling efficient attestation of large artifacts already stored externally

  ```yaml theme={"dark"}
  # Example
  apiVersion: chainloop.dev/v1
  kind: Contract
  metadata:
    name: my-workflow
  spec:
    materials:
      - name: large-binary
        type: ARTIFACT
        skip_upload: true  # Only record metadata, don't upload to CAS
      - name: sbom
        type: SBOM_CYCLONEDX_JSON
        # skip_upload defaults to false - normal upload behavior
  ```
</Update>

<Update label="November 11, 2025">
  * Add [organization setting to prevent implicit workflow creation](/concepts/attestations#preventing-implicit-workflow-creation) during attestation - workflows must now be explicitly created via CLI when enabled, preventing workflow proliferation in automated environments

  ```bash theme={"dark"}
  chainloop att init --workflow sast --project my-project-2222
  ERR creating workflows during the attestation process is disabled for this organization. Please create them in advance or contact your administrator
  ```
</Update>

<Update label="November 11, 2025">
  * Add external policy references support to `policy devel eval` command - evaluate policies from HTTP/HTTPS URLs (`https://...`), Chainloop registry (`chainloop://policy-name`), or local files for flexible policy testing and development workflows

  ```bash theme={"dark"}
  # Evaluate policy from HTTP URL
  chainloop policy devel eval --policy https://raw.githubusercontent.com/chainloop-dev/chainloop/main/docs/examples/policies/quickstart/cdx-fresh.yaml --material sbom.json
  {
   "result": {
      "violations": [
         "SBOM created at: 2024-01-09T12:00:00Z which is too old (freshness limit set to 30 days)"
      ],
      "skip_reasons": [],
      "skipped": false
   }
  }

  # Evaluate policy from Chainloop registry
  chainloop policy devel eval --policy chainloop://sbom-ntia --material sbom.json
  {
   "result": {
      "violations": [
         "missing author",
         "missing supplier for 'AES-256-GCM'",
         "missing supplier for 'ECDH'",
         "missing supplier for 'RSA-2048'",
         "missing supplier for 'SHA384'",
         "missing supplier for 'SHA512withRSA'",
         "missing supplier for 'TLSv1.2'",
         "missing supplier for 'google.com'",
         "missing unique identifier (PURL, CPE, SWID) for 'AES-256-GCM'",
         "missing unique identifier (PURL, CPE, SWID) for 'ECDH'",
         "missing unique identifier (PURL, CPE, SWID) for 'RSA-2048'",
         "missing unique identifier (PURL, CPE, SWID) for 'SHA384'",
         "missing unique identifier (PURL, CPE, SWID) for 'SHA512withRSA'",
         "missing unique identifier (PURL, CPE, SWID) for 'TLSv1.2'",
         "missing unique identifier (PURL, CPE, SWID) for 'google.com'",
         "missing version for 'AES-256-GCM'",
         "missing version for 'ECDH'",
         "missing version for 'RSA-2048'",
         "missing version for 'SHA384'",
         "missing version for 'SHA512withRSA'",
         "missing version for 'TLSv1.2'",
         "missing version for 'google.com'"
      ],
      "skip_reasons": [],
      "skipped": false
   }
  }
  ```
</Update>

<Update label="November 06, 2025">
  * Slack webhooks can now be used to send System and Product notifications, in addition to current attestation fan-out messages.
      <img src="https://mintcdn.com/chainloop/onWWWtLLv4E-shg7/changelog/slack-notification.png?fit=max&auto=format&n=onWWWtLLv4E-shg7&q=85&s=48b2d258766c59ab719b9714f317f8b9" alt="Slack Notification" width="535" height="262" data-path="changelog/slack-notification.png" />
</Update>

<Update label="November 03, 2025">
  * Add support for attesting container images from local OCI layout directories - enables secure image attestation in air-gapped environments and registry-less deployments without requiring image push to remote registries

  ```bash theme={"dark"}
  # Single image layout (automatic)
  chainloop attestation add \
    --name my-app \
    --value /path/to/oci-layout \
    --kind CONTAINER_IMAGE

  # Multi-image layout (requires digest selector)
  chainloop attestation add \
    --name my-app \
    --value /path/to/oci-layout@sha256:9a7ef86e19... \
    --kind CONTAINER_IMAGE
  ```

  * Add custom endpoint configuration for [Azure Blob Storage](/concepts/cas-backend#azure-blob-storage) CAS backends - enables support for Azure Government Cloud and other sovereign cloud environments by allowing custom endpoint suffixes
      <img src="https://mintcdn.com/chainloop/CUVPKeYIg7BtPCez/changelog/azure-blob-endpoint.png?fit=max&auto=format&n=CUVPKeYIg7BtPCez&q=85&s=ff97206d0131ef2fc289aec0114a537c" alt="Azure Blob Endpoint Configuration" width="763" height="506" data-path="changelog/azure-blob-endpoint.png" />
</Update>

<Update label="October 31, 2025">
  * Introduce new [contract schema](/concepts/contracts) format to align with other compliance resources.
  * Add [Policy Group](/concepts/policy-groups) management commands in [Chainloop CLI Enterprise Edition](/command-line-reference/cli-ee-reference#chainloop-policy-group) - store and manage reusable policy groups in the platform with declarative YAML configuration

  ```bash theme={"dark"}
  # Create or update a policy group
  chainloop policy-group apply --file sbom-quality.yaml

  # List all policy groups
  chainloop policy-group list

  # Describe a specific policy group
  chainloop policy-group describe --name sbom-quality
  ```

  * Add [`chainloop workflow contract apply`](/command-line-reference/cli-ee-reference#chainloop-workflow-contract-apply) command for declarative contract management - simplifies contract lifecycle by creating or updating contracts from YAML files in a single operation
</Update>

<Update label="October 28, 2025">
  * Introduce [Chainloop CLI Enterprise Edition](/command-line-reference/cli-installation) - proprietary extension of the open-source CLI with additional features and capabilities available in platform paid plans

  ```bash theme={"dark"}
  # Install CLI Enterprise Edition
  curl -sfL https://dl.chainloop.dev/cli/install.sh | bash -s -- -ee
  ```

  Key features include:

  * [Declarative policy management](/guides/custom-policies#store-custom-policy) - store and reuse custom policies in the platform with YAML-based configuration and Rego evaluation logic for consistent supply chain security enforcement across workflows
  * [Advanced runner context](/reference/runner-context#gathering-runner-context) - capture and attest CI/CD environment security configuration including branch protection settings, pull request requirements, and commit protection for enhanced compliance verification
</Update>

<Update label="October 25, 2025">
  * Add [Compliance Overview](/concepts/products#compliance-overview) to product view for comprehensive visibility into compliance frameworks and requirements across product versions with drill-down capabilities into underlying projects
      <img src="https://mintcdn.com/chainloop/-VURpsffh83G3c-I/concepts/img/product-compliance.png?fit=max&auto=format&n=-VURpsffh83G3c-I&q=85&s=f18796a5d2a196c9d562274db6509ddd" alt="Product Compliance" width="1644" height="1083" data-path="concepts/img/product-compliance.png" />
  * Add [Evidence](/concepts/products#evidence-tab) tab to product view for centralized access to all pieces of evidence across product versions, including artifacts, SBOMs, VEX documents, vulnerability reports, and provenance data with advanced filtering capabilities
      <img src="https://mintcdn.com/chainloop/-VURpsffh83G3c-I/concepts/img/product-evidence.png?fit=max&auto=format&n=-VURpsffh83G3c-I&q=85&s=53ade3c5a6c0f95ed812c4bcb358bd22" alt="Product Evidence Tab" width="1905" height="1195" data-path="concepts/img/product-evidence.png" />
</Update>

<Update label="October 22, 2025">
  * Add notification trigger for product releases - receive alerts when new product versions are released
</Update>

<Update label="October 21, 2025">
  * Expose OpenAPI spec preconfigured for your specific instance of Chainloop
    You can find it at `https://your-backend-instance/openapi.yaml` for example [here](https://api.app.chainloop.dev/openapi.yaml)
</Update>

<Update label="October 20, 2025">
  * Add notifications for aggregated product compliance changes - stay informed about compliance status updates (failures and recoveries)
      <img src="https://mintcdn.com/chainloop/5Tl2PSZfLTCZeFA-/concepts/img/notifications-select.png?fit=max&auto=format&n=5Tl2PSZfLTCZeFA-&q=85&s=f4a4af8f9f73065d914e1653619d7355" alt="Product notifications" width="534" height="600" data-path="concepts/img/notifications-select.png" />
</Update>

<Update label="October 17, 2025">
  * Introduce [Notification Integrations](/concepts/notifications) - send alerts about system status through Microsoft Teams and Email Notifications
      <img src="https://mintcdn.com/chainloop/5Tl2PSZfLTCZeFA-/concepts/img/integrations-9.png?fit=max&auto=format&n=5Tl2PSZfLTCZeFA-&q=85&s=5b8d7e75872e7cbd49735458f6ce4b5a" alt="Notification Integrations" width="1842" height="1183" data-path="concepts/img/integrations-9.png" />
</Update>

<Update label="October 15, 2025">
  * Add [Evidence](/concepts/projects-versions#evidence-tab) tab to project view for centralized access to all pieces of evidence, including artifacts, SBOMs, VEX documents, vulnerability reports, and provenance data with advanced filtering capabilities
      <img src="https://mintcdn.com/chainloop/eyalUM_iyNI7E-xA/concepts/img/evidence.png?fit=max&auto=format&n=eyalUM_iyNI7E-xA&q=85&s=3e4cd32efd9188306cf0b801ca19d578" alt="Evidence Tab" width="1470" height="1028" data-path="concepts/img/evidence.png" />
</Update>

<Update label="October 10, 2025">
  * Add system status page to monitor platform health and view past incidents in real-time
      <img src="https://mintcdn.com/chainloop/kYXuPr-swOeVPLCv/changelog/status-page.png?fit=max&auto=format&n=kYXuPr-swOeVPLCv&q=85&s=ec21f89e77022d67a93229fb6554dede" alt="Status Page" width="1656" height="525" data-path="changelog/status-page.png" />
</Update>

<Update label="October 09, 2025">
  * Introduce [Business Units](/concepts/business-units) - organize products by department, division, or team for better organizational structure management
      <img src="https://mintcdn.com/chainloop/tUPEKuU3jbmbDIWl/changelog/bus.png?fit=max&auto=format&n=tUPEKuU3jbmbDIWl&q=85&s=99a36e65aef562f0cb59dd6f8e0bac92" alt="Business Units" width="1260" height="447" data-path="changelog/bus.png" />
</Update>

<Update label="September 15, 2025">
  * Display user group memberships in the members table with contextual group inspection
      <img src="https://mintcdn.com/chainloop/6-vJOQucCHfEzZdn/changelog/user-groups.png?fit=max&auto=format&n=6-vJOQucCHfEzZdn&q=85&s=a7e80e6daa204a684f4d5f6593da3957" alt="User groups" width="1870" height="832" data-path="changelog/user-groups.png" />
</Update>

<Update label="September 13, 2025">
  * Allow to re-evaluate requirements from existing workflow runs
      <img src="https://mintcdn.com/chainloop/EeWVZM7Oh1YhM4mI/changelog/compliance-recalculate.png?fit=max&auto=format&n=EeWVZM7Oh1YhM4mI&q=85&s=dc6b6ebd5285fd5036f38d3eecdcf4da" alt="Recalculate compliance" width="931" height="646" data-path="changelog/compliance-recalculate.png" />
</Update>

<Update label="September 12, 2025">
  * Fix GitLab integration authentication issues
</Update>

<Update label="September 09, 2025">
  * Implement automatic Storage backend health checks every 30 minutes with owner notifications on status changes via Email and Audit Log
      <img src="https://mintcdn.com/chainloop/EeWVZM7Oh1YhM4mI/changelog/cas-backend-events.png?fit=max&auto=format&n=EeWVZM7Oh1YhM4mI&q=85&s=d74a78edaf32b0edc47fa5abf3da77cd" alt="Storage health check" width="843" height="133" data-path="changelog/cas-backend-events.png" />
</Update>

<Update label="September 04, 2025">
  * Improve product compliance view with aggregated compliance charts

      <img src="https://mintcdn.com/chainloop/SVENSGqAeLVq42_9/changelog/product-compliance.png?fit=max&auto=format&n=SVENSGqAeLVq42_9&q=85&s=78ffa5a9b2b4348c91dc57633574e4c5" alt="Compliance" width="1054" height="536" data-path="changelog/product-compliance.png" />

  * Fix CAS backend permission errors when storage cannot be reached
</Update>

<Update label="September 03, 2025">
  * Add [documentation for branch protection policies](https://docs.chainloop.dev/reference/branch-protection-policies#branch-protection-policies) including GitLab integration
</Update>

<Update label="September 02, 2025">
  * Allow product-level applicability settings with inheritance to project versions
      <img src="https://mintcdn.com/chainloop/EeWVZM7Oh1YhM4mI/changelog/product-applicability-inheritance.png?fit=max&auto=format&n=EeWVZM7Oh1YhM4mI&q=85&s=2b87c5207307a4796d9db7c49c4aa73e" alt="Product applicability inheritance" width="903" height="320" data-path="changelog/product-applicability-inheritance.png" />

  * Extend `banned-licenses` policy to support SPDX license expressions
</Update>

<Update label="August 29, 2025">
  * Allow creating product versions from previous ones - streamlines version management by pre-populating projects and compliance mappings

      <img src="https://mintcdn.com/chainloop/SVENSGqAeLVq42_9/changelog/prefill.png?fit=max&auto=format&n=SVENSGqAeLVq42_9&q=85&s=38c630c01350aa459e38d148562ecc98" alt="Prefill version" width="533" height="213" data-path="changelog/prefill.png" />
</Update>

<Update label="August 28, 2025">
  * Replace bitnami containers with custom builds to address container initialization issues
</Update>

<Update label="August 27, 2025">
  * Requirements applicability for projects and versions - define which requirements apply to specific projects or versions within a product for tailored compliance management

      <img src="https://mintcdn.com/chainloop/SVENSGqAeLVq42_9/changelog/applicability.png?fit=max&auto=format&n=SVENSGqAeLVq42_9&q=85&s=5a4183d4387845bb864efdd82ce9b8ec" alt="Applicability" width="1042" height="815" data-path="changelog/applicability.png" />
</Update>

<Update label="August 25, 2025">
  * Pin project versions on product releases to maintain stable relationships
      <img src="https://mintcdn.com/chainloop/EeWVZM7Oh1YhM4mI/changelog/product-release.png?fit=max&auto=format&n=EeWVZM7Oh1YhM4mI&q=85&s=7ef6142bb578b4bec537407ecc956f4e" alt="Product release" width="510" height="276" data-path="changelog/product-release.png" />
  * Standardize on "pre-release" terminology across the platform
</Update>

<Update label="August 18, 2025">
  * Enable inviting external users to products
  * Add audit entries when adding users/groups to products and projects

      <img src="https://mintcdn.com/chainloop/SVENSGqAeLVq42_9/changelog/invite-product.png?fit=max&auto=format&n=SVENSGqAeLVq42_9&q=85&s=412e56f81d596e7bb041ba5ded87271c" alt="Invite new members" width="412" height="351" data-path="changelog/invite-product.png" />
</Update>

<Update label="August 15, 2025">
  * On-prem: New [instance-level Admin role](https://docs.chainloop.dev/guides/deployment/guides/provisioning#instance-administrators) for managing organization creation.
</Update>

<Update label="August 14, 2025">
  * Product version lifecycle management
      <img src="https://mintcdn.com/chainloop/EeWVZM7Oh1YhM4mI/changelog/product-versions.png?fit=max&auto=format&n=EeWVZM7Oh1YhM4mI&q=85&s=b031574b32e08e6000e5b6aa0699d533" alt="Product versions" width="344" height="232" data-path="changelog/product-versions.png" />
</Update>

<Update label="August 8, 2025">
  * Add contextual help links in UI pointing to documentation and RBAC guide
</Update>

<Update label="July 18, 2025">
  * Ensure at least one Org Owner is present in the organization before leaving
</Update>

Refer to [this collection of blog posts](https://chainloop.dev/blog-categories/changelog) for additional historical changes.
