Commit d70548e
committed
LCORE-1859: Enhance /readiness endpoint with degraded mode reporting
#1781 introduced
"degraded mode support" - the ability to start lightspeed-stack and keep it running
even when llama-stack server might not be available.
This PR adds comprehensive degraded mode status reporting to the /readiness endpoint
while maintaining clean API boundaries and Kubernetes probe semantics.
- Enhanced HealthStatus enum with DEGRADED and UNHEALTHY service-level statuses
while preserving provider-level statuses (OK, ERROR, NOT_IMPLEMENTED, UNKNOWN)
- Enhanced /readiness endpoint to return 200 (ready=true) in degraded mode
following Kubernetes semantics; only returns 503 when truly unhealthy
- Refactored to avoid leaking implementation details in API responses:
* Removed llama_stack field from ReadinessResponse
* Removed Llama Stack version tracking from DegradedModeTracker
* Focus on functional impacts rather than internal technology stack
This design keeps internal implementation details (Llama Stack) private while
exposing clear functional impacts to API consumers.
Signed-off-by: Anik Bhattacharjee <anbhatta@redhat.com>1 parent 570a66e commit d70548e
9 files changed
Lines changed: 384 additions & 45 deletions
File tree
- docs
- src
- app
- endpoints
- models
- api/responses/successful
- common
- utils
- tests/unit
- app/endpoints
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9964 | 9964 | | |
9965 | 9965 | | |
9966 | 9966 | | |
9967 | | - | |
| 9967 | + | |
9968 | 9968 | | |
9969 | 9969 | | |
9970 | 9970 | | |
| |||
9975 | 9975 | | |
9976 | 9976 | | |
9977 | 9977 | | |
| 9978 | + | |
9978 | 9979 | | |
9979 | 9980 | | |
9980 | | - | |
| 9981 | + | |
9981 | 9982 | | |
9982 | 9983 | | |
9983 | 9984 | | |
| |||
13485 | 13486 | | |
13486 | 13487 | | |
13487 | 13488 | | |
| 13489 | + | |
| 13490 | + | |
| 13491 | + | |
| 13492 | + | |
| 13493 | + | |
| 13494 | + | |
| 13495 | + | |
| 13496 | + | |
| 13497 | + | |
| 13498 | + | |
| 13499 | + | |
| 13500 | + | |
| 13501 | + | |
| 13502 | + | |
13488 | 13503 | | |
13489 | 13504 | | |
13490 | 13505 | | |
| |||
16888 | 16903 | | |
16889 | 16904 | | |
16890 | 16905 | | |
16891 | | - | |
| 16906 | + | |
16892 | 16907 | | |
16893 | 16908 | | |
16894 | 16909 | | |
| |||
17866 | 17881 | | |
17867 | 17882 | | |
17868 | 17883 | | |
17869 | | - | |
| 17884 | + | |
17870 | 17885 | | |
17871 | 17886 | | |
17872 | 17887 | | |
| |||
17875 | 17890 | | |
17876 | 17891 | | |
17877 | 17892 | | |
17878 | | - | |
| 17893 | + | |
17879 | 17894 | | |
17880 | 17895 | | |
17881 | 17896 | | |
17882 | 17897 | | |
| 17898 | + | |
| 17899 | + | |
| 17900 | + | |
| 17901 | + | |
| 17902 | + | |
| 17903 | + | |
| 17904 | + | |
| 17905 | + | |
| 17906 | + | |
| 17907 | + | |
| 17908 | + | |
| 17909 | + | |
| 17910 | + | |
| 17911 | + | |
| 17912 | + | |
| 17913 | + | |
| 17914 | + | |
| 17915 | + | |
| 17916 | + | |
| 17917 | + | |
| 17918 | + | |
| 17919 | + | |
| 17920 | + | |
| 17921 | + | |
| 17922 | + | |
| 17923 | + | |
| 17924 | + | |
| 17925 | + | |
| 17926 | + | |
| 17927 | + | |
| 17928 | + | |
17883 | 17929 | | |
17884 | 17930 | | |
17885 | 17931 | | |
17886 | 17932 | | |
17887 | 17933 | | |
17888 | 17934 | | |
17889 | | - | |
| 17935 | + | |
17890 | 17936 | | |
17891 | 17937 | | |
17892 | 17938 | | |
17893 | 17939 | | |
17894 | 17940 | | |
17895 | 17941 | | |
17896 | 17942 | | |
| 17943 | + | |
17897 | 17944 | | |
17898 | 17945 | | |
17899 | 17946 | | |
17900 | | - | |
| 17947 | + | |
17901 | 17948 | | |
17902 | 17949 | | |
| 17950 | + | |
| 17951 | + | |
| 17952 | + | |
| 17953 | + | |
| 17954 | + | |
| 17955 | + | |
| 17956 | + | |
| 17957 | + | |
| 17958 | + | |
| 17959 | + | |
| 17960 | + | |
| 17961 | + | |
17903 | 17962 | | |
17904 | 17963 | | |
17905 | | - | |
| 17964 | + | |
17906 | 17965 | | |
17907 | 17966 | | |
17908 | 17967 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
29 | | - | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
30 | 33 | | |
| 34 | + | |
31 | 35 | | |
32 | 36 | | |
33 | 37 | | |
| |||
117 | 121 | | |
118 | 122 | | |
119 | 123 | | |
120 | | - | |
| 124 | + | |
121 | 125 | | |
122 | | - | |
123 | | - | |
124 | | - | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
125 | 129 | | |
126 | 130 | | |
127 | 131 | | |
| |||
130 | 134 | | |
131 | 135 | | |
132 | 136 | | |
133 | | - | |
134 | | - | |
135 | | - | |
136 | | - | |
| 137 | + | |
| 138 | + | |
137 | 139 | | |
138 | 140 | | |
139 | | - | |
140 | | - | |
141 | | - | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
142 | 147 | | |
143 | 148 | | |
144 | 149 | | |
145 | 150 | | |
146 | | - | |
| 151 | + | |
147 | 152 | | |
148 | | - | |
| 153 | + | |
| 154 | + | |
149 | 155 | | |
150 | | - | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
151 | 174 | | |
152 | 175 | | |
153 | 176 | | |
154 | 177 | | |
155 | 178 | | |
156 | | - | |
157 | | - | |
158 | | - | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
159 | 193 | | |
160 | 194 | | |
161 | | - | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
162 | 200 | | |
163 | 201 | | |
164 | 202 | | |
165 | 203 | | |
166 | 204 | | |
167 | 205 | | |
168 | 206 | | |
169 | | - | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
170 | 212 | | |
171 | 213 | | |
| 214 | + | |
172 | 215 | | |
173 | | - | |
| 216 | + | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
174 | 221 | | |
175 | 222 | | |
176 | 223 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
26 | 26 | | |
27 | 27 | | |
28 | 28 | | |
| 29 | + | |
29 | 30 | | |
30 | 31 | | |
31 | 32 | | |
| |||
81 | 82 | | |
82 | 83 | | |
83 | 84 | | |
84 | | - | |
| 85 | + | |
| 86 | + | |
85 | 87 | | |
86 | 88 | | |
87 | 89 | | |
88 | 90 | | |
89 | 91 | | |
90 | 92 | | |
| 93 | + | |
| 94 | + | |
91 | 95 | | |
92 | 96 | | |
| 97 | + | |
93 | 98 | | |
94 | 99 | | |
95 | 100 | | |
| |||
103 | 108 | | |
104 | 109 | | |
105 | 110 | | |
| 111 | + | |
106 | 112 | | |
107 | 113 | | |
108 | 114 | | |
| |||
0 commit comments