Skip to content

v0.4.5

Choose a tag to compare

@github-actions github-actions released this 07 Aug 19:18
· 210 commits to main since this release
02029ff

Supply-chain transparency

  • SBOMs: iris-npm-sbom.spdx.json + iris-docker-sbom.spdx.json (attached below). Both are SPDX 2.3 JSON, cover direct + transitive dependencies.
  • SBOM signatures: each SBOM has a companion .cosign.bundle (Sigstore bundle — signature + cert + Rekor entry) attached to this release. Verify with:
    cosign verify-blob \
      --bundle iris-npm-sbom.spdx.json.cosign.bundle \
      --certificate-identity-regexp='https://github.com/iris-eval/mcp-server' \
      --certificate-oidc-issuer='https://token.actions.githubusercontent.com' \
      iris-npm-sbom.spdx.json
    
  • npm provenance: published with --provenance (verifiable via npm audit signatures or on the package page).
  • Docker signature: image signed with cosign keyless (Sigstore). Verify with:
    cosign verify ghcr.io/iris-eval/mcp-server:v0.4.5 \
      --certificate-identity-regexp='https://github.com/iris-eval/mcp-server' \
      --certificate-oidc-issuer='https://token.actions.githubusercontent.com'
    
  • Build attestation: both the npm SBOM and Docker image manifest carry GitHub-signed build-provenance attestations. Inspect with gh attestation verify or cosign verify-attestation.

What's Changed

  • fix(release): cosign v4 sign-blob — use --bundle (SBOM signing was broken) by @irparent in #198
  • chore(deps): bump esbuild and tsx in /packages/init by @dependabot[bot] in #196
  • deps(dashboard): override esbuild 0.28.1 (clears last esbuild alerts) by @irparent in #199
  • ci: bump the docker group across 1 directory with 4 updates by @dependabot[bot] in #185
  • fix(ci): lighthouse median-of-3 to kill the flake (#193) by @irparent in #200
  • test(eval): property-based fuzz over EvalEngine (closes Scorecard Fuzzing) by @irparent in #201
  • chore(truthbase): regen test count for the fuzz test (vitestRoot 423→424) by @irparent in #202
  • fix(ci): nightly real-LLM smoke skips gracefully without OPENAI_API_KEY by @irparent in #203
  • deps(dashboard): bump undici from 7.25.0 to 7.28.0 in /dashboard by @dependabot[bot] in #217
  • ci: bump vite from 8.0.9 to 8.0.16 in /packages/init by @dependabot[bot] in #216
  • deps(website): bump js-yaml from 4.1.1 to 4.3.0 in /website by @dependabot[bot] in #221
  • feat(discoverability): llms.txt + llms-full.txt + tool-agnostic client matrix by @irparent in #229
  • fix(deps): bump transitive @babel/core to 7.29.7 (closes final 2 Dependabot alerts) by @irparent in #230
  • feat(init): universal installer covers all nine clients (zero-tooling setup) by @irparent in #231
  • ci: OIDC release workflow for @iris-eval/init by @irparent in #232
  • ci: one-shot bootstrap publish for @iris-eval/init by @irparent in #233
  • fix(init): local vitest config for isolated CI checkouts by @irparent in #234
  • feat(plugin): Claude Code plugin + installable marketplace by @irparent in #235
  • feat(website): llms.txt surfaces advertise the Claude Code plugin by @irparent in #236
  • fix(claims): pattern counts told the truthbase a lie — 12/14/18 → 10/13/17 by @irparent in #244
  • fix(website): retire public version + manifest drift — truthbase drives what visitors see by @irparent in #245
  • fix(llms): llms-full.txt quoted the inflated pattern counts — 12/14/18 → 10/13/17 by @irparent in #246
  • chore(audit): coverage gate enforced + init DX + E2E truthbase capture + compare OG set complete by @irparent in #247
  • fix(claims): Phase E completion — every content surface truthbase-aligned, scanner extended to see them all by @irparent in #248
  • chore(website): erase the 26-error lint debt + add the missing website CI gate by @irparent in #249
  • fix(ci): end the self-deadlock — resolve 4 HIGH advisories + remove the gate that blocked its own fix by @irparent in #271
  • fix(citation-verify): IPv6 SSRF guard was inert for address literals by @irparent in #269
  • chore(ci): pin npm in release workflows instead of installing @latest by @irparent in #270
  • deps(website): bump postcss and next in /website by @dependabot[bot] in #274
  • deps: bump hono from 4.12.25 to 4.13.1 by @dependabot[bot] in #267
  • deps(dashboard): bump postcss from 8.5.15 to 8.5.26 in /dashboard by @dependabot[bot] in #272
  • chore(deps-dev): bump postcss from 8.5.15 to 8.5.26 in /packages/init by @dependabot[bot] in #273
  • deps(dashboard): bump undici from 7.28.0 to 7.29.0 in /dashboard by @dependabot[bot] in #266
  • deps(dashboard): bump brace-expansion from 5.0.5 to 5.0.7 in /dashboard by @dependabot[bot] in #255
  • deps: bump body-parser from 2.2.2 to 2.3.0 by @dependabot[bot] in #256
  • deps(website): bump sharp from 0.34.5 to 0.35.0 in /website by @dependabot[bot] in #258
  • fix(dashboard): bump react-router-dom to 7.18.2 — closes 4 of 5 advisories by @irparent in #279
  • deps(website): bump js-yaml from 4.3.0 to 4.3.1 in /website by @dependabot[bot] in #275
  • fix(dashboard): override ws to ^8.21.0 (GHSA-96hv-2xvq-fx4p) by @irparent in #280
  • fix(website): pin both brace-expansion lines (GHSA-3jxr-9vmj-r5cp) by @irparent in #281
  • fix(rules): custom rules built from our own docs never worked by @irparent in #282
  • deps(website): bump the react group across 1 directory with 4 updates by @dependabot[bot] in #264
  • deps(dashboard): bump @storybook/react-vite from 10.4.3 to 10.4.6 in /dashboard by @dependabot[bot] in #213
  • deps: bump express-rate-limit from 8.5.2 to 8.6.2 by @dependabot[bot] in #253
  • deps: bump tsx from 4.22.4 to 4.23.5 by @dependabot[bot] in #252
  • deps(dashboard): bump vitest from 4.1.5 to 4.1.9 in /dashboard by @dependabot[bot] in #212
  • deps: bump better-sqlite3 from 12.10.0 to 12.11.1 by @dependabot[bot] in #219
  • fix(transport): MCP HTTP transport had no Origin validation (DNS rebinding) by @irparent in #283
  • test: gate that every published rule-config example actually deploys by @irparent in #284
  • chore(ci): drop the global npm install from release jobs (Scorecard pinned-deps) by @irparent in #285
  • docs(security): record why the react-router advisory does not apply by @irparent in #287
  • fix(deps): force @hono/node-server v2 — root audit reaches 0 vulnerabilities by @irparent in #288
  • fix(dashboard): 404s leaked the absolute install path (CWE-209) by @irparent in #286
  • deps: bump @hono/node-server and @modelcontextprotocol/sdk by @dependabot[bot] in #277
  • deps: bump fast-check from 4.8.0 to 4.9.0 by @dependabot[bot] in #251
  • deps: bump helmet from 8.2.0 to 8.3.0 by @dependabot[bot] in #250
  • deps: bump the linting group across 1 directory with 4 updates by @dependabot[bot] in #225
  • deps: bump @playwright/test from 1.60.0 to 1.61.1 by @dependabot[bot] in #223
  • docker: bump node from 2bdb65e to a0b9bf0 by @dependabot[bot] in #215
  • deps(dashboard): bump lucide-react from 1.14.0 to 1.23.0 in /dashboard by @dependabot[bot] in #210
  • deps: bump @types/node from 25.9.2 to 26.1.1 in the types group across 1 directory by @dependabot[bot] in #209
  • deps: bump the testing group across 1 directory with 2 updates by @dependabot[bot] in #207
  • deps(dashboard): bump @storybook/addon-docs from 10.3.5 to 10.5.6 in /dashboard by @dependabot[bot] in #206
  • chore(docker): use npm ci for the dashboard build (Scorecard pinned-deps) by @irparent in #290
  • ci: batch the pinned-action bumps Dependabot could not land by @irparent in #291
  • fix(dashboard): migrate to react-router v8 — closes the last Dependabot alert by @irparent in #292
  • deps(website): bump eslint-config-next from 16.2.6 to 16.3.0 in /website in the nextjs group across 1 directory by @dependabot[bot] in #289
  • deps(website): bump @radix-ui/react-tabs from 1.1.13 to 1.1.21 in /website by @dependabot[bot] in #238
  • deps(website): bump tailwindcss from 4.3.0 to 4.3.3 in /website by @dependabot[bot] in #237
  • deps(website): bump @types/node from 25.8.0 to 26.1.2 in /website in the types group across 1 directory by @dependabot[bot] in #227
  • chore(deps): zod 3.25.76 → 4.4.3 by @irparent in #293
  • fix(dashboard): override brace-expansion to ^5.0.9 — clears the last 2 Scorecard vulns by @irparent in #294
  • release: v0.4.5 — security release by @irparent in #295

Full Changelog: v0.4.4...v0.4.5