lightspeed-stack 0.6.2__tar.gz → 0.6.5__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.
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/PKG-INFO +4 -3
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/pyproject.toml +3 -2
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/main.py +6 -5
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/README.md +1 -1
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/info.feature +1 -1
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/utils.py +72 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/test_main_middleware.py +65 -3
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/LICENSE +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/in_memory_context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/postgres_context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/sqlite_context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/storage_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/database.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/TODO +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/a2a.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/a2a_openapi.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/authorized.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/conversations_v1.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/conversations_v2.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/health.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/info.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/mcp_auth.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/mcp_servers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/metrics.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/models.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/providers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/rags.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/responses_telemetry.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/rlsapi_v1.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/root.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/shields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/stream_interrupt.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/streaming_query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/tools.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/endpoints/vector_stores.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/app/routers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/api_key_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/interface.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/jwk_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/k8s.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/noop.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/noop_with_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/rh_identity.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/trusted_proxy.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authentication/utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authorization/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authorization/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authorization/azure_token_manager.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authorization/middleware.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/authorization/resolvers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/cache_entry.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/cache_error.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/cache_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/in_memory_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/noop_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/postgres_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/cache/sqlite_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/data/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/data/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/data/default_run.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/metrics/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/metrics/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/metrics/recording.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/metrics/utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/catalog.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/mcp_servers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/responses_openai.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/rlsapi.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/vector_stores.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/constants.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/bad_request.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/bases.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/conflict.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/content_too_large.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/forbidden.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/internal.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/not_found.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/service_unavailable.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/too_many_requests.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/unauthorized.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/unprocessable_entity.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/bases.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/catalog.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/mcp_servers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/probes.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/responses_openai.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/rlsapi.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/vector_stores.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/stream_payloads.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/turn_accumulator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/conversation.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/health.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/mcp.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/moderation.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/contexts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/responses_api_params.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/responses_conversation_context.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/responses/types.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/transcripts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/turn_summary.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/database/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/database/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/database/base.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/database/conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/formats/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/formats/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/formats/responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/formats/rlsapi.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/observability/splunk.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/question_validity/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/question_validity/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/question_validity/_capability.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/redaction/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/redaction/capability.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/capabilities/redaction/core.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/llamastack/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/llamastack/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/llamastack/_model.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/llamastack/_provider.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/pydantic_ai_lightspeed/llamastack/_transport.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/cluster_quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/connect_pg.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/connect_sqlite.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/quota_exceed_error.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/quota_limiter_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/revokable_quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/sql.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/token_usage_history.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/quota/user_quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/runners/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/runners/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/runners/quota_scheduler.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/runners/uvicorn.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/telemetry/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/telemetry/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/telemetry/configuration_snapshot.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/agents/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/agents/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/agents/streaming.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/agents/tool_processor.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/checks.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/common.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/connection_decorator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/conversation_compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/degraded_mode.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/endpoints.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/llama_stack_version.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/markdown_repair.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/mcp_auth_headers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/mcp_headers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/mcp_oauth_probe.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/pydantic_ai.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/quota.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/reranker.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/rh_identity.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/schema_dumper.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/shields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/stream_interrupts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/streaming_sse.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/suid.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/token_counter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/token_estimator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/tool_formatter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/transcripts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/types.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/utils/vector_search.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/conftest.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/js_10000_lines.js +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/js_1000_lines.js +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/js_100_lines.js +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/js_10_lines.js +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/json_10000_lines.json +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/json_1000_lines.json +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/json_100_lines.json +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/json_10_lines.json +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/python_10000_lines.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/python_1000_lines.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/python_100_lines.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/python_10_lines.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/xml_10000_lines.xml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/xml_1000_lines.xml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/xml_100_lines.xml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/xml_10_lines.xml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/yaml_10000_lines.yml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/yaml_1000_lines.yml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/yaml_100_lines.yml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data/yaml_10_lines.yml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/data_generators.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/db_benchmarks.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/test_app_database.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/test_app_database_comparison.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/benchmarks/test_token_estimator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/benchmarks-postgres.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/benchmarks-sqlite.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/lightspeed-stack-proper-name.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/lightspeed-stack.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/minimal-stack.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/multiline_system_prompt.txt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/password +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/rag.txt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/rh-identity-config.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/run.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/server.crt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/server.key +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/configuration/system_prompt.txt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-azure.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-bedrock.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-ci.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-rhaiis.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-rhelai.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-vertexai.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configs/run-watsonx.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-auth-noop-token.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-auth-rh-identity.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-byok-pdf.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-inline-rag.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-invalid-feedback-storage.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-invalid-mcp-file-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-client-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-file-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-kubernetes-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp-oauth-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-mcp.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-no-cache.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-rbac.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-skills-directory.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack-skills.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/library-mode/lightspeed-stack.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-auth-noop-token.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-auth-rh-identity.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-degraded-mode.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-inline-rag.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-invalid-feedback-storage.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-invalid-mcp-file-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-client-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-file-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-kubernetes-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp-oauth-auth.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-mcp.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-no-cache.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-rbac.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-rhelai.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-skills-directory.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-skills.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack-tls.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/configuration/server-mode/lightspeed-stack.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/authorized_noop.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/authorized_noop_token.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/authorized_rh_identity.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/byok_pdf.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/conversation_cache_v2.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/conversations.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/degraded_mode_startup.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/environment.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/faiss.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/feedback.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/health.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/http_401_unauthorized.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/inline_rag.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/llama_stack_disrupted.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/mcp.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/mcp_servers_api.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/mcp_servers_api_auth.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/mcp_servers_api_no_config.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/models.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/opentelemetry.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/prompts.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/proxy.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/query.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/rbac.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/responses.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/responses_streaming.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/rest_api.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/rlsapi_v1.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/rlsapi_v1_errors.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/skills.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/smoketests.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/auth.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/common.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/common_http.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/conversation.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/health.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/info.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/llm_query_response.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/models.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/place_holder.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/proxy.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/rbac.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/responses_steps.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/rlsapi_v1.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/shields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/tls.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/steps/token_counters.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/streaming_query.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/tls-ca.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/tls-mtls.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/tls-tlsv13.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/unified-mode-boot.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/unified-mode-legacy.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/unified-mode-migration.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/unified-mode-synthesis.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/unified-mode-validation.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/features/vector_stores.feature +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/gen_scenario_list.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_jwks_server/Dockerfile +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_jwks_server/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_jwks_server/generate_tokens.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_jwks_server/server.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_mcp_server/Dockerfile +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_mcp_server/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_mcp_server/server.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_tls_inference_server/Dockerfile +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_tls_inference_server/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/mock_tls_inference_server/server.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/patches/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/patches/docker-compose-mcp-volumes-selinux.patch +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/proxy/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/proxy/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/proxy/interception_proxy.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/proxy/tunnel_proxy.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/rag/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/rag/kv_store.db +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/rag/pdf_kv_store.db +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/rag/sources/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/rag/sources/lightspeed-field-notes.pdf +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/secrets/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/secrets/invalid-mcp-token +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/secrets/mcp-token +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/skills/echo/SKILL.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/skills/echo/references/guide.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/skills/summarize/SKILL.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/skills/summarize/references/guide.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/test_api.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/test_list.txt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/llama_config_utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/llama_prow_utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/llama_stack_utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e/utils/prow_utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/.e2e_exit_code +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/configs/run.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/gpu/cluster-policy.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/gpu/create-nfd.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-interception-proxy.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-mock-tls-inference.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/e2e-tunnel-proxy.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/lightspeed-stack.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/llama-stack-openai.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/llama-stack-prow.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/mock-jwks.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/lightspeed/mock-mcp.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/namespaces/nfd.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/namespaces/nvidia-operator.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/operators/ds-cluster.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/operators/operatorgroup.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/operators/operators.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/vllm/vllm-inference-service-cpu.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/vllm/vllm-inference-service-gpu.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/vllm/vllm-runtime-cpu.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/manifests/vllm/vllm-runtime-gpu.yaml +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline-konflux.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline-services-konflux.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline-services.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline-test-pod.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline-vllm.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/pipeline.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/run-tests.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/bootstrap.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/deploy-vllm.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/e2e-ops.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/fetch-vllm-image.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/get-vllm-pod-info.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/e2e-prow/rhoai/scripts/gpu-setup.sh +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/conftest.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/container_lifecycle/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/container_lifecycle/test_container_lifecycle.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_authorized_endpoint.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_config_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_conversations_v1_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_conversations_v2_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_health_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_info_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_model_list.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_query_byok_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_query_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_responses_byok_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_responses_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_rlsapi_v1_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_root_endpoint.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_stream_interrupt_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_streaming_query_byok_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_streaming_query_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/endpoints/test_tools_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/test_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/test_middleware_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/test_openapi_json.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/test_rh_identity_integration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/integration/test_version.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/empty.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/syntax_error.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/test/profile.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/test_four/profile.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/test_three/profile.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/profiles/test_two/test.txt +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/a2a_storage/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/a2a_storage/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/a2a_storage/test_in_memory_context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/a2a_storage/test_sqlite_context_store.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/a2a_storage/test_storage_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/conftest.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_a2a.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_authorized.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_conversations_v2.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_feedback.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_health.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_info.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_mcp_auth.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_mcp_servers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_metrics.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_models.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_providers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_rags.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_responses_splunk.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_rlsapi_v1.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_root.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_shields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_stream_interrupt.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_streaming_query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_tools.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/endpoints/test_vector_stores.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/test_database.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/app/test_routers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_api_key_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_auth.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_jwk_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_k8s.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_noop.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_noop_with_token.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_rh_identity.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_trusted_proxy.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authentication/test_utils.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authorization/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authorization/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authorization/test_azure_token_manager.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authorization/test_middleware.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/authorization/test_resolvers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/test_cache_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/test_in_memory_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/test_noop_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/test_postgres_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/cache/test_sqlite_cache.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/conftest.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/metrics/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/metrics/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/metrics/test_recording.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/metrics/test_utis.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_a2a_state_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_approvals_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_authentication_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_byok_rag.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_compaction_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_conversation_history.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_cors.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_customization.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_database_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_dump_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_in_memory_cache_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_inference_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_jwt_role_rule.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_llama_stack_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_model_context_protocol_server.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_postgresql_database_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_quota_handlers_config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_quota_limiter_config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_quota_scheduler_config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_rag_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_reranker_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_rlsapi_v1_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_service_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_skills_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_splunk_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_tls_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/config/test_user_data_collection.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_attachment.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_feedback_request.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_feedback_status_update_request.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_query_request.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_responses_request.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/requests/test_vector_store_requests.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_authorized_response.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_error_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_query_response.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_rag_chunk.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_response_types.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_successful_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/responses/test_types.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/rlsapi/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/rlsapi/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/rlsapi/test_requests.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/rlsapi/test_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/models/test_compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/formats/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/formats/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/formats/test_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/formats/test_rlsapi.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/observability/test_splunk.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/question_validity/test_capability.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_capability.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_config.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/capabilities/redaction/test_core.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/llamastack/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/llamastack/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/llamastack/test_provider.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/pydantic_ai_lightspeed/llamastack/test_transport.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_cluster_quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_connect_pg.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_connect_sqlite.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_quota_exceed_error.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_quota_limiter_factory.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/quota/test_user_quota_limiter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/runners/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/runners/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/runners/test_uvicorn_runner.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/telemetry/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/telemetry/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/telemetry/conftest.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/telemetry/test_configuration_snapshot.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_client.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_configuration_unknown_fields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_degraded_mode.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_lightspeed_stack.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_llama_stack_configuration.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_llama_stack_synthesize.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_log.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/test_sentry.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/__init__.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/agents/README.md +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/agents/test_query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/agents/test_streaming.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/agents/test_tool_processor.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/auth_helpers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_checks.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_common.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_connection_decorator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_conversation_compaction.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_conversations.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_endpoints.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_llama_stack_version.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_markdown_repair.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_mcp_auth_headers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_mcp_headers.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_prompts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_pydantic_ai.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_query.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_responses.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_rh_identity.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_schema_dumper.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_shields.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_stream_interrupts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_streaming_sse.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_suid.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_token_estimator.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_tool_formatter.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_transcripts.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/tests/unit/utils/test_types.py +0 -0
- {lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/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.
|
|
3
|
+
Version: 0.6.5
|
|
4
4
|
Summary: LLM tooling stack
|
|
5
5
|
Keywords: LLM,RAG
|
|
6
|
-
Maintainer-Email:
|
|
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.
|
|
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.
|
|
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.
|
|
62
|
+
version = "0.6.5"
|
|
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 =
|
|
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
|
-
|
|
294
|
-
for
|
|
295
|
-
if
|
|
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
|
|
@@ -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.
|
|
21
|
+
And The body of the response has proper name Lightspeed Core Service (LCS) and version 0.6.5
|
|
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
|
|
@@ -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
|
|
|
@@ -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
|
|
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
|
|
212
|
+
# Simulate 3scale forwarding /api/lightspeed/v1/infer — scope carries no root_path.
|
|
205
213
|
await middleware(
|
|
206
|
-
_make_scope("/api/lightspeed/v1/infer"
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/a2a_storage/in_memory_context_store.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/requests/responses_openai.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/__init__.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/bad_request.py
RENAMED
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/conflict.py
RENAMED
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/forbidden.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/internal.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/not_found.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/error/unauthorized.py
RENAMED
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/README.md
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/__init__.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/bases.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/catalog.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/feedback.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/mcp_servers.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/probes.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/prompts.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/query.py
RENAMED
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/api/responses/successful/rlsapi.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/stream_payloads.py
RENAMED
|
File without changes
|
{lightspeed_stack-0.6.2 → lightspeed_stack-0.6.5}/src/models/common/agents/turn_accumulator.py
RENAMED
|
File without changes
|
|
File without changes
|