lightspeed-stack 0.6.2__tar.gz → 0.6.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (686) hide show
  1. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/PKG-INFO +4 -3
  2. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/pyproject.toml +3 -2
  3. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/main.py +6 -5
  4. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/README.md +1 -1
  5. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/pydantic_ai.py +1 -0
  6. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/info.feature +1 -1
  7. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/skills.feature +0 -31
  8. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/utils.py +72 -0
  9. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_tools.py +0 -1
  10. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/test_main_middleware.py +65 -3
  11. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_pydantic_ai.py +0 -1
  12. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/LICENSE +0 -0
  13. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/README.md +0 -0
  14. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/README.md +0 -0
  15. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/__init__.py +0 -0
  16. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/context_store.py +0 -0
  17. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/in_memory_context_store.py +0 -0
  18. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/postgres_context_store.py +0 -0
  19. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/sqlite_context_store.py +0 -0
  20. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/a2a_storage/storage_factory.py +0 -0
  21. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/README.md +0 -0
  22. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/__init__.py +0 -0
  23. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/database.py +0 -0
  24. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/README.md +0 -0
  25. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/TODO +0 -0
  26. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/__init__.py +0 -0
  27. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/a2a.py +0 -0
  28. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/a2a_openapi.py +0 -0
  29. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/authorized.py +0 -0
  30. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/config.py +0 -0
  31. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/conversations_v1.py +0 -0
  32. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/conversations_v2.py +0 -0
  33. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/feedback.py +0 -0
  34. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/health.py +0 -0
  35. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/info.py +0 -0
  36. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/mcp_auth.py +0 -0
  37. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/mcp_servers.py +0 -0
  38. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/metrics.py +0 -0
  39. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/models.py +0 -0
  40. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/prompts.py +0 -0
  41. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/providers.py +0 -0
  42. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/query.py +0 -0
  43. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/rags.py +0 -0
  44. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/responses.py +0 -0
  45. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/responses_telemetry.py +0 -0
  46. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/rlsapi_v1.py +0 -0
  47. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/root.py +0 -0
  48. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/shields.py +0 -0
  49. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/stream_interrupt.py +0 -0
  50. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/streaming_query.py +0 -0
  51. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/tools.py +0 -0
  52. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/endpoints/vector_stores.py +0 -0
  53. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/app/routers.py +0 -0
  54. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/README.md +0 -0
  55. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/__init__.py +0 -0
  56. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/api_key_token.py +0 -0
  57. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/interface.py +0 -0
  58. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/jwk_token.py +0 -0
  59. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/k8s.py +0 -0
  60. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/noop.py +0 -0
  61. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/noop_with_token.py +0 -0
  62. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/rh_identity.py +0 -0
  63. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/trusted_proxy.py +0 -0
  64. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authentication/utils.py +0 -0
  65. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authorization/README.md +0 -0
  66. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authorization/__init__.py +0 -0
  67. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authorization/azure_token_manager.py +0 -0
  68. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authorization/middleware.py +0 -0
  69. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/authorization/resolvers.py +0 -0
  70. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/README.md +0 -0
  71. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/__init__.py +0 -0
  72. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/cache.py +0 -0
  73. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/cache_entry.py +0 -0
  74. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/cache_error.py +0 -0
  75. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/cache_factory.py +0 -0
  76. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/in_memory_cache.py +0 -0
  77. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/noop_cache.py +0 -0
  78. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/postgres_cache.py +0 -0
  79. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/cache/sqlite_cache.py +0 -0
  80. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/data/README.md +0 -0
  81. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/data/__init__.py +0 -0
  82. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/data/default_run.yaml +0 -0
  83. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/metrics/README.md +0 -0
  84. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/metrics/__init__.py +0 -0
  85. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/metrics/recording.py +0 -0
  86. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/metrics/utils.py +0 -0
  87. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/README.md +0 -0
  88. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/__init__.py +0 -0
  89. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/README.md +0 -0
  90. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/__init__.py +0 -0
  91. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/README.md +0 -0
  92. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/__init__.py +0 -0
  93. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/catalog.py +0 -0
  94. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/conversations.py +0 -0
  95. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/feedback.py +0 -0
  96. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/mcp_servers.py +0 -0
  97. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/prompts.py +0 -0
  98. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/query.py +0 -0
  99. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/responses_openai.py +0 -0
  100. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/rlsapi.py +0 -0
  101. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/requests/vector_stores.py +0 -0
  102. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/README.md +0 -0
  103. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/__init__.py +0 -0
  104. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/constants.py +0 -0
  105. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/README.md +0 -0
  106. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/__init__.py +0 -0
  107. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/bad_request.py +0 -0
  108. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/bases.py +0 -0
  109. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/conflict.py +0 -0
  110. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/content_too_large.py +0 -0
  111. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/forbidden.py +0 -0
  112. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/internal.py +0 -0
  113. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/not_found.py +0 -0
  114. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/service_unavailable.py +0 -0
  115. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/too_many_requests.py +0 -0
  116. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/unauthorized.py +0 -0
  117. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/error/unprocessable_entity.py +0 -0
  118. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/README.md +0 -0
  119. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/__init__.py +0 -0
  120. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/bases.py +0 -0
  121. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/catalog.py +0 -0
  122. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/configuration.py +0 -0
  123. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/conversations.py +0 -0
  124. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/feedback.py +0 -0
  125. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/mcp_servers.py +0 -0
  126. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/probes.py +0 -0
  127. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/prompts.py +0 -0
  128. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/query.py +0 -0
  129. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/responses_openai.py +0 -0
  130. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/rlsapi.py +0 -0
  131. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/api/responses/successful/vector_stores.py +0 -0
  132. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/README.md +0 -0
  133. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/__init__.py +0 -0
  134. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/agents/README.md +0 -0
  135. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/agents/__init__.py +0 -0
  136. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/agents/stream_payloads.py +0 -0
  137. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/agents/turn_accumulator.py +0 -0
  138. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/conversation.py +0 -0
  139. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/feedback.py +0 -0
  140. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/health.py +0 -0
  141. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/mcp.py +0 -0
  142. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/moderation.py +0 -0
  143. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/query.py +0 -0
  144. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/README.md +0 -0
  145. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/__init__.py +0 -0
  146. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/contexts.py +0 -0
  147. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/responses_api_params.py +0 -0
  148. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/responses_conversation_context.py +0 -0
  149. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/responses/types.py +0 -0
  150. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/transcripts.py +0 -0
  151. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/common/turn_summary.py +0 -0
  152. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/compaction.py +0 -0
  153. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/config.py +0 -0
  154. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/database/README.md +0 -0
  155. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/database/__init__.py +0 -0
  156. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/database/base.py +0 -0
  157. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/models/database/conversations.py +0 -0
  158. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/__init__.py +0 -0
  159. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/formats/README.md +0 -0
  160. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/formats/__init__.py +0 -0
  161. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/formats/responses.py +0 -0
  162. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/formats/rlsapi.py +0 -0
  163. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/observability/splunk.py +0 -0
  164. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/README.md +0 -0
  165. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/__init__.py +0 -0
  166. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/README.md +0 -0
  167. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/__init__.py +0 -0
  168. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/question_validity/README.md +0 -0
  169. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/question_validity/__init__.py +0 -0
  170. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py +0 -0
  171. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/redaction/__init__.py +0 -0
  172. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/redaction/capability.py +0 -0
  173. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/capabilities/redaction/core.py +0 -0
  174. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/llamastack/README.md +0 -0
  175. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/llamastack/__init__.py +0 -0
  176. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/llamastack/_model.py +0 -0
  177. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/llamastack/_provider.py +0 -0
  178. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/pydantic_ai_lightspeed/llamastack/_transport.py +0 -0
  179. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/README.md +0 -0
  180. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/__init__.py +0 -0
  181. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/cluster_quota_limiter.py +0 -0
  182. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/connect_pg.py +0 -0
  183. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/connect_sqlite.py +0 -0
  184. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/quota_exceed_error.py +0 -0
  185. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/quota_limiter.py +0 -0
  186. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/quota_limiter_factory.py +0 -0
  187. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/revokable_quota_limiter.py +0 -0
  188. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/sql.py +0 -0
  189. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/token_usage_history.py +0 -0
  190. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/quota/user_quota_limiter.py +0 -0
  191. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/runners/README.md +0 -0
  192. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/runners/__init__.py +0 -0
  193. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/runners/quota_scheduler.py +0 -0
  194. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/runners/uvicorn.py +0 -0
  195. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/telemetry/README.md +0 -0
  196. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/telemetry/__init__.py +0 -0
  197. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/telemetry/configuration_snapshot.py +0 -0
  198. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/README.md +0 -0
  199. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/__init__.py +0 -0
  200. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/agents/README.md +0 -0
  201. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/agents/query.py +0 -0
  202. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/agents/streaming.py +0 -0
  203. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/agents/tool_processor.py +0 -0
  204. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/checks.py +0 -0
  205. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/common.py +0 -0
  206. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/compaction.py +0 -0
  207. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/connection_decorator.py +0 -0
  208. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/conversation_compaction.py +0 -0
  209. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/conversations.py +0 -0
  210. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/degraded_mode.py +0 -0
  211. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/endpoints.py +0 -0
  212. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/llama_stack_version.py +0 -0
  213. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/markdown_repair.py +0 -0
  214. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/mcp_auth_headers.py +0 -0
  215. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/mcp_headers.py +0 -0
  216. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/mcp_oauth_probe.py +0 -0
  217. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/prompts.py +0 -0
  218. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/query.py +0 -0
  219. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/quota.py +0 -0
  220. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/reranker.py +0 -0
  221. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/responses.py +0 -0
  222. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/rh_identity.py +0 -0
  223. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/schema_dumper.py +0 -0
  224. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/shields.py +0 -0
  225. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/stream_interrupts.py +0 -0
  226. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/streaming_sse.py +0 -0
  227. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/suid.py +0 -0
  228. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/token_counter.py +0 -0
  229. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/token_estimator.py +0 -0
  230. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/tool_formatter.py +0 -0
  231. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/transcripts.py +0 -0
  232. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/types.py +0 -0
  233. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/src/utils/vector_search.py +0 -0
  234. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/__init__.py +0 -0
  235. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/README.md +0 -0
  236. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/conftest.py +0 -0
  237. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/js_10000_lines.js +0 -0
  238. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/js_1000_lines.js +0 -0
  239. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/js_100_lines.js +0 -0
  240. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/js_10_lines.js +0 -0
  241. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/json_10000_lines.json +0 -0
  242. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/json_1000_lines.json +0 -0
  243. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/json_100_lines.json +0 -0
  244. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/json_10_lines.json +0 -0
  245. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/python_10000_lines.py +0 -0
  246. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/python_1000_lines.py +0 -0
  247. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/python_100_lines.py +0 -0
  248. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/python_10_lines.py +0 -0
  249. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/xml_10000_lines.xml +0 -0
  250. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/xml_1000_lines.xml +0 -0
  251. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/xml_100_lines.xml +0 -0
  252. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/xml_10_lines.xml +0 -0
  253. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/yaml_10000_lines.yml +0 -0
  254. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/yaml_1000_lines.yml +0 -0
  255. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/yaml_100_lines.yml +0 -0
  256. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data/yaml_10_lines.yml +0 -0
  257. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/data_generators.py +0 -0
  258. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/db_benchmarks.py +0 -0
  259. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/test_app_database.py +0 -0
  260. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/test_app_database_comparison.py +0 -0
  261. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/benchmarks/test_token_estimator.py +0 -0
  262. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/benchmarks-postgres.yaml +0 -0
  263. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/benchmarks-sqlite.yaml +0 -0
  264. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/lightspeed-stack-proper-name.yaml +0 -0
  265. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/lightspeed-stack.yaml +0 -0
  266. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/minimal-stack.yaml +0 -0
  267. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/multiline_system_prompt.txt +0 -0
  268. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/password +0 -0
  269. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/rag.txt +0 -0
  270. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/rh-identity-config.yaml +0 -0
  271. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/run.yaml +0 -0
  272. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/server.crt +0 -0
  273. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/server.key +0 -0
  274. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/configuration/system_prompt.txt +0 -0
  275. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/README.md +0 -0
  276. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/__init__.py +0 -0
  277. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/README.md +0 -0
  278. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-azure.yaml +0 -0
  279. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-bedrock.yaml +0 -0
  280. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-ci.yaml +0 -0
  281. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-rhaiis.yaml +0 -0
  282. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-rhelai.yaml +0 -0
  283. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-vertexai.yaml +0 -0
  284. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configs/run-watsonx.yaml +0 -0
  285. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/README.md +0 -0
  286. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/README.md +0 -0
  287. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-auth-noop-token.yaml +0 -0
  288. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-auth-rh-identity.yaml +0 -0
  289. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-byok-pdf.yaml +0 -0
  290. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-inline-rag.yaml +0 -0
  291. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-invalid-feedback-storage.yaml +0 -0
  292. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-invalid-mcp-file-auth.yaml +0 -0
  293. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-auth.yaml +0 -0
  294. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-client-auth.yaml +0 -0
  295. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-file-auth.yaml +0 -0
  296. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-kubernetes-auth.yaml +0 -0
  297. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-oauth-auth.yaml +0 -0
  298. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp.yaml +0 -0
  299. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-no-cache.yaml +0 -0
  300. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-rbac.yaml +0 -0
  301. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-skills-directory.yaml +0 -0
  302. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack-skills.yaml +0 -0
  303. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/library-mode/lightspeed-stack.yaml +0 -0
  304. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/README.md +0 -0
  305. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-auth-noop-token.yaml +0 -0
  306. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-auth-rh-identity.yaml +0 -0
  307. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-degraded-mode.yaml +0 -0
  308. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-inline-rag.yaml +0 -0
  309. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-invalid-feedback-storage.yaml +0 -0
  310. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-invalid-mcp-file-auth.yaml +0 -0
  311. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-auth.yaml +0 -0
  312. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-client-auth.yaml +0 -0
  313. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-file-auth.yaml +0 -0
  314. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-kubernetes-auth.yaml +0 -0
  315. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-oauth-auth.yaml +0 -0
  316. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp.yaml +0 -0
  317. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-no-cache.yaml +0 -0
  318. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-rbac.yaml +0 -0
  319. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-rhelai.yaml +0 -0
  320. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-skills-directory.yaml +0 -0
  321. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-skills.yaml +0 -0
  322. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack-tls.yaml +0 -0
  323. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/configuration/server-mode/lightspeed-stack.yaml +0 -0
  324. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/README.md +0 -0
  325. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/authorized_noop.feature +0 -0
  326. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/authorized_noop_token.feature +0 -0
  327. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/authorized_rh_identity.feature +0 -0
  328. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/byok_pdf.feature +0 -0
  329. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/conversation_cache_v2.feature +0 -0
  330. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/conversations.feature +0 -0
  331. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/degraded_mode_startup.feature +0 -0
  332. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/environment.py +0 -0
  333. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/faiss.feature +0 -0
  334. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/feedback.feature +0 -0
  335. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/health.feature +0 -0
  336. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/http_401_unauthorized.feature +0 -0
  337. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/inline_rag.feature +0 -0
  338. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/llama_stack_disrupted.feature +0 -0
  339. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/mcp.feature +0 -0
  340. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/mcp_servers_api.feature +0 -0
  341. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/mcp_servers_api_auth.feature +0 -0
  342. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/mcp_servers_api_no_config.feature +0 -0
  343. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/models.feature +0 -0
  344. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/opentelemetry.feature +0 -0
  345. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/prompts.feature +0 -0
  346. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/proxy.feature +0 -0
  347. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/query.feature +0 -0
  348. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/rbac.feature +0 -0
  349. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/responses.feature +0 -0
  350. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/responses_streaming.feature +0 -0
  351. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/rest_api.feature +0 -0
  352. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/rlsapi_v1.feature +0 -0
  353. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/rlsapi_v1_errors.feature +0 -0
  354. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/smoketests.feature +0 -0
  355. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/README.md +0 -0
  356. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/__init__.py +0 -0
  357. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/auth.py +0 -0
  358. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/common.py +0 -0
  359. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/common_http.py +0 -0
  360. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/conversation.py +0 -0
  361. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/feedback.py +0 -0
  362. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/health.py +0 -0
  363. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/info.py +0 -0
  364. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/llm_query_response.py +0 -0
  365. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/models.py +0 -0
  366. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/place_holder.py +0 -0
  367. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/prompts.py +0 -0
  368. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/proxy.py +0 -0
  369. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/rbac.py +0 -0
  370. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/responses_steps.py +0 -0
  371. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/rlsapi_v1.py +0 -0
  372. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/shields.py +0 -0
  373. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/tls.py +0 -0
  374. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/steps/token_counters.py +0 -0
  375. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/streaming_query.feature +0 -0
  376. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/tls-ca.feature +0 -0
  377. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/tls-mtls.feature +0 -0
  378. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/tls-tlsv13.feature +0 -0
  379. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/unified-mode-boot.feature +0 -0
  380. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/unified-mode-legacy.feature +0 -0
  381. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/unified-mode-migration.feature +0 -0
  382. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/unified-mode-synthesis.feature +0 -0
  383. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/unified-mode-validation.feature +0 -0
  384. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/features/vector_stores.feature +0 -0
  385. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/gen_scenario_list.py +0 -0
  386. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_jwks_server/Dockerfile +0 -0
  387. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_jwks_server/README.md +0 -0
  388. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_jwks_server/generate_tokens.py +0 -0
  389. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_jwks_server/server.py +0 -0
  390. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_mcp_server/Dockerfile +0 -0
  391. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_mcp_server/README.md +0 -0
  392. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_mcp_server/server.py +0 -0
  393. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_tls_inference_server/Dockerfile +0 -0
  394. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_tls_inference_server/README.md +0 -0
  395. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/mock_tls_inference_server/server.py +0 -0
  396. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/patches/README.md +0 -0
  397. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/patches/docker-compose-mcp-volumes-selinux.patch +0 -0
  398. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/proxy/README.md +0 -0
  399. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/proxy/__init__.py +0 -0
  400. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/proxy/interception_proxy.py +0 -0
  401. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/proxy/tunnel_proxy.py +0 -0
  402. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/rag/README.md +0 -0
  403. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/rag/kv_store.db +0 -0
  404. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/rag/pdf_kv_store.db +0 -0
  405. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/rag/sources/README.md +0 -0
  406. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/rag/sources/lightspeed-field-notes.pdf +0 -0
  407. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/secrets/README.md +0 -0
  408. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/secrets/invalid-mcp-token +0 -0
  409. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/secrets/mcp-token +0 -0
  410. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/skills/echo/SKILL.md +0 -0
  411. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/skills/echo/references/guide.md +0 -0
  412. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/skills/summarize/SKILL.md +0 -0
  413. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/skills/summarize/references/guide.md +0 -0
  414. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/test_api.py +0 -0
  415. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/test_list.txt +0 -0
  416. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/README.md +0 -0
  417. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/llama_config_utils.py +0 -0
  418. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/llama_prow_utils.py +0 -0
  419. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/llama_stack_utils.py +0 -0
  420. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e/utils/prow_utils.py +0 -0
  421. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/.e2e_exit_code +0 -0
  422. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/configs/run.yaml +0 -0
  423. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/gpu/cluster-policy.yaml +0 -0
  424. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/gpu/create-nfd.yaml +0 -0
  425. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-interception-proxy.yaml +0 -0
  426. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-mock-tls-inference.yaml +0 -0
  427. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-tunnel-proxy.yaml +0 -0
  428. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/lightspeed-stack.yaml +0 -0
  429. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/llama-stack-openai.yaml +0 -0
  430. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/llama-stack-prow.yaml +0 -0
  431. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/mock-jwks.yaml +0 -0
  432. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/lightspeed/mock-mcp.yaml +0 -0
  433. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/namespaces/nfd.yaml +0 -0
  434. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/namespaces/nvidia-operator.yaml +0 -0
  435. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/operators/ds-cluster.yaml +0 -0
  436. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/operators/operatorgroup.yaml +0 -0
  437. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/operators/operators.yaml +0 -0
  438. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/vllm/vllm-inference-service-cpu.yaml +0 -0
  439. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/vllm/vllm-inference-service-gpu.yaml +0 -0
  440. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/vllm/vllm-runtime-cpu.yaml +0 -0
  441. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/manifests/vllm/vllm-runtime-gpu.yaml +0 -0
  442. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline-konflux.sh +0 -0
  443. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline-services-konflux.sh +0 -0
  444. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline-services.sh +0 -0
  445. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline-test-pod.sh +0 -0
  446. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline-vllm.sh +0 -0
  447. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/pipeline.sh +0 -0
  448. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/run-tests.sh +0 -0
  449. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/bootstrap.sh +0 -0
  450. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/deploy-vllm.sh +0 -0
  451. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/e2e-ops.sh +0 -0
  452. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/fetch-vllm-image.sh +0 -0
  453. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/get-vllm-pod-info.sh +0 -0
  454. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/e2e-prow/rhoai/scripts/gpu-setup.sh +0 -0
  455. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/README.md +0 -0
  456. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/__init__.py +0 -0
  457. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/conftest.py +0 -0
  458. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/container_lifecycle/README.md +0 -0
  459. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/container_lifecycle/test_container_lifecycle.py +0 -0
  460. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/README.md +0 -0
  461. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/__init__.py +0 -0
  462. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_authorized_endpoint.py +0 -0
  463. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_config_integration.py +0 -0
  464. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_conversations_v1_integration.py +0 -0
  465. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_conversations_v2_integration.py +0 -0
  466. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_health_integration.py +0 -0
  467. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_info_integration.py +0 -0
  468. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_model_list.py +0 -0
  469. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_query_byok_integration.py +0 -0
  470. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_query_integration.py +0 -0
  471. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_responses_byok_integration.py +0 -0
  472. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_responses_integration.py +0 -0
  473. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_rlsapi_v1_integration.py +0 -0
  474. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_root_endpoint.py +0 -0
  475. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_stream_interrupt_integration.py +0 -0
  476. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_streaming_query_byok_integration.py +0 -0
  477. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_streaming_query_integration.py +0 -0
  478. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/endpoints/test_tools_integration.py +0 -0
  479. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/test_configuration.py +0 -0
  480. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/test_middleware_integration.py +0 -0
  481. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/test_openapi_json.py +0 -0
  482. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/test_rh_identity_integration.py +0 -0
  483. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/integration/test_version.py +0 -0
  484. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/empty.py +0 -0
  485. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/syntax_error.py +0 -0
  486. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/test/profile.py +0 -0
  487. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/test_four/profile.py +0 -0
  488. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/test_three/profile.py +0 -0
  489. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/profiles/test_two/test.txt +0 -0
  490. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/README.md +0 -0
  491. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/__init__.py +0 -0
  492. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/a2a_storage/README.md +0 -0
  493. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/a2a_storage/__init__.py +0 -0
  494. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/a2a_storage/test_in_memory_context_store.py +0 -0
  495. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/a2a_storage/test_sqlite_context_store.py +0 -0
  496. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/a2a_storage/test_storage_factory.py +0 -0
  497. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/README.md +0 -0
  498. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/__init__.py +0 -0
  499. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/README.md +0 -0
  500. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/__init__.py +0 -0
  501. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/conftest.py +0 -0
  502. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_a2a.py +0 -0
  503. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_authorized.py +0 -0
  504. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_config.py +0 -0
  505. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_conversations.py +0 -0
  506. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_conversations_v2.py +0 -0
  507. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_feedback.py +0 -0
  508. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_health.py +0 -0
  509. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_info.py +0 -0
  510. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_mcp_auth.py +0 -0
  511. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_mcp_servers.py +0 -0
  512. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_metrics.py +0 -0
  513. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_models.py +0 -0
  514. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_prompts.py +0 -0
  515. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_providers.py +0 -0
  516. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_query.py +0 -0
  517. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_rags.py +0 -0
  518. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_responses.py +0 -0
  519. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_responses_splunk.py +0 -0
  520. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_rlsapi_v1.py +0 -0
  521. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_root.py +0 -0
  522. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_shields.py +0 -0
  523. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_stream_interrupt.py +0 -0
  524. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_streaming_query.py +0 -0
  525. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/endpoints/test_vector_stores.py +0 -0
  526. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/test_database.py +0 -0
  527. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/app/test_routers.py +0 -0
  528. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/README.md +0 -0
  529. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/__init__.py +0 -0
  530. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_api_key_token.py +0 -0
  531. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_auth.py +0 -0
  532. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_jwk_token.py +0 -0
  533. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_k8s.py +0 -0
  534. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_noop.py +0 -0
  535. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_noop_with_token.py +0 -0
  536. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_rh_identity.py +0 -0
  537. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_trusted_proxy.py +0 -0
  538. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authentication/test_utils.py +0 -0
  539. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authorization/README.md +0 -0
  540. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authorization/__init__.py +0 -0
  541. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authorization/test_azure_token_manager.py +0 -0
  542. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authorization/test_middleware.py +0 -0
  543. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/authorization/test_resolvers.py +0 -0
  544. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/README.md +0 -0
  545. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/__init__.py +0 -0
  546. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/test_cache_factory.py +0 -0
  547. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/test_in_memory_cache.py +0 -0
  548. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/test_noop_cache.py +0 -0
  549. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/test_postgres_cache.py +0 -0
  550. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/cache/test_sqlite_cache.py +0 -0
  551. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/conftest.py +0 -0
  552. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/metrics/README.md +0 -0
  553. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/metrics/__init__.py +0 -0
  554. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/metrics/test_recording.py +0 -0
  555. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/metrics/test_utis.py +0 -0
  556. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/README.md +0 -0
  557. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/__init__.py +0 -0
  558. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/README.md +0 -0
  559. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/__init__.py +0 -0
  560. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_a2a_state_configuration.py +0 -0
  561. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_approvals_configuration.py +0 -0
  562. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_authentication_configuration.py +0 -0
  563. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_byok_rag.py +0 -0
  564. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_compaction_configuration.py +0 -0
  565. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_conversation_history.py +0 -0
  566. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_cors.py +0 -0
  567. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_customization.py +0 -0
  568. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_database_configuration.py +0 -0
  569. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_dump_configuration.py +0 -0
  570. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_in_memory_cache_configuration.py +0 -0
  571. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_inference_configuration.py +0 -0
  572. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_jwt_role_rule.py +0 -0
  573. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_llama_stack_configuration.py +0 -0
  574. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_model_context_protocol_server.py +0 -0
  575. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_postgresql_database_configuration.py +0 -0
  576. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_quota_handlers_config.py +0 -0
  577. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_quota_limiter_config.py +0 -0
  578. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_quota_scheduler_config.py +0 -0
  579. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_rag_configuration.py +0 -0
  580. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_reranker_configuration.py +0 -0
  581. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_rlsapi_v1_configuration.py +0 -0
  582. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_service_configuration.py +0 -0
  583. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_skills_configuration.py +0 -0
  584. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_splunk_configuration.py +0 -0
  585. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_tls_configuration.py +0 -0
  586. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/config/test_user_data_collection.py +0 -0
  587. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/README.md +0 -0
  588. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/__init__.py +0 -0
  589. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_attachment.py +0 -0
  590. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_feedback_request.py +0 -0
  591. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_feedback_status_update_request.py +0 -0
  592. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_query_request.py +0 -0
  593. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_responses_request.py +0 -0
  594. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/requests/test_vector_store_requests.py +0 -0
  595. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/README.md +0 -0
  596. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/__init__.py +0 -0
  597. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_authorized_response.py +0 -0
  598. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_error_responses.py +0 -0
  599. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_query_response.py +0 -0
  600. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_rag_chunk.py +0 -0
  601. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_response_types.py +0 -0
  602. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_successful_responses.py +0 -0
  603. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/responses/test_types.py +0 -0
  604. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/rlsapi/README.md +0 -0
  605. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/rlsapi/__init__.py +0 -0
  606. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/rlsapi/test_requests.py +0 -0
  607. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/rlsapi/test_responses.py +0 -0
  608. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/models/test_compaction.py +0 -0
  609. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/README.md +0 -0
  610. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/__init__.py +0 -0
  611. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/formats/README.md +0 -0
  612. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/formats/__init__.py +0 -0
  613. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/formats/test_responses.py +0 -0
  614. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/formats/test_rlsapi.py +0 -0
  615. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/observability/test_splunk.py +0 -0
  616. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/README.md +0 -0
  617. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/__init__.py +0 -0
  618. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/README.md +0 -0
  619. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/__init__.py +0 -0
  620. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/README.md +0 -0
  621. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/__init__.py +0 -0
  622. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/test_capability.py +0 -0
  623. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/__init__.py +0 -0
  624. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_capability.py +0 -0
  625. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_config.py +0 -0
  626. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_core.py +0 -0
  627. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/llamastack/README.md +0 -0
  628. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/llamastack/__init__.py +0 -0
  629. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/llamastack/test_provider.py +0 -0
  630. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/pydantic_ai_lightspeed/llamastack/test_transport.py +0 -0
  631. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/README.md +0 -0
  632. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/__init__.py +0 -0
  633. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_cluster_quota_limiter.py +0 -0
  634. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_connect_pg.py +0 -0
  635. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_connect_sqlite.py +0 -0
  636. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_quota_exceed_error.py +0 -0
  637. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_quota_limiter_factory.py +0 -0
  638. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/quota/test_user_quota_limiter.py +0 -0
  639. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/runners/README.md +0 -0
  640. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/runners/__init__.py +0 -0
  641. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/runners/test_uvicorn_runner.py +0 -0
  642. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/telemetry/README.md +0 -0
  643. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/telemetry/__init__.py +0 -0
  644. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/telemetry/conftest.py +0 -0
  645. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/telemetry/test_configuration_snapshot.py +0 -0
  646. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_client.py +0 -0
  647. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_configuration.py +0 -0
  648. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_configuration_unknown_fields.py +0 -0
  649. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_degraded_mode.py +0 -0
  650. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_lightspeed_stack.py +0 -0
  651. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_llama_stack_configuration.py +0 -0
  652. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_llama_stack_synthesize.py +0 -0
  653. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_log.py +0 -0
  654. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/test_sentry.py +0 -0
  655. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/README.md +0 -0
  656. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/__init__.py +0 -0
  657. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/agents/README.md +0 -0
  658. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/agents/test_query.py +0 -0
  659. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/agents/test_streaming.py +0 -0
  660. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/agents/test_tool_processor.py +0 -0
  661. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/auth_helpers.py +0 -0
  662. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_checks.py +0 -0
  663. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_common.py +0 -0
  664. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_compaction.py +0 -0
  665. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_connection_decorator.py +0 -0
  666. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_conversation_compaction.py +0 -0
  667. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_conversations.py +0 -0
  668. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_endpoints.py +0 -0
  669. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_llama_stack_version.py +0 -0
  670. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_markdown_repair.py +0 -0
  671. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_mcp_auth_headers.py +0 -0
  672. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_mcp_headers.py +0 -0
  673. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_prompts.py +0 -0
  674. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_query.py +0 -0
  675. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_responses.py +0 -0
  676. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_rh_identity.py +0 -0
  677. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_schema_dumper.py +0 -0
  678. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_shields.py +0 -0
  679. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_stream_interrupts.py +0 -0
  680. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_streaming_sse.py +0 -0
  681. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_suid.py +0 -0
  682. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_token_estimator.py +0 -0
  683. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_tool_formatter.py +0 -0
  684. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_transcripts.py +0 -0
  685. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_types.py +0 -0
  686. {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.6}/tests/unit/utils/test_vector_search.py +0 -0
@@ -1,9 +1,9 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: lightspeed-stack
3
- Version: 0.6.2
3
+ Version: 0.6.6
4
4
  Summary: LLM tooling stack
5
5
  Keywords: LLM,RAG
6
- Maintainer-Email: =?utf-8?b?UGF2ZWwgVGnFoW5vdnNrw70=?= <tisnik@centrum.cz>
6
+ Maintainer-Email: Pavel Tišnovský <tisnik@centrum.cz>
7
7
  License: Apache License
8
8
  Version 2.0, January 2004
9
9
  http://www.apache.org/licenses/
@@ -215,7 +215,7 @@ Classifier: License :: OSI Approved :: Apache Software License
215
215
  Project-URL: Homepage, https://github.com/lightspeed-core/lightspeed-stack
216
216
  Project-URL: Issues, https://github.com/lightspeed-core/lightspeed-stack/issues
217
217
  Requires-Python: <3.14,>=3.12
218
- Requires-Dist: fastapi>=0.115.12
218
+ Requires-Dist: fastapi>=0.138.0
219
219
  Requires-Dist: uvicorn>=0.34.3
220
220
  Requires-Dist: kubernetes>=30.1.0
221
221
  Requires-Dist: llama-stack==0.6.0
@@ -251,6 +251,7 @@ Requires-Dist: python-dotenv>=1.2.2
251
251
  Requires-Dist: tiktoken>=0.8.0
252
252
  Requires-Dist: pydantic-ai>=1.99.0
253
253
  Requires-Dist: pydantic-ai-skills>=0.11.0
254
+ Requires-Dist: setuptools-scm<10
254
255
  Description-Content-Type: text/markdown
255
256
 
256
257
  # Lightspeed Core Stack (LCS)
@@ -21,7 +21,7 @@ keywords = [
21
21
  requires-python = ">=3.12,<3.14"
22
22
  readme = "README.md"
23
23
  dependencies = [
24
- "fastapi>=0.115.12",
24
+ "fastapi>=0.138.0",
25
25
  "uvicorn>=0.34.3",
26
26
  "kubernetes>=30.1.0",
27
27
  "llama-stack==0.6.0",
@@ -57,8 +57,9 @@ dependencies = [
57
57
  "tiktoken>=0.8.0",
58
58
  "pydantic-ai>=1.99.0",
59
59
  "pydantic-ai-skills>=0.11.0",
60
+ "setuptools-scm<10",
60
61
  ]
61
- version = "0.6.2"
62
+ version = "0.6.6"
62
63
 
63
64
  [project.license]
64
65
  file = "LICENSE"
@@ -9,8 +9,8 @@ import sentry_sdk # pyright: ignore[reportMissingImports]
9
9
  from fastapi import FastAPI, HTTPException
10
10
  from fastapi.middleware.cors import CORSMiddleware
11
11
  from fastapi.responses import JSONResponse
12
+ from fastapi.routing import iter_route_contexts
12
13
  from llama_stack_client import APIConnectionError, AsyncLlamaStackClient
13
- from starlette.routing import Mount, Route, WebSocketRoute
14
14
  from starlette.types import ASGIApp, Message, Receive, Scope, Send
15
15
 
16
16
  import version
@@ -210,7 +210,7 @@ class RestApiMetricsMiddleware: # pylint: disable=too-few-public-methods
210
210
  # requests with the full prefixed path (/api/lightspeed/v1/infer) but
211
211
  # app_routes_paths contains only application-level paths (/v1/infer).
212
212
  # Strip the prefix so the path check and metric labels match the routes.
213
- root_path = scope.get("root_path", "")
213
+ root_path: str = app.root_path
214
214
  path: str = scope["path"]
215
215
  if root_path and path.startswith(root_path + "/"):
216
216
  path = path[len(root_path) :]
@@ -290,9 +290,10 @@ logger.info("Including routers")
290
290
  routers.include_routers(app)
291
291
 
292
292
  app_routes_paths = [
293
- route.path
294
- for route in app.routes
295
- if isinstance(route, (Mount, Route, WebSocketRoute))
293
+ rc.original_route.path # pyright: ignore[reportAttributeAccessIssue]
294
+ for rc in iter_route_contexts(app.routes)
295
+ if hasattr(rc.original_route, "path")
296
+ and rc.original_route.path # pyright: ignore[reportAttributeAccessIssue]
296
297
  ]
297
298
 
298
299
  # Register pure ASGI middlewares. Middleware execution order is the reverse of
@@ -30,7 +30,7 @@ event_data = InferenceEventData(
30
30
  org_id="12345678",
31
31
  system_id="abc-def-123",
32
32
  request_id="req_xyz789",
33
- cla_version="CLA/0.6.2",
33
+ cla_version="CLA/0.6.6",
34
34
  system_os="RHEL",
35
35
  system_version="9.3",
36
36
  system_arch="x86_64",
@@ -99,6 +99,7 @@ def _skills_capability(
99
99
  return SkillsCapability(
100
100
  directories=[str(path) for path in skills_config.paths],
101
101
  validate=False,
102
+ exclude_tools=["run_skill_script"],
102
103
  )
103
104
 
104
105
 
@@ -18,7 +18,7 @@ Feature: Info tests
18
18
  Scenario: Check if info endpoint is working
19
19
  When I access REST API endpoint "info" using HTTP GET method
20
20
  Then The status code of the response is 200
21
- And The body of the response has proper name Lightspeed Core Service (LCS) and version 0.6.2
21
+ And The body of the response has proper name Lightspeed Core Service (LCS) and version 0.6.6
22
22
  And The body of the response has llama-stack version 0.6.0
23
23
 
24
24
  Scenario: Check if shields endpoint is working
@@ -102,37 +102,6 @@ Feature: Agent skills tests
102
102
  "toolgroup_id": "builtin::agent-skills",
103
103
  "server_source": "builtin",
104
104
  "type": "tool"
105
- },
106
- {
107
- "identifier": "run_skill_script",
108
- "description": "Execute a skill script that performs actions or computations.\n\nScripts are executable programs provided by skills that can perform actions\n(API calls, file operations), process data (transformations, analysis), or\ngenerate outputs (reports, visualizations).\n\nWhen to use this:\n- When a skill's instructions tell you to run a specific script\n- To perform automated tasks that the skill provides\n- For data processing, API interactions, or file operations",
109
- "parameters": [
110
- {
111
- "name": "skill_name",
112
- "description": "Name of the skill containing the script.",
113
- "parameter_type": "string",
114
- "required": true,
115
- "default": null
116
- },
117
- {
118
- "name": "script_name",
119
- "description": "Exact name of the script as listed in the skill.\nExamples: \"analyze.py\", \"scripts/analyze.py\", \"scripts/deploy.sh\", \"scripts/runner\"\nMust match exactly - do not infer or guess.",
120
- "parameter_type": "string",
121
- "required": true,
122
- "default": null
123
- },
124
- {
125
- "name": "args",
126
- "description": "Arguments required by the script.\nKeys must match the parameter names in the script's schema.",
127
- "parameter_type": "object",
128
- "required": false,
129
- "default": null
130
- }
131
- ],
132
- "provider_id": "agent-skills",
133
- "toolgroup_id": "builtin::agent-skills",
134
- "server_source": "builtin",
135
- "type": "tool"
136
105
  }
137
106
  ]
138
107
  }
@@ -236,11 +236,73 @@ def wait_for_container_health(container_name: str, max_attempts: int = 6) -> Non
236
236
  )
237
237
 
238
238
 
239
+ def _parsed_json_container(value: Any) -> Optional[Any]:
240
+ """Return ``value`` parsed as a JSON object or array, or None.
241
+
242
+ Only objects and arrays qualify. A bare string such as ``"1e3"`` is plain
243
+ text here, not a document whose formatting may be normalised.
244
+
245
+ Parameters:
246
+ ----------
247
+ value: Candidate value, only strings are considered.
248
+
249
+ Returns:
250
+ -------
251
+ The parsed ``dict`` or ``list``, or None when ``value`` is not a string
252
+ holding a JSON object or array.
253
+ """
254
+ if not isinstance(value, str):
255
+ return None
256
+ try:
257
+ parsed = json.loads(value)
258
+ except ValueError:
259
+ return None
260
+ return parsed if isinstance(parsed, (dict, list)) else None
261
+
262
+
263
+ def _json_values_equal(left: Any, right: Any) -> bool:
264
+ """Return True when two parsed JSON values are equal, including their types.
265
+
266
+ Plain ``==`` is not enough: Python treats ``True == 1``, ``False == 0``
267
+ and ``1 == 1.0`` as equal, so ``{"enabled": true}`` would match
268
+ ``{"enabled": 1}``. Object key order is ignored; array order is not.
269
+
270
+ Parameters:
271
+ ----------
272
+ left: First parsed JSON value.
273
+ right: Second parsed JSON value.
274
+
275
+ Returns:
276
+ -------
277
+ True when both values have the same JSON types and contents.
278
+ """
279
+ if type(left) is not type(right):
280
+ return False
281
+ if isinstance(left, dict):
282
+ return left.keys() == right.keys() and all(
283
+ _json_values_equal(left[key], right[key]) for key in left
284
+ )
285
+ if isinstance(left, list):
286
+ return len(left) == len(right) and all(
287
+ _json_values_equal(item_left, item_right)
288
+ for item_left, item_right in zip(left, right)
289
+ )
290
+ return left == right
291
+
292
+
239
293
  def validate_json_partially(actual: Any, expected: Any) -> None:
240
294
  """Recursively validate that `actual` JSON contains all keys and values specified in `expected`.
241
295
 
242
296
  Extra elements/keys are ignored. Raises AssertionError if validation fails.
243
297
 
298
+ Values that are strings holding a serialized JSON object or array are
299
+ compared by parsed content rather than byte for byte, so a producer that
300
+ emits its keys in a different order still matches. The comparison stays
301
+ exact — same keys, same values, same JSON types, and array element order
302
+ still significant — because relaxing it to the partial semantics used
303
+ elsewhere would silently weaken every existing assertion over an embedded
304
+ JSON document.
305
+
244
306
  Returns:
245
307
  None
246
308
 
@@ -268,6 +330,16 @@ def validate_json_partially(actual: Any, expected: Any) -> None:
268
330
  ), f"No matching element found in list for schema item {schema_item}"
269
331
 
270
332
  else:
333
+ if actual != expected:
334
+ parsed_actual = _parsed_json_container(actual)
335
+ parsed_expected = _parsed_json_container(expected)
336
+ if parsed_actual is not None and parsed_expected is not None:
337
+ assert _json_values_equal(parsed_actual, parsed_expected), (
338
+ f"JSON-in-string mismatch: expected {parsed_expected}, "
339
+ f"got {parsed_actual}"
340
+ )
341
+ return
342
+
271
343
  assert actual == expected, f"Value mismatch: expected {expected}, got {actual}"
272
344
 
273
345
 
@@ -1169,7 +1169,6 @@ async def test_tools_endpoint_includes_agent_capability_tools(
1169
1169
  assert "list_skills" in tool_ids
1170
1170
  assert "load_skill" in tool_ids
1171
1171
  assert "read_skill_resource" in tool_ids
1172
- assert "run_skill_script" in tool_ids
1173
1172
 
1174
1173
  list_skills = next(
1175
1174
  tool for tool in response.tools if tool["identifier"] == "list_skills"
@@ -9,7 +9,14 @@ from fastapi import HTTPException, status
9
9
  from pytest_mock import MockerFixture
10
10
  from starlette.types import Message, Receive, Scope, Send
11
11
 
12
- from app.main import GlobalExceptionMiddleware, RestApiMetricsMiddleware
12
+ from app.main import (
13
+ GlobalExceptionMiddleware,
14
+ RestApiMetricsMiddleware,
15
+ app_routes_paths,
16
+ )
17
+ from app.main import (
18
+ app as fastapi_app,
19
+ )
13
20
  from models.api.responses.error import InternalServerErrorResponse
14
21
 
15
22
 
@@ -189,6 +196,7 @@ async def test_rest_api_metrics_strips_root_path(
189
196
  ) -> None:
190
197
  """Middleware must strip root_path so prefixed requests still match routes."""
191
198
  mocker.patch("app.main.app_routes_paths", ["/v1/infer"])
199
+ mocker.patch.object(fastapi_app, "root_path", "/api/lightspeed")
192
200
  mock_measure_duration = mocker.patch(
193
201
  "app.main.recording.measure_response_duration", return_value=nullcontext()
194
202
  )
@@ -201,9 +209,9 @@ async def test_rest_api_metrics_strips_root_path(
201
209
  middleware = RestApiMetricsMiddleware(ok_app)
202
210
  collector = _ResponseCollector()
203
211
 
204
- # Simulate 3scale forwarding /api/lightspeed/v1/infer with root_path set.
212
+ # Simulate 3scale forwarding /api/lightspeed/v1/infer — scope carries no root_path.
205
213
  await middleware(
206
- _make_scope("/api/lightspeed/v1/infer", root_path="/api/lightspeed"),
214
+ _make_scope("/api/lightspeed/v1/infer"),
207
215
  _noop_receive,
208
216
  collector,
209
217
  )
@@ -241,3 +249,57 @@ async def test_rest_api_metrics_no_root_path_unchanged(
241
249
  assert collector.status_code == 200
242
250
  mock_measure_duration.assert_called_once_with("/v1/infer")
243
251
  mock_record_call.assert_called_once_with("/v1/infer", 200)
252
+
253
+
254
+ @pytest.mark.asyncio
255
+ async def test_rest_api_metrics_uses_app_root_path_not_scope(
256
+ mocker: MockerFixture,
257
+ ) -> None:
258
+ """Middleware must read root_path from app.root_path, not scope["root_path"].
259
+
260
+ The scope carries an empty root_path while app.root_path holds the real prefix.
261
+ If the middleware reads from the scope it will not strip the prefix, the path
262
+ will not match any route, and no metric will be recorded — causing both
263
+ mock_measure_duration and mock_record_call assertions to fail.
264
+ """
265
+ mocker.patch("app.main.app_routes_paths", ["/v1/infer"])
266
+ mocker.patch.object(fastapi_app, "root_path", "/api/lightspeed")
267
+ mock_measure_duration = mocker.patch(
268
+ "app.main.recording.measure_response_duration", return_value=nullcontext()
269
+ )
270
+ mock_record_call = mocker.patch("app.main.recording.record_rest_api_call")
271
+
272
+ async def ok_app(_scope: Scope, _receive: Receive, send: Send) -> None:
273
+ await send({"type": "http.response.start", "status": 200, "headers": []})
274
+ await send({"type": "http.response.body", "body": b"ok"})
275
+
276
+ middleware = RestApiMetricsMiddleware(ok_app)
277
+ collector = _ResponseCollector()
278
+
279
+ # scope["root_path"] is explicitly empty while app.root_path is "/api/lightspeed".
280
+ # The middleware must use app.root_path to strip the prefix correctly.
281
+ scope = _make_scope("/api/lightspeed/v1/infer")
282
+ scope["root_path"] = ""
283
+ await middleware(scope, _noop_receive, collector)
284
+
285
+ assert collector.status_code == 200
286
+ mock_measure_duration.assert_called_once_with("/v1/infer")
287
+ mock_record_call.assert_called_once_with("/v1/infer", 200)
288
+
289
+
290
+ # ---------------------------------------------------------------------------
291
+ # app_routes_paths population
292
+ # ---------------------------------------------------------------------------
293
+
294
+
295
+ def test_app_routes_paths_contains_application_routes() -> None:
296
+ """app_routes_paths must include routes registered via include_router.
297
+
298
+ FastAPI >= 0.137 stores included routers as _IncludedRouter objects that
299
+ the old isinstance(route, (Mount, Route, WebSocketRoute)) filter silently
300
+ drops. iter_route_contexts() resolves them correctly. If this test fails
301
+ with only 4 entries (the FastAPI built-ins), the fix has been reverted.
302
+ """
303
+ assert "/liveness" in app_routes_paths
304
+ assert "/readiness" in app_routes_paths
305
+ assert len(app_routes_paths) > 4
@@ -384,7 +384,6 @@ class TestGetAgentCapabilityTools:
384
384
  "list_skills",
385
385
  "load_skill",
386
386
  "read_skill_resource",
387
- "run_skill_script",
388
387
  ]
389
388
  assert all(
390
389
  tool["provider_id"] == "agent-skills"