soliplex 0.83.2__tar.gz → 0.83.3__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 (122) hide show
  1. {soliplex-0.83.2/src/soliplex.egg-info → soliplex-0.83.3}/PKG-INFO +1 -1
  2. {soliplex-0.83.2 → soliplex-0.83.3}/pyproject.toml +1 -1
  3. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/authsystem.py +1 -1
  4. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/authn.py +14 -8
  5. {soliplex-0.83.2 → soliplex-0.83.3/src/soliplex.egg-info}/PKG-INFO +1 -1
  6. {soliplex-0.83.2 → soliplex-0.83.3}/LICENSE +0 -0
  7. {soliplex-0.83.2 → soliplex-0.83.3}/MANIFEST.in +0 -0
  8. {soliplex-0.83.2 → soliplex-0.83.3}/README.md +0 -0
  9. {soliplex-0.83.2 → soliplex-0.83.3}/example/skills/bare-bones/SKILL.md +0 -0
  10. {soliplex-0.83.2 → soliplex-0.83.3}/example/skills/stanzas/SKILL.md +0 -0
  11. {soliplex-0.83.2 → soliplex-0.83.3}/setup.cfg +0 -0
  12. {soliplex-0.83.2 → soliplex-0.83.3}/skills/soliplex-docs/SKILL.md +0 -0
  13. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agents.py +0 -0
  14. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agui/__init__.py +0 -0
  15. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agui/parser.py +0 -0
  16. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agui/persistence.py +0 -0
  17. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agui/schema.py +0 -0
  18. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/agui/util.py +0 -0
  19. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/__init__.py +0 -0
  20. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/env.py +0 -0
  21. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/216d48e1e2e5_soliplex_v0_53.py +0 -0
  22. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/4b63e5f3f39e_soliplex_v0_51_1.py +0 -0
  23. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/63edaa5987f6_soliplex_v0_67.py +0 -0
  24. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/a1c7d3e90b42_soliplex_v0_80.py +0 -0
  25. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/b7e2f41c9d05_soliplex_v0_82.py +0 -0
  26. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/alembic_migrations/versions/d5009d4f9874_soliplex_v0_44.py +0 -0
  27. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/authn.py +0 -0
  28. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/authz/__init__.py +0 -0
  29. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/authz/persistence.py +0 -0
  30. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/authz/schema.py +0 -0
  31. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/capabilities/filesystem.py +0 -0
  32. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/capabilities/rag_audit.py +0 -0
  33. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/admin_users.py +0 -0
  34. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/ask.py +0 -0
  35. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/__init__.py +0 -0
  36. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/_common.py +0 -0
  37. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/admin_users.py +0 -0
  38. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/completions.py +0 -0
  39. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/databases.py +0 -0
  40. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/environment.py +0 -0
  41. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/installation.py +0 -0
  42. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/interpolation.py +0 -0
  43. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/logfire.py +0 -0
  44. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/logging.py +0 -0
  45. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/oidc.py +0 -0
  46. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/ollama.py +0 -0
  47. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/quizzes.py +0 -0
  48. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/room_authz.py +0 -0
  49. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/rooms.py +0 -0
  50. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/secrets.py +0 -0
  51. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/audit/skills.py +0 -0
  52. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/cli_util.py +0 -0
  53. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/database.py +0 -0
  54. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/main.py +0 -0
  55. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/ollama.py +0 -0
  56. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/room_authz.py +0 -0
  57. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/serve.py +0 -0
  58. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/cli/types.py +0 -0
  59. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/completions.py +0 -0
  60. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/__init__.py +0 -0
  61. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/_utils.py +0 -0
  62. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/agents.py +0 -0
  63. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/agui.py +0 -0
  64. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/completions.py +0 -0
  65. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/exceptions.py +0 -0
  66. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/installation.py +0 -0
  67. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/interpolation.py +0 -0
  68. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/logfire.py +0 -0
  69. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/meta.py +0 -0
  70. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/middleware.py +0 -0
  71. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/quizzes.py +0 -0
  72. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/rag.py +0 -0
  73. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/rooms.py +0 -0
  74. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/routing.py +0 -0
  75. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/secrets.py +0 -0
  76. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/skills.py +0 -0
  77. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/config/tools.py +0 -0
  78. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/examples.py +0 -0
  79. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/installation.py +0 -0
  80. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/log_ingest.py +0 -0
  81. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/loggers.py +0 -0
  82. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/main.py +0 -0
  83. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/mcp_auth.py +0 -0
  84. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/mcp_client.py +0 -0
  85. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/mcp_server.py +0 -0
  86. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/models.py +0 -0
  87. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/ollama.py +0 -0
  88. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/quizzes.py +0 -0
  89. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/rag_audit.py +0 -0
  90. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/sandbox_audit.py +0 -0
  91. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/secrets.py +0 -0
  92. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/skills/bwrap_sandbox/SKILL.md +0 -0
  93. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/skills/bwrap_sandbox/__init__.py +0 -0
  94. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/titles.py +0 -0
  95. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tools/__init__.py +0 -0
  96. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tools/agui_run_feedback.py +0 -0
  97. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tools/file_uploads.py +0 -0
  98. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tools/rag.py +0 -0
  99. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tui/cli.py +0 -0
  100. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tui/main.py +0 -0
  101. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tui/rest_api.py +0 -0
  102. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/tui/serve.py +0 -0
  103. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/util.py +0 -0
  104. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/__init__.py +0 -0
  105. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/agui.py +0 -0
  106. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/authz.py +0 -0
  107. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/completions.py +0 -0
  108. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/installation.py +0 -0
  109. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/log_ingest.py +0 -0
  110. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/quizzes.py +0 -0
  111. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/room_file_uploads.py +0 -0
  112. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/rooms.py +0 -0
  113. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/sandbox_workdirs.py +0 -0
  114. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/stats.py +0 -0
  115. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/streaming.py +0 -0
  116. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/templates/consent.html.mako +0 -0
  117. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex/views/thread_file_uploads.py +0 -0
  118. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex.egg-info/SOURCES.txt +0 -0
  119. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex.egg-info/dependency_links.txt +0 -0
  120. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex.egg-info/entry_points.txt +0 -0
  121. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex.egg-info/requires.txt +0 -0
  122. {soliplex-0.83.2 → soliplex-0.83.3}/src/soliplex.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: soliplex
3
- Version: 0.83.2
3
+ Version: 0.83.3
4
4
  Summary: An AI-powered Retrieval-Augmented Generation (RAG) system with a modern web interface.
5
5
  Author-email: Enfold <info@enfoldsystems.net>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "soliplex"
7
- version = "0.83.2"
7
+ version = "0.83.3"
8
8
  description = "An AI-powered Retrieval-Augmented Generation (RAG) system with a modern web interface."
9
9
  authors = [{ name = "Enfold", email = "info@enfoldsystems.net" }]
10
10
  readme = "README.md"
@@ -81,7 +81,7 @@ class OIDCAuthSystemConfig:
81
81
  @property
82
82
  def oauth_client_kwargs(self) -> dict:
83
83
  """Registered kwargs for this authsystem's 'ouath' client factory"""
84
- client_kwargs = {}
84
+ client_kwargs = {"code_challenge_method": "S256"}
85
85
 
86
86
  if self.scope is not None:
87
87
  client_kwargs["scope"] = self.scope
@@ -459,7 +459,9 @@ async def get_auth_system(
459
459
  ):
460
460
  """Complete the OIDC token auth flow with the specified provider
461
461
 
462
- On success, redirect to client-specified URL.
462
+ On success, redirect to client-specified URL, passing 'token',
463
+ 'refresh_token', 'expires_in', and (when the provider returns one)
464
+ 'id_token' as callback parameters.
463
465
  """
464
466
  bound_logger = the_unauth_logger.bind(oidc_system=system)
465
467
 
@@ -504,15 +506,19 @@ async def get_auth_system(
504
506
  refresh_token = tokendict["refresh_token"]
505
507
  expires_in = tokendict["expires_in"]
506
508
 
507
- return_to = _with_callback_params(
508
- return_to,
509
- dict(
510
- token=access_token,
511
- refresh_token=refresh_token,
512
- expires_in=expires_in,
513
- ),
509
+ callback_params = dict(
510
+ token=access_token,
511
+ refresh_token=refresh_token,
512
+ expires_in=expires_in,
514
513
  )
515
514
 
515
+ # Absent unless the configured scope includes 'openid'.
516
+ id_token = tokendict.get("id_token")
517
+ if id_token is not None:
518
+ callback_params["id_token"] = id_token
519
+
520
+ return_to = _with_callback_params(return_to, callback_params)
521
+
516
522
  return responses.RedirectResponse(return_to)
517
523
 
518
524
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: soliplex
3
- Version: 0.83.2
3
+ Version: 0.83.3
4
4
  Summary: An AI-powered Retrieval-Augmented Generation (RAG) system with a modern web interface.
5
5
  Author-email: Enfold <info@enfoldsystems.net>
6
6
  Classifier: Programming Language :: Python :: 3
File without changes
File without changes
File without changes
File without changes