Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
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
2 changes: 1 addition & 1 deletion docs/basic_info/getting_started.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ llama_stack:
use_as_library_client: true
# Unified mode (recommended): the run.yaml created above is consumed as
# the synthesis profile. The legacy library_client_config_path setup is
# deprecated and removed in 0.7 — see the migration guide:
# deprecated and removed in 0.8 — see the migration guide:
# ../user_doc/deployment_guide.md#migrating-from-the-legacy-two-file-configuration
config:
profile: run.yaml
Expand Down
16 changes: 12 additions & 4 deletions docs/design/llama-stack-config-merge/llama-stack-config-merge.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,8 +68,9 @@ detail that LCORE owns, not an operator-facing artifact.
server modes and serves `/v1/query` successfully.
- **R2:** Legacy mode (`llama_stack.library_client_config_path` +
external `run.yaml`) works unchanged through the deprecation window:
fully functional with a startup deprecation WARN in 0.6, removed in
0.7 (Decision S2, confirmed 2026-05-20).
fully functional with a startup deprecation WARN in 0.6 and 0.7,
removed in 0.8 (Decision S2, confirmed 2026-05-20, schedule revised
2026-08-24).
- **R3:** Setting both `llama_stack.config` and
`llama_stack.library_client_config_path` in the same file fails at
configuration load time with a clear error message pointing to the
Expand Down Expand Up @@ -427,8 +428,14 @@ Three operator-facing migration paths (choose per deployment):
Deprecation schedule (Decision S2, confirmed by @sbunciak 2026-05-20):
unified mode ships in 0.6 with legacy mode fully functional plus a
startup deprecation WARN (no breaking change); the legacy two-file path
is removed in 0.7. Tentative releases: 0.6 end of June 2026, 0.7 end of
September 2026.
is removed in 0.8.

Schedule revised 2026-08-24 (confirmed by @sbunciak): removal moves from
0.7 to 0.8. Removing in 0.7 would satisfy the Engineering Support
Agreement's one-minor-release deprecation phase only formally -- the
unified replacement is itself only completed in 0.7, so operators would
not have had a full release with a working migration path. Releases:
0.6 June 2026, 0.7 September 2026, 0.8 December 2026.

## Implementation Suggestions

Expand Down Expand Up @@ -553,6 +560,7 @@ reference.
|---|---|---|
| 2026-04-23 | Initial version | Spike completion |
| 2026-08-20 | Default baseline openai provider is conditional on `OPENAI_API_KEY` | LCORE-3607: `baseline: default` must load when the key is unset |
| 2026-08-24 | Legacy two-file removal moves from 0.7 to 0.8 | Unified replacement only completed in 0.7; operators need a full release with a working migration path (confirmed by @sbunciak) |

## Appendix A — Worked example: legacy → unified migration

Expand Down
2 changes: 1 addition & 1 deletion docs/devel_doc/openapi.json
Original file line number Diff line number Diff line change
Expand Up @@ -15198,7 +15198,7 @@
}
],
"title": "Llama Stack configuration path (legacy, deprecated)",
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.7 \u2014 use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config."
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.8 \u2014 use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config."
},
"timeout": {
"type": "integer",
Expand Down
4 changes: 2 additions & 2 deletions docs/models/successful_responses.json
Original file line number Diff line number Diff line change
Expand Up @@ -2052,7 +2052,7 @@
"type": "string",
"nullable": true,
"default": null,
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.7 \u2014 use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config.",
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.8 \u2014 use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config.",
"title": "Llama Stack configuration path (legacy, deprecated)"
},
"timeout": {
Expand Down Expand Up @@ -4466,7 +4466,7 @@
"type": "string"
},
"model_prompt": {
"default": "\nInstructions:\n- You are a question classifying tool\n- You are an expert in kubernetes and openshift\n- Your job is to determine where or a user's question is related to kubernetes and/or openshift technologies and to provide a one-word response.\n- If a question appears to be related to kubernetes or openshift technologies, answer with the word ${allowed}, otherwise answer with the word ${rejected}.\n- Do not explain your answer, just provide the one-word response. Do not give any other response.\n- If the given question is an empty string, answer with the word ${rejected}\n\n\nExample Question:\nWhy is the sky blue?\nExample Response:\n${rejected}\n\nExample Question:\nWhy is the grass green?\nExample Response:\n${rejected}\n\nExample Question:\nWhy is sand yellow?\nExample Response:\n${rejected}\n\nExample Question:\nCan you help configure my cluster to automatically scale?\nExample Response:\n${allowed}\n\nQuestion:\n${message}\nResponse:\n",
"default": "\nInstructions:\n- You are a question classifying tool\n- You are an expert in Kubernetes and OpenShift\n- Your job is to determine where or a user's question is related to Kubernetes and/or OpenShift technologies and to provide a one-word response.\n- If a question appears to be related to Kubernetes or OpenShift technologies, answer with the word ${allowed}, otherwise answer with the word ${rejected}.\n- Do not explain your answer, just provide the one-word response. Do not give any other response.\n- If the given question is an empty string, answer with the word ${rejected}\n\n\nExample Question:\nWhy is the sky blue?\nExample Response:\n${rejected}\n\nExample Question:\nWhy is the grass green?\nExample Response:\n${rejected}\n\nExample Question:\nWhy is sand yellow?\nExample Response:\n${rejected}\n\nExample Question:\nCan you help configure my cluster to automatically scale?\nExample Response:\n${allowed}\n\nQuestion:\n${message}\nResponse:\n",
"description": "The default prompt sent to the LLM used to validate the Users' question.",
"title": "Model prompt",
"type": "string"
Expand Down
2 changes: 1 addition & 1 deletion docs/models/successful_responses.md
Original file line number Diff line number Diff line change
Expand Up @@ -864,7 +864,7 @@ Useful resources:
| url | string | URL to Llama Stack service; used when library mode is disabled. Must be a valid HTTP or HTTPS URL. |
| api_key | string | API key to access Llama Stack service |
| use_as_library_client | boolean | When set to true Llama Stack will be used in library mode, not in server mode (default) |
| library_client_config_path | string | Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.7 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config. |
| library_client_config_path | string | Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.8 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config. |
| timeout | integer | Timeout in seconds for requests to Llama Stack service. Default is 180 seconds (3 minutes) to accommodate long-running RAG queries. |
| max_retries | integer | Maximum number of connection attempts before giving up. Used on startup to connect to Llama Stack and retrieve its version. Connection attempts are retried with a fixed delay to handle the case where Llama Stack is still starting up (e.g., when running as a sidecar in the same pod). |
| retry_delay | integer | Delay in seconds between retry attempts. Used on startup to connect to Llama Stack and retrieve its version. Connection attempts are retried with a fixed delay to handle the case where Llama Stack is still starting up (e.g., when running as a sidecar in the same pod). |
Expand Down
2 changes: 1 addition & 1 deletion docs/user_doc/config.html
Original file line number Diff line number Diff line change
Expand Up @@ -1277,7 +1277,7 @@ <h2 id="llamastackconfiguration">LlamaStackConfiguration</h2>
<td>string</td>
<td>Path to configuration file used when Llama Stack is run in library
mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6
and is removed in 0.7 &#x2014; use unified mode instead (the config block
and is removed in 0.8 &#x2014; use unified mode instead (the config block
below, and/or the root-level inference.providers section); migrate with
lightspeed-stack &#x2013;migrate-config.</td>
</tr>
Expand Down
2 changes: 1 addition & 1 deletion docs/user_doc/config.json
Original file line number Diff line number Diff line change
Expand Up @@ -1066,7 +1066,7 @@
"type": "string",
"nullable": true,
"default": null,
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.7 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config.",
"description": "Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.8 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config.",
"title": "Llama Stack configuration path (legacy, deprecated)"
},
"timeout": {
Expand Down
2 changes: 1 addition & 1 deletion docs/user_doc/config.md
Original file line number Diff line number Diff line change
Expand Up @@ -454,7 +454,7 @@ Useful resources:
| url | string | URL to Llama Stack service; used when library mode is disabled. Must be a valid HTTP or HTTPS URL. |
| api_key | string | API key to access Llama Stack service |
| use_as_library_client | boolean | When set to true Llama Stack will be used in library mode, not in server mode (default) |
| library_client_config_path | string | Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.7 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config. |
| library_client_config_path | string | Path to configuration file used when Llama Stack is run in library mode. DEPRECATED legacy two-file setup: logs a startup warning since 0.6 and is removed in 0.8 — use unified mode instead (the config block below, and/or the root-level inference.providers section); migrate with lightspeed-stack --migrate-config. |
| timeout | integer | Timeout in seconds for requests to Llama Stack service. Default is 180 seconds (3 minutes) to accommodate long-running RAG queries. |
| max_retries | integer | Maximum number of connection attempts before giving up. Used on startup to connect to Llama Stack and retrieve its version. Connection attempts are retried with a fixed delay to handle the case where Llama Stack is still starting up (e.g., when running as a sidecar in the same pod). |
| retry_delay | integer | Delay in seconds between retry attempts. Used on startup to connect to Llama Stack and retrieve its version. Connection attempts are retried with a fixed delay to handle the case where Llama Stack is still starting up (e.g., when running as a sidecar in the same pod). |
Expand Down
5 changes: 3 additions & 2 deletions src/lightspeed_stack.py
Original file line number Diff line number Diff line change
Expand Up @@ -190,12 +190,13 @@ def main() -> None:
)

# Deprecation schedule (Decision S2): the legacy two-file path keeps
# working through 0.6 with this single startup WARN and is removed in 0.7.
# working through 0.6 and 0.7 with this single startup WARN and is removed
# in 0.8 (schedule revised 2026-08-24, confirmed by @sbunciak).
if configuration.llama_stack_configuration.library_client_config_path is not None:
logger.warning(
"DEPRECATED: the two-file configuration "
"(llama_stack.library_client_config_path + external run.yaml) is "
"deprecated and will be removed in release 0.7. Migrate to the "
"deprecated and will be removed in release 0.8. Migrate to the "
"unified lightspeed-stack.yaml: https://lightspeed-core.github.io"
"/lightspeed-stack/design/llama-stack-config-merge"
"/llama-stack-config-merge.html#migration--backwards-compatibility"
Expand Down
2 changes: 1 addition & 1 deletion src/models/config.py
Original file line number Diff line number Diff line change
Expand Up @@ -844,7 +844,7 @@ class LlamaStackConfiguration(ConfigurationBase):
title="Llama Stack configuration path (legacy, deprecated)",
description="Path to configuration file used when Llama Stack is run "
"in library mode. DEPRECATED legacy two-file setup: logs a startup "
"warning since 0.6 and is removed in 0.7 — use unified mode instead "
"warning since 0.6 and is removed in 0.8 — use unified mode instead "
"(the config block below, and/or the root-level inference.providers "
"section); migrate with lightspeed-stack --migrate-config.",
)
Expand Down
Loading