From 76a072d64f7f352d8eda661533e12cf201f74b09 Mon Sep 17 00:00:00 2001 From: enesgules Date: Tue, 6 Oct 2026 18:36:18 +0300 Subject: [PATCH 01/10] CTX7-3075: Fix six broken anchors in the Workflow docs --- workflow/agents/patterns/orchestrator-workers.mdx | 2 +- workflow/basics/client/trigger.mdx | 2 +- workflow/basics/serve/advanced.mdx | 2 +- workflow/quickstarts/nextjs-fastapi.mdx | 2 +- workflow/quickstarts/nextjs-flask.mdx | 2 +- workflow/troubleshooting/vercel.mdx | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/workflow/agents/patterns/orchestrator-workers.mdx b/workflow/agents/patterns/orchestrator-workers.mdx index 3a0df57ea..9bbe782f9 100644 --- a/workflow/agents/patterns/orchestrator-workers.mdx +++ b/workflow/agents/patterns/orchestrator-workers.mdx @@ -58,7 +58,7 @@ export const { POST } = serve(async (context) => { }); ``` -If you wish to manually use the model results instead of utilizing a [manager LLM](/workflow/agents/overview#multi-agents) as we did in this example, see the [parallelization example](/workflow/agents/patterns/parallelization) +If you wish to manually use the model results instead of utilizing a [manager LLM](/workflow/agents/features#multi-agents) as we did in this example, see the [parallelization example](/workflow/agents/patterns/parallelization) Orchestrator manager workflow logs diff --git a/workflow/basics/client/trigger.mdx b/workflow/basics/client/trigger.mdx index dac1ee738..5414871cc 100644 --- a/workflow/basics/client/trigger.mdx +++ b/workflow/basics/client/trigger.mdx @@ -89,7 +89,7 @@ You can also trigger multiple workflow runs in a single call by passing an array If set to true, telemetry data collection for this workflow run will be disabled. By default, telemetry is enabled to help improve Upstash services. - See the [`disableTelemetry` parameter in serve options](/workflow/basics/serve/advanced#param-disable-telemetry) for more details. + See the [`disableTelemetry` parameter in serve options](/workflow/basics/serve/advanced#path-disabletelemetry) for more details. ## Usage diff --git a/workflow/basics/serve/advanced.mdx b/workflow/basics/serve/advanced.mdx index c22320f92..ff7746960 100644 --- a/workflow/basics/serve/advanced.mdx +++ b/workflow/basics/serve/advanced.mdx @@ -430,6 +430,6 @@ async def example(context: AsyncWorkflowContext[str]) -> None: You should also - set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/workflow/basics/client/trigger#param-disable-telemetry) to fully disable telemetry + set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/workflow/basics/client/trigger#body-disabletelemetry) to fully disable telemetry diff --git a/workflow/quickstarts/nextjs-fastapi.mdx b/workflow/quickstarts/nextjs-fastapi.mdx index eb04d2ab0..8e4c0ba70 100644 --- a/workflow/quickstarts/nextjs-fastapi.mdx +++ b/workflow/quickstarts/nextjs-fastapi.mdx @@ -123,7 +123,7 @@ To deploy the project at vercel and try the endpoints, you should start with set vercel ``` -Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#using-qstashs-built-in-request-verification-recommended). +Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). Once you add the env variables, you can deploy the project with: diff --git a/workflow/quickstarts/nextjs-flask.mdx b/workflow/quickstarts/nextjs-flask.mdx index 4706babe8..a8c660404 100644 --- a/workflow/quickstarts/nextjs-flask.mdx +++ b/workflow/quickstarts/nextjs-flask.mdx @@ -123,7 +123,7 @@ To deploy the project at vercel and try the endpoints, you should start with set vercel ``` -Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#using-qstashs-built-in-request-verification-recommended). +Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). Once you add the env variables, you can deploy the project with: diff --git a/workflow/troubleshooting/vercel.mdx b/workflow/troubleshooting/vercel.mdx index a54f78d42..f3f8134c3 100644 --- a/workflow/troubleshooting/vercel.mdx +++ b/workflow/troubleshooting/vercel.mdx @@ -32,7 +32,7 @@ Now that you have a bypass token, you need to pass it as a header in two places ### Step 1: Configure QStash Client with Headers -[Configure the QStash client](/workflow/basics/serve/advanced#param-qstash-client) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: +[Configure the QStash client](/workflow/basics/serve/advanced#path-qstashclient) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: ```ts import { Client } from '@upstash/qstash' From 5452b3ad65e9f60855e52081f49531793b6cbf07 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 6 Oct 2026 15:36:42 +0000 Subject: [PATCH 02/10] chore(llms): regenerate llms.txt and llms-full.txt --- llms-full.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/llms-full.txt b/llms-full.txt index 55526efc8..860dd878f 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -109587,7 +109587,7 @@ export const { POST } = serve(async (context) => { }); ``` -If you wish to manually use the model results instead of utilizing a [manager LLM](/docs/workflow/agents/overview#multi-agents) as we did in this example, see the [parallelization example](/docs/workflow/agents/patterns/parallelization) +If you wish to manually use the model results instead of utilizing a [manager LLM](/docs/workflow/agents/features#multi-agents) as we did in this example, see the [parallelization example](/docs/workflow/agents/patterns/parallelization) Orchestrator manager workflow logs @@ -111792,7 +111792,7 @@ You can also trigger multiple workflow runs in a single call by passing an array If set to true, telemetry data collection for this workflow run will be disabled. By default, telemetry is enabled to help improve Upstash services. - See the [`disableTelemetry` parameter in serve options](/docs/workflow/basics/serve/advanced#param-disable-telemetry) for more details. + See the [`disableTelemetry` parameter in serve options](/docs/workflow/basics/serve/advanced#path-disabletelemetry) for more details. ## Usage @@ -112512,7 +112512,7 @@ async def example(context: AsyncWorkflowContext[str]) -> None: You should also - set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/docs/workflow/basics/client/trigger#param-disable-telemetry) to fully disable telemetry + set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/docs/workflow/basics/client/trigger#body-disabletelemetry) to fully disable telemetry @@ -119050,7 +119050,7 @@ Now that you have a bypass token, you need to pass it as a header in two places ### Step 1: Configure QStash Client with Headers -[Configure the QStash client](/docs/workflow/basics/serve/advanced#param-qstash-client) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: +[Configure the QStash client](/docs/workflow/basics/serve/advanced#path-qstashclient) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: ```ts import { Client } from '@upstash/qstash' From 2d12a52b91f207e0b08a16dd404eaebbd2ac213e Mon Sep 17 00:00:00 2001 From: enesgules Date: Wed, 7 Oct 2026 12:51:28 +0300 Subject: [PATCH 03/10] CTX7-3075: Fix all broken anchors Field links use Mintlify's param- form, which docs7 serves after upstash/docs7#497. --- _snippets/workflow/logs.mdx | 2 +- qstash/integrations/llm.mdx | 2 +- qstash/overall/changelog.mdx | 2 +- qstash/recipes/periodic-data-updates.mdx | 2 +- redis/overall/changelog.mdx | 2 +- redis/sdks/py/commands/overview.mdx | 2 +- redis/sdks/ratelimit-ts/costs.mdx | 2 +- redis/sdks/ratelimit-ts/gettingstarted.mdx | 2 +- redis/sdks/ratelimit-ts/overview.mdx | 2 +- redis/search/index-management.mdx | 2 +- redis/search/query-operators/field-operators/regex.mdx | 2 +- workflow/basics/client/trigger.mdx | 2 +- workflow/basics/serve/advanced.mdx | 2 +- workflow/changelog.mdx | 2 +- workflow/troubleshooting/general.mdx | 8 ++++---- workflow/troubleshooting/vercel.mdx | 2 +- 16 files changed, 19 insertions(+), 19 deletions(-) diff --git a/_snippets/workflow/logs.mdx b/_snippets/workflow/logs.mdx index 58db371e5..7789a325e 100644 --- a/_snippets/workflow/logs.mdx +++ b/_snippets/workflow/logs.mdx @@ -78,7 +78,7 @@ Response body of the failure function/url. - When [failure function](/workflow/basics/serve#failurefunction) is used, this contains + When [failure function](/workflow/basics/serve/advanced#param-failure-function) is used, this contains the returned message from the failure function. diff --git a/qstash/integrations/llm.mdx b/qstash/integrations/llm.mdx index cbed033e2..b78a8ce51 100644 --- a/qstash/integrations/llm.mdx +++ b/qstash/integrations/llm.mdx @@ -9,7 +9,7 @@ QStash is especially useful for LLM processing because LLM response times are of ## QStash LLM API -You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. Use [the chat API](#chat-api) for streaming completions. +You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. All the examples below can be used with **OpenAI-compatible LLM providers**. diff --git a/qstash/overall/changelog.mdx b/qstash/overall/changelog.mdx index 37bd0b00b..22a379a86 100644 --- a/qstash/overall/changelog.mdx +++ b/qstash/overall/changelog.mdx @@ -180,7 +180,7 @@ title: Changelog -- [Retry-After](/qstash/features/retry#retry-after-header) support for rate-limited endpoints +- [Retry-After](/qstash/features/retry#retry-after-headers) support for rate-limited endpoints - [Upstash-Timeout](/qstash/api-reference/messages/publish-a-message) header diff --git a/qstash/recipes/periodic-data-updates.mdx b/qstash/recipes/periodic-data-updates.mdx index 2bbb34ffe..8b5e95c71 100644 --- a/qstash/recipes/periodic-data-updates.mdx +++ b/qstash/recipes/periodic-data-updates.mdx @@ -126,7 +126,7 @@ you can deploy it directly from your local machine using the [vercel cli](https://vercel.com/docs/cli). For a more indepth tutorial on how to deploy to Vercel, check out this -[quickstart](/qstash/quickstarts/vercel-nextjs#4-deploy-to-vercel). +[quickstart](/qstash/quickstarts/vercel-nextjs#deploying-to-vercel). After you have deployed your app, it is time to add your secrets to your environment variables. diff --git a/redis/overall/changelog.mdx b/redis/overall/changelog.mdx index 5444ef522..9b5bb8451 100644 --- a/redis/overall/changelog.mdx +++ b/redis/overall/changelog.mdx @@ -68,7 +68,7 @@ commands introduced in Redis 7. - Added REST API support for [`MONITOR`](/redis/commands/server/monitor) and [`SUBSCRIBE`](/redis/commands/pub-sub/subscribe) commands using [SSE](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events). -See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-command) docs. +See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-&-publish-commands) docs. - Added [`JSON.MSET`](/redis/commands/json/json-mset) and [`JSON.MERGE`](/redis/commands/json/json-merge) commands. - Introduced the `IP Allowlist` feature for enhanced security on newly created databases. By default, all IP addresses will be allowed. However, access can be restricted by specifying permitted IP addresses or CIDR ranges. diff --git a/redis/sdks/py/commands/overview.mdx b/redis/sdks/py/commands/overview.mdx index d6dffdee1..2a0e94101 100644 --- a/redis/sdks/py/commands/overview.mdx +++ b/redis/sdks/py/commands/overview.mdx @@ -611,7 +611,7 @@ Publish messages to many clients - + Run multiple commands in a transaction. diff --git a/redis/sdks/ratelimit-ts/costs.mdx b/redis/sdks/ratelimit-ts/costs.mdx index a7cec0f2f..e4d6a14f4 100644 --- a/redis/sdks/ratelimit-ts/costs.mdx +++ b/redis/sdks/ratelimit-ts/costs.mdx @@ -94,7 +94,7 @@ Values passed in `identifier`, `ip`, `userAgent` and `country` are checked with The other command is TTL which is for checking the status of the current ip deny list to figure out whether it is expired, valid or disabled. -If [Auto IP deny list](/redis/sdks/ratelimit-ts/features#auto-ip-deny-list) is enabled, +If [Auto IP deny list](/redis/sdks/ratelimit-ts/traffic-protection#auto-ip-deny-list) is enabled, the Ratelimit SDK will update the ip deny list everyday, in the first `limit` invocation after 2 AM UTC. This will consume 9 commands per day. diff --git a/redis/sdks/ratelimit-ts/gettingstarted.mdx b/redis/sdks/ratelimit-ts/gettingstarted.mdx index b8065a28d..26ff00d77 100644 --- a/redis/sdks/ratelimit-ts/gettingstarted.mdx +++ b/redis/sdks/ratelimit-ts/gettingstarted.mdx @@ -171,7 +171,7 @@ To configure the your Ratelimit according to your needs, you can make use of sev Collect information on which identifiers made how many requests and how many were blocked diff --git a/redis/sdks/ratelimit-ts/overview.mdx b/redis/sdks/ratelimit-ts/overview.mdx index 55f5c4272..1f6d9c549 100644 --- a/redis/sdks/ratelimit-ts/overview.mdx +++ b/redis/sdks/ratelimit-ts/overview.mdx @@ -45,7 +45,7 @@ for: Collect information on which identifiers made how many requests and how many were blocked diff --git a/redis/search/index-management.mdx b/redis/search/index-management.mdx index 4f3f749f8..3f2e8ed0d 100644 --- a/redis/search/index-management.mdx +++ b/redis/search/index-management.mdx @@ -241,7 +241,7 @@ SEARCH.CREATE profiles ON STRING PREFIX 1 profiles: SKIPINITIALSCAN SCHEMA name It is possible to specify the language of the text fields, so that an appropriate tokenizer and stemmer can be used. For more on tokenization and stemming, see the -[Text Field Options](./schema-definition#text-field-options) section. +[Text Field Options](./schema-definition#tokenization-&-stemming) section. When not specified, language defaults to `english`. diff --git a/redis/search/query-operators/field-operators/regex.mdx b/redis/search/query-operators/field-operators/regex.mdx index fa746e95a..06fbc374f 100644 --- a/redis/search/query-operators/field-operators/regex.mdx +++ b/redis/search/query-operators/field-operators/regex.mdx @@ -28,7 +28,7 @@ On fields with stemming enabled (the default), regex operates on the stemmed for For example, "running" might be stored as "run", so a regex pattern `"running.*"` would not match. To use regex reliably, consider using `NOSTEM` on fields where you need exact pattern matching. -See [Text Field Options](../../schema-definition#text-field-options) for more details. +See [Text Field Options](../../schema-definition#tokenization-&-stemming) for more details. ### Compatibility diff --git a/workflow/basics/client/trigger.mdx b/workflow/basics/client/trigger.mdx index 5414871cc..dac1ee738 100644 --- a/workflow/basics/client/trigger.mdx +++ b/workflow/basics/client/trigger.mdx @@ -89,7 +89,7 @@ You can also trigger multiple workflow runs in a single call by passing an array If set to true, telemetry data collection for this workflow run will be disabled. By default, telemetry is enabled to help improve Upstash services. - See the [`disableTelemetry` parameter in serve options](/workflow/basics/serve/advanced#path-disabletelemetry) for more details. + See the [`disableTelemetry` parameter in serve options](/workflow/basics/serve/advanced#param-disable-telemetry) for more details. ## Usage diff --git a/workflow/basics/serve/advanced.mdx b/workflow/basics/serve/advanced.mdx index ff7746960..c22320f92 100644 --- a/workflow/basics/serve/advanced.mdx +++ b/workflow/basics/serve/advanced.mdx @@ -430,6 +430,6 @@ async def example(context: AsyncWorkflowContext[str]) -> None: You should also - set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/workflow/basics/client/trigger#body-disabletelemetry) to fully disable telemetry + set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/workflow/basics/client/trigger#param-disable-telemetry) to fully disable telemetry diff --git a/workflow/changelog.mdx b/workflow/changelog.mdx index 655a1906f..f31e50337 100644 --- a/workflow/changelog.mdx +++ b/workflow/changelog.mdx @@ -33,7 +33,7 @@ title: Changelog - **TypeScript SDK (`workflow-js`):** - Added `retryDelay` option to dynamically program the retry duration. It can be configured on - [trigger](/workflow/basics/client/trigger#body-retrydelay), [context.call](/workflow/steps/call) + [trigger](/workflow/basics/client/trigger#param-retry-delay), [context.call](/workflow/steps/call) or `serve` (later moved to `client.trigger`, see the [migration guide](/workflow/howto/migrations#configuration-moved-from-serve-to-trigger)) - Added ability to detect if a given url is a workflow or not. Starting with `0.2.17` trigger made via the sdk can fail (instead of hanging), if there is no workflow serve on the given url. diff --git a/workflow/troubleshooting/general.mdx b/workflow/troubleshooting/general.mdx index e2ba44194..029e0f639 100644 --- a/workflow/troubleshooting/general.mdx +++ b/workflow/troubleshooting/general.mdx @@ -240,7 +240,7 @@ Retry settings can be configured in two locations: [Changelog](/workflow/changelog) for updates. -Use [verbose mode](/workflow/basics/serve/advanced#path-verbose) to diagnose workflow issues. +Use [verbose mode](/workflow/basics/serve/advanced#param-verbose) to diagnose workflow issues. The logs in this section should be seen very rarely. If you observe these logs consistently, you can reach out to our support. @@ -255,9 +255,9 @@ localhost. Received: ... This error indicates that the workflow URL has localhost. Publish requests will fail and workflow won't be able to run. **Potential Solutions:** -- Verify [baseUrl](/workflow/basics/serve/advanced#path-baseurl) +- Verify [baseUrl](/workflow/basics/serve/advanced#param-base-url) - Check UPSTASH_WORKFLOW_URL -- Explicitly pass the full [url](/workflow/basics/serve/advanced#path-url) +- Explicitly pass the full [url](/workflow/basics/serve/advanced#param-url) ### Deduplication Log Since QStash has at least once delivery guarantee, there is a very small chance that a step will run twice. This is why we suggest [idempotancy](/workflow/basics/caveats#ensure-idempotency-in-context-run). When this happens, the duplicate step should print the following log and terminate: @@ -309,7 +309,7 @@ If it appears like the initial step has failed: - Verify that you're using the latest SDK version both in the workflow endpoint definition and in the code that calls `client.trigger`. If it appears like the initial step has completed but the workflow is still stuck: -- Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/workflow/basics/serve/advanced#path-baseurl). This will override the automatic URL inference and use the provided base URL instead. +- Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/workflow/basics/serve/advanced#param-base-url). This will override the automatic URL inference and use the provided base URL instead. ## Non-workflow Destination Error diff --git a/workflow/troubleshooting/vercel.mdx b/workflow/troubleshooting/vercel.mdx index f3f8134c3..a54f78d42 100644 --- a/workflow/troubleshooting/vercel.mdx +++ b/workflow/troubleshooting/vercel.mdx @@ -32,7 +32,7 @@ Now that you have a bypass token, you need to pass it as a header in two places ### Step 1: Configure QStash Client with Headers -[Configure the QStash client](/workflow/basics/serve/advanced#path-qstashclient) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: +[Configure the QStash client](/workflow/basics/serve/advanced#param-qstash-client) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: ```ts import { Client } from '@upstash/qstash' From eddc1dac086a3d9879b19819a58c7d3bd00f7681 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2026 09:52:06 +0000 Subject: [PATCH 04/10] chore(llms): regenerate llms.txt and llms-full.txt --- llms-full.txt | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/llms-full.txt b/llms-full.txt index 860dd878f..cf89e9483 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -19362,7 +19362,7 @@ QStash is especially useful for LLM processing because LLM response times are of ## QStash LLM API -You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. Use [the chat API](#chat-api) for streaming completions. +You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. All the examples below can be used with **OpenAI-compatible LLM providers**. @@ -20744,7 +20744,7 @@ Source: https://upstash.com/docs/qstash/overall/changelog -* [Retry-After](/docs/qstash/features/retry#retry-after-header) support for rate-limited endpoints +* [Retry-After](/docs/qstash/features/retry#retry-after-headers) support for rate-limited endpoints * [Upstash-Timeout](/docs/qstash/api-reference/messages/publish-a-message) header @@ -84800,7 +84800,7 @@ commands introduced in Redis 7. * Added REST API support for [`MONITOR`](/docs/redis/commands/server/monitor) and [`SUBSCRIBE`](/docs/redis/commands/pub-sub/subscribe) commands using [SSE](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events). -See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-command) docs. +See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-&-publish-commands) docs. * Added [`JSON.MSET`](/docs/redis/commands/json/json-mset) and [`JSON.MERGE`](/docs/redis/commands/json/json-merge) commands. * Introduced the `IP Allowlist` feature for enhanced security on newly created databases. By default, all IP addresses will be allowed. However, access can be restricted by specifying permitted IP addresses or CIDR ranges. @@ -88702,7 +88702,7 @@ Values passed in `identifier`, `ip`, `userAgent` and `country` are checked with The other command is TTL which is for checking the status of the current ip deny list to figure out whether it is expired, valid or disabled. -If [Auto IP deny list](/docs/redis/sdks/ratelimit-ts/features#auto-ip-deny-list) is enabled, +If [Auto IP deny list](/docs/redis/sdks/ratelimit-ts/traffic-protection#auto-ip-deny-list) is enabled, the Ratelimit SDK will update the ip deny list everyday, in the first `limit` invocation after 2 AM UTC. This will consume 9 commands per day. @@ -89152,7 +89152,7 @@ To configure the your Ratelimit according to your needs, you can make use of sev Collect information on which identifiers made how many requests and how many were blocked @@ -89451,7 +89451,7 @@ for: Collect information on which identifiers made how many requests and how many were blocked @@ -93442,7 +93442,7 @@ SEARCH.CREATE profiles ON STRING PREFIX 1 profiles: SKIPINITIALSCAN SCHEMA name It is possible to specify the language of the text fields, so that an appropriate tokenizer and stemmer can be used. For more on tokenization and stemming, see the -[Text Field Options](./schema-definition#text-field-options) section. +[Text Field Options](./schema-definition#tokenization-&-stemming) section. When not specified, language defaults to `english`. @@ -95068,7 +95068,7 @@ On fields with stemming enabled (the default), regex operates on the stemmed for For example, "running" might be stored as "run", so a regex pattern `"running.*"` would not match. To use regex reliably, consider using `NOSTEM` on fields where you need exact pattern matching. -See [Text Field Options](../../schema-definition#text-field-options) for more details. +See [Text Field Options](../../schema-definition#tokenization-&-stemming) for more details. ### Compatibility @@ -111343,7 +111343,7 @@ The `logs` method retrieves workflow run logs using the [List Workflow Runs API] Response body of the failure function/url. - When [failure function](/docs/workflow/basics/serve#failurefunction) is used, this contains + When [failure function](/docs/workflow/basics/serve/advanced#param-failure-function) is used, this contains the returned message from the failure function. @@ -111792,7 +111792,7 @@ You can also trigger multiple workflow runs in a single call by passing an array If set to true, telemetry data collection for this workflow run will be disabled. By default, telemetry is enabled to help improve Upstash services. - See the [`disableTelemetry` parameter in serve options](/docs/workflow/basics/serve/advanced#path-disabletelemetry) for more details. + See the [`disableTelemetry` parameter in serve options](/docs/workflow/basics/serve/advanced#param-disable-telemetry) for more details. ## Usage @@ -112512,7 +112512,7 @@ async def example(context: AsyncWorkflowContext[str]) -> None: You should also - set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/docs/workflow/basics/client/trigger#body-disabletelemetry) to fully disable telemetry + set [`disableTelemetry` when triggering workflow runs via `client.trigger()`](/docs/workflow/basics/client/trigger#param-disable-telemetry) to fully disable telemetry @@ -112549,7 +112549,7 @@ Source: https://upstash.com/docs/workflow/changelog * **TypeScript SDK (`workflow-js`):** * Added `retryDelay` option to dynamically program the retry duration. It can be configured on - [trigger](/docs/workflow/basics/client/trigger#body-retrydelay), [context.call](/docs/workflow/steps/call) + [trigger](/docs/workflow/basics/client/trigger#param-retry-delay), [context.call](/docs/workflow/steps/call) or `serve` (later moved to `client.trigger`, see the [migration guide](/docs/workflow/howto/migrations#configuration-moved-from-serve-to-trigger)) * Added ability to detect if a given url is a workflow or not. Starting with `0.2.17` trigger made via the sdk can fail (instead of hanging), if there is no workflow serve on the given url. @@ -118930,7 +118930,7 @@ Retry settings can be configured in two locations: [Changelog](/docs/workflow/changelog) for updates. -Use [verbose mode](/docs/workflow/basics/serve/advanced#path-verbose) to diagnose workflow issues. +Use [verbose mode](/docs/workflow/basics/serve/advanced#param-verbose) to diagnose workflow issues. The logs in this section should be seen very rarely. If you observe these logs consistently, you can reach out to our support. @@ -118945,9 +118945,9 @@ localhost. Received: ... This error indicates that the workflow URL has localhost. Publish requests will fail and workflow won't be able to run. **Potential Solutions:** -* Verify [baseUrl](/docs/workflow/basics/serve/advanced#path-baseurl) +* Verify [baseUrl](/docs/workflow/basics/serve/advanced#param-base-url) * Check UPSTASH_WORKFLOW_URL -* Explicitly pass the full [url](/docs/workflow/basics/serve/advanced#path-url) +* Explicitly pass the full [url](/docs/workflow/basics/serve/advanced#param-url) ### Deduplication Log Since QStash has at least once delivery guarantee, there is a very small chance that a step will run twice. This is why we suggest [idempotancy](/docs/workflow/basics/caveats#ensure-idempotency-in-context-run). When this happens, the duplicate step should print the following log and terminate: @@ -118999,7 +118999,7 @@ If it appears like the initial step has failed: * Verify that you're using the latest SDK version both in the workflow endpoint definition and in the code that calls `client.trigger`. If it appears like the initial step has completed but the workflow is still stuck: -* Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/docs/workflow/basics/serve/advanced#path-baseurl). This will override the automatic URL inference and use the provided base URL instead. +* Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/docs/workflow/basics/serve/advanced#param-base-url). This will override the automatic URL inference and use the provided base URL instead. ## Non-workflow Destination Error @@ -119050,7 +119050,7 @@ Now that you have a bypass token, you need to pass it as a header in two places ### Step 1: Configure QStash Client with Headers -[Configure the QStash client](/docs/workflow/basics/serve/advanced#path-qstashclient) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: +[Configure the QStash client](/docs/workflow/basics/serve/advanced#param-qstash-client) with the bypass header in your workflow serve options. This ensures that all workflow steps, including `context.invoke` calls, will include the bypass header automatically: ```ts import { Client } from '@upstash/qstash' From 465e2b14242688bf4add75b22682e5c96e8d6c98 Mon Sep 17 00:00:00 2001 From: enesgules Date: Wed, 7 Oct 2026 12:53:25 +0300 Subject: [PATCH 05/10] CTX7-3075: Drop the misspelled serveMany anchor --- workflow/steps/call.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflow/steps/call.mdx b/workflow/steps/call.mdx index 1d3d69958..4cf41c949 100644 --- a/workflow/steps/call.mdx +++ b/workflow/steps/call.mdx @@ -68,7 +68,7 @@ If you want requests to retry automatically, you can explicitly pass a retry con - When using [`serveMany`](/workflow/features/invoke/serveMany#using-serve-manyny), you can call another workflow defined in the same `serveMany` by passing it to this parameter. + When using [`serveMany`](/workflow/features/invoke/serveMany), you can call another workflow defined in the same `serveMany` by passing it to this parameter. ## Response From fa1416f74d1578006e2b0cf1b99e3cbdd5f731a5 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 7 Oct 2026 09:54:41 +0000 Subject: [PATCH 06/10] chore(llms): regenerate llms.txt and llms-full.txt --- llms-full.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/llms-full.txt b/llms-full.txt index cf89e9483..c1300d7e2 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -117847,7 +117847,7 @@ If you want requests to retry automatically, you can explicitly pass a retry con - When using [`serveMany`](/docs/workflow/features/invoke/serveMany#using-serve-manyny), you can call another workflow defined in the same `serveMany` by passing it to this parameter. + When using [`serveMany`](/docs/workflow/features/invoke/serveMany), you can call another workflow defined in the same `serveMany` by passing it to this parameter. ## Response From 74495ce1cd33a9fa286a0fcc7c54216c92aaacf7 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 13 Oct 2026 12:59:23 +0000 Subject: [PATCH 07/10] chore(llms): regenerate llms.txt and llms-full.txt --- llms-full.txt | 36 ++++++++++++++++-------------------- 1 file changed, 16 insertions(+), 20 deletions(-) diff --git a/llms-full.txt b/llms-full.txt index a210426ee..747f010e1 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -19633,7 +19633,7 @@ QStash is especially useful for LLM processing because LLM response times are of ## QStash LLM API -You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. Use [the chat API](#chat-api) for streaming completions. +You can publish (or enqueue) single LLM request or batch LLM requests using all existing QStash features natively. To do this, specify the destination `api` as `llm` with a valid provider. The body of the published or enqueued message should contain a valid chat completion request. For these integrations, you must specify the `Upstash-Callback` header so that you can process the response asynchronously. Note that streaming chat completions cannot be used with them. All the examples below can be used with **OpenAI-compatible LLM providers**. @@ -21015,7 +21015,7 @@ Source: https://upstash.com/docs/qstash/overall/changelog -* [Retry-After](/docs/qstash/features/retry#retry-after-header) support for rate-limited endpoints +* [Retry-After](/docs/qstash/features/retry#retry-after-headers) support for rate-limited endpoints * [Upstash-Timeout](/docs/qstash/api-reference/messages/publish-a-message) header @@ -85114,10 +85114,6 @@ support larger data sizes and custom limits — [contact us](/docs/common/help/s # Changelog Source: https://upstash.com/docs/redis/overall/changelog - -* Added the [Insights](/docs/redis/howto/insights) tab to the console for databases with Prod Pack: request routing between regions, client IP ranges and SDKs, latency and throughput charts, usage against plan limits, Lua script statistics and a keyspace analysis. - - * Added [Vector](/docs/redis/commands/vector/overview) feature for storing embeddings and running nearest-neighbor queries directly in Redis. * Added [Array commands](/docs/redis/commands/array/overview) for sparse, index-addressed data, including range operations, scans, and fixed-size rings. @@ -85184,7 +85180,7 @@ commands introduced in Redis 7. * Added REST API support for [`MONITOR`](/docs/redis/commands/server/monitor) and [`SUBSCRIBE`](/docs/redis/commands/pub-sub/subscribe) commands using [SSE](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events). -See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-and-publish-commands) docs. +See [Monitor](../features/restapi#monitor-command) and [Subscribe](../features/restapi#subscribe-&-publish-commands) docs. * Added [`JSON.MSET`](/docs/redis/commands/json/json-mset) and [`JSON.MERGE`](/docs/redis/commands/json/json-merge) commands. * Introduced the `IP Allowlist` feature for enhanced security on newly created databases. By default, all IP addresses will be allowed. However, access can be restricted by specifying permitted IP addresses or CIDR ranges. @@ -90554,7 +90550,7 @@ Values passed in `identifier`, `ip`, `userAgent` and `country` are checked with The other command is TTL which is for checking the status of the current ip deny list to figure out whether it is expired, valid or disabled. -If [Auto IP deny list](/docs/redis/sdks/ratelimit-ts/features#auto-ip-deny-list) is enabled, +If [Auto IP deny list](/docs/redis/sdks/ratelimit-ts/traffic-protection#auto-ip-deny-list) is enabled, the Ratelimit SDK will update the ip deny list everyday, in the first `limit` invocation after 2 AM UTC. This will consume 9 commands per day. @@ -91004,7 +91000,7 @@ To configure the your Ratelimit according to your needs, you can make use of sev Collect information on which identifiers made how many requests and how many were blocked @@ -91303,7 +91299,7 @@ for: Collect information on which identifiers made how many requests and how many were blocked @@ -95294,7 +95290,7 @@ SEARCH.CREATE profiles ON STRING PREFIX 1 profiles: SKIPINITIALSCAN SCHEMA name It is possible to specify the language of the text fields, so that an appropriate tokenizer and stemmer can be used. For more on tokenization and stemming, see the -[Text Field Options](./schema-definition#text-field-options) section. +[Text Field Options](./schema-definition#tokenization-&-stemming) section. When not specified, language defaults to `english`. @@ -96920,7 +96916,7 @@ On fields with stemming enabled (the default), regex operates on the stemmed for For example, "running" might be stored as "run", so a regex pattern `"running.*"` would not match. To use regex reliably, consider using `NOSTEM` on fields where you need exact pattern matching. -See [Text Field Options](../../schema-definition#text-field-options) for more details. +See [Text Field Options](../../schema-definition#tokenization-&-stemming) for more details. ### Compatibility @@ -111463,7 +111459,7 @@ export const { POST } = serve(async (context) => { }); ``` -If you wish to manually use the model results instead of utilizing a [manager LLM](/docs/workflow/agents/overview#multi-agents) as we did in this example, see the [parallelization example](/docs/workflow/agents/patterns/parallelization) +If you wish to manually use the model results instead of utilizing a [manager LLM](/docs/workflow/agents/features#multi-agents) as we did in this example, see the [parallelization example](/docs/workflow/agents/patterns/parallelization) Orchestrator manager workflow logs @@ -113219,7 +113215,7 @@ The `logs` method retrieves workflow run logs using the [List Workflow Runs API] Response body of the failure function/url. - When [failure function](/docs/workflow/basics/serve#failurefunction) is used, this contains + When [failure function](/docs/workflow/basics/serve/advanced#param-failure-function) is used, this contains the returned message from the failure function. @@ -114425,7 +114421,7 @@ Source: https://upstash.com/docs/workflow/changelog * **TypeScript SDK (`workflow-js`):** * Added `retryDelay` option to dynamically program the retry duration. It can be configured on - [trigger](/docs/workflow/basics/client/trigger#body-retrydelay), [context.call](/docs/workflow/steps/call) + [trigger](/docs/workflow/basics/client/trigger#param-retry-delay), [context.call](/docs/workflow/steps/call) or `serve` (later moved to `client.trigger`, see the [migration guide](/docs/workflow/howto/migrations#configuration-moved-from-serve-to-trigger)) * Added ability to detect if a given url is a workflow or not. Starting with `0.2.17` trigger made via the sdk can fail (instead of hanging), if there is no workflow serve on the given url. @@ -119858,7 +119854,7 @@ If you want requests to retry automatically, you can explicitly pass a retry con - When using [`serveMany`](/docs/workflow/features/invoke/serveMany#using-serve-manyny), you can call another workflow defined in the same `serveMany` by passing it to this parameter. + When using [`serveMany`](/docs/workflow/features/invoke/serveMany), you can call another workflow defined in the same `serveMany` by passing it to this parameter. ## Response @@ -120941,7 +120937,7 @@ Retry settings can be configured in two locations: [Changelog](/docs/workflow/changelog) for updates. -Use [verbose mode](/docs/workflow/basics/serve/advanced#path-verbose) to diagnose workflow issues. +Use [verbose mode](/docs/workflow/basics/serve/advanced#param-verbose) to diagnose workflow issues. The logs in this section should be seen very rarely. If you observe these logs consistently, you can reach out to our support. @@ -120956,9 +120952,9 @@ localhost. Received: ... This error indicates that the workflow URL has localhost. Publish requests will fail and workflow won't be able to run. **Potential Solutions:** -* Verify [baseUrl](/docs/workflow/basics/serve/advanced#path-baseurl) +* Verify [baseUrl](/docs/workflow/basics/serve/advanced#param-base-url) * Check UPSTASH_WORKFLOW_URL -* Explicitly pass the full [url](/docs/workflow/basics/serve/advanced#path-url) +* Explicitly pass the full [url](/docs/workflow/basics/serve/advanced#param-url) ### Deduplication Log Since QStash has at least once delivery guarantee, there is a very small chance that a step will run twice. This is why we suggest [idempotancy](/docs/workflow/basics/caveats#ensure-idempotency-in-context-run). When this happens, the duplicate step should print the following log and terminate: @@ -121010,7 +121006,7 @@ If it appears like the initial step has failed: * Verify that you're using the latest SDK version both in the workflow endpoint definition and in the code that calls `client.trigger`. If it appears like the initial step has completed but the workflow is still stuck: -* Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/docs/workflow/basics/serve/advanced#path-baseurl). This will override the automatic URL inference and use the provided base URL instead. +* Workflow SDK could be unable to correctly infer the workflow URL due to a proxy or an issue in the request object. To check if this is the issue, try passing the [`baseUrl` parameter to the `serve` method](/docs/workflow/basics/serve/advanced#param-base-url). This will override the automatic URL inference and use the provided base URL instead. ## Non-workflow Destination Error From faf3764ab3d1c1a474ba6551e66f4f77e0fa92ac Mon Sep 17 00:00:00 2001 From: "context7[bot]" <236830434+context7[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2026 09:12:12 +0300 Subject: [PATCH 08/10] docs: 2 review fixes for #897 (grammar and spelling) (#899) Co-authored-by: context7[bot] <236830434+context7[bot]@users.noreply.github.com> --- workflow/quickstarts/nextjs-fastapi.mdx | 2 +- workflow/quickstarts/nextjs-flask.mdx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/workflow/quickstarts/nextjs-fastapi.mdx b/workflow/quickstarts/nextjs-fastapi.mdx index 8e4c0ba70..18858345f 100644 --- a/workflow/quickstarts/nextjs-fastapi.mdx +++ b/workflow/quickstarts/nextjs-fastapi.mdx @@ -123,7 +123,7 @@ To deploy the project at vercel and try the endpoints, you should start with set vercel ``` -Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). +Next, you should go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find these env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). Once you add the env variables, you can deploy the project with: diff --git a/workflow/quickstarts/nextjs-flask.mdx b/workflow/quickstarts/nextjs-flask.mdx index a8c660404..cc0045636 100644 --- a/workflow/quickstarts/nextjs-flask.mdx +++ b/workflow/quickstarts/nextjs-flask.mdx @@ -123,7 +123,7 @@ To deploy the project at vercel and try the endpoints, you should start with set vercel ``` -Next, you shoud go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find this env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). +Next, you should go to vercel.com, find your project and add `QSTASH_TOKEN`, to the project as environment variables. You can find these env variables from the [Upstash Console](https://console.upstash.com/qstash). To learn more about other env variables and their use in the context of Upstash Workflow, you can read [the Secure your Endpoint in our documentation](/workflow/howto/security#built-in-request-verification-recommended). Once you add the env variables, you can deploy the project with: From 6eec0b141b33f17b30a1a1e4a8e34750df1a11b6 Mon Sep 17 00:00:00 2001 From: enesgules Date: Wed, 14 Oct 2026 11:53:53 +0300 Subject: [PATCH 09/10] CTX7-3075: Restore the October Redis changelog entry and rename two link texts The earlier merge from main kept the older changelog and dropped the Insights entry (6998a1a6). The search links now name the section they open. --- redis/overall/changelog.mdx | 4 ++++ redis/search/index-management.mdx | 2 +- redis/search/query-operators/field-operators/regex.mdx | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/redis/overall/changelog.mdx b/redis/overall/changelog.mdx index 9b5bb8451..f71e24cdf 100644 --- a/redis/overall/changelog.mdx +++ b/redis/overall/changelog.mdx @@ -2,6 +2,10 @@ title: Changelog --- + +- Added the [Insights](/redis/howto/insights) tab to the console for databases with Prod Pack: request routing between regions, client IP ranges and SDKs, latency and throughput charts, usage against plan limits, Lua script statistics and a keyspace analysis. + + - Added [Vector](/redis/commands/vector/overview) feature for storing embeddings and running nearest-neighbor queries directly in Redis. - Added [Array commands](/redis/commands/array/overview) for sparse, index-addressed data, including range operations, scans, and fixed-size rings. diff --git a/redis/search/index-management.mdx b/redis/search/index-management.mdx index 3f2e8ed0d..ac6a05a81 100644 --- a/redis/search/index-management.mdx +++ b/redis/search/index-management.mdx @@ -241,7 +241,7 @@ SEARCH.CREATE profiles ON STRING PREFIX 1 profiles: SKIPINITIALSCAN SCHEMA name It is possible to specify the language of the text fields, so that an appropriate tokenizer and stemmer can be used. For more on tokenization and stemming, see the -[Text Field Options](./schema-definition#tokenization-&-stemming) section. +[Tokenization & Stemming](./schema-definition#tokenization-&-stemming) section. When not specified, language defaults to `english`. diff --git a/redis/search/query-operators/field-operators/regex.mdx b/redis/search/query-operators/field-operators/regex.mdx index 06fbc374f..ec0a1a6c5 100644 --- a/redis/search/query-operators/field-operators/regex.mdx +++ b/redis/search/query-operators/field-operators/regex.mdx @@ -28,7 +28,7 @@ On fields with stemming enabled (the default), regex operates on the stemmed for For example, "running" might be stored as "run", so a regex pattern `"running.*"` would not match. To use regex reliably, consider using `NOSTEM` on fields where you need exact pattern matching. -See [Text Field Options](../../schema-definition#tokenization-&-stemming) for more details. +See [Tokenization & Stemming](../../schema-definition#tokenization-&-stemming) for more details. ### Compatibility From 9885224b8671c74bf4efc44d42c3ce50817decb8 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Wed, 14 Oct 2026 08:54:43 +0000 Subject: [PATCH 10/10] chore(llms): regenerate llms.txt and llms-full.txt --- llms-full.txt | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/llms-full.txt b/llms-full.txt index f71babd1f..455dbaf3b 100644 --- a/llms-full.txt +++ b/llms-full.txt @@ -85121,6 +85121,10 @@ support larger data sizes and custom limits — [contact us](/docs/common/help/s # Changelog Source: https://upstash.com/docs/redis/overall/changelog + +* Added the [Insights](/docs/redis/howto/insights) tab to the console for databases with Prod Pack: request routing between regions, client IP ranges and SDKs, latency and throughput charts, usage against plan limits, Lua script statistics and a keyspace analysis. + + * Added [Vector](/docs/redis/commands/vector/overview) feature for storing embeddings and running nearest-neighbor queries directly in Redis. * Added [Array commands](/docs/redis/commands/array/overview) for sparse, index-addressed data, including range operations, scans, and fixed-size rings. @@ -95297,7 +95301,7 @@ SEARCH.CREATE profiles ON STRING PREFIX 1 profiles: SKIPINITIALSCAN SCHEMA name It is possible to specify the language of the text fields, so that an appropriate tokenizer and stemmer can be used. For more on tokenization and stemming, see the -[Text Field Options](./schema-definition#tokenization-&-stemming) section. +[Tokenization & Stemming](./schema-definition#tokenization-&-stemming) section. When not specified, language defaults to `english`. @@ -96923,7 +96927,7 @@ On fields with stemming enabled (the default), regex operates on the stemmed for For example, "running" might be stored as "run", so a regex pattern `"running.*"` would not match. To use regex reliably, consider using `NOSTEM` on fields where you need exact pattern matching. -See [Text Field Options](../../schema-definition#tokenization-&-stemming) for more details. +See [Tokenization & Stemming](../../schema-definition#tokenization-&-stemming) for more details. ### Compatibility