LCORE-3694: move legacy two-file removal from 0.7 to 0.8 - #2528
LCORE-3694: move legacy two-file removal from 0.7 to 0.8#2528max-svistunov wants to merge 2 commits into
Conversation
The startup deprecation WARN and the design doc both stated that the legacy two-file configuration (llama_stack.library_client_config_path plus an external run.yaml) is removed in release 0.7. That is no longer the plan: confirmed 2026-08-24, the legacy path is deprecated through 0.7 with warnings and a migration path, and removed in 0.8. Removing in 0.7 would have satisfied the Engineering Support Agreement's mandatory 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 available to them. Left uncorrected, 0.7 GA would have shipped a startup warning promising a removal that does not happen. Changes the WARN string and its schedule comment in lightspeed_stack.py, the library_client_config_path field description in models/config.py (the source for the generated configuration documentation), and requirement R2, Decision S2 and the changelog in the design doc. Decision S2 now also carries the rationale for the revision and the real release dates in place of the tentative ones.
Propagates the library_client_config_path description change to the
generated documentation, so no document still tells operators the legacy
two-file setup is removed in 0.7.
Regenerated from source via the Makefile targets: docs/devel_doc/
openapi.json and docs/models/successful_responses.{json,md}. That
regeneration also picks up two lines of unrelated drift already present
on main, where a question-validity prompt default was edited without
regenerating the documentation; those are included rather than
hand-patching generated files back into a stale state.
docs/user_doc/config.{json,md,html} are edited by hand because no
Makefile target, script or workflow generates them. config.json is
exactly the --dump-schema output, config.md is close to
openapi-to-markdown piped through scripts/fix_openapi_doc.py but not
identical, and config.html has no discoverable generator; the three were
last regenerated manually under LCORE-3444. Editing the single affected
line keeps them consistent with each other. The missing generation path
is recorded on LCORE-3694 as a follow-up.
docs/basic_info/getting_started.md carries the same correction in an
example comment.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (10)
Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review. 📜 Recent review details⏰ Context from checks skipped due to timeout. (20)
|
| Layer / File(s) | Summary |
|---|---|
Runtime deprecation messaging src/lightspeed_stack.py, src/models/config.py |
Startup warnings and the library_client_config_path description now state removal in release 0.8. |
Deprecation schedule records docs/design/llama-stack-config-merge/llama-stack-config-merge.md |
The design document records support through releases 0.6 and 0.7, removal in 0.8, target release dates, and the 2026-08-24 decision. |
Documentation and schema descriptions docs/basic_info/getting_started.md, docs/devel_doc/openapi.json, docs/models/*, docs/user_doc/* |
Documentation and schema descriptions now use the 0.8 removal target. The question-validity prompt also capitalizes “Kubernetes” and “OpenShift” consistently. |
Estimated code review effort: 2 (Simple) | ~10 minutes
Merge Risk: ⚪ Minimal · up to 01a0f
The change updates the legacy configuration removal timeline from release 0.7 to 0.8 across source and documentation so users receive the promised deprecation period and migration path. No actionable merge-blocking risk remains beyond normal checks and review.
Suggested reviewers: tisnik, asimurka, jdubrick
🚥 Pre-merge checks | ✅ 7
✅ Passed checks (7 passed)
| Check name | Status | Explanation |
|---|---|---|
| Description Check | ✅ Passed | Check skipped - CodeRabbit’s high-level summary is enabled. |
| Title check | ✅ Passed | The title clearly and concisely describes moving legacy two-file configuration removal from version 0.7 to 0.8. |
| Docstring Coverage | ✅ Passed | Docstring check was indeterminate for this PR — some files could not be analyzed in time. Not blocking. |
| Linked Issues check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
| Out of Scope Changes check | ✅ Passed | Check skipped because no linked issues were found for this pull request. |
| Performance And Algorithmic Complexity | ✅ Passed | The PR changes only deprecation text, comments, and documentation. The source diff adds no loops, API calls, parsing, caches, watchers, or list-operation changes, so no performance regression is in... |
| Security And Secret Handling | ✅ Passed | PASS: The diff changes only deprecation text and documentation; no secrets, auth endpoints, injection code, sensitive response/log changes, or Kubernetes Secret manifests were introduced. |
✨ Finishing Touches 💡 1
🛠️ Fix failing CI checks 💡
- Create stacked PR
- Commit on current branch
🧪 Generate unit tests (beta)
- Create PR with unit tests
✨ Simplify code
- Create PR with simplified code
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.
Comment @coderabbitai help to get the list of available commands.
|
@tisnik One note -- I edited |
Description
The startup deprecation WARN and the design doc both stated that the legacy two-file configuration (
llama_stack.library_client_config_pathplus an externalrun.yaml) is removed in release 0.7. That is no longer the plan: confirmed by @sbunciak on 2026-08-24, the legacy path is deprecated through 0.7 with warnings and a migration path, and removed in 0.8.Removing in 0.7 would have satisfied the Engineering Support Agreement's mandatory 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 available to them.
Left uncorrected, 0.7 GA would ship a startup warning promising a removal that does not happen — hence this should land before 0.7.0-rc2.
Two commits:
src/lightspeed_stack.py, thelibrary_client_config_pathfield description insrc/models/config.py(the source for the generated configuration documentation), and requirement R2, Decision S2 and the changelog in the design doc. Decision S2 now also carries the rationale for the revision and the real release dates in place of the tentative ones.Two things worth flagging for review:
docs/models/successful_responses.jsonalso picks up two lines of unrelated drift already present on main, where a question-validity prompt default was edited without regenerating the documentation. Those are included rather than hand-patching a generated file back into a stale state.docs/user_doc/config.{json,md,html}are edited by hand because no Makefile target, script or workflow generates them. See the comment below.Type of change
pyproject.toml+uv.lock]requirements.*.txtfor Konflux]Tools used to create PR
Identify any AI code assistants used in this PR (for transparency and review context)
Related Tickets & Documents
Checklist before requesting a review
Testing
Confirm nothing still promises removal in 0.7:
Expected: no hits outside the spike doc and local
jiras/scratch files. Actual: clean.Confirm the startup warning names 0.8. Run the service with a legacy two-file configuration (
llama_stack.library_client_config_pathset) and check the startup log:Tests covering the changed modules:
Result: 509 passed / 79 subtests passed, and 7 passed.
Documentation regeneration is reproducible:
Result: regenerates to the committed content.
Summary by CodeRabbit
Documentation
Bug Fixes