You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+29Lines changed: 29 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,6 +7,35 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
8
8
## [Unreleased]
9
9
10
+
## [4.15.3] - 2026-03-10
11
+
12
+
### Fixed
13
+
-[EE] Handle duplicate `resource` query parameters in the OAuth authorization endpoint. [#987](https://github.com/sourcebot-dev/sourcebot/pull/987)
14
+
15
+
## [4.15.2] - 2026-03-06
16
+
17
+
### Fixed
18
+
-[EE] Avoid advertising OAuth support on MCP endpoints if that entitlement is not actually configured. [#985](https://github.com/sourcebot-dev/sourcebot/pull/985)
19
+
20
+
## [4.15.1] - 2026-03-06
21
+
22
+
### Fixed
23
+
- Fixed issue where users would not be redirected to the homepage when clicking "continue with guest". [#984](https://github.com/sourcebot-dev/sourcebot/pull/984)
24
+
25
+
### Changed
26
+
- Increased pagination limit to 1000 for bitbucket data center requests. [#981](https://github.com/sourcebot-dev/sourcebot/pull/981)
27
+
28
+
## [4.15.0] - 2026-03-05
29
+
30
+
### Added
31
+
- Added MCP and API key usage tracking to analytics dashboard and added audit retention system [#950](https://github.com/sourcebot-dev/sourcebot/pull/950)
32
+
33
+
## [4.14.0] - 2026-03-05
34
+
35
+
### Added
36
+
- Added support a MCP streamable http transport hosted at `/api/mcp`. [#976](https://github.com/sourcebot-dev/sourcebot/pull/976)
37
+
-[EE] Added support for Oauth 2.1 to the remote MCP server hosted at `/api/mcp`. [#977](https://github.com/sourcebot-dev/sourcebot/pull/977)
Do NOT call `router.refresh()` immediately after `router.push()`. In Next.js 16, the prefetch cache and navigation system was completely rewritten, and calling `router.refresh()` right after `router.push()` creates a race condition — the refresh invalidates the cache and can interrupt the in-flight navigation, leaving the page stuck or not loading.
187
+
Do NOT call `router.refresh()` immediately after `router.push()`. In Next.js 16, the prefetch cache and navigation system was completely rewritten, and calling `router.refresh()` right after `router.push()` creates a race condition. The refresh invalidates the cache and can interrupt the in-flight navigation, leaving the page stuck or not loading.
188
188
189
189
```ts
190
190
// Bad - router.refresh() races with router.push() in Next.js 16
@@ -197,6 +197,18 @@ router.push(url); // ✅
197
197
198
198
If you need to refresh server component data after a mutation, use the server-side `refresh()` from `next/cache` in a Server Action instead of `router.refresh()` on the client.
199
199
200
+
## Documentation Writing Style
201
+
202
+
When writing or editing `.mdx` files in `docs/`:
203
+
204
+
- Do NOT use em dashes (`—`). Use periods to break sentences, commas, or parentheses instead.
205
+
- Write in second person ("you") and present tense.
206
+
- Keep sentences short and direct. Lead with what the user needs to know.
207
+
- Use bold for UI elements and key terms (e.g., **Settings → API Keys**).
208
+
- Use inline code for technical values, flags, and identifiers (e.g., `REPO_READ`).
209
+
- Prefer short paragraphs (1-3 sentences). Use bullet lists to break up dense information.
210
+
- Use tables for parameter documentation.
211
+
200
212
## Docs Images
201
213
202
214
Images added to `.mdx` files in `docs/` should be wrapped in a `<Frame>` component:
@@ -237,3 +249,4 @@ After the PR is created:
237
249
- Update CHANGELOG.md with an entry under `[Unreleased]` linking to the new PR. New entries should be placed at the bottom of their section.
238
250
- If the change touches `packages/mcp`, update `packages/mcp/CHANGELOG.md` instead
239
251
- Do NOT add a CHANGELOG entry for documentation-only changes (e.g., changes only in `docs/`)
252
+
- Enterprise-only features (gated by an entitlement) should be prefixed with `[EE]` in the CHANGELOG entry (e.g., `- [EE] Added support for ...`)
To configure Sourcebot (index your own repos, connect your LLMs, etc), check out our [docs](https://docs.sourcebot.dev/docs/configuration/config-file).
109
109
110
110
> [!NOTE]
111
-
> Sourcebot collects <ahref="https://demo.sourcebot.dev/~/search?query=captureEvent%5C(%20repo%3Asourcebot">anonymous usage data</a> by default to help us improve the product. No sensitive data is collected, but if you'd like to disable this you can do so by setting the `SOURCEBOT_TELEMETRY_DISABLED` environment
111
+
> Sourcebot collects <ahref="https://app.sourcebot.dev/~/search?query=captureEvent%5C(%20repo%3Asourcebot">anonymous usage data</a> by default to help us improve the product. No sensitive data is collected, but if you'd like to disable this you can do so by setting the `SOURCEBOT_TELEMETRY_DISABLED` environment
112
112
> variable to `true`. Please refer to our [telemetry docs](https://docs.sourcebot.dev/docs/overview#telemetry) for more information.
Audit logs are a collection of notable events performed by users within a Sourcebot deployment. Each audit log records information on the action taken, the user who performed the
11
11
action, and when the action took place.
@@ -15,6 +15,9 @@ This feature gives security and compliance teams the necessary information to en
15
15
## Enabling/Disabling Audit Logs
16
16
Audit logs are enabled by default and can be controlled with the `SOURCEBOT_EE_AUDIT_LOGGING_ENABLED`[environment variable](/docs/configuration/environment-variables).
17
17
18
+
## Retention Policy
19
+
By default, audit logs older than 180 days are automatically pruned daily. You can configure the retention period using the `SOURCEBOT_EE_AUDIT_RETENTION_DAYS`[environment variable](/docs/configuration/environment-variables). Set it to `0` to disable automatic pruning and retain logs indefinitely.
20
+
18
21
## Fetching Audit Logs
19
22
Audit logs are stored in the [postgres database](/docs/overview#architecture) connected to Sourcebot. To fetch all of the audit logs, you can use the following API:
20
23
@@ -110,26 +113,35 @@ curl --request GET '$SOURCEBOT_URL/api/ee/audit' \
Copy file name to clipboardExpand all lines: docs/docs/configuration/environment-variables.mdx
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -42,6 +42,7 @@ The following environment variables allow you to configure your Sourcebot deploy
42
42
|`HTTPS_PROXY`| - | <p>HTTPS proxy URL for routing SSL requests through a proxy server (e.g., `http://proxy.company.com:8080`). Requires `NODE_USE_ENV_PROXY=1`.</p> |
43
43
|`NO_PROXY`| - | <p>Comma-separated list of hostnames or domains that should bypass the proxy (e.g., `localhost,127.0.0.1,.internal.domain`). Requires `NODE_USE_ENV_PROXY=1`.</p> |
|`SOURCEBOT_EE_AUDIT_RETENTION_DAYS`|`180`| <p>The number of days to retain audit logs. Audit log records older than this will be automatically pruned daily. Set to `0` to disable pruning and retain logs indefinitely.</p> |
45
46
|`AUTH_EE_GCP_IAP_ENABLED`|`false`| <p>When enabled, allows Sourcebot to automatically register/login from a successful GCP IAP redirect</p> |
46
47
|`AUTH_EE_GCP_IAP_AUDIENCE`| - | <p>The GCP IAP audience to use when verifying JWT tokens. Must be set to enable GCP IAP JIT provisioning</p> |
You can connect Sourcebot to various **external identity providers** to associate a Sourcebot user with one or more external service accounts (ex. Google, GitHub, etc).
0 commit comments