Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
df4cf2a
[docs] : google model armor as guardrail provider docs (#3660)
Madhuvod May 21, 2026
05a673d
fix: removes manual setting of type custom for anthropic tools (#3652)
roroghost17 May 21, 2026
9ff81fb
fix: fix ListModels for keyless providers (#3655)
roroghost17 May 21, 2026
6c9db72
feat: preserve time filter params when navigating between sidebar ite…
impoiler May 21, 2026
ed3c5f0
refactor: move auth check from login component to route loader with r…
impoiler May 21, 2026
6c3f6e5
feat: add team and bu filter support for dashboard and logs (#3650)
impoiler May 21, 2026
97b3a70
fix: map vertex trrafic type to bifrost service tier (#3662)
TejasGhatte May 21, 2026
63643a3
fix: fixes the start time setting for correct ttft metric value (#3668)
roroghost17 May 21, 2026
ec4b057
fix: preserve tool call stop reason in Anthropic streaming fallback (…
dicnunz May 21, 2026
045a3e8
feat(governance): add virtual key blocked models (#3653)
Vaibhav701161 May 21, 2026
86ad3a4
table updates (#3665)
akshaydeo May 21, 2026
874a614
Revert "feat: add `access_profile_id` to virtual keys for direct acce…
BearTS May 21, 2026
2d7ede2
chore: drop `access_profile_id` column from `governance_virtual_keys`…
BearTS May 21, 2026
3596c55
test: add v1.5.3 migration test coverage for feature flags, temp toke…
BearTS May 21, 2026
fb79c18
adds created_by for virtual keys (#3672)
akshaydeo May 21, 2026
685130d
fix: ensure toasts remain clickable above modal overlays (#3674)
impoiler May 21, 2026
4e985bb
fix: remove save/cancel icons and fix sheet layout growth in routing …
impoiler May 21, 2026
6dd1478
fix: make virtual keys table fill available height with sticky header…
impoiler May 21, 2026
249cc51
v1.5.4 cut (#3680)
akshaydeo May 21, 2026
d66143d
fix idle timeout panic (#3677)
akshaydeo May 21, 2026
d898390
mcp log fingerprinting (#3678)
akshaydeo May 21, 2026
78376b2
Merge branch 'main' into dev
akshaydeo May 22, 2026
d710c21
Merge branch 'main' into dev
akshaydeo May 22, 2026
5f1e60f
fix: update e2e ui tests (#3687)
sammaji May 22, 2026
f59c88c
fix: updates mcp oauth api tests (#3693)
sammaji May 22, 2026
e1fbd8d
[StepSecurity] Apply security best practices
stepsecurity-app[bot] May 22, 2026
28db58c
Merge branch 'dev' into chore/GHA-221424-stepsecurity-remediation
akshaydeo Jun 3, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -264,3 +264,38 @@ updates:
schedule:
interval: daily
open-pull-requests-limit: 0

- package-ecosystem: gomod
directory: /.github/workflows/scripts/schemasync
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /examples/mcps/oauth-demo-server
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /plugins/compat
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /plugins/prompts
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /tests/async
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /tests/e2e/clis
schedule:
interval: weekly

- package-ecosystem: gomod
directory: /tests/semanticcache
schedule:
interval: weekly
2 changes: 1 addition & 1 deletion .github/workflows/helm-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ jobs:
fi

- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4.0.0
uses: step-security/actions-gh-pages@db28a5e317d585916043c4acc5a4319ab3da9275 # v4.0.1
if: github.ref == 'refs/heads/main' || github.ref == 'refs/heads/v1.5.0'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
Expand Down
32 changes: 16 additions & 16 deletions .github/workflows/release-pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -843,7 +843,7 @@ jobs:
run: npm install -g newman newman-reporter-htmlextra

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Test Docker image (amd64)
env:
Expand Down Expand Up @@ -963,7 +963,7 @@ jobs:
run: npm install -g newman newman-reporter-htmlextra

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Test Docker image (arm64)
env:
Expand Down Expand Up @@ -1653,10 +1653,10 @@ jobs:
echo "verified=true" >> $GITHUB_OUTPUT

- name: Setup Docker Buidx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand All @@ -1670,7 +1670,7 @@ jobs:
echo "tags=${BASE_TAG}" >> $GITHUB_OUTPUT

- name: Build and push AMD64 Docker image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: step-security/docker-build-push-action@846549baaf047e867d038826129a64d81df0f704 # v7.1.0
with:
context: .
build-args: |
Expand Down Expand Up @@ -1741,10 +1741,10 @@ jobs:
echo "verified=true" >> $GITHUB_OUTPUT

- name: Setup Docker Buidx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand All @@ -1758,7 +1758,7 @@ jobs:
echo "tags=${BASE_TAG}" >> $GITHUB_OUTPUT

- name: Build and push ARM64 Docker image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: step-security/docker-build-push-action@846549baaf047e867d038826129a64d81df0f704 # v7.1.0
with:
context: .
file: ./transports/Dockerfile
Expand Down Expand Up @@ -1793,7 +1793,7 @@ jobs:
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand Down Expand Up @@ -1864,10 +1864,10 @@ jobs:
echo "verified=true" >> $GITHUB_OUTPUT

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand All @@ -1881,7 +1881,7 @@ jobs:
echo "tags=${BASE_TAG}" >> $GITHUB_OUTPUT

- name: Build and push UBI9 AMD64 Docker image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: step-security/docker-build-push-action@846549baaf047e867d038826129a64d81df0f704 # v7.1.0
with:
context: .
build-args: |
Expand Down Expand Up @@ -1955,10 +1955,10 @@ jobs:
echo "verified=true" >> $GITHUB_OUTPUT

- name: Setup Docker Buildx
uses: docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3.12.0
uses: step-security/setup-buildx-action@f931205d68723ad9589fd2a7e2ece238bf9de341 # v4.0.0

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand All @@ -1972,7 +1972,7 @@ jobs:
echo "tags=${BASE_TAG}" >> $GITHUB_OUTPUT

- name: Build and push UBI9 ARM64 Docker image
uses: docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6.19.2
uses: step-security/docker-build-push-action@846549baaf047e867d038826129a64d81df0f704 # v7.1.0
with:
context: .
file: ./transports/Dockerfile.redhat
Expand Down Expand Up @@ -2009,7 +2009,7 @@ jobs:
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2

- name: Log in to Docker Hub
uses: docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3.7.0
uses: step-security/docker-login-action@870af644803bf9f204aed474adbad2958fec048b # v4.1.0
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/snyk.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
node-version: "25"

- name: Install uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0
uses: step-security/setup-uv@ccf0a26ce9117d9e99292b0ce953ea5d9ffe778e # v7.3.0

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Version downgrade on setup-uv replacement

The original action (astral-sh/setup-uv) was pinned at v7.6.0, but the replacement (step-security/setup-uv) is at v7.3.0 — three minor versions behind. Any bug fixes or feature additions shipped in v7.4.0–v7.6.0 of the upstream action will be absent here. Both occurrences (lines 50 and 123) are affected. It is worth confirming whether step-security/setup-uv has a SHA that corresponds to ≥ v7.6.0 before merging.

with:
version: "0.11.0"
python-version: "3.11"
Expand Down Expand Up @@ -120,7 +120,7 @@ jobs:
node-version: "25"

- name: Install uv
uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0
uses: step-security/setup-uv@ccf0a26ce9117d9e99292b0ce953ea5d9ffe778e # v7.3.0
with:
version: "0.11.0"
python-version: "3.11"
Expand Down
8 changes: 7 additions & 1 deletion core/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1,7 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- fix: idle timeout panic in the streaming idle-timeout reader
- fix: short-circuit `IdleTimeoutReader` reads when the connection is already closed (#3672)
- fix: preserve tool call stop reason in Anthropic streaming fallback (#3640) (thanks [@dicnunz](https://github.com/dicnunz)!)
- fix: correct start-time setting for accurate TTFT metric value (#3668)
- fix: map Vertex traffic type to Bifrost service tier (#3662)
- fix: ListModels for keyless providers (#3655)
- fix: remove manual `type: custom` for Anthropic tools (#3652)
6 changes: 5 additions & 1 deletion framework/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- feat: `created_by` user attribution column for virtual keys (#3672)
- feat: `blacklisted_models` column for virtual key provider configs (#3653)
- fix: add monotonic `inc_number` log cursor so node usage reconciliation does not skip late async log writes (#3664)
- revert: `access_profile_id` direct access profile assignment on virtual keys (#3669)
- chore: drop the `access_profile_id` column from `governance_virtual_keys` (#3670)
2 changes: 1 addition & 1 deletion plugins/compat/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
3 changes: 2 additions & 1 deletion plugins/governance/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- feat: virtual key blocked-models enforcement — reject requests when the requested model is blocked at the VK provider-config level (#3653)
- fix: clear stale `governanceRejectedContextKey` on an allow decision so successful fallback retries count toward budgets and rate limits (#3645)
2 changes: 1 addition & 1 deletion plugins/jsonparser/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/logging/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- feat: stamp MCP tool logs with governance ownership (user, team, customer, and business unit IDs) from the request context
2 changes: 1 addition & 1 deletion plugins/maxim/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/mocker/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/otel/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/prompts/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/semanticcache/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
2 changes: 1 addition & 1 deletion plugins/telemetry/changelog.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
- chore: bumped transitive golang.org/x dependencies (crypto, net, sys, text) for Docker Scout CVE remediation (#3900)
- chore: upgraded core to v1.5.12 and framework to v1.3.12
24 changes: 18 additions & 6 deletions transports/changelog.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,22 @@
## 🔒 Security
## ✨ Features

- **Go Dependency CVE Remediation** — Updated `golang.org/x` dependencies flagged by Docker Scout, clearing 20 advisories (severity up to 10.0): `crypto` v0.49.0 → v0.52.0, `net` v0.52.0 → v0.55.0, `sys` v0.42.0 → v0.45.0, `text` v0.35.0 → v0.37.0, `term` v0.41.0 → v0.43.0 (cli). Verified with `govulncheck` against the live Go vulnerability database: zero vulnerabilities remain in any module (#3900)
- **Hardened Container Image** — Removed the standalone GNU `wget` package from the Alpine runtime image, eliminating CVE-2025-69194 (8.8); the `HEALTHCHECK` now uses the built-in busybox `wget` applet, with no functional change
- **Virtual Key Blocked Models** — Block specific models at the virtual key provider-config level; blocked models take priority over allowed models and are enforced by governance (#3653)
- **Virtual Key Ownership** — Virtual keys now capture and display a `created_by` user attribution (#3672)
- **MCP Log Attribution** — MCP tool logs are stamped with user, team, customer, and business unit IDs so MCP usage can be traced like LLM usage
- **Team & Business Unit Filters** — Added team and business unit filters across the dashboard and logs views (#3650)
- **Sticky Time Filters** — Time filter selections are preserved when navigating between sidebar items (#3647)

## 🐞 Fixed

- **Ollama Streaming Auth** — Ollama streaming text and chat requests now forward the configured API key as an `Authorization: Bearer` header (#3906)
- **SGL Streaming Auth** — SGL provider now sends the `Authorization` header on streaming requests (#3307) (thanks [@hensapir](https://github.com/hensapir)!)
- **Governance & Logging APIs** — Removed the `from_memory` query parameter; virtual key and config list APIs now return consistent DB-backed results, with VK names batch-fetched in a single query (#3903)
- **Idle Timeout Panic** — Fixed a panic in the streaming idle-timeout reader and added a guard to skip reads once the connection is closed (#3672)
- **Anthropic Streaming** — Preserve the tool-call stop reason in the Anthropic streaming fallback (#3640) (thanks [@dicnunz](https://github.com/dicnunz)!)
- **TTFT Metric** — Fixed the request start-time setting so the time-to-first-token metric is accurate (#3668)
- **Vertex Service Tier** — Map the Vertex traffic type to the correct Bifrost service tier (#3662)
- **Keyless Providers** — Fixed `ListModels` for providers configured without an API key (#3655)
- **Anthropic Tools** — Stopped forcing `type: custom` on Anthropic tool definitions (#3652)
- **Node Usage Reconciliation** — Added a monotonic log cursor so reconciliation no longer skips late async log writes (#3664)
- **Fallback Budget Tracking** — Clear the stale governance rejection flag on allow so successful fallback retries count toward budgets and rate limits (#3645)
- **Virtual Keys Table** — Table now fills available height with a sticky header and scrollable body (#3676)
- **Sheet Layout** — Removed save/cancel icons and fixed sheet layout growth in routing rule and virtual key sheets (#3675)
- **Toast Click-Through** — Toasts remain clickable above modal overlays (#3674)
- **Direct Access Control** — Reverted the virtual key `access_profile_id` direct access profile assignment shipped in v1.5.3; the `access_profile_id` column has been dropped (#3669, #3670)
Loading