openrag 0.6.0.dev20__tar.gz → 0.6.0.dev21__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 (253) hide show
  1. {openrag-0.6.0.dev20/src/openrag.egg-info → openrag-0.6.0.dev21}/PKG-INFO +1 -1
  2. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/pyproject.toml +1 -1
  3. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21/src/openrag.egg-info}/PKG-INFO +1 -1
  4. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/cli.py +40 -18
  5. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/managers/container_manager.py +13 -3
  6. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/LICENSE +0 -0
  7. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/MANIFEST.in +0 -0
  8. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/README.md +0 -0
  9. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/setup.cfg +0 -0
  10. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/agent.py +0 -0
  11. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/__init__.py +0 -0
  12. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/acl.py +0 -0
  13. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/auth.py +0 -0
  14. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/chat.py +0 -0
  15. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/config.py +0 -0
  16. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/connectors.py +0 -0
  17. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/docling.py +0 -0
  18. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/documents.py +0 -0
  19. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/files.py +0 -0
  20. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/flows.py +0 -0
  21. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/health.py +0 -0
  22. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/ingest_preview.py +0 -0
  23. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/keys.py +0 -0
  24. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/knowledge_filter.py +0 -0
  25. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/langflow_files.py +0 -0
  26. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/langflow_ingest.py +0 -0
  27. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/models.py +0 -0
  28. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/nudges.py +0 -0
  29. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/oidc.py +0 -0
  30. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/provider_health.py +0 -0
  31. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/provider_validation.py +0 -0
  32. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/router.py +0 -0
  33. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/schemas/tasks.py +0 -0
  34. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/search.py +0 -0
  35. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/settings/__init__.py +0 -0
  36. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/settings/endpoints.py +0 -0
  37. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/settings/helpers.py +0 -0
  38. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/settings/langflow_sync.py +0 -0
  39. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/settings/models.py +0 -0
  40. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/tasks.py +0 -0
  41. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/upload.py +0 -0
  42. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/users.py +0 -0
  43. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/__init__.py +0 -0
  44. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/_filter_resolution.py +0 -0
  45. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/chat.py +0 -0
  46. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/documents.py +0 -0
  47. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/knowledge_filters.py +0 -0
  48. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/models.py +0 -0
  49. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/search.py +0 -0
  50. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/api/v1/settings.py +0 -0
  51. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/__init__.py +0 -0
  52. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/container.py +0 -0
  53. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/factory.py +0 -0
  54. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/lifespan.py +0 -0
  55. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/middleware.py +0 -0
  56. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/router_app.py +0 -0
  57. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/routes/__init__.py +0 -0
  58. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/routes/internal.py +0 -0
  59. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/routes/mcp.py +0 -0
  60. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/app/routes/public_v1.py +0 -0
  61. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/__init__.py +0 -0
  62. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/ibm_auth.py +0 -0
  63. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/jwt_roles.py +0 -0
  64. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/permission_dependencies.py +0 -0
  65. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/request_identity.py +0 -0
  66. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth/user_identity_cache.py +0 -0
  67. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/auth_context.py +0 -0
  68. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/bootstrap.py +0 -0
  69. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/__init__.py +0 -0
  70. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/config_manager.py +0 -0
  71. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/embedding_constants.py +0 -0
  72. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/model_constants.py +0 -0
  73. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/paths.py +0 -0
  74. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/settings.py +0 -0
  75. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/storage_mode.py +0 -0
  76. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/config/utils.py +0 -0
  77. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/__init__.py +0 -0
  78. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/__init__.py +0 -0
  79. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/api.py +0 -0
  80. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/auth.py +0 -0
  81. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/connector.py +0 -0
  82. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/models.py +0 -0
  83. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/aws_s3/support.py +0 -0
  84. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/base.py +0 -0
  85. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/connection_manager.py +0 -0
  86. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/google_drive/__init__.py +0 -0
  87. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/google_drive/connector.py +0 -0
  88. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/google_drive/oauth.py +0 -0
  89. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/google_drive_acl.py +0 -0
  90. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/microsoft_graph_acl.py +0 -0
  91. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/microsoft_oauth_utils.py +0 -0
  92. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/onedrive/__init__.py +0 -0
  93. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/onedrive/connector.py +0 -0
  94. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/onedrive/oauth.py +0 -0
  95. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/registry.py +0 -0
  96. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/service.py +0 -0
  97. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/sharepoint/__init__.py +0 -0
  98. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/sharepoint/connector.py +0 -0
  99. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/sharepoint/oauth.py +0 -0
  100. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/connectors/sharepoint/utils.py +0 -0
  101. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/__init__.py +0 -0
  102. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/base.py +0 -0
  103. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/engine.py +0 -0
  104. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/migrations_runtime.py +0 -0
  105. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/__init__.py +0 -0
  106. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/api_key.py +0 -0
  107. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/audit_log.py +0 -0
  108. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/conversation.py +0 -0
  109. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/migration_status.py +0 -0
  110. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/permission.py +0 -0
  111. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/role.py +0 -0
  112. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/role_permission.py +0 -0
  113. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/session_ownership.py +0 -0
  114. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/user.py +0 -0
  115. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/user_preferences.py +0 -0
  116. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/user_role.py +0 -0
  117. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/models/workspace_config.py +0 -0
  118. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/__init__.py +0 -0
  119. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/_helpers.py +0 -0
  120. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/api_key_repo.py +0 -0
  121. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/audit_repo.py +0 -0
  122. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/conversation_repo.py +0 -0
  123. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/permission_repo.py +0 -0
  124. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/preferences_repo.py +0 -0
  125. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/role_repo.py +0 -0
  126. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/session_ownership_repo.py +0 -0
  127. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/user_repo.py +0 -0
  128. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/repositories/workspace_config_repo.py +0 -0
  129. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/seed.py +0 -0
  130. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/db/types.py +0 -0
  131. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/dependencies.py +0 -0
  132. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/main.py +0 -0
  133. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/mcp_http/__init__.py +0 -0
  134. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/mcp_http/server.py +0 -0
  135. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/models/__init__.py +0 -0
  136. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/models/processors.py +0 -0
  137. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/models/tasks.py +0 -0
  138. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/models/url.py +0 -0
  139. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/openrag.egg-info/SOURCES.txt +0 -0
  140. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/openrag.egg-info/dependency_links.txt +0 -0
  141. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/openrag.egg-info/entry_points.txt +0 -0
  142. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/openrag.egg-info/requires.txt +0 -0
  143. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/openrag.egg-info/top_level.txt +0 -0
  144. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/__init__.py +0 -0
  145. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/api_key_service.py +0 -0
  146. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/auth_service.py +0 -0
  147. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/chat_service.py +0 -0
  148. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/connector_access_service.py +0 -0
  149. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/connector_oauth_config_service.py +0 -0
  150. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/conversation_persistence_service.py +0 -0
  151. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/default_docs_service.py +0 -0
  152. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/default_role_sync.py +0 -0
  153. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/dev_role_toggle.py +0 -0
  154. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/dls_principal_service.py +0 -0
  155. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/docling_polling_service.py +0 -0
  156. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/docling_service.py +0 -0
  157. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/document_index_writer.py +0 -0
  158. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/document_service.py +0 -0
  159. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/file_service.py +0 -0
  160. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/flows_service.py +0 -0
  161. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/group_acl_service.py +0 -0
  162. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/ingest_preview_service.py +0 -0
  163. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/knowledge_filter_service.py +0 -0
  164. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/langflow_file_service.py +0 -0
  165. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/langflow_history_service.py +0 -0
  166. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/langflow_ingest_token_service.py +0 -0
  167. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/langflow_mcp_service.py +0 -0
  168. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/models_service.py +0 -0
  169. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/monitor_service.py +0 -0
  170. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/onboarding_reset.py +0 -0
  171. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/rbac_service.py +0 -0
  172. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/search_service.py +0 -0
  173. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/session_ownership_service.py +0 -0
  174. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/startup_orchestrator.py +0 -0
  175. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/task_service.py +0 -0
  176. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/user_service.py +0 -0
  177. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/services/workspace_config_service.py +0 -0
  178. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/session_manager.py +0 -0
  179. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/__init__.py +0 -0
  180. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/docker-compose.gpu.yml +0 -0
  181. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/docker-compose.yml +0 -0
  182. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/ollama_embedding.json +0 -0
  183. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/ollama_llm.json +0 -0
  184. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/ollama_llm_text.json +0 -0
  185. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/watsonx_embedding.json +0 -0
  186. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/watsonx_llm.json +0 -0
  187. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/components/watsonx_llm_text.json +0 -0
  188. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/ingestion_flow.json +0 -0
  189. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/openrag_agent.json +0 -0
  190. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/openrag_nudges.json +0 -0
  191. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/flows/openrag_url_mcp.json +0 -0
  192. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/openrag-documents/docling.pdf +0 -0
  193. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/openrag-documents/ibm_anthropic.pdf +0 -0
  194. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/_assets/openrag-documents/warmup_ocr.pdf +0 -0
  195. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/config_fields.py +0 -0
  196. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/main.py +0 -0
  197. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/managers/__init__.py +0 -0
  198. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/managers/docling_manager.py +0 -0
  199. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/managers/env_manager.py +0 -0
  200. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/__init__.py +0 -0
  201. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/config.py +0 -0
  202. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/diagnostics.py +0 -0
  203. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/logs.py +0 -0
  204. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/monitor.py +0 -0
  205. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/screens/welcome.py +0 -0
  206. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/__init__.py +0 -0
  207. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/clipboard.py +0 -0
  208. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/platform.py +0 -0
  209. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/startup_checks.py +0 -0
  210. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/validation.py +0 -0
  211. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/utils/version_check.py +0 -0
  212. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/__init__.py +0 -0
  213. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/command_modal.py +0 -0
  214. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/diagnostics_notification.py +0 -0
  215. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/error_notification.py +0 -0
  216. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/factory_reset_warning_modal.py +0 -0
  217. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/flow_backup_warning_modal.py +0 -0
  218. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/prune_options_modal.py +0 -0
  219. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/upgrade_instructions_modal.py +0 -0
  220. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/version_mismatch_warning_modal.py +0 -0
  221. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/tui/widgets/waves.py +0 -0
  222. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/__init__.py +0 -0
  223. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/acl_utils.py +0 -0
  224. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/container_utils.py +0 -0
  225. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/docling_client.py +0 -0
  226. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/document_processing.py +0 -0
  227. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/embedding_fields.py +0 -0
  228. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/embeddings.py +0 -0
  229. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/encryption.py +0 -0
  230. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/env_utils.py +0 -0
  231. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/file_utils.py +0 -0
  232. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/gpu_detection.py +0 -0
  233. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/group_acl.py +0 -0
  234. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/hash_utils.py +0 -0
  235. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/ingest_preview_flag.py +0 -0
  236. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/jwt_keygen.py +0 -0
  237. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/jwt_verification.py +0 -0
  238. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/langflow_headers.py +0 -0
  239. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/langflow_utils.py +0 -0
  240. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/logging_config.py +0 -0
  241. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/opensearch_delete.py +0 -0
  242. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/opensearch_init.py +0 -0
  243. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/opensearch_queries.py +0 -0
  244. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/opensearch_utils.py +0 -0
  245. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/paths.py +0 -0
  246. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/provider_health_cache.py +0 -0
  247. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/run_mode_utils.py +0 -0
  248. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/telemetry/__init__.py +0 -0
  249. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/telemetry/category.py +0 -0
  250. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/telemetry/client.py +0 -0
  251. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/telemetry/message_id.py +0 -0
  252. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/url_content_fetcher.py +0 -0
  253. {openrag-0.6.0.dev20 → openrag-0.6.0.dev21}/src/utils/version_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openrag
3
- Version: 0.6.0.dev20
3
+ Version: 0.6.0.dev21
4
4
  Summary: OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Environment :: Console
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "openrag"
7
- version = "0.6.0.dev20"
7
+ version = "0.6.0.dev21"
8
8
  description = "OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.13"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: openrag
3
- Version: 0.6.0.dev20
3
+ Version: 0.6.0.dev21
4
4
  Summary: OpenRAG is a comprehensive Retrieval-Augmented Generation platform that enables intelligent document search and AI-powered conversations.
5
5
  Classifier: Development Status :: 4 - Beta
6
6
  Classifier: Environment :: Console
@@ -227,15 +227,18 @@ def _setup_walkthrough(
227
227
  _, _, already_running = _get_service_states(container_manager, docling_manager)
228
228
  if already_running:
229
229
  _stop_services_cli(container_manager, docling_manager)
230
- _start_services_cli(container_manager, docling_manager)
230
+ fully_started = _start_services_cli(container_manager, docling_manager)
231
231
 
232
- console.print()
233
- frontend_url = f"http://localhost:{os.getenv('FRONTEND_PORT', '3000')}"
234
- console.print(f"[bold green]OpenRAG is running at {frontend_url}[/bold green]")
235
- try:
236
- webbrowser.open(frontend_url)
237
- except Exception:
238
- pass
232
+ # Only announce the app URL / open the browser once everything is up;
233
+ # _start_services_cli already surfaced a warning for a partial startup.
234
+ if fully_started:
235
+ console.print()
236
+ frontend_url = f"http://localhost:{os.getenv('FRONTEND_PORT', '3000')}"
237
+ console.print(f"[bold green]OpenRAG is running at {frontend_url}[/bold green]")
238
+ try:
239
+ webbrowser.open(frontend_url)
240
+ except Exception:
241
+ pass
239
242
 
240
243
 
241
244
  def _collect_config(
@@ -345,11 +348,14 @@ def _start_services_cli(
345
348
  console.print("Starting OpenRAG services...", style="bold")
346
349
 
347
350
  async def _inner():
351
+ containers_ok = True
352
+ docling_ok = docling_manager.is_running()
353
+
348
354
  # Start container services
349
355
  if container_manager.is_available():
350
356
  async for item in container_manager.start_services():
351
357
  # start_services yields (success, message) or (success, message, replace_last)
352
- success = item[0]
358
+ containers_ok = item[0]
353
359
  message = item[1]
354
360
  replace_last = item[2] if len(item) > 2 else False
355
361
  if replace_last:
@@ -358,24 +364,40 @@ def _start_services_cli(
358
364
  else:
359
365
  console.print(f" {message}")
360
366
 
361
- if not success and "error" in message.lower():
362
- console.print(f" [red]✗ {message}[/red]")
367
+ if not containers_ok:
368
+ statuses = await container_manager.get_service_status(force_refresh=True)
369
+ containers_ok = bool(statuses) and all(
370
+ s.status == ServiceStatus.RUNNING for s in statuses.values()
371
+ )
363
372
  else:
364
373
  console.print(" [yellow]No container runtime available[/yellow]")
374
+ containers_ok = False
365
375
 
366
- # Start docling
367
- if not docling_manager.is_running():
368
- success, message = await docling_manager.start()
369
- if success:
376
+ if not docling_ok:
377
+ docling_ok, message = await docling_manager.start()
378
+ if docling_ok:
370
379
  console.print(f" {message}")
371
380
  else:
372
381
  console.print(f" [yellow]{message}[/yellow]")
373
382
 
383
+ return containers_ok, docling_ok
384
+
374
385
  try:
375
- asyncio.run(_inner())
376
- console.print("[green]✓ All services started[/green]")
386
+ containers_ok, docling_ok = asyncio.run(_inner())
387
+
388
+ # On full success the menu header already reports "Services are running",
389
+ # so only surface partial/failed startup here to avoid a duplicate message.
390
+ results = {"containers": containers_ok, "docling-serve": docling_ok}
391
+ failed = [name for name, ok in results.items() if not ok]
392
+ if failed:
393
+ console.print(
394
+ f"[yellow]⚠ Startup incomplete: {', '.join(failed)} did not start "
395
+ "(run Show status for details)[/yellow]"
396
+ )
397
+ return not failed
377
398
  except Exception as e:
378
399
  console.print(f"[red]✗ Error starting services: {e}[/red]")
400
+ return False
379
401
 
380
402
 
381
403
  def _stop_services_cli(
@@ -393,7 +415,7 @@ def _stop_services_cli(
393
415
  console.print(f" {message}")
394
416
  # Stop docling
395
417
  if docling_manager.is_running():
396
- success, message = await docling_manager.stop()
418
+ _success, message = await docling_manager.stop()
397
419
  console.print(f" {message}")
398
420
 
399
421
  try:
@@ -644,6 +644,13 @@ class ContainerManager:
644
644
 
645
645
  return True, images, ""
646
646
 
647
+ def _resolve_service_name(self, compose_service: str | None, container_name: str) -> str | None:
648
+ """Resolve a container to its canonical OpenRAG service name"""
649
+ if compose_service and compose_service in self.expected_services:
650
+ return compose_service
651
+
652
+ return self.container_name_map.get(container_name)
653
+
647
654
  def _process_service_json(self, service: dict, services: dict[str, ServiceInfo]) -> None:
648
655
  """Process a service JSON object and add it to the services dict."""
649
656
  # Debug print to see the actual service data
@@ -651,8 +658,8 @@ class ContainerManager:
651
658
 
652
659
  container_name = service.get("Name", "")
653
660
 
654
- # Map container name to service name
655
- service_name = self.container_name_map.get(container_name)
661
+ # Resolve to canonical service name (compose 'Service' field first, then name map)
662
+ service_name = self._resolve_service_name(service.get("Service"), container_name)
656
663
  if not service_name:
657
664
  return
658
665
 
@@ -802,7 +809,10 @@ class ContainerManager:
802
809
  continue
803
810
 
804
811
  container_name = names[0]
805
- service_name = self.container_name_map.get(container_name)
812
+ labels = container.get("Labels") or {}
813
+ service_name = self._resolve_service_name(
814
+ labels.get("com.docker.compose.service"), container_name
815
+ )
806
816
  if not service_name:
807
817
  continue
808
818
 
File without changes
File without changes
File without changes
File without changes
File without changes