fixes go worspace setup for cost-accuracy and load-test - #4585
Conversation
|
|
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
📝 WalkthroughSummary by CodeRabbit
WalkthroughTwo CI test scripts ( ChangesGo Workspace Initialization in CI Scripts
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
| # versions pinned in transports/go.mod. Run with repo root as CWD because | ||
| # setup-go-workspace.sh's `go work use ./core` paths are repo-root-relative; the | ||
| # go.work file it writes at ${ROOT_DIR} is then auto-discovered by `go build`. | ||
| ( cd "${ROOT_DIR}" && source "${ROOT_DIR}/.github/workflows/scripts/setup-go-workspace.sh" ) |
There was a problem hiding this comment.
GOTOOLCHAIN=auto is exported inside the subshell but does not propagate to the parent shell where the go build calls in build_binaries run. If the installed Go version in CI differs from the go directive in the generated go.work file, the builds can fail with a toolchain-version mismatch. Exporting GOTOOLCHAIN=auto in the parent shell before the subshell is the minimal fix.
| ( cd "${ROOT_DIR}" && source "${ROOT_DIR}/.github/workflows/scripts/setup-go-workspace.sh" ) | |
| export GOTOOLCHAIN=auto | |
| ( cd "${ROOT_DIR}" && source "${ROOT_DIR}/.github/workflows/scripts/setup-go-workspace.sh" ) |
| # versions pinned in transports/go.mod. Run with repo root as CWD because | ||
| # setup-go-workspace.sh's `go work use ./core` paths are repo-root-relative; the | ||
| # go.work file it writes at ${REPO_ROOT} is then auto-discovered by `go build`. | ||
| ( cd "${REPO_ROOT}" && source "${SCRIPT_DIR}/setup-go-workspace.sh" ) |
There was a problem hiding this comment.
Same
GOTOOLCHAIN=auto scoping issue as in cost-accuracy-test.sh — the export is confined to the subshell and is not visible to the go build call in build_bifrost_http. Exporting it in the parent shell guards against toolchain-version errors.
| ( cd "${REPO_ROOT}" && source "${SCRIPT_DIR}/setup-go-workspace.sh" ) | |
| export GOTOOLCHAIN=auto | |
| ( cd "${REPO_ROOT}" && source "${SCRIPT_DIR}/setup-go-workspace.sh" ) |
Merge activity
|
* build fix * fixes go worspace setup for cost-accuracy and load-test (#4585) ## Summary The `go.work` file is gitignored and must be regenerated in CI environments. Without it, builds in `cost-accuracy-test.sh` and `load-test.sh` resolve `core`, `framework`, and `plugins` from the published versions pinned in `transports/go.mod` rather than the local workspace copies. This PR ensures the Go workspace is initialized before any build steps run in those scripts. ## Changes - Added a call to `setup-go-workspace.sh` at the start of both `cost-accuracy-test.sh` and `load-test.sh`, executed from the repo root so that the relative `go work use ./core` paths resolve correctly and the resulting `go.work` file is auto-discovered by subsequent `go build` invocations. ## Type of change - [ ] Bug fix - [ ] Feature - [ ] Refactor - [ ] Documentation - [x] Chore/CI ## Affected areas - [ ] Core (Go) - [ ] Transports (HTTP) - [ ] Providers/Integrations - [ ] Plugins - [ ] UI (React) - [ ] Docs ## How to test Trigger the cost-accuracy and load-test CI workflows and confirm that the builds resolve local module versions rather than the published ones pinned in `transports/go.mod`. ```sh # Manually verify workspace setup cd <repo-root> source .github/workflows/scripts/setup-go-workspace.sh go build ./transports/... ``` ## Breaking changes - [ ] Yes - [x] No ## Related issues ## Security considerations None. ## Checklist - [ ] I read `docs/contributing/README.md` and followed the guidelines - [ ] I added/updated tests where appropriate - [ ] I updated documentation where needed - [ ] I verified builds succeed (Go and UI) - [ ] I verified the CI pipeline passes locally if applicable * enterprise changelog (#4586) ## Summary Adds the changelog for Bifrost Enterprise v1.4.13 (2026-06-21) and registers it in the docs navigation. ## Changes - Added `docs/changelogs/ent-v1.4.13.mdx` documenting all features, bug fixes, and plugin dependency versions for the v1.4.13 release, built on `transports/v1.5.16`. - Registered the new changelog page in `docs/docs.json` so it appears at the top of the Enterprise changelogs section. Key highlights documented in the release: - Business-unit and user attribution fields (`business_unit_id`, `business_unit_name`, `user_id`, `user_name`) added to BigQuery and Datadog plugins for cost/usage attribution. - Durable, resumable background job runner for SCIM provisioning across all supported IdPs, with a `GET /api/scim/provision/jobs/{operation_id}` status endpoint. - Datadog session-grouped traces via `group_traces_by_session`, pinning requests sharing an `x-bf-session-id` to a single APM trace. - Cluster node `region` exposed via the cluster API and rendered in the UI. - New `(Logs, Update)` RBAC permission with an accompanying migration for existing installs. - Inline `409 Conflict` name-collision errors across access profiles, API keys, MCP tool groups, prompt deployments, roles, business units, and teams. - Auto-assignment of access profiles to existing role members during config-file reconciliation. - Group search input and selection indicators in the provisioning sync sheet. - Fixed ghost-node double-counting on access-profile reloads. - Fixed `409` vs `500` on duplicate-name violations across multiple resource endpoints. - Fixed Okta provisioning deduplication, `Retry-After` handling, and multi-header `Link` parsing. - Fixed `ListModels` spuriously enforcing provider/model allowlists when no virtual key is present. ## Type of change - [ ] Bug fix - [ ] Feature - [ ] Refactor - [x] Documentation - [ ] Chore/CI ## Affected areas - [ ] Core (Go) - [ ] Transports (HTTP) - [ ] Providers/Integrations - [ ] Plugins - [ ] UI (React) - [x] Docs ## How to test Navigate to the Enterprise changelogs section of the docs site and confirm the v1.4.13 entry appears at the top of the list and renders correctly, including the warning callout, feature/fix sections, and dependency block. ## Screenshots/Recordings N/A — documentation-only change. ## Breaking changes - [ ] Yes - [x] No ## Related issues N/A ## Security considerations None. This is a documentation-only change. ## Checklist - [x] I read `docs/contributing/README.md` and followed the guidelines - [x] I added/updated tests where appropriate - [x] I updated documentation where needed - [x] I verified builds succeed (Go and UI) - [ ] I verified the CI pipeline passes locally if applicable
* origin/dev: (76 commits) fix: deterministic MCP tool ordering for prompt cache stability (maximhq#4588) enterprise changelog (maximhq#4586) Adds changelog for v1.5.16 --skip-ci transports: update dependencies --skip-ci fixes go worspace setup for cost-accuracy and load-test (maximhq#4585) plugins/telemetry: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/semanticcache: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/prompts: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/otel: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/modelcatalogresolver: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/mocker: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/maxim: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/logging: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/jsonparser: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/governance: bump core to v1.5.22 and framework to v1.3.22 --skip-ci plugins/compat: bump core to v1.5.22 and framework to v1.3.22 --skip-ci framework: bump core to v1.5.22 --skip-ci build fix (maximhq#4584) build fix chore: regenerate openapi.json --skip-ci ... # Conflicts: # .github/workflows/scripts/cost-accuracy-test.sh # core/changelog.md # tests/config.json # tests/integrations/python/config.json

Summary
The
go.workfile is gitignored and must be regenerated in CI environments. Without it, builds incost-accuracy-test.shandload-test.shresolvecore,framework, andpluginsfrom the published versions pinned intransports/go.modrather than the local workspace copies. This PR ensures the Go workspace is initialized before any build steps run in those scripts.Changes
setup-go-workspace.shat the start of bothcost-accuracy-test.shandload-test.sh, executed from the repo root so that the relativego work use ./corepaths resolve correctly and the resultinggo.workfile is auto-discovered by subsequentgo buildinvocations.Type of change
Affected areas
How to test
Trigger the cost-accuracy and load-test CI workflows and confirm that the builds resolve local module versions rather than the published ones pinned in
transports/go.mod.Breaking changes
Related issues
Security considerations
None.
Checklist
docs/contributing/README.mdand followed the guidelines